diff --git a/BUILDING.md b/BUILDING.md index c4ae5880..65690aee 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -89,6 +89,19 @@ builds but all other use cases are supported. Note that binaries and libraries built with the transcoder support may result in increased binary sizes of the produced libraries and executables compared to the default CMake settings. +The following CMake variables can be used to configure Draco to use local +copies of third party dependencies. + +- `DRACO_EIGEN_PATH`: this path must contain an Eigen directory that includes + the Eigen sources. +- `DRACO_FILESYSTEM_PATH`: this path must contain the ghc directory where the + filesystem includes are located. +- `DRACO_TINYGLTF_PATH`: this path must contain tiny_gltf.h and its + dependencies. + +If not specified the Draco build requires the presence of the submodules that +are stored within `draco/third_party`. + Debugging and Optimization -------------------------- @@ -152,6 +165,10 @@ To run the tests execute `draco_tests` from your build output directory: $ ./draco_tests ~~~~~ +Draco can be configured to use a local Googletest installation. The +`DRACO_GOOGLETEST_PATH` variable overrides the behavior described above and +configures Draco to use the Googletest at the specified path. + Third Party Libraries --------------------- diff --git a/CMakeLists.txt b/CMakeLists.txt index 10ef8bce..03624207 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -39,6 +39,7 @@ endif() include(FindPythonInterp) include("${draco_root}/cmake/draco_build_definitions.cmake") include("${draco_root}/cmake/draco_cpu_detection.cmake") +include("${draco_root}/cmake/draco_dependencies.cmake") include("${draco_root}/cmake/draco_emscripten.cmake") include("${draco_root}/cmake/draco_flags.cmake") include("${draco_root}/cmake/draco_helpers.cmake") @@ -546,6 +547,8 @@ if(DRACO_TRANSCODER_SUPPORTED) "${draco_src_root}/mesh/mesh_utils.h") list(APPEND draco_scene_sources + "${draco_src_root}/scene/light.h" + "${draco_src_root}/scene/light.cc" "${draco_src_root}/scene/mesh_group.h" "${draco_src_root}/scene/scene.cc" "${draco_src_root}/scene/scene.h" diff --git a/README.md b/README.md index ea41c467..57258594 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,16 @@ delays can result in transient errors that can be difficult to diagnose when new Draco releases are launched. To avoid the issue pin your sites to a versioned release. +### Version 1.5.1 release +* Adds assertion enabled Emscripten builds to the release, and a subset of the + assertion enabled builds to GStatic. See the file listing below. +* Custom paths to third party dependencies are now supported. See BUILDING.md + for more information. +* The CMake configuration file draco-config.cmake is now tested and known to + work for using Draco in Linux, MacOS, and Windows CMake projects. See the + `install_test` subdirectory of `src/draco/tools` for more information. +* Bug fixes. + ### Version 1.5.0 release * Adds the draco_transcoder tool. See the section below on the glTF transcoding tool, and BUILDING.md for build and dependency information. @@ -519,6 +529,13 @@ As of the v1.4.3 release the files available are: - [draco_wasm_wrapper.js](https://www.gstatic.com/draco/versioned/decoders/1.4.3/draco_wasm_wrapper.js) - [draco_wasm_wrapper_gltf.js](https://www.gstatic.com/draco/versioned/decoders/1.4.3/draco_wasm_wrapper_gltf.js) +Beginning with the v1.5.1 release assertion enabled builds of the following +files are available: + +- [draco_decoder.js](https://www.gstatic.com/draco/versioned/decoders/1.5.1/with_asserts/draco_decoder.js) +- [draco_decoder.wasm](https://www.gstatic.com/draco/versioned/decoders/1.5.1/with_asserts/draco_decoder.wasm) +- [draco_wasm_wrapper.js](https://www.gstatic.com/draco/versioned/decoders/1.5.1/with_asserts/draco_wasm_wrapper.js) + Support ======= diff --git a/cmake/draco_build_definitions.cmake b/cmake/draco_build_definitions.cmake index 057e15b9..c00bf838 100644 --- a/cmake/draco_build_definitions.cmake +++ b/cmake/draco_build_definitions.cmake @@ -77,28 +77,11 @@ macro(draco_set_build_definitions) endif() if(DRACO_TRANSCODER_SUPPORTED) - list(APPEND submodule_test_dirs - "${draco_root}/third_party/eigen/Eigen" - "${draco_root}/third_party/filesystem/include" - "${draco_root}/third_party/tinygltf") - foreach(dir IN LISTS submodule_test_dirs) - if(NOT EXISTS ${dir}) - message(FATAL_ERROR "${dir} missing, run git submodule update --init") - endif() - endforeach() - - list(APPEND draco_include_paths - "${draco_root}/third_party/eigen" - "${draco_root}/third_party/filesystem/include") + draco_setup_eigen() + draco_setup_filesystem() + draco_setup_tinygltf() endif() - list(APPEND draco_test_include_paths - ${draco_include_paths} - "${draco_root}/third_party/googletest/googlemock/include" - "${draco_root}/third_party/googletest/googlemock" - "${draco_root}/third_party/googletest/googletest/include" - "${draco_root}/third_party/googletest/googletest") - list(APPEND draco_defines "DRACO_CMAKE=1" "DRACO_FLAGS_SRCDIR=\"${draco_root}\"" diff --git a/cmake/draco_dependencies.cmake b/cmake/draco_dependencies.cmake new file mode 100644 index 00000000..92397bff --- /dev/null +++ b/cmake/draco_dependencies.cmake @@ -0,0 +1,138 @@ +# Copyright 2022 The Draco Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +if(DRACO_CMAKE_DRACO_DEPENDENCIES_CMAKE) + return() +endif() +set(DRACO_CMAKE_DRACO_DEPENDENCIES_CMAKE 1) + +include("${draco_root}/cmake/draco_variables.cmake") + +# Each variable holds a user specified custom path to a local copy of the +# sources that belong to each project that Draco depends on. When paths are +# empty the build will be generated pointing to the Draco git submodules. +# Otherwise the paths specified by the user will be used in the build +# configuration. + +# Path to the Eigen. The path must contain the Eigen directory. +set(DRACO_EIGEN_PATH) +draco_track_configuration_variable(DRACO_EIGEN_PATH) + +# Path to the gulrak/filesystem installation. The path specified must contain +# the ghc subdirectory that houses the filesystem includes. +set(DRACO_FILESYSTEM_PATH) +draco_track_configuration_variable(DRACO_FILESYSTEM_PATH) + +# Path to the googletest installation. The path must be to the root of the +# Googletest project directory. +set(DRACO_GOOGLETEST_PATH) +draco_track_configuration_variable(DRACO_GOOGLETEST_PATH) + +# Path to the syoyo/tinygltf installation. The path must be to the root of the +# project directory. +set(DRACO_TINYGLTF_PATH) +draco_track_configuration_variable(DRACO_TINYGLTF_PATH) + +# Utility macro for killing the build due to a missing submodule directory. +macro(draco_die_missing_submodule dir) + message(FATAL_ERROR "${dir} missing, run git submodule update --init") +endmacro() + +# Determines the Eigen location and updates the build configuration accordingly. +macro(draco_setup_eigen) + if(DRACO_EIGEN_PATH) + set(eigen_path "${DRACO_EIGEN_PATH}") + + if(NOT IS_DIRECTORY "${eigen_path}") + message(FATAL_ERROR "DRACO_EIGEN_PATH does not exist.") + endif() + else() + set(eigen_path "${draco_root}/third_party/eigen") + + if(NOT IS_DIRECTORY "${eigen_path}") + draco_die_missing_submodule("${eigen_path}") + endif() + endif() + + set(eigen_include_path "${eigen_path}/Eigen") + + if(NOT EXISTS "${eigen_path}/Eigen") + message(FATAL_ERROR "The eigen path does not contain an Eigen directory.") + endif() + + list(APPEND draco_include_paths "${eigen_path}") +endmacro() + +# Determines the gulrak/filesystem location and updates the build configuration +# accordingly. +macro(draco_setup_filesystem) + if(DRACO_FILESYSTEM_PATH) + set(fs_path "${DRACO_FILESYSTEM_PATH}") + + if(NOT IS_DIRECTORY "${fs_path}") + message(FATAL_ERROR "DRACO_FILESYSTEM_PATH does not exist.") + endif() + else() + set(fs_path "${draco_root}/third_party/filesystem/include") + + if(NOT IS_DIRECTORY "${fs_path}") + draco_die_missing_submodule("${fs_path}") + endif() + endif() + + list(APPEND draco_include_paths "${fs_path}") +endmacro() + +# Determines the Googletest location and sets up include and source list vars +# for the draco_tests build. +macro(draco_setup_googletest) + if(DRACO_GOOGLETEST_PATH) + set(gtest_path "${DRACO_GOOGLETEST_PATH}") + if(NOT IS_DIRECTORY "${gtest_path}") + message(FATAL_ERROR "DRACO_GOOGLETEST_PATH does not exist.") + endif() + else() + set(gtest_path "${draco_root}/third_party/googletest") + endif() + + list(APPEND draco_test_include_paths + ${draco_include_paths} + "${gtest_path}/include" + "${gtest_path}/googlemock" + "${gtest_path}/googletest/include" + "${gtest_path}/googletest") + + list(APPEND draco_gtest_all "${gtest_path}/googletest/src/gtest-all.cc") + list(APPEND draco_gtest_main "${gtest_path}/googletest/src/gtest_main.cc") +endmacro() + +# Determines the location of TinyGLTF and updates the build configuration +# accordingly. +macro(draco_setup_tinygltf) + if(DRACO_TINYGLTF_PATH) + set(tinygltf_path "${DRACO_TINYGLTF_PATH}") + + if(NOT IS_DIRECTORY "${tinygltf_path}") + message(FATAL_ERROR "DRACO_TINYGLTF_PATH does not exist.") + endif() + else() + set(tinygltf_path "${draco_root}/third_party/tinygltf") + + if(NOT IS_DIRECTORY "${tinygltf_path}") + draco_die_missing_submodule("${tinygltf_path}") + endif() + endif() + + list(APPEND draco_include_paths "${tinygltf_path}") +endmacro() diff --git a/cmake/draco_install.cmake b/cmake/draco_install.cmake index 88753c48..9e36b934 100644 --- a/cmake/draco_install.cmake +++ b/cmake/draco_install.cmake @@ -79,6 +79,10 @@ macro(draco_setup_install_target) install(TARGETS draco_decoder DESTINATION "${bin_path}") install(TARGETS draco_encoder DESTINATION "${bin_path}") + if(DRACO_TRANSCODER_SUPPORTED) + install(TARGETS draco_transcoder DESTINATION "${bin_path}") + endif() + if(MSVC) install(TARGETS draco DESTINATION "${libs_path}") else() diff --git a/cmake/draco_tests.cmake b/cmake/draco_tests.cmake index c332e7b8..1633d752 100644 --- a/cmake/draco_tests.cmake +++ b/cmake/draco_tests.cmake @@ -81,6 +81,7 @@ if(DRACO_TRANSCODER_SUPPORTED) "${draco_src_root}/io/texture_io_test.cc" "${draco_src_root}/material/material_library_test.cc" "${draco_src_root}/material/material_test.cc" + "${draco_src_root}/scene/light_test.cc" "${draco_src_root}/scene/mesh_group_test.cc" "${draco_src_root}/scene/scene_test.cc" "${draco_src_root}/scene/scene_utils_test.cc" @@ -90,13 +91,10 @@ if(DRACO_TRANSCODER_SUPPORTED) "${draco_src_root}/texture/texture_transform_test.cc") endif() -list(APPEND draco_gtest_all - "${draco_root}/third_party/googletest/googletest/src/gtest-all.cc") -list(APPEND draco_gtest_main - "${draco_root}/third_party/googletest/googletest/src/gtest_main.cc") - macro(draco_setup_test_targets) if(DRACO_TESTS) + draco_setup_googletest() + if(NOT (EXISTS ${draco_gtest_all} AND EXISTS ${draco_gtest_main})) message(FATAL_ERROR "googletest missing, run git submodule update --init") diff --git a/cmake/toolchains/android.cmake b/cmake/toolchains/android.cmake index c25483a7..b149d8e0 100644 --- a/cmake/toolchains/android.cmake +++ b/cmake/toolchains/android.cmake @@ -30,9 +30,9 @@ if(NOT ANDROID_ABI) set(ANDROID_ABI arm64-v8a) endif() -# Force arm mode for 32-bit targets (instead of the default thumb) to improve -# performance. -if(NOT ANDROID_ARM_MODE) +# Force arm mode for 32-bit arm targets (instead of the default thumb) to +# improve performance. +if(ANDROID_ABI MATCHES "^armeabi" AND NOT ANDROID_ARM_MODE) set(ANDROID_ARM_MODE arm) endif() diff --git a/javascript/draco_decoder.js b/javascript/draco_decoder.js index 08c71792..b4ba5ab3 100644 --- a/javascript/draco_decoder.js +++ b/javascript/draco_decoder.js @@ -1,28 +1,28 @@ -var DracoDecoderModule = (function() { +var DracoDecoderModule = (() => { var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; return ( function(DracoDecoderModule) { DracoDecoderModule = DracoDecoderModule || {}; -var Module=typeof DracoDecoderModule!=="undefined"?DracoDecoderModule:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;var toLog=e;err("exiting due to exception: "+toLog)}var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status,toThrow){if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=( +var Module=typeof DracoDecoderModule!=="undefined"?DracoDecoderModule:{};var objAssign=Object.assign;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides=objAssign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=(()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}});read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?null:"utf8")};readBinary=(filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret});readAsync=((filename,onload,onerror)=>{var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})});if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}});if(ENVIRONMENT_IS_WORKER){readBinary=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}})}readAsync=((url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=(()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()});xhr.onerror=onerror;xhr.send(null)})}setWindowTitle=(title=>document.title=title)}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);objAssign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=( // EMSCRIPTEN_START_ASM -function instantiate(qa){function c(d){d.set=function(a,b){this[a]=b};d.get=function(a){return this[a]};return d}var e;var f=new Uint8Array(123);for(var a=25;a>=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a>4;if(i>2;if(i=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a>4;if(i>2;if(i>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;a:{b:{c:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break c}d=e+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;h=e;F[b+16>>2]=h;F[b+20>>2]=d;if(I[a>>2]>31){break c}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=h+F[b>>2]|0;F[a+4>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;h=e;F[b+16>>2]=h;F[b+20>>2]=d;e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=h+F[b>>2]|0;F[a+12>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;q=e;F[b+16>>2]=e;F[b+20>>2]=d;d=F[a+20>>2];h=F[a+12>>2];if((h|0)!=(d|0)?d:0){break c}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=q+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+16>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(f>>>0>=7){F[w>>2]=f;Ad(1857,w);break c}F[w+664>>2]=c;d:{if(!h){break d}e:{j=F[c>>2];if(h>>>0<=(F[c+8>>2]-j|0)/12>>>0){break e}if(h>>>0<357913942){e=F[c+4>>2];f=L(h,12);d=sa(f);h=d+f|0;f=d+L((e-j|0)/12|0,12)|0;d=f;if((e|0)!=(j|0)){d=f;while(1){d=d-12|0;e=e-12|0;F[d>>2]=F[e>>2];F[d+4>>2]=F[e+4>>2];F[d+8>>2]=F[e+8>>2];if((e|0)!=(j|0)){continue}break}}F[c+8>>2]=h;F[c+4>>2]=f;F[c>>2]=d;if(!j){break e}ra(j);break e}break b}f:{switch(F[a+16>>2]){case 0:i=yb(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;g:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break g}d=e+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;h=e;F[b+16>>2]=h;F[b+20>>2]=d;if(I[i>>2]>32){break g}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break g}d=h+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break g}F[i+8>>2]=0;if(!ya(i+16|0,b)){break g}if(!ya(i+36|0,b)){break g}if(!ya(i+56|0,b)){break g}if(!ya(i+76|0,b)){break g}v=F[i+4>>2];f=0;j=0;h=ea-32|0;ea=h;e=F[i+12>>2];F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;if(e){if(e>>>0>=1073741824){break a}b=e<<2;f=sa(b);F[h+8>>2]=f;j=b+f|0;F[h+16>>2]=j;ua(f,0,b);F[h+12>>2]=j}b=F[i+120>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[h+12>>2];e=F[i+12>>2];f=F[h+8>>2]}F[b+4>>2]=j;F[b>>2]=f;F[b+8>>2]=F[h+16>>2];f=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;h:{if(e){if(e>>>0>=1073741824){break a}b=e<<2;g=sa(b);F[h+8>>2]=g;f=b+g|0;F[h+16>>2]=f;ua(g,0,b);F[h+12>>2]=f}b=F[i+132>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;g=F[h+8>>2];f=F[h+12>>2]}F[b+4>>2]=f;F[b>>2]=g;F[b+8>>2]=F[h+16>>2];F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;za(h+8|0);b=F[h+24>>2]+F[h+28>>2]|0;d=(b>>>0)/341|0;b=F[F[h+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=v;b=F[h+28>>2];e=b+1|0;F[h+28>>2]=e;i:{if(b>>>0>e>>>0){break i}t=i+96|0;while(1){p=F[h+12>>2];f=F[h+24>>2];j=e-1|0;b=f+j|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;l=F[b+8>>2];g=F[b+4>>2];d=F[b>>2];F[h+28>>2]=j;b=F[h+16>>2];j=b-p|0;if(((j?L(j>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[h+16>>2]=F[h+16>>2]-4}f=0;if(d>>>0>v>>>0){break i}b=F[i+12>>2];g=(g|0)==(b-1|0)?0:g+1|0;if(g>>>0>=b>>>0){break i}e=L(l,12);p=e+F[i+132>>2]|0;j=e+F[i+120>>2]|0;j:{k:{m=g<<2;n=F[i>>2]-F[m+F[p>>2]>>2]|0;if(!n){if(!d){break k}while(1){b=F[j>>2];p=F[b+8>>2];m=F[b+4>>2];n=F[b>>2];b=F[q>>2];e=F[b+4>>2];k=F[b+8>>2];l:{if(e>>>0>>0){F[e+8>>2]=p;F[e+4>>2]=m;F[e>>2]=n;F[b+4>>2]=e+12;break l}l=F[b>>2];o=(e-l|0)/12|0;g=o+1|0;if(g>>>0>=357913942){break a}k=(k-l|0)/12|0;r=k<<1;g=k>>>0<178956970?g>>>0>r>>>0?g:r:357913941;if(g>>>0>=357913942){break b}r=L(o,12);k=L(g,12);o=sa(k);g=r+o|0;F[g+8>>2]=p;F[g+4>>2]=m;F[g>>2]=n;p=g+12|0;if((e|0)!=(l|0)){while(1){g=g-12|0;e=e-12|0;F[g>>2]=F[e>>2];F[g+4>>2]=F[e+4>>2];F[g+8>>2]=F[e+8>>2];if((e|0)!=(l|0)){continue}break}}F[b+8>>2]=k+o;F[b+4>>2]=p;F[b>>2]=g;if(!l){break l}ra(l)}F[i+8>>2]=F[i+8>>2]+1;f=f+1|0;if((d|0)!=(f|0)){continue}break}break k}m:{n:{o:{p:{if(d>>>0<=2){b=F[i+108>>2];F[b>>2]=g;f=1;e=F[i+12>>2];if(e>>>0>1){break p}break m}if(I[i+8>>2]>I[i+4>>2]){break i}b=F[i+120>>2];k=l+1|0;p=L(k,12);f=b+p|0;if((f|0)!=(j|0)){Ca(f,F[j>>2],F[j+4>>2]);b=F[i+120>>2]}b=m+F[b+p>>2]|0;F[b>>2]=F[b>>2]+(1<>2];n=32-f|0;q:{if((b|0)<=(n|0)){j=F[i+28>>2];if((j|0)==F[i+20>>2]){f=0;break q}n=F[j>>2];o=b+f|0;F[i+32>>2]=o;f=n<>>32-b|0;if((o|0)!=32){break q}F[i+32>>2]=0;F[i+28>>2]=j+4;break q}j=F[i+28>>2];o=j+4|0;if((o|0)==F[i+20>>2]){f=0;break q}r=F[j>>2];F[i+28>>2]=o;n=b-n|0;F[i+32>>2]=n;f=F[j+4>>2]>>>32-n|r<>>32-b}b=(d>>>1|0)-f|0;f=d-b|0;r:{if((f|0)==(b|0)){d=b;break r}d=F[i+88>>2];if((d|0)==F[i+80>>2]){break o}j=F[d>>2];n=F[i+92>>2];o=n+1|0;F[i+92>>2]=o;j=j&-2147483648>>>n;s:{if((o|0)==32){F[i+92>>2]=0;F[i+88>>2]=d+4;if(j){break s}break o}if(!j){break o}}d=f}f=b;break n}while(1){g=(e-1|0)==(g|0)?0:g+1|0;F[b+(f<<2)>>2]=g;f=f+1|0;e=F[i+12>>2];if(f>>>0>>0){continue}break}break m}d=b}b=F[i+132>>2];e=b+e|0;j=F[e>>2];m=j+m|0;F[m>>2]=F[m>>2]+1;Ca(b+p|0,j,F[e+4>>2]);if(f){e=F[h+28>>2]+F[h+24>>2]|0;j=F[h+12>>2];b=F[h+16>>2]-j|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(h+8|0);j=F[h+12>>2];e=F[h+24>>2]+F[h+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+j>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=g;F[b>>2]=f;F[h+28>>2]=F[h+28>>2]+1}if(!d){break k}e=F[h+28>>2]+F[h+24>>2]|0;f=F[h+12>>2];b=F[h+16>>2]-f|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(h+8|0);e=F[h+24>>2]+F[h+28>>2]|0;f=F[h+12>>2]}b=(e>>>0)/341|0;b=F[f+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=g;F[b>>2]=d;e=F[h+28>>2]+1|0;F[h+28>>2]=e;break j}l=0;if(!d){break k}while(1){if(e){m=F[i+40>>2];g=F[i+96>>2];r=F[i+108>>2];x=F[j>>2];z=F[p>>2];e=0;while(1){n=r+(e<<2)|0;F[g+(F[n>>2]<<2)>>2]=0;f=F[n>>2]<<2;b=F[i>>2]-F[f+z>>2]|0;t:{if(!b){break t}f=g+f|0;k=F[i+52>>2];s=32-k|0;if((s|0)>=(b|0)){o=F[i+48>>2];if((o|0)==(m|0)){F[f>>2]=0;break t}F[f>>2]=F[o>>2]<>>32-b;b=b+F[i+52>>2]|0;F[i+52>>2]=b;if((b|0)!=32){break t}F[i+52>>2]=0;F[i+48>>2]=o+4;break t}o=F[i+48>>2];u=o+4|0;if((u|0)==(m|0)){F[f>>2]=0;break t}y=F[o>>2];F[i+48>>2]=u;s=b-s|0;F[i+52>>2]=s;F[f>>2]=F[o+4>>2]>>>32-s|y<>>32-b}b=F[n>>2]<<2;f=b+g|0;F[f>>2]=F[f>>2]|F[b+x>>2];e=e+1|0;if(e>>>0>2]){continue}break}}mb(q,t);F[i+8>>2]=F[i+8>>2]+1;l=l+1|0;if((d|0)==(l|0)){break k}e=F[i+12>>2];continue}}e=F[h+28>>2]}if(e){continue}break}}F[h+28>>2]=0;e=F[h+16>>2];b=F[h+12>>2];g=e-b>>2;if(g>>>0>=3){while(1){ra(F[b>>2]);b=F[h+12>>2]+4|0;F[h+12>>2]=b;e=F[h+16>>2];g=e-b>>2;if(g>>>0>2){continue}break}}f=170;u:{switch(g-1|0){case 1:f=341;case 0:F[h+24>>2]=f;break;default:break u}}v:{if((b|0)==(e|0)){break v}while(1){ra(F[b>>2]);b=b+4|0;if((e|0)!=(b|0)){continue}break}b=F[h+16>>2];d=F[h+12>>2];if((b|0)==(d|0)){break v}F[h+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[h+8>>2];if(b){ra(b)}ea=h+32|0;break h}}zb(i);break d;case 1:h=yb(w+8|0,3);v=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;w:{if(g>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break w}d=e+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;j=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[h>>2]>32){break w}e=F[b+12>>2];d=f;f=g+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break w}d=j+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break w}F[h+8>>2]=0;if(!ya(h+16|0,b)){break w}if(!ya(h+36|0,b)){break w}if(!ya(h+56|0,b)){break w}if(!ya(h+76|0,b)){break w}p=F[h+4>>2];f=0;j=0;g=ea-32|0;ea=g;e=F[h+12>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;if(e){if(e>>>0>=1073741824){break a}b=e<<2;j=sa(b);F[g+8>>2]=j;f=b+j|0;F[g+16>>2]=f;ua(j,0,b);F[g+12>>2]=f}b=F[h+120>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[g+8>>2];e=F[h+12>>2];f=F[g+12>>2]}F[b+4>>2]=f;F[b>>2]=j;F[b+8>>2]=F[g+16>>2];j=0;F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;x:{if(e){if(e>>>0>=1073741824){break a}b=e<<2;l=sa(b);F[g+8>>2]=l;j=b+l|0;F[g+16>>2]=j;ua(l,0,b);F[g+12>>2]=j}b=F[h+132>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;l=F[g+8>>2];j=F[g+12>>2]}F[b+4>>2]=j;F[b>>2]=l;F[b+8>>2]=F[g+16>>2];F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;za(g+8|0);b=F[g+24>>2]+F[g+28>>2]|0;d=(b>>>0)/341|0;b=F[F[g+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[g+28>>2];e=b+1|0;F[g+28>>2]=e;y:{if(b>>>0>e>>>0){break y}o=h+96|0;while(1){l=F[g+12>>2];f=F[g+24>>2];j=e-1|0;b=f+j|0;d=(b>>>0)/341|0;b=F[l+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;i=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[g+28>>2]=j;j=F[g+16>>2];l=j-l|0;if(((l?L(l>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){ra(F[j-4>>2]);F[g+16>>2]=F[g+16>>2]-4}if(b>>>0>p>>>0){break y}f=0;e=F[h+12>>2];l=(d|0)==(e-1|0)?0:d+1|0;if(l>>>0>=e>>>0){break y}d=F[h+120>>2];e=L(i,12);q=d+e|0;z:{A:{j=l<<2;t=e+F[h+132>>2]|0;m=F[h>>2]-F[j+F[t>>2]>>2]|0;if(!m){if(!b){break A}while(1){d=F[q>>2];i=F[d+8>>2];m=F[d+4>>2];n=F[d>>2];d=F[v>>2];e=F[d+4>>2];k=F[d+8>>2];B:{if(e>>>0>>0){F[e+8>>2]=i;F[e+4>>2]=m;F[e>>2]=n;F[d+4>>2]=e+12;break B}j=F[d>>2];t=(e-j|0)/12|0;l=t+1|0;if(l>>>0>=357913942){break a}k=(k-j|0)/12|0;r=k<<1;l=k>>>0<178956970?l>>>0>r>>>0?l:r:357913941;if(l>>>0>=357913942){break b}r=L(t,12);k=L(l,12);t=sa(k);l=r+t|0;F[l+8>>2]=i;F[l+4>>2]=m;F[l>>2]=n;i=l+12|0;if((e|0)!=(j|0)){while(1){l=l-12|0;e=e-12|0;F[l>>2]=F[e>>2];F[l+4>>2]=F[e+4>>2];F[l+8>>2]=F[e+8>>2];if((e|0)!=(j|0)){continue}break}}F[d+8>>2]=k+t;F[d+4>>2]=i;F[d>>2]=l;if(!j){break B}ra(j)}F[h+8>>2]=F[h+8>>2]+1;f=f+1|0;if((b|0)!=(f|0)){continue}break}break A}C:{D:{E:{F:{if(b>>>0<=2){d=F[h+108>>2];F[d>>2]=l;j=1;e=F[h+12>>2];if(e>>>0>1){break F}break C}if(I[h+8>>2]>I[h+4>>2]){break y}f=d;d=e+12|0;Ca(f+d|0,F[q>>2],F[q+4>>2]);d=j+F[d+F[h+120>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>2];m=32-f|0;G:{if((d|0)<=(m|0)){q=F[h+28>>2];if((q|0)==F[h+20>>2]){f=0;break G}m=F[q>>2];n=d+f|0;F[h+32>>2]=n;f=m<>>32-d|0;if((n|0)!=32){break G}F[h+32>>2]=0;F[h+28>>2]=q+4;break G}q=F[h+28>>2];n=q+4|0;if((n|0)==F[h+20>>2]){f=0;break G}k=F[q>>2];F[h+28>>2]=n;m=d-m|0;F[h+32>>2]=m;f=F[q+4>>2]>>>32-m|k<>>32-d}q=i+1|0;d=b;b=(b>>>1|0)-f|0;f=d-b|0;H:{if((f|0)==(b|0)){d=b;break H}d=F[h+88>>2];if((d|0)==F[h+80>>2]){break E}m=F[d>>2];n=F[h+92>>2];k=n+1|0;F[h+92>>2]=k;m=m&-2147483648>>>n;I:{if((k|0)==32){F[h+92>>2]=0;F[h+88>>2]=d+4;if(m){break I}break E}if(!m){break E}}d=f}f=b;break D}while(1){l=(e-1|0)==(l|0)?0:l+1|0;F[d+(j<<2)>>2]=l;j=j+1|0;e=F[h+12>>2];if(j>>>0>>0){continue}break}break C}d=b}k=j;b=F[h+132>>2];e=b+e|0;j=F[e>>2];m=k+j|0;F[m>>2]=F[m>>2]+1;Ca(b+L(q,12)|0,j,F[e+4>>2]);if(f){e=F[g+28>>2]+F[g+24>>2]|0;j=F[g+12>>2];b=F[g+16>>2]-j|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);j=F[g+12>>2];e=F[g+24>>2]+F[g+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+j>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=i;F[b+4>>2]=l;F[b>>2]=f;F[g+28>>2]=F[g+28>>2]+1}if(!d){break A}e=F[g+28>>2]+F[g+24>>2]|0;j=F[g+12>>2];b=F[g+16>>2]-j|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);j=F[g+12>>2];e=F[g+24>>2]+F[g+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+j>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=l;F[b>>2]=d;e=F[g+28>>2]+1|0;F[g+28>>2]=e;break z}i=0;if(!b){break A}while(1){if(e){l=F[h+40>>2];j=F[h+96>>2];r=F[h+108>>2];x=F[q>>2];z=F[t>>2];e=0;while(1){m=r+(e<<2)|0;F[j+(F[m>>2]<<2)>>2]=0;f=F[m>>2]<<2;d=F[h>>2]-F[f+z>>2]|0;J:{if(!d){break J}f=f+j|0;n=F[h+52>>2];s=32-n|0;if((s|0)>=(d|0)){k=F[h+48>>2];if((k|0)==(l|0)){F[f>>2]=0;break J}F[f>>2]=F[k>>2]<>>32-d;d=d+F[h+52>>2]|0;F[h+52>>2]=d;if((d|0)!=32){break J}F[h+52>>2]=0;F[h+48>>2]=k+4;break J}k=F[h+48>>2];u=k+4|0;if((u|0)==(l|0)){F[f>>2]=0;break J}y=F[k>>2];F[h+48>>2]=u;s=d-s|0;F[h+52>>2]=s;F[f>>2]=F[k+4>>2]>>>32-s|y<>>32-d}d=F[m>>2]<<2;f=d+j|0;F[f>>2]=F[f>>2]|F[d+x>>2];e=e+1|0;if(e>>>0>2]){continue}break}}mb(v,o);F[h+8>>2]=F[h+8>>2]+1;i=i+1|0;if((b|0)==(i|0)){break A}e=F[h+12>>2];continue}}e=F[g+28>>2]}if(e){continue}break}}F[g+28>>2]=0;e=F[g+16>>2];b=F[g+12>>2];l=e-b>>2;if(l>>>0>=3){while(1){ra(F[b>>2]);b=F[g+12>>2]+4|0;F[g+12>>2]=b;e=F[g+16>>2];l=e-b>>2;if(l>>>0>2){continue}break}}j=170;K:{switch(l-1|0){case 1:j=341;case 0:F[g+24>>2]=j;break;default:break K}}L:{if((b|0)==(e|0)){break L}while(1){ra(F[b>>2]);b=b+4|0;if((e|0)!=(b|0)){continue}break}b=F[g+16>>2];d=F[g+12>>2];if((b|0)==(d|0)){break L}F[g+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[g+8>>2];if(b){ra(b)}ea=g+32|0;break x}}zb(h);break d;case 2:h=wb(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;M:{if(g>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break M}d=e+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;j=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[h>>2]>32){break M}e=F[b+12>>2];d=f;f=g+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break M}d=j+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break M}F[h+8>>2]=0;if(!xa(h+16|0,b)){break M}if(!ya(h+32|0,b)){break M}if(!ya(h+52|0,b)){break M}if(!ya(h+72|0,b)){break M}v=F[h+4>>2];f=0;j=0;g=ea-32|0;ea=g;e=F[h+12>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;if(e){if(e>>>0>=1073741824){break a}b=e<<2;f=sa(b);F[g+8>>2]=f;j=b+f|0;F[g+16>>2]=j;ua(f,0,b);F[g+12>>2]=j}b=F[h+116>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[g+12>>2];e=F[h+12>>2];f=F[g+8>>2]}F[b+4>>2]=j;F[b>>2]=f;F[b+8>>2]=F[g+16>>2];f=0;F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;N:{if(e){if(e>>>0>=1073741824){break a}b=e<<2;i=sa(b);F[g+8>>2]=i;f=b+i|0;F[g+16>>2]=f;ua(i,0,b);F[g+12>>2]=f}b=F[h+128>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[g+8>>2];f=F[g+12>>2]}F[b+4>>2]=f;F[b>>2]=i;F[b+8>>2]=F[g+16>>2];F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;za(g+8|0);b=F[g+24>>2]+F[g+28>>2]|0;d=(b>>>0)/341|0;b=F[F[g+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=v;b=F[g+28>>2];e=b+1|0;F[g+28>>2]=e;O:{if(b>>>0>e>>>0){break O}t=h+92|0;r=h+16|0;while(1){p=F[g+12>>2];f=F[g+24>>2];i=e-1|0;b=f+i|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;l=F[b+8>>2];j=F[b+4>>2];d=F[b>>2];F[g+28>>2]=i;b=F[g+16>>2];i=b-p|0;if(((i?L(i>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[g+16>>2]=F[g+16>>2]-4}f=0;if(d>>>0>v>>>0){break O}b=F[h+12>>2];i=(j|0)==(b-1|0)?0:j+1|0;if(i>>>0>=b>>>0){break O}e=L(l,12);p=e+F[h+128>>2]|0;j=e+F[h+116>>2]|0;P:{m=i<<2;n=F[h>>2]-F[m+F[p>>2]>>2]|0;if(!n){if(!d){break P}while(1){b=F[j>>2];p=F[b+8>>2];m=F[b+4>>2];n=F[b>>2];b=F[q>>2];e=F[b+4>>2];k=F[b+8>>2];Q:{if(e>>>0>>0){F[e+8>>2]=p;F[e+4>>2]=m;F[e>>2]=n;F[b+4>>2]=e+12;break Q}l=F[b>>2];o=(e-l|0)/12|0;i=o+1|0;if(i>>>0>=357913942){break a}k=(k-l|0)/12|0;x=k<<1;i=k>>>0<178956970?i>>>0>x>>>0?i:x:357913941;if(i>>>0>=357913942){break b}s=L(o,12);k=L(i,12);o=sa(k);i=s+o|0;F[i+8>>2]=p;F[i+4>>2]=m;F[i>>2]=n;p=i+12|0;if((e|0)!=(l|0)){while(1){i=i-12|0;e=e-12|0;F[i>>2]=F[e>>2];F[i+4>>2]=F[e+4>>2];F[i+8>>2]=F[e+8>>2];if((e|0)!=(l|0)){continue}break}}F[b+8>>2]=k+o;F[b+4>>2]=p;F[b>>2]=i;if(!l){break Q}ra(l)}F[h+8>>2]=F[h+8>>2]+1;f=f+1|0;if((d|0)!=(f|0)){continue}break}break P}R:{S:{T:{U:{if(d>>>0<=2){b=F[h+104>>2];F[b>>2]=i;f=1;e=F[h+12>>2];if(e>>>0>1){break U}break R}if(I[h+8>>2]>I[h+4>>2]){break O}b=F[h+116>>2];k=l+1|0;p=L(k,12);f=b+p|0;if((f|0)!=(j|0)){Ca(f,F[j>>2],F[j+4>>2]);b=F[h+116>>2]}b=m+F[b+p>>2]|0;F[b>>2]=F[b>>2]+(1<>2]=0;oc(r,O(d)^31,g+4|0);b=(d>>>1|0)-F[g+4>>2]|0;f=d-b|0;V:{if((f|0)==(b|0)){d=b;break V}d=F[h+84>>2];if((d|0)==F[h+76>>2]){break T}j=F[d>>2];n=F[h+88>>2];o=n+1|0;F[h+88>>2]=o;j=j&-2147483648>>>n;W:{if((o|0)==32){F[h+88>>2]=0;F[h+84>>2]=d+4;if(j){break W}break T}if(!j){break T}}d=f}f=b;break S}while(1){i=(e-1|0)==(i|0)?0:i+1|0;F[b+(f<<2)>>2]=i;e=F[h+12>>2];f=f+1|0;if(e>>>0>f>>>0){continue}break}break R}d=b}b=F[h+128>>2];e=b+e|0;j=F[e>>2];m=j+m|0;F[m>>2]=F[m>>2]+1;Ca(b+p|0,j,F[e+4>>2]);if(f){e=F[g+28>>2]+F[g+24>>2]|0;j=F[g+12>>2];b=F[g+16>>2]-j|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);j=F[g+12>>2];e=F[g+24>>2]+F[g+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+j>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=i;F[b>>2]=f;F[g+28>>2]=F[g+28>>2]+1}if(!d){break P}e=F[g+28>>2]+F[g+24>>2]|0;f=F[g+12>>2];b=F[g+16>>2]-f|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);e=F[g+24>>2]+F[g+28>>2]|0;f=F[g+12>>2]}b=(e>>>0)/341|0;b=F[f+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=d;F[g+28>>2]=F[g+28>>2]+1;break P}i=0;if(!d){break P}while(1){if(e){m=F[h+36>>2];l=F[h+92>>2];x=F[h+104>>2];z=F[j>>2];s=F[p>>2];e=0;while(1){n=x+(e<<2)|0;F[l+(F[n>>2]<<2)>>2]=0;f=F[n>>2]<<2;b=F[h>>2]-F[f+s>>2]|0;X:{if(!b){break X}f=f+l|0;k=F[h+48>>2];u=32-k|0;if((u|0)>=(b|0)){o=F[h+44>>2];if((o|0)==(m|0)){F[f>>2]=0;break X}F[f>>2]=F[o>>2]<>>32-b;b=b+F[h+48>>2]|0;F[h+48>>2]=b;if((b|0)!=32){break X}F[h+48>>2]=0;F[h+44>>2]=o+4;break X}o=F[h+44>>2];y=o+4|0;if((y|0)==(m|0)){F[f>>2]=0;break X}A=F[o>>2];F[h+44>>2]=y;u=b-u|0;F[h+48>>2]=u;F[f>>2]=F[o+4>>2]>>>32-u|A<>>32-b}b=F[n>>2]<<2;f=b+l|0;F[f>>2]=F[f>>2]|F[b+z>>2];e=e+1|0;if(e>>>0>2]){continue}break}}mb(q,t);F[h+8>>2]=F[h+8>>2]+1;i=i+1|0;if((d|0)==(i|0)){break P}e=F[h+12>>2];continue}}e=F[g+28>>2];if(e){continue}break}}F[g+28>>2]=0;e=F[g+16>>2];b=F[g+12>>2];i=e-b>>2;if(i>>>0>=3){while(1){ra(F[b>>2]);b=F[g+12>>2]+4|0;F[g+12>>2]=b;e=F[g+16>>2];i=e-b>>2;if(i>>>0>2){continue}break}}f=170;Y:{switch(i-1|0){case 1:f=341;case 0:F[g+24>>2]=f;break;default:break Y}}Z:{if((b|0)==(e|0)){break Z}while(1){ra(F[b>>2]);b=b+4|0;if((e|0)!=(b|0)){continue}break}b=F[g+16>>2];d=F[g+12>>2];if((b|0)==(d|0)){break Z}F[g+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[g+8>>2];if(b){ra(b)}ea=g+32|0;break N}}xb(h);break d;case 3:h=wb(w+8|0,3);v=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;_:{if(g>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break _}d=e+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;j=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[h>>2]>32){break _}e=F[b+12>>2];d=f;f=g+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break _}d=j+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break _}F[h+8>>2]=0;if(!xa(h+16|0,b)){break _}if(!ya(h+32|0,b)){break _}if(!ya(h+52|0,b)){break _}if(!ya(h+72|0,b)){break _}p=F[h+4>>2];j=0;f=0;g=ea-32|0;ea=g;e=F[h+12>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;if(e){if(e>>>0>=1073741824){break a}b=e<<2;j=sa(b);F[g+8>>2]=j;f=b+j|0;F[g+16>>2]=f;ua(j,0,b);F[g+12>>2]=f}b=F[h+116>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[g+8>>2];e=F[h+12>>2];f=F[g+12>>2]}F[b+4>>2]=f;F[b>>2]=j;F[b+8>>2]=F[g+16>>2];j=0;F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;$:{if(e){if(e>>>0>=1073741824){break a}b=e<<2;i=sa(b);F[g+8>>2]=i;j=b+i|0;F[g+16>>2]=j;ua(i,0,b);F[g+12>>2]=j}b=F[h+128>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[g+8>>2];j=F[g+12>>2]}F[b+4>>2]=j;F[b>>2]=i;F[b+8>>2]=F[g+16>>2];F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;za(g+8|0);b=F[g+24>>2]+F[g+28>>2]|0;d=(b>>>0)/341|0;b=F[F[g+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[g+28>>2];e=b+1|0;F[g+28>>2]=e;aa:{if(b>>>0>e>>>0){break aa}o=h+92|0;t=h+16|0;while(1){i=F[g+12>>2];f=F[g+24>>2];j=e-1|0;b=f+j|0;d=(b>>>0)/341|0;b=F[i+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;q=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[g+28>>2]=j;j=F[g+16>>2];i=j-i|0;if(((i?L(i>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){ra(F[j-4>>2]);F[g+16>>2]=F[g+16>>2]-4}if(b>>>0>p>>>0){break aa}f=0;e=F[h+12>>2];i=(d|0)==(e-1|0)?0:d+1|0;if(i>>>0>=e>>>0){break aa}d=F[h+116>>2];e=L(q,12);l=d+e|0;ba:{j=i<<2;r=e+F[h+128>>2]|0;m=F[h>>2]-F[j+F[r>>2]>>2]|0;if(!m){if(!b){break ba}while(1){d=F[l>>2];q=F[d+8>>2];m=F[d+4>>2];n=F[d>>2];d=F[v>>2];e=F[d+4>>2];k=F[d+8>>2];ca:{if(e>>>0>>0){F[e+8>>2]=q;F[e+4>>2]=m;F[e>>2]=n;F[d+4>>2]=e+12;break ca}j=F[d>>2];r=(e-j|0)/12|0;i=r+1|0;if(i>>>0>=357913942){break a}k=(k-j|0)/12|0;x=k<<1;i=k>>>0<178956970?i>>>0>x>>>0?i:x:357913941;if(i>>>0>=357913942){break b}s=L(r,12);k=L(i,12);r=sa(k);i=s+r|0;F[i+8>>2]=q;F[i+4>>2]=m;F[i>>2]=n;q=i+12|0;if((e|0)!=(j|0)){while(1){i=i-12|0;e=e-12|0;F[i>>2]=F[e>>2];F[i+4>>2]=F[e+4>>2];F[i+8>>2]=F[e+8>>2];if((e|0)!=(j|0)){continue}break}}F[d+8>>2]=k+r;F[d+4>>2]=q;F[d>>2]=i;if(!j){break ca}ra(j)}F[h+8>>2]=F[h+8>>2]+1;f=f+1|0;if((b|0)!=(f|0)){continue}break}break ba}da:{ea:{fa:{ga:{if(b>>>0<=2){d=F[h+104>>2];F[d>>2]=i;j=1;e=F[h+12>>2];if(e>>>0>1){break ga}break da}if(I[h+8>>2]>I[h+4>>2]){break aa}f=d;d=e+12|0;Ca(f+d|0,F[l>>2],F[l+4>>2]);d=j+F[d+F[h+116>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>2]=0;oc(t,O(b)^31,g+4|0);l=q+1|0;d=b;b=(b>>>1|0)-F[g+4>>2]|0;f=d-b|0;ha:{if((f|0)==(b|0)){d=b;break ha}d=F[h+84>>2];if((d|0)==F[h+76>>2]){break fa}m=F[d>>2];n=F[h+88>>2];k=n+1|0;F[h+88>>2]=k;m=m&-2147483648>>>n;ia:{if((k|0)==32){F[h+88>>2]=0;F[h+84>>2]=d+4;if(m){break ia}break fa}if(!m){break fa}}d=f}f=b;break ea}while(1){i=(e-1|0)==(i|0)?0:i+1|0;F[d+(j<<2)>>2]=i;e=F[h+12>>2];j=j+1|0;if(e>>>0>j>>>0){continue}break}break da}d=b}k=j;b=F[h+128>>2];e=b+e|0;j=F[e>>2];m=k+j|0;F[m>>2]=F[m>>2]+1;Ca(b+L(l,12)|0,j,F[e+4>>2]);if(f){e=F[g+28>>2]+F[g+24>>2]|0;j=F[g+12>>2];b=F[g+16>>2]-j|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);j=F[g+12>>2];e=F[g+24>>2]+F[g+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+j>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=i;F[b>>2]=f;F[g+28>>2]=F[g+28>>2]+1}if(!d){break ba}e=F[g+28>>2]+F[g+24>>2]|0;j=F[g+12>>2];b=F[g+16>>2]-j|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);j=F[g+12>>2];e=F[g+24>>2]+F[g+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+j>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=i;F[b>>2]=d;F[g+28>>2]=F[g+28>>2]+1;break ba}i=0;if(!b){break ba}while(1){if(e){q=F[h+36>>2];j=F[h+92>>2];x=F[h+104>>2];z=F[l>>2];s=F[r>>2];e=0;while(1){m=x+(e<<2)|0;F[j+(F[m>>2]<<2)>>2]=0;f=F[m>>2]<<2;d=F[h>>2]-F[f+s>>2]|0;ja:{if(!d){break ja}f=f+j|0;n=F[h+48>>2];u=32-n|0;if((u|0)>=(d|0)){k=F[h+44>>2];if((k|0)==(q|0)){F[f>>2]=0;break ja}F[f>>2]=F[k>>2]<>>32-d;d=d+F[h+48>>2]|0;F[h+48>>2]=d;if((d|0)!=32){break ja}F[h+48>>2]=0;F[h+44>>2]=k+4;break ja}k=F[h+44>>2];y=k+4|0;if((y|0)==(q|0)){F[f>>2]=0;break ja}A=F[k>>2];F[h+44>>2]=y;u=d-u|0;F[h+48>>2]=u;F[f>>2]=F[k+4>>2]>>>32-u|A<>>32-d}d=F[m>>2]<<2;f=d+j|0;F[f>>2]=F[f>>2]|F[d+z>>2];e=e+1|0;if(e>>>0>2]){continue}break}}mb(v,o);F[h+8>>2]=F[h+8>>2]+1;i=i+1|0;if((b|0)==(i|0)){break ba}e=F[h+12>>2];continue}}e=F[g+28>>2];if(e){continue}break}}F[g+28>>2]=0;e=F[g+16>>2];b=F[g+12>>2];i=e-b>>2;if(i>>>0>=3){while(1){ra(F[b>>2]);b=F[g+12>>2]+4|0;F[g+12>>2]=b;e=F[g+16>>2];i=e-b>>2;if(i>>>0>2){continue}break}}j=170;ka:{switch(i-1|0){case 1:j=341;case 0:F[g+24>>2]=j;break;default:break ka}}la:{if((b|0)==(e|0)){break la}while(1){ra(F[b>>2]);b=b+4|0;if((e|0)!=(b|0)){continue}break}b=F[g+16>>2];d=F[g+12>>2];if((b|0)==(d|0)){break la}F[g+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[g+8>>2];if(b){ra(b)}ea=g+32|0;break $}}xb(h);break d;case 4:i=_a(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;ma:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break ma}d=e+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;h=e;F[b+16>>2]=h;F[b+20>>2]=d;if(I[i>>2]>32){break ma}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break ma}d=h+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break ma}F[i+8>>2]=0;if(!ub(i+16|0,b)){break ma}if(!ya(i+544|0,b)){break ma}if(!ya(i+564|0,b)){break ma}if(!ya(i+584|0,b)){break ma}v=F[i+4>>2];e=0;d=0;h=ea-32|0;ea=h;f=F[i+12>>2];F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;e=sa(b);F[h+8>>2]=e;d=b+e|0;F[h+16>>2]=d;ua(e,0,b);F[h+12>>2]=d}b=F[i+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;ra(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[i+12>>2];e=F[h+8>>2];d=F[h+12>>2]}F[b+4>>2]=d;F[b>>2]=e;F[b+8>>2]=F[h+16>>2];e=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;na:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;g=sa(b);F[h+8>>2]=g;e=b+g|0;F[h+16>>2]=e;ua(g,0,b);F[h+12>>2]=e}b=F[i+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;g=F[h+8>>2];e=F[h+12>>2]}F[b+4>>2]=e;F[b>>2]=g;F[b+8>>2]=F[h+16>>2];F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;za(h+8|0);b=F[h+24>>2]+F[h+28>>2]|0;d=(b>>>0)/341|0;b=F[F[h+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=v;b=F[h+28>>2];f=b+1|0;F[h+28>>2]=f;oa:{if(b>>>0>f>>>0){break oa}t=i+604|0;while(1){p=F[h+12>>2];g=F[h+24>>2];j=f-1|0;b=g+j|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;l=F[b+8>>2];e=F[b+4>>2];d=F[b>>2];F[h+28>>2]=j;b=F[h+16>>2];j=b-p|0;if(((j?L(j>>2,341)-1|0:0)-(g+f|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[h+16>>2]=F[h+16>>2]-4}if(d>>>0>v>>>0){break oa}b=F[i+12>>2];g=(e|0)==(b-1|0)?0:e+1|0;if(g>>>0>=b>>>0){break oa}p=L(l,12);m=p+F[i+640>>2]|0;j=p+F[i+628>>2]|0;pa:{qa:{n=g<<2;f=F[i>>2]-F[n+F[m>>2]>>2]|0;if(!f){b=0;if(!d){break qa}while(1){f=F[j>>2];p=F[f+8>>2];m=F[f+4>>2];n=F[f>>2];e=F[q>>2];f=F[e+4>>2];k=F[e+8>>2];ra:{if(f>>>0>>0){F[f+8>>2]=p;F[f+4>>2]=m;F[f>>2]=n;F[e+4>>2]=f+12;break ra}l=F[e>>2];o=(f-l|0)/12|0;g=o+1|0;if(g>>>0>=357913942){break a}k=(k-l|0)/12|0;r=k<<1;g=k>>>0<178956970?g>>>0>r>>>0?g:r:357913941;if(g>>>0>=357913942){break b}r=L(o,12);k=L(g,12);o=sa(k);g=r+o|0;F[g+8>>2]=p;F[g+4>>2]=m;F[g>>2]=n;p=g+12|0;if((f|0)!=(l|0)){while(1){g=g-12|0;f=f-12|0;F[g>>2]=F[f>>2];F[g+4>>2]=F[f+4>>2];F[g+8>>2]=F[f+8>>2];if((f|0)!=(l|0)){continue}break}}F[e+8>>2]=k+o;F[e+4>>2]=p;F[e>>2]=g;if(!l){break ra}ra(l)}F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)!=(b|0)){continue}break}break qa}sa:{ta:{ua:{va:{if(d>>>0<=2){b=F[i+616>>2];F[b>>2]=g;e=1;f=F[i+12>>2];if(f>>>0>1){break va}break sa}if(I[i+8>>2]>I[i+4>>2]){break oa}b=F[i+628>>2];k=l+1|0;m=L(k,12);e=b+m|0;if((e|0)!=(j|0)){Ca(e,F[j>>2],F[j+4>>2]);b=F[i+628>>2]}b=n+F[b+m>>2]|0;F[b>>2]=F[b>>2]+(1<>>1|0)-e|0;f=d-b|0;wa:{if((f|0)==(b|0)){d=b;break wa}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break ua}e=F[d>>2];j=F[i+600>>2];o=j+1|0;F[i+600>>2]=o;e=e&-2147483648>>>j;xa:{if((o|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(e){break xa}break ua}if(!e){break ua}}d=f}f=b;break ta}while(1){g=(f-1|0)==(g|0)?0:g+1|0;F[b+(e<<2)>>2]=g;f=F[i+12>>2];e=e+1|0;if(f>>>0>e>>>0){continue}break}break sa}d=b}b=F[i+640>>2];e=b+p|0;j=F[e>>2];p=j+n|0;F[p>>2]=F[p>>2]+1;Ca(b+m|0,j,F[e+4>>2]);if(f){e=F[h+28>>2]+F[h+24>>2]|0;j=F[h+12>>2];b=F[h+16>>2]-j|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(h+8|0);j=F[h+12>>2];e=F[h+24>>2]+F[h+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+j>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=g;F[b>>2]=f;F[h+28>>2]=F[h+28>>2]+1}if(!d){break qa}f=F[h+28>>2]+F[h+24>>2]|0;e=F[h+12>>2];b=F[h+16>>2]-e|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){za(h+8|0);e=F[h+12>>2];f=F[h+24>>2]+F[h+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+e>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=g;F[b>>2]=d;f=F[h+28>>2]+1|0;F[h+28>>2]=f;break pa}b=0;if(!d){break qa}while(1){if(f){p=F[i+548>>2];l=F[i+604>>2];r=F[i+616>>2];x=F[j>>2];z=F[m>>2];f=0;while(1){n=r+(f<<2)|0;F[l+(F[n>>2]<<2)>>2]=0;g=F[n>>2]<<2;e=F[i>>2]-F[g+z>>2]|0;ya:{if(!e){break ya}g=g+l|0;k=F[i+560>>2];s=32-k|0;if((s|0)>=(e|0)){o=F[i+556>>2];if((o|0)==(p|0)){F[g>>2]=0;break ya}F[g>>2]=F[o>>2]<>>32-e;e=e+F[i+560>>2]|0;F[i+560>>2]=e;if((e|0)!=32){break ya}F[i+560>>2]=0;F[i+556>>2]=o+4;break ya}o=F[i+556>>2];u=o+4|0;if((u|0)==(p|0)){F[g>>2]=0;break ya}y=F[o>>2];F[i+556>>2]=u;s=e-s|0;F[i+560>>2]=s;F[g>>2]=F[o+4>>2]>>>32-s|y<>>32-e}e=F[n>>2]<<2;g=e+l|0;F[g>>2]=F[g>>2]|F[e+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}}mb(q,t);F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)==(b|0)){break qa}f=F[i+12>>2];continue}}f=F[h+28>>2]}if(f){continue}break}}F[h+28>>2]=0;f=F[h+16>>2];b=F[h+12>>2];g=f-b>>2;if(g>>>0>=3){while(1){ra(F[b>>2]);b=F[h+12>>2]+4|0;F[h+12>>2]=b;f=F[h+16>>2];g=f-b>>2;if(g>>>0>2){continue}break}}d=170;za:{switch(g-1|0){case 1:d=341;case 0:F[h+24>>2]=d;break;default:break za}}Aa:{if((b|0)==(f|0)){break Aa}while(1){ra(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[h+16>>2];d=F[h+12>>2];if((b|0)==(d|0)){break Aa}F[h+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[h+8>>2];if(b){ra(b)}ea=h+32|0;break na}}$a(i);break d;case 5:j=_a(w+8|0,3);v=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;Ba:{if(g>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break Ba}d=e+F[b>>2]|0;F[j>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;h=e;F[b+16>>2]=h;F[b+20>>2]=d;if(I[j>>2]>32){break Ba}e=F[b+12>>2];d=f;f=g+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break Ba}d=h+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[j+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break Ba}F[j+8>>2]=0;if(!ub(j+16|0,b)){break Ba}if(!ya(j+544|0,b)){break Ba}if(!ya(j+564|0,b)){break Ba}if(!ya(j+584|0,b)){break Ba}p=F[j+4>>2];e=0;d=0;g=ea-32|0;ea=g;f=F[j+12>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;e=sa(b);F[g+8>>2]=e;d=b+e|0;F[g+16>>2]=d;ua(e,0,b);F[g+12>>2]=d}b=F[j+628>>2];h=F[b>>2];if(h){F[b+4>>2]=h;ra(h);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[j+12>>2];e=F[g+8>>2];d=F[g+12>>2]}F[b+4>>2]=d;F[b>>2]=e;F[b+8>>2]=F[g+16>>2];e=0;F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;Ca:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;i=sa(b);F[g+8>>2]=i;e=b+i|0;F[g+16>>2]=e;ua(i,0,b);F[g+12>>2]=e}b=F[j+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[g+8>>2];e=F[g+12>>2]}F[b+4>>2]=e;F[b>>2]=i;F[b+8>>2]=F[g+16>>2];F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;za(g+8|0);b=F[g+24>>2]+F[g+28>>2]|0;d=(b>>>0)/341|0;b=F[F[g+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[g+28>>2];f=b+1|0;F[g+28>>2]=f;Da:{if(b>>>0>f>>>0){break Da}o=j+604|0;while(1){i=F[g+12>>2];e=F[g+24>>2];h=f-1|0;b=e+h|0;d=(b>>>0)/341|0;b=F[i+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;q=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[g+28>>2]=h;h=F[g+16>>2];i=h-i|0;if(((i?L(i>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){ra(F[h-4>>2]);F[g+16>>2]=F[g+16>>2]-4}if(b>>>0>p>>>0){break Da}f=F[j+12>>2];i=(d|0)==(f-1|0)?0:d+1|0;if(i>>>0>=f>>>0){break Da}d=F[j+628>>2];h=L(q,12);l=d+h|0;Ea:{Fa:{m=i<<2;t=h+F[j+640>>2]|0;f=F[j>>2]-F[m+F[t>>2]>>2]|0;if(!f){h=0;if(!b){break Fa}while(1){d=F[l>>2];q=F[d+8>>2];m=F[d+4>>2];n=F[d>>2];d=F[v>>2];f=F[d+4>>2];k=F[d+8>>2];Ga:{if(f>>>0>>0){F[f+8>>2]=q;F[f+4>>2]=m;F[f>>2]=n;F[d+4>>2]=f+12;break Ga}e=F[d>>2];t=(f-e|0)/12|0;i=t+1|0;if(i>>>0>=357913942){break a}k=(k-e|0)/12|0;r=k<<1;i=k>>>0<178956970?i>>>0>r>>>0?i:r:357913941;if(i>>>0>=357913942){break b}r=L(t,12);k=L(i,12);t=sa(k);i=r+t|0;F[i+8>>2]=q;F[i+4>>2]=m;F[i>>2]=n;q=i+12|0;if((e|0)!=(f|0)){while(1){i=i-12|0;f=f-12|0;F[i>>2]=F[f>>2];F[i+4>>2]=F[f+4>>2];F[i+8>>2]=F[f+8>>2];if((e|0)!=(f|0)){continue}break}}F[d+8>>2]=k+t;F[d+4>>2]=q;F[d>>2]=i;if(!e){break Ga}ra(e)}F[j+8>>2]=F[j+8>>2]+1;h=h+1|0;if((b|0)!=(h|0)){continue}break}break Fa}Ha:{Ia:{Ja:{Ka:{if(b>>>0<=2){d=F[j+616>>2];F[d>>2]=i;e=1;f=F[j+12>>2];if(f>>>0>1){break Ka}break Ha}if(I[j+8>>2]>I[j+4>>2]){break Da}e=d;d=h+12|0;Ca(e+d|0,F[l>>2],F[l+4>>2]);d=m+F[d+F[j+628>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>>1|0)-e|0;f=d-b|0;La:{if((f|0)==(b|0)){d=b;break La}d=F[j+596>>2];if((d|0)==F[j+588>>2]){break Ja}e=F[d>>2];n=F[j+600>>2];k=n+1|0;F[j+600>>2]=k;e=e&-2147483648>>>n;Ma:{if((k|0)==32){F[j+600>>2]=0;F[j+596>>2]=d+4;if(e){break Ma}break Ja}if(!e){break Ja}}d=f}f=b;break Ia}while(1){i=(f-1|0)==(i|0)?0:i+1|0;F[d+(e<<2)>>2]=i;f=F[j+12>>2];e=e+1|0;if(f>>>0>e>>>0){continue}break}break Ha}d=b}b=F[j+640>>2];e=b+h|0;h=F[e>>2];m=h+m|0;F[m>>2]=F[m>>2]+1;Ca(b+L(l,12)|0,h,F[e+4>>2]);if(f){e=F[g+28>>2]+F[g+24>>2]|0;h=F[g+12>>2];b=F[g+16>>2]-h|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);h=F[g+12>>2];e=F[g+24>>2]+F[g+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+h>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=i;F[b>>2]=f;F[g+28>>2]=F[g+28>>2]+1}if(!d){break Fa}f=F[g+28>>2]+F[g+24>>2]|0;e=F[g+12>>2];b=F[g+16>>2]-e|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);e=F[g+12>>2];f=F[g+24>>2]+F[g+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+e>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=i;F[b>>2]=d;f=F[g+28>>2]+1|0;F[g+28>>2]=f;break Ea}h=0;if(!b){break Fa}while(1){if(f){q=F[j+548>>2];i=F[j+604>>2];r=F[j+616>>2];x=F[l>>2];z=F[t>>2];f=0;while(1){m=r+(f<<2)|0;F[i+(F[m>>2]<<2)>>2]=0;e=F[m>>2]<<2;d=F[j>>2]-F[e+z>>2]|0;Na:{if(!d){break Na}e=e+i|0;n=F[j+560>>2];s=32-n|0;if((s|0)>=(d|0)){k=F[j+556>>2];if((k|0)==(q|0)){F[e>>2]=0;break Na}F[e>>2]=F[k>>2]<>>32-d;d=d+F[j+560>>2]|0;F[j+560>>2]=d;if((d|0)!=32){break Na}F[j+560>>2]=0;F[j+556>>2]=k+4;break Na}k=F[j+556>>2];u=k+4|0;if((u|0)==(q|0)){F[e>>2]=0;break Na}y=F[k>>2];F[j+556>>2]=u;s=d-s|0;F[j+560>>2]=s;F[e>>2]=F[k+4>>2]>>>32-s|y<>>32-d}d=F[m>>2]<<2;e=d+i|0;F[e>>2]=F[e>>2]|F[d+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}}mb(v,o);F[j+8>>2]=F[j+8>>2]+1;h=h+1|0;if((b|0)==(h|0)){break Fa}f=F[j+12>>2];continue}}f=F[g+28>>2]}if(f){continue}break}}F[g+28>>2]=0;f=F[g+16>>2];b=F[g+12>>2];i=f-b>>2;if(i>>>0>=3){while(1){ra(F[b>>2]);b=F[g+12>>2]+4|0;F[g+12>>2]=b;f=F[g+16>>2];i=f-b>>2;if(i>>>0>2){continue}break}}e=170;Oa:{switch(i-1|0){case 1:e=341;case 0:F[g+24>>2]=e;break;default:break Oa}}Pa:{if((b|0)==(f|0)){break Pa}while(1){ra(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[g+16>>2];d=F[g+12>>2];if((b|0)==(d|0)){break Pa}F[g+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[g+8>>2];if(b){ra(b)}ea=g+32|0;break Ca}}$a(j);break d;case 6:break f;default:break c}}i=_a(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;Qa:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break Qa}d=e+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;h=e;F[b+16>>2]=h;F[b+20>>2]=d;if(I[i>>2]>32){break Qa}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break Qa}d=h+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break Qa}F[i+8>>2]=0;if(!ub(i+16|0,b)){break Qa}if(!ya(i+544|0,b)){break Qa}if(!ya(i+564|0,b)){break Qa}if(!ya(i+584|0,b)){break Qa}v=F[i+4>>2];e=0;d=0;h=ea-32|0;ea=h;f=F[i+12>>2];F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;e=sa(b);F[h+8>>2]=e;d=b+e|0;F[h+16>>2]=d;ua(e,0,b);F[h+12>>2]=d}b=F[i+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;ra(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[i+12>>2];e=F[h+8>>2];d=F[h+12>>2]}F[b+4>>2]=d;F[b>>2]=e;F[b+8>>2]=F[h+16>>2];e=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;Ra:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;g=sa(b);F[h+8>>2]=g;e=b+g|0;F[h+16>>2]=e;ua(g,0,b);F[h+12>>2]=e}b=F[i+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;g=F[h+8>>2];e=F[h+12>>2]}F[b+4>>2]=e;F[b>>2]=g;F[b+8>>2]=F[h+16>>2];F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;za(h+8|0);b=F[h+24>>2]+F[h+28>>2]|0;d=(b>>>0)/341|0;b=F[F[h+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=v;b=F[h+28>>2];f=b+1|0;F[h+28>>2]=f;Sa:{if(b>>>0>f>>>0){break Sa}t=i+604|0;while(1){j=F[h+12>>2];b=F[h+24>>2];e=f-1|0;d=b+e|0;g=(d>>>0)/341|0;d=F[j+(g<<2)>>2]+L(d-L(g,341)|0,12)|0;l=F[d+8>>2];d=F[d>>2];F[h+28>>2]=e;e=F[h+16>>2];g=e-j|0;if(((g?L(g>>2,341)-1|0:0)-(b+f|0)|0)+1>>>0>=682){ra(F[e-4>>2]);F[h+16>>2]=F[h+16>>2]-4}if(d>>>0>v>>>0){break Sa}b=F[i+628>>2];p=L(l,12);m=p+F[i+640>>2]|0;g=Sd(i,d,m);if(g>>>0>=I[i+12>>2]){break Sa}j=b+p|0;Ta:{Ua:{n=g<<2;f=F[i>>2]-F[n+F[m>>2]>>2]|0;if(!f){b=0;if(!d){break Ua}while(1){f=F[j>>2];p=F[f+8>>2];m=F[f+4>>2];n=F[f>>2];e=F[q>>2];f=F[e+4>>2];k=F[e+8>>2];Va:{if(f>>>0>>0){F[f+8>>2]=p;F[f+4>>2]=m;F[f>>2]=n;F[e+4>>2]=f+12;break Va}l=F[e>>2];o=(f-l|0)/12|0;g=o+1|0;if(g>>>0>=357913942){break a}k=(k-l|0)/12|0;r=k<<1;g=k>>>0<178956970?g>>>0>r>>>0?g:r:357913941;if(g>>>0>=357913942){break b}r=L(o,12);k=L(g,12);o=sa(k);g=r+o|0;F[g+8>>2]=p;F[g+4>>2]=m;F[g>>2]=n;p=g+12|0;if((f|0)!=(l|0)){while(1){g=g-12|0;f=f-12|0;F[g>>2]=F[f>>2];F[g+4>>2]=F[f+4>>2];F[g+8>>2]=F[f+8>>2];if((f|0)!=(l|0)){continue}break}}F[e+8>>2]=k+o;F[e+4>>2]=p;F[e>>2]=g;if(!l){break Va}ra(l)}F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)!=(b|0)){continue}break}break Ua}Wa:{Xa:{Ya:{Za:{if(d>>>0<=2){b=F[i+616>>2];F[b>>2]=g;e=1;f=F[i+12>>2];if(f>>>0>1){break Za}break Wa}if(I[i+8>>2]>I[i+4>>2]){break Sa}b=F[i+628>>2];k=l+1|0;m=L(k,12);e=b+m|0;if((e|0)!=(j|0)){Ca(e,F[j>>2],F[j+4>>2]);b=F[i+628>>2]}b=n+F[b+m>>2]|0;F[b>>2]=F[b>>2]+(1<>>1|0)-e|0;f=d-b|0;_a:{if((f|0)==(b|0)){d=b;break _a}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break Ya}e=F[d>>2];j=F[i+600>>2];o=j+1|0;F[i+600>>2]=o;e=e&-2147483648>>>j;$a:{if((o|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(e){break $a}break Ya}if(!e){break Ya}}d=f}f=b;break Xa}while(1){g=(f-1|0)==(g|0)?0:g+1|0;F[b+(e<<2)>>2]=g;f=F[i+12>>2];e=e+1|0;if(f>>>0>e>>>0){continue}break}break Wa}d=b}b=F[i+640>>2];e=b+p|0;j=F[e>>2];p=j+n|0;F[p>>2]=F[p>>2]+1;Ca(b+m|0,j,F[e+4>>2]);if(f){e=F[h+28>>2]+F[h+24>>2]|0;j=F[h+12>>2];b=F[h+16>>2]-j|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(h+8|0);j=F[h+12>>2];e=F[h+24>>2]+F[h+28>>2]|0}b=(e>>>0)/341|0;b=F[(b<<2)+j>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=g;F[b>>2]=f;F[h+28>>2]=F[h+28>>2]+1}if(!d){break Ua}f=F[h+28>>2]+F[h+24>>2]|0;e=F[h+12>>2];b=F[h+16>>2]-e|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){za(h+8|0);e=F[h+12>>2];f=F[h+24>>2]+F[h+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+e>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=g;F[b>>2]=d;f=F[h+28>>2]+1|0;F[h+28>>2]=f;break Ta}b=0;if(!d){break Ua}while(1){if(f){p=F[i+548>>2];l=F[i+604>>2];r=F[i+616>>2];x=F[j>>2];z=F[m>>2];f=0;while(1){n=r+(f<<2)|0;F[l+(F[n>>2]<<2)>>2]=0;g=F[n>>2]<<2;e=F[i>>2]-F[g+z>>2]|0;ab:{if(!e){break ab}g=g+l|0;k=F[i+560>>2];s=32-k|0;if((s|0)>=(e|0)){o=F[i+556>>2];if((o|0)==(p|0)){F[g>>2]=0;break ab}F[g>>2]=F[o>>2]<>>32-e;e=e+F[i+560>>2]|0;F[i+560>>2]=e;if((e|0)!=32){break ab}F[i+560>>2]=0;F[i+556>>2]=o+4;break ab}o=F[i+556>>2];u=o+4|0;if((u|0)==(p|0)){F[g>>2]=0;break ab}y=F[o>>2];F[i+556>>2]=u;s=e-s|0;F[i+560>>2]=s;F[g>>2]=F[o+4>>2]>>>32-s|y<>>32-e}e=F[n>>2]<<2;g=e+l|0;F[g>>2]=F[g>>2]|F[e+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}}mb(q,t);F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)==(b|0)){break Ua}f=F[i+12>>2];continue}}f=F[h+28>>2]}if(f){continue}break}}F[h+28>>2]=0;f=F[h+16>>2];b=F[h+12>>2];g=f-b>>2;if(g>>>0>=3){while(1){ra(F[b>>2]);b=F[h+12>>2]+4|0;F[h+12>>2]=b;f=F[h+16>>2];g=f-b>>2;if(g>>>0>2){continue}break}}d=170;bb:{switch(g-1|0){case 1:d=341;case 0:F[h+24>>2]=d;break;default:break bb}}cb:{if((b|0)==(f|0)){break cb}while(1){ra(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[h+16>>2];d=F[h+12>>2];if((b|0)==(d|0)){break cb}F[h+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[h+8>>2];if(b){ra(b)}ea=h+32|0;break Ra}}$a(i)}g=F[a+12>>2]==((F[c+4>>2]-F[c>>2]|0)/12|0)}ea=w+672|0;return g}wa(1336);V()}va();V()}function md(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;if(!a){return 1}e=F[c+20>>2];k=F[c+12>>2];h=F[c+16>>2];a:{if((e|0)>=(k|0)&h>>>0>=I[c+8>>2]|(e|0)>(k|0)){break a}k=G[h+F[c>>2]|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;b:{switch(k|0){case 0:h=a;e=b;l=d;a=0;d=0;k=ea+-64|0;ea=k;F[k+56>>2]=0;F[k+48>>2]=0;F[k+52>>2]=0;F[k+40>>2]=0;F[k+44>>2]=0;F[k+32>>2]=0;F[k+36>>2]=0;F[k+24>>2]=0;F[k+28>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;F[k+8>>2]=0;F[k+12>>2]=0;c:{if(!ld(k+8|0,c)){break c}if(!Ge(k+8|0,c)|(F[k+20>>2]?0:h)){break c}Db(c,0,0);if(h){p=e<<2;r=F[k+36>>2];s=F[k+48>>2];v=F[k+24>>2];while(1){q=F[k+56>>2];d:{if(q>>>0>16383){break d}a=F[k+52>>2];while(1){if((a|0)<=0){break d}a=a-1|0;F[k+52>>2]=a;q=G[a+s|0]|q<<8;F[k+56>>2]=q;if(q>>>0<16384){continue}break}}a=q&4095;g=F[(a<<2)+v>>2];b=(g<<3)+r|0;F[k+56>>2]=(L(F[b>>2],q>>>12|0)+a|0)-F[b+4>>2];e:{if((e|0)<=0){break e}a=0;if(!G[c+36|0]|g>>>0>32){break c}if(g){w=g&-2;x=g&1;f=d+e|0;b=F[c+32>>2];while(1){i=F[c+28>>2];n=F[c+24>>2];q=0;a=b;j=0;m=0;if((g|0)!=1){while(1){o=n+(a>>>3|0)|0;f:{if(o>>>0>=i>>>0){o=0;break f}o=G[o|0];b=a+1|0;F[c+32>>2]=b;o=o>>>(a&7)&1;a=b}o=o<>>3|0)|0;if(t>>>0>>0){j=G[t|0];b=a+1|0;F[c+32>>2]=b;j=j>>>(a&7)&1;a=b}t=q|1;q=q+2|0;j=o|j<>>3|0)|0;if(o>>>0>i>>>0){i=G[i|0];b=a+1|0;F[c+32>>2]=b;a=i>>>(a&7)&1}else{a=0}j=a<>2]=j;d=d+1|0;if((f|0)!=(d|0)){continue}break}d=f;break e}ua(l+(d<<2)|0,0,p);d=d+e|0}u=e+u|0;if(h>>>0>u>>>0){continue}break}}D[c+36|0]=0;b=F[c+20>>2];e=0;a=F[c+32>>2]+7|0;e=a>>>0<7?1:e;j=(e&7)<<29|a>>>3;a=j+F[c+16>>2]|0;e=(e>>>3|0)+b|0;F[c+16>>2]=a;F[c+20>>2]=a>>>0>>0?e+1|0:e;a=1}b=F[k+36>>2];if(b){F[k+40>>2]=b;ra(b)}b=F[k+24>>2];if(b){F[k+28>>2]=b;ra(b)}b=F[k+8>>2];if(b){F[k+12>>2]=b;ra(b)}ea=k- -64|0;return a;case 1:break b;default:break a}}b=0;e=F[c+20>>2];k=F[c+12>>2];h=F[c+16>>2];g:{if((e|0)>=(k|0)&h>>>0>=I[c+8>>2]|(e|0)>(k|0)){break g}k=G[h+F[c>>2]|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;h:{switch(k-1|0){case 4:e=ea+-64|0;ea=e;F[e+56>>2]=0;F[e+48>>2]=0;F[e+52>>2]=0;F[e+40>>2]=0;F[e+44>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;i:{if(!ld(e+8|0,c)|(F[e+20>>2]?0:a)){break i}if(!Ge(e+8|0,c)){break i}if(!a){b=1;break i}h=F[e+36>>2];l=F[e+48>>2];f=F[e+24>>2];c=F[e+56>>2];while(1){j:{if(c>>>0>16383){break j}b=F[e+52>>2];while(1){if((b|0)<=0){break j}b=b-1|0;F[e+52>>2]=b;c=G[b+l|0]|c<<8;F[e+56>>2]=c;if(c>>>0<16384){continue}break}}b=c&4095;k=F[f+(b<<2)>>2];q=h+(k<<3)|0;c=(L(F[q>>2],c>>>12|0)+b|0)-F[q+4>>2]|0;F[e+56>>2]=c;F[(j<<2)+d>>2]=k;b=1;j=j+1|0;if((j|0)!=(a|0)){continue}break}}a=F[e+36>>2];if(a){F[e+40>>2]=a;ra(a)}a=F[e+24>>2];if(a){F[e+28>>2]=a;ra(a)}a=F[e+8>>2];if(a){F[e+12>>2]=a;ra(a)}ea=e- -64|0;break g;case 8:k=a;q=d;f=ea+-64|0;ea=f;F[f+48>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;a=H[c+38>>1];k:{l:{if(!a){break l}m:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break l}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break m}if(!hb(1,f+12|0,c)){break l}i=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;n:{if(a>>>0>>0){Aa(f,i-a|0);i=F[f+12>>2];break n}if(a>>>0<=i>>>0){break n}F[f+4>>2]=b+(i<<2)}d=1;if(!i){break k}o=F[c+8>>2];m=F[c+12>>2];p=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((m|0)<=(e|0)&o>>>0<=a>>>0|(e|0)>(m|0)){break k}d=F[c>>2];n=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;g=0;o:{p:{q:{r:{r=n&3;switch(r|0){case 0:break p;case 3:break r;default:break q}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break k}ua(p+(b<<2)|0,0,(n&252)+4|0);b=a;break o}while(1){if((e|0)>=(m|0)&h>>>0>=o>>>0|(e|0)>(m|0)){break l}i=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((r|0)!=(g|0)){continue}break}}F[p+(b<<2)>>2]=a}b=b+1|0;i=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;o=F[f>>2];a=F[f+16>>2];b=F[f+20>>2]-a|0;d=b>>2;s:{if(d>>>0<=8191){Aa(h,8192-d|0);break s}if((b|0)==32768){break s}F[f+20>>2]=a+32768}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;t:{if(d>>>0>>0){sb(a,i-d|0);b=F[a>>2];break t}if(d>>>0>i>>>0){F[f+32>>2]=(i<<3)+b}if(!i){break l}}g=0;d=0;while(1){e=o+(g<<2)|0;m=F[e>>2];n=(g<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=m;e=F[e>>2];d=e+a|0;if(d>>>0>8192){break l}u:{if(a>>>0>=d>>>0){break u}n=F[h>>2];m=0;p=e&7;if(p){while(1){F[n+(a<<2)>>2]=g;a=a+1|0;m=m+1|0;if((p|0)!=(m|0)){continue}break}}if(e-1>>>0<=6){break u}while(1){e=n+(a<<2)|0;F[e>>2]=g;F[e+28>>2]=g;F[e+24>>2]=g;F[e+20>>2]=g;F[e+16>>2]=g;F[e+12>>2]=g;F[e+8>>2]=g;F[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((g|0)!=(i|0)){continue}break}l=(d|0)==8192}d=l}v:{if(!d|(F[f+12>>2]?0:k)){break v}w:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;e=F[c+20>>2];b=F[c+16>>2];d=b+8|0;e=d>>>0<8?e+1|0:e;l=F[c+8>>2];h=d;if(l>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break v}a=b+F[c>>2]|0;b=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);g=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break w}if(!bb(1,f+56|0,c)){break v}h=F[c+16>>2];e=F[c+20>>2];l=F[c+8>>2];i=F[c+12>>2];b=F[f+56>>2];g=F[f+60>>2]}d=i-((h>>>0>l>>>0)+e|0)|0;if((d|0)==(g|0)&l-h>>>0>>0|d>>>0>>0){break v}e=e+g|0;a=b+h|0;e=a>>>0>>0?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;if((b|0)<=0){break v}d=h+F[c>>2]|0;F[f+40>>2]=d;a=b-1|0;c=d+a|0;e=G[c|0];x:{if(e>>>0<=63){F[f+44>>2]=a;b=G[c|0]&63;break x}y:{switch((e>>>6|0)-1|0){case 0:if(b>>>0<2){break v}a=b-2|0;F[f+44>>2]=a;b=(b+d|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break x;case 1:if(b>>>0<3){break v}a=b-3|0;F[f+44>>2]=a;b=(b+d|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break x;default:break y}}a=b-4|0;F[f+44>>2]=a;b=(b+d|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}c=b+32768|0;F[f+48>>2]=c;if(c>>>0>8388607){break v}if(!k){j=1;break v}e=F[f+28>>2];b=0;h=F[f+16>>2];while(1){z:{if(c>>>0>32767){break z}while(1){if((a|0)<=0){break z}a=a-1|0;F[f+44>>2]=a;c=G[a+d|0]|c<<8;F[f+48>>2]=c;if(c>>>0<32768){continue}break}}j=c&8191;l=F[h+(j<<2)>>2];g=e+(l<<3)|0;c=(L(F[g>>2],c>>>13|0)+j|0)-F[g+4>>2]|0;F[f+48>>2]=c;F[q+(b<<2)>>2]=l;j=1;b=b+1|0;if((k|0)!=(b|0)){continue}break}}a=F[f+28>>2];if(a){F[f+32>>2]=a;ra(a)}a=F[f+16>>2];if(a){F[f+20>>2]=a;ra(a)}a=F[f>>2];if(a){F[f+4>>2]=a;ra(a)}ea=f- -64|0;b=j;break g;case 9:k=a;q=d;f=ea+-64|0;ea=f;F[f+48>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;a=H[c+38>>1];A:{B:{if(!a){break B}C:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break B}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break C}if(!hb(1,f+12|0,c)){break B}i=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;D:{if(a>>>0>>0){Aa(f,i-a|0);i=F[f+12>>2];break D}if(a>>>0<=i>>>0){break D}F[f+4>>2]=b+(i<<2)}d=1;if(!i){break A}o=F[c+8>>2];m=F[c+12>>2];p=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((m|0)<=(e|0)&o>>>0<=a>>>0|(e|0)>(m|0)){break A}d=F[c>>2];n=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;g=0;E:{F:{G:{H:{r=n&3;switch(r|0){case 0:break F;case 3:break H;default:break G}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break A}ua(p+(b<<2)|0,0,(n&252)+4|0);b=a;break E}while(1){if((e|0)>=(m|0)&h>>>0>=o>>>0|(e|0)>(m|0)){break B}i=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((r|0)!=(g|0)){continue}break}}F[p+(b<<2)>>2]=a}b=b+1|0;i=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;o=F[f>>2];a=F[f+16>>2];b=F[f+20>>2]-a|0;d=b>>2;I:{if(d>>>0<=32767){Aa(h,32768-d|0);break I}if((b|0)==131072){break I}F[f+20>>2]=a+131072}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;J:{if(d>>>0>>0){sb(a,i-d|0);b=F[a>>2];break J}if(d>>>0>i>>>0){F[f+32>>2]=(i<<3)+b}if(!i){break B}}g=0;d=0;while(1){e=o+(g<<2)|0;m=F[e>>2];n=(g<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=m;e=F[e>>2];d=e+a|0;if(d>>>0>32768){break B}K:{if(a>>>0>=d>>>0){break K}n=F[h>>2];m=0;p=e&7;if(p){while(1){F[n+(a<<2)>>2]=g;a=a+1|0;m=m+1|0;if((p|0)!=(m|0)){continue}break}}if(e-1>>>0<=6){break K}while(1){e=n+(a<<2)|0;F[e>>2]=g;F[e+28>>2]=g;F[e+24>>2]=g;F[e+20>>2]=g;F[e+16>>2]=g;F[e+12>>2]=g;F[e+8>>2]=g;F[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((g|0)!=(i|0)){continue}break}l=(d|0)==32768}d=l}L:{if(!d|(F[f+12>>2]?0:k)){break L}M:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;e=F[c+20>>2];b=F[c+16>>2];d=b+8|0;e=d>>>0<8?e+1|0:e;l=F[c+8>>2];h=d;if(l>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break L}a=b+F[c>>2]|0;b=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);g=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break M}if(!bb(1,f+56|0,c)){break L}h=F[c+16>>2];e=F[c+20>>2];l=F[c+8>>2];i=F[c+12>>2];b=F[f+56>>2];g=F[f+60>>2]}d=i-((h>>>0>l>>>0)+e|0)|0;if((d|0)==(g|0)&l-h>>>0>>0|d>>>0>>0){break L}d=e+g|0;a=b+h|0;d=a>>>0>>0?d+1|0:d;F[c+16>>2]=a;F[c+20>>2]=d;if((b|0)<=0){break L}d=h+F[c>>2]|0;F[f+40>>2]=d;a=b-1|0;c=d+a|0;e=G[c|0];N:{if(e>>>0<=63){F[f+44>>2]=a;b=G[c|0]&63;break N}O:{switch((e>>>6|0)-1|0){case 0:if(b>>>0<2){break L}a=b-2|0;F[f+44>>2]=a;b=(b+d|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break N;case 1:if(b>>>0<3){break L}a=b-3|0;F[f+44>>2]=a;b=(b+d|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break N;default:break O}}a=b-4|0;F[f+44>>2]=a;b=(b+d|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}c=b+131072|0;F[f+48>>2]=c;if(c>>>0>33554431){break L}if(!k){j=1;break L}e=F[f+28>>2];b=0;h=F[f+16>>2];while(1){P:{if(c>>>0>131071){break P}while(1){if((a|0)<=0){break P}a=a-1|0;F[f+44>>2]=a;c=G[a+d|0]|c<<8;F[f+48>>2]=c;if(c>>>0<131072){continue}break}}j=c&32767;l=F[h+(j<<2)>>2];g=e+(l<<3)|0;c=(L(F[g>>2],c>>>15|0)+j|0)-F[g+4>>2]|0;F[f+48>>2]=c;F[q+(b<<2)>>2]=l;j=1;b=b+1|0;if((k|0)!=(b|0)){continue}break}}a=F[f+28>>2];if(a){F[f+32>>2]=a;ra(a)}a=F[f+16>>2];if(a){F[f+20>>2]=a;ra(a)}a=F[f>>2];if(a){F[f+4>>2]=a;ra(a)}ea=f- -64|0;b=j;break g;case 10:k=a;q=d;f=ea+-64|0;ea=f;F[f+48>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;a=H[c+38>>1];Q:{R:{if(!a){break R}S:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break R}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break S}if(!hb(1,f+12|0,c)){break R}i=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;T:{if(a>>>0>>0){Aa(f,i-a|0);i=F[f+12>>2];break T}if(a>>>0<=i>>>0){break T}F[f+4>>2]=b+(i<<2)}d=1;if(!i){break Q}o=F[c+8>>2];m=F[c+12>>2];p=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((m|0)<=(e|0)&o>>>0<=a>>>0|(e|0)>(m|0)){break Q}r=F[c>>2];n=G[r+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;g=0;U:{V:{W:{X:{s=n&3;switch(s|0){case 0:break V;case 3:break X;default:break W}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break Q}ua(p+(b<<2)|0,0,(n&252)+4|0);b=a;break U}while(1){if((e|0)>=(m|0)&h>>>0>=o>>>0|(e|0)>(m|0)){break R}i=G[h+r|0];d=e;e=h+1|0;d=e?d:d+1|0;h=e;F[c+16>>2]=e;e=d;F[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((s|0)!=(g|0)){continue}break}}F[p+(b<<2)>>2]=a}b=b+1|0;i=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;o=F[f>>2];a=F[f+16>>2];b=F[f+20>>2]-a|0;d=b>>2;Y:{if(d>>>0<=65535){Aa(h,65536-d|0);break Y}if((b|0)==262144){break Y}F[f+20>>2]=a+262144}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;Z:{if(d>>>0>>0){sb(a,i-d|0);b=F[a>>2];break Z}if(d>>>0>i>>>0){F[f+32>>2]=(i<<3)+b}if(!i){break R}}g=0;d=0;while(1){e=o+(g<<2)|0;m=F[e>>2];n=(g<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=m;e=F[e>>2];d=e+a|0;if(d>>>0>65536){break R}_:{if(a>>>0>=d>>>0){break _}n=F[h>>2];m=0;p=e&7;if(p){while(1){F[n+(a<<2)>>2]=g;a=a+1|0;m=m+1|0;if((p|0)!=(m|0)){continue}break}}if(e-1>>>0<=6){break _}while(1){e=n+(a<<2)|0;F[e>>2]=g;F[e+28>>2]=g;F[e+24>>2]=g;F[e+20>>2]=g;F[e+16>>2]=g;F[e+12>>2]=g;F[e+8>>2]=g;F[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((g|0)!=(i|0)){continue}break}l=(d|0)==65536}d=l}$:{if(!d|(F[f+12>>2]?0:k)){break $}aa:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;e=F[c+20>>2];b=F[c+16>>2];d=b+8|0;e=d>>>0<8?e+1|0:e;l=F[c+8>>2];h=d;if(l>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break $}a=b+F[c>>2]|0;b=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);g=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break aa}if(!bb(1,f+56|0,c)){break $}h=F[c+16>>2];e=F[c+20>>2];l=F[c+8>>2];i=F[c+12>>2];b=F[f+56>>2];g=F[f+60>>2]}d=i-((h>>>0>l>>>0)+e|0)|0;if((d|0)==(g|0)&l-h>>>0>>0|d>>>0>>0){break $}e=e+g|0;a=b+h|0;e=a>>>0>>0?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;if((b|0)<=0){break $}d=h+F[c>>2]|0;F[f+40>>2]=d;a=b-1|0;c=d+a|0;e=G[c|0];ba:{if(e>>>0<=63){F[f+44>>2]=a;b=G[c|0]&63;break ba}ca:{switch((e>>>6|0)-1|0){case 0:if(b>>>0<2){break $}a=b-2|0;F[f+44>>2]=a;b=(b+d|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break ba;case 1:if(b>>>0<3){break $}a=b-3|0;F[f+44>>2]=a;b=(b+d|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break ba;default:break ca}}a=b-4|0;F[f+44>>2]=a;b=(b+d|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}c=b+262144|0;F[f+48>>2]=c;if(c>>>0>67108863){break $}if(!k){j=1;break $}e=F[f+28>>2];b=0;h=F[f+16>>2];while(1){da:{if(c>>>0>262143){break da}while(1){if((a|0)<=0){break da}a=a-1|0;F[f+44>>2]=a;c=G[a+d|0]|c<<8;F[f+48>>2]=c;if(c>>>0<262144){continue}break}}j=c&65535;l=F[h+(j<<2)>>2];g=e+(l<<3)|0;c=(L(F[g>>2],c>>>16|0)+j|0)-F[g+4>>2]|0;F[f+48>>2]=c;F[q+(b<<2)>>2]=l;j=1;b=b+1|0;if((k|0)!=(b|0)){continue}break}}a=F[f+28>>2];if(a){F[f+32>>2]=a;ra(a)}a=F[f+16>>2];if(a){F[f+20>>2]=a;ra(a)}a=F[f>>2];if(a){F[f+4>>2]=a;ra(a)}ea=f- -64|0;b=j;break g;case 11:k=a;q=d;f=ea+-64|0;ea=f;F[f+48>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;a=H[c+38>>1];ea:{fa:{if(!a){break fa}ga:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break fa}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break ga}if(!hb(1,f+12|0,c)){break fa}i=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;ha:{if(a>>>0>>0){Aa(f,i-a|0);i=F[f+12>>2];break ha}if(a>>>0<=i>>>0){break ha}F[f+4>>2]=b+(i<<2)}d=1;if(!i){break ea}o=F[c+8>>2];m=F[c+12>>2];p=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((m|0)<=(e|0)&o>>>0<=a>>>0|(e|0)>(m|0)){break ea}d=F[c>>2];n=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;g=0;ia:{ja:{ka:{la:{r=n&3;switch(r|0){case 0:break ja;case 3:break la;default:break ka}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break ea}ua(p+(b<<2)|0,0,(n&252)+4|0);b=a;break ia}while(1){if((e|0)>=(m|0)&h>>>0>=o>>>0|(e|0)>(m|0)){break fa}i=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((r|0)!=(g|0)){continue}break}}F[p+(b<<2)>>2]=a}b=b+1|0;i=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;o=F[f>>2];a=F[f+16>>2];b=F[f+20>>2]-a|0;d=b>>2;ma:{if(d>>>0<=262143){Aa(h,262144-d|0);break ma}if((b|0)==1048576){break ma}F[f+20>>2]=a- -1048576}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;na:{if(d>>>0>>0){sb(a,i-d|0);b=F[a>>2];break na}if(d>>>0>i>>>0){F[f+32>>2]=(i<<3)+b}if(!i){break fa}}g=0;d=0;while(1){e=o+(g<<2)|0;m=F[e>>2];n=(g<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=m;e=F[e>>2];d=e+a|0;if(d>>>0>262144){break fa}oa:{if(a>>>0>=d>>>0){break oa}n=F[h>>2];m=0;p=e&7;if(p){while(1){F[n+(a<<2)>>2]=g;a=a+1|0;m=m+1|0;if((p|0)!=(m|0)){continue}break}}if(e-1>>>0<=6){break oa}while(1){e=n+(a<<2)|0;F[e>>2]=g;F[e+28>>2]=g;F[e+24>>2]=g;F[e+20>>2]=g;F[e+16>>2]=g;F[e+12>>2]=g;F[e+8>>2]=g;F[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((g|0)!=(i|0)){continue}break}l=(d|0)==262144}d=l}pa:{if(!d|(F[f+12>>2]?0:k)){break pa}qa:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;e=F[c+20>>2];b=F[c+16>>2];d=b+8|0;e=d>>>0<8?e+1|0:e;l=F[c+8>>2];h=d;if(l>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break pa}a=b+F[c>>2]|0;b=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);g=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break qa}if(!bb(1,f+56|0,c)){break pa}h=F[c+16>>2];e=F[c+20>>2];l=F[c+8>>2];i=F[c+12>>2];b=F[f+56>>2];g=F[f+60>>2]}d=i-((h>>>0>l>>>0)+e|0)|0;if((d|0)==(g|0)&l-h>>>0>>0|d>>>0>>0){break pa}e=e+g|0;a=b+h|0;e=a>>>0>>0?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;if((b|0)<=0){break pa}d=h+F[c>>2]|0;F[f+40>>2]=d;a=b-1|0;c=d+a|0;e=G[c|0];ra:{if(e>>>0<=63){F[f+44>>2]=a;b=G[c|0]&63;break ra}sa:{switch((e>>>6|0)-1|0){case 0:if(b>>>0<2){break pa}a=b-2|0;F[f+44>>2]=a;b=(b+d|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break ra;case 1:if(b>>>0<3){break pa}a=b-3|0;F[f+44>>2]=a;b=(b+d|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break ra;default:break sa}}a=b-4|0;F[f+44>>2]=a;b=(b+d|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}c=b- -1048576|0;F[f+48>>2]=c;if(c>>>0>268435455){break pa}if(!k){j=1;break pa}e=F[f+28>>2];b=0;h=F[f+16>>2];while(1){ta:{if(c>>>0>1048575){break ta}while(1){if((a|0)<=0){break ta}a=a-1|0;F[f+44>>2]=a;c=G[a+d|0]|c<<8;F[f+48>>2]=c;if(c>>>0<1048576){continue}break}}j=c&262143;l=F[h+(j<<2)>>2];g=e+(l<<3)|0;c=(L(F[g>>2],c>>>18|0)+j|0)-F[g+4>>2]|0;F[f+48>>2]=c;F[q+(b<<2)>>2]=l;j=1;b=b+1|0;if((k|0)!=(b|0)){continue}break}}a=F[f+28>>2];if(a){F[f+32>>2]=a;ra(a)}a=F[f+16>>2];if(a){F[f+20>>2]=a;ra(a)}a=F[f>>2];if(a){F[f+4>>2]=a;ra(a)}ea=f- -64|0;b=j;break g;case 12:k=a;q=d;f=ea+-64|0;ea=f;F[f+48>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;a=H[c+38>>1];ua:{va:{if(!a){break va}wa:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break va}a=b+F[c>>2]|0;i=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=i;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break wa}if(!hb(1,f+12|0,c)){break va}i=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;xa:{if(a>>>0>>0){Aa(f,i-a|0);i=F[f+12>>2];break xa}if(a>>>0<=i>>>0){break xa}F[f+4>>2]=b+(i<<2)}d=1;if(!i){break ua}o=F[c+8>>2];m=F[c+12>>2];p=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((m|0)<=(e|0)&o>>>0<=a>>>0|(e|0)>(m|0)){break ua}d=F[c>>2];n=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=n>>>2|0;g=0;ya:{za:{Aa:{Ba:{r=n&3;switch(r|0){case 0:break za;case 3:break Ba;default:break Aa}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break ua}ua(p+(b<<2)|0,0,(n&252)+4|0);b=a;break ya}while(1){if((e|0)>=(m|0)&h>>>0>=o>>>0|(e|0)>(m|0)){break va}i=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((r|0)!=(g|0)){continue}break}}F[p+(b<<2)>>2]=a}b=b+1|0;i=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;o=F[f>>2];a=F[f+16>>2];b=F[f+20>>2]-a|0;d=b>>2;Ca:{if(d>>>0<=524287){Aa(h,524288-d|0);break Ca}if((b|0)==2097152){break Ca}F[f+20>>2]=a+2097152}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;Da:{if(d>>>0>>0){sb(a,i-d|0);b=F[a>>2];break Da}if(d>>>0>i>>>0){F[f+32>>2]=(i<<3)+b}if(!i){break va}}g=0;d=0;while(1){e=o+(g<<2)|0;m=F[e>>2];n=(g<<3)+b|0;a=d;F[n+4>>2]=a;F[n>>2]=m;e=F[e>>2];d=e+a|0;if(d>>>0>524288){break va}Ea:{if(a>>>0>=d>>>0){break Ea}n=F[h>>2];m=0;p=e&7;if(p){while(1){F[n+(a<<2)>>2]=g;a=a+1|0;m=m+1|0;if((p|0)!=(m|0)){continue}break}}if(e-1>>>0<=6){break Ea}while(1){e=n+(a<<2)|0;F[e>>2]=g;F[e+28>>2]=g;F[e+24>>2]=g;F[e+20>>2]=g;F[e+16>>2]=g;F[e+12>>2]=g;F[e+8>>2]=g;F[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((g|0)!=(i|0)){continue}break}l=(d|0)==524288}d=l}Fa:{if(!d|(F[f+12>>2]?0:k)){break Fa}Ga:{if(H[c+38>>1]<=511){a=F[c+12>>2];i=a;e=F[c+20>>2];b=F[c+16>>2];d=b+8|0;e=d>>>0<8?e+1|0:e;l=F[c+8>>2];h=d;if(l>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break Fa}a=b+F[c>>2]|0;b=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);g=G[a+4|0]|G[a+5|0]<<8|(G[a+6|0]<<16|G[a+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break Ga}if(!bb(1,f+56|0,c)){break Fa}h=F[c+16>>2];e=F[c+20>>2];l=F[c+8>>2];i=F[c+12>>2];b=F[f+56>>2];g=F[f+60>>2]}d=i-((h>>>0>l>>>0)+e|0)|0;if((d|0)==(g|0)&l-h>>>0>>0|d>>>0>>0){break Fa}d=e+g|0;a=b+h|0;d=a>>>0>>0?d+1|0:d;F[c+16>>2]=a;F[c+20>>2]=d;if((b|0)<=0){break Fa}d=h+F[c>>2]|0;F[f+40>>2]=d;a=b-1|0;c=d+a|0;e=G[c|0];Ha:{if(e>>>0<=63){F[f+44>>2]=a;b=G[c|0]&63;break Ha}Ia:{switch((e>>>6|0)-1|0){case 0:if(b>>>0<2){break Fa}a=b-2|0;F[f+44>>2]=a;b=(b+d|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break Ha;case 1:if(b>>>0<3){break Fa}a=b-3|0;F[f+44>>2]=a;b=(b+d|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break Ha;default:break Ia}}a=b-4|0;F[f+44>>2]=a;b=(b+d|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}c=b+2097152|0;F[f+48>>2]=c;if(c>>>0>536870911){break Fa}if(!k){j=1;break Fa}e=F[f+28>>2];b=0;h=F[f+16>>2];while(1){Ja:{if(c>>>0>2097151){break Ja}while(1){if((a|0)<=0){break Ja}a=a-1|0;F[f+44>>2]=a;c=G[a+d|0]|c<<8;F[f+48>>2]=c;if(c>>>0<2097152){continue}break}}j=c&524287;l=F[h+(j<<2)>>2];g=e+(l<<3)|0;c=(L(F[g>>2],c>>>19|0)+j|0)-F[g+4>>2]|0;F[f+48>>2]=c;F[q+(b<<2)>>2]=l;j=1;b=b+1|0;if((k|0)!=(b|0)){continue}break}}a=F[f+28>>2];if(a){F[f+32>>2]=a;ra(a)}a=F[f+16>>2];if(a){F[f+20>>2]=a;ra(a)}a=F[f>>2];if(a){F[f+4>>2]=a;ra(a)}ea=f- -64|0;b=j;break g;case 17:b=Ee(a,c,d);break g;case 0:case 1:case 2:case 3:case 5:case 6:case 7:j=ea+-64|0;ea=j;F[j+48>>2]=0;F[j+40>>2]=0;F[j+44>>2]=0;F[j+32>>2]=0;F[j+36>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;F[j>>2]=0;F[j+4>>2]=0;Ka:{if(!ld(j,c)|(F[j+12>>2]?0:a)){break Ka}La:{if(H[c+38>>1]<=511){b=F[c+12>>2];i=b;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;l=F[c+8>>2];if(l>>>0>>0&(b|0)<=(e|0)|(b|0)<(e|0)){break Ka}k=k+F[c>>2]|0;b=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);g=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break La}if(!bb(1,j+56|0,c)){break Ka}h=F[c+16>>2];e=F[c+20>>2];l=F[c+8>>2];i=F[c+12>>2];b=F[j+56>>2];g=F[j+60>>2]}k=l-h|0;l=i-((h>>>0>l>>>0)+e|0)|0;if((l|0)==(g|0)&b>>>0>k>>>0|g>>>0>l>>>0){break Ka}e=e+g|0;l=b+h|0;e=l>>>0>>0?e+1|0:e;F[c+16>>2]=l;F[c+20>>2]=e;if((b|0)<=0){break Ka}e=h+F[c>>2]|0;F[j+40>>2]=e;c=b-1|0;h=e+c|0;l=G[h|0];Ma:{if(l>>>0<=63){F[j+44>>2]=c;b=G[h|0]&63;break Ma}Na:{switch((l>>>6|0)-1|0){case 0:if(b>>>0<2){break Ka}c=b-2|0;F[j+44>>2]=c;b=(b+e|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break Ma;case 1:if(b>>>0<3){break Ka}c=b-3|0;F[j+44>>2]=c;b=(b+e|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break Ma;default:break Na}}c=b-4|0;F[j+44>>2]=c;b=(b+e|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}b=b+16384|0;F[j+48>>2]=b;if(b>>>0>4194303){break Ka}if(!a){f=1;break Ka}h=F[j+28>>2];g=0;l=F[j+16>>2];while(1){Oa:{if(b>>>0>16383){break Oa}while(1){if((c|0)<=0){break Oa}c=c-1|0;F[j+44>>2]=c;b=G[c+e|0]|b<<8;F[j+48>>2]=b;if(b>>>0<16384){continue}break}}f=b&4095;k=F[l+(f<<2)>>2];q=h+(k<<3)|0;b=(L(F[q>>2],b>>>12|0)+f|0)-F[q+4>>2]|0;F[j+48>>2]=b;F[(g<<2)+d>>2]=k;f=1;g=g+1|0;if((g|0)!=(a|0)){continue}break}}a=F[j+28>>2];if(a){F[j+32>>2]=a;ra(a)}a=F[j+16>>2];if(a){F[j+20>>2]=a;ra(a)}a=F[j>>2];if(a){F[j+4>>2]=a;ra(a)}ea=j- -64|0;b=f;break g;case 13:case 14:case 15:case 16:break h;default:break g}}b=Ee(a,c,d)}j=b}return j}function ai(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0;l=ea+-64|0;ea=l;F[a+132>>2]=0;if(F[a+148>>2]){b=F[a+144>>2];if(b){while(1){c=F[b>>2];ra(b);b=c;if(b){continue}break}}b=0;F[a+144>>2]=0;c=F[a+140>>2];a:{if(!c){break a}if(c-1>>>0>=3){k=c&-4;while(1){f=b<<2;F[f+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(f|4)>>2]=0;F[F[a+136>>2]+(f|8)>>2]=0;F[F[a+136>>2]+(f|12)>>2]=0;b=b+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}c=c&3;if(!c){break a}while(1){F[F[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;s=s+1|0;if((c|0)!=(s|0)){continue}break}}F[a+148>>2]=0}b:{c:{d:{b=F[a+4>>2];s=G[b+36|0];g=s<<8|G[b+37|0];e:{if(g>>>0>513){break e}c=F[b+32>>2];if(g>>>0<=511){g=F[c+20>>2];f=F[c+16>>2];k=f+4|0;g=k>>>0<4?g+1|0:g;e=F[c+12>>2];if((e|0)<=(g|0)&k>>>0>I[c+8>>2]|(e|0)<(g|0)){break d}f=f+F[c>>2]|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[c+16>>2]=k;F[c+20>>2]=g;F[a+132>>2]=f;break e}if(!Fa(1,l,c)){break d}b=F[a+4>>2];s=G[b+36|0];F[a+132>>2]=F[l>>2]}g=F[b+32>>2];f:{g:{h:{if((s&255)>>>0<=1){s=0;c=F[g+20>>2];f=F[g+16>>2];k=f+4|0;c=k>>>0<4?c+1|0:c;e=F[g+12>>2];if((e|0)<=(c|0)&k>>>0>I[g+8>>2]|(c|0)>(e|0)){break c}f=f+F[g>>2]|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[l+60>>2]=f;F[g+16>>2]=k;F[g+20>>2]=c;F[a+156>>2]=f;f=a+156|0;break h}s=0;if(!Fa(1,l+60|0,g)){break c}b=F[a+4>>2];c=G[b+36|0];F[a+156>>2]=F[l+60>>2];f=a+156|0;if(c>>>0>1){break g}}c=F[b+32>>2];b=F[c+8>>2];g=F[c+12>>2];j=b;b=F[c+20>>2];k=F[c+16>>2];e=k+4|0;b=e>>>0<4?b+1|0:b;if(j>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break c}g=k+F[c>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[l+56>>2]=g;F[c+16>>2]=e;F[c+20>>2]=b;break f}if(!Fa(1,l+56|0,F[b+32>>2])){break c}g=F[l+56>>2]}if(g>>>0>1431655765|I[f>>2]>L(g,3)>>>0){break c}m=F[a+4>>2];k=F[m+32>>2];b=k;n=F[b+8>>2];f=F[b+12>>2];c=F[b+20>>2];e=F[b+16>>2];if((f|0)<=(c|0)&n>>>0<=e>>>0|(c|0)>(f|0)){break c}A=F[k>>2];j=G[A+e|0];b=c;i=e+1|0;b=i?b:b+1|0;F[k+16>>2]=i;F[k+20>>2]=b;i:{if(G[m+36|0]<=1){b=f;f=e+5|0;c=f>>>0<5?c+1|0:c;e=f;if((b|0)<=(c|0)&e>>>0>n>>>0|(b|0)<(c|0)){break c}b=i+A|0;f=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[l+52>>2]=f;F[k+16>>2]=e;F[k+20>>2]=c;break i}if(!Fa(1,l+52|0,k)){break c}f=F[l+52>>2]}if(((f>>>0)/3|0)+f>>>0>>0|f>>>0>g>>>0){break c}b=F[a+4>>2];k=F[b+32>>2];j:{if(G[b+36|0]<=1){b=F[k+20>>2];c=F[k+16>>2];e=c+4|0;b=e>>>0<4?b+1|0:b;m=F[k+12>>2];if((m|0)<=(b|0)&e>>>0>I[k+8>>2]|(b|0)>(m|0)){break c}c=c+F[k>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[l+48>>2]=c;F[k+16>>2]=e;F[k+20>>2]=b;break j}if(!Fa(1,l+48|0,k)){break c}c=F[l+48>>2]}if(c>>>0>f>>>0){break c}F[a+28>>2]=F[a+24>>2];k=sa(88);Lc(k);b=F[a+8>>2];F[a+8>>2]=k;if(b){ab(b);if(!F[a+8>>2]){break c}}F[a+164>>2]=F[a+160>>2];Ib(a+160|0,g);F[a+176>>2]=F[a+172>>2];Ib(a+172|0,g);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];K=a+216|0;fd(K);ed(K,j);if(!Kc(F[a+8>>2],g,F[a+156>>2]+c|0)){break c}b=F[a+156>>2];D[l|0]=1;Na(a+120|0,b+c|0,l);b=F[a+4>>2];g=H[b+36>>1];g=(g<<8|g>>>8)&65535;k:{if(g>>>0<=513){k=F[b+32>>2];l:{if(g>>>0<=511){g=F[k+20>>2];e=F[k+16>>2];b=e+4|0;g=b>>>0<4?g+1|0:g;m=b;b=g;n=F[k+12>>2];if(m>>>0>I[k+8>>2]&(b|0)>=(n|0)|(b|0)>(n|0)){break c}g=e+F[k>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[k+16>>2]=m;F[k+20>>2]=b;break l}if(!Fa(1,l+44|0,k)){break c}g=F[l+44>>2]}if(!g){break c}b=F[F[a+4>>2]+32>>2];k=F[b+8>>2];e=F[b+16>>2];m=k-e|0;b=F[b+12>>2]-(F[b+20>>2]+(e>>>0>k>>>0)|0)|0;if((b|0)<=0&g>>>0>m>>>0|(b|0)<0){break c}E[l+38>>1]=0;F[l>>2]=0;F[l+8>>2]=0;F[l+12>>2]=0;F[l+16>>2]=0;F[l+20>>2]=0;F[l+24>>2]=0;F[l+28>>2]=0;D[l+29|0]=0;D[l+30|0]=0;D[l+31|0]=0;D[l+32|0]=0;D[l+33|0]=0;D[l+34|0]=0;D[l+35|0]=0;D[l+36|0]=0;k=F[F[a+4>>2]+32>>2];b=F[k+16>>2];e=(b+F[k>>2]|0)+g|0;m=F[k+8>>2];b=(m-b|0)-g|0;E[l+38>>1]=H[k+38>>1];F[l>>2]=e;F[l+16>>2]=0;F[l+20>>2]=0;F[l+8>>2]=b;F[l+12>>2]=0;A=Hb(a,l);if((A|0)==-1){break c}M=A>>31;break k}A=-1;M=-1;if((Hb(a,F[b+32>>2])|0)==-1){break c}}e=a+232|0;dd(e,a);P=a,Q=ga[F[F[a>>2]+36>>2]](a)|0,F[P+380>>2]=Q;F[a+372>>2]=j;F[a+384>>2]=F[a+156>>2]+c;E[l+38>>1]=0;F[l>>2]=0;F[l+8>>2]=0;F[l+12>>2]=0;F[l+16>>2]=0;F[l+20>>2]=0;F[l+24>>2]=0;F[l+28>>2]=0;D[l+29|0]=0;D[l+30|0]=0;D[l+31|0]=0;D[l+32|0]=0;D[l+33|0]=0;D[l+34|0]=0;D[l+35|0]=0;D[l+36|0]=0;g=0;j=ea-16|0;ea=j;m:{n:{b=F[e+144>>2];b=H[(ga[F[F[b>>2]+32>>2]](b)|0)+36>>1];if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[e+4>>2];F[e+40>>2]=F[e>>2];F[e+44>>2]=b;b=F[e+36>>2];F[e+72>>2]=F[e+32>>2];F[e+76>>2]=b;c=F[e+28>>2];b=e- -64|0;F[b>>2]=F[e+24>>2];F[b+4>>2]=c;b=F[e+20>>2];F[e+56>>2]=F[e+16>>2];F[e+60>>2]=b;b=F[e+12>>2];F[e+48>>2]=F[e+8>>2];F[e+52>>2]=b;if(!Db(e+40|0,1,j+8|0)){break n}b=F[e+44>>2];F[e>>2]=F[e+40>>2];F[e+4>>2]=b;b=F[e+76>>2];F[e+32>>2]=F[e+72>>2];F[e+36>>2]=b;b=F[e+68>>2];F[e+24>>2]=F[e+64>>2];F[e+28>>2]=b;c=F[e+60>>2];k=c;b=F[e+56>>2];F[e+16>>2]=b;F[e+20>>2]=c;m=F[e+52>>2];c=F[e+48>>2];F[e+8>>2]=c;F[e+12>>2]=m;n=c-b|0;i=F[j+12>>2];c=m-((b>>>0>c>>>0)+k|0)|0;m=F[j+8>>2];if((i|0)==(c|0)&n>>>0>>0|c>>>0>>0){break n}c=b;m=b+m|0;b=i+k|0;F[e+16>>2]=m;F[e+20>>2]=c>>>0>m>>>0?b+1|0:b}o:{if(H[e+38>>1]<=513){b=F[e+4>>2];F[e+96>>2]=F[e>>2];F[e+100>>2]=b;b=F[e+36>>2];F[e+128>>2]=F[e+32>>2];F[e+132>>2]=b;b=F[e+28>>2];F[e+120>>2]=F[e+24>>2];F[e+124>>2]=b;b=F[e+20>>2];F[e+112>>2]=F[e+16>>2];F[e+116>>2]=b;b=F[e+12>>2];F[e+104>>2]=F[e+8>>2];F[e+108>>2]=b;if(!Db(e+96|0,1,j+8|0)){break n}b=F[e+100>>2];F[e>>2]=F[e+96>>2];F[e+4>>2]=b;b=F[e+132>>2];F[e+32>>2]=F[e+128>>2];F[e+36>>2]=b;b=F[e+124>>2];F[e+24>>2]=F[e+120>>2];F[e+28>>2]=b;c=F[e+116>>2];k=c;b=F[e+112>>2];F[e+16>>2]=b;F[e+20>>2]=c;m=F[e+108>>2];c=F[e+104>>2];F[e+8>>2]=c;F[e+12>>2]=m;n=c-b|0;i=F[j+12>>2];c=m-((b>>>0>c>>>0)+k|0)|0;m=F[j+8>>2];if((i|0)==(c|0)&n>>>0>>0|c>>>0>>0){break n}c=i+k|0;m=b+m|0;c=m>>>0>>0?c+1|0:c;F[e+16>>2]=m;F[e+20>>2]=c;break o}if(!xa(e+80|0,e)){break m}}if(!ze(e)){break m}b=F[e+4>>2];F[l>>2]=F[e>>2];F[l+4>>2]=b;b=F[e+36>>2];F[l+32>>2]=F[e+32>>2];F[l+36>>2]=b;b=F[e+28>>2];F[l+24>>2]=F[e+24>>2];F[l+28>>2]=b;b=F[e+20>>2];F[l+16>>2]=F[e+16>>2];F[l+20>>2]=b;b=F[e+12>>2];F[l+8>>2]=F[e+8>>2];F[l+12>>2]=b;b=F[e+144>>2];b=H[(ga[F[F[b>>2]+32>>2]](b)|0)+36>>1];p:{if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[e+144>>2];q:{if(G[(ga[F[F[b>>2]+32>>2]](b)|0)+36|0]<=1){b=F[l+20>>2];c=F[l+16>>2];k=c+4|0;b=k>>>0<4?b+1|0:b;m=F[l+12>>2];if((m|0)<=(b|0)&k>>>0>I[l+8>>2]|(b|0)>(m|0)){break m}c=c+F[l>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[l+16>>2]=k;F[l+20>>2]=b;break q}if(!Fa(1,j+8|0,l)){break m}c=F[j+8>>2]}b=F[e+152>>2];if(c>>>0>=b>>>0){break m}c=F[l+20>>2];m=F[l+12>>2];k=F[l+16>>2];if((c|0)>=(m|0)&k>>>0>=I[l+8>>2]|(c|0)>(m|0)){break m}m=G[k+F[l>>2]|0];k=k+1|0;c=k?c:c+1|0;F[l+16>>2]=k;F[l+20>>2]=c;if(m){break m}F[e+176>>2]=2;F[e+180>>2]=7;break p}F[e+176>>2]=2;F[e+180>>2]=7;b=F[e+152>>2]}if((b|0)<0){break m}F[j+8>>2]=0;g=2;m=F[e+156>>2];k=F[e+160>>2]-m>>2;r:{if(k>>>0>>0){Ia(e+156|0,b-k|0,j+8|0);g=F[e+176>>2];c=F[e+180>>2];break r}c=7;if(b>>>0>=k>>>0){break r}F[e+160>>2]=m+(b<<2)}k=e+184|0;c=(c-g|0)+1|0;b=F[e+188>>2];m=F[e+184>>2];g=(b-m|0)/12|0;s:{if(c>>>0>g>>>0){c=c-g|0;n=F[k+8>>2];b=F[k+4>>2];t:{if(c>>>0<=(n-b|0)/12>>>0){if(c){g=b;b=L((L(c,12)-12>>>0)/12|0,12)+12|0;b=ua(g,0,b)+b|0}F[k+4>>2]=b;break t}u:{v:{w:{m=F[k>>2];i=(b-m|0)/12|0;g=i+c|0;if(g>>>0<357913942){n=(n-m|0)/12|0;h=n<<1;n=n>>>0<178956970?g>>>0>h>>>0?g:h:357913941;if(n){if(n>>>0>=357913942){break w}d=sa(L(n,12))}g=L(i,12)+d|0;i=L((L(c,12)-12>>>0)/12|0,12)+12|0;c=ua(g,0,i);i=c+i|0;d=L(n,12)+d|0;if((b|0)==(m|0)){break v}while(1){g=g-12|0;b=b-12|0;F[g>>2]=F[b>>2];F[g+4>>2]=F[b+4>>2];F[g+8>>2]=F[b+8>>2];F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;if((b|0)!=(m|0)){continue}break}F[k+8>>2]=d;c=F[k+4>>2];F[k+4>>2]=i;b=F[k>>2];F[k>>2]=g;if((b|0)==(c|0)){break u}while(1){g=c-12|0;d=F[g>>2];if(d){F[c-8>>2]=d;ra(d)}c=g;if((c|0)!=(b|0)){continue}break}break u}break b}wa(1336);V()}F[k+8>>2]=d;F[k+4>>2]=i;F[k>>2]=c}if(b){ra(b)}}c=F[e+188>>2];break s}if(c>>>0>=g>>>0){c=b;break s}c=m+L(c,12)|0;if((c|0)!=(b|0)){while(1){g=b-12|0;d=F[g>>2];if(d){F[b-8>>2]=d;ra(d)}b=g;if((c|0)!=(b|0)){continue}break}}F[e+188>>2]=c}m=e+196|0;g=F[e+184>>2];b=(c-g|0)/12|0;n=F[e+196>>2];d=F[e+200>>2]-n>>2;x:{if(b>>>0>d>>>0){Aa(m,b-d|0);g=F[e+184>>2];c=F[e+188>>2];break x}if(b>>>0>=d>>>0){break x}F[e+200>>2]=n+(b<<2)}if((c|0)==(g|0)){g=1;break m}b=0;while(1){if(!Fa(1,j+8|0,l)){break n}g=F[j+8>>2];c=F[e+148>>2];if(g>>>0>(F[c+4>>2]-F[c>>2]>>2>>>0)/3>>>0){break n}if(g){c=F[k>>2];h=L(b,12);d=c+h|0;n=F[d>>2];i=F[d+4>>2]-n>>2;y:{if(i>>>0>>0){Aa(d,g-i|0);c=F[k>>2];break y}if(i>>>0<=g>>>0){break y}F[d+4>>2]=n+(g<<2)}md(g,1,l,F[c+h>>2]);F[F[m>>2]+(b<<2)>>2]=g}g=1;b=b+1|0;if(b>>>0<(F[e+188>>2]-F[e+184>>2]|0)/12>>>0){continue}break}break m}g=0}ea=j+16|0;z:{if(!g){break z}b=0;j=0;c=0;k=0;g=0;m=0;r=ea-96|0;ea=r;F[r+72>>2]=0;F[r+64>>2]=0;F[r+68>>2]=0;F[r+48>>2]=0;F[r+52>>2]=0;F[r+40>>2]=0;F[r+44>>2]=0;F[r+56>>2]=1065353216;F[r+32>>2]=0;F[r+24>>2]=0;F[r+28>>2]=0;w=1;i=a;y=F[a+124>>2];A:{B:{n=f;C:{D:{if((f|0)<=0){break D}C=i+232|0;O=F[i+216>>2]!=F[i+220>>2];while(1){a=m;m=a+1|0;E:{F:{d=F[i+404>>2];G:{if((d|0)!=-1){f=-1;h=F[i+428>>2]+(d<<2)|0;o=F[h>>2];d=o-1|0;F[h>>2]=d;if((o|0)<=0){break C}f=F[F[F[i+416>>2]+L(F[i+404>>2],12)>>2]+(d<<2)>>2];h=F[(f<<2)+12176>>2];F[i+400>>2]=h;if(!f){break G}break F}h=7;H:{f=F[i+376>>2];f=H[(ga[F[F[f>>2]+32>>2]](f)|0)+36>>1];if(((f<<8|f>>>8)&65535)>>>0<=513){if(!G[i+308|0]){h=1;F[i+400>>2]=1;break F}h=F[i+296>>2];f=F[i+304>>2];d=h+(f>>>3|0)|0;o=F[i+300>>2];if(d>>>0>=o>>>0){break H}q=G[d|0];d=f+1|0;F[i+304>>2]=d;if(!(q>>>(f&7)&1)){break H}q=d>>>3|0;p=h+q|0;I:{if(p>>>0>=o>>>0){f=d;d=0;break I}p=G[p|0];f=f+2|0;F[i+304>>2]=f;q=f>>>3|0;d=p>>>(d&7)&1}h=h+q|0;if(h>>>0>>0){h=G[h|0];F[i+304>>2]=f+1;f=h>>>(f&7)<<1&2}else{f=0}h=(d|f)<<1|1}F[i+400>>2]=h;break F}F[i+400>>2]=0}if((b|0)==(j|0)){f=-1;break C}d=-1;q=F[i+8>>2];t=F[q+24>>2];x=b-4|0;f=F[x>>2];h=-1;J:{if((f|0)==-1){break J}p=f+1|0;p=(p>>>0)%3|0?p:f-2|0;h=-1;if((p|0)==-1){break J}h=F[F[q>>2]+(p<<2)>>2]}o=F[t+(h<<2)>>2];if((o|0)!=-1){d=o+1|0;d=(d>>>0)%3|0?d:o-2|0}o=F[q+12>>2];p=L(a,3);a=p+1|0;F[o+(f<<2)>>2]=a;B=a<<2;F[B+o>>2]=f;w=p+2|0;F[o+(d<<2)>>2]=w;N=w<<2;F[N+o>>2]=d;o=-1;a=-1;K:{if((f|0)==-1){break K}L:{if((f>>>0)%3|0){f=f-1|0;break L}f=f+2|0;a=-1;if((f|0)==-1){break K}}a=F[F[q>>2]+(f<<2)>>2]}M:{if((d|0)==-1){break M}f=d+1|0;f=(f>>>0)%3|0?f:d-2|0;if((f|0)==-1){break M}o=F[F[q>>2]+(f<<2)>>2]}f=-1;if((a|0)==(h|0)|(h|0)==(o|0)){break C}f=F[q>>2];F[f+(p<<2)>>2]=h;F[f+B>>2]=o;F[f+N>>2]=a;if((a|0)!=-1){F[t+(a<<2)>>2]=w}a=F[i+120>>2]+(h>>>3&536870908)|0;f=F[a>>2];P=a,Q=Jj(h)&f,F[P>>2]=Q;F[x>>2]=p;Wc(C,p);break E}f=-1;N:{O:{P:{Q:{R:{S:{T:{U:{switch(h-1|0){case 2:case 4:if((b|0)==(k|0)){break C}d=F[i+8>>2];j=F[d+12>>2];p=(h|0)==5;h=L(a,3);o=(p?2:1)+h|0;t=o<<2;x=b-4|0;b=F[x>>2];F[j+t>>2]=b;F[j+(b<<2)>>2]=o;Ra(d+24|0);j=F[i+8>>2];q=F[j+24>>2];if(F[j+28>>2]-q>>2>(y|0)){break C}j=F[j>>2];B=j+t|0;d=F[d+28>>2]-F[d+24>>2]|0;t=(d>>2)-1|0;F[B>>2]=t;if(d){F[q+(t<<2)>>2]=o}o=p?h:h+2|0;t=j+(h+p<<2)|0;V:{if((b|0)==-1){F[j+(o<<2)>>2]=-1;d=-1;break V}W:{X:{Y:{if((b>>>0)%3|0){d=b-1|0;break Y}d=b+2|0;if((d|0)==-1){break X}}d=F[j+(d<<2)>>2];F[j+(o<<2)>>2]=d;if((d|0)==-1){break W}F[q+(d<<2)>>2]=o;break W}F[j+(o<<2)>>2]=-1}o=b+1|0;b=(o>>>0)%3|0?o:b-2|0;d=-1;if((b|0)==-1){break V}d=F[j+(b<<2)>>2]}F[t>>2]=d;F[x>>2]=h;break T;case 0:if((b|0)==(j|0)){break C}c=b-4|0;q=F[c>>2];F[r+68>>2]=c;p=F[r+44>>2];Z:{if(!p){break Z}h=F[r+40>>2];t=Ij(p)>>>0>1;d=a&p+2147483647;_:{if(!t){break _}d=a;if(a>>>0

>>0){break _}d=(a>>>0)%(p>>>0)|0}o=d;d=F[h+(o<<2)>>2];if(!d){break Z}h=F[d>>2];if(!h){break Z}$:{if(!t){d=p-1|0;while(1){p=F[h+4>>2];aa:{if((p|0)!=(a|0)){if((o|0)==(d&p)){break aa}break Z}if((a|0)==F[h+8>>2]){break $}}h=F[h>>2];if(h){continue}break}break Z}while(1){d=F[h+4>>2];ba:{if((d|0)!=(a|0)){if(d>>>0>=p>>>0){d=(d>>>0)%(p>>>0)|0}if((d|0)==(o|0)){break ba}break Z}if((a|0)==F[h+8>>2]){break $}}h=F[h>>2];if(h){continue}break}break Z}if((c|0)!=(u|0)){F[c>>2]=F[h+12>>2];F[r+68>>2]=b;c=b;break Z}b=u-j|0;d=b>>2;c=d+1|0;if(c>>>0>=1073741824){break b}k=b>>1;c=d>>>0<536870911?c>>>0>k>>>0?c:k:1073741823;if(c){if(c>>>0>=1073741824){break B}k=sa(c<<2)}else{k=0}d=k+(d<<2)|0;F[d>>2]=F[h+12>>2];u=(c<<2)+k|0;c=d+4|0;if((b|0)>0){ta(k,j,b)}F[r+72>>2]=u;F[r+68>>2]=c;F[r+64>>2]=k;if(!j){break Z}ra(j)}if((c|0)==(k|0)){break R}t=c-4|0;b=F[t>>2];j=(b|0)==-1;h=F[i+8>>2];if(!j&F[F[h+12>>2]+(b<<2)>>2]!=-1){break R}p=F[h+12>>2];if((q|0)!=-1&F[p+(q<<2)>>2]!=-1){break R}w=L(a,3);o=w+2|0;F[p+(b<<2)>>2]=o;a=o<<2;F[a+p>>2]=b;f=w+1|0;F[p+(q<<2)>>2]=f;x=f<<2;F[x+p>>2]=q;if(j){break Q}if((b>>>0)%3|0){f=b-1|0;break P}f=b+2|0;if((f|0)!=-1){break P}j=F[h>>2];d=-1;break O;case 6:break U;default:break C}}h=F[i+8>>2];Ra(h+24|0);d=F[i+8>>2];c=L(a,3);q=F[h+28>>2]-F[h+24>>2]|0;o=q>>2;h=o-1|0;F[F[d>>2]+(c<<2)>>2]=h;Ra(d+24|0);p=c+1|0;F[F[d>>2]+(p<<2)>>2]=(F[d+28>>2]-F[d+24>>2]>>2)-1;d=F[i+8>>2];Ra(d+24|0);t=c+2|0;F[F[d>>2]+(t<<2)>>2]=(F[d+28>>2]-F[d+24>>2]>>2)-1;x=F[i+8>>2];d=F[x+24>>2];if(F[x+28>>2]-d>>2>(y|0)){break C}ca:{da:{if(!q){F[d+(o<<2)>>2]=p;h=1;break da}F[d+(h<<2)>>2]=c;h=0;if((q|0)==-4){break da}F[d+(o<<2)>>2]=p;h=o+1|0;if((h|0)==-1){break ca}}F[d+(h<<2)>>2]=t}if((b|0)!=(u|0)){F[b>>2]=c;c=b+4|0;F[r+68>>2]=c;break S}b=u-j|0;h=b>>2;k=h+1|0;if(k>>>0>=1073741824){break b}d=b>>1;d=h>>>0<536870911?d>>>0>>0?k:d:1073741823;if(d){if(d>>>0>=1073741824){break B}k=sa(d<<2)}else{k=0}h=k+(h<<2)|0;F[h>>2]=c;u=(d<<2)+k|0;c=h+4|0;if((b|0)>0){ta(k,j,b)}F[r+72>>2]=u;F[r+68>>2]=c;F[r+64>>2]=k;if(!j){break T}ra(j)}j=k}Wc(C,F[c-4>>2]);b=F[i+40>>2];ea:{if((b|0)==F[i+36>>2]){break ea}d=n+(a^-1)|0;h=c-4|0;while(1){a=F[b-8>>2];if(a>>>0>d>>>0){break R}if((a|0)!=(d|0)){break ea}o=G[b-4|0];a=b-12|0;b=F[a>>2];F[i+40>>2]=a;if((b|0)<0){break R}a=F[h>>2];F[r+20>>2]=n+(b^-1);b=r+20|0;F[r+88>>2]=b;_c(r,r+40|0,b,r+88|0);t=F[r>>2];fa:{if(o&1){b=-1;if((a|0)==-1){break fa}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0;break fa}b=-1;if((a|0)==-1){break fa}b=a-1|0;if((a>>>0)%3|0){break fa}b=a+2|0}F[t+12>>2]=b;b=F[i+40>>2];if((b|0)!=F[i+36>>2]){continue}break}}b=c;break E}if(w){break C}break D}d=-1;j=F[h>>2];F[j+(w<<2)>>2]=-1;f=-1;break N}j=F[h>>2];d=F[j+(f<<2)>>2]}F[(w<<2)+j>>2]=d;B=b+1|0;b=(B>>>0)%3|0?B:b-2|0;f=-1;if((b|0)==-1){break N}f=F[(b<<2)+j>>2]}F[j+x>>2]=f;ga:{if((q|0)==-1){F[a+j>>2]=-1;o=-1;f=-1;break ga}ha:{ia:{ja:{if((q>>>0)%3|0){f=q-1|0;break ja}f=q+2|0;if((f|0)==-1){break ia}}b=a+j|0;a=F[(f<<2)+j>>2];F[b>>2]=a;if((a|0)==-1){break ha}F[F[h+24>>2]+(a<<2)>>2]=o;break ha}F[a+j>>2]=-1}o=-1;a=q+1|0;a=(a>>>0)%3|0?a:q-2|0;f=-1;if((a|0)==-1){break ga}o=F[(a<<2)+j>>2];f=a}a=F[i+388>>2];b=d<<2;q=a+b|0;x=a;a=o<<2;F[q>>2]=F[q>>2]+F[x+a>>2];h=F[h+24>>2];a=h+a|0;if((d|0)!=-1){F[b+h>>2]=F[a>>2]}ka:{if((f|0)==-1){break ka}while(1){F[(f<<2)+j>>2]=d;b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)==-1){break ka}b=F[p+(b<<2)>>2];if((b|0)==-1){break ka}f=b+1|0;f=(f>>>0)%3|0?f:b-2|0;if((f|0)!=-1){continue}break}}F[a>>2]=-1;la:{if(O){break la}if((z|0)!=(J|0)){F[z>>2]=o;z=z+4|0;F[r+28>>2]=z;break la}ma:{a=J-v|0;f=a>>2;b=f+1|0;if(b>>>0<1073741824){g=a>>1;b=f>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(b){if(b>>>0>=1073741824){break ma}g=sa(b<<2)}else{g=0}f=g+(f<<2)|0;F[f>>2]=o;J=(b<<2)+g|0;z=f+4|0;if((a|0)>0){ta(g,v,a)}F[r+32>>2]=J;F[r+28>>2]=z;F[r+24>>2]=g;if(v){ra(v)}v=g;break la}break b}break B}F[t>>2]=w;b=c;j=k;Wc(C,w)}w=(m|0)<(n|0);if((m|0)!=(n|0)){continue}break}m=n}f=-1;j=F[i+8>>2];if(F[j+28>>2]-F[j+24>>2]>>2>(y|0)){break C}if((c|0)!=(k|0)){a=i+60|0;w=i+312|0;while(1){c=c-4|0;q=F[c>>2];F[r+68>>2]=c;na:{oa:{pa:{qa:{if(H[i+270>>1]<=513){if(!G[i+364|0]){break pa}b=F[i+360>>2];j=F[i+352>>2]+(b>>>3|0)|0;if(j>>>0>=I[i+356>>2]){break oa}j=G[j|0];F[i+360>>2]=b+1;b=j>>>(b&7)&1;break qa}b=Ga(w)}if(!b){break oa}}u=F[i+8>>2];p=F[u>>2];if(((F[u+4>>2]-p>>2>>>0)/3|0)<=(m|0)){break C}h=-1;d=-1;j=F[u+24>>2];b=-1;ra:{if((q|0)==-1){break ra}n=q+1|0;n=(n>>>0)%3|0?n:q-2|0;b=-1;if((n|0)==-1){break ra}b=F[p+(n<<2)>>2]}n=b;b=F[j+(n<<2)>>2];sa:{if((b|0)==-1){break sa}v=b+1|0;b=(v>>>0)%3|0?v:b-2|0;if((b|0)==-1){break sa}h=b+1|0;h=(h>>>0)%3|0?h:b-2|0;if((h|0)!=-1){d=F[p+(h<<2)>>2]}h=b}o=-1;v=-1;j=F[j+(d<<2)>>2];b=-1;ta:{if((j|0)==-1){break ta}y=j+1|0;j=(y>>>0)%3|0?y:j-2|0;b=-1;if((j|0)==-1){break ta}b=j+1|0;b=(b>>>0)%3|0?b:j-2|0;if((b|0)!=-1){v=F[p+(b<<2)>>2]}b=j}u=F[u+12>>2];j=L(m,3);y=j<<2;F[u+y>>2]=q;F[u+(q<<2)>>2]=j;q=j+1|0;C=q<<2;F[C+u>>2]=h;F[u+(h<<2)>>2]=q;h=j+2|0;J=h<<2;F[J+u>>2]=b;F[u+(b<<2)>>2]=h;F[p+y>>2]=d;b=p+C|0;F[b>>2]=v;v=p+J|0;F[v>>2]=n;n=j>>>0>q>>>0?-1:d;d=F[i+120>>2];p=(n>>>3&536870908)+d|0;u=F[p>>2];P=p,Q=Jj(n)&u,F[P>>2]=Q;o=(q|0)!=-1?F[b>>2]:o;b=d+(o>>>3&536870908)|0;n=F[b>>2];P=b,Q=Jj(o)&n,F[P>>2]=Q;b=-1;b=(h|0)!=-1?F[v>>2]:b;d=d+(b>>>3&536870908)|0;n=F[d>>2];P=d,Q=Jj(b)&n,F[P>>2]=Q;b=F[i+64>>2];d=F[i+68>>2];if((b|0)==d<<5){if((b+1|0)<0){break b}if(b>>>0<=1073741822){b=b+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}cb(a,b);b=F[i+64>>2]}m=m+1|0;F[i+64>>2]=b+1;d=F[i+60>>2]+(b>>>3&536870908)|0;F[d>>2]=F[d>>2]|1<>2];if((b|0)!=F[i+80>>2]){F[b>>2]=j;F[i+76>>2]=b+4;break na}d=F[i+72>>2];n=b-d|0;v=n>>2;b=v+1|0;if(b>>>0>=1073741824){break b}h=n>>1;h=v>>>0<536870911?b>>>0>h>>>0?b:h:1073741823;if(h){if(h>>>0>=1073741824){break B}b=sa(h<<2)}else{b=0}v=b+(v<<2)|0;F[v>>2]=j;if((n|0)>0){ta(b,d,n)}F[i+80>>2]=b+(h<<2);F[i+76>>2]=v+4;F[i+72>>2]=b;if(!d){break na}ra(d);break na}j=F[i+64>>2];b=F[i+68>>2];if((j|0)==b<<5){if((j+1|0)<0){break b}if(j>>>0<=1073741822){j=j+32&-32;b=b<<6;b=b>>>0>>0?j:b}else{b=2147483647}cb(a,b);j=F[i+64>>2]}F[i+64>>2]=j+1;b=F[i+60>>2]+(j>>>3&536870908)|0;d=F[b>>2];P=b,Q=Jj(j)&d,F[P>>2]=Q;b=F[i+76>>2];if((b|0)!=F[i+80>>2]){F[b>>2]=q;F[i+76>>2]=b+4;break na}j=F[i+72>>2];d=b-j|0;h=d>>2;b=h+1|0;if(b>>>0>=1073741824){break b}n=d>>1;n=h>>>0<536870911?b>>>0>n>>>0?b:n:1073741823;if(n){if(n>>>0>=1073741824){break B}b=sa(n<<2)}else{b=0}h=b+(h<<2)|0;F[h>>2]=q;if((d|0)>0){ta(b,j,d)}F[i+80>>2]=b+(n<<2);F[i+76>>2]=h+4;F[i+72>>2]=b;if(!j){break na}ra(j)}if((c|0)!=(k|0)){continue}break}j=F[i+8>>2]}if(((F[j+4>>2]-F[j>>2]>>2>>>0)/3|0)!=(m|0)){break C}c=F[j+24>>2];f=F[j+28>>2]-c>>2;if((g|0)==(z|0)){g=z;break C}d=g;while(1){a=F[d>>2];b=f-1|0;h=(b<<2)+c|0;if(F[h>>2]==-1){while(1){b=f-2|0;f=f-1|0;h=(b<<2)+c|0;if(F[h>>2]==-1){continue}break}}if(a>>>0<=b>>>0){F[r>>2]=j;c=F[h>>2];D[r+12|0]=1;F[r+8>>2]=c;F[r+4>>2]=c;if((c|0)!=-1){while(1){F[F[j>>2]+(c<<2)>>2]=a;tc(r);j=F[i+8>>2];c=F[r+8>>2];if((c|0)!=-1){continue}break}}c=F[j+24>>2];m=c+(b<<2)|0;if((a|0)!=-1){F[(a<<2)+c>>2]=F[m>>2]}F[m>>2]=-1;m=1<>2];a=n+(a>>>3&536870908)|0;n=n+(b>>>3&536870908)|0;b=1<>2]&b){m=m|F[a>>2]}else{m=F[a>>2]&(m^-1)}F[a>>2]=m;F[n>>2]=F[n>>2]&(b^-1);f=f-1|0}d=d+4|0;if((z|0)!=(d|0)){continue}break}}if(g){ra(g)}a=F[r+48>>2];if(a){while(1){b=F[a>>2];ra(a);a=b;if(b){continue}break}}a=F[r+40>>2];F[r+40>>2]=0;if(a){ra(a)}if(k){F[r+68>>2]=k;ra(k)}ea=r+96|0;break A}wa(1336);V()}if((f|0)==-1){break z}a=F[l+16>>2];b=a+F[l>>2]|0;c=F[l+8>>2];c=c-a|0;a=F[F[i+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=b;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=c;F[a+12>>2]=0;a=F[i+4>>2];b=H[a+36>>1];g=b<<8|b>>>8;if((g&65535)>>>0<=513){a=F[a+32>>2];c=M+F[a+20>>2]|0;b=A+F[a+16>>2]|0;c=b>>>0>>0?c+1|0:c;F[a+16>>2]=b;F[a+20>>2]=c}ua:{if(F[i+216>>2]==F[i+220>>2]){break ua}b=F[i+8>>2];a=F[b>>2];b=F[b+4>>2];va:{if((g&65535)>>>0>=513){if((a|0)==(b|0)){break ua}b=0;break va}if((a|0)==(b|0)){break ua}b=0;while(1){if(cd(i,b)){b=b+3|0;a=F[i+8>>2];if(b>>>0>2]-F[a>>2]>>2>>>0){continue}break ua}break}break z}while(1){if(bd(i,b)){b=b+3|0;a=F[i+8>>2];if(b>>>0>2]-F[a>>2]>>2>>>0){continue}break ua}break}break z}ad(e);b=F[i+216>>2];if((b|0)!=F[i+220>>2]){g=0;while(1){a=L(g,144);Ic((a+b|0)+4|0,F[i+8>>2]);s=F[K>>2];c=a+s|0;b=F[c+132>>2];c=F[c+136>>2];if((b|0)!=(c|0)){while(1){Gc((a+s|0)+4|0,F[b>>2]);s=F[K>>2];b=b+4|0;if((c|0)!=(b|0)){continue}break}}Hc((a+s|0)+4|0);g=g+1|0;b=F[i+216>>2];if(g>>>0<(F[i+220>>2]-b|0)/144>>>0){continue}break}}a=F[i+8>>2];Gb(i+184|0,F[a+28>>2]-F[a+24>>2]>>2);s=F[i+216>>2];if((s|0)!=F[i+220>>2]){b=0;while(1){a=L(b,144)+s|0;c=F[a+60>>2]-F[a+56>>2]>>2;g=a+104|0;a=F[i+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Gb(g,(a|0)>(c|0)?a:c);b=b+1|0;s=F[i+216>>2];if(b>>>0<(F[i+220>>2]-s|0)/144>>>0){continue}break}}s=$c(i,f)}break c}s=0}ea=l- -64|0;return s|0}va();V()}function bi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;k=ea+-64|0;ea=k;F[a+132>>2]=0;if(F[a+148>>2]){e=F[a+144>>2];if(e){while(1){d=F[e>>2];ra(e);e=d;if(d){continue}break}}e=0;F[a+144>>2]=0;f=F[a+140>>2];a:{if(!f){break a}if(f-1>>>0>=3){d=f&-4;while(1){b=e<<2;F[b+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(b|4)>>2]=0;F[F[a+136>>2]+(b|8)>>2]=0;F[F[a+136>>2]+(b|12)>>2]=0;e=e+4|0;g=g+4|0;if((d|0)!=(g|0)){continue}break}}d=f&3;if(!d){break a}while(1){F[F[a+136>>2]+(e<<2)>>2]=0;e=e+1|0;v=v+1|0;if((d|0)!=(v|0)){continue}break}}F[a+148>>2]=0}b:{c:{e=F[a+4>>2];v=G[e+36|0];d=v<<8|G[e+37|0];d:{if(d>>>0>513){break d}c=F[e+32>>2];if(d>>>0<=511){d=F[c+20>>2];f=F[c+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;b=g;g=F[c+12>>2];if(b>>>0>I[c+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break c}g=f+F[c>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[c+16>>2]=b;F[c+20>>2]=d;F[a+132>>2]=g;break d}if(!Fa(1,k,c)){break c}e=F[a+4>>2];v=G[e+36|0];F[a+132>>2]=F[k>>2]}c=F[e+32>>2];e:{f:{g:{if((v&255)>>>0<=1){v=0;d=F[c+20>>2];f=F[c+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;b=g;g=F[c+12>>2];if(b>>>0>I[c+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break b}g=f+F[c>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[k+60>>2]=g;F[c+16>>2]=b;F[c+20>>2]=d;F[a+156>>2]=g;c=a+156|0;break g}v=0;if(!Fa(1,k+60|0,c)){break b}e=F[a+4>>2];d=G[e+36|0];F[a+156>>2]=F[k+60>>2];c=a+156|0;if(d>>>0>1){break f}}o=F[e+32>>2];d=F[o+8>>2];f=F[o+12>>2];m=d;d=F[o+20>>2];b=F[o+16>>2];g=b+4|0;d=g>>>0<4?d+1|0:d;e=g;if(m>>>0>>0&(d|0)>=(f|0)|(d|0)>(f|0)){break b}g=b+F[o>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[k+56>>2]=g;F[o+16>>2]=e;F[o+20>>2]=d;break e}if(!Fa(1,k+56|0,F[e+32>>2])){break b}g=F[k+56>>2]}if(g>>>0>1431655765|I[c>>2]>L(g,3)>>>0){break b}x=F[a+4>>2];e=F[x+32>>2];m=F[e+8>>2];f=m;b=F[e+12>>2];d=F[e+20>>2];l=F[e+16>>2];if((b|0)<=(d|0)&l>>>0>=f>>>0|(d|0)>(b|0)){break b}o=F[e>>2];i=G[o+l|0];c=l+1|0;f=c?d:d+1|0;F[e+16>>2]=c;F[e+20>>2]=f;h:{if(G[x+36|0]<=1){f=l+5|0;d=f>>>0<5?d+1|0:d;if(f>>>0>m>>>0&(d|0)>=(b|0)|(d|0)>(b|0)){break b}b=c+o|0;c=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[k+52>>2]=c;F[e+16>>2]=f;F[e+20>>2]=d;break h}if(!Fa(1,k+52|0,e)){break b}c=F[k+52>>2]}if(((c>>>0)/3|0)+c>>>0>>0|c>>>0>g>>>0){break b}d=F[a+4>>2];o=F[d+32>>2];i:{if(G[d+36|0]<=1){d=F[o+20>>2];b=F[o+16>>2];e=b+4|0;d=e>>>0<4?d+1|0:d;f=e;e=F[o+12>>2];if(f>>>0>I[o+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break b}e=b+F[o>>2]|0;b=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[k+48>>2]=b;F[o+16>>2]=f;F[o+20>>2]=d;break i}if(!Fa(1,k+48|0,o)){break b}b=F[k+48>>2]}if(c>>>0>>0){break b}F[a+28>>2]=F[a+24>>2];d=sa(88);Lc(d);e=F[a+8>>2];F[a+8>>2]=d;if(e){ab(e);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Ib(a+160|0,g);F[a+176>>2]=F[a+172>>2];Ib(a+172|0,g);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];N=a+216|0;fd(N);ed(N,i);if(!Kc(F[a+8>>2],g,F[a+156>>2]+b|0)){break b}d=F[a+156>>2];D[k|0]=1;Na(a+120|0,d+b|0,k);g=F[a+4>>2];d=H[g+36>>1];d=(d<<8|d>>>8)&65535;j:{if(d>>>0<=513){o=F[g+32>>2];k:{if(d>>>0<=511){d=F[o+20>>2];f=F[o+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;e=g;g=F[o+12>>2];if(e>>>0>I[o+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break b}g=f+F[o>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[o+16>>2]=e;F[o+20>>2]=d;break k}if(!Fa(1,k+44|0,o)){break b}g=F[k+44>>2]}if(!g){break b}o=F[F[a+4>>2]+32>>2];f=F[o+8>>2];d=F[o+16>>2];e=f-d|0;d=F[o+12>>2]-(F[o+20>>2]+(d>>>0>f>>>0)|0)|0;if(e>>>0>>0&(d|0)<=0|(d|0)<0){break b}E[k+38>>1]=0;F[k>>2]=0;F[k+8>>2]=0;F[k+12>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;F[k+24>>2]=0;F[k+28>>2]=0;D[k+29|0]=0;D[k+30|0]=0;D[k+31|0]=0;D[k+32|0]=0;D[k+33|0]=0;D[k+34|0]=0;D[k+35|0]=0;D[k+36|0]=0;o=F[F[a+4>>2]+32>>2];e=o;d=F[e+16>>2];f=(d+F[e>>2]|0)+g|0;e=F[e+8>>2];d=(e-d|0)-g|0;E[k+38>>1]=H[o+38>>1];F[k>>2]=f;F[k+16>>2]=0;F[k+20>>2]=0;F[k+8>>2]=d;F[k+12>>2]=0;o=Hb(a,k);if((o|0)==-1){break b}Q=o>>31;break j}o=-1;Q=-1;if((Hb(a,F[g+32>>2])|0)==-1){break b}}C=a+232|0;dd(C,a);R=a,S=ga[F[F[a>>2]+36>>2]](a)|0,F[R+380>>2]=S;F[a+372>>2]=i;F[a+384>>2]=F[a+156>>2]+b;E[k+38>>1]=0;F[k>>2]=0;d=k;F[d+8>>2]=0;F[d+12>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+24>>2]=0;F[d+28>>2]=0;D[d+29|0]=0;D[d+30|0]=0;D[d+31|0]=0;D[d+32|0]=0;D[d+33|0]=0;D[d+34|0]=0;D[d+35|0]=0;D[d+36|0]=0;l=0;m=ea-16|0;ea=m;l:{if(!Ae(C,d)){break l}g=d;d=F[d+20>>2];f=F[g+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;b=e;e=F[g+12>>2];if(b>>>0>I[g+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break l}e=f+F[g>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[g+16>>2]=b;F[g+20>>2]=d;if((e|0)<0){break l}b=F[C+152>>2];if((b|0)<=(e|0)){break l}F[m+12>>2]=0;d=F[C+156>>2];e=F[C+160>>2]-d>>2;m:{if(e>>>0>>0){Ia(C+156|0,b-e|0,m+12|0);break m}if(b>>>0>=e>>>0){break m}F[C+160>>2]=d+(b<<2)}l=xa(C+168|0,g)}ea=m+16|0;n:{if(!l){break n}b=0;l=0;e=0;d=0;g=0;x=0;n=ea-96|0;ea=n;F[n+72>>2]=0;F[n+64>>2]=0;F[n+68>>2]=0;F[n+48>>2]=0;F[n+52>>2]=0;F[n+40>>2]=0;F[n+44>>2]=0;F[n+56>>2]=1065353216;F[n+32>>2]=0;F[n+24>>2]=0;F[n+28>>2]=0;p=1;h=a;O=F[a+124>>2];o:{p:{q:{r:{m=c;s:{t:{if((c|0)<=0){break t}K=h+400|0;P=h+232|0;z=F[h+216>>2]!=F[h+220>>2];while(1){i=x;x=i+1|0;u:{v:{w:{x:{y:{if(F[h+420>>2]!=-1){if(Ga(K)){break y}}if(G[h+308|0]){q=F[h+296>>2];r=F[h+304>>2];a=q+(r>>>3|0)|0;s=F[h+300>>2];if(a>>>0>=s>>>0){break x}f=G[a|0];a=r+1|0;F[h+304>>2]=a;if(!(f>>>(r&7)&1)){break x}j=a>>>3|0;f=q+j|0;z:{if(f>>>0>=s>>>0){f=a;a=0;break z}c=G[f|0];f=r+2|0;F[h+304>>2]=f;j=f>>>3|0;a=c>>>(a&7)&1}c=j+q|0;if(c>>>0>>0){c=G[c|0];F[h+304>>2]=f+1;f=c>>>(f&7)<<1&2}else{f=0}c=(a|f)<<1|1}else{c=1}F[h+416>>2]=c;break v}c=F[h+420>>2];F[h+416>>2]=c;if(c){break v}break w}F[h+416>>2]=0}if((b|0)==(l|0)){f=-1;break s}s=-1;y=F[h+8>>2];r=F[y+24>>2];a=r;q=b-4|0;A=F[q>>2];c=-1;A:{if((A|0)==-1){break A}f=A+1|0;f=(f>>>0)%3|0?f:A-2|0;c=-1;if((f|0)==-1){break A}c=F[F[y>>2]+(f<<2)>>2]}f=F[a+(c<<2)>>2];if((f|0)!=-1){a=f+1|0;s=(a>>>0)%3|0?a:f-2|0}f=F[y+12>>2];u=L(i,3);a=u+1|0;F[f+(A<<2)>>2]=a;j=a<<2;F[j+f>>2]=A;t=u+2|0;F[f+(s<<2)>>2]=t;i=t<<2;F[i+f>>2]=s;p=-1;a=-1;B:{if((A|0)==-1){break B}C:{if((A>>>0)%3|0){f=A-1|0;break C}f=A+2|0;a=-1;if((f|0)==-1){break B}}a=F[F[y>>2]+(f<<2)>>2]}D:{if((s|0)==-1){break D}f=s+1|0;f=(f>>>0)%3|0?f:s-2|0;if((f|0)==-1){break D}p=F[F[y>>2]+(f<<2)>>2]}f=-1;if((a|0)==(c|0)|(c|0)==(p|0)){break s}f=F[y>>2];F[f+(u<<2)>>2]=c;F[f+j>>2]=p;F[f+i>>2]=a;if((a|0)!=-1){F[r+(a<<2)>>2]=t}f=F[h+120>>2]+(c>>>3&536870908)|0;a=F[f>>2];R=f,S=Jj(c)&a,F[R>>2]=S;F[q>>2]=u;Xc(P,u);break u}f=-1;E:{F:{G:{H:{I:{J:{K:{L:{M:{N:{switch(c-1|0){case 2:case 4:if((d|0)==(b|0)){break s}q=F[h+8>>2];j=F[q+12>>2];r=L(i,3);s=(c|0)==5;c=r+(s?2:1)|0;a=c<<2;l=b-4|0;u=F[l>>2];F[j+a>>2]=u;F[j+(u<<2)>>2]=c;Ra(q+24|0);b=F[h+8>>2];j=F[b+24>>2];if(F[b+28>>2]-j>>2>(O|0)){break s}t=F[b>>2];A=t+a|0;b=F[q+28>>2]-F[q+24>>2]|0;a=(b>>2)-1|0;F[A>>2]=a;if(b){F[j+(a<<2)>>2]=c}q=s?r:r+2|0;b=t+(s+r<<2)|0;O:{if((u|0)==-1){F[t+(q<<2)>>2]=-1;c=-1;break O}P:{Q:{R:{if((u>>>0)%3|0){c=u-1|0;break R}c=u+2|0;if((c|0)==-1){break Q}}a=F[t+(c<<2)>>2];F[t+(q<<2)>>2]=a;if((a|0)==-1){break P}F[j+(a<<2)>>2]=q;break P}F[t+(q<<2)>>2]=-1}a=u+1|0;a=(a>>>0)%3|0?a:u-2|0;c=-1;if((a|0)==-1){break O}c=F[t+(a<<2)>>2]}F[b>>2]=c;F[l>>2]=r;break M;case 0:if((b|0)==(l|0)){break s}e=b-4|0;y=F[e>>2];F[n+68>>2]=e;q=F[n+44>>2];S:{if(!q){break S}c=F[n+40>>2];s=Ij(q)>>>0>1;a=i&q+2147483647;T:{if(!s){break T}a=i;if(a>>>0>>0){break T}a=(i>>>0)%(q>>>0)|0}j=a;a=F[c+(j<<2)>>2];if(!a){break S}c=F[a>>2];if(!c){break S}U:{if(!s){s=q-1|0;while(1){a=F[c+4>>2];V:{if((a|0)!=(i|0)){if((j|0)==(a&s)){break V}break S}if((i|0)==F[c+8>>2]){break U}}c=F[c>>2];if(c){continue}break}break S}while(1){a=F[c+4>>2];W:{if((a|0)!=(i|0)){if(a>>>0>=q>>>0){a=(a>>>0)%(q>>>0)|0}if((a|0)==(j|0)){break W}break S}if((i|0)==F[c+8>>2]){break U}}c=F[c>>2];if(c){continue}break}break S}if((e|0)!=(M|0)){F[e>>2]=F[c+12>>2];F[n+68>>2]=b;e=b;break S}j=M-l|0;e=j>>2;d=e+1|0;if(d>>>0>=1073741824){break J}a=j>>1;b=e>>>0<536870911?a>>>0>>0?d:a:1073741823;if(b){if(b>>>0>=1073741824){break p}d=sa(b<<2)}else{d=0}a=d+(e<<2)|0;F[a>>2]=F[c+12>>2];M=(b<<2)+d|0;e=a+4|0;if((j|0)>0){ta(d,l,j)}F[n+72>>2]=M;F[n+68>>2]=e;F[n+64>>2]=d;if(!l){break S}ra(l)}if((d|0)==(e|0)){break K}j=e-4|0;u=F[j>>2];c=(u|0)==-1;t=F[h+8>>2];if(!c&F[F[t+12>>2]+(u<<2)>>2]!=-1){break K}r=F[t+12>>2];if((y|0)!=-1&F[r+(y<<2)>>2]!=-1){break K}q=L(i,3);i=q+2|0;F[r+(u<<2)>>2]=i;l=i<<2;F[l+r>>2]=u;a=q+1|0;F[r+(y<<2)>>2]=a;b=a<<2;F[b+r>>2]=y;if(c){break I}if((u>>>0)%3|0){f=u-1|0;break G}f=u+2|0;if((f|0)!=-1){break G}p=F[t>>2];a=-1;break F;case 6:break N;default:break s}}a=F[h+8>>2];Ra(a+24|0);e=F[h+8>>2];t=L(i,3);s=F[a+28>>2]-F[a+24>>2]|0;q=s>>2;c=q-1|0;F[F[e>>2]+(t<<2)>>2]=c;Ra(e+24|0);j=t+1|0;F[F[e>>2]+(j<<2)>>2]=(F[e+28>>2]-F[e+24>>2]>>2)-1;a=F[h+8>>2];Ra(a+24|0);e=t+2|0;F[F[a>>2]+(e<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[h+8>>2];r=F[a+24>>2];if(F[a+28>>2]-r>>2>(O|0)){break s}X:{Y:{if(!s){F[r+(q<<2)>>2]=j;c=1;break Y}F[r+(c<<2)>>2]=t;c=0;if((s|0)==-4){break Y}F[r+(q<<2)>>2]=j;c=q+1|0;if((c|0)==-1){break X}}F[r+(c<<2)>>2]=e}if((b|0)!=(M|0)){F[b>>2]=t;e=b+4|0;F[n+68>>2]=e;break L}c=M-l|0;e=c>>2;d=e+1|0;if(d>>>0>=1073741824){break H}a=c>>1;b=e>>>0<536870911?a>>>0>>0?d:a:1073741823;if(b){if(b>>>0>=1073741824){break p}d=sa(b<<2)}else{d=0}a=d+(e<<2)|0;F[a>>2]=t;M=(b<<2)+d|0;e=a+4|0;if((c|0)>0){ta(d,l,c)}F[n+72>>2]=M;F[n+68>>2]=e;F[n+64>>2]=d;if(!l){break M}ra(l)}l=d}Xc(P,F[e-4>>2]);c=F[h+40>>2];Z:{if((c|0)==F[h+36>>2]){break Z}s=m+(i^-1)|0;j=e-4|0;while(1){a=F[c-8>>2];if(a>>>0>s>>>0){break K}if((a|0)!=(s|0)){break Z}i=G[c-4|0];a=c-12|0;b=F[a>>2];F[h+40>>2]=a;if((b|0)<0){break K}c=F[j>>2];F[n+20>>2]=m+(b^-1);a=n+20|0;F[n+88>>2]=a;_c(n,n+40|0,a,n+88|0);b=F[n>>2];_:{if(i&1){a=-1;if((c|0)==-1){break _}a=c+1|0;a=(a>>>0)%3|0?a:c-2|0;break _}a=-1;if((c|0)==-1){break _}a=c-1|0;if((c>>>0)%3|0){break _}a=c+2|0}F[b+12>>2]=a;c=F[h+40>>2];if((c|0)!=F[h+36>>2]){continue}break}}b=e;break u}if(p){break s}break t}va();V()}s=-1;p=F[t>>2];F[p+(q<<2)>>2]=-1;f=-1;break E}va();V()}p=F[t>>2];a=F[p+(f<<2)>>2]}s=a;F[(q<<2)+p>>2]=a;a=u+1|0;a=(a>>>0)%3|0?a:u-2|0;f=-1;if((a|0)==-1){break E}f=F[(a<<2)+p>>2]}F[b+p>>2]=f;$:{if((y|0)==-1){F[l+p>>2]=-1;l=-1;f=-1;break $}aa:{ba:{ca:{if((y>>>0)%3|0){f=y-1|0;break ca}f=y+2|0;if((f|0)==-1){break ba}}a=F[(f<<2)+p>>2];F[l+p>>2]=a;if((a|0)==-1){break aa}F[F[t+24>>2]+(a<<2)>>2]=i;break aa}F[l+p>>2]=-1}l=-1;a=y+1|0;a=(a>>>0)%3|0?a:y-2|0;f=-1;if((a|0)==-1){break $}l=F[(a<<2)+p>>2];f=a}c=F[h+388>>2];b=s<<2;a=c+b|0;i=a;A=F[a>>2];a=l<<2;F[i>>2]=A+F[a+c>>2];i=a;a=F[t+24>>2];c=i+a|0;if((s|0)!=-1){F[a+b>>2]=F[c>>2]}da:{if((f|0)==-1){break da}while(1){F[(f<<2)+p>>2]=s;a=f+1|0;a=(a>>>0)%3|0?a:f-2|0;if((a|0)==-1){break da}b=F[r+(a<<2)>>2];if((b|0)==-1){break da}a=b+1|0;f=(a>>>0)%3|0?a:b-2|0;if((f|0)!=-1){continue}break}}F[c>>2]=-1;ea:{if(z){break ea}if((B|0)!=(J|0)){F[J>>2]=l;J=J+4|0;F[n+28>>2]=J;break ea}fa:{c=B-w|0;b=c>>2;g=b+1|0;if(g>>>0<1073741824){a=c>>1;f=b>>>0<536870911?a>>>0>>0?g:a:1073741823;if(f){if(f>>>0>=1073741824){break fa}g=sa(f<<2)}else{g=0}a=g+(b<<2)|0;F[a>>2]=l;B=(f<<2)+g|0;J=a+4|0;if((c|0)>0){ta(g,w,c)}F[n+32>>2]=B;F[n+28>>2]=J;F[n+24>>2]=g;if(w){ra(w)}w=g;break ea}va();V()}break p}F[j>>2]=q;b=e;l=d;Xc(P,q)}p=(m|0)>(x|0);if((m|0)!=(x|0)){continue}break}x=m}f=-1;p=F[h+8>>2];if(F[p+28>>2]-F[p+24>>2]>>2>(O|0)){break s}if((d|0)!=(e|0)){a=h+60|0;q=h+312|0;while(1){e=e-4|0;z=F[e>>2];F[n+68>>2]=e;ga:{ha:{ia:{ja:{if(H[h+270>>1]<=513){if(!G[h+364|0]){break ia}c=F[h+360>>2];b=F[h+352>>2]+(c>>>3|0)|0;if(b>>>0>=I[h+356>>2]){break ha}b=G[b|0];F[h+360>>2]=c+1;b=b>>>(c&7)&1;break ja}b=Ga(q)}if(!b){break ha}}r=F[h+8>>2];B=F[r>>2];if(((F[r+4>>2]-B>>2>>>0)/3|0)<=(x|0)){break s}c=-1;l=-1;s=-1;w=F[r+24>>2];i=w;m=-1;ka:{if((z|0)==-1){break ka}b=z+1|0;b=(b>>>0)%3|0?b:z-2|0;m=-1;if((b|0)==-1){break ka}m=F[B+(b<<2)>>2]}j=F[(m<<2)+i>>2];b=-1;la:{if((j|0)==-1){break la}i=j+1|0;i=(i>>>0)%3|0?i:j-2|0;b=-1;if((i|0)==-1){break la}b=i+1|0;c=i;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){b=F[B+(b<<2)>>2]}else{b=-1}}w=F[w+(b<<2)>>2];j=-1;ma:{if((w|0)==-1){break ma}i=w+1|0;i=(i>>>0)%3|0?i:w-2|0;j=-1;if((i|0)==-1){break ma}j=i+1|0;j=(j>>>0)%3|0?j:i-2|0;if((j|0)!=-1){s=F[B+(j<<2)>>2]}j=i}K=F[r+12>>2];t=L(x,3);w=t<<2;F[K+w>>2]=z;F[K+(z<<2)>>2]=t;z=t+1|0;i=z<<2;F[i+K>>2]=c;F[K+(c<<2)>>2]=z;r=t+2|0;c=r<<2;F[c+K>>2]=j;F[K+(j<<2)>>2]=r;F[w+B>>2]=b;j=i+B|0;F[j>>2]=s;i=c+B|0;F[i>>2]=m;w=F[h+120>>2];m=t>>>0>z>>>0?-1:b;c=w+(m>>>3&536870908)|0;b=F[c>>2];R=c,S=Jj(m)&b,F[R>>2]=S;l=(z|0)!=-1?F[j>>2]:l;c=w+(l>>>3&536870908)|0;b=F[c>>2];R=c,S=Jj(l)&b,F[R>>2]=S;c=-1;c=(r|0)!=-1?F[i>>2]:c;m=w+(c>>>3&536870908)|0;b=F[m>>2];R=m,S=Jj(c)&b,F[R>>2]=S;c=F[h+64>>2];b=F[h+68>>2];if((c|0)==b<<5){if((c+1|0)<0){break r}if(c>>>0<=1073741822){c=c+32&-32;b=b<<6;b=c>>>0>b>>>0?c:b}else{b=2147483647}cb(a,b);c=F[h+64>>2]}x=x+1|0;F[h+64>>2]=c+1;b=F[h+60>>2]+(c>>>3&536870908)|0;F[b>>2]=F[b>>2]|1<>2];if((b|0)!=F[h+80>>2]){F[b>>2]=t;F[h+76>>2]=b+4;break ga}j=F[h+72>>2];l=b-j|0;m=l>>2;c=m+1|0;if(c>>>0>=1073741824){break q}b=l>>1;i=m>>>0<536870911?c>>>0>b>>>0?c:b:1073741823;if(i){if(i>>>0>=1073741824){break p}b=sa(i<<2)}else{b=0}c=b+(m<<2)|0;F[c>>2]=t;if((l|0)>0){ta(b,j,l)}F[h+80>>2]=b+(i<<2);F[h+76>>2]=c+4;F[h+72>>2]=b;if(!j){break ga}ra(j);break ga}p=F[h+64>>2];b=F[h+68>>2];if((p|0)==b<<5){if((p+1|0)<0){break r}if(p>>>0<=1073741822){c=p+32&-32;b=b<<6;b=c>>>0>b>>>0?c:b}else{b=2147483647}cb(a,b);p=F[h+64>>2]}F[h+64>>2]=p+1;c=F[h+60>>2]+(p>>>3&536870908)|0;b=F[c>>2];R=c,S=Jj(p)&b,F[R>>2]=S;b=F[h+76>>2];if((b|0)!=F[h+80>>2]){F[b>>2]=z;F[h+76>>2]=b+4;break ga}j=F[h+72>>2];l=b-j|0;m=l>>2;c=m+1|0;if(c>>>0>=1073741824){break q}b=l>>1;i=m>>>0<536870911?c>>>0>b>>>0?c:b:1073741823;if(i){if(i>>>0>=1073741824){break p}b=sa(i<<2)}else{b=0}c=b+(m<<2)|0;F[c>>2]=z;if((l|0)>0){ta(b,j,l)}F[h+80>>2]=b+(i<<2);F[h+76>>2]=c+4;F[h+72>>2]=b;if(!j){break ga}ra(j)}if((d|0)!=(e|0)){continue}break}p=F[h+8>>2]}if(((F[p+4>>2]-F[p>>2]>>2>>>0)/3|0)!=(x|0)){break s}e=F[p+24>>2];f=F[p+28>>2]-e>>2;if((g|0)==(J|0)){g=J;break s}a=g;while(1){m=F[a>>2];c=f-1|0;b=(c<<2)+e|0;if(F[b>>2]==-1){while(1){c=f-2|0;f=f-1|0;b=(c<<2)+e|0;if(F[b>>2]==-1){continue}break}}if(c>>>0>=m>>>0){F[n>>2]=p;e=F[b>>2];D[n+12|0]=1;F[n+8>>2]=e;F[n+4>>2]=e;if((e|0)!=-1){while(1){F[F[p>>2]+(e<<2)>>2]=m;tc(n);p=F[h+8>>2];e=F[n+8>>2];if((e|0)!=-1){continue}break}}e=F[p+24>>2];b=e+(c<<2)|0;if((m|0)!=-1){F[(m<<2)+e>>2]=F[b>>2]}F[b>>2]=-1;i=1<>2];m=b+(m>>>3&536870908)|0;x=b+(c>>>3&536870908)|0;b=1<>2]&b){i=i|F[m>>2]}else{i=F[m>>2]&(i^-1)}F[m>>2]=i;F[x>>2]=F[x>>2]&(b^-1);f=f-1|0}a=a+4|0;if((J|0)!=(a|0)){continue}break}}if(g){ra(g)}a=F[n+48>>2];if(a){while(1){g=F[a>>2];ra(a);a=g;if(a){continue}break}}a=F[n+40>>2];F[n+40>>2]=0;if(a){ra(a)}if(d){F[n+68>>2]=d;ra(d)}ea=n+96|0;break o}va();V()}va();V()}wa(1336);V()}if((f|0)==-1){break n}a=F[k+16>>2];g=a+F[k>>2]|0;d=F[k+8>>2];a=d-a|0;d=F[F[h+4>>2]+32>>2];E[d+38>>1]=H[d+38>>1];F[d>>2]=g;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=a;F[d+12>>2]=0;d=F[h+4>>2];a=H[d+36>>1];g=a<<8|a>>>8;if((g&65535)>>>0<=513){a=F[d+32>>2];d=Q+F[a+20>>2]|0;e=o+F[a+16>>2]|0;d=e>>>0>>0?d+1|0:d;F[a+16>>2]=e;F[a+20>>2]=d}na:{if(F[h+216>>2]==F[h+220>>2]){break na}a=F[h+8>>2];d=F[a>>2];a=F[a+4>>2];oa:{if((g&65535)>>>0>=513){if((a|0)==(d|0)){break na}e=0;break oa}if((a|0)==(d|0)){break na}e=0;while(1){if(cd(h,e)){e=e+3|0;a=F[h+8>>2];if(e>>>0>2]-F[a>>2]>>2>>>0){continue}break na}break}break n}while(1){if(bd(h,e)){e=e+3|0;a=F[h+8>>2];if(e>>>0>2]-F[a>>2]>>2>>>0){continue}break na}break}break n}ad(C);e=F[h+216>>2];if((e|0)!=F[h+220>>2]){g=0;while(1){d=L(g,144);Ic((d+e|0)+4|0,F[h+8>>2]);v=F[N>>2];a=d+v|0;e=F[a+132>>2];a=F[a+136>>2];if((e|0)!=(a|0)){while(1){Gc((d+v|0)+4|0,F[e>>2]);v=F[N>>2];e=e+4|0;if((a|0)!=(e|0)){continue}break}}Hc((d+v|0)+4|0);g=g+1|0;e=F[h+216>>2];if(g>>>0<(F[h+220>>2]-e|0)/144>>>0){continue}break}}a=F[h+8>>2];Gb(h+184|0,F[a+28>>2]-F[a+24>>2]>>2);v=F[h+216>>2];if((v|0)!=F[h+220>>2]){e=0;while(1){a=L(e,144)+v|0;d=F[a+60>>2]-F[a+56>>2]>>2;g=a+104|0;a=F[h+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Gb(g,(a|0)>(d|0)?a:d);e=e+1|0;v=F[h+216>>2];if(e>>>0<(F[h+220>>2]-v|0)/144>>>0){continue}break}}v=$c(h,f)}break b}v=0}ea=k- -64|0;return v|0}function di(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0;j=ea+-64|0;ea=j;F[a+132>>2]=0;if(F[a+148>>2]){c=F[a+144>>2];if(c){while(1){b=F[c>>2];ra(c);c=b;if(b){continue}break}}c=0;F[a+144>>2]=0;d=F[a+140>>2];a:{if(!d){break a}if(d-1>>>0>=3){b=d&-4;while(1){k=c<<2;F[k+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(k|4)>>2]=0;F[F[a+136>>2]+(k|8)>>2]=0;F[F[a+136>>2]+(k|12)>>2]=0;c=c+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}}b=d&3;if(!b){break a}while(1){F[F[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;w=w+1|0;if((b|0)!=(w|0)){continue}break}}F[a+148>>2]=0}b:{c:{c=F[a+4>>2];w=G[c+36|0];b=w<<8|G[c+37|0];d:{if(b>>>0>513){break d}p=F[c+32>>2];if(b>>>0<=511){b=F[p+20>>2];d=F[p+16>>2];e=d+4|0;b=e>>>0<4?b+1|0:b;k=e;e=F[p+12>>2];if(k>>>0>I[p+8>>2]&(e|0)<=(b|0)|(b|0)>(e|0)){break c}e=d+F[p>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[p+16>>2]=k;F[p+20>>2]=b;F[a+132>>2]=e;break d}if(!Fa(1,j,p)){break c}c=F[a+4>>2];w=G[c+36|0];F[a+132>>2]=F[j>>2]}p=F[c+32>>2];e:{f:{g:{if((w&255)>>>0<=1){w=0;b=F[p+20>>2];d=F[p+16>>2];e=d+4|0;b=e>>>0<4?b+1|0:b;k=e;e=F[p+12>>2];if(k>>>0>I[p+8>>2]&(e|0)<=(b|0)|(b|0)>(e|0)){break b}e=d+F[p>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[j+60>>2]=e;F[p+16>>2]=k;F[p+20>>2]=b;F[a+156>>2]=e;l=a+156|0;break g}w=0;if(!Fa(1,j+60|0,p)){break b}c=F[a+4>>2];b=G[c+36|0];F[a+156>>2]=F[j+60>>2];l=a+156|0;if(b>>>0>1){break f}}d=F[c+32>>2];c=F[d+8>>2];k=F[d+12>>2];h=c;c=F[d+20>>2];e=F[d+16>>2];b=e+4|0;c=b>>>0<4?c+1|0:c;if(h>>>0>>0&(c|0)>=(k|0)|(c|0)>(k|0)){break b}e=e+F[d>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[j+56>>2]=e;F[d+16>>2]=b;F[d+20>>2]=c;break e}if(!Fa(1,j+56|0,F[c+32>>2])){break b}e=F[j+56>>2]}if(e>>>0>1431655765|I[l>>2]>L(e,3)>>>0){break b}l=F[a+4>>2];b=F[l+32>>2];f=F[b+8>>2];d=f;k=F[b+12>>2];c=F[b+20>>2];i=F[b+16>>2];if((k|0)<=(c|0)&i>>>0>=d>>>0|(c|0)>(k|0)){break b}v=F[b>>2];g=G[v+i|0];d=i+1|0;h=d?c:c+1|0;p=d;F[b+16>>2]=d;F[b+20>>2]=h;h:{if(G[l+36|0]<=1){d=i+5|0;c=d>>>0<5?c+1|0:c;if(d>>>0>f>>>0&(c|0)>=(k|0)|(c|0)>(k|0)){break b}k=p+v|0;l=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);F[j+52>>2]=l;F[b+16>>2]=d;F[b+20>>2]=c;break h}if(!Fa(1,j+52|0,b)){break b}l=F[j+52>>2]}if(e>>>0>>0|((l>>>0)/3|0)+l>>>0>>0){break b}c=F[a+4>>2];p=F[c+32>>2];i:{if(G[c+36|0]<=1){c=F[p+20>>2];d=F[p+16>>2];b=d+4|0;c=b>>>0<4?c+1|0:c;k=b;b=F[p+12>>2];if(k>>>0>I[p+8>>2]&(b|0)<=(c|0)|(b|0)<(c|0)){break b}b=d+F[p>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[j+48>>2]=b;F[p+16>>2]=k;F[p+20>>2]=c;break i}if(!Fa(1,j+48|0,p)){break b}b=F[j+48>>2]}if(b>>>0>l>>>0){break b}F[a+28>>2]=F[a+24>>2];c=sa(88);Lc(c);k=F[a+8>>2];F[a+8>>2]=c;if(k){ab(k);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Ib(a+160|0,e);F[a+176>>2]=F[a+172>>2];Ib(a+172|0,e);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];J=a+216|0;fd(J);ed(J,g);if(!Kc(F[a+8>>2],e,F[a+156>>2]+b|0)){break b}c=F[a+156>>2];D[j|0]=1;Na(a+120|0,b+c|0,j);b=F[a+4>>2];c=H[b+36>>1];c=(c<<8|c>>>8)&65535;j:{if(c>>>0<=513){d=F[b+32>>2];k:{if(c>>>0<=511){b=F[d+20>>2];e=F[d+16>>2];c=e+4|0;b=c>>>0<4?b+1|0:b;k=c;c=F[d+12>>2];if(k>>>0>I[d+8>>2]&(c|0)<=(b|0)|(b|0)>(c|0)){break b}c=e+F[d>>2]|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[d+16>>2]=k;F[d+20>>2]=b;break k}if(!Fa(1,j+44|0,d)){break b}e=F[j+44>>2]}if(!e){break b}d=F[F[a+4>>2]+32>>2];k=F[d+8>>2];c=F[d+16>>2];b=k-c|0;c=F[d+12>>2]-(F[d+20>>2]+(c>>>0>k>>>0)|0)|0;if(b>>>0>>0&(c|0)<=0|(c|0)<0){break b}E[j+38>>1]=0;F[j>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;D[j+29|0]=0;D[j+30|0]=0;D[j+31|0]=0;D[j+32|0]=0;D[j+33|0]=0;D[j+34|0]=0;D[j+35|0]=0;D[j+36|0]=0;d=F[F[a+4>>2]+32>>2];c=F[d+16>>2];k=(c+F[d>>2]|0)+e|0;b=F[d+8>>2];c=(b-c|0)-e|0;E[j+38>>1]=H[d+38>>1];F[j>>2]=k;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=c;F[j+12>>2]=0;p=Hb(a,j);if((p|0)==-1){break b}N=p>>31;break j}p=-1;N=-1;if((Hb(a,F[b+32>>2])|0)==-1){break b}}K=a+232|0;dd(K,a);F[a+372>>2]=g;E[j+38>>1]=0;F[j>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;D[j+29|0]=0;D[j+30|0]=0;D[j+31|0]=0;D[j+32|0]=0;D[j+33|0]=0;D[j+34|0]=0;D[j+35|0]=0;D[j+36|0]=0;l:{if(!Ae(K,j)){break l}b=0;c=0;e=0;v=0;k=0;m=ea-96|0;ea=m;F[m+72>>2]=0;F[m+64>>2]=0;F[m+68>>2]=0;F[m+48>>2]=0;F[m+52>>2]=0;F[m+40>>2]=0;F[m+44>>2]=0;F[m+56>>2]=1065353216;F[m+32>>2]=0;F[m+24>>2]=0;F[m+28>>2]=0;n=1;g=a;M=F[a+124>>2];m:{n:{o:{p:{q:{r:{s:{t:{if((l|0)<=0){break t}z=F[g+216>>2]!=F[g+220>>2];while(1){h=v;v=h+1|0;u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{if(!G[g+308|0]){break E}F:{G:{t=F[g+296>>2];o=F[g+304>>2];a=t+(o>>>3|0)|0;i=F[g+300>>2];if(a>>>0>=i>>>0){break G}d=G[a|0];a=o+1|0;F[g+304>>2]=a;if(!(d>>>(o&7)&1)){break G}r=a>>>3|0;d=t+r|0;H:{if(d>>>0>=i>>>0){d=a;a=0;break H}f=G[d|0];d=o+2|0;F[g+304>>2]=d;r=d>>>3|0;a=f>>>(a&7)&1}f=r+t|0;if(f>>>0>>0){f=G[f|0];F[g+304>>2]=d+1;d=f>>>(d&7)<<1&2}else{d=0}a=(a|d)<<1;switch(a-1|0){case 0:case 2:case 4:break o;case 5:break D;case 1:case 3:break F;default:break E}}if((c|0)==(e|0)){d=-1;break s}r=-1;s=F[g+8>>2];t=F[s+24>>2];i=c-4|0;y=F[i>>2];a=-1;I:{if((y|0)==-1){break I}b=y+1|0;b=(b>>>0)%3|0?b:y-2|0;a=-1;if((b|0)==-1){break I}a=F[F[s>>2]+(b<<2)>>2]}b=a;d=F[t+(b<<2)>>2];if((d|0)!=-1){a=d+1|0;r=(a>>>0)%3|0?a:d-2|0}d=F[s+12>>2];q=L(h,3);a=q+1|0;F[d+(y<<2)>>2]=a;f=a<<2;F[f+d>>2]=y;o=q+2|0;F[d+(r<<2)>>2]=o;h=o<<2;F[h+d>>2]=r;u=-1;a=-1;J:{if((y|0)==-1){break J}K:{if((y>>>0)%3|0){d=y-1|0;break K}d=y+2|0;a=-1;if((d|0)==-1){break J}}a=F[F[s>>2]+(d<<2)>>2]}L:{if((r|0)==-1){break L}d=r+1|0;d=(d>>>0)%3|0?d:r-2|0;if((d|0)==-1){break L}u=F[F[s>>2]+(d<<2)>>2]}d=-1;if((a|0)==(b|0)|(b|0)==(u|0)){break s}d=F[s>>2];F[d+(q<<2)>>2]=b;F[d+f>>2]=u;F[d+h>>2]=a;if((a|0)!=-1){F[t+(a<<2)>>2]=o}d=F[g+120>>2]+(b>>>3&536870908)|0;a=F[d>>2];O=d,P=Jj(b)&a,F[O>>2]=P;F[i>>2]=q;b=e;break u}if((c|0)==(e|0)){d=-1;break s}u=F[g+8>>2];b=F[u+12>>2];q=L(h,3);t=(a|1)==5;i=q+(t?2:1)|0;a=i<<2;f=c-4|0;y=F[f>>2];F[b+a>>2]=y;F[b+(y<<2)>>2]=i;Ra(u+24|0);d=-1;b=F[g+8>>2];o=F[b+24>>2];if((M|0)>2]-o>>2){break s}s=F[b>>2];d=s+a|0;b=F[u+28>>2]-F[u+24>>2]|0;a=(b>>2)-1|0;F[d>>2]=a;if(b){F[o+(a<<2)>>2]=i}i=t?q:q+2|0;d=s+(q+t<<2)|0;M:{if((y|0)==-1){F[s+(i<<2)>>2]=-1;b=-1;break M}N:{O:{P:{if((y>>>0)%3|0){b=y-1|0;break P}b=y+2|0;if((b|0)==-1){break O}}a=F[s+(b<<2)>>2];F[s+(i<<2)>>2]=a;if((a|0)==-1){break N}F[o+(a<<2)>>2]=i;break N}F[s+(i<<2)>>2]=-1}a=y+1|0;a=(a>>>0)%3|0?a:y-2|0;b=-1;if((a|0)==-1){break M}b=F[s+(a<<2)>>2]}F[d>>2]=b;F[f>>2]=q;b=e;break C}if((c|0)==(e|0)){d=-1;break s}a=c-4|0;s=F[a>>2];F[m+68>>2]=a;i=F[m+44>>2];Q:{if(!i){c=a;break Q}f=Ij(i)>>>0>1;R:{if(!f){b=h&i+2147483647;break R}b=h;if(i>>>0>b>>>0){break R}b=(h>>>0)%(i>>>0)|0}d=F[F[m+40>>2]+(b<<2)>>2];if(!d){c=a;break Q}d=F[d>>2];if(!d){c=a;break Q}S:{if(!f){i=i-1|0;while(1){f=F[d+4>>2];T:{if((f|0)!=(h|0)){if((f&i)==(b|0)){break T}c=a;break Q}if((h|0)==F[d+8>>2]){break S}}d=F[d>>2];if(d){continue}break}c=a;break Q}while(1){f=F[d+4>>2];U:{if((f|0)!=(h|0)){if(f>>>0>=i>>>0){f=(f>>>0)%(i>>>0)|0}if((b|0)==(f|0)){break U}c=a;break Q}if((h|0)==F[d+8>>2]){break S}}d=F[d>>2];if(d){continue}break}c=a;break Q}if((a|0)!=(C|0)){F[a>>2]=F[d+12>>2];F[m+68>>2]=c;break Q}f=C-e|0;b=f>>2;c=b+1|0;if(c>>>0>=1073741824){break A}a=f>>1;c=b>>>0<536870911?a>>>0>>0?c:a:1073741823;if(c){if(c>>>0>=1073741824){break n}x=sa(c<<2)}else{x=0}a=x+(b<<2)|0;F[a>>2]=F[d+12>>2];C=(c<<2)+x|0;c=a+4|0;if((f|0)>0){ta(x,e,f)}F[m+72>>2]=C;F[m+68>>2]=c;F[m+64>>2]=x;if(!e){break Q}ra(e)}if((c|0)==(x|0)){break B}f=c-4|0;q=F[f>>2];b=(q|0)==-1;u=F[g+8>>2];if(!b&F[F[u+12>>2]+(q<<2)>>2]!=-1){break B}o=F[u+12>>2];if((s|0)!=-1&F[o+(s<<2)>>2]!=-1){break B}t=L(h,3);h=t+2|0;F[o+(q<<2)>>2]=h;i=h<<2;F[i+o>>2]=q;a=t+1|0;F[o+(s<<2)>>2]=a;e=a<<2;F[e+o>>2]=s;if(b){break z}if((q>>>0)%3|0){n=q-1|0;break x}n=q+2|0;if((n|0)!=-1){break x}r=F[u>>2];b=-1;break w}a=F[g+8>>2];Ra(a+24|0);d=-1;f=F[g+8>>2];s=L(h,3);o=F[a+28>>2]-F[a+24>>2]|0;u=o>>2;i=u-1|0;F[F[f>>2]+(s<<2)>>2]=i;Ra(f+24|0);t=s+1|0;F[F[f>>2]+(t<<2)>>2]=(F[f+28>>2]-F[f+24>>2]>>2)-1;a=F[g+8>>2];Ra(a+24|0);f=s+2|0;F[F[a>>2]+(f<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[g+8>>2];q=F[a+24>>2];if((M|0)>2]-q>>2){break s}V:{W:{if(!o){F[q+(u<<2)>>2]=t;d=1;break W}F[q+(i<<2)>>2]=s;d=0;if((o|0)==-4){break W}F[q+(u<<2)>>2]=t;d=u+1|0;if((d|0)==-1){break V}}F[q+(d<<2)>>2]=f}if((c|0)!=(C|0)){F[c>>2]=s;c=c+4|0;F[m+68>>2]=c;break C}d=c-b|0;e=d>>2;c=e+1|0;if(c>>>0>=1073741824){break y}a=d>>1;c=e>>>0<536870911?a>>>0>>0?c:a:1073741823;if(c){if(c>>>0>=1073741824){break n}x=sa(c<<2)}else{x=0}a=x+(e<<2)|0;F[a>>2]=s;C=(c<<2)+x|0;c=a+4|0;if((d|0)>0){ta(x,b,d)}F[m+72>>2]=C;F[m+68>>2]=c;F[m+64>>2]=x;if(b){ra(b)}e=x;b=e}d=F[g+40>>2];if((d|0)==F[g+36>>2]){break u}i=(h^-1)+l|0;f=c-4|0;while(1){a=F[d-8>>2];if(a>>>0>i>>>0){break B}if((a|0)!=(i|0)){break u}h=G[d-4|0];a=d-12|0;d=F[a>>2];F[g+40>>2]=a;if((d|0)<0){break B}t=F[f>>2];F[m+20>>2]=(d^-1)+l;a=m+20|0;F[m+88>>2]=a;_c(m,m+40|0,a,m+88|0);d=F[m>>2];X:{if(h&1){a=-1;if((t|0)==-1){break X}a=t+1|0;a=(a>>>0)%3|0?a:t-2|0;break X}a=-1;if((t|0)==-1){break X}a=t-1|0;if((t>>>0)%3|0){break X}a=t+2|0}F[d+12>>2]=a;d=F[g+40>>2];if((d|0)!=F[g+36>>2]){continue}break}break u}d=-1;if(n&1){break s}break t}va();V()}b=-1;r=F[u>>2];F[r+(t<<2)>>2]=-1;d=-1;break v}va();V()}r=F[u>>2];b=F[r+(n<<2)>>2]}F[(t<<2)+r>>2]=b;a=q+1|0;a=(a>>>0)%3|0?a:q-2|0;d=-1;if((a|0)==-1){break v}d=F[(a<<2)+r>>2]}F[e+r>>2]=d;Y:{if((s|0)==-1){F[i+r>>2]=-1;n=-1;d=-1;break Y}Z:{_:{$:{if((s>>>0)%3|0){d=s-1|0;break $}d=s+2|0;if((d|0)==-1){break _}}a=F[(d<<2)+r>>2];F[i+r>>2]=a;if((a|0)==-1){break Z}F[F[u+24>>2]+(a<<2)>>2]=h;break Z}F[i+r>>2]=-1}n=-1;a=s+1|0;a=(a>>>0)%3|0?a:s-2|0;d=-1;if((a|0)==-1){break Y}n=F[(a<<2)+r>>2];d=a}a=F[u+24>>2];h=a+(n<<2)|0;if((b|0)!=-1){F[a+(b<<2)>>2]=F[h>>2]}aa:{if((d|0)==-1){break aa}while(1){F[(d<<2)+r>>2]=b;a=d+1|0;a=(a>>>0)%3|0?a:d-2|0;if((a|0)==-1){break aa}e=F[o+(a<<2)>>2];if((e|0)==-1){break aa}a=e+1|0;d=(a>>>0)%3|0?a:e-2|0;if((d|0)!=-1){continue}break}}F[h>>2]=-1;ba:{if(z){break ba}if((A|0)!=(B|0)){F[B>>2]=n;B=B+4|0;F[m+28>>2]=B;break ba}ca:{h=A-k|0;e=h>>2;b=e+1|0;if(b>>>0<1073741824){a=h>>1;d=e>>>0<536870911?a>>>0>>0?b:a:1073741823;if(d){if(d>>>0>=1073741824){break ca}a=sa(d<<2)}else{a=0}b=a+(e<<2)|0;F[b>>2]=n;A=a+(d<<2)|0;B=b+4|0;if((h|0)>0){ta(a,k,h)}F[m+32>>2]=A;F[m+28>>2]=B;F[m+24>>2]=a;if(k){ra(k)}k=a;break ba}va();V()}break n}F[f>>2]=t;e=x;b=e}n=(l|0)>(v|0);if((l|0)!=(v|0)){continue}break}v=l}d=-1;n=F[g+8>>2];if((M|0)>2]-F[n+24>>2]>>2){break s}if((c|0)!=(x|0)){e=g+60|0;t=g+312|0;while(1){c=c-4|0;o=F[c>>2];F[m+68>>2]=c;da:{ea:{fa:{ga:{if(H[g+270>>1]<=513){if(!G[g+364|0]){break fa}b=F[g+360>>2];a=F[g+352>>2]+(b>>>3|0)|0;if(a>>>0>=I[g+356>>2]){break ea}a=G[a|0];F[g+360>>2]=b+1;a=a>>>(b&7)&1;break ga}a=Ga(t)}if(!a){break ea}}z=F[g+8>>2];q=F[z>>2];if(((F[z+4>>2]-q>>2>>>0)/3|0)<=(v|0)){break s}a=-1;b=-1;i=F[z+24>>2];h=-1;ha:{if((o|0)==-1){break ha}f=o+1|0;f=(f>>>0)%3|0?f:o-2|0;h=-1;if((f|0)==-1){break ha}h=F[q+(f<<2)>>2]}l=F[i+(h<<2)>>2];ia:{if((l|0)==-1){break ia}f=l+1|0;f=(f>>>0)%3|0?f:l-2|0;if((f|0)==-1){break ia}a=f+1|0;a=(a>>>0)%3|0?a:f-2|0;if((a|0)!=-1){b=F[q+(a<<2)>>2]}a=f}n=-1;r=-1;i=F[i+(b<<2)>>2];l=-1;ja:{if((i|0)==-1){break ja}f=i+1|0;f=(f>>>0)%3|0?f:i-2|0;l=-1;if((f|0)==-1){break ja}l=f+1|0;l=(l>>>0)%3|0?l:f-2|0;if((l|0)!=-1){r=F[q+(l<<2)>>2]}l=f}A=F[z+12>>2];u=L(v,3);i=u<<2;F[A+i>>2]=o;F[A+(o<<2)>>2]=u;o=u+1|0;f=o<<2;F[f+A>>2]=a;F[A+(a<<2)>>2]=o;z=u+2|0;a=z<<2;F[a+A>>2]=l;F[A+(l<<2)>>2]=z;F[i+q>>2]=b;l=f+q|0;F[l>>2]=r;f=a+q|0;F[f>>2]=h;i=F[g+120>>2];h=o>>>0>>0?-1:b;b=i+(h>>>3&536870908)|0;a=F[b>>2];O=b,P=Jj(h)&a,F[O>>2]=P;n=(o|0)!=-1?F[l>>2]:n;b=i+(n>>>3&536870908)|0;a=F[b>>2];O=b,P=Jj(n)&a,F[O>>2]=P;n=-1;n=(z|0)!=-1?F[f>>2]:n;b=i+(n>>>3&536870908)|0;a=F[b>>2];O=b,P=Jj(n)&a,F[O>>2]=P;n=F[g+64>>2];a=F[g+68>>2];if((n|0)==a<<5){if((n+1|0)<0){break r}if(n>>>0<=1073741822){b=n+32&-32;a=a<<6;a=a>>>0>>0?b:a}else{a=2147483647}cb(e,a);n=F[g+64>>2]}v=v+1|0;F[g+64>>2]=n+1;a=F[g+60>>2]+(n>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>2];if((a|0)!=F[g+80>>2]){F[a>>2]=u;F[g+76>>2]=a+4;break da}i=F[g+72>>2];l=a-i|0;h=l>>2;b=h+1|0;if(b>>>0>=1073741824){break q}a=l>>1;f=h>>>0<536870911?a>>>0>>0?b:a:1073741823;if(f){if(f>>>0>=1073741824){break n}a=sa(f<<2)}else{a=0}b=a+(h<<2)|0;F[b>>2]=u;if((l|0)>0){ta(a,i,l)}F[g+80>>2]=a+(f<<2);F[g+76>>2]=b+4;F[g+72>>2]=a;if(!i){break da}ra(i);break da}a=F[g+64>>2];h=F[g+68>>2];if((a|0)==h<<5){if((a+1|0)<0){break r}if(a>>>0<=1073741822){b=a+32&-32;a=h<<6;a=a>>>0>>0?b:a}else{a=2147483647}cb(e,a);a=F[g+64>>2]}F[g+64>>2]=a+1;h=F[g+60>>2]+(a>>>3&536870908)|0;b=F[h>>2];O=h,P=Jj(a)&b,F[O>>2]=P;a=F[g+76>>2];if((a|0)!=F[g+80>>2]){F[a>>2]=o;F[g+76>>2]=a+4;break da}i=F[g+72>>2];l=a-i|0;h=l>>2;b=h+1|0;if(b>>>0>=1073741824){break q}a=l>>1;f=h>>>0<536870911?a>>>0>>0?b:a:1073741823;if(f){if(f>>>0>=1073741824){break p}a=sa(f<<2)}else{a=0}b=a+(h<<2)|0;F[b>>2]=o;if((l|0)>0){ta(a,i,l)}F[g+80>>2]=a+(f<<2);F[g+76>>2]=b+4;F[g+72>>2]=a;if(!i){break da}ra(i)}if((c|0)!=(x|0)){continue}break}n=F[g+8>>2]}if(((F[n+4>>2]-F[n>>2]>>2>>>0)/3|0)!=(v|0)){break s}v=F[n+24>>2];d=F[n+28>>2]-v>>2;if((k|0)==(B|0)){k=B;break s}b=k;while(1){e=F[b>>2];c=d-1|0;r=(c<<2)+v|0;if(F[r>>2]==-1){while(1){c=d-2|0;d=d-1|0;r=(c<<2)+v|0;if(F[r>>2]==-1){continue}break}}if(c>>>0>=e>>>0){F[m>>2]=n;v=F[r>>2];D[m+12|0]=1;F[m+8>>2]=v;F[m+4>>2]=v;if((v|0)!=-1){while(1){F[F[n>>2]+(v<<2)>>2]=e;tc(m);n=F[g+8>>2];v=F[m+8>>2];if((v|0)!=-1){continue}break}}v=F[n+24>>2];a=v+(c<<2)|0;if((e|0)!=-1){F[(e<<2)+v>>2]=F[a>>2]}F[a>>2]=-1;f=1<>2];e=a+(e>>>3&536870908)|0;h=a+(c>>>3&536870908)|0;a=1<>2]&a){c=f|F[e>>2]}else{c=F[e>>2]&(f^-1)}F[e>>2]=c;F[h>>2]=F[h>>2]&(a^-1);d=d-1|0}b=b+4|0;if((B|0)!=(b|0)){continue}break}}if(k){ra(k)}a=F[m+48>>2];if(a){while(1){c=F[a>>2];ra(a);a=c;if(a){continue}break}}a=F[m+40>>2];F[m+40>>2]=0;if(a){ra(a)}if(x){F[m+68>>2]=x;ra(x)}ea=m+96|0;break m}va();V()}va();V()}wa(1336)}V()}wa(1336);V()}if((d|0)==-1){break l}a=F[j+16>>2];b=a+F[j>>2]|0;c=F[j+8>>2];a=c-a|0;c=F[F[g+4>>2]+32>>2];E[c+38>>1]=H[c+38>>1];F[c>>2]=b;F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=a;F[c+12>>2]=0;b=F[g+4>>2];a=H[b+36>>1];c=a<<8|a>>>8;if((c&65535)>>>0<=513){a=F[b+32>>2];h=N+F[a+20>>2]|0;b=p+F[a+16>>2]|0;h=b>>>0

>>0?h+1|0:h;F[a+16>>2]=b;F[a+20>>2]=h}ka:{if(F[g+216>>2]==F[g+220>>2]){break ka}a=F[g+8>>2];b=F[a>>2];a=F[a+4>>2];la:{if((c&65535)>>>0>=513){if((a|0)==(b|0)){break ka}c=0;break la}if((a|0)==(b|0)){break ka}c=0;while(1){if(cd(g,c)){c=c+3|0;a=F[g+8>>2];if(c>>>0>2]-F[a>>2]>>2>>>0){continue}break ka}break}break l}while(1){if(bd(g,c)){c=c+3|0;a=F[g+8>>2];if(c>>>0>2]-F[a>>2]>>2>>>0){continue}break ka}break}break l}ad(K);c=F[g+216>>2];if((c|0)!=F[g+220>>2]){e=0;while(1){b=L(e,144);Ic((b+c|0)+4|0,F[g+8>>2]);w=F[J>>2];a=b+w|0;c=F[a+132>>2];a=F[a+136>>2];if((c|0)!=(a|0)){while(1){Gc((b+w|0)+4|0,F[c>>2]);w=F[J>>2];c=c+4|0;if((a|0)!=(c|0)){continue}break}}Hc((b+w|0)+4|0);e=e+1|0;c=F[g+216>>2];if(e>>>0<(F[g+220>>2]-c|0)/144>>>0){continue}break}}a=F[g+8>>2];Gb(g+184|0,F[a+28>>2]-F[a+24>>2]>>2);w=F[g+216>>2];if((w|0)!=F[g+220>>2]){c=0;while(1){a=L(c,144)+w|0;b=F[a+60>>2]-F[a+56>>2]>>2;e=a+104|0;a=F[g+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Gb(e,(a|0)>(b|0)?a:b);c=c+1|0;w=F[g+216>>2];if(c>>>0<(F[g+220>>2]-w|0)/144>>>0){continue}break}}w=$c(g,d)}break b}w=0}ea=j- -64|0;return w|0}function kg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;a:{b:{c:{d:{e:{switch(d-1|0){case 0:a=0;l=ea-16|0;ea=l;j=F[b+80>>2];g=D[c+24|0];f:{if((L(j,g)|0)!=(e|0)){break f}b=F[c+28>>2]!=1;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break f}d=0;F[l+8>>2]=0;F[l>>2]=0;F[l+4>>2]=0;if(g){if((g|0)<0){break d}h=sa(g);F[l>>2]=h;ua(h,0,g)}g:{h:{if(!j){break h}if(!b){if(g){o=g&-4;k=g&3;b=0;s=g-1>>>0<3;while(1){e=F[F[c>>2]>>2];q=F[c+40>>2];a=F[c+48>>2]+Fj(q,F[c+44>>2],a&255?d:F[F[c+68>>2]+(d<<2)>>2],0)|0;e=ta(h,e+a|0,q);m=0;a=0;i=0;if(!s){while(1){g=b+f|0;D[g|0]=G[a+e|0];D[g+1|0]=G[e+(a|1)|0];D[g+2|0]=G[e+(a|2)|0];D[g+3|0]=G[e+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((o|0)!=(i|0)){continue}break}}if(k){while(1){D[b+f|0]=G[a+e|0];a=a+1|0;b=b+1|0;m=m+1|0;if((k|0)!=(m|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break g}a=G[c+84|0];continue}}m=F[c>>2];e=F[c+48>>2];s=F[c+68>>2];f=F[c+44>>2];c=F[c+40>>2];q=c;b=0;if((j|0)!=1){p=j&-2;r=a&255;while(1){g=b|1;n=F[m>>2];k=Fj(c,f,r?b:F[s+(b<<2)>>2],0)+e|0;k=ta(h,n+k|0,q);n=F[m>>2];if(!r){g=F[s+(g<<2)>>2]}g=Fj(c,f,g,0)+e|0;ta(k,g+n|0,q);b=b+2|0;i=i+2|0;if((p|0)!=(i|0)){continue}break}}if(!(j&1)){break h}g=F[m>>2];if(!(a&255)){b=F[s+(b<<2)>>2]}a=Fj(c,f,b,0)+e|0;ta(h,a+g|0,q);break h}if(!g){b=0;d=1;while(1){if(!ic(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break h}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break h}a=G[c+84|0];continue}}i=g&-4;k=g&3;b=0;o=g-1>>>0<3;d=1;e=0;while(1){if(!ic(c,a&255?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],h)){break h}d=0;a=0;m=0;if(!o){while(1){g=b+f|0;D[g|0]=G[a+h|0];D[g+1|0]=G[(a|1)+h|0];D[g+2|0]=G[(a|2)+h|0];D[g+3|0]=G[(a|3)+h|0];a=a+4|0;b=b+4|0;m=m+4|0;if((i|0)!=(m|0)){continue}break}}if(k){while(1){D[b+f|0]=G[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}e=e+1|0;if((j|0)!=(e|0)){d=e>>>0>>0;a=G[c+84|0];continue}break}a=e>>>0>=j>>>0;break g}a=d^1;if(!h){break f}}ra(h)}break c;case 2:a=0;m=ea-16|0;ea=m;d=D[c+24|0];g=d<<1;j=F[b+80>>2];i:{if((L(g,j)|0)!=(e|0)){break i}b=F[c+28>>2]!=3;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break i}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,g)}j:{k:{if(!j){break k}if(!b){o=F[c>>2];g=F[c+48>>2];q=F[c+68>>2];k=F[c+44>>2];l=F[c+40>>2];r=l;if(d){u=d&-4;t=d&3;b=0;v=a&255;w=d-1>>>0<3;d=0;while(1){c=F[o>>2];a=Fj(l,k,v?d:F[q+(d<<2)>>2],0)+g|0;i=ta(h,c+a|0,r);e=0;a=0;c=0;if(!w){while(1){p=(b<<1)+f|0;n=a<<1;E[p>>1]=H[n+i>>1];E[p+2>>1]=H[i+(n|2)>>1];E[p+4>>1]=H[i+(n|4)>>1];E[p+6>>1]=H[i+(n|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((u|0)!=(c|0)){continue}break}}if(t){while(1){E[(b<<1)+f>>1]=H[i+(a<<1)>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break j}b=0;if((j|0)!=1){p=j&-2;f=a&255;d=0;while(1){c=b|1;n=F[o>>2];e=Fj(l,k,f?b:F[q+(b<<2)>>2],0)+g|0;e=ta(h,n+e|0,r);n=F[o>>2];if(!f){c=F[q+(c<<2)>>2]}c=Fj(l,k,c,0)+g|0;ta(e,c+n|0,r);b=b+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(j&1)){break k}c=F[o>>2];if(!(a&255)){b=F[q+(b<<2)>>2]}a=Fj(l,k,b,0)+g|0;ta(h,a+c|0,r);break k}if(!d){b=0;i=1;while(1){if(!gc(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break k}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break k}a=G[c+84|0];continue}}o=d&-4;l=d&3;b=0;s=d-1>>>0<3;i=1;d=0;while(1){if(!gc(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break k}i=0;a=0;e=0;if(!s){while(1){g=(b<<1)+f|0;k=a<<1;E[g>>1]=H[k+h>>1];E[g+2>>1]=H[(k|2)+h>>1];E[g+4>>1]=H[(k|4)+h>>1];E[g+6>>1]=H[(k|6)+h>>1];a=a+4|0;b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}if(l){while(1){E[(b<<1)+f>>1]=H[(a<<1)+h>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break j}a=i^1;if(!h){break i}}ra(h)}break b;case 4:a=0;m=ea-16|0;ea=m;d=D[c+24|0];g=d<<2;j=F[b+80>>2];l:{if((L(g,j)|0)!=(e|0)){break l}b=F[c+28>>2]!=5;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break l}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,g)}m:{n:{if(!j){break n}if(!b){o=F[c>>2];g=F[c+48>>2];q=F[c+68>>2];k=F[c+44>>2];l=F[c+40>>2];r=l;if(d){u=d&-4;t=d&3;b=0;v=a&255;w=d-1>>>0<3;d=0;while(1){c=F[o>>2];a=Fj(l,k,v?d:F[q+(d<<2)>>2],0)+g|0;i=ta(h,c+a|0,r);e=0;a=0;c=0;if(!w){while(1){p=(b<<2)+f|0;n=a<<2;F[p>>2]=F[n+i>>2];F[p+4>>2]=F[i+(n|4)>>2];F[p+8>>2]=F[i+(n|8)>>2];F[p+12>>2]=F[i+(n|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((u|0)!=(c|0)){continue}break}}if(t){while(1){F[(b<<2)+f>>2]=F[i+(a<<2)>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break m}b=0;if((j|0)!=1){p=j&-2;f=a&255;d=0;while(1){c=b|1;n=F[o>>2];e=Fj(l,k,f?b:F[q+(b<<2)>>2],0)+g|0;e=ta(h,n+e|0,r);n=F[o>>2];if(!f){c=F[q+(c<<2)>>2]}c=Fj(l,k,c,0)+g|0;ta(e,c+n|0,r);b=b+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(j&1)){break n}c=F[o>>2];if(!(a&255)){b=F[q+(b<<2)>>2]}a=Fj(l,k,b,0)+g|0;ta(h,a+c|0,r);break n}if(!d){b=0;i=1;while(1){if(!ec(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break n}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break n}a=G[c+84|0];continue}}o=d&-4;l=d&3;b=0;s=d-1>>>0<3;i=1;d=0;while(1){if(!ec(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break n}i=0;a=0;e=0;if(!s){while(1){g=(b<<2)+f|0;k=a<<2;F[g>>2]=F[k+h>>2];F[g+4>>2]=F[(k|4)+h>>2];F[g+8>>2]=F[(k|8)+h>>2];F[g+12>>2]=F[(k|12)+h>>2];a=a+4|0;b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}if(l){while(1){F[(b<<2)+f>>2]=F[(a<<2)+h>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break m}a=i^1;if(!h){break l}}ra(h)}break b;case 1:a=0;l=ea-16|0;ea=l;j=F[b+80>>2];g=D[c+24|0];o:{if((L(j,g)|0)!=(e|0)){break o}b=F[c+28>>2]!=2;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break o}d=0;F[l+8>>2]=0;F[l>>2]=0;F[l+4>>2]=0;if(g){if((g|0)<0){break d}h=sa(g);F[l>>2]=h;ua(h,0,g)}p:{q:{if(!j){break q}if(!b){if(g){o=g&-4;k=g&3;b=0;s=g-1>>>0<3;while(1){e=F[F[c>>2]>>2];q=F[c+40>>2];a=F[c+48>>2]+Fj(q,F[c+44>>2],a&255?d:F[F[c+68>>2]+(d<<2)>>2],0)|0;e=ta(h,e+a|0,q);m=0;a=0;i=0;if(!s){while(1){g=b+f|0;D[g|0]=G[a+e|0];D[g+1|0]=G[e+(a|1)|0];D[g+2|0]=G[e+(a|2)|0];D[g+3|0]=G[e+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((o|0)!=(i|0)){continue}break}}if(k){while(1){D[b+f|0]=G[a+e|0];a=a+1|0;b=b+1|0;m=m+1|0;if((k|0)!=(m|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break p}a=G[c+84|0];continue}}m=F[c>>2];e=F[c+48>>2];s=F[c+68>>2];f=F[c+44>>2];c=F[c+40>>2];q=c;b=0;if((j|0)!=1){p=j&-2;r=a&255;while(1){g=b|1;n=F[m>>2];k=Fj(c,f,r?b:F[s+(b<<2)>>2],0)+e|0;k=ta(h,n+k|0,q);n=F[m>>2];if(!r){g=F[s+(g<<2)>>2]}g=Fj(c,f,g,0)+e|0;ta(k,g+n|0,q);b=b+2|0;i=i+2|0;if((p|0)!=(i|0)){continue}break}}if(!(j&1)){break q}g=F[m>>2];if(!(a&255)){b=F[s+(b<<2)>>2]}a=Fj(c,f,b,0)+e|0;ta(h,a+g|0,q);break q}if(!g){b=0;d=1;while(1){if(!hc(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break q}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break q}a=G[c+84|0];continue}}i=g&-4;k=g&3;b=0;o=g-1>>>0<3;d=1;e=0;while(1){if(!hc(c,a&255?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],h)){break q}d=0;a=0;m=0;if(!o){while(1){g=b+f|0;D[g|0]=G[a+h|0];D[g+1|0]=G[(a|1)+h|0];D[g+2|0]=G[(a|2)+h|0];D[g+3|0]=G[(a|3)+h|0];a=a+4|0;b=b+4|0;m=m+4|0;if((i|0)!=(m|0)){continue}break}}if(k){while(1){D[b+f|0]=G[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}e=e+1|0;if((j|0)!=(e|0)){d=e>>>0>>0;a=G[c+84|0];continue}break}a=e>>>0>=j>>>0;break p}a=d^1;if(!h){break o}}ra(h)}break c;case 3:a=0;m=ea-16|0;ea=m;d=D[c+24|0];g=d<<1;j=F[b+80>>2];r:{if((L(g,j)|0)!=(e|0)){break r}b=F[c+28>>2]!=4;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break r}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,g)}s:{t:{if(!j){break t}if(!b){o=F[c>>2];g=F[c+48>>2];q=F[c+68>>2];k=F[c+44>>2];l=F[c+40>>2];r=l;if(d){u=d&-4;t=d&3;b=0;v=a&255;w=d-1>>>0<3;d=0;while(1){c=F[o>>2];a=Fj(l,k,v?d:F[q+(d<<2)>>2],0)+g|0;i=ta(h,c+a|0,r);e=0;a=0;c=0;if(!w){while(1){p=(b<<1)+f|0;n=a<<1;E[p>>1]=H[n+i>>1];E[p+2>>1]=H[i+(n|2)>>1];E[p+4>>1]=H[i+(n|4)>>1];E[p+6>>1]=H[i+(n|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((u|0)!=(c|0)){continue}break}}if(t){while(1){E[(b<<1)+f>>1]=H[i+(a<<1)>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break s}b=0;if((j|0)!=1){p=j&-2;f=a&255;d=0;while(1){c=b|1;n=F[o>>2];e=Fj(l,k,f?b:F[q+(b<<2)>>2],0)+g|0;e=ta(h,n+e|0,r);n=F[o>>2];if(!f){c=F[q+(c<<2)>>2]}c=Fj(l,k,c,0)+g|0;ta(e,c+n|0,r);b=b+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(j&1)){break t}c=F[o>>2];if(!(a&255)){b=F[q+(b<<2)>>2]}a=Fj(l,k,b,0)+g|0;ta(h,a+c|0,r);break t}if(!d){b=0;i=1;while(1){if(!fc(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break t}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break t}a=G[c+84|0];continue}}o=d&-4;l=d&3;b=0;s=d-1>>>0<3;i=1;d=0;while(1){if(!fc(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break t}i=0;a=0;e=0;if(!s){while(1){g=(b<<1)+f|0;k=a<<1;E[g>>1]=H[k+h>>1];E[g+2>>1]=H[(k|2)+h>>1];E[g+4>>1]=H[(k|4)+h>>1];E[g+6>>1]=H[(k|6)+h>>1];a=a+4|0;b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}if(l){while(1){E[(b<<1)+f>>1]=H[(a<<1)+h>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break s}a=i^1;if(!h){break r}}ra(h)}break b;case 5:a=0;m=ea-16|0;ea=m;d=D[c+24|0];g=d<<2;j=F[b+80>>2];u:{if((L(g,j)|0)!=(e|0)){break u}b=F[c+28>>2]!=6;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break u}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,g)}v:{w:{if(!j){break w}if(!b){o=F[c>>2];g=F[c+48>>2];q=F[c+68>>2];k=F[c+44>>2];l=F[c+40>>2];r=l;if(d){u=d&-4;t=d&3;b=0;v=a&255;w=d-1>>>0<3;d=0;while(1){c=F[o>>2];a=Fj(l,k,v?d:F[q+(d<<2)>>2],0)+g|0;i=ta(h,c+a|0,r);e=0;a=0;c=0;if(!w){while(1){p=(b<<2)+f|0;n=a<<2;F[p>>2]=F[n+i>>2];F[p+4>>2]=F[i+(n|4)>>2];F[p+8>>2]=F[i+(n|8)>>2];F[p+12>>2]=F[i+(n|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((u|0)!=(c|0)){continue}break}}if(t){while(1){F[(b<<2)+f>>2]=F[i+(a<<2)>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break v}b=0;if((j|0)!=1){p=j&-2;f=a&255;d=0;while(1){c=b|1;n=F[o>>2];e=Fj(l,k,f?b:F[q+(b<<2)>>2],0)+g|0;e=ta(h,n+e|0,r);n=F[o>>2];if(!f){c=F[q+(c<<2)>>2]}c=Fj(l,k,c,0)+g|0;ta(e,c+n|0,r);b=b+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(j&1)){break w}c=F[o>>2];if(!(a&255)){b=F[q+(b<<2)>>2]}a=Fj(l,k,b,0)+g|0;ta(h,a+c|0,r);break w}if(!d){b=0;i=1;while(1){if(!dc(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break w}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break w}a=G[c+84|0];continue}}o=d&-4;l=d&3;b=0;s=d-1>>>0<3;i=1;d=0;while(1){if(!dc(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break w}i=0;a=0;e=0;if(!s){while(1){g=(b<<2)+f|0;k=a<<2;F[g>>2]=F[k+h>>2];F[g+4>>2]=F[(k|4)+h>>2];F[g+8>>2]=F[(k|8)+h>>2];F[g+12>>2]=F[(k|12)+h>>2];a=a+4|0;b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}if(l){while(1){F[(b<<2)+f>>2]=F[(a<<2)+h>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break v}a=i^1;if(!h){break u}}ra(h)}break b;case 8:break e;default:break a}}a=0;o=ea-16|0;ea=o;k=D[c+24|0];d=k<<2;j=F[b+80>>2];x:{if((L(d,j)|0)!=(e|0)){break x}e=F[c+28>>2];F[o+8>>2]=0;F[o>>2]=0;F[o+4>>2]=0;b=0;y:{z:{A:{B:{if(!k){break B}if((k|0)<0){break A}b=sa(d);F[o>>2]=b;g=(k<<2)+b|0;F[o+8>>2]=g;d=d-4|0;l=(d>>>2|0)+1&7;C:{if(!l){a=b;break C}a=b;while(1){F[a>>2]=-1073741824;a=a+4|0;h=h+1|0;if((l|0)!=(h|0)){continue}break}}if(d>>>0<28){break B}while(1){F[a+24>>2]=-1073741824;F[a+28>>2]=-1073741824;F[a+16>>2]=-1073741824;F[a+20>>2]=-1073741824;F[a+8>>2]=-1073741824;F[a+12>>2]=-1073741824;F[a>>2]=-1073741824;F[a+4>>2]=-1073741824;a=a+32|0;if((g|0)!=(a|0)){continue}break}}if(!j){break z}if((e|0)==9){a=0;s=F[c>>2];d=F[c+48>>2];r=F[c+68>>2];p=G[c+84|0];e=F[c+44>>2];g=F[c+40>>2];n=g;if((k|0)<=0){if((j|0)!=1){k=j&-2;c=0;while(1){f=a|1;l=F[s>>2];h=Fj(g,e,p?a:F[r+(a<<2)>>2],0)+d|0;h=ta(b,l+h|0,n);l=F[s>>2];if(!p){f=F[r+(f<<2)>>2]}f=Fj(g,e,f,0)+d|0;ta(h,f+l|0,n);a=a+2|0;c=c+2|0;if((k|0)!=(c|0)){continue}break}}if(!(j&1)){break z}c=F[s>>2];if(!p){a=F[r+(a<<2)>>2]}a=Fj(g,e,a,0)+d|0;ta(b,a+c|0,n);break z}v=k&-4;t=k&3;h=0;w=k-1>>>0<3;while(1){c=F[s>>2];a=Fj(g,e,p?i:F[r+(i<<2)>>2],0)+d|0;c=ta(b,c+a|0,n);l=0;a=0;u=0;if(!w){while(1){k=(h<<2)+f|0;m=a<<2;J[k>>2]=J[m+c>>2];J[k+4>>2]=J[c+(m|4)>>2];J[k+8>>2]=J[c+(m|8)>>2];J[k+12>>2]=J[c+(m|12)>>2];a=a+4|0;h=h+4|0;u=u+4|0;if((v|0)!=(u|0)){continue}break}}if(t){while(1){J[(h<<2)+f>>2]=J[c+(a<<2)>>2];a=a+1|0;h=h+1|0;l=l+1|0;if((t|0)!=(l|0)){continue}break}}a=1;i=i+1|0;if((j|0)!=(i|0)){continue}break}break y}m=1;if((k|0)<=0){a=0;while(1){if(!Wa(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],b)){break z}a=a+1|0;m=j>>>0>a>>>0;if((a|0)!=(j|0)){continue}break}break z}s=k&-4;g=k&3;h=0;k=k-1>>>0<3;while(1){if(!Wa(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],b)){break z}m=0;a=0;l=0;if(!k){while(1){d=(h<<2)+f|0;e=a<<2;J[d>>2]=J[e+b>>2];J[d+4>>2]=J[(e|4)+b>>2];J[d+8>>2]=J[(e|8)+b>>2];J[d+12>>2]=J[(e|12)+b>>2];a=a+4|0;h=h+4|0;l=l+4|0;if((s|0)!=(l|0)){continue}break}}if(g){while(1){J[(h<<2)+f>>2]=J[(a<<2)+b>>2];a=a+1|0;h=h+1|0;m=m+1|0;if((g|0)!=(m|0)){continue}break}}i=i+1|0;m=j>>>0>i>>>0;if((i|0)!=(j|0)){continue}break}a=i>>>0>=j>>>0;break y}va();V()}a=m^1;if(!b){break x}}ra(b)}ea=o+16|0;h=a&1;break a}va();V()}ea=l+16|0;h=a&1;break a}ea=m+16|0;h=a&1}return h|0}function vg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,M=0,N=0;z=c;c=0;m=ea-96|0;ea=m;k=m+16|0;ua(k,0,76);F[m+92>>2]=-1;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;r=ea-16|0;ea=r;F[k+68>>2]=0;F[k+72>>2]=0;F[k>>2]=b;t=ea-16|0;ea=t;x=b;a=F[b+20>>2];a:{if((F[b+24>>2]-a|0)<=0){break a}a=F[a>>2];if((a|0)==-1){break a}c=F[F[b+8>>2]+(a<<2)>>2]}b:{c:{d:{if(!c){a=0;break d}a=F[x+100>>2];f=F[x+96>>2];F[t+8>>2]=0;F[t>>2]=0;F[t+4>>2]=0;h=a-f|0;b=(h|0)/12|0;e:{if(!h){break e}if(b>>>0>=357913942){break c}d=sa(h);F[t>>2]=d;F[t+8>>2]=d+L(b,12);a=0;i=d;d=L((h-12>>>0)/12|0,12)+12|0;h=ua(i,0,d);F[t+4>>2]=d+h;if(G[c+84|0]){c=b>>>0>1?b:1;d=c&1;if(b>>>0>=2){i=c&-2;while(1){c=L(a,12);b=c+f|0;l=F[b+4>>2];n=F[b>>2];c=c+h|0;F[c+8>>2]=F[b+8>>2];F[c>>2]=n;F[c+4>>2]=l;c=L(a|1,12);b=c+f|0;l=F[b+8>>2];n=F[b+4>>2];c=c+h|0;F[c>>2]=F[b>>2];F[c+4>>2]=n;F[c+8>>2]=l;a=a+2|0;e=e+2|0;if((i|0)!=(e|0)){continue}break}}if(!d){break e}b=L(a,12);a=b+f|0;c=F[a+4>>2];e=F[a>>2];b=b+h|0;F[b+8>>2]=F[a+8>>2];F[b>>2]=e;F[b+4>>2]=c;break e}d=b>>>0>1?b:1;a=F[c+68>>2];while(1){c=L(e,12);b=c+f|0;i=F[a+(F[b>>2]<<2)>>2];l=F[a+(F[b+4>>2]<<2)>>2];c=c+h|0;F[c+8>>2]=F[a+(F[b+8>>2]<<2)>>2];F[c+4>>2]=l;F[c>>2]=i;e=e+1|0;if((d|0)!=(e|0)){continue}break}}C=ea-16|0;ea=C;d=sa(88);F[d>>2]=0;F[d+4>>2]=0;F[d+56>>2]=0;F[d+48>>2]=0;F[d+52>>2]=0;F[d+40>>2]=0;F[d+44>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;F[d+24>>2]=0;F[d+28>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;a=d- -64|0;F[a>>2]=0;F[a+4>>2]=0;F[d+72>>2]=0;F[d+76>>2]=0;F[d+80>>2]=0;F[d+84>>2]=0;F[d+60>>2]=d;A=ea-16|0;ea=A;F[d+80>>2]=0;F[d+84>>2]=0;a=F[d+76>>2];F[d+76>>2]=0;if(a){ra(a)}F[d+68>>2]=0;F[d+72>>2]=0;b=d- -64|0;a=F[b>>2];F[b>>2]=0;if(a){ra(a)}e=F[t>>2];b=F[t+4>>2]-e|0;l=(b|0)/12|0;a=L(l,3);c=F[d>>2];f=F[d+4>>2]-c>>2;f:{if(a>>>0>f>>>0){Aa(d,a-f|0);e=F[t>>2];b=F[t+4>>2]-e|0;l=(b|0)/12|0;c=F[d>>2];break f}if(a>>>0>=f>>>0){break f}F[d+4>>2]=(a<<2)+c}if(b){h=l>>>0>1?l:1;a=0;while(1){f=L(a,12);b=f+c|0;f=f+e|0;F[b>>2]=F[f>>2];F[b+4>>2]=F[f+4>>2];F[b+8>>2]=F[f+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}F[A+12>>2]=-1;f=ea-48|0;ea=f;g:{h:{i:{w=A+12|0;j:{if(!w){break j}i=F[d+4>>2];n=F[d>>2];b=i-n|0;p=b>>2;c=F[d+12>>2];a=F[d+16>>2]-c>>2;k:{if(p>>>0>a>>>0){Ia(d+12|0,p-a|0,13684);i=F[d+4>>2];n=F[d>>2];b=i-n|0;p=b>>2;break k}if(a>>>0<=p>>>0){break k}F[d+16>>2]=c+(p<<2)}c=0;F[f+40>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;l:{if(!b){F[f+24>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;break l}m:{if((b|0)>=0){c=sa(b);F[f+36>>2]=c;F[f+32>>2]=c;F[f+40>>2]=(p<<2)+c;a=c;b=0;while(1){h=F[(b<<2)+n>>2];a=a-c>>2;n:{if(h>>>0>>0){break n}F[f+16>>2]=0;e=h+1|0;if(e>>>0>a>>>0){Ia(f+32|0,e-a|0,f+16|0);n=F[d>>2];i=F[d+4>>2];c=F[f+32>>2];break n}if(a>>>0<=e>>>0){break n}F[f+36>>2]=(e<<2)+c}a=(h<<2)+c|0;F[a>>2]=F[a>>2]+1;b=b+1|0;a=i-n|0;p=a>>2;if(b>>>0>=p>>>0){break m}a=F[f+36>>2];continue}}break i}F[f+24>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;if(!a){break l}if(p>>>0>=536870912){break h}b=a<<1;a=sa(b);F[f+16>>2]=a;e=a+(p<<3)|0;F[f+24>>2]=e;ua(a,255,b);F[f+20>>2]=e}i=0;F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;a=F[f+36>>2]-c|0;h=a>>2;o:{if(!a){break o}if((a|0)<0){break h}s=sa(a);F[f>>2]=s;F[f+8>>2]=(h<<2)+s;b=a;a=ua(s,0,a);F[f+4>>2]=b+a;e=h>>>0>1?h:1;l=e&3;b=0;if(e-1>>>0>=3){q=e&-4;while(1){e=g<<2;F[e+a>>2]=b;y=e|4;b=F[c+e>>2]+b|0;F[y+a>>2]=b;v=e|8;b=b+F[c+y>>2]|0;F[v+a>>2]=b;e=e|12;b=b+F[c+v>>2]|0;F[e+a>>2]=b;b=b+F[c+e>>2]|0;g=g+4|0;j=j+4|0;if((q|0)!=(j|0)){continue}break}}if(!l){break o}while(1){e=g<<2;F[e+a>>2]=b;g=g+1|0;b=F[c+e>>2]+b|0;o=o+1|0;if((l|0)!=(o|0)){continue}break}}if(p){y=F[d+12>>2];while(1){E=i<<2;b=E+n|0;j=-1;e=i+1|0;a=(e>>>0)%3|0?e:i-2|0;if((a|0)!=-1){j=F[(a<<2)+n>>2]}a=F[b>>2];p:{q:{if(!((i>>>0)%3|0)){o=-1;b=i+2|0;if((b|0)!=-1){o=F[(b<<2)+n>>2]}if(!((a|0)==(j|0)|(a|0)==(o|0))&(j|0)!=(o|0)){break q}F[d+40>>2]=F[d+40>>2]+1;e=i+3|0;break p}o=F[b-4>>2]}b=o<<2;v=F[b+c>>2];r:{s:{if((v|0)<=0){break s}l=F[f+16>>2];b=F[b+s>>2];g=0;while(1){q=l+(b<<3)|0;u=F[q>>2];if((u|0)==-1){break s}t:{if((j|0)!=(u|0)){break t}q=F[q+4>>2];if((q|0)!=-1){u=F[(q<<2)+n>>2]}else{u=-1}if((u|0)==(a|0)){break t}while(1){u:{a=b;g=g+1|0;if((v|0)<=(g|0)){break u}u=l+(a<<3)|0;b=a+1|0;H=l+(b<<3)|0;I=F[H>>2];F[u>>2]=I;F[u+4>>2]=F[H+4>>2];if((I|0)!=-1){continue}}break}F[l+(a<<3)>>2]=-1;if((q|0)==-1){break s}F[y+E>>2]=q;F[y+(q<<2)>>2]=i;break r}b=b+1|0;g=g+1|0;if((v|0)!=(g|0)){continue}break}}a=j<<2;l=F[a+c>>2];if((l|0)<=0){break r}j=F[f+16>>2];b=F[a+s>>2];g=0;while(1){a=j+(b<<3)|0;if(F[a>>2]==-1){F[a>>2]=o;F[a+4>>2]=i;break r}b=b+1|0;g=g+1|0;if((l|0)!=(g|0)){continue}break}}}i=e;if(p>>>0>i>>>0){continue}break}}F[w>>2]=h;if(s){ra(s)}a=F[f+16>>2];if(a){F[f+20>>2]=a;ra(a)}a=F[f+32>>2];if(!a){break j}F[f+36>>2]=a;ra(a)}ea=f+48|0;y=(w|0)!=0;if(y){j=ea-32|0;ea=j;o=F[d>>2];a=F[d+4>>2];F[j+24>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;b=a-o|0;v:{if(!b){break v}if((b|0)<0){break h}b=b>>2;g=b-1>>>5|0;e=g+1|0;c=sa(e<<2);F[j+24>>2]=e;F[j+16>>2]=c;F[j+20>>2]=b;F[c+((b>>>0<33?0:g)<<2)>>2]=0;g=c;c=b>>>5<<2;g=ua(g,0,c);b=b&31;if(!b){break v}c=c+g|0;F[c>>2]=F[c>>2]&(-1>>>32-b^-1)}F[j+8>>2]=0;F[j>>2]=0;while(1){w:{p=0;e=0;if((a|0)==(o|0)){break w}while(1){c=F[j+16>>2];x:{if(F[c+(e>>>3&536870908)>>2]>>>e&1){break x}g=F[j>>2];F[j+4>>2]=g;b=F[d+12>>2];a=e;while(1){y:{f=a+1|0;h=a;a=(f>>>0)%3|0?f:a-2|0;if((a|0)==-1){break y}a=F[b+(a<<2)>>2];if((a|0)==-1){break y}f=a+1|0;a=(f>>>0)%3|0?f:a-2|0;if((e|0)==(a|0)|(a|0)==-1){break y}if(!(F[(a>>>3&536870908)+c>>2]>>>a&1)){continue}}break}b=g;l=h;z:{A:{while(1){a=(l>>>3&536870908)+c|0;F[a>>2]=F[a>>2]|1<>>0)%3|0?a:l-2|0;v=(l>>>0)%3|0;n=(v?-1:2)+l|0;q=n<<2;B:{if((b|0)==(g|0)){break B}w=F[(f<<2)+o>>2];s=F[d+12>>2];a=b;if((n|0)!=-1){u=s+q|0;while(1){C:{if((w|0)!=F[a>>2]){break C}c=F[a+4>>2];i=F[u>>2];if((c|0)==(i|0)){break C}g=-1;a=-1;if((c|0)==-1){break z}break A}a=a+8|0;if((g|0)!=(a|0)){continue}break}break B}while(1){if((w|0)==F[a>>2]){i=-1;n=-1;c=F[a+4>>2];if((c|0)!=-1){break A}}a=a+8|0;if((g|0)!=(a|0)){continue}break}}n=F[o+q>>2];D:{if(F[j+8>>2]!=(g|0)){F[g>>2]=n;F[g+4>>2]=f;g=g+8|0;F[j+4>>2]=g;break D}c=g-b|0;g=c>>3;a=g+1|0;if(a>>>0>=536870912){break h}i=c>>2;i=g>>>0<268435455?a>>>0>i>>>0?a:i:536870911;if(i){if(i>>>0>=536870912){break i}a=sa(i<<3)}else{a=0}g=a+(g<<3)|0;F[g>>2]=n;F[g+4>>2]=f;g=g+8|0;if((c|0)>0){ta(a,b,c)}F[j+8>>2]=a+(i<<3);F[j+4>>2]=g;F[j>>2]=a;if(!b){break D}ra(b)}E:{F:{if(v){a=l-1|0;break F}a=l+2|0;if((a|0)==-1){break E}}a=F[F[d+12>>2]+(a<<2)>>2];if((a|0)==-1){break E}l=a+((a>>>0)%3|0?-1:2)|0;if((h|0)==(l|0)|(l|0)==-1){break E}o=F[d>>2];b=F[j>>2];c=F[j+16>>2];continue}break}o=F[d>>2];break x}g=c;a=F[s+(c<<2)>>2]}if((i|0)!=-1){F[s+(i<<2)>>2]=-1}if((a|0)!=-1){F[F[d+12>>2]+(a<<2)>>2]=-1}a=F[d+12>>2];F[a+(n<<2)>>2]=-1;F[a+(g<<2)>>2]=-1;p=1}e=e+1|0;a=F[d+4>>2];if(e>>>0>2>>>0){continue}break}if(p){continue}}break}a=F[j>>2];if(a){ra(a)}a=F[j+16>>2];if(a){ra(a)}ea=j+32|0;e=0;n=0;p=0;h=ea-32|0;ea=h;a=F[A+12>>2];F[d+36>>2]=a;o=d+24|0;c=F[d+24>>2];b=F[d+28>>2]-c>>2;G:{H:{if(b>>>0>>0){Ia(o,a-b|0,13684);F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;break H}if(a>>>0>>0){F[d+28>>2]=c+(a<<2)}F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;if(!a){break G}}if((a|0)<0){break h}b=a-1>>>5|0;c=b+1|0;e=sa(c<<2);F[h+24>>2]=c;F[h+16>>2]=e;F[h+20>>2]=a;F[((a>>>0<33?0:b)<<2)+e>>2]=0;b=a>>>5<<2;c=ua(e,0,b);g=a&31;if(!g){break G}b=b+c|0;F[b>>2]=F[b>>2]&(-1>>>32-g^-1)}i=F[d>>2];l=F[d+4>>2];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;b=l-i|0;I:{if(!b){break I}if((b|0)<0){break h}b=b>>2;c=b-1>>>5|0;g=c+1|0;j=sa(g<<2);F[h+8>>2]=g;F[h>>2]=j;F[h+4>>2]=b;F[((b>>>0<33?0:c)<<2)+j>>2]=0;c=b>>>5<<2;g=ua(j,0,c);f=b&31;if(f){c=c+g|0;F[c>>2]=F[c>>2]&(-1>>>32-f^-1)}if(b>>>0<3){break I}while(1){q=L(n,3);g=(q<<2)+i|0;b=F[g>>2];c=-1;f=q+1|0;if((f|0)!=-1){c=F[(f<<2)+i>>2]}J:{if((b|0)==(c|0)){break J}f=b;b=F[g+8>>2];if((f|0)==(b|0)){break J}s=0;if((b|0)==(c|0)){break J}while(1){g=s+q|0;if(!(F[(g>>>3&536870908)+j>>2]>>>g&1)){b=F[(g<<2)+i>>2];c=1<>>5|0;l=c&F[(j<<2)+e>>2];if(l){c=F[d+28>>2];K:{if((c|0)!=F[d+32>>2]){F[c>>2]=-1;F[d+28>>2]=c+4;break K}e=F[o>>2];f=c-e|0;j=f>>2;c=j+1|0;if(c>>>0>=1073741824){break h}i=f>>1;i=j>>>0<536870911?c>>>0>i>>>0?c:i:1073741823;if(i){if(i>>>0>=1073741824){break i}c=sa(i<<2)}else{c=0}j=c+(j<<2)|0;F[j>>2]=-1;if((f|0)>0){ta(c,e,f)}F[d+32>>2]=c+(i<<2);F[d+28>>2]=j+4;F[d+24>>2]=c;if(!e){break K}ra(e)}c=F[d+52>>2];L:{if((c|0)!=F[d+56>>2]){F[c>>2]=b;F[d+52>>2]=c+4;break L}e=F[d+48>>2];f=c-e|0;j=f>>2;c=j+1|0;if(c>>>0>=1073741824){break h}i=f>>1;i=j>>>0<536870911?c>>>0>i>>>0?c:i:1073741823;if(i){if(i>>>0>=1073741824){break i}c=sa(i<<2)}else{c=0}j=c+(j<<2)|0;F[j>>2]=b;if((f|0)>0){ta(c,e,f)}F[d+56>>2]=c+(i<<2);F[d+52>>2]=j+4;F[d+48>>2]=c;if(!e){break L}ra(e)}c=F[h+20>>2];b=F[h+24>>2];if((c|0)==b<<5){if((c+1|0)<0){break h}e=h+16|0;if(c>>>0<=1073741822){c=c+32&-32;b=b<<6;b=b>>>0>>0?c:b}else{b=2147483647}cb(e,b);c=F[h+20>>2]}F[h+20>>2]=c+1;b=F[h+16>>2]+(c>>>3&536870908)|0;e=F[b>>2];M=b,N=Jj(c)&e,F[M>>2]=N;c=1<>>5|0;b=a;a=a+1|0}f=a;e=F[h+16>>2];a=e+(j<<2)|0;F[a>>2]=F[a>>2]|c;v=F[d+24>>2]+(b<<2)|0;w=F[d+12>>2];i=F[d>>2];j=F[h>>2];a=g;M:{N:{O:{P:{Q:{R:{while(1){if((a|0)==-1){break R}c=(a>>>3&536870908)+j|0;F[c>>2]=F[c>>2]|1<>2]=a;if(l){F[(a<<2)+i>>2]=b}u=a+1|0;a=(u>>>0)%3|0?u:a-2|0;c=-1;S:{if((a|0)==-1){break S}a=F[w+(a<<2)>>2];c=-1;if((a|0)==-1){break S}c=a+1|0;c=(c>>>0)%3|0?c:a-2|0}a=c;if((g|0)!=(a|0)){continue}break}if((g|0)!=-1){break M}a=1;break Q}if((g>>>0)%3|0){a=g-1|0;break Q}a=g+2|0;if((a|0)==-1){break P}}a=F[w+(a<<2)>>2];if((a|0)==-1){break P}if(!((a>>>0)%3|0)){break O}a=a-1|0;i=F[d>>2];j=F[h>>2];break N}i=F[d>>2];j=F[h>>2];break M}i=F[d>>2];j=F[h>>2];a=a+2|0;if((a|0)==-1){break M}}c=F[d+12>>2];while(1){g=(a>>>3&536870908)+j|0;F[g>>2]=F[g>>2]|1<>2]=b}T:{if((a>>>0)%3|0){a=a-1|0;break T}a=a+2|0;if((a|0)==-1){break M}}a=F[c+(a<<2)>>2];if((a|0)==-1){break M}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=f}s=s+1|0;if((s|0)!=3){continue}break}i=F[d>>2];l=F[d+4>>2]}n=n+1|0;if(n>>>0<(l-i>>2>>>0)/3>>>0){continue}break}e=F[h+16>>2]}F[d+44>>2]=0;a=F[h+20>>2];if(a){b=a&31;g=(a>>>3&536870908)+e|0;a=0;c=e;while(1){if(!(F[c>>2]>>>a&1)){p=p+1|0;F[d+44>>2]=p}f=(a|0)==31;a=f?0:a+1|0;c=(f<<2)+c|0;if((g|0)!=(c|0)|(a|0)!=(b|0)){continue}break}}a=F[h>>2];if(a){ra(a);e=F[h+16>>2]}if(e){ra(e)}ea=h+32|0}ea=A+16|0;if(!y){F[C+8>>2]=0;ab(d);d=0}ea=C+16|0;a=d;break g}wa(1336);V()}va();V()}b=F[t>>2];if(!b){break d}F[t+4>>2]=b;ra(b)}ea=t+16|0;break b}va();V()}b=F[k+4>>2];F[k+4>>2]=a;if(b){ab(b);a=F[k+4>>2]}U:{if(!a){break U}a=F[x+100>>2];b=F[x+96>>2];D[r+12|0]=0;Na(k+56|0,(a-b|0)/12|0,r+12|0);a=F[x+100>>2];b=F[x+96>>2];if((a|0)==(b|0)){J=1;break U}while(1){if(!(F[F[k+56>>2]+(B>>>3&536870908)>>2]>>>B&1)){a=L(B,3);Fc(k,0,a);b=F[k+8>>2];c=F[k+12>>2];Fc(k,1,a+1|0);g=F[k+20>>2];e=F[k+24>>2];Fc(k,2,a+2|0);g=e-g>>2;b=c-b|0;c=b>>2;a=g>>>0>c>>>0;c=F[k+36>>2]-F[k+32>>2]>>2>>>0>(a?g:c)>>>0?2:a?1:b?0:-1;V:{if(F[k+68>>2]<=0){break V}F[r+12>>2]=F[k+76>>2];F[r+8>>2]=m;gb(r+8|0,r+12|0);a=F[((c<<2)+k|0)+44>>2];if((a|0)<0){a=-1}else{b=(a>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(b,12)|0)+(a-L(b,3)<<2)>>2]}F[r+12>>2]=a;F[r+8>>2]=m;gb(r+8|0,r+12|0);b=F[k+72>>2];F[k+72>>2]=b+2;if(!(b&1)){break V}F[r+12>>2]=a;F[r+8>>2]=m;gb(r+8|0,r+12|0);F[k+72>>2]=F[k+72>>2]+1}b=ea-16|0;ea=b;F[k+68>>2]=F[k+68>>2]+1;a=L(c,12)+k|0;g=F[a+12>>2]-F[a+8>>2]|0;W:{if((g|0)<=0){break W}a=-1;c=F[((c<<2)+k|0)+44>>2];e=(c>>>0)/3|0;h=(c|0)==-1;f=h?-1:e;d=F[k+56>>2]+(f>>>3&536870908)|0;F[d>>2]=F[d>>2]|1<>2]=F[k+72>>2]+1;F[b+12>>2]=(c|0)>=0?F[(F[F[k>>2]+96>>2]+L(e,12)|0)+((c>>>0)%3<<2)>>2]:-1;F[b+8>>2]=m;gb(b+8|0,b+12|0);X:{if(!h){f=c+1|0;f=(f>>>0)%3|0?f:c-2|0;if((f|0)>=0){h=(f>>>0)/3|0;d=F[(F[F[k>>2]+96>>2]+L(h,12)|0)+(f-L(h,3)<<2)>>2]}else{d=-1}F[b+12>>2]=d;F[b+8>>2]=m;gb(b+8|0,b+12|0);e=c+(c-L(e,3)|0?-1:2)|0;if((e|0)<0){break X}a=(e>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(a,12)|0)+(e-L(a,3)<<2)>>2];break X}F[b+12>>2]=-1;F[b+8>>2]=m;gb(b+8|0,b+12|0)}F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=m;a=-1;gb(b+8|0,b+12|0);a=(c|0)!=-1?F[F[F[k+4>>2]+12>>2]+(c<<2)>>2]:a;if(g>>>0<=7){break W}c=g>>>2|0;h=c>>>0>1?c:1;c=1;while(1){g=a;f=(a>>>0)/3|0;a=(a|0)==-1?-1:f;e=F[k+56>>2]+(a>>>3&536870908)|0;F[e>>2]=F[e>>2]|1<>2]=F[k+72>>2]+1;a=-1;a=(g|0)>=0?F[(F[F[k>>2]+96>>2]+L(f,12)|0)+((g>>>0)%3<<2)>>2]:a;F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=m;gb(b+8|0,b+12|0);Y:{Z:{_:{if(c&1){e=-1;if((g|0)==-1){break Y}if((g|0)!=(L(f,3)|0)){a=g-1|0;break Z}a=g+2|0;break _}e=-1;if((g|0)==-1){break Y}a=g+1|0;a=(a>>>0)%3|0?a:g-2|0}e=-1;if((a|0)==-1){break Y}}e=F[F[F[k+4>>2]+12>>2]+(a<<2)>>2]}a=e;c=c+1|0;if((h|0)!=(c|0)){continue}break}}ea=b+16|0;b=F[x+96>>2];a=F[x+100>>2]}J=1;B=B+1|0;if(B>>>0<(a-b|0)/12>>>0){continue}break}}ea=r+16|0;$:{if(J){a=F[z>>2];if(a){F[z+4>>2]=a;ra(a)}F[z>>2]=F[m>>2];F[z+4>>2]=F[m+4>>2];F[z+8>>2]=F[m+8>>2];K=F[m+84>>2];break $}a=F[m>>2];if(!a){break $}F[m+4>>2]=a;ra(a)}a=F[m+72>>2];if(a){ra(a)}a=F[m+48>>2];if(a){F[m+52>>2]=a;ra(a)}a=F[m+36>>2];if(a){F[m+40>>2]=a;ra(a)}a=F[m+24>>2];if(a){F[m+28>>2]=a;ra(a)}a=F[m+20>>2];F[m+20>>2]=0;if(a){ab(a)}ea=m+96|0;return K|0}function Fd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=ea-16|0;ea=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=F[3978];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=F[b+15960>>2];a=f+8|0;c=F[f+8>>2];b=b+15952|0;l:{if((c|0)==(b|0)){m=15912,n=Jj(d)&e,F[m>>2]=n;break l}F[c+12>>2]=b;F[b+8>>2]=c}b=d<<3;F[f+4>>2]=b|3;b=b+f|0;F[b+4>>2]=F[b+4>>2]|1;break a}k=F[3980];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=F[a+15960>>2];b=F[g+8>>2];a=a+15952|0;m:{if((b|0)==(a|0)){e=Jj(c)&e;F[3978]=e;break m}F[b+12>>2]=a;F[a+8>>2]=b}a=g+8|0;F[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;F[d+4>>2]=f|1;F[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+15952|0;g=F[3983];b=1<>2]}F[c+8>>2]=g;F[b+12>>2]=g;F[g+12>>2]=c;F[g+8>>2]=b}F[3983]=d;F[3980]=f;break a}j=F[3979];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=F[((c|a)+(b>>>a|0)<<2)+16216>>2];d=(F[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=F[c+16>>2];if(!a){a=F[c+20>>2];if(!a){break o}}c=(F[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=F[b+24>>2];f=F[b+12>>2];if((f|0)!=(b|0)){a=F[b+8>>2];F[a+12>>2]=f;F[f+8>>2]=a;break b}c=b+20|0;a=F[c>>2];if(!a){a=F[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=F[c>>2];if(a){continue}c=f+16|0;a=F[f+16>>2];if(a){continue}break}F[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=F[3979];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=F[(e<<2)+16216>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(F[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=F[c+20>>2];c=F[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=F[((c|a)+(b>>>a|0)<<2)+16216>>2]}if(!a){break q}}while(1){b=(F[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=F[a+16>>2];if(b){a=b}else{a=F[a+20>>2]}if(a){continue}break}}if(!f|F[3980]-h>>>0<=d>>>0){break k}e=F[f+24>>2];b=F[f+12>>2];if((f|0)!=(b|0)){a=F[f+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break c}c=f+20|0;a=F[c>>2];if(!a){a=F[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=F[c>>2];if(a){continue}c=b+16|0;a=F[b+16>>2];if(a){continue}break}F[g>>2]=0;break c}c=F[3980];if(c>>>0>=h>>>0){d=F[3983];b=c-h|0;u:{if(b>>>0>=16){F[3980]=b;a=d+h|0;F[3983]=a;F[a+4>>2]=b|1;F[c+d>>2]=b;F[d+4>>2]=h|3;break u}F[3983]=0;F[3980]=0;F[d+4>>2]=c|3;a=c+d|0;F[a+4>>2]=F[a+4>>2]|1}a=d+8|0;break a}i=F[3981];if(i>>>0>h>>>0){b=i-h|0;F[3981]=b;c=F[3984];a=c+h|0;F[3984]=a;F[a+4>>2]=b|1;F[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(F[4096]){c=F[4098]}else{F[4099]=-1;F[4100]=-1;F[4097]=4096;F[4098]=4096;F[4096]=l+12&-16^1431655768;F[4101]=0;F[4089]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=F[4088];if(d){b=F[4086];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(G[16356]&4){break f}v:{w:{d=F[3984];if(d){a=16360;while(1){b=F[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=F[a+8>>2];if(a){continue}break}}b=jb(0);if((b|0)==-1){break g}e=c;d=F[4097];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=F[4088];if(d){a=F[4086];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=jb(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=jb(e);if((b|0)==(F[a>>2]+F[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=F[4098];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((jb(b)|0)!=-1){e=b+e|0;b=a;break e}jb(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}F[4089]=F[4089]|4}if(c>>>0>2147483646){break d}b=jb(c);a=jb(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=F[4086]+e|0;F[4086]=a;if(a>>>0>I[4087]){F[4087]=a}x:{y:{z:{g=F[3984];if(g){a=16360;while(1){d=F[a>>2];c=F[a+4>>2];if((d+c|0)==(b|0)){break z}a=F[a+8>>2];if(a){continue}break}break y}a=F[3982];if(!(a>>>0<=b>>>0?a:0)){F[3982]=b}a=0;F[4091]=e;F[4090]=b;F[3986]=-1;F[3987]=F[4096];F[4093]=0;while(1){d=a<<3;c=d+15952|0;F[d+15960>>2]=c;F[d+15964>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[3981]=c;a=a+b|0;F[3984]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[3985]=F[4100];break x}if(G[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}F[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;F[3984]=c;b=F[3981]+e|0;a=b-a|0;F[3981]=a;F[c+4>>2]=a|1;F[(b+g|0)+4>>2]=40;F[3985]=F[4100];break x}if(I[3982]>b>>>0){F[3982]=b}c=b+e|0;a=16360;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=F[a>>2]){a=F[a+8>>2];if(a){continue}break F}break}if(!(G[a+12|0]&8)){break E}}a=16360;while(1){c=F[a>>2];if(c>>>0<=g>>>0){f=c+F[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=F[a+8>>2];continue}}F[a>>2]=b;F[a+4>>2]=F[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;F[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){F[3984]=i;a=F[3981]+c|0;F[3981]=a;F[i+4>>2]=a|1;break B}if(F[3983]==(e|0)){F[3983]=i;a=F[3980]+c|0;F[3980]=a;F[i+4>>2]=a|1;F[a+i>>2]=a;break B}a=F[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=F[e+8>>2];a=a>>>3|0;b=F[e+12>>2];if((b|0)==(d|0)){m=15912,n=F[3978]&Jj(a),F[m>>2]=n;break G}F[d+12>>2]=b;F[b+8>>2]=d;break G}h=F[e+24>>2];b=F[e+12>>2];H:{if((e|0)!=(b|0)){a=F[e+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break H}I:{a=e+20|0;d=F[a>>2];if(d){break I}a=e+16|0;d=F[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=F[a>>2];if(d){continue}a=b+16|0;d=F[b+16>>2];if(d){continue}break}F[f>>2]=0}if(!h){break G}d=F[e+28>>2];a=(d<<2)+16216|0;J:{if(F[a>>2]==(e|0)){F[a>>2]=b;if(b){break J}m=15916,n=F[3979]&Jj(d),F[m>>2]=n;break G}F[h+(F[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}F[b+24>>2]=h;a=F[e+16>>2];if(a){F[b+16>>2]=a;F[a+24>>2]=b}a=F[e+20>>2];if(!a){break G}F[b+20>>2]=a;F[a+24>>2]=b}e=e+g|0;c=c+g|0}F[e+4>>2]=F[e+4>>2]&-2;F[i+4>>2]=c|1;F[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+15952|0;c=F[3978];a=1<>2]}F[b+8>>2]=i;F[a+12>>2]=i;F[i+12>>2]=b;F[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}F[i+28>>2]=a;F[i+16>>2]=0;F[i+20>>2]=0;f=(a<<2)+16216|0;d=F[3979];b=1<>2]=i;F[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[f>>2];while(1){d=b;if((F[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=F[f+16>>2];if(b){continue}break}F[f+16>>2]=i;F[i+24>>2]=d}F[i+12>>2]=i;F[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[3981]=c;a=a+b|0;F[3984]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[3985]=F[4100];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;F[c+4>>2]=27;a=F[4093];F[c+16>>2]=F[4092];F[c+20>>2]=a;a=F[4091];F[c+8>>2]=F[4090];F[c+12>>2]=a;F[4092]=c+8;F[4091]=e;F[4090]=b;F[4093]=0;a=c+24|0;while(1){F[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}F[c+4>>2]=F[c+4>>2]&-2;f=c-g|0;F[g+4>>2]=f|1;F[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+15952|0;c=F[3978];a=1<>2]}F[b+8>>2]=g;F[a+12>>2]=g;F[g+12>>2]=b;F[g+8>>2]=a;break x}a=31;F[g+16>>2]=0;F[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}F[g+28>>2]=a;d=(a<<2)+16216|0;c=F[3979];b=1<>2]=g;F[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[d>>2];while(1){c=b;if((f|0)==(F[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=F[d+16>>2];if(b){continue}break}F[d+16>>2]=g;F[g+24>>2]=c}F[g+12>>2]=g;F[g+8>>2]=g;break x}a=F[d+8>>2];F[a+12>>2]=i;F[d+8>>2]=i;F[i+24>>2]=0;F[i+12>>2]=d;F[i+8>>2]=a}a=j+8|0;break a}a=F[c+8>>2];F[a+12>>2]=g;F[c+8>>2]=g;F[g+24>>2]=0;F[g+12>>2]=c;F[g+8>>2]=a}a=F[3981];if(a>>>0<=h>>>0){break d}b=a-h|0;F[3981]=b;c=F[3984];a=c+h|0;F[3984]=a;F[a+4>>2]=b|1;F[c+4>>2]=h|3;a=c+8|0;break a}F[3934]=48;a=0;break a}O:{if(!e){break O}c=F[f+28>>2];a=(c<<2)+16216|0;P:{if(F[a>>2]==(f|0)){F[a>>2]=b;if(b){break P}j=Jj(c)&j;F[3979]=j;break O}F[e+(F[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}F[b+24>>2]=e;a=F[f+16>>2];if(a){F[b+16>>2]=a;F[a+24>>2]=b}a=F[f+20>>2];if(!a){break O}F[b+20>>2]=a;F[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;F[f+4>>2]=a|3;a=a+f|0;F[a+4>>2]=F[a+4>>2]|1;break Q}F[f+4>>2]=h|3;e=f+h|0;F[e+4>>2]=d|1;F[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+15952|0;c=F[3978];a=1<>2]}F[b+8>>2]=e;F[a+12>>2]=e;F[e+12>>2]=b;F[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}F[e+28>>2]=a;F[e+16>>2]=0;F[e+20>>2]=0;b=(a<<2)+16216|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=F[b>>2];while(1){b=h;if((F[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=F[c+16>>2];if(h){continue}break}F[c+16>>2]=e}F[e+24>>2]=b;F[e+12>>2]=e;F[e+8>>2]=e;break Q}a=F[b+8>>2];F[a+12>>2]=e;F[b+8>>2]=e;F[e+24>>2]=0;F[e+12>>2]=b;F[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=F[b+28>>2];a=(c<<2)+16216|0;V:{if(F[a>>2]==(b|0)){F[a>>2]=f;if(f){break V}m=15916,n=Jj(c)&j,F[m>>2]=n;break U}F[i+(F[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}F[f+24>>2]=i;a=F[b+16>>2];if(a){F[f+16>>2]=a;F[a+24>>2]=f}a=F[b+20>>2];if(!a){break U}F[f+20>>2]=a;F[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;F[b+4>>2]=a|3;a=a+b|0;F[a+4>>2]=F[a+4>>2]|1;break W}F[b+4>>2]=h|3;f=b+h|0;F[f+4>>2]=d|1;F[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+15952|0;g=F[3983];a=1<>2]}F[c+8>>2]=g;F[a+12>>2]=g;F[g+12>>2]=c;F[g+8>>2]=a}F[3983]=f;F[3980]=d}a=b+8|0}ea=l+16|0;return a|0}function $e(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=ea-48|0;ea=j;a:{if((c|0)!=1){break a}g=F[a+4>>2];c=F[a+12>>2];F[j+40>>2]=0;F[j+32>>2]=0;F[j+36>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;e=j+8|0;b:{if((b|0)==-2){break b}m=F[F[F[g+4>>2]+8>>2]+(c<<2)>>2];if((ga[F[F[g>>2]+8>>2]](g)|0)==1){a=H[g+36>>1];l=(a<<8|a>>>8)&65535;a=0;k=ea-32|0;ea=k;h=F[F[F[g+4>>2]+8>>2]+(c<<2)>>2];c:{if((ga[F[F[g>>2]+8>>2]](g)|0)!=1|b-1>>>0>5){break c}d=ga[F[F[g>>2]+36>>2]](g)|0;i=ga[F[F[g>>2]+44>>2]](g,c)|0;if(!d|!i){break c}c=ga[F[F[g>>2]+40>>2]](g,c)|0;if(c){a=F[g+44>>2];F[k+12>>2]=c;F[k+8>>2]=a;F[k+20>>2]=i;F[k+16>>2]=i+12;f=k+8|0;a=0;d:{e:{f:{switch(b-1|0){case 0:a=sa(60);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=2592;break d;case 1:a=sa(60);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=3356;break d;case 3:a=sa(112);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=3592;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;break d;case 2:a=sa(92);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=3840;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=l;break d;case 4:a=sa(104);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;c=F[f+8>>2];b=F[f+12>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=4068;F[a+52>>2]=c;F[a+56>>2]=b;b=F[f+4>>2];F[a+88>>2]=F[f>>2];F[a+92>>2]=b;b=F[f+12>>2];F[a+96>>2]=F[f+8>>2];F[a+100>>2]=b;break d;case 5:break f;default:break d}}a=sa(128);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;g:{h:{c=F[e+28>>2]-F[e+24>>2]|0;if(c){if((c|0)<0){break h}b=sa(c);F[a+32>>2]=b;F[a+36>>2]=b;F[a+40>>2]=b+(c>>2<<2);c=F[e+24>>2];d=F[e+28>>2]-c|0;if((d|0)>0){b=ta(b,c,d)+d|0}F[a+36>>2]=b}F[a>>2]=3244;b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+60>>2]=4932;F[a>>2]=4304;b=F[f+4>>2];F[a+72>>2]=F[f>>2];F[a+76>>2]=b;b=F[f+12>>2];F[a+80>>2]=F[f+8>>2];F[a+84>>2]=b;F[a+104>>2]=1065353216;F[a+108>>2]=-1;F[a+96>>2]=-1;F[a+100>>2]=-1;F[a+88>>2]=1;F[a+92>>2]=-1;F[a+60>>2]=4540;F[a+112>>2]=0;F[a+116>>2]=0;D[a+117|0]=0;D[a+118|0]=0;D[a+119|0]=0;D[a+120|0]=0;D[a+121|0]=0;D[a+122|0]=0;D[a+123|0]=0;D[a+124|0]=0;break g}va();V()}break d}va();V()}break c}a=F[g+44>>2];F[k+12>>2]=d;F[k+8>>2]=a;F[k+20>>2]=i;F[k+16>>2]=i+12;f=k+8|0;a=0;i:{j:{k:{switch(b-1|0){case 0:a=sa(60);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=4960;break i;case 1:a=sa(60);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=5384;break i;case 3:a=sa(112);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=5608;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;break i;case 2:a=sa(92);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=5844;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=l;break i;case 4:a=sa(104);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;c=F[f+8>>2];b=F[f+12>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=6060;F[a+52>>2]=c;F[a+56>>2]=b;b=F[f+4>>2];F[a+88>>2]=F[f>>2];F[a+92>>2]=b;b=F[f+12>>2];F[a+96>>2]=F[f+8>>2];F[a+100>>2]=b;break i;case 5:break k;default:break i}}a=sa(128);F[a+4>>2]=h;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;l:{m:{c=F[e+28>>2]-F[e+24>>2]|0;if(c){if((c|0)<0){break m}b=sa(c);F[a+32>>2]=b;F[a+36>>2]=b;F[a+40>>2]=b+(c>>2<<2);c=F[e+24>>2];d=F[e+28>>2]-c|0;if((d|0)>0){b=ta(b,c,d)+d|0}F[a+36>>2]=b}F[a>>2]=5328;b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+60>>2]=6868;F[a>>2]=6284;b=F[f+4>>2];F[a+72>>2]=F[f>>2];F[a+76>>2]=b;b=F[f+12>>2];F[a+80>>2]=F[f+8>>2];F[a+84>>2]=b;F[a+104>>2]=1065353216;F[a+108>>2]=-1;F[a+96>>2]=-1;F[a+100>>2]=-1;F[a+88>>2]=1;F[a+92>>2]=-1;F[a+60>>2]=6504;F[a+112>>2]=0;F[a+116>>2]=0;D[a+117|0]=0;D[a+118|0]=0;D[a+119|0]=0;D[a+120|0]=0;D[a+121|0]=0;D[a+122|0]=0;D[a+123|0]=0;D[a+124|0]=0;break l}va();V()}break i}va();V()}}ea=k+32|0;d=a;if(a){break b}}d=sa(44);F[d+4>>2]=m;F[d>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];c=F[e+20>>2];b=F[e>>2];a=F[e+4>>2];F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;F[d+24>>2]=i;F[d+28>>2]=c;F[d+16>>2]=g;F[d+20>>2]=h;F[d+8>>2]=b;F[d+12>>2]=a;n:{a=F[e+24>>2];c=F[e+28>>2]-a|0;if(c){if((c|0)<0){break n}b=sa(c);F[d+32>>2]=b;F[d+40>>2]=b+(c>>2<<2);n=d,o=ta(b,a,c)+c|0,F[n+36>>2]=o}F[d>>2]=6896;break b}va();V()}a=F[j+32>>2];if(!a){break a}F[j+36>>2]=a;ra(a)}ea=j+48|0;return d|0}function _d(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=ea-48|0;ea=k;c=sa(8);F[c+4>>2]=b;F[c>>2]=0;b=c+8|0;F[k+40>>2]=b;F[k+36>>2]=b;F[k+32>>2]=c;a:{b:{c:{d:{while(1){b=b-8|0;j=F[b+4>>2];g=F[b>>2];F[k+36>>2]=b;if(g){F[k+24>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;c=1;b=F[a>>2];e=F[b+8>>2];h=F[b+12>>2];d=F[b+20>>2];f=F[b+16>>2];e:{if((h|0)<=(d|0)&f>>>0>=e>>>0|(d|0)>(h|0)){break e}e=G[f+F[b>>2]|0];f=f+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;Cc(k+16|0,e);if(e){d=F[a>>2];m=Dc(k+16|0);f=F[d+20>>2];i=F[d+16>>2];b=e;n=i+e|0;h=F[d+12>>2];f=e>>>0>n>>>0?f+1|0:f;if(n>>>0>I[d+8>>2]&(h|0)<=(f|0)|(f|0)>(h|0)){break e}ta(m,i+F[d>>2]|0,e);c=F[d+20>>2];e=b+F[d+16>>2]|0;c=e>>>0>>0?c+1|0:c;F[d+16>>2]=e;F[d+20>>2]=c}j=sa(24);b=j;F[b+4>>2]=0;F[b+8>>2]=0;b=b+16|0;F[b>>2]=0;F[b+4>>2]=0;F[j>>2]=j+4;F[j+12>>2]=b;e=ea-32|0;ea=e;f=g+12|0;c=k+16|0;l=qb(f,c);p=g+16|0;f:{if((l|0)==(p|0)){F[e+16>>2]=c;b=F[f+4>>2];g:{h:{if(b){d=G[c+11|0];g=d<<24>>24<0;h=g?F[c>>2]:c;g=g?F[c+4>>2]:d;c=f+4|0;while(1){d=G[b+27|0];n=d<<24>>24<0;d=n?F[b+20>>2]:d;m=d>>>0>>0;i:{j:{k:{l:{m:{i=m?d:g;n:{if(i){o=b+16|0;n=n?F[o>>2]:o;o=Ha(h,n,i);if(!o){if(d>>>0>g>>>0){break n}break m}if((o|0)>=0){break m}break n}if(d>>>0<=g>>>0){break l}}d=F[b>>2];if(d){break i}break h}d=Ha(n,h,i);if(d){break k}}if(m){break j}break g}if((d|0)>=0){break g}}c=b+4|0;d=F[b+4>>2];if(!d){break g}b=c}c=b;b=d;continue}}b=f+4|0}c=b}d=F[c>>2];if(d){b=0}else{d=sa(32);h=d+16|0;g=F[e+16>>2];o:{if(D[g+11|0]>=0){n=F[g+4>>2];F[h>>2]=F[g>>2];F[h+4>>2]=n;F[h+8>>2]=F[g+8>>2];break o}Ba(h,F[g>>2],F[g+4>>2])}F[d+8>>2]=b;F[d>>2]=0;F[d+4>>2]=0;F[d+28>>2]=0;F[c>>2]=d;b=F[F[f>>2]>>2];if(b){F[f>>2]=b;b=F[c>>2]}else{b=d}Tb(F[f+4>>2],b);F[f+8>>2]=F[f+8>>2]+1;b=1}D[e+28|0]=b;F[e+24>>2]=d;c=F[e+24>>2];b=F[c+28>>2];F[c+28>>2]=j;if(!b){break f}Pa(b+12|0,F[b+16>>2]);Oa(b,F[b+4>>2]);ra(b);break f}if(!j){break f}Pa(j+12|0,F[j+16>>2]);Oa(j,F[j+4>>2]);ra(j)}ea=e+32|0;c=(l|0)!=(p|0)}if(D[k+27|0]<0){ra(F[k+16>>2])}if(c){break b}}if(!j){break b}F[k+16>>2]=0;if(!Bb(1,k+16|0,F[a>>2])){break b}b=0;r=F[k+16>>2];if(r){while(1){n=0;i=ea-32|0;ea=i;F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;c=F[a>>2];e=F[c+8>>2];p:{q:{f=F[c+12>>2];d=F[c+20>>2];g=F[c+16>>2];r:{if((f|0)<=(d|0)&g>>>0>=e>>>0|(d|0)>(f|0)){break r}f=G[g+F[c>>2]|0];e=c;c=d;d=g+1|0;c=d?c:c+1|0;F[e+16>>2]=d;F[e+20>>2]=c;Cc(i+16|0,f);if(f){e=F[a>>2];m=Dc(i+16|0);d=F[e+20>>2];l=F[e+16>>2];c=f;h=l+c|0;g=F[e+12>>2];d=c>>>0>h>>>0?d+1|0:d;if(h>>>0>I[e+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break r}ta(m,l+F[e>>2]|0,f);d=F[e+20>>2];f=c+F[e+16>>2]|0;d=f>>>0>>0?d+1|0:d;F[e+16>>2]=f;F[e+20>>2]=d}F[i+12>>2]=0;if(!Bb(1,i+12|0,F[a>>2])){break r}c=F[i+12>>2];if(!c){break r}F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;if((c|0)<0){break q}d=sa(c);F[i>>2]=d;e=c+d|0;F[i+8>>2]=e;m=ua(d,0,c);F[i+4>>2]=e;e=F[a>>2];n=F[e+8>>2];g=F[e+12>>2];f=F[e+20>>2];l=F[e+16>>2];h=c+l|0;f=h>>>0>>0?f+1|0:f;n=(f|0)<=(g|0)&h>>>0<=n>>>0|(f|0)<(g|0);if(n){ta(m,l+F[e>>2]|0,c);d=c;f=c+F[e+16>>2]|0;c=F[e+20>>2];F[e+16>>2]=f;F[e+20>>2]=d>>>0>f>>>0?c+1|0:c;g=ea-48|0;ea=g;d=qb(j,i+16|0);if((d|0)!=(j+4|0)){e=F[d+4>>2];s:{if(!e){f=F[d+8>>2];if(F[f>>2]==(d|0)){break s}c=d+8|0;while(1){e=F[c>>2];c=e+8|0;f=F[e+8>>2];if((e|0)!=F[f>>2]){continue}break}break s}while(1){f=e;e=F[e>>2];if(e){continue}break}}if(F[j>>2]==(d|0)){F[j>>2]=f}F[j+8>>2]=F[j+8>>2]-1;f=F[j+4>>2];h=d;t:{u:{e=F[d>>2];if(e){c=F[h+4>>2];if(!c){break u}while(1){d=c;c=F[c>>2];if(c){continue}break}}e=F[d+4>>2];if(e){break u}e=0;m=1;break t}F[e+8>>2]=F[d+8>>2];m=0}l=F[d+8>>2];c=F[l>>2];v:{if((d|0)==(c|0)){F[l>>2]=e;if((d|0)==(f|0)){c=0;f=e;break v}c=F[l+4>>2];break v}F[l+4>>2]=e}o=!G[d+12|0];if((d|0)!=(h|0)){l=F[h+8>>2];F[d+8>>2]=l;F[l+(((h|0)!=F[F[h+8>>2]>>2])<<2)>>2]=d;l=F[h>>2];F[d>>2]=l;F[l+8>>2]=d;l=F[h+4>>2];F[d+4>>2]=l;if(l){F[l+8>>2]=d}D[d+12|0]=G[h+12|0];f=(f|0)==(h|0)?d:f}w:{if(o|!f){break w}if(m){while(1){e=G[c+12|0];x:{d=F[c+8>>2];if(F[d>>2]!=(c|0)){if(!e){D[c+12|0]=1;D[d+12|0]=0;e=F[d+4>>2];m=F[e>>2];F[d+4>>2]=m;if(m){F[m+8>>2]=d}F[e+8>>2]=F[d+8>>2];m=F[d+8>>2];F[(((d|0)!=F[m>>2])<<2)+m>>2]=e;F[e>>2]=d;F[d+8>>2]=e;d=c;c=F[c>>2];f=(c|0)==(f|0)?d:f;c=F[c+4>>2]}y:{z:{d=F[c>>2];A:{if(!(G[d+12|0]?0:d)){e=F[c+4>>2];if(G[e+12|0]?0:e){break A}D[c+12|0]=0;c=F[c+8>>2];B:{if((f|0)==(c|0)){c=f;break B}if(G[c+12|0]){break x}}D[c+12|0]=1;break w}e=F[c+4>>2];if(!e){break z}}if(G[e+12|0]){break z}d=c;break y}D[d+12|0]=1;D[c+12|0]=0;e=F[d+4>>2];F[c>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[((F[e>>2]!=(c|0))<<2)+e>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;e=c}c=F[d+8>>2];D[d+12|0]=G[c+12|0];D[c+12|0]=1;D[e+12|0]=1;d=F[c+4>>2];e=F[d>>2];F[c+4>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[(((c|0)!=F[e>>2])<<2)+e>>2]=d;F[d>>2]=c;F[c+8>>2]=d;break w}if(!e){D[c+12|0]=1;D[d+12|0]=0;e=F[c+4>>2];F[d>>2]=e;if(e){F[e+8>>2]=d}F[c+8>>2]=F[d+8>>2];e=F[d+8>>2];F[(((d|0)!=F[e>>2])<<2)+e>>2]=c;F[c+4>>2]=d;F[d+8>>2]=c;f=(d|0)==(f|0)?c:f;c=F[d>>2]}e=F[c>>2];C:{if(!(!e|G[e+12|0])){d=c;break C}d=F[c+4>>2];if(!(G[d+12|0]?0:d)){D[c+12|0]=0;c=F[c+8>>2];if((c|0)!=(f|0)?G[c+12|0]:0){break x}D[c+12|0]=1;break w}if(e){if(!G[e+12|0]){d=c;break C}d=F[c+4>>2]}D[d+12|0]=1;D[c+12|0]=0;e=F[d>>2];F[c+4>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[((F[e>>2]!=(c|0))<<2)+e>>2]=d;F[d>>2]=c;F[c+8>>2]=d;e=c}c=F[d+8>>2];D[d+12|0]=G[c+12|0];D[c+12|0]=1;D[e+12|0]=1;d=F[c>>2];e=F[d+4>>2];F[c>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[(((c|0)!=F[e>>2])<<2)+e>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;break w}d=c;c=F[c+8>>2];c=F[(((d|0)==F[c>>2])<<2)+c>>2];continue}}D[e+12|0]=1}c=F[h+28>>2];if(c){F[h+32>>2]=c;ra(c)}if(D[h+27|0]<0){ra(F[h+16>>2])}ra(h)}F[g>>2]=0;F[g+4>>2]=0;F[g+8>>2]=0;c=F[i+4>>2]-F[i>>2]|0;ib(g,c);ta(F[g>>2],F[i>>2],c);D:{if(D[i+27|0]>=0){F[g+24>>2]=F[i+24>>2];c=F[i+20>>2];F[g+16>>2]=F[i+16>>2];F[g+20>>2]=c;break D}Ba(g+16|0,F[i+16>>2],F[i+20>>2])}F[g+36>>2]=0;F[g+28>>2]=0;F[g+32>>2]=0;ib(g+28|0,F[g+4>>2]-F[g>>2]|0);c=F[g>>2];ta(F[g+28>>2],c,F[g+4>>2]-c|0);f=g+16|0;d=f;c=F[j+4>>2];E:{F:{if(c){e=G[d+11|0];h=e<<24>>24<0;m=h?F[d>>2]:d;h=h?F[d+4>>2]:e;d=j+4|0;while(1){e=G[c+27|0];l=e<<24>>24<0;e=l?F[c+20>>2]:e;p=e>>>0>>0;G:{H:{I:{J:{K:{o=p?e:h;L:{if(o){q=c+16|0;l=l?F[q>>2]:q;q=Ha(m,l,o);if(!q){if(e>>>0>h>>>0){break L}break K}if((q|0)>=0){break K}break L}if(e>>>0<=h>>>0){break J}}e=F[c>>2];if(e){break G}break F}e=Ha(l,m,o);if(e){break I}}if(p){break H}break E}if((e|0)>=0){break E}}d=c+4|0;e=F[c+4>>2];if(!e){break E}c=d}d=c;c=e;continue}}c=j+4|0}d=c}e=F[d>>2];if(e){c=0}else{e=sa(40);F[e+24>>2]=F[f+8>>2];h=F[f+4>>2];F[e+16>>2]=F[f>>2];F[e+20>>2]=h;F[f>>2]=0;F[f+4>>2]=0;F[f+8>>2]=0;F[e+36>>2]=0;h=e+28|0;F[h>>2]=0;F[h+4>>2]=0;ib(h,F[f+16>>2]-F[f+12>>2]|0);m=F[h>>2];h=F[f+12>>2];ta(m,h,F[f+16>>2]-h|0);F[e+8>>2]=c;F[e>>2]=0;F[e+4>>2]=0;F[d>>2]=e;c=F[F[j>>2]>>2];if(c){F[j>>2]=c;c=F[d>>2]}else{c=e}Tb(F[j+4>>2],c);F[j+8>>2]=F[j+8>>2]+1;c=1}D[g+44|0]=c;F[g+40>>2]=e;c=F[g+28>>2];if(c){F[g+32>>2]=c;ra(c)}if(D[g+27|0]<0){ra(F[g+16>>2])}c=F[g>>2];if(c){F[g+4>>2]=c;ra(c)}ea=g+48|0;d=F[i>>2];if(!d){break r}}F[i+4>>2]=d;ra(d)}if(D[i+27|0]<0){ra(F[i+16>>2])}ea=i+32|0;break p}va();V()}if(!n){break b}b=b+1|0;if((r|0)!=(b|0)){continue}break}}F[k+12>>2]=0;if(!Bb(1,k+12|0,F[a>>2])){break b}b=F[a>>2];c=F[b+8>>2];d=F[b+16>>2];e=c-d|0;f=F[k+12>>2];b=F[b+12>>2]-(F[b+20>>2]+(c>>>0>>0)|0)|0;if(e>>>0>>0&(b|0)<=0|(b|0)<0){break b}c=0;b=F[k+36>>2];if(f){while(1){e=F[k+40>>2];M:{if(e>>>0>b>>>0){F[b+4>>2]=0;F[b>>2]=j;b=b+8|0;F[k+36>>2]=b;break M}d=F[k+32>>2];g=b-d|0;h=g>>3;b=h+1|0;if(b>>>0>=536870912){break d}e=e-d|0;n=e>>2;b=e>>3>>>0<268435455?b>>>0>n>>>0?b:n:536870911;if(b>>>0>=536870912){break c}m=h<<3;h=b<<3;e=sa(h);b=m+e|0;F[b+4>>2]=0;F[b>>2]=j;b=b+8|0;if((g|0)>0){ta(e,d,g)}F[k+40>>2]=e+h;F[k+36>>2]=b;F[k+32>>2]=e;if(!d){break M}ra(d)}c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(F[k+32>>2]!=(b|0)){continue}break}a=1;break a}va();V()}wa(1336);V()}b=F[k+32>>2];a=0}if(b){ra(b)}ea=k+48|0;return a}function re(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=ea-32|0;ea=h;F[b+32>>2]=d;F[b+40>>2]=c;F[b+4>>2]=e;nc(a,d,h+16|0);a:{if(F[a>>2]){break a}i=a+4|0;if(D[a+15|0]<0){ra(F[i>>2])}d=G[h+23|0];if((ga[F[F[b>>2]+8>>2]](b)|0)!=(d|0)){b=sa(64);c=G[1458]|G[1459]<<8;D[b+48|0]=c;D[b+49|0]=c>>>8;c=G[1454]|G[1455]<<8|(G[1456]<<16|G[1457]<<24);d=G[1450]|G[1451]<<8|(G[1452]<<16|G[1453]<<24);D[b+40|0]=d;D[b+41|0]=d>>>8;D[b+42|0]=d>>>16;D[b+43|0]=d>>>24;D[b+44|0]=c;D[b+45|0]=c>>>8;D[b+46|0]=c>>>16;D[b+47|0]=c>>>24;c=G[1446]|G[1447]<<8|(G[1448]<<16|G[1449]<<24);d=G[1442]|G[1443]<<8|(G[1444]<<16|G[1445]<<24);D[b+32|0]=d;D[b+33|0]=d>>>8;D[b+34|0]=d>>>16;D[b+35|0]=d>>>24;D[b+36|0]=c;D[b+37|0]=c>>>8;D[b+38|0]=c>>>16;D[b+39|0]=c>>>24;c=G[1438]|G[1439]<<8|(G[1440]<<16|G[1441]<<24);d=G[1434]|G[1435]<<8|(G[1436]<<16|G[1437]<<24);D[b+24|0]=d;D[b+25|0]=d>>>8;D[b+26|0]=d>>>16;D[b+27|0]=d>>>24;D[b+28|0]=c;D[b+29|0]=c>>>8;D[b+30|0]=c>>>16;D[b+31|0]=c>>>24;c=G[1430]|G[1431]<<8|(G[1432]<<16|G[1433]<<24);d=G[1426]|G[1427]<<8|(G[1428]<<16|G[1429]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1422]|G[1423]<<8|(G[1424]<<16|G[1425]<<24);d=G[1418]|G[1419]<<8|(G[1420]<<16|G[1421]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1414]|G[1415]<<8|(G[1416]<<16|G[1417]<<24);d=G[1410]|G[1411]<<8|(G[1412]<<16|G[1413]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+50|0]=0;F[a>>2]=-1;Ba(i,b,50);ra(b);break a}c=G[h+21|0];D[b+36|0]=c;e=G[h+22|0];D[b+37|0]=e;if((c-3&255)>>>0<=253){b=sa(32);c=G[1571]|G[1572]<<8|(G[1573]<<16|G[1574]<<24);d=G[1567]|G[1568]<<8|(G[1569]<<16|G[1570]<<24);D[b+14|0]=d;D[b+15|0]=d>>>8;D[b+16|0]=d>>>16;D[b+17|0]=d>>>24;D[b+18|0]=c;D[b+19|0]=c>>>8;D[b+20|0]=c>>>16;D[b+21|0]=c>>>24;c=G[1565]|G[1566]<<8|(G[1567]<<16|G[1568]<<24);d=G[1561]|G[1562]<<8|(G[1563]<<16|G[1564]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1557]|G[1558]<<8|(G[1559]<<16|G[1560]<<24);d=G[1553]|G[1554]<<8|(G[1555]<<16|G[1556]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+22|0]=0;F[a>>2]=-5;Ba(i,b,22);ra(b);break a}if(!((c|0)!=2|e>>>0<=(d?2:3)>>>0)){b=sa(32);c=G[1548]|G[1549]<<8|(G[1550]<<16|G[1551]<<24);d=G[1544]|G[1545]<<8|(G[1546]<<16|G[1547]<<24);D[b+14|0]=d;D[b+15|0]=d>>>8;D[b+16|0]=d>>>16;D[b+17|0]=d>>>24;D[b+18|0]=c;D[b+19|0]=c>>>8;D[b+20|0]=c>>>16;D[b+21|0]=c>>>24;c=G[1542]|G[1543]<<8|(G[1544]<<16|G[1545]<<24);d=G[1538]|G[1539]<<8|(G[1540]<<16|G[1541]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1534]|G[1535]<<8|(G[1536]<<16|G[1537]<<24);d=G[1530]|G[1531]<<8|(G[1532]<<16|G[1533]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+22|0]=0;F[a>>2]=-5;Ba(i,b,22);ra(b);break a}c=e|c<<8;E[F[b+32>>2]+38>>1]=c;b:{if((c&65535)>>>0<259|E[h+26>>1]>=0){break b}j=ea-16|0;ea=j;e=sa(36);c=e;F[c+4>>2]=0;F[c+8>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;c=c+16|0;F[c>>2]=0;F[c+4>>2]=0;F[e>>2]=e+4;F[e+32>>2]=0;F[e+12>>2]=c;F[j>>2]=0;d=F[b+32>>2];k=ea-16|0;ea=k;c=0;c:{if(!e){break c}F[j>>2]=d;F[k+12>>2]=0;c=0;if(!Bb(1,k+12|0,d)){break c}n=F[k+12>>2];if(n){while(1){d:{if(Bb(1,k+8|0,F[j>>2])){c=sa(28);F[c+4>>2]=0;F[c+8>>2]=0;d=c+16|0;F[d>>2]=0;F[d+4>>2]=0;F[c>>2]=c+4;F[c+12>>2]=d;F[c+24>>2]=F[k+8>>2];if(_d(j,c)){break d}Pa(c+12|0,F[c+16>>2]);Oa(c,F[c+4>>2]);ra(c)}c=0;break c}f=ea-16|0;ea=f;F[f+8>>2]=c;e:{if(!c){F[f+8>>2]=0;break e}d=F[e+28>>2];f:{if(d>>>0>2]){F[f+8>>2]=0;F[d>>2]=c;F[e+28>>2]=d+4;break f}d=0;g:{h:{i:{g=F[e+24>>2];m=F[e+28>>2]-g>>2;c=m+1|0;if(c>>>0<1073741824){g=F[e+32>>2]-g|0;l=g>>1;c=g>>2>>>0<536870911?c>>>0>l>>>0?c:l:1073741823;if(c){if(c>>>0>=1073741824){break i}d=sa(c<<2)}l=F[f+8>>2];F[f+8>>2]=0;g=(m<<2)+d|0;F[g>>2]=l;m=(c<<2)+d|0;l=g+4|0;d=F[e+28>>2];c=F[e+24>>2];if((d|0)==(c|0)){break h}while(1){d=d-4|0;p=F[d>>2];F[d>>2]=0;g=g-4|0;F[g>>2]=p;if((c|0)!=(d|0)){continue}break}F[e+32>>2]=m;d=F[e+28>>2];F[e+28>>2]=l;c=F[e+24>>2];F[e+24>>2]=g;if((c|0)==(d|0)){break g}while(1){d=d-4|0;g=F[d>>2];F[d>>2]=0;if(g){Pa(g+12|0,F[g+16>>2]);Oa(g,F[g+4>>2]);ra(g)}if((c|0)!=(d|0)){continue}break}break g}va();V()}wa(1336);V()}F[e+32>>2]=m;F[e+28>>2]=l;F[e+24>>2]=g}if(c){ra(c)}}c=F[f+8>>2];F[f+8>>2]=0;if(!c){break e}Pa(c+12|0,F[c+16>>2]);Oa(c,F[c+4>>2]);ra(c)}ea=f+16|0;o=o+1|0;if((n|0)!=(o|0)){continue}break}}c=_d(j,e)}ea=k+16|0;j:{if(c){d=F[b+4>>2];c=F[d+4>>2];F[d+4>>2]=e;if(c){Sc(c)}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;break j}c=sa(32);d=G[1723]|G[1724]<<8;D[c+24|0]=d;D[c+25|0]=d>>>8;d=G[1719]|G[1720]<<8|(G[1721]<<16|G[1722]<<24);f=G[1715]|G[1716]<<8|(G[1717]<<16|G[1718]<<24);D[c+16|0]=f;D[c+17|0]=f>>>8;D[c+18|0]=f>>>16;D[c+19|0]=f>>>24;D[c+20|0]=d;D[c+21|0]=d>>>8;D[c+22|0]=d>>>16;D[c+23|0]=d>>>24;d=G[1711]|G[1712]<<8|(G[1713]<<16|G[1714]<<24);f=G[1707]|G[1708]<<8|(G[1709]<<16|G[1710]<<24);D[c+8|0]=f;D[c+9|0]=f>>>8;D[c+10|0]=f>>>16;D[c+11|0]=f>>>24;D[c+12|0]=d;D[c+13|0]=d>>>8;D[c+14|0]=d>>>16;D[c+15|0]=d>>>24;d=G[1703]|G[1704]<<8|(G[1705]<<16|G[1706]<<24);f=G[1699]|G[1700]<<8|(G[1701]<<16|G[1702]<<24);D[c|0]=f;D[c+1|0]=f>>>8;D[c+2|0]=f>>>16;D[c+3|0]=f>>>24;D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;D[c+26|0]=0;F[a>>2]=-1;Ba(a+4|0,c,26);ra(c);F[j+8>>2]=0;Sc(e)}ea=j+16|0;if(F[a>>2]){break a}if(D[i+11|0]>=0){break b}ra(F[i>>2])}if(!(ga[F[F[b>>2]+12>>2]](b)|0)){b=sa(48);D[b+32|0]=G[1528];c=G[1524]|G[1525]<<8|(G[1526]<<16|G[1527]<<24);d=G[1520]|G[1521]<<8|(G[1522]<<16|G[1523]<<24);D[b+24|0]=d;D[b+25|0]=d>>>8;D[b+26|0]=d>>>16;D[b+27|0]=d>>>24;D[b+28|0]=c;D[b+29|0]=c>>>8;D[b+30|0]=c>>>16;D[b+31|0]=c>>>24;c=G[1516]|G[1517]<<8|(G[1518]<<16|G[1519]<<24);d=G[1512]|G[1513]<<8|(G[1514]<<16|G[1515]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1508]|G[1509]<<8|(G[1510]<<16|G[1511]<<24);d=G[1504]|G[1505]<<8|(G[1506]<<16|G[1507]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1500]|G[1501]<<8|(G[1502]<<16|G[1503]<<24);d=G[1496]|G[1497]<<8|(G[1498]<<16|G[1499]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+33|0]=0;F[a>>2]=-1;Ba(i,b,33);ra(b);break a}if(!(ga[F[F[b>>2]+20>>2]](b)|0)){b=mc(h,1726);F[a>>2]=-1;if(D[b+11|0]>=0){a=F[h+4>>2];F[i>>2]=F[h>>2];F[i+4>>2]=a;F[i+8>>2]=F[h+8>>2];break a}Ba(i,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break a}ra(F[b>>2]);break a}if(!(ga[F[F[b>>2]+24>>2]](b)|0)){b=mc(h,1461);F[a>>2]=-1;if(D[b+11|0]>=0){a=F[h+4>>2];F[i>>2]=F[h>>2];F[i+4>>2]=a;F[i+8>>2]=F[h+8>>2];break a}Ba(i,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break a}ra(F[b>>2]);break a}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ea=h+32|0}function vf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=M(0),p=0,q=0,r=0;f=ea-720|0;ea=f;a:{b:{c:{d:{e:{f:{g:{h:{if(H[b+38>>1]>=515){F[f+680>>2]=0;F[f+672>>2]=0;F[f+676>>2]=0;if((ga[F[F[a>>2]+24>>2]](a)|0)<=0){break d}while(1){c=ga[F[F[a>>2]+20>>2]](a,k)|0;d=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];if(F[d+28>>2]==9){e=F[f+672>>2];c=F[f+676>>2]-e>>2;g=D[d+24|0];i:{if(c>>>0>>0){Aa(f+672|0,g-c|0);break i}if(c>>>0<=g>>>0){break i}F[f+676>>2]=e+(g<<2)}h=0;c=F[b+20>>2];j=F[b+16>>2];d=g<<2;i=j+d|0;e=F[b+12>>2];c=d>>>0>i>>>0?c+1|0:c;if(i>>>0>I[b+8>>2]&(e|0)<=(c|0)|(c|0)>(e|0)){break b}ta(F[f+672>>2],j+F[b>>2]|0,d);c=F[b+20>>2];e=d+F[b+16>>2]|0;c=e>>>0>>0?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;l=F[b+12>>2];j=l;i=e+4|0;d=i>>>0<4?c+1|0:c;m=F[b+8>>2];if(m>>>0>>0&(d|0)>=(j|0)|(d|0)>(j|0)){break b}n=F[b>>2];j=n+e|0;j=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=d;if((d|0)>=(l|0)&i>>>0>=m>>>0|(d|0)>(l|0)){break b}d=G[i+n|0];e=e+5|0;c=e>>>0<5?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;if(d>>>0>31){break b}o=(z(2,j),A());F[f+20>>2]=-1;F[f+16>>2]=1140;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;c=f+16|0;e=F[f+672>>2];i=d-1|0;if(i>>>0<=29){F[c+4>>2]=d;Ca(c+8|0,e,e+(g<<2)|0);J[c+20>>2]=o}j:{if(i>>>0>=30){break j}if(!Vc(f+16|0,F[F[a+60>>2]+((F[a+40>>2]-F[a+36>>2]|0)/24<<2)>>2])){break j}c=F[a+40>>2];k:{if((c|0)!=F[a+44>>2]){F[c>>2]=1140;d=F[f+20>>2];F[c+16>>2]=0;F[c+8>>2]=0;F[c+12>>2]=0;F[c+4>>2]=d;g=F[f+28>>2]-F[f+24>>2]|0;if(g){if((g|0)<0){break h}d=sa(g);F[c+8>>2]=d;F[c+12>>2]=d;F[c+16>>2]=d+(g>>2<<2);e=F[f+24>>2];g=F[f+28>>2]-e|0;if((g|0)>0){d=ta(d,e,g)+g|0}F[c+12>>2]=d}J[c+20>>2]=J[f+36>>2];F[a+40>>2]=c+24;break k}c=0;l:{m:{n:{o:{g=F[a+40>>2];h=F[a+36>>2];e=(g-h|0)/24|0;d=e+1|0;if(d>>>0<178956971){i=(F[a+44>>2]-h|0)/24|0;j=i<<1;i=i>>>0<89478485?d>>>0>j>>>0?d:j:178956970;if(i){if(i>>>0>=178956971){break o}c=sa(L(i,24))}e=L(e,24)+c|0;F[e>>2]=1140;d=F[f+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+4>>2]=d;l=F[f+24>>2];d=F[f+28>>2]-l|0;if(d){if((d|0)<0){break n}j=sa(d);F[e+8>>2]=j;F[e+16>>2]=j+(d>>2<<2);q=e,r=ta(j,l,d)+d|0,F[q+12>>2]=r}c=L(i,24)+c|0;J[e+20>>2]=J[f+36>>2];d=e+24|0;if((g|0)==(h|0)){break m}while(1){e=e-24|0;F[e>>2]=1140;F[e+4>>2]=F[g-20>>2];i=g-16|0;F[e+8>>2]=F[i>>2];F[e+12>>2]=F[g-12>>2];j=g-8|0;F[e+16>>2]=F[j>>2];F[j>>2]=0;F[i>>2]=0;F[i+4>>2]=0;J[e+20>>2]=J[g-4>>2];g=g-24|0;if((h|0)!=(g|0)){continue}break}F[a+44>>2]=c;h=F[a+40>>2];F[a+40>>2]=d;g=F[a+36>>2];F[a+36>>2]=e;if((g|0)==(h|0)){break l}while(1){h=h-24|0;ga[F[F[h>>2]>>2]](h)|0;if((g|0)!=(h|0)){continue}break}break l}va();V()}wa(1336);V()}va();V()}F[a+44>>2]=c;F[a+40>>2]=d;F[a+36>>2]=e}if(g){ra(g)}}h=1}F[f+16>>2]=1140;c=F[f+24>>2];if(c){F[f+28>>2]=c;ra(c)}if(!h){break c}}k=k+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(k|0)){continue}break}break d}i=ga[F[F[a>>2]+24>>2]](a)|0;F[f+712>>2]=0;F[f+704>>2]=0;F[f+708>>2]=0;if(i){if(i>>>0>=214748365){break g}c=L(i,20);d=sa(c);F[f+704>>2]=d;F[f+712>>2]=c+d;c=L((c-20>>>0)/20|0,20)+20|0;d=ua(d,0,c);F[f+708>>2]=c+d;while(1){c=ga[F[F[a>>2]+20>>2]](a,k)|0;g=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];j=F[g+28>>2];c=j-1|0;if(c>>>0<=10){c=F[(c<<2)+13616>>2]}else{c=-1}l=(c|0)>0?c:0;if(l>>>0>4){break e}c=d+L(k,20)|0;m=D[g+24|0];F[c+16>>2]=m;F[c+12>>2]=l;F[c+8>>2]=j;F[c+4>>2]=e;F[c>>2]=g;e=e+m|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}c=ga[F[F[a>>2]+20>>2]](a,0)|0;m=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];D[m+84|0]=1;F[m+72>>2]=F[m+68>>2];g=F[b+12>>2];c=g;d=F[b+20>>2];j=F[b+8>>2];k=F[b+16>>2];if((c|0)<=(d|0)&j>>>0<=k>>>0|(c|0)<(d|0)){break e}n=F[b>>2];p=G[n+k|0];c=d;l=k+1|0;c=l?c:c+1|0;F[b+16>>2]=l;F[b+20>>2]=c;p:{switch(p|0){case 0:q:{if(j>>>0<=l>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break q}c=d;a=k+2|0;c=a>>>0<2?c+1|0:c;F[b+16>>2]=a;F[b+20>>2]=c;c=d;d=k+6|0;c=d>>>0<6?c+1|0:c;if(d>>>0>j>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break q}a=a+n|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;pb(m,a);h=f+672|0;F[h+20>>2]=0;F[h+12>>2]=0;F[h+16>>2]=0;F[h>>2]=0;F[h+4>>2]=0;F[h+20>>2]=a;k=Ac(f+16|0,f+704|0);g=0;e=ea-32|0;ea=e;F[e+24>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;a=F[b+12>>2];j=a;c=F[b+20>>2];d=c;l=F[b+16>>2];i=l+4|0;c=i>>>0<4?c+1|0:c;m=F[b+8>>2];r:{if(m>>>0>>0&(a|0)<=(c|0)|(a|0)<(c|0)){break r}n=F[b>>2];a=n+l|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;s:{t:{switch(a-2|0){case 1:if((c|0)>=(j|0)&i>>>0>=m>>>0|(c|0)>(j|0)){break r}a=D[i+n|0];c=d;d=l+5|0;c=d>>>0<5?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;F[h+8>>2]=a;if((a|0)==1){if(Rd(h,b,e+16|0)){break s}break r}Dd(1943,23,F[3451]);break r;default:Dd(1918,24,F[3451]);break r;case 0:break t}}if(!Rd(h,b,e+16|0)){break r}}F[e+8>>2]=F[e+16>>2];F[e>>2]=F[e+20>>2];a=ea-32|0;ea=a;b=F[h>>2];o=J[h+4>>2];g=a+24|0;F[g>>2]=1065353216;b=-1<0){J[g>>2]=o/M(b|0)}h=F[e+8>>2];if((h|0)!=F[e>>2]){c=F[k+28>>2];while(1){d=F[h>>2];i=F[h+4>>2];o=J[g>>2];J[a+16>>2]=o*M(F[h+8>>2]-b|0);J[a+12>>2]=o*M(i-b|0);J[a+8>>2]=o*M(d-b|0);i=F[k+16>>2];d=F[i>>2];if(!G[d+84|0]){c=F[F[d+68>>2]+(c<<2)>>2]}j=c;c=F[d+40>>2];ta(F[F[d>>2]>>2]+L(j,c)|0,(a+8|0)+(F[i+4>>2]<<2)|0,c);c=F[k+28>>2]+1|0;F[k+28>>2]=c;h=h+12|0;if((h|0)!=F[e>>2]){continue}break}}ea=a+32|0;g=1}a=F[e+16>>2];if(a){F[e+20>>2]=a;ra(a)}ea=e+32|0;yc(k);h=1;if(g){break e}}h=0;break e;case 1:break p;default:break e}}if(j>>>0<=l>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break e}l=G[l+n|0];c=d;m=k+2|0;c=m>>>0<2?c+1|0:c;F[b+16>>2]=m;F[b+20>>2]=c;if(l>>>0>=7){F[f>>2]=l;Ad(1795,f);break e}c=d;d=k+6|0;c=d>>>0<6?c+1|0:c;k=d;if(d>>>0>j>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break e}d=m+n|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=k;F[b+20>>2]=c;if(i){k=0;while(1){c=ga[F[F[a>>2]+20>>2]](a,k)|0;c=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];pb(c,d);D[c+84|0]=1;F[c+72>>2]=F[c+68>>2];k=k+1|0;if((i|0)!=(k|0)){continue}break}}a=Ac(f+672|0,f+704|0);u:{v:{switch(l|0){case 1:c=yb(f+16|0,e);b=zd(c,b,a);zb(c);if(!b){break f}break u;case 2:c=wb(f+16|0,e);b=yd(c,b,a);xb(c);if(!b){break f}break u;case 3:c=wb(f+16|0,e);b=xd(c,b,a);xb(c);if(!b){break f}break u;case 4:c=_a(f+16|0,e);b=wd(c,b,a);$a(c);if(!b){break f}break u;case 5:c=_a(f+16|0,e);b=vd(c,b,a);$a(c);if(!b){break f}break u;case 6:c=_a(f+16|0,e);b=ud(c,b,a);$a(c);if(b){break u}break f;case 0:break v;default:break f}}c=yb(f+16|0,e);b=Bd(c,b,a);zb(c);if(!b){break f}}yc(a);h=1;break e}va();V()}va();V()}yc(a)}a=F[f+704>>2];if(!a){break a}F[f+708>>2]=a;ra(a);break a}if(F[a+52>>2]==F[a+48>>2]){h=1;break b}k=0;while(1){if(!td(1,f+16|0,b)){break c}h=1;c=F[a+48>>2];d=F[f+16>>2];F[c+(k<<2)>>2]=d>>>1^0-(d&1);k=k+1|0;if(k>>>0>2]-c>>2>>>0){continue}break}break b}h=0}a=F[f+672>>2];if(!a){break a}F[f+676>>2]=a;ra(a)}ea=f+720|0;return h|0}function Bd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?d+1|0:d;j=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=j+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=h;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!h){return 1}h=0;F[a+8>>2]=0;if(!ya(a+16|0,b)){break a}if(!ya(a+36|0,b)){break a}if(!ya(a+56|0,b)){break a}if(!ya(a+76|0,b)){break a}r=F[a+4>>2];i=c;b=0;c=0;e=ea-32|0;ea=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=sa(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;ua(b,0,d);F[e+12>>2]=c}d=F[f+120>>2];h=F[d>>2];if(h){F[d+4>>2]=h;ra(h);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=sa(a);F[e+8>>2]=g;b=a+g|0;F[e+16>>2]=b;ua(g,0,a);F[e+12>>2]=b}a=F[f+132>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=r;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}while(1){k=F[e+12>>2];d=F[e+24>>2];g=a-1|0;b=d+g|0;c=(b>>>0)/341|0;c=F[k+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;b=F[c+8>>2];h=F[c+4>>2];j=F[c>>2];F[e+28>>2]=g;c=F[e+16>>2];g=c-k|0;if(((g?L(g>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){ra(F[c-4>>2]);F[e+16>>2]=F[e+16>>2]-4}d=0;if(j>>>0>r>>>0){break e}a=F[f+12>>2];g=(h|0)==(a-1|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}l=L(b,12);m=l+F[f+132>>2]|0;k=l+F[f+120>>2]|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){if(!j){break g}m=0;a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=j+F[i+28>>2];F[f+8>>2]=a+j;break g}while(1){h=0;h:{if((a|0)==(g|0)){break h}while(1){d=L(h,20)+a|0;c=F[k>>2]+(F[d+4>>2]<<2)|0;l=F[d>>2];g=F[d+12>>2];i:{if(g>>>0>3){break i}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break i}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break h}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((j|0)==(m|0)){break g}a=F[i+16>>2];g=F[i+20>>2];continue}}j:{k:{l:{m:{if(j>>>0<=2){c=F[f+108>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+120>>2];n=b+1|0;m=L(n,12);d=a+m|0;if((d|0)!=(k|0)){Ca(d,F[k>>2],F[k+4>>2]);a=F[f+120>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>2];h=32-c|0;n:{if((a|0)<=(h|0)){h=F[f+28>>2];if((h|0)==F[f+20>>2]){d=0;break n}d=F[h>>2];k=a+c|0;F[f+32>>2]=k;d=d<>>32-a|0;if((k|0)!=32){break n}F[f+32>>2]=0;F[f+28>>2]=h+4;break n}d=F[f+28>>2];k=d+4|0;if((k|0)==F[f+20>>2]){d=0;break n}q=F[d>>2];F[f+28>>2]=k;h=a-h|0;F[f+32>>2]=h;d=F[d+4>>2]>>>32-h|q<>>32-a}a=(j>>>1|0)-d|0;d=j-a|0;o:{if((d|0)==(a|0)){d=a;break o}c=F[f+88>>2];if((c|0)==F[f+80>>2]){break l}h=F[c>>2];j=F[f+92>>2];k=j+1|0;F[f+92>>2]=k;h=h&-2147483648>>>j;p:{if((k|0)==32){F[f+92>>2]=0;F[f+88>>2]=c+4;if(h){break p}break l}if(!h){break l}}}h=d;d=a;break k}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break j}h=a}a=F[f+132>>2];c=a+l|0;j=F[c>>2];k=j+o|0;F[k>>2]=F[k>>2]+1;Ca(a+m|0,j,F[c+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];j=F[e+16>>2]-c|0;if((a|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}j=c;c=(a>>>0)/341|0;a=F[j+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;F[a+8>>2]=b;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!h){break g}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=h;a=F[e+28>>2]+1|0;F[e+28>>2]=a;break f}o=0;if(!j){break g}while(1){if(a){h=F[f+40>>2];d=F[f+96>>2];q=F[f+108>>2];t=F[k>>2];u=F[m>>2];a=0;while(1){g=q+(a<<2)|0;F[d+(F[g>>2]<<2)>>2]=0;c=F[g>>2]<<2;b=F[f>>2]-F[c+u>>2]|0;q:{if(!b){break q}c=c+d|0;l=F[f+52>>2];p=32-l|0;if((p|0)>=(b|0)){n=F[f+48>>2];if((n|0)==(h|0)){F[c>>2]=0;break q}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+52>>2]|0;F[f+52>>2]=b;if((b|0)!=32){break q}F[f+52>>2]=0;F[f+48>>2]=n+4;break q}n=F[f+48>>2];s=n+4|0;if((h|0)==(s|0)){F[c>>2]=0;break q}v=F[n>>2];F[f+48>>2]=s;p=b-p|0;F[f+52>>2]=p;F[c>>2]=F[n+4>>2]>>>32-p|v<>>32-b}b=F[g>>2]<<2;c=b+d|0;F[c>>2]=F[c>>2]|F[b+t>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];r:{if((a|0)==F[i+20>>2]){break r}while(1){d=L(h,20)+a|0;c=F[f+96>>2]+(F[d+4>>2]<<2)|0;l=F[d>>2];g=F[d+12>>2];s:{if(g>>>0>3){break s}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break s}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break r}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((j|0)==(o|0)){break g}a=F[f+12>>2];continue}}a=F[e+28>>2]}if(a){continue}break}d=1}F[e+28>>2]=0;g=F[e+16>>2];a=F[e+12>>2];b=g-a>>2;if(b>>>0>=3){while(1){ra(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;g=F[e+16>>2];b=g-a>>2;if(b>>>0>2){continue}break}}c=170;t:{switch(b-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break t}}u:{if((a|0)==(g|0)){break u}while(1){ra(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break u}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}h=d}return h}function zd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?f+1|0:f;k=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=k+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=g;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!g){return 1}g=0;F[a+8>>2]=0;if(!ya(a+16|0,b)){break a}if(!ya(a+36|0,b)){break a}if(!ya(a+56|0,b)){break a}if(!ya(a+76|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;e=ea-32|0;ea=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=sa(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;ua(b,0,d);F[e+12>>2]=c}d=F[f+120>>2];g=F[d>>2];if(g){F[d+4>>2]=g;ra(g);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;h=sa(a);F[e+8>>2]=h;b=a+h|0;F[e+16>>2]=b;ua(h,0,a);F[e+12>>2]=b}a=F[f+132>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;h=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=h;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}while(1){j=F[e+12>>2];d=F[e+24>>2];h=a-1|0;b=d+h|0;c=(b>>>0)/341|0;b=F[j+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;c=F[b+8>>2];g=F[b+4>>2];k=F[b>>2];F[e+28>>2]=h;b=F[e+16>>2];h=b-j|0;if(((h?L(h>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(k>>>0>p>>>0){d=0;break e}d=0;a=F[f+12>>2];h=(g|0)==(a-1|0)?0:g+1|0;if(h>>>0>=a>>>0){break e}a=F[f+120>>2];b=L(c,12);m=a+b|0;f:{g:{j=h<<2;q=b+F[f+132>>2]|0;g=F[f>>2]-F[j+F[q>>2]>>2]|0;if(!g){if(!k){break g}a=F[i+16>>2];h=F[i+20>>2];if((a|0)==(h|0)){a=F[f+8>>2];F[i+28>>2]=k+F[i+28>>2];F[f+8>>2]=a+k;break g}while(1){g=0;h:{if((a|0)==(h|0)){break h}while(1){j=L(g,20)+a|0;c=F[m>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];h=F[j+12>>2];i:{if(h>>>0>3){break i}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break i}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[j+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break h}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[i+16>>2];if(g>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;d=d+1|0;if((k|0)==(d|0)){break g}a=F[i+16>>2];h=F[i+20>>2];continue}}j:{k:{l:{m:{if(k>>>0<=2){c=F[f+108>>2];F[c>>2]=h;b=1;a=F[f+12>>2];if(a>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}d=a;a=b+12|0;Ca(d+a|0,F[m>>2],F[m+4>>2]);a=j+F[a+F[f+120>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2];l=32-d|0;n:{if((a|0)<=(l|0)){g=F[f+28>>2];if((g|0)==F[f+20>>2]){d=0;break n}l=F[g>>2];m=a+d|0;F[f+32>>2]=m;d=l<>>32-a|0;if((m|0)!=32){break n}F[f+32>>2]=0;F[f+28>>2]=g+4;break n}g=F[f+28>>2];m=g+4|0;if((m|0)==F[f+20>>2]){d=0;break n}n=F[g>>2];F[f+28>>2]=m;l=a-l|0;F[f+32>>2]=l;d=F[g+4>>2]>>>32-l|n<>>32-a}l=c+1|0;a=(k>>>1|0)-d|0;d=k-a|0;o:{if((d|0)==(a|0)){d=a;break o}g=F[f+88>>2];if((g|0)==F[f+80>>2]){break l}k=F[g>>2];m=F[f+92>>2];n=m+1|0;F[f+92>>2]=n;k=k&-2147483648>>>m;p:{if((n|0)==32){F[f+92>>2]=0;F[f+88>>2]=g+4;if(k){break p}break l}if(!k){break l}}}g=d;d=a;break k}while(1){h=(a-1|0)==(h|0)?0:h+1|0;F[c+(b<<2)>>2]=h;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break j}g=a}a=F[f+132>>2];b=a+b|0;k=F[b>>2];j=k+j|0;F[j>>2]=F[j>>2]+1;Ca(a+L(l,12)|0,k,F[b+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];k=F[e+16>>2]-b|0;if((a|0)==((k?L(k>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}k=b;b=(a>>>0)/341|0;a=F[k+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=h;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!g){break g}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=h;F[a>>2]=g;a=F[e+28>>2]+1|0;F[e+28>>2]=a;break f}if(!k){break g}while(1){if(a){h=F[f+40>>2];g=F[f+96>>2];s=F[f+108>>2];t=F[m>>2];u=F[q>>2];a=0;while(1){j=(a<<2)+s|0;F[g+(F[j>>2]<<2)>>2]=0;c=F[j>>2]<<2;b=F[f>>2]-F[c+u>>2]|0;q:{if(!b){break q}c=c+g|0;l=F[f+52>>2];o=32-l|0;if((o|0)>=(b|0)){n=F[f+48>>2];if((n|0)==(h|0)){F[c>>2]=0;break q}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+52>>2]|0;F[f+52>>2]=b;if((b|0)!=32){break q}F[f+52>>2]=0;F[f+48>>2]=n+4;break q}n=F[f+48>>2];r=n+4|0;if((h|0)==(r|0)){F[c>>2]=0;break q}v=F[n>>2];F[f+48>>2]=r;o=b-o|0;F[f+52>>2]=o;F[c>>2]=F[n+4>>2]>>>32-o|v<>>32-b}b=F[j>>2]<<2;c=b+g|0;F[c>>2]=F[c>>2]|F[b+t>>2];a=a+1|0;if(a>>>0>2]){continue}break}}g=0;a=F[i+16>>2];r:{if((a|0)==F[i+20>>2]){break r}while(1){j=L(g,20)+a|0;c=F[f+96>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];h=F[j+12>>2];s:{if(h>>>0>3){break s}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break s}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[j+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break r}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[i+16>>2];if(g>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;d=d+1|0;if((k|0)==(d|0)){break g}a=F[f+12>>2];continue}}a=F[e+28>>2]}if(a){continue}break}d=1}F[e+28>>2]=0;h=F[e+16>>2];a=F[e+12>>2];b=h-a>>2;if(b>>>0>=3){while(1){ra(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;h=F[e+16>>2];b=h-a>>2;if(b>>>0>2){continue}break}}c=170;t:{switch(b-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break t}}u:{if((a|0)==(h|0)){break u}while(1){ra(F[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break u}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}g=d}return g}function yd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?d+1|0:d;j=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=j+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=h;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!h){return 1}h=0;F[a+8>>2]=0;if(!xa(a+16|0,b)){break a}if(!ya(a+32|0,b)){break a}if(!ya(a+52|0,b)){break a}if(!ya(a+72|0,b)){break a}q=F[a+4>>2];i=c;b=0;c=0;e=ea-32|0;ea=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=sa(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;ua(b,0,d);F[e+12>>2]=c}d=F[f+116>>2];h=F[d>>2];if(h){F[d+4>>2]=h;ra(h);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=sa(a);F[e+8>>2]=g;b=a+g|0;F[e+16>>2]=b;ua(g,0,a);F[e+12>>2]=b}a=F[f+128>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}s=f+16|0;while(1){l=F[e+12>>2];d=F[e+24>>2];g=a-1|0;b=d+g|0;c=(b>>>0)/341|0;c=F[l+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;b=F[c+8>>2];h=F[c+4>>2];j=F[c>>2];F[e+28>>2]=g;c=F[e+16>>2];g=c-l|0;if(((g?L(g>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){ra(F[c-4>>2]);F[e+16>>2]=F[e+16>>2]-4}d=0;if(j>>>0>q>>>0){break e}a=F[f+12>>2];g=(a-1|0)==(h|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}c=L(b,12);m=c+F[f+128>>2]|0;l=c+F[f+116>>2]|0;f:{k=g<<2;h=F[f>>2]-F[k+F[m>>2]>>2]|0;if(!h){if(!j){break f}m=0;a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=j+F[i+28>>2];F[f+8>>2]=a+j;break f}while(1){h=0;g:{if((a|0)==(g|0)){break g}while(1){d=L(h,20)+a|0;c=F[l>>2]+(F[d+4>>2]<<2)|0;k=F[d>>2];g=F[d+12>>2];h:{if(g>>>0>3){break h}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break h}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[k+84|0]?a:F[F[k+68>>2]+(a<<2)>>2];if(a>>>0>=I[k+80>>2]){break g}b=a;a=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((j|0)==(m|0)){break f}a=F[i+16>>2];g=F[i+20>>2];continue}}i:{j:{k:{l:{if(j>>>0<=2){c=F[f+104>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break l}break i}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+116>>2];o=b+1|0;m=L(o,12);d=a+m|0;if((d|0)!=(l|0)){Ca(d,F[l>>2],F[l+4>>2]);a=F[f+116>>2]}a=k+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=0;oc(s,O(j)^31,e+4|0);a=(j>>>1|0)-F[e+4>>2]|0;d=j-a|0;m:{if((d|0)==(a|0)){d=a;break m}h=F[f+84>>2];if((h|0)==F[f+76>>2]){break k}j=F[h>>2];l=F[f+88>>2];n=l+1|0;F[f+88>>2]=n;j=j&-2147483648>>>l;n:{if((n|0)==32){F[f+88>>2]=0;F[f+84>>2]=h+4;if(j){break n}break k}if(!j){break k}}}h=d;d=a;break j}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break i}h=a}a=F[f+128>>2];c=a+c|0;j=F[c>>2];l=j+k|0;F[l>>2]=F[l>>2]+1;Ca(a+m|0,j,F[c+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];j=F[e+16>>2]-c|0;if((a|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}j=c;c=(a>>>0)/341|0;a=F[j+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;F[a+8>>2]=b;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!h){break f}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=o;F[a+4>>2]=g;F[a>>2]=h;F[e+28>>2]=F[e+28>>2]+1;break f}o=0;if(!j){break f}while(1){if(a){h=F[f+36>>2];d=F[f+92>>2];t=F[f+104>>2];u=F[l>>2];v=F[m>>2];a=0;while(1){g=(a<<2)+t|0;F[d+(F[g>>2]<<2)>>2]=0;c=F[g>>2]<<2;b=F[f>>2]-F[c+v>>2]|0;o:{if(!b){break o}c=c+d|0;k=F[f+48>>2];p=32-k|0;if((p|0)>=(b|0)){n=F[f+44>>2];if((n|0)==(h|0)){F[c>>2]=0;break o}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+48>>2]|0;F[f+48>>2]=b;if((b|0)!=32){break o}F[f+48>>2]=0;F[f+44>>2]=n+4;break o}n=F[f+44>>2];r=n+4|0;if((h|0)==(r|0)){F[c>>2]=0;break o}w=F[n>>2];F[f+44>>2]=r;p=b-p|0;F[f+48>>2]=p;F[c>>2]=F[n+4>>2]>>>32-p|w<>>32-b}b=F[g>>2]<<2;c=b+d|0;F[c>>2]=F[c>>2]|F[b+u>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];p:{if((a|0)==F[i+20>>2]){break p}while(1){d=L(h,20)+a|0;c=F[f+92>>2]+(F[d+4>>2]<<2)|0;k=F[d>>2];g=F[d+12>>2];q:{if(g>>>0>3){break q}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break q}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[k+84|0]?a:F[F[k+68>>2]+(a<<2)>>2];if(a>>>0>=I[k+80>>2]){break p}b=a;a=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((j|0)==(o|0)){break f}a=F[f+12>>2];continue}}a=F[e+28>>2];if(a){continue}break}d=1}F[e+28>>2]=0;g=F[e+16>>2];a=F[e+12>>2];b=g-a>>2;if(b>>>0>=3){while(1){ra(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;g=F[e+16>>2];b=g-a>>2;if(b>>>0>2){continue}break}}c=170;r:{switch(b-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break r}}s:{if((a|0)==(g|0)){break s}while(1){ra(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break s}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}h=d}return h}function wd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F[b+12>>2];f=F[b+20>>2];e=F[b+16>>2];g=e+4|0;f=g>>>0<4?f+1|0:f;a:{if(g>>>0>I[b+8>>2]&(f|0)>=(h|0)|(f|0)>(h|0)){break a}f=e+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];h=f;g=F[b+16>>2];e=g+4|0;f=e>>>0<4?f+1|0:f;i=e;F[b+16>>2]=e;F[b+20>>2]=f;if(I[a>>2]>32){break a}e=F[b+12>>2];f=h;h=g+8|0;f=h>>>0<8?f+1|0:f;if((e|0)<=(f|0)&h>>>0>I[b+8>>2]|(e|0)<(f|0)){break a}d=i+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!ub(a+16|0,b)){break a}if(!ya(a+544|0,b)){break a}if(!ya(a+564|0,b)){break a}if(!ya(a+584|0,b)){break a}q=F[a+4>>2];h=c;c=0;b=0;e=ea-32|0;ea=e;f=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;c=sa(a);F[e+8>>2]=c;b=a+c|0;F[e+16>>2]=b;ua(c,0,a);F[e+12>>2]=b}a=F[f+628>>2];g=F[a>>2];if(g){F[a+4>>2]=g;ra(g);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[f+12>>2];c=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=c;F[a+8>>2]=F[e+16>>2];c=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;g=sa(a);F[e+8>>2]=g;c=a+g|0;F[e+16>>2]=c;ua(g,0,a);F[e+12>>2]=c}a=F[f+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];c=F[e+12>>2]}F[a+4>>2]=c;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){l=F[e+12>>2];b=F[e+24>>2];g=d-1|0;a=b+g|0;c=(a>>>0)/341|0;a=F[l+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;j=F[a+8>>2];c=F[a+4>>2];i=F[a>>2];F[e+28>>2]=g;a=F[e+16>>2];g=a-l|0;if(((g?L(g>>2,341)-1|0:0)-(b+d|0)|0)+1>>>0>=682){ra(F[a-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(i>>>0>q>>>0){break e}a=F[f+12>>2];g=(a-1|0)==(c|0)?0:c+1|0;if(g>>>0>=a>>>0){break e}k=L(j,12);m=k+F[f+640>>2]|0;l=k+F[f+628>>2]|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){m=0;if(!i){break g}while(1){a=0;d=F[h+16>>2];h:{if((d|0)==F[h+20>>2]){break h}while(1){j=L(a,20)+d|0;b=F[l>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];i:{if(g>>>0>3){break i}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break i}d=0;while(1){c=ta(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}c=F[k+40>>2];ta(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((i|0)!=(m|0)){continue}break}break g}j:{k:{l:{m:{if(i>>>0<=2){a=F[f+616>>2];F[a>>2]=g;c=1;d=F[f+12>>2];if(d>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];n=j+1|0;m=L(n,12);b=a+m|0;if((b|0)!=(l|0)){Ca(b,F[l>>2],F[l+4>>2]);a=F[f+628>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-c|0;d=i-a|0;n:{if((d|0)==(a|0)){b=a;break n}b=F[f+596>>2];if((b|0)==F[f+588>>2]){break l}c=F[b>>2];i=F[f+600>>2];l=i+1|0;F[f+600>>2]=l;c=c&-2147483648>>>i;o:{if((l|0)==32){F[f+600>>2]=0;F[f+596>>2]=b+4;if(c){break o}break l}if(!c){break l}}b=d}d=a;break k}while(1){g=(d-1|0)==(g|0)?0:g+1|0;F[a+(c<<2)>>2]=g;c=c+1|0;d=F[f+12>>2];if(c>>>0>>0){continue}break}break j}b=a}a=F[f+640>>2];c=a+k|0;i=F[c>>2];l=i+o|0;F[l>>2]=F[l>>2]+1;Ca(a+m|0,i,F[c+4>>2]);if(d){c=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];i=F[e+16>>2]-a|0;if((c|0)==((i?L(i>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+24>>2]+F[e+28>>2]|0;i=F[e+12>>2]}else{i=a}a=(c>>>0)/341|0;a=F[i+(a<<2)>>2]+L(c-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}d=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];a=F[e+16>>2]-c|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){za(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;c=F[e+12>>2]}a=(d>>>0)/341|0;a=F[c+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}o=0;if(!i){break g}while(1){if(d){g=F[f+548>>2];c=F[f+604>>2];s=F[f+616>>2];t=F[l>>2];u=F[m>>2];d=0;while(1){j=(d<<2)+s|0;F[c+(F[j>>2]<<2)>>2]=0;b=F[j>>2]<<2;a=F[f>>2]-F[b+u>>2]|0;p:{if(!a){break p}b=b+c|0;k=F[f+560>>2];p=32-k|0;if((p|0)>=(a|0)){n=F[f+556>>2];if((n|0)==(g|0)){F[b>>2]=0;break p}F[b>>2]=F[n>>2]<>>32-a;a=a+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break p}F[f+560>>2]=0;F[f+556>>2]=n+4;break p}n=F[f+556>>2];r=n+4|0;if((g|0)==(r|0)){F[b>>2]=0;break p}v=F[n>>2];F[f+556>>2]=r;p=a-p|0;F[f+560>>2]=p;F[b>>2]=F[n+4>>2]>>>32-p|v<>>32-a}a=F[j>>2]<<2;b=a+c|0;F[b>>2]=F[b>>2]|F[a+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=0;d=F[h+16>>2];q:{if((d|0)==F[h+20>>2]){break q}while(1){j=L(a,20)+d|0;b=F[f+604>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];r:{if(g>>>0>3){break r}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break r}d=0;while(1){c=ta(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}c=F[k+40>>2];ta(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((i|0)==(o|0)){break g}d=F[f+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;g=F[e+16>>2];d=F[e+12>>2];c=g-d>>2;if(c>>>0>=3){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;g=F[e+16>>2];c=g-d>>2;if(c>>>0>2){continue}break}}a=170;s:{switch(c-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(g|0)){break t}while(1){ra(F[d>>2]);d=d+4|0;if((g|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break t}F[e+16>>2]=a+(((a-c|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=b}return d} -function xd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=F[b+12>>2];e=F[b+20>>2];i=F[b+16>>2];d=i+4|0;e=d>>>0<4?e+1|0:e;a:{if(d>>>0>I[b+8>>2]&(e|0)>=(f|0)|(e|0)>(f|0)){break a}e=i+F[b>>2]|0;F[a>>2]=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);e=F[b+20>>2];f=e;d=F[b+16>>2];i=d+4|0;e=i>>>0<4?f+1|0:f;k=i;F[b+16>>2]=i;F[b+20>>2]=e;if(I[a>>2]>32){break a}i=F[b+12>>2];e=f;f=d+8|0;e=f>>>0<8?e+1|0:e;if(f>>>0>I[b+8>>2]&(e|0)>=(i|0)|(e|0)>(i|0)){break a}e=k+F[b>>2]|0;h=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a+4>>2]=h;e=F[b+20>>2];f=F[b+16>>2]+4|0;e=f>>>0<4?e+1|0:e;F[b+16>>2]=f;F[b+20>>2]=e;if(!h){return 1}h=0;F[a+8>>2]=0;if(!xa(a+16|0,b)){break a}if(!ya(a+32|0,b)){break a}if(!ya(a+52|0,b)){break a}if(!ya(a+72|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;d=ea-32|0;ea=d;f=a;a=F[a+12>>2];F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}e=a<<2;b=sa(e);F[d+8>>2]=b;c=b+e|0;F[d+16>>2]=c;ua(b,0,e);F[d+12>>2]=c}e=F[f+116>>2];h=F[e>>2];if(h){F[e+4>>2]=h;ra(h);F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=F[d+12>>2];b=F[d+8>>2];a=F[f+12>>2]}F[e+4>>2]=c;F[e>>2]=b;F[e+8>>2]=F[d+16>>2];b=0;F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=sa(a);F[d+8>>2]=g;b=a+g|0;F[d+16>>2]=b;ua(g,0,a);F[d+12>>2]=b}a=F[f+128>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[d+8>>2];b=F[d+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[d+16>>2];F[d+24>>2]=0;F[d+28>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;za(d+8|0);a=F[d+24>>2]+F[d+28>>2]|0;b=(a>>>0)/341|0;a=F[F[d+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;e=1;b=F[d+28>>2];a=b+1|0;F[d+28>>2]=a;e:{if(a>>>0>>0){break e}s=f+16|0;while(1){j=F[d+12>>2];e=F[d+24>>2];g=a-1|0;b=e+g|0;c=(b>>>0)/341|0;b=F[j+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;c=F[b+8>>2];h=F[b+4>>2];k=F[b>>2];F[d+28>>2]=g;b=F[d+16>>2];g=b-j|0;if(((g?L(g>>2,341)-1|0:0)-(a+e|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[d+16>>2]=F[d+16>>2]-4}if(k>>>0>p>>>0){e=0;break e}e=0;a=F[f+12>>2];g=(h|0)==(a-1|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}a=F[f+116>>2];b=L(c,12);n=a+b|0;f:{j=g<<2;q=b+F[f+128>>2]|0;h=F[f>>2]-F[j+F[q>>2]>>2]|0;if(!h){if(!k){break f}a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=k+F[i+28>>2];F[f+8>>2]=a+k;break f}while(1){h=0;g:{if((a|0)==(g|0)){break g}while(1){j=L(h,20)+a|0;c=F[n>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];g=F[j+12>>2];h:{if(g>>>0>3){break h}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break h}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[j+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break g}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((k|0)==(e|0)){break f}a=F[i+16>>2];g=F[i+20>>2];continue}}i:{j:{k:{l:{if(k>>>0<=2){c=F[f+104>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break l}break i}if(I[f+8>>2]>I[f+4>>2]){break e}e=a;a=b+12|0;Ca(e+a|0,F[n>>2],F[n+4>>2]);a=j+F[a+F[f+116>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=0;oc(s,O(k)^31,d+4|0);l=c+1|0;a=(k>>>1|0)-F[d+4>>2]|0;e=k-a|0;m:{if((e|0)==(a|0)){e=a;break m}h=F[f+84>>2];if((h|0)==F[f+76>>2]){break k}k=F[h>>2];n=F[f+88>>2];m=n+1|0;F[f+88>>2]=m;k=k&-2147483648>>>n;n:{if((m|0)==32){F[f+88>>2]=0;F[f+84>>2]=h+4;if(k){break n}break k}if(!k){break k}}}h=e;e=a;break j}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break i}h=a}a=F[f+128>>2];b=a+b|0;k=F[b>>2];j=k+j|0;F[j>>2]=F[j>>2]+1;Ca(a+L(l,12)|0,k,F[b+4>>2]);if(e){a=F[d+28>>2]+F[d+24>>2]|0;b=F[d+12>>2];k=F[d+16>>2]-b|0;if((a|0)==((k?L(k>>2,341)-1|0:0)|0)){za(d+8|0);b=F[d+12>>2];a=F[d+24>>2]+F[d+28>>2]|0}k=b;b=(a>>>0)/341|0;a=F[k+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=g;F[a>>2]=e;F[d+28>>2]=F[d+28>>2]+1}if(!h){break f}a=F[d+28>>2]+F[d+24>>2]|0;b=F[d+12>>2];c=F[d+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){za(d+8|0);b=F[d+12>>2];a=F[d+24>>2]+F[d+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=g;F[a>>2]=h;F[d+28>>2]=F[d+28>>2]+1;break f}if(!k){break f}while(1){if(a){g=F[f+36>>2];h=F[f+92>>2];t=F[f+104>>2];u=F[n>>2];v=F[q>>2];a=0;while(1){j=(a<<2)+t|0;F[h+(F[j>>2]<<2)>>2]=0;c=F[j>>2]<<2;b=F[f>>2]-F[c+v>>2]|0;o:{if(!b){break o}c=c+h|0;l=F[f+48>>2];o=32-l|0;if((o|0)>=(b|0)){m=F[f+44>>2];if((m|0)==(g|0)){F[c>>2]=0;break o}F[c>>2]=F[m>>2]<>>32-b;b=b+F[f+48>>2]|0;F[f+48>>2]=b;if((b|0)!=32){break o}F[f+48>>2]=0;F[f+44>>2]=m+4;break o}m=F[f+44>>2];r=m+4|0;if((g|0)==(r|0)){F[c>>2]=0;break o}w=F[m>>2];F[f+44>>2]=r;o=b-o|0;F[f+48>>2]=o;F[c>>2]=F[m+4>>2]>>>32-o|w<>>32-b}b=F[j>>2]<<2;c=b+h|0;F[c>>2]=F[c>>2]|F[b+u>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];p:{if((a|0)==F[i+20>>2]){break p}while(1){j=L(h,20)+a|0;c=F[f+92>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];g=F[j+12>>2];q:{if(g>>>0>3){break q}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break q}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[j+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break p}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((k|0)==(e|0)){break f}a=F[f+12>>2];continue}}a=F[d+28>>2];if(a){continue}break}e=1}F[d+28>>2]=0;g=F[d+16>>2];a=F[d+12>>2];b=g-a>>2;if(b>>>0>=3){while(1){ra(F[a>>2]);a=F[d+12>>2]+4|0;F[d+12>>2]=a;g=F[d+16>>2];b=g-a>>2;if(b>>>0>2){continue}break}}c=170;r:{switch(b-1|0){case 1:c=341;case 0:F[d+24>>2]=c;break;default:break r}}s:{if((a|0)==(g|0)){break s}while(1){ra(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[d+16>>2];b=F[d+12>>2];if((a|0)==(b|0)){break s}F[d+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[d+8>>2];if(a){ra(a)}ea=d+32|0;break b}va();V()}va();V()}h=e}return h}function vd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=F[b+12>>2];f=F[b+20>>2];i=F[b+16>>2];e=i+4|0;f=e>>>0<4?f+1|0:f;a:{if((g|0)<=(f|0)&e>>>0>I[b+8>>2]|(g|0)<(f|0)){break a}f=i+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];g=f;e=F[b+16>>2];i=e+4|0;f=i>>>0<4?g+1|0:g;j=i;F[b+16>>2]=i;F[b+20>>2]=f;if(I[a>>2]>32){break a}i=F[b+12>>2];f=g;g=e+8|0;f=g>>>0<8?f+1|0:f;if(g>>>0>I[b+8>>2]&(f|0)>=(i|0)|(f|0)>(i|0)){break a}d=j+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!ub(a+16|0,b)){break a}if(!ya(a+544|0,b)){break a}if(!ya(a+564|0,b)){break a}if(!ya(a+584|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;e=ea-32|0;ea=e;g=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;b=sa(a);F[e+8>>2]=b;c=a+b|0;F[e+16>>2]=c;ua(b,0,a);F[e+12>>2]=c}a=F[g+628>>2];f=F[a>>2];if(f){F[a+4>>2]=f;ra(f);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[g+12>>2];c=F[e+12>>2];b=F[e+8>>2]}F[a+4>>2]=c;F[a>>2]=b;F[a+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;h=sa(a);F[e+8>>2]=h;b=a+h|0;F[e+16>>2]=b;ua(h,0,a);F[e+12>>2]=b}a=F[g+640>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;h=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=h;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;c=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){h=F[e+12>>2];c=F[e+24>>2];f=d-1|0;a=c+f|0;b=(a>>>0)/341|0;a=F[h+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;l=F[a+8>>2];b=F[a+4>>2];j=F[a>>2];F[e+28>>2]=f;a=F[e+16>>2];f=a-h|0;if(((f?L(f>>2,341)-1|0:0)-(c+d|0)|0)+1>>>0>=682){ra(F[a-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(j>>>0>p>>>0){c=0;break e}c=0;a=F[g+12>>2];h=(b|0)==(a-1|0)?0:b+1|0;if(h>>>0>=a>>>0){break e}a=F[g+628>>2];k=L(l,12);n=a+k|0;f:{g:{m=h<<2;q=k+F[g+640>>2]|0;b=F[g>>2]-F[m+F[q>>2]>>2]|0;if(!b){a=0;if(!j){break g}while(1){f=0;d=F[i+16>>2];h:{if((d|0)==F[i+20>>2]){break h}while(1){l=L(f,20)+d|0;c=F[n>>2]+(F[l+4>>2]<<2)|0;k=F[l>>2];h=F[l+12>>2];i:{if(h>>>0>3){break i}b=F[i+12>>2];if(!F[l+16>>2]){c=b;break i}d=0;while(1){b=ta(b,(d<<2)+c|0,h);h=F[l+12>>2];b=b+h|0;d=d+1|0;if(d>>>0>2]){continue}break}c=F[i+12>>2]}d=F[i+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}b=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,d)|0,c,b);f=f+1|0;d=F[i+16>>2];if(f>>>0<(F[i+20>>2]-d|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[g+8>>2]=F[g+8>>2]+1;a=a+1|0;if((j|0)!=(a|0)){continue}break}break g}j:{k:{l:{m:{if(j>>>0<=2){a=F[g+616>>2];F[a>>2]=h;b=1;d=F[g+12>>2];if(d>>>0>1){break m}break j}if(I[g+8>>2]>I[g+4>>2]){break e}c=a;a=k+12|0;Ca(c+a|0,F[n>>2],F[n+4>>2]);a=m+F[a+F[g+628>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-b|0;d=j-a|0;n:{if((d|0)==(a|0)){d=a;break n}b=F[g+596>>2];if((b|0)==F[g+588>>2]){break l}f=F[b>>2];j=F[g+600>>2];n=j+1|0;F[g+600>>2]=n;f=f&-2147483648>>>j;o:{if((n|0)==32){F[g+600>>2]=0;F[g+596>>2]=b+4;if(f){break o}break l}if(!f){break l}}}f=d;d=a;break k}while(1){h=(d-1|0)==(h|0)?0:h+1|0;F[a+(b<<2)>>2]=h;b=b+1|0;d=F[g+12>>2];if(b>>>0>>0){continue}break}break j}f=a}a=F[g+640>>2];b=a+k|0;j=F[b>>2];k=j+m|0;F[k>>2]=F[k>>2]+1;Ca(a+L(c,12)|0,j,F[b+4>>2]);if(d){b=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];j=F[e+16>>2]-a|0;if((b|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=a}a=(b>>>0)/341|0;a=F[j+(a<<2)>>2]+L(b-L(a,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=h;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!f){break g}d=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];a=F[e+16>>2]-b|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){za(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;b=F[e+12>>2]}a=(d>>>0)/341|0;a=F[b+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=h;F[a>>2]=f;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}a=0;if(!j){break g}while(1){if(d){h=F[g+548>>2];f=F[g+604>>2];s=F[g+616>>2];t=F[n>>2];u=F[q>>2];d=0;while(1){l=(d<<2)+s|0;F[f+(F[l>>2]<<2)>>2]=0;c=F[l>>2]<<2;b=F[g>>2]-F[c+u>>2]|0;p:{if(!b){break p}c=c+f|0;k=F[g+560>>2];o=32-k|0;if((o|0)>=(b|0)){m=F[g+556>>2];if((m|0)==(h|0)){F[c>>2]=0;break p}F[c>>2]=F[m>>2]<>>32-b;b=b+F[g+560>>2]|0;F[g+560>>2]=b;if((b|0)!=32){break p}F[g+560>>2]=0;F[g+556>>2]=m+4;break p}m=F[g+556>>2];r=m+4|0;if((h|0)==(r|0)){F[c>>2]=0;break p}v=F[m>>2];F[g+556>>2]=r;o=b-o|0;F[g+560>>2]=o;F[c>>2]=F[m+4>>2]>>>32-o|v<>>32-b}b=F[l>>2]<<2;c=b+f|0;F[c>>2]=F[c>>2]|F[b+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}f=0;d=F[i+16>>2];q:{if((d|0)==F[i+20>>2]){break q}while(1){l=L(f,20)+d|0;c=F[g+604>>2]+(F[l+4>>2]<<2)|0;k=F[l>>2];h=F[l+12>>2];r:{if(h>>>0>3){break r}b=F[i+12>>2];if(!F[l+16>>2]){c=b;break r}d=0;while(1){b=ta(b,(d<<2)+c|0,h);h=F[l+12>>2];b=b+h|0;d=d+1|0;if(d>>>0>2]){continue}break}c=F[i+12>>2]}d=F[i+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}b=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,d)|0,c,b);f=f+1|0;d=F[i+16>>2];if(f>>>0<(F[i+20>>2]-d|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[g+8>>2]=F[g+8>>2]+1;a=a+1|0;if((j|0)==(a|0)){break g}d=F[g+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}c=1}F[e+28>>2]=0;h=F[e+16>>2];d=F[e+12>>2];b=h-d>>2;if(b>>>0>=3){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;h=F[e+16>>2];b=h-d>>2;if(b>>>0>2){continue}break}}a=170;s:{switch(b-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(h|0)){break t}while(1){ra(F[d>>2]);d=d+4|0;if((h|0)!=(d|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break t}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=c}return d}function ud(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F[b+12>>2];f=F[b+20>>2];e=F[b+16>>2];g=e+4|0;f=g>>>0<4?f+1|0:f;a:{if(g>>>0>I[b+8>>2]&(f|0)>=(h|0)|(f|0)>(h|0)){break a}f=e+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];h=f;g=F[b+16>>2];e=g+4|0;f=e>>>0<4?f+1|0:f;i=e;F[b+16>>2]=e;F[b+20>>2]=f;if(I[a>>2]>32){break a}e=F[b+12>>2];f=h;h=g+8|0;f=h>>>0<8?f+1|0:f;if((e|0)<=(f|0)&h>>>0>I[b+8>>2]|(e|0)<(f|0)){break a}d=i+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!ub(a+16|0,b)){break a}if(!ya(a+544|0,b)){break a}if(!ya(a+564|0,b)){break a}if(!ya(a+584|0,b)){break a}q=F[a+4>>2];h=c;c=0;b=0;e=ea-32|0;ea=e;f=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;c=sa(a);F[e+8>>2]=c;b=a+c|0;F[e+16>>2]=b;ua(c,0,a);F[e+12>>2]=b}a=F[f+628>>2];g=F[a>>2];if(g){F[a+4>>2]=g;ra(g);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[f+12>>2];c=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=c;F[a+8>>2]=F[e+16>>2];c=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;g=sa(a);F[e+8>>2]=g;c=a+g|0;F[e+16>>2]=c;ua(g,0,a);F[e+12>>2]=c}a=F[f+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];c=F[e+12>>2]}F[a+4>>2]=c;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){l=F[e+12>>2];a=F[e+24>>2];b=d-1|0;c=a+b|0;g=(c>>>0)/341|0;c=F[l+(g<<2)>>2]+L(c-L(g,341)|0,12)|0;j=F[c+8>>2];i=F[c>>2];F[e+28>>2]=b;b=F[e+16>>2];c=b-l|0;if(((c?L(c>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(i>>>0>q>>>0){break e}a=F[f+628>>2];k=L(j,12);m=k+F[f+640>>2]|0;g=Sd(f,i,m);if(g>>>0>=I[f+12>>2]){break e}l=a+k|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){m=0;if(!i){break g}while(1){a=0;d=F[h+16>>2];h:{if((d|0)==F[h+20>>2]){break h}while(1){j=L(a,20)+d|0;b=F[l>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];i:{if(g>>>0>3){break i}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break i}d=0;while(1){c=ta(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}c=F[k+40>>2];ta(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((i|0)!=(m|0)){continue}break}break g}j:{k:{l:{m:{if(i>>>0<=2){a=F[f+616>>2];F[a>>2]=g;c=1;d=F[f+12>>2];if(d>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];n=j+1|0;m=L(n,12);b=a+m|0;if((b|0)!=(l|0)){Ca(b,F[l>>2],F[l+4>>2]);a=F[f+628>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-c|0;d=i-a|0;n:{if((d|0)==(a|0)){b=a;break n}b=F[f+596>>2];if((b|0)==F[f+588>>2]){break l}c=F[b>>2];i=F[f+600>>2];l=i+1|0;F[f+600>>2]=l;c=c&-2147483648>>>i;o:{if((l|0)==32){F[f+600>>2]=0;F[f+596>>2]=b+4;if(c){break o}break l}if(!c){break l}}b=d}d=a;break k}while(1){g=(d-1|0)==(g|0)?0:g+1|0;F[a+(c<<2)>>2]=g;c=c+1|0;d=F[f+12>>2];if(c>>>0>>0){continue}break}break j}b=a}a=F[f+640>>2];c=a+k|0;i=F[c>>2];l=i+o|0;F[l>>2]=F[l>>2]+1;Ca(a+m|0,i,F[c+4>>2]);if(d){c=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];i=F[e+16>>2]-a|0;if((c|0)==((i?L(i>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+24>>2]+F[e+28>>2]|0;i=F[e+12>>2]}else{i=a}a=(c>>>0)/341|0;a=F[i+(a<<2)>>2]+L(c-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}d=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];a=F[e+16>>2]-c|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){za(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;c=F[e+12>>2]}a=(d>>>0)/341|0;a=F[c+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}o=0;if(!i){break g}while(1){if(d){g=F[f+548>>2];c=F[f+604>>2];s=F[f+616>>2];t=F[l>>2];u=F[m>>2];d=0;while(1){j=(d<<2)+s|0;F[c+(F[j>>2]<<2)>>2]=0;b=F[j>>2]<<2;a=F[f>>2]-F[b+u>>2]|0;p:{if(!a){break p}b=b+c|0;k=F[f+560>>2];p=32-k|0;if((p|0)>=(a|0)){n=F[f+556>>2];if((n|0)==(g|0)){F[b>>2]=0;break p}F[b>>2]=F[n>>2]<>>32-a;a=a+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break p}F[f+560>>2]=0;F[f+556>>2]=n+4;break p}n=F[f+556>>2];r=n+4|0;if((g|0)==(r|0)){F[b>>2]=0;break p}v=F[n>>2];F[f+556>>2]=r;p=a-p|0;F[f+560>>2]=p;F[b>>2]=F[n+4>>2]>>>32-p|v<>>32-a}a=F[j>>2]<<2;b=a+c|0;F[b>>2]=F[b>>2]|F[a+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=0;d=F[h+16>>2];q:{if((d|0)==F[h+20>>2]){break q}while(1){j=L(a,20)+d|0;b=F[f+604>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];r:{if(g>>>0>3){break r}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break r}d=0;while(1){c=ta(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}c=F[k+40>>2];ta(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((i|0)==(o|0)){break g}d=F[f+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;g=F[e+16>>2];d=F[e+12>>2];c=g-d>>2;if(c>>>0>=3){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;g=F[e+16>>2];c=g-d>>2;if(c>>>0>2){continue}break}}a=170;s:{switch(c-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(g|0)){break t}while(1){ra(F[d>>2]);d=d+4|0;if((g|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break t}F[e+16>>2]=a+(((a-c|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=b}return d}function Qd(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;h=ea-80|0;ea=h;F[h+76>>2]=b;w=h+55|0;r=h+56|0;b=0;a:{b:{c:{d:{e:while(1){if((2147483647-n|0)<(b|0)){break d}n=b+n|0;f:{g:{h:{l=F[h+76>>2];b=l;k=G[b|0];if(k){while(1){i:{f=k&255;j:{if(!f){k=b;break j}if((f|0)!=37){break i}k=b;while(1){if(G[b+1|0]!=37){break j}f=b+2|0;F[h+76>>2]=f;k=k+1|0;g=G[b+2|0];b=f;if((g|0)==37){continue}break}}b=k-l|0;v=2147483647-n|0;if((b|0)>(v|0)){break d}if(a){Ab(a,l,b)}if(b){continue e}q=-1;f=1;b=F[h+76>>2];if(!(D[b+1|0]-48>>>0>=10|G[b+2|0]!=36)){q=D[b+1|0]-48|0;s=1;f=3}b=f+b|0;F[h+76>>2]=b;o=0;j=D[b|0];g=j-32|0;k:{if(g>>>0>31){f=b;break k}f=b;i=1<>2]=f;o=i|o;j=D[b+1|0];g=j-32|0;if(g>>>0>=32){break k}b=f;i=1<>>0>=10){break n}b=F[h+76>>2];if(G[b+2|0]!=36){break n}F[((D[b+1|0]<<2)+e|0)-192>>2]=10;p=F[((D[b+1|0]<<3)+d|0)-384>>2];s=1;b=b+3|0;break m}if(s){break h}s=0;p=0;if(a){b=F[c>>2];F[c>>2]=b+4;p=F[b>>2]}b=F[h+76>>2]+1|0}F[h+76>>2]=b;if((p|0)>=0){break l}p=0-p|0;o=o|8192;break l}p=Pd(h+76|0);if((p|0)<0){break d}b=F[h+76>>2]}f=0;i=-1;g=0;o:{if(G[b|0]!=46){break o}if(G[b+1|0]==42){p:{q:{if(D[b+2|0]-48>>>0>=10){break q}b=F[h+76>>2];if(G[b+3|0]!=36){break q}F[((D[b+2|0]<<2)+e|0)-192>>2]=10;i=F[((D[b+2|0]<<3)+d|0)-384>>2];b=b+4|0;break p}if(s){break h}if(a){b=F[c>>2];F[c>>2]=b+4;i=F[b>>2]}else{i=0}b=F[h+76>>2]+2|0}F[h+76>>2]=b;g=(i^-1)>>>31|0;break o}F[h+76>>2]=b+1;i=Pd(h+76|0);b=F[h+76>>2];g=1}t=g;while(1){m=f;k=28;if(D[b|0]-123>>>0<4294967238){break c}j=b+1|0;F[h+76>>2]=j;f=D[b|0];b=j;f=G[(f+L(m,58)|0)+13743|0];if(f-1>>>0<8){continue}break}r:{s:{if((f|0)!=27){if(!f){break c}if((q|0)>=0){F[(q<<2)+e>>2]=f;b=(q<<3)+d|0;f=F[b+4>>2];F[h+64>>2]=F[b>>2];F[h+68>>2]=f;break s}if(!a){break f}Od(h- -64|0,f,c);j=F[h+76>>2];break r}if((q|0)>=0){break c}}b=0;if(!a){continue e}}g=o&-65537;f=o&8192?g:o;o=0;q=1244;k=r;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{b=D[j-1|0];b=m?(b&15)==3?b&-33:b:b;switch(b-88|0){case 11:break t;case 9:case 13:case 14:case 15:break u;case 27:break z;case 12:case 17:break C;case 23:break D;case 0:case 32:break E;case 24:break F;case 22:break G;case 29:break H;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break I}}J:{switch(b-65|0){case 0:case 4:case 5:case 6:break u;case 2:break x;case 1:case 3:break g;default:break J}}if((b|0)==83){break y}break g}j=F[h+64>>2];g=F[h+68>>2];q=1244;break B}b=0;K:{switch(m&255){case 0:F[F[h+64>>2]>>2]=n;continue e;case 1:F[F[h+64>>2]>>2]=n;continue e;case 2:f=F[h+64>>2];F[f>>2]=n;F[f+4>>2]=n>>31;continue e;case 3:E[F[h+64>>2]>>1]=n;continue e;case 4:D[F[h+64>>2]]=n;continue e;case 6:F[F[h+64>>2]>>2]=n;continue e;case 7:break K;default:continue e}}f=F[h+64>>2];F[f>>2]=n;F[f+4>>2]=n>>31;continue e}i=i>>>0>8?i:8;f=f|8;b=120}m=r;u=b&32;j=F[h+64>>2];g=F[h+68>>2];if(j|g){while(1){m=m-1|0;D[m|0]=u|G[(j&15)+14272|0];x=!g&j>>>0>15|(g|0)!=0;l=g;g=g>>>4|0;j=(l&15)<<28|j>>>4;if(x){continue}break}}l=m;if(!(F[h+64>>2]|F[h+68>>2])|!(f&8)){break A}q=(b>>>4|0)+1244|0;o=2;break A}b=r;j=F[h+64>>2];g=F[h+68>>2];if(j|g){while(1){b=b-1|0;D[b|0]=j&7|48;m=!g&j>>>0>7|(g|0)!=0;l=g;g=g>>>3|0;j=(l&7)<<29|j>>>3;if(m){continue}break}}l=b;if(!(f&8)){break A}b=r-l|0;i=(b|0)<(i|0)?i:b+1|0;break A}b=F[h+68>>2];g=b;j=F[h+64>>2];if((b|0)<0){g=0-(((j|0)!=0)+g|0)|0;j=0-j|0;F[h+64>>2]=j;F[h+68>>2]=g;o=1;q=1244;break B}if(f&2048){o=1;q=1245;break B}o=f&1;q=o?1246:1244}l=r;L:{if(!g){m=j;break L}while(1){l=l-1|0;m=Hj(j,g,10,0);b=fa;y=l,z=j-Fj(m,b,10,0)|48,D[y|0]=z;u=g>>>0>9;j=m;g=b;if(u){continue}break}}if(m){while(1){l=l-1|0;b=(m>>>0)/10|0;D[l|0]=m-L(b,10)|48;g=m>>>0>9;m=b;if(g){continue}break}}}if((i|0)<0?t:0){break d}f=t?f&-65537:f;g=F[h+64>>2];b=F[h+68>>2];if(!(i|(g|b)!=0)){l=r;k=l;i=0;break g}b=!(b|g)+(r-l|0)|0;i=(b|0)<(i|0)?i:b;break g}j=(i|0)<0?2147483647:i;f=j;k=(f|0)!=0;b=F[h+64>>2];l=b?b:1758;b=l;M:{N:{O:{P:{if(!(b&3)|!f){break P}while(1){if(!G[b|0]){break O}f=f-1|0;k=(f|0)!=0;b=b+1|0;if(!(b&3)){break P}if(f){continue}break}}if(!k){break N}}Q:{if(!G[b|0]|f>>>0<4){break Q}while(1){k=F[b>>2];if((k^-1)&k-16843009&-2139062144){break Q}b=b+4|0;f=f-4|0;if(f>>>0>3){continue}break}}if(!f){break N}while(1){if(!G[b|0]){break M}b=b+1|0;f=f-1|0;if(f){continue}break}}b=0}b=b?b-l|0:j;k=b+l|0;if((i|0)>=0){f=g;i=b;break g}f=g;i=b;if(G[k|0]){break d}break g}if(i){k=F[h+64>>2];break w}b=0;lb(a,32,p,0,f);break v}F[h+12>>2]=0;F[h+8>>2]=F[h+64>>2];k=h+8|0;F[h+64>>2]=k;i=-1}b=0;R:{while(1){g=F[k>>2];if(!g){break R}g=Nd(h+4|0,g);l=(g|0)<0;if(!(l|g>>>0>i-b>>>0)){k=k+4|0;b=b+g|0;if(i>>>0>b>>>0){continue}break R}break}if(l){break b}}k=61;if((b|0)<0){break c}lb(a,32,p,b,f);if(!b){b=0;break v}i=0;k=F[h+64>>2];while(1){g=F[k>>2];if(!g){break v}g=Nd(h+4|0,g);i=g+i|0;if(i>>>0>b>>>0){break v}Ab(a,h+4|0,g);k=k+4|0;if(b>>>0>i>>>0){continue}break}}lb(a,32,p,b,f^8192);b=(b|0)<(p|0)?p:b;continue e}if((i|0)<0?t:0){break d}k=61;b=ga[0](a,K[h+64>>3],p,i,f,b)|0;if((b|0)>=0){continue e}break c}D[h+55|0]=F[h+64>>2];i=1;l=w;f=g;break g}f=b+1|0;F[h+76>>2]=f;k=G[b+1|0];b=f;continue}}if(a){break a}if(!s){break f}b=1;while(1){a=F[(b<<2)+e>>2];if(a){Od((b<<3)+d|0,a,c);n=1;b=b+1|0;if((b|0)!=10){continue}break a}break}n=1;if(b>>>0>=10){break a}while(1){if(F[(b<<2)+e>>2]){break h}b=b+1|0;if((b|0)!=10){continue}break}break a}k=28;break c}j=k-l|0;m=(i|0)<(j|0)?j:i;if((m|0)>(2147483647-o|0)){break d}k=61;g=m+o|0;b=(g|0)>(p|0)?g:p;if((v|0)<(b|0)){break c}lb(a,32,b,g,f);Ab(a,q,o);lb(a,48,b,g,f^65536);lb(a,48,m,j,0);Ab(a,l,j);lb(a,32,b,g,f^8192);continue}break}n=0;break a}k=61}F[3934]=k}n=-1}ea=h+80|0;return n}function wj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0;h=ea+-64|0;ea=h;F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){Aa(f,e-d|0);F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;break b}if(d>>>0>e>>>0){F[a+36>>2]=g+(e<<2)}F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;d=0;if(!e){break a}}Ia(h+16|0,e,h);i=F[h+28>>2];d=F[h+32>>2]}F[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[h+32>>2]=(e<<2)+i;break c}Ia(h+16|12,e-d|0,h)}F[h>>2]=0;f=F[h+40>>2];d=F[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[h+44>>2]=f+(e<<2);break d}Ia(h+40|0,e-d|0,h)}F[h>>2]=0;f=F[h+52>>2];d=F[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}F[h+56>>2]=f+(e<<2);break e}Ia(h+52|0,e-d|0,h)}i=0;f:{if(F[a+8>>2]<=0){break f}j=F[a+32>>2];g=F[h+16>>2];while(1){d=i<<2;f=F[d+g>>2];m=F[a+16>>2];g:{if((f|0)>(m|0)){F[d+j>>2]=m;break g}d=d+j|0;m=F[a+12>>2];if((m|0)>(f|0)){F[d>>2]=m;break g}F[d>>2]=f}i=i+1|0;d=F[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=F[b+g>>2]+F[g+j>>2]|0;F[f>>2]=g;h:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break h}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}D=F[a+52>>2];q=F[a+48>>2];w=sa(16);d=w;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;v=sa(d);F[h>>2]=v;F[h+8>>2]=d+v;ua(v,0,d)}p=1;d=F[a+56>>2];z=F[d>>2];d=F[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;E=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;x=e-1|0;I=e<<2;m=1;while(1){k:{l:{m:{n:{if((m|0)!=(G|0)){f=F[(m<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}j=0;g=f+2|0;y=(d|0)!=0|(g|0)!=-1;n=1;r=d?f-1|0:g;o=1<>>5|0;J=F[q>>2];d=f;q:{while(1){r:{if(F[(d>>>3&536870908)+J>>2]>>>d&1){break r}g=F[F[F[q+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break r}k=F[D>>2];i=F[q+28>>2];p=F[k+(F[i+(g<<2)>>2]<<2)>>2];if((p|0)>=(m|0)){break r}l=g+1|0;l=F[k+(F[i+(((l>>>0)%3|0?l:g-2|0)<<2)>>2]<<2)>>2];if((l|0)>=(m|0)){break r}i=F[k+(F[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((i|0)>=(m|0)){break r}s:{if(!e){break s}g=F[(h+16|0)+L(j,12)>>2];k=L(e,i);l=L(e,l);p=L(e,p);i=0;u=0;if(x){while(1){F[g+(i<<2)>>2]=(F[(i+k<<2)+c>>2]+F[(i+l<<2)+c>>2]|0)-F[(i+p<<2)+c>>2];t=i|1;F[g+(t<<2)>>2]=(F[(k+t<<2)+c>>2]+F[(l+t<<2)+c>>2]|0)-F[(p+t<<2)+c>>2];i=i+2|0;u=u+2|0;if((A|0)!=(u|0)){continue}break}}if(!B){break s}F[g+(i<<2)>>2]=(F[(i+k<<2)+c>>2]+F[(i+l<<2)+c>>2]|0)-F[(i+p<<2)+c>>2]}g=4;j=j+1|0;if((j|0)==4){break q}}t:{if(n&1){i=d-2|0;g=d+1|0;d=-1;g=(g>>>0)%3|0?g:i;if((g|0)==-1|F[F[q>>2]+(g>>>3&536870908)>>2]>>>g&1){break t}g=F[F[F[q+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break t}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;break t}u:{if((d>>>0)%3|0){i=d-1|0;break u}i=d+2|0;d=-1;if((i|0)==-1){break t}}d=-1;if(F[F[q>>2]+(i>>>3&536870908)>>2]>>>i&1){break t}g=F[F[F[q+64>>2]+12>>2]+(i<<2)>>2];if((g|0)==-1){break t}if((g>>>0)%3|0){d=g-1|0;break t}d=g+2|0}v:{if((d|0)==(f|0)){break v}if(!((n^1)&1|(d|0)!=-1)){if(!y|o&F[F[q>>2]+(s<<2)>>2]){break v}d=F[F[F[q+64>>2]+12>>2]+(r<<2)>>2];if((d|0)==-1){break v}n=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=j;if((g|0)<=0){break p}}if(e){ua(F[h>>2],0,I)}d=g-1|0;t=(d<<2)+w|0;d=L(d,12)+a|0;u=d;y=F[d- -64>>2];p=0;n=0;d=0;while(1){f=F[t>>2];F[t>>2]=f+1;if(f>>>0>=y>>>0){break j}w:{if(F[F[u+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break w}d=d+1|0;if(!e){break w}j=F[h>>2];k=F[(h+16|0)+L(n,12)>>2];r=0;i=0;f=0;if(x>>>0>=3){while(1){l=i<<2;o=l+j|0;F[o>>2]=F[o>>2]+F[k+l>>2];o=l|4;s=o+j|0;F[s>>2]=F[s>>2]+F[k+o>>2];o=l|8;s=o+j|0;F[s>>2]=F[s>>2]+F[k+o>>2];l=l|12;o=l+j|0;F[o>>2]=F[o>>2]+F[k+l>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break w}while(1){f=i<<2;l=f+j|0;F[l>>2]=F[l>>2]+F[f+k>>2];i=i+1|0;r=r+1|0;if((C|0)!=(r|0)){continue}break}}n=n+1|0;if((n|0)!=(g|0)){continue}break}n=L(e,m);f=n;if(!d){break o}if(!e){break l}f=F[h>>2];i=0;g=0;if(x){break n}break m}f=L(e,m)}if(F[a+8>>2]<=0){break k}n=(L(m-1|0,e)<<2)+c|0;j=F[a+32>>2];i=0;while(1){d=i<<2;g=F[d+n>>2];k=F[a+16>>2];x:{if((g|0)>(k|0)){F[d+j>>2]=k;break x}d=d+j|0;k=F[a+12>>2];if((k|0)>(g|0)){F[d>>2]=k;break x}F[d>>2]=g}i=i+1|0;g=F[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+n>>2]+F[g+j>>2]|0;F[f>>2]=g;y:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break y}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}break k}Da();V()}while(1){j=i<<2;k=j+f|0;F[k>>2]=F[k>>2]/(d|0);j=f+(j|4)|0;F[j>>2]=F[j>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;F[f>>2]=F[f>>2]/(d|0)}if(F[a+8>>2]<=0){break k}j=F[a+32>>2];i=0;while(1){d=i<<2;f=F[d+v>>2];g=F[a+16>>2];z:{if((f|0)>(g|0)){F[d+j>>2]=g;break z}d=d+j|0;g=F[a+12>>2];if((g|0)>(f|0)){F[d>>2]=g;break z}F[d>>2]=f}i=i+1|0;f=F[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=n<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+n>>2]+F[g+j>>2]|0;F[f>>2]=g;A:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break A}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}p=1;m=m+1|0;if((E|0)!=(m|0)){continue}break}}a=F[h>>2];if(a){ra(a)}ra(w);a=F[h+52>>2];if(a){F[h+56>>2]=a;ra(a)}a=F[h+40>>2];if(a){F[h+44>>2]=a;ra(a)}a=F[h+28>>2];if(a){F[h+32>>2]=a;ra(a)}a=F[h+16>>2];if(a){F[h+20>>2]=a;ra(a)}ea=h- -64|0;return p|0}va();V()}function Wa(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:i=1;e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=D[b|0];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(D[b|0])/M(127);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 1:i=1;f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=G[b|0];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(G[b|0])/M(255);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 2:i=1;g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=E[b>>1];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(E[b>>1])/M(32767);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 3:i=1;h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=H[b>>1];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(H[b>>1])/M(65535);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 4:i=1;i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=F[b>>2];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(F[b>>2])*M(4.656612873077393e-10);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 5:i=1;j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=I[b>>2];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(I[b>>2])*M(2.3283064365386963e-10);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 6:i=1;k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=+I[b>>2]+ +F[b+4>>2]*4294967296;f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(+I[b>>2]+ +F[b+4>>2]*4294967296)*M(1.0842021724855044e-19);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 7:i=1;l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=+I[b>>2]+ +I[b+4>>2]*4294967296;f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(+I[b>>2]+ +I[b+4>>2]*4294967296)*M(5.421010862427522e-20);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 8:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;g=F[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}J[(f<<2)+d>>2]=J[b>>2];b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;g=F[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}J[(f<<2)+d>>2]=K[b>>3];b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){g=F[a>>2];e=F[g>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[g+4>>2]<=b>>>0){break a}J[(f<<2)+d>>2]=G[b|0]?M(1):M(0);b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<2)+d|0,0,c-e<<2)}return i}return 0}function gj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0;h=ea+-64|0;ea=h;F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){Aa(f,e-d|0);F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;break b}if(d>>>0>e>>>0){F[a+36>>2]=g+(e<<2)}F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;d=0;if(!e){break a}}Ia(h+16|0,e,h);i=F[h+28>>2];d=F[h+32>>2]}F[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[h+32>>2]=(e<<2)+i;break c}Ia(h+16|12,e-d|0,h)}F[h>>2]=0;f=F[h+40>>2];d=F[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[h+44>>2]=f+(e<<2);break d}Ia(h+40|0,e-d|0,h)}F[h>>2]=0;f=F[h+52>>2];d=F[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}F[h+56>>2]=f+(e<<2);break e}Ia(h+52|0,e-d|0,h)}i=0;f:{if(F[a+8>>2]<=0){break f}k=F[a+32>>2];g=F[h+16>>2];while(1){d=i<<2;f=F[d+g>>2];n=F[a+16>>2];g:{if((f|0)>(n|0)){F[d+k>>2]=n;break g}d=d+k|0;n=F[a+12>>2];if((n|0)>(f|0)){F[d>>2]=n;break g}F[d>>2]=f}i=i+1|0;d=F[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[f>>2]=g;h:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break h}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}D=F[a+52>>2];y=F[a+48>>2];v=sa(16);d=v;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;u=sa(d);F[h>>2]=u;F[h+8>>2]=d+u;ua(u,0,d)}r=1;d=F[a+56>>2];z=F[d>>2];d=F[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;E=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;w=e-1|0;I=e<<2;n=1;while(1){k:{l:{m:{n:{if((n|0)!=(G|0)){f=F[(n<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}k=0;g=f+2|0;x=(d|0)!=0|(g|0)!=-1;s=F[y+12>>2];q=s+((d?f-1|0:g)<<2)|0;o=1;d=f;q:{while(1){g=F[s+(d<<2)>>2];r:{if((g|0)==-1){break r}l=-1;r=F[D>>2];m=F[y>>2];i=r+(F[m+(g<<2)>>2]<<2)|0;p=g+1|0;p=(p>>>0)%3|0?p:g-2|0;if((p|0)!=-1){l=F[m+(p<<2)>>2]}p=F[i>>2];s:{t:{if((g>>>0)%3|0){i=g-1|0;break t}i=g+2|0;j=-1;if((i|0)==-1){break s}}j=F[m+(i<<2)>>2]}if((n|0)<=(p|0)){break r}i=F[r+(l<<2)>>2];if((i|0)>=(n|0)){break r}l=F[r+(j<<2)>>2];if((l|0)>=(n|0)){break r}g=F[(h+16|0)+L(k,12)>>2];u:{if(!e){break u}l=L(e,l);m=L(e,i);r=L(e,p);i=0;j=0;if(w){while(1){F[g+(i<<2)>>2]=(F[(i+l<<2)+c>>2]+F[(i+m<<2)+c>>2]|0)-F[(i+r<<2)+c>>2];p=i|1;F[g+(p<<2)>>2]=(F[(l+p<<2)+c>>2]+F[(m+p<<2)+c>>2]|0)-F[(p+r<<2)+c>>2];i=i+2|0;j=j+2|0;if((A|0)!=(j|0)){continue}break}}if(!B){break u}F[g+(i<<2)>>2]=(F[(i+l<<2)+c>>2]+F[(i+m<<2)+c>>2]|0)-F[(i+r<<2)+c>>2]}g=4;k=k+1|0;if((k|0)==4){break q}}v:{if(o&1){i=d+1|0;d=(i>>>0)%3|0?i:d-2|0;j=-1;if((d|0)==-1){break v}d=F[s+(d<<2)>>2];j=-1;if((d|0)==-1){break v}g=d+1|0;j=(g>>>0)%3|0?g:d-2|0;break v}w:{if((d>>>0)%3|0){i=d-1|0;break w}i=d+2|0;j=-1;if((i|0)==-1){break v}}d=F[s+(i<<2)>>2];j=-1;if((d|0)==-1){break v}j=d-1|0;if((d>>>0)%3|0){break v}j=d+2|0}d=j;x:{if((f|0)==(d|0)){break x}if(!((o^1)&1|(d|0)!=-1)){if(!x){break x}d=F[q>>2];if((d|0)==-1){break x}o=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=k;if((g|0)<=0){break p}}if(e){ua(F[h>>2],0,I)}d=g-1|0;p=(d<<2)+v|0;d=L(d,12)+a|0;j=d;x=F[d- -64>>2];r=0;o=0;d=0;while(1){f=F[p>>2];F[p>>2]=f+1;if(f>>>0>=x>>>0){break j}y:{if(F[F[j+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break y}d=d+1|0;if(!e){break y}k=F[h>>2];s=F[(h+16|0)+L(o,12)>>2];l=0;i=0;f=0;if(w>>>0>=3){while(1){m=i<<2;q=m+k|0;F[q>>2]=F[q>>2]+F[m+s>>2];q=m|4;t=q+k|0;F[t>>2]=F[t>>2]+F[s+q>>2];q=m|8;t=q+k|0;F[t>>2]=F[t>>2]+F[s+q>>2];m=m|12;q=m+k|0;F[q>>2]=F[q>>2]+F[m+s>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break y}while(1){f=i<<2;m=f+k|0;F[m>>2]=F[m>>2]+F[f+s>>2];i=i+1|0;l=l+1|0;if((C|0)!=(l|0)){continue}break}}o=o+1|0;if((o|0)!=(g|0)){continue}break}o=L(e,n);f=o;if(!d){break o}if(!e){break l}f=F[h>>2];i=0;g=0;if(w){break n}break m}f=L(e,n)}if(F[a+8>>2]<=0){break k}o=(L(n-1|0,e)<<2)+c|0;k=F[a+32>>2];i=0;while(1){d=i<<2;g=F[d+o>>2];l=F[a+16>>2];z:{if((g|0)>(l|0)){F[d+k>>2]=l;break z}d=d+k|0;l=F[a+12>>2];if((l|0)>(g|0)){F[d>>2]=l;break z}F[d>>2]=g}i=i+1|0;g=F[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+o>>2]+F[g+k>>2]|0;F[f>>2]=g;A:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break A}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}break k}Da();V()}while(1){k=i<<2;l=k+f|0;F[l>>2]=F[l>>2]/(d|0);k=f+(k|4)|0;F[k>>2]=F[k>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;F[f>>2]=F[f>>2]/(d|0)}if(F[a+8>>2]<=0){break k}k=F[a+32>>2];i=0;while(1){d=i<<2;f=F[d+u>>2];g=F[a+16>>2];B:{if((f|0)>(g|0)){F[d+k>>2]=g;break B}d=d+k|0;g=F[a+12>>2];if((g|0)>(f|0)){F[d>>2]=g;break B}F[d>>2]=f}i=i+1|0;f=F[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=o<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+o>>2]+F[g+k>>2]|0;F[f>>2]=g;C:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break C}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}r=1;n=n+1|0;if((E|0)!=(n|0)){continue}break}}a=F[h>>2];if(a){ra(a)}ra(v);a=F[h+52>>2];if(a){F[h+56>>2]=a;ra(a)}a=F[h+40>>2];if(a){F[h+44>>2]=a;ra(a)}a=F[h+28>>2];if(a){F[h+32>>2]=a;ra(a)}a=F[h+16>>2];if(a){F[h+20>>2]=a;ra(a)}ea=h- -64|0;return r|0}va();V()}function jg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=ea-16|0;ea=m;F[m+12>>2]=b;b=sa(32);F[m>>2]=b;F[m+4>>2]=24;F[m+8>>2]=-2147483616;D[b+24|0]=0;d=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);c=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[b+16|0]=c;D[b+17|0]=c>>>8;D[b+18|0]=c>>>16;D[b+19|0]=c>>>24;D[b+20|0]=d;D[b+21|0]=d>>>8;D[b+22|0]=d>>>16;D[b+23|0]=d>>>24;d=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);c=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[b+8|0]=c;D[b+9|0]=c>>>8;D[b+10|0]=c>>>16;D[b+11|0]=c>>>24;D[b+12|0]=d;D[b+13|0]=d>>>8;D[b+14|0]=d>>>16;D[b+15|0]=d>>>24;d=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);c=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[b|0]=c;D[b+1|0]=c>>>8;D[b+2|0]=c>>>16;D[b+3|0]=c>>>24;D[b+4|0]=d;D[b+5|0]=d>>>8;D[b+6|0]=d>>>16;D[b+7|0]=d>>>24;h=ea-48|0;ea=h;k=a;d=a+16|0;a=F[d>>2];a:{b:{if(!a){break b}c=F[m+12>>2];b=d;while(1){f=(c|0)>F[a+16>>2];b=f?b:a;a=F[(f<<2)+a>>2];if(a){continue}break}if((b|0)==(d|0)){break b}if((c|0)>=F[b+16>>2]){break a}}t=h+24|0;a=t;F[a+4>>2]=0;F[a+8>>2]=0;u=a+4|0;F[a>>2]=u;a=F[m+12>>2];c=h+16|0;F[c>>2]=0;F[c+4>>2]=0;F[h+8>>2]=a;F[h+12>>2]=c;b=F[t>>2];if((u|0)!=(b|0)){l=h+8|4;while(1){f=b;g=b+16|0;q=ea-16|0;ea=q;i=q+12|0;a=q+8|0;c:{d:{e:{f:{g:{h:{r=l+4|0;i:{if((r|0)==(c|0)){break i}b=G[c+27|0];e=b<<24>>24<0;n=G[g+11|0];v=n<<24>>24;j=(v|0)<0;b=e?F[c+20>>2]:b;n=j?F[g+4>>2]:n;o=b>>>0>>0;p=o?b:n;if(p){j=j?F[g>>2]:g;s=c+16|0;e=e?F[s>>2]:s;s=Ha(j,e,p);if(!s){if(b>>>0>n>>>0){break i}break h}if((s|0)>=0){break h}break i}if(b>>>0<=n>>>0){break g}}e=F[c>>2];j:{a=c;k:{if((a|0)==F[l>>2]){break k}l:{if(e){b=e;while(1){a=b;b=F[b+4>>2];if(b){continue}break}break l}a=c+8|0;if((c|0)==F[F[c+8>>2]>>2]){while(1){b=F[a>>2];a=b+8|0;if((b|0)==F[F[b+8>>2]>>2]){continue}break}}a=F[a>>2]}j=G[g+11|0];b=j<<24>>24<0;o=G[a+27|0];n=o<<24>>24<0;m:{j=b?F[g+4>>2]:j;o=n?F[a+20>>2]:o;p=j>>>0>>0?j:o;if(p){r=a+16|0;b=Ha(n?F[r>>2]:r,b?F[g>>2]:g,p);if(b){break m}}if(j>>>0>o>>>0){break k}break j}if((b|0)>=0){break j}}if(!e){F[i>>2]=c;a=c;break c}F[i>>2]=a;a=a+4|0;break c}a=He(l,i,g);break c}b=Ha(e,j,p);if(b){break f}}if(o){break e}break d}if((b|0)>=0){break d}}e=F[c+4>>2];n:{if(e){b=e;while(1){a=b;b=F[b>>2];if(b){continue}break}break n}a=F[c+8>>2];if((c|0)==F[a>>2]){break n}b=c+8|0;while(1){j=F[b>>2];b=j+8|0;a=F[j+8>>2];if((j|0)!=F[a>>2]){continue}break}}o:{p:{if((a|0)==(r|0)){break p}j=G[a+27|0];b=j<<24>>24<0;q:{j=b?F[a+20>>2]:j;o=j>>>0>>0?j:n;if(o){p=a+16|0;b=Ha((v|0)<0?F[g>>2]:g,b?F[p>>2]:p,o);if(b){break q}}if(j>>>0>n>>>0){break p}break o}if((b|0)>=0){break o}}if(!e){F[i>>2]=c;a=c+4|0;break c}F[i>>2]=a;break c}a=He(l,i,g);break c}F[i>>2]=c;F[a>>2]=c}b=a;a=F[b>>2];if(a){b=0}else{a=sa(40);e=a+16|0;r:{if(D[g+11|0]>=0){i=F[g+4>>2];F[e>>2]=F[g>>2];F[e+4>>2]=i;F[e+8>>2]=F[g+8>>2];break r}Ba(e,F[g>>2],F[g+4>>2])}e=a+28|0;s:{if(D[g+23|0]>=0){i=F[g+16>>2];F[e>>2]=F[g+12>>2];F[e+4>>2]=i;F[e+8>>2]=F[g+20>>2];break s}Ba(e,F[g+12>>2],F[g+16>>2])}F[a+8>>2]=F[q+12>>2];F[a>>2]=0;F[a+4>>2]=0;F[b>>2]=a;e=F[F[l>>2]>>2];if(e){F[l>>2]=e;b=F[b>>2]}else{b=a}Tb(F[l+4>>2],b);F[l+8>>2]=F[l+8>>2]+1;b=1}D[h+44|0]=b;F[h+40>>2]=a;ea=q+16|0;a=F[f+4>>2];t:{if(!a){b=F[f+8>>2];if((f|0)==F[b>>2]){break t}a=f+8|0;while(1){f=F[a>>2];a=f+8|0;b=F[f+8>>2];if((f|0)!=F[b>>2]){continue}break}break t}while(1){b=a;a=F[b>>2];if(a){continue}break}}if((b|0)!=(u|0)){continue}break}}a=F[d>>2];u:{if(a){d=k+16|0;f=F[h+8>>2];while(1){b=F[a+16>>2];v:{if((b|0)>(f|0)){b=F[a>>2];if(b){break v}d=a;break u}if((b|0)>=(f|0)){break u}d=a+4|0;b=F[a+4>>2];if(!b){break u}a=d}d=a;a=b;continue}}a=d}b=F[d>>2];if(!b){b=sa(32);F[b+16>>2]=F[h+8>>2];F[b+20>>2]=F[h+12>>2];f=b+24|0;e=F[h+16>>2];F[f>>2]=e;g=F[h+20>>2];F[b+28>>2]=g;w:{if(!g){F[b+20>>2]=f;break w}F[e+8>>2]=f;F[h+16>>2]=0;F[h+20>>2]=0;F[h+12>>2]=c}F[b+8>>2]=a;F[b>>2]=0;F[b+4>>2]=0;F[d>>2]=b;a=F[F[k+12>>2]>>2];if(a){F[k+12>>2]=a;a=F[d>>2]}else{a=b}Tb(F[k+16>>2],a);F[k+20>>2]=F[k+20>>2]+1}Jb(h+8|4,F[h+16>>2]);Jb(t,F[t+4>>2])}ea=h+48|0;k=ea-48|0;ea=k;c=ea-32|0;ea=c;g=c+32|0;d=c+21|0;a=d;f=g-a|0;x:{if(!((f|0)<=9&(f|0)<(1-(I[3720]>1)|0))){D[a|0]=49;F[c+8>>2]=a+1;a=0;break x}F[c+8>>2]=g;a=61}F[c+12>>2]=a;h=ea-16|0;ea=h;a=k+8|0;e=ea-16|0;ea=e;y:{l=F[c+8>>2];f=l-d|0;if(f>>>0<=4294967279){z:{if(f>>>0<=10){D[a+11|0]=f;c=a;break z}if(f>>>0>=11){i=f+16&-16;c=i-1|0;c=(c|0)==11?i:c}else{c=10}i=c+1|0;c=sa(i);F[a>>2]=c;F[a+8>>2]=i|-2147483648;F[a+4>>2]=f}while(1){if((d|0)!=(l|0)){D[c|0]=G[d|0];c=c+1|0;d=d+1|0;continue}break}D[e+15|0]=0;D[c|0]=G[e+15|0];ea=e+16|0;break y}Ma();V()}ea=h+16|0;ea=g;F[k+32>>2]=m;c=b+20|0;a=F[c+4>>2];A:{B:{if(a){b=G[m+11|0];d=b<<24>>24<0;e=d?F[m>>2]:m;f=d?F[m+4>>2]:b;b=c+4|0;while(1){d=G[a+27|0];g=d<<24>>24<0;d=g?F[a+20>>2]:d;h=d>>>0>>0;C:{D:{E:{F:{G:{l=h?d:f;H:{if(l){i=a+16|0;g=g?F[i>>2]:i;i=Ha(e,g,l);if(!i){if(d>>>0>f>>>0){break H}break G}if((i|0)>=0){break G}break H}if(d>>>0<=f>>>0){break F}}d=F[a>>2];if(d){break C}break B}d=Ha(g,e,l);if(d){break E}}if(h){break D}break A}if((d|0)>=0){break A}}b=a+4|0;d=F[a+4>>2];if(!d){break A}a=b}b=a;a=d;continue}}a=c+4|0}b=a}d=F[b>>2];if(d){a=0}else{d=sa(40);e=d+16|0;f=F[k+32>>2];I:{if(D[f+11|0]>=0){g=F[f+4>>2];F[e>>2]=F[f>>2];F[e+4>>2]=g;F[e+8>>2]=F[f+8>>2];break I}Ba(e,F[f>>2],F[f+4>>2])}F[d+8>>2]=a;F[d>>2]=0;F[d+4>>2]=0;F[d+36>>2]=0;F[d+28>>2]=0;F[d+32>>2]=0;F[b>>2]=d;a=F[F[c>>2]>>2];if(a){F[c>>2]=a;a=F[b>>2]}else{a=d}Tb(F[c+4>>2],a);F[c+8>>2]=F[c+8>>2]+1;a=1}D[k+44|0]=a;F[k+40>>2]=d;a=F[k+40>>2];if(D[a+39|0]<0){ra(F[a+28>>2])}b=F[k+12>>2];F[a+28>>2]=F[k+8>>2];F[a+32>>2]=b;F[a+36>>2]=F[k+16>>2];ea=k+48|0;if(D[m+11|0]<0){ra(F[m>>2])}ea=m+16|0}function uf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=M(0),x=0;k=ea-32|0;ea=k;a:{if(!(F[a+60>>2]!=F[a- -64>>2]|F[a+48>>2]!=F[a+52>>2])){f=1;break a}f=1;if((ga[F[F[a>>2]+24>>2]](a)|0)<=0){break a}b:{c:{while(1){d:{d=ga[F[F[a>>2]+20>>2]](a,x)|0;e:{f:{g:{g=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(d<<2)>>2];switch(F[g+28>>2]-1|0){case 8:break f;case 0:case 2:case 4:break g;default:break e}}d=D[g+24|0];F[k+24>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;h:{if(!d){f=0;F[k>>2]=0;l=0;break h}if((d|0)<0){break b}c=d<<2;f=sa(c);F[k+16>>2]=f;d=c+f|0;F[k+24>>2]=d;l=0;ua(f,0,c);F[k+20>>2]=d;d=D[g+24|0];F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;if(!d){break h}if((d|0)<0){break c}d=d<<2;l=sa(d);F[k>>2]=l;ua(l,0,d)}i:{j:{switch(F[g+28>>2]-1|0){case 4:h=0;c=0;m=0;d=0;o=ea-16|0;ea=o;i=D[g+24|0];F[o+8>>2]=0;F[o>>2]=0;F[o+4>>2]=0;k:{l:{if(i){if((i|0)<0){break l}b=i<<2;c=sa(b);F[o>>2]=c;F[o+8>>2]=b+c;ua(c,0,b);h=sa(b);ua(h,0,b)}if(!F[g+80>>2]){break k}while(1){p=F[g>>2];b=F[p>>2];e=F[g+40>>2];q=F[g+48>>2]+Fj(e,F[g+44>>2],m,d)|0;t=ta(c,b+q|0,e);r=i<<24>>24;m:{if((r|0)<=0){break m}s=F[a+48>>2];j=0;if((i&255)!=1){q=r&-2;i=0;while(1){b=j<<2;F[b+h>>2]=F[s+(j+u<<2)>>2]+F[b+t>>2];n=j|1;b=n<<2;F[b+h>>2]=F[s+(n+u<<2)>>2]+F[b+t>>2];j=j+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!(r&1)){break m}b=j<<2;F[b+h>>2]=F[s+(j+u<<2)>>2]+F[b+t>>2]}ta(F[p>>2]+L(e,m)|0,h,e);b=m+1|0;d=b?d:d+1|0;m=b;if(!d&I[g+80>>2]<=b>>>0|d){break k}i=G[g+24|0];continue}}va();V()}if(h){ra(h)}if(c){ra(c)}ea=o+16|0;break i;case 2:h=0;c=0;m=0;d=0;o=ea-16|0;ea=o;i=D[g+24|0];F[o+8>>2]=0;F[o>>2]=0;F[o+4>>2]=0;n:{o:{if(i){if((i|0)<0){break o}b=i<<1;c=sa(b);F[o>>2]=c;F[o+8>>2]=b+c;ua(c,0,b);h=sa(b);ua(h,0,b)}if(!F[g+80>>2]){break n}while(1){p=F[g>>2];b=F[p>>2];e=F[g+40>>2];q=F[g+48>>2]+Fj(e,F[g+44>>2],m,d)|0;t=ta(c,b+q|0,e);r=i<<24>>24;p:{if((r|0)<=0){break p}s=F[a+48>>2];j=0;if((i&255)!=1){q=r&-2;i=0;while(1){b=j<<1;E[b+h>>1]=H[b+t>>1]+H[s+(j+u<<2)>>1];n=j|1;b=n<<1;E[b+h>>1]=H[b+t>>1]+H[s+(n+u<<2)>>1];j=j+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!(r&1)){break p}b=j<<1;E[b+h>>1]=H[b+t>>1]+H[s+(j+u<<2)>>1]}ta(F[p>>2]+L(e,m)|0,h,e);b=m+1|0;d=b?d:d+1|0;m=b;if(!d&I[g+80>>2]<=b>>>0|d){break n}i=G[g+24|0];continue}}va();V()}if(h){ra(h)}if(c){ra(c)}ea=o+16|0;break i;case 0:break j;default:break i}}h=0;j=0;m=0;d=0;p=ea-16|0;ea=p;c=D[g+24|0];F[p+8>>2]=0;F[p>>2]=0;F[p+4>>2]=0;q:{r:{if(c){if((c|0)<0){break r}j=sa(c);F[p>>2]=j;F[p+8>>2]=c+j;ua(j,0,c);h=sa(c);ua(h,0,c)}if(F[g+80>>2]){while(1){c=F[F[g>>2]>>2];b=F[g+40>>2];n=F[g+48>>2]+Fj(b,F[g+44>>2],m,d)|0;r=ta(j,c+n|0,b);q=D[g+24|0];s:{if((q|0)<=0){break s}n=F[a+48>>2];i=0;if((q|0)!=1){c=q&-2;e=0;while(1){D[h+i|0]=G[i+r|0]+G[n+(i+u<<2)|0];b=i|1;D[b+h|0]=G[b+r|0]+G[n+(b+u<<2)|0];i=i+2|0;e=e+2|0;if((c|0)!=(e|0)){continue}break}}if(!(q&1)){break s}D[h+i|0]=G[i+r|0]+G[n+(i+u<<2)|0]}c=F[g+40>>2];ta(F[F[g>>2]>>2]+L(c,m)|0,h,c);c=m+1|0;d=c?d:d+1|0;m=c;if(!d&I[g+80>>2]>c>>>0){continue}break}}if(h){ra(h)}if(j){ra(j)}ea=p+16|0;break q}va();V()}}u=D[g+24|0]+u|0;d=1;if(l){ra(l)}if(f){ra(f)}if(d){break e}f=0;break a}j=F[F[a+60>>2]+(v<<2)>>2];q=F[a+36>>2];c=F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2];n=F[g+56>>2];b=sa(32);F[k+16>>2]=b;F[k+20>>2]=24;F[k+24>>2]=-2147483616;D[b+24|0]=0;e=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);d=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=e;D[b+21|0]=e>>>8;D[b+22|0]=e>>>16;D[b+23|0]=e>>>24;e=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=e;D[b+13|0]=e>>>8;D[b+14|0]=e>>>16;D[b+15|0]=e>>>24;e=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=e;D[b+5|0]=e>>>8;D[b+6|0]=e>>>16;D[b+7|0]=e>>>24;e=c+16|0;l=e;f=F[e>>2];t:{if(!f){break t}while(1){d=(n|0)>F[f+16>>2];l=d?l:f;f=F[(d<<2)+f>>2];if(f){continue}break}if((e|0)==(l|0)|(n|0)>2]){break t}f=F[l+24>>2];if(!f){break t}d=l+20|0;while(1){e=G[f+27|0];n=e<<24>>24<0;s=n?F[f+20>>2]:e;p=s>>>0<24;u:{v:{r=p?s:24;w:{if(r){e=f+16|0;n=n?F[e>>2]:e;e=Ha(b,n,r);x:{if(!e){if(s>>>0<=24){break x}break u}if((e|0)<0){break u}}e=Ha(n,b,r);if(!e){break w}if((e|0)<0){break v}c=d;break t}if(s>>>0>24){break u}}if(p){break v}c=d;break t}f=f+4|0}f=F[f>>2];if(f){continue}break}}c=oe(c,k+16|0);if(D[k+27|0]<0){ra(F[k+16>>2])}d=v+1|0;y:{if(c){le(g,j);break y}p=q+L(v,24)|0;c=F[p+4>>2];m=D[g+24|0];o=m<<2;h=sa((m|0)!=(m&1073741823)?-1:o);F[k+16>>2]=1065353216;w=J[p+20>>2];c=-1<0){J[k+16>>2]=w/M(c|0)}if((c|0)<=0){break d}z:{if(!F[j+80>>2]){break z}if((m|0)<=0){l=0;f=0;while(1){ta(F[F[g+64>>2]>>2]+f|0,h,o);f=f+o|0;l=l+1|0;if(l>>>0>2]){continue}break}break z}r=F[F[j>>2]>>2]+F[j+48>>2]|0;n=m&-2;e=m&1;q=0;t=0;f=0;while(1){s=F[p+8>>2];w=J[k+16>>2];l=0;v=0;if((m|0)!=1){while(1){c=l<<2;b=r+(f<<2)|0;J[c+h>>2]=M(w*M(F[b>>2]))+J[c+s>>2];c=c|4;J[c+h>>2]=M(w*M(F[b+4>>2]))+J[c+s>>2];l=l+2|0;f=f+2|0;v=v+2|0;if((n|0)!=(v|0)){continue}break}}if(e){c=l<<2;J[c+h>>2]=M(w*M(F[r+(f<<2)>>2]))+J[c+s>>2];f=f+1|0}ta(F[F[g+64>>2]>>2]+t|0,h,o);t=o+t|0;q=q+1|0;if(q>>>0>2]){continue}break}}ra(h)}v=d}f=1;x=x+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(x|0)){continue}break a}break}ra(h);f=0;break a}va();V()}va();V()}ea=k+32|0;return f|0}function _e(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=a;a:{b:{c:{d:{e:{f:{g:{h:{k=F[a+8>>2];switch(F[k+28>>2]-1|0){case 4:break c;case 5:break d;case 2:break e;case 3:break f;case 0:break g;case 1:break h;default:break a}}c=D[k+24|0];d=sa((c|0)>=0?c:-1);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;D[a+d|0]=F[j>>2];D[(a|1)+d|0]=F[j+4>>2];D[(a|2)+d|0]=F[j+8>>2];D[(a|3)+d|0]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[a+d|0]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}c=D[k+24|0];d=sa((c|0)>=0?c:-1);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;D[a+d|0]=F[j>>2];D[(a|1)+d|0]=F[j+4>>2];D[(a|2)+d|0]=F[j+8>>2];D[(a|3)+d|0]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[a+d|0]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];a=e+e|0;d=sa(a>>>0>>0?-1:a);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;E[l+d>>1]=F[j>>2];E[(l|2)+d>>1]=F[j+4>>2];E[(l|4)+d>>1]=F[j+8>>2];E[(l|6)+d>>1]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){E[(a<<1)+d>>1]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];a=e+e|0;d=sa(a>>>0>>0?-1:a);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;E[l+d>>1]=F[j>>2];E[(l|2)+d>>1]=F[j+4>>2];E[(l|4)+d>>1]=F[j+8>>2];E[(l|6)+d>>1]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){E[(a<<1)+d>>1]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];c=e<<2;d=sa((e|0)!=(e&1073741823)?-1:c);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;F[l+d>>2]=F[j>>2];F[(l|4)+d>>2]=F[j+4>>2];F[(l|8)+d>>2]=F[j+8>>2];F[(l|12)+d>>2]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){F[(a<<2)+d>>2]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];c=e<<2;d=sa((e|0)!=(e&1073741823)?-1:c);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;F[l+d>>2]=F[j>>2];F[(l|4)+d>>2]=F[j+4>>2];F[(l|8)+d>>2]=F[j+8>>2];F[(l|12)+d>>2]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){F[(a<<2)+d>>2]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c)}ra(d);d=1}return d|0} -function _a(a,b){var c=0,d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=a+16|0;F[d>>2]=0;F[d+4>>2]=0;D[d+5|0]=0;D[d+6|0]=0;D[d+7|0]=0;D[d+8|0]=0;D[d+9|0]=0;D[d+10|0]=0;D[d+11|0]=0;D[d+12|0]=0;c=d+16|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+32|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+48|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d- -64|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+80|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+96|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+112|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+128|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+144|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+160|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+176|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+192|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+208|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+224|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+240|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+256|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+272|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+288|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+304|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+320|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+336|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+352|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+368|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+384|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+400|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+416|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+432|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+448|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+464|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+480|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;d=d+496|0;F[d>>2]=0;F[d+4>>2]=0;D[d+5|0]=0;D[d+6|0]=0;D[d+7|0]=0;D[d+8|0]=0;D[d+9|0]=0;D[d+10|0]=0;D[d+11|0]=0;D[d+12|0]=0;F[a+528>>2]=0;F[a+532>>2]=0;D[a+533|0]=0;D[a+534|0]=0;D[a+535|0]=0;D[a+536|0]=0;D[a+537|0]=0;D[a+538|0]=0;D[a+539|0]=0;D[a+540|0]=0;F[a+544>>2]=0;F[a+548>>2]=0;F[a+560>>2]=0;F[a+552>>2]=0;F[a+556>>2]=0;F[a+564>>2]=0;F[a+568>>2]=0;F[a+580>>2]=0;F[a+572>>2]=0;F[a+576>>2]=0;F[a+584>>2]=0;F[a+588>>2]=0;F[a+600>>2]=0;F[a+592>>2]=0;F[a+596>>2]=0;F[a+612>>2]=0;F[a+604>>2]=0;F[a+608>>2]=0;g=a+628|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+616>>2]=0;F[a+620>>2]=0;F[a+624>>2]=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;d=1;break a}d=b<<2;c=sa(d);F[a+604>>2]=c;f=c+d|0;F[a+612>>2]=f;ua(c,0,d);F[a+624>>2]=0;F[a+616>>2]=0;F[a+620>>2]=0;F[a+608>>2]=f;c=sa(d);F[a+616>>2]=c;f=c+d|0;F[a+624>>2]=f;ua(c,0,d);F[a+620>>2]=f;c=sa(d);F[e>>2]=c;f=c+d|0;F[e+8>>2]=f;ua(c,0,d);F[e+4>>2]=f;d=b<<5|1}vb(g,d,e);c=F[e>>2];if(c){F[e+4>>2]=c;ra(c)}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(b){b=b<<2;c=sa(b);F[e>>2]=c;f=b+c|0;F[e+8>>2]=f;ua(c,0,b);F[e+4>>2]=f}vb(a+640|0,d,e);b=F[e>>2];if(b){F[e+4>>2]=b;ra(b)}ea=e+16|0;return a}function ni(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=F[a+32>>2];e=F[c+16>>2];d=F[c+12>>2];b=F[c+20>>2];if(I[c+8>>2]>e>>>0&(d|0)>=(b|0)|(b|0)<(d|0)){f=G[e+F[c>>2]|0];d=e+1|0;b=d?b:b+1|0;F[c+16>>2]=d;F[c+20>>2]=b;c=F[a+48>>2];F[a+48>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}a:{b:{c:{d:{switch(f|0){case 0:c=sa(384);F[c>>2]=11412;ua(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+376>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;break c;case 1:c=sa(424);F[c>>2]=11464;ua(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+392>>2]=0;F[c+396>>2]=0;F[c+384>>2]=0;F[c+388>>2]=0;F[c+376>>2]=0;F[c+380>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;b=c+400|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;F[c+416>>2]=-1;F[c+420>>2]=-1;break c;case 2:break d;default:break b}}c=sa(440);F[c>>2]=11512;ua(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+392>>2]=0;F[c+396>>2]=0;F[c+384>>2]=0;F[c+388>>2]=0;F[c+376>>2]=0;F[c+380>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;F[c+416>>2]=0;F[c+420>>2]=0;F[c+408>>2]=2;F[c+412>>2]=7;F[c+400>>2]=-1;F[c+404>>2]=-1;F[c+424>>2]=0;F[c+428>>2]=0;F[c+432>>2]=0;F[c+436>>2]=0}b=F[a+48>>2];F[a+48>>2]=c;if(!b){break a}ga[F[F[b>>2]+4>>2]](b)}c=F[a+48>>2];if(c){break a}return 0}a=ga[F[F[c>>2]+8>>2]](c,a)|0}else{a=0}return a|0}function pj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0,X=0;if((e|0)==2){F[a+8>>2]=2;F[a- -64>>2]=f;d=a+32|0;e=F[d>>2];f=F[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){Aa(d,2-g|0);break a}if((f|0)==8){break a}F[a+36>>2]=e+8}b:{d=F[a+56>>2];e=F[d+4>>2];d=F[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;J=f>>2;T=(J|0)>1?J:1;f=1;while(1){j=ea-80|0;ea=j;e=-1;d=F[(q<<2)+d>>2];g=-1;c:{if((d|0)==-1){break c}e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;g=d-1|0;if((d>>>0)%3|0){break c}g=d+2|0}i=F[m+36>>2];d=F[i>>2];d:{e:{f:{g:{h:{i=F[i+4>>2]-d>>2;h=e<<2;e=F[F[m+32>>2]+28>>2];k=F[h+e>>2];if(i>>>0<=k>>>0){break h}e=F[e+(g<<2)>>2];if(e>>>0>=i>>>0){break h}i:{j:{g=F[d+(e<<2)>>2];i=F[d+(k<<2)>>2];if((g|0)>=(q|0)|(i|0)>=(q|0)){break j}d=(g<<3)+c|0;v=F[d+4>>2];e=(i<<3)+c|0;s=F[e+4>>2];x=F[d>>2];C=F[e>>2];if(!((x|0)!=(C|0)|(s|0)!=(v|0))){F[m+8>>2]=C;F[m+12>>2]=s;break i}d=F[F[m+4>>2]+(q<<2)>>2];F[j+72>>2]=0;F[j+76>>2]=0;e=j- -64|0;F[e>>2]=0;F[e+4>>2]=0;F[j+56>>2]=0;F[j+60>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Sa(e,d,D[e+24|0],j+56|0);d=F[F[m+4>>2]+(i<<2)>>2];F[j+48>>2]=0;F[j+52>>2]=0;F[j+40>>2]=0;F[j+44>>2]=0;F[j+32>>2]=0;F[j+36>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Sa(e,d,D[e+24|0],j+32|0);d=F[F[m+4>>2]+(g<<2)>>2];F[j+24>>2]=0;F[j+28>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Sa(e,d,D[e+24|0],j+8|0);K=F[j+44>>2];d=F[j+16>>2];E=F[j+40>>2];e=E;k=F[j+20>>2]-(K+(d>>>0>>0)|0)|0;o=d-e|0;d=Fj(o,k,o,k);e=fa;n=d;L=F[j+36>>2];d=F[j+8>>2];H=F[j+32>>2];g=H;h=F[j+12>>2]-(L+(d>>>0>>0)|0)|0;t=d-g|0;g=Fj(t,h,t,h);d=n+g|0;e=fa+e|0;e=d>>>0>>0?e+1|0:e;n=d;M=F[j+52>>2];d=F[j+24>>2];I=F[j+48>>2];g=I;l=F[j+28>>2]-(M+(d>>>0>>0)|0)|0;p=d-g|0;r=Fj(p,l,p,l);d=n+r|0;g=fa+e|0;u=d;r=d>>>0>>0?g+1|0:g;if(!(d|r)){break j}n=F[j+64>>2];d=n;O=F[j+68>>2];d=Fj(d-E|0,O-((d>>>0>>0)+K|0)|0,o,k);e=fa;g=d;P=F[j+56>>2];d=P;Q=F[j+60>>2];i=Fj(d-H|0,Q-((d>>>0>>0)+L|0)|0,t,h);d=g+i|0;g=fa+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=F[j+72>>2];d=R;S=F[j+76>>2];i=Fj(d-I|0,S-((d>>>0>>0)+M|0)|0,p,l);d=e+i|0;e=fa+g|0;y=d;w=d>>>0>>0?e+1|0:e;d=l>>31;e=d+p|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;e=e^d;d=d^g;i=d;d=k>>31;z=d+o|0;g=d+k|0;A=d^z;d=d^(d>>>0>z>>>0?g+1|0:g);z=d;N=0;d=h>>31;B=d+t|0;g=d+h|0;g=B>>>0>>0?g+1|0:g;U=e;B=B^d;d=d^g;g=(z|0)==(d|0)&A>>>0>B>>>0|d>>>0>>0;A=g?A:B;d=g?z:d;e=(i|0)==(d|0)&e>>>0>A>>>0|d>>>0>>0;e=Hj(-1,2147483647,e?U:A,e?i:d)>>>0>>0;d=fa;if(e&(d|0)<=(w|0)|(d|0)<(w|0)){break d}i=1;d=0;e=n;o=Gj(Fj(o,k,y,w),fa,u,r);k=o+E|0;g=fa+K|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=Fj(e,g,e,g);o=fa;e=P;n=g;h=Gj(Fj(t,h,y,w),fa,u,r);k=h+H|0;g=fa+L|0;g=h>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=Fj(e,g,e,g);g=n+k|0;e=fa+o|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;n=g;l=Gj(Fj(p,l,y,w),fa,u,r);h=l+I|0;g=fa+M|0;g=h>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-h|0;h=Fj(e,g,e,g);e=n+h|0;g=fa+k|0;k=Fj(e,e>>>0>>0?g+1|0:g,u,r);e=fa;h=e;if(!e&k>>>0<=1){break g}l=k;e=h;while(1){g=d<<1|i>>>31;i=i<<1;d=g;o=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(o){continue}break}break f}if((i|0)<(q|0)){d=i<<1}else{if((q|0)<=0){F[m+8>>2]=0;F[m+12>>2]=0;break i}d=(q<<1)-2|0}d=(d<<2)+c|0;F[m+8>>2]=F[d>>2];F[m+12>>2]=F[d+4>>2]}N=1;break d}Da();V()}d=h;i=k;if(i-1|0){break e}}while(1){e=Hj(k,h,i,d)+i|0;g=d+fa|0;g=e>>>0>>0?g+1|0:g;i=(g&1)<<31|e>>>1;d=g>>>1|0;e=Fj(i,d,i,d);g=fa;if((h|0)==(g|0)&e>>>0>k>>>0|g>>>0>h>>>0){continue}break}}k=F[m+20>>2];if(k){e=k-1|0;l=F[F[m+16>>2]+(e>>>3&536870908)>>2];F[m+20>>2]=e;g=s;o=v-g|0;h=g>>31;t=(v>>31)-(h+(g>>>0>v>>>0)|0)|0;g=Fj(y,w,o,t);p=fa;s=Fj(s,h,u,r);h=s+g|0;g=fa+p|0;g=h>>>0>>0?g+1|0:g;n=h;h=C;p=x-h|0;s=h>>31;v=(x>>31)-(s+(h>>>0>x>>>0)|0)|0;h=Fj(i,d,p,v);x=h;e=l>>>e&1;l=e?0-h|0:h;h=n+l|0;n=g;g=fa;g=n+(e?0-(g+((x|0)!=0)|0)|0:g)|0;W=m,X=Gj(h,h>>>0>>0?g+1|0:g,u,r),F[W+12>>2]=X;g=Fj(p,v,y,w);l=fa;p=Fj(u,r,C,s);h=p+g|0;g=fa+l|0;g=h>>>0

>>0?g+1|0:g;n=h;d=Fj(i,d,o,t);h=e?d:0-d|0;i=n+h|0;n=g;g=fa;e=n+(e?g:0-(((d|0)!=0)+g|0)|0)|0;W=m,X=Gj(i,i>>>0>>0?e+1|0:e,u,r),F[W+8>>2]=X}N=(k|0)!=0}ea=j+80|0;if(!N){break b}k:{if(F[a+8>>2]<=0){break k}g=F[a+32>>2];d=0;while(1){e=d<<2;f=F[(e+a|0)+68>>2];i=F[a+16>>2];l:{if((f|0)>(i|0)){F[e+g>>2]=i;break l}e=e+g|0;i=F[a+12>>2];if((i|0)>(f|0)){F[e>>2]=i;break l}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=q<<3;i=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+i|0;f=F[f+k>>2]+F[f+g>>2]|0;F[d>>2]=f;m:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break m}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}q=q+1|0;f=(J|0)>(q|0);if((q|0)==(T|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>q>>>0){continue}break}}Da();V()}a=f^1}else{a=0}return a&1}function aj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0;if((e|0)==2){F[a+8>>2]=2;F[a- -64>>2]=f;d=a+32|0;e=F[d>>2];f=F[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){Aa(d,2-g|0);break a}if((f|0)==8){break a}F[a+36>>2]=e+8}b:{d=F[a+56>>2];e=F[d+4>>2];d=F[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;I=f>>2;T=(I|0)>1?I:1;f=1;while(1){i=ea-80|0;ea=i;e=-1;c:{d:{g=F[(p<<2)+d>>2];if((g|0)==-1){break d}h=F[m+32>>2];d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)!=-1){e=F[F[h>>2]+(d<<2)>>2]}d=-1;g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){d=F[F[h>>2]+(g<<2)>>2]}h=F[m+36>>2];g=F[h>>2];h=F[h+4>>2]-g>>2;if(h>>>0<=e>>>0|d>>>0>=h>>>0){break d}h=F[g+(e<<2)>>2];e:{f:{g:{h:{i:{j:{g=F[g+(d<<2)>>2];if((g|0)>=(p|0)|(h|0)>=(p|0)){break j}d=(g<<3)+c|0;w=F[d+4>>2];e=(h<<3)+c|0;r=F[e+4>>2];t=F[d>>2];C=F[e>>2];if(!((t|0)!=(C|0)|(r|0)!=(w|0))){F[m+8>>2]=C;F[m+12>>2]=r;break i}d=F[F[m+4>>2]+(p<<2)>>2];F[i+72>>2]=0;F[i+76>>2]=0;e=i- -64|0;F[e>>2]=0;F[e+4>>2]=0;F[i+56>>2]=0;F[i+60>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Sa(e,d,D[e+24|0],i+56|0);d=F[F[m+4>>2]+(h<<2)>>2];F[i+48>>2]=0;F[i+52>>2]=0;F[i+40>>2]=0;F[i+44>>2]=0;F[i+32>>2]=0;F[i+36>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Sa(e,d,D[e+24|0],i+32|0);e=F[F[m+4>>2]+(g<<2)>>2];F[i+24>>2]=0;F[i+28>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i+8>>2]=0;F[i+12>>2]=0;d=F[m>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}Sa(d,e,D[d+24|0],i+8|0);J=F[i+44>>2];d=F[i+16>>2];x=F[i+40>>2];e=x;k=F[i+20>>2]-(J+(d>>>0>>0)|0)|0;n=d-e|0;d=Fj(n,k,n,k);e=fa;o=d;K=F[i+36>>2];d=F[i+8>>2];E=F[i+32>>2];g=E;j=F[i+12>>2]-(K+(d>>>0>>0)|0)|0;u=d-g|0;g=Fj(u,j,u,j);d=o+g|0;e=fa+e|0;e=d>>>0>>0?e+1|0:e;o=d;L=F[i+52>>2];d=F[i+24>>2];H=F[i+48>>2];g=H;l=F[i+28>>2]-(L+(d>>>0>>0)|0)|0;s=d-g|0;q=Fj(s,l,s,l);d=o+q|0;g=fa+e|0;v=d;q=d>>>0>>0?g+1|0:g;if(!(d|q)){break j}N=F[i+64>>2];d=N;O=F[i+68>>2];d=Fj(d-x|0,O-((d>>>0>>0)+J|0)|0,n,k);e=fa;g=d;P=F[i+56>>2];d=P;Q=F[i+60>>2];h=Fj(d-E|0,Q-((d>>>0>>0)+K|0)|0,u,j);d=g+h|0;g=fa+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=F[i+72>>2];d=R;S=F[i+76>>2];h=Fj(d-H|0,S-((d>>>0>>0)+L|0)|0,s,l);d=e+h|0;e=fa+g|0;z=d;y=d>>>0>>0?e+1|0:e;d=l>>31;e=d+s|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;h=e^d;d=d^g;M=d;d=k>>31;g=d+n|0;e=d+k|0;A=g^d;d=d^(g>>>0>>0?e+1|0:e);o=d;e=0;d=j>>31;B=d+u|0;g=d+j|0;g=B>>>0>>0?g+1|0:g;B=B^d;d=d^g;g=(o|0)==(d|0)&A>>>0>B>>>0|d>>>0>>0;A=g?A:B;d=g?o:d;g=(M|0)==(d|0)&h>>>0>A>>>0|d>>>0>>0;g=Hj(-1,2147483647,g?h:A,g?M:d)>>>0>>0;d=fa;if(g&(d|0)<=(y|0)|(d|0)<(y|0)){break e}h=1;d=0;e=N;n=Gj(Fj(n,k,z,y),fa,v,q);k=n+x|0;g=fa+J|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=Fj(e,g,e,g);n=fa;e=P;o=g;j=Gj(Fj(u,j,z,y),fa,v,q);k=j+E|0;g=fa+K|0;g=j>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=Fj(e,g,e,g);g=o+k|0;e=fa+n|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;o=g;l=Gj(Fj(s,l,z,y),fa,v,q);j=l+H|0;g=fa+L|0;g=j>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-j|0;j=Fj(e,g,e,g);e=o+j|0;g=fa+k|0;k=Fj(e,e>>>0>>0?g+1|0:g,v,q);e=fa;j=e;if(!e&k>>>0<=1){break h}l=k;e=j;while(1){g=d<<1|h>>>31;h=h<<1;d=g;n=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(n){continue}break}break g}if((h|0)<(p|0)){d=h<<1}else{if((p|0)<=0){F[m+8>>2]=0;F[m+12>>2]=0;break i}d=(p<<1)-2|0}d=(d<<2)+c|0;F[m+8>>2]=F[d>>2];F[m+12>>2]=F[d+4>>2]}e=1;break e}d=j;h=k;if(h-1|0){break f}}while(1){g=Hj(k,j,h,d)+h|0;e=d+fa|0;e=g>>>0>>0?e+1|0:e;h=(e&1)<<31|g>>>1;d=e>>>1|0;e=Fj(h,d,h,d);g=fa;if((j|0)==(g|0)&e>>>0>k>>>0|g>>>0>j>>>0){continue}break}}k=F[m+20>>2];if(k){e=k-1|0;l=F[F[m+16>>2]+(e>>>3&536870908)>>2];F[m+20>>2]=e;g=r;n=w-g|0;j=g>>31;u=(w>>31)-(j+(g>>>0>w>>>0)|0)|0;g=Fj(z,y,n,u);s=fa;r=Fj(r,j,v,q);j=r+g|0;g=fa+s|0;g=j>>>0>>0?g+1|0:g;o=j;j=C;s=t-j|0;r=j>>31;w=(t>>31)-(r+(j>>>0>t>>>0)|0)|0;j=Fj(h,d,s,w);t=j;j=l>>>e&1;e=j;x=e?0-t|0:t;l=o+x|0;o=g;g=fa;e=o+(e?0-(g+((t|0)!=0)|0)|0:g)|0;U=m,W=Gj(l,l>>>0>>0?e+1|0:e,v,q),F[U+12>>2]=W;e=Fj(s,w,z,y);g=fa;l=Fj(v,q,C,r);e=l+e|0;g=fa+g|0;g=e>>>0>>0?g+1|0:g;d=Fj(h,d,n,u);l=j?d:0-d|0;h=l+e|0;e=fa;e=(j?e:0-(((d|0)!=0)+e|0)|0)+g|0;U=m,W=Gj(h,h>>>0>>0?e+1|0:e,v,q),F[U+8>>2]=W}e=(k|0)!=0}ea=i+80|0;break c}Da();V()}if(!e){break b}k:{if(F[a+8>>2]<=0){break k}g=F[a+32>>2];d=0;while(1){e=d<<2;f=F[(e+a|0)+68>>2];h=F[a+16>>2];l:{if((f|0)>(h|0)){F[e+g>>2]=h;break l}e=e+g|0;h=F[a+12>>2];if((h|0)>(f|0)){F[e>>2]=h;break l}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=p<<3;h=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+h|0;f=F[f+k>>2]+F[f+g>>2]|0;F[d>>2]=f;m:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break m}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}p=p+1|0;f=(I|0)>(p|0);if((p|0)==(T|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>p>>>0){continue}break}}Da();V()}a=f^1}else{a=0}return a&1}function hd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=ea-96|0;ea=h;q=F[a+4>>2];e=F[q+32>>2];l=F[e+8>>2];g=l;n=F[e+12>>2];d=n;c=F[e+20>>2];o=F[e+16>>2];a:{if((d|0)<=(c|0)&o>>>0>=g>>>0|(c|0)>(d|0)){break a}f=F[e>>2];p=G[f+o|0];g=o+1|0;d=g?c:c+1|0;F[e+16>>2]=g;F[e+20>>2]=d;if((d|0)>=(n|0)&g>>>0>=l>>>0|(d|0)>(n|0)){break a}m=G[f+g|0];g=o+2|0;d=g>>>0<2?c+1|0:c;k=g;F[e+16>>2]=g;F[e+20>>2]=d;j=p<<24>>24;b:{if((j|0)>=0){g=F[a+216>>2];if(p>>>0>=(F[a+220>>2]-g|0)/144>>>0){break a}g=g+L(p,144)|0;if(F[g>>2]<0){break b}break a}if(F[a+212>>2]>=0){break a}g=a+212|0}F[g>>2]=b;c:{d:{g=H[q+36>>1];e:{if(((g<<8|g>>>8)&65535)>>>0>=258){if((d|0)>=(n|0)&k>>>0>=l>>>0|(d|0)>(n|0)){break a}g=G[f+k|0];d=o+3|0;c=d>>>0<3?c+1|0:c;F[e+16>>2]=d;F[e+20>>2]=c;c=g>>>0>1;if(c){break a}c=c?0:g;if(!m){break e}if(c){break a}break d}if(m){break d}c=0}if((j|0)<0){e=a+184|0}else{e=F[a+216>>2]+L(p,144)|0;D[e+100|0]=0;e=e+104|0}f:{if((c|0)==1){f=ea-112|0;ea=f;k=F[F[a+4>>2]+44>>2];c=sa(120);F[c>>2]=12204;F[c+4>>2]=0;F[c+116>>2]=0;F[c+112>>2]=e;F[c+108>>2]=k;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+8>>2]=12416;d=c- -64|0;F[d>>2]=0;F[d+4>>2]=0;F[c+72>>2]=0;F[c+76>>2]=0;F[c+80>>2]=0;F[c+84>>2]=0;F[c+88>>2]=0;F[c+104>>2]=0;F[c+96>>2]=0;F[c+100>>2]=0;m=F[a+8>>2];F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;j=f+32|0;d=j;F[d>>2]=0;F[d+4>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;d=f- -64|0;F[d>>2]=0;F[d+4>>2]=0;F[f+72>>2]=0;F[f+76>>2]=0;F[f+80>>2]=0;F[f+84>>2]=0;F[f+88>>2]=0;F[f+104>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;F[f+8>>2]=12416;F[f+96>>2]=0;F[f+100>>2]=0;F[f+12>>2]=m;g=F[m>>2];d=F[m+4>>2];D[f+111|0]=0;l=j;j=f+111|0;Na(l,(d-g>>2>>>0)/3|0,j);d=F[f+12>>2];g=F[d+28>>2];d=F[d+24>>2];D[f+111|0]=0;Na(f+44|0,g-d>>2,j);F[f+28>>2]=c;F[f+24>>2]=k;F[f+20>>2]=e;F[f+16>>2]=m;e=c+8|0;d=f+8|0;gd(e,d);g:{if((d|0)==(e|0)){F[c+92>>2]=F[d+84>>2];break g}Cb(c+56|0,F[d+48>>2],F[d+52>>2]);Cb(c+68|0,F[d+60>>2],F[d- -64>>2]);Cb(c+80|0,F[d+72>>2],F[d+76>>2]);F[c+92>>2]=F[d+84>>2];Ca(c+96|0,F[d+88>>2],F[d+92>>2])}F[f+8>>2]=12416;e=F[f+96>>2];if(e){F[f+100>>2]=e;ra(e)}e=F[f+80>>2];if(e){F[f+84>>2]=e;ra(e)}e=F[f+68>>2];if(e){F[f+72>>2]=e;ra(e)}e=F[f+56>>2];if(e){F[f+60>>2]=e;ra(e)}F[f+8>>2]=12652;e=F[f+44>>2];if(e){ra(e)}e=F[f+32>>2];if(e){ra(e)}ea=f+112|0;break f}d=ea+-64|0;ea=d;f=F[F[a+4>>2]+44>>2];c=sa(80);F[c>>2]=12672;F[c+4>>2]=0;F[c+76>>2]=0;F[c+72>>2]=e;F[c+68>>2]=f;F[c+8>>2]=12836;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c- -64>>2]=0;m=c+56|0;g=m;F[g>>2]=0;F[g+4>>2]=0;l=F[a+8>>2];F[d+40>>2]=0;F[d+44>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;k=d+24|0;g=k;F[g>>2]=0;F[g+4>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[d+56>>2]=0;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=12836;F[d+4>>2]=l;j=F[l>>2];g=F[l+4>>2];D[d+63|0]=0;n=k;k=d+63|0;Na(n,(g-j>>2>>>0)/3|0,k);g=F[d+4>>2];j=F[g+28>>2];g=F[g+24>>2];D[d+63|0]=0;Na(d+36|0,j-g>>2,k);F[d+20>>2]=c;F[d+16>>2]=f;F[d+12>>2]=e;F[d+8>>2]=l;gd(c+8|0,d);Cb(m,F[d+48>>2],F[d+52>>2]);F[d>>2]=12836;e=F[d+48>>2];if(e){F[d+52>>2]=e;ra(e)}F[d>>2]=12652;e=F[d+36>>2];if(e){ra(e)}e=F[d+24>>2];if(e){ra(e)}ea=d- -64|0}if(!c){break a}break c}if((j|0)<0){break a}g=F[q+44>>2];e=F[a+216>>2];c=sa(80);F[c+76>>2]=0;F[c+68>>2]=g;F[c+8>>2]=11900;F[c>>2]=12964;F[c+4>>2]=0;d=e+L(p,144)|0;i=d+104|0;F[c+72>>2]=i;F[c- -64>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+52>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+12>>2]=0;F[c+16>>2]=0;F[h+24>>2]=g;F[h+68>>2]=0;F[h+72>>2]=0;F[h+60>>2]=0;F[h+64>>2]=0;F[h+52>>2]=0;F[h+56>>2]=0;F[h+44>>2]=0;F[h+48>>2]=0;F[h+84>>2]=0;F[h+88>>2]=0;F[h+76>>2]=0;F[h+80>>2]=0;F[h+28>>2]=c;e=F[h+28>>2];F[h+8>>2]=F[h+24>>2];F[h+12>>2]=e;d=d+4|0;F[h+16>>2]=d;F[h+20>>2]=i;F[h+36>>2]=0;F[h+40>>2]=0;F[h+32>>2]=11900;e=F[h+20>>2];F[h>>2]=F[h+16>>2];F[h+4>>2]=e;i=h+32|0;Ce(i,d,h);e=c+8|0;gd(e,i);if((e|0)!=(i|0)){Cb(c+56|0,F[i+48>>2],F[i+52>>2])}Be(i)}c=pd(sa(64),c);j=F[a+4>>2];a=c;c=b;h:{i:{if((c|0)>=0){d=j+8|0;b=F[j+12>>2];e=F[j+8>>2];g=b-e>>2;j:{if((g|0)>(c|0)){break j}i=c+1|0;if(c>>>0>=g>>>0){Wb(d,i-g|0);break j}if(g>>>0<=i>>>0){break j}e=e+(i<<2)|0;if((e|0)!=(b|0)){while(1){b=b-4|0;i=F[b>>2];F[b>>2]=0;if(i){ga[F[F[i>>2]+4>>2]](i)}if((b|0)!=(e|0)){continue}break}}F[j+12>>2]=e}e=F[d>>2]+(c<<2)|0;b=F[e>>2];F[e>>2]=a;if(b){break i}break h}b=a;if(!a){break h}}ga[F[F[b>>2]+4>>2]](b)}i=(c^-1)>>>31|0}ea=h+96|0;return i|0}function Md(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[e+12>>2]=a;a:{if(a>>>0<=211){d=F[Kd(14288,14480,e+12|0)>>2];break a}if(a>>>0>=4294967292){Ec();V()}f=(a>>>0)/210|0;d=L(f,210);F[e+8>>2]=a-d;g=Kd(14480,14672,e+8|0)-14480>>2;while(1){d=F[(g<<2)+14480>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0>>0){break b}if((L(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((L(b,c)|0)!=(d|0)){continue}break}break c}b=F[(a<<2)+14288>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((L(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=L(f,210);continue}break}F[e+12>>2]=d}ea=e+16|0;return d}function Bh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=ea-32|0;ea=e;c=F[a+32>>2];d=H[a+36>>1];a:{b:{if(((d<<8|d>>>8)&65535)>>>0<=513){b=F[c+12>>2];d=F[c+20>>2];f=d;i=F[c+16>>2];g=i+4|0;d=g>>>0<4?d+1|0:d;j=F[c+8>>2];h=g;if(j>>>0>>0&(b|0)<=(d|0)|(b|0)<(d|0)){break a}n=F[c>>2];g=n+i|0;l=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[c+16>>2]=h;F[c+20>>2]=d;d=b;b=f;f=i+8|0;b=f>>>0<8?b+1|0:b;if(f>>>0>j>>>0&(b|0)>=(d|0)|(b|0)>(d|0)){break a}d=h+n|0;n=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[e+24>>2]=n;F[c+16>>2]=f;F[c+20>>2]=b;break b}if(!rb(1,e+28|0,c)){break a}if(!rb(1,e+24|0,F[a+32>>2])){break a}l=F[e+28>>2];n=F[e+24>>2]}if(l>>>0>1431655765){break a}f=F[a+32>>2];d=f;i=F[d+8>>2];b=i;c=F[d+16>>2];h=b-c|0;g=F[d+12>>2];o=b>>>0>>0;b=F[d+20>>2];d=Gj(h,g-(o+b|0)|0,3,0);if(!fa&d>>>0>>0){break a}d=Fj(l,0,3,0);if(!fa&d>>>0>>0|((b|0)>=(g|0)&c>>>0>=i>>>0|(b|0)>(g|0))){break a}g=G[c+F[f>>2]|0];i=c+1|0;d=i?b:b+1|0;F[f+16>>2]=i;F[f+20>>2]=d;c:{if(!g){f=0;b=ea-32|0;ea=b;F[b+24>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;d:{e:{d=L(l,3);if(d){if(d>>>0>=1073741824){break e}c=L(l,12);f=sa(c);F[b+16>>2]=f;ua(f,0,c)}d=md(d,1,F[a+32>>2],f);f:{g:{if(!(!d|!l)){g=0;c=0;while(1){i=(c<<2)+f|0;h=F[i>>2];j=h>>>1|0;h=(h&1?0-j|0:j)+k|0;F[b>>2]=h;j=F[i+4>>2];k=j>>>1|0;h=h+(j&1?0-k|0:k)|0;F[b+4>>2]=h;i=F[i+8>>2];j=i>>>1|0;k=h+(i&1?0-j|0:j)|0;F[b+8>>2]=k;Sb(F[a+44>>2]+96|0,b);c=c+3|0;g=g+1|0;if((g|0)!=(l|0)){continue}break}break g}if(!f){break f}}ra(f)}ea=b+32|0;break d}va();V()}if(!d){break a}break c}h:{if(n>>>0<=255){if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;c=F[f+12>>2];b=c;h=F[f+8>>2];if((d|0)>=(b|0)&i>>>0>=h>>>0|(b|0)<(d|0)){break h}while(1){g=F[f>>2];k=G[g+i|0];b=d;j=i+1|0;b=j?b:b+1|0;F[f+16>>2]=j;F[f+20>>2]=b;F[e+8>>2]=k;if((b|0)>=(c|0)&j>>>0>=h>>>0|(b|0)>(c|0)){break h}k=G[g+j|0];b=d;j=i+2|0;b=j>>>0<2?b+1|0:b;F[f+16>>2]=j;F[f+20>>2]=b;F[e+12>>2]=k;if((b|0)>=(c|0)&j>>>0>=h>>>0|(b|0)>(c|0)){break h}b=G[g+j|0];c=i+3|0;d=c>>>0<3?d+1|0:d;F[f+16>>2]=c;F[f+20>>2]=d;F[e+16>>2]=b;Sb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;h=F[b+8>>2];c=F[b+12>>2];b=c;if(i>>>0>>0&(d|0)<=(b|0)|(b|0)>(d|0)){continue}break}break h}if(n>>>0<=65535){if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[f+12>>2];c=c+3|0;b=c>>>0<3?b+1|0:b;j=F[f+8>>2];h=c;c=b;if(j>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}while(1){k=F[f>>2];b=k+i|0;b=G[b|0]|G[b+1|0]<<8;F[f+16>>2]=h;F[f+20>>2]=c;F[e+8>>2]=b;b=d;c=i+4|0;b=c>>>0<4?b+1|0:b;if(c>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}h=h+k|0;h=G[h|0]|G[h+1|0]<<8;F[f+16>>2]=c;F[f+20>>2]=b;F[e+12>>2]=h;b=d;d=i+6|0;b=d>>>0<6?b+1|0:b;if(d>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}c=c+k|0;c=G[c|0]|G[c+1|0]<<8;F[f+16>>2]=d;F[f+20>>2]=b;F[e+16>>2]=c;Sb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[b+12>>2];j=F[b+8>>2];b=d;c=i+2|0;b=c>>>0<2?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&j>>>0>=h>>>0|(b|0)<(g|0)){continue}break}break h}i:{if(I[F[a+44>>2]+80>>2]>2097151){break i}g=H[a+36>>1];if(((g<<8|g>>>8)&65535)>>>0<514){break i}if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(!rb(1,e+4|0,f)){break h}while(1){F[e+8>>2]=F[e+4>>2];if(!rb(1,e+4|0,F[a+32>>2])){break h}F[e+12>>2]=F[e+4>>2];if(!rb(1,e+4|0,F[a+32>>2])){break h}F[e+16>>2]=F[e+4>>2];Sb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}d=F[a+32>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(rb(1,e+4|0,d)){continue}break}break h}if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[f+12>>2];c=c+5|0;b=c>>>0<5?b+1|0:b;j=F[f+8>>2];h=c;c=b;if(j>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}while(1){k=F[f>>2];b=k+i|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[f+16>>2]=h;F[f+20>>2]=c;F[e+8>>2]=b;b=d;c=i+8|0;b=c>>>0<8?b+1|0:b;o=c;if(c>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}c=h+k|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[f+16>>2]=o;F[f+20>>2]=b;F[e+12>>2]=c;b=i+12|0;d=b>>>0<12?d+1|0:d;c=b;if(b>>>0>j>>>0&(d|0)>=(g|0)|(d|0)>(g|0)){break h}b=k+o|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[f+16>>2]=c;F[f+20>>2]=d;F[e+16>>2]=b;Sb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[b+12>>2];j=F[b+8>>2];b=d;c=i+4|0;b=c>>>0<4?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&j>>>0>=h>>>0|(b|0)<(g|0)){continue}break}}m=0;break a}F[F[a+4>>2]+80>>2]=n;m=1}ea=e+32|0;return m|0}function Hb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=ea-16|0;ea=m;a:{b:{c:{d:{if(G[F[a+4>>2]+36|0]<=1){j=-1;c=F[b+20>>2];d=F[b+16>>2];f=d+4|0;c=f>>>0<4?c+1|0:c;e=f;f=F[b+12>>2];if(e>>>0>I[b+8>>2]&(f|0)<=(c|0)|(c|0)>(f|0)){break c}d=d+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[m+12>>2]=f;F[b+16>>2]=e;F[b+20>>2]=c;break d}j=-1;if(!Fa(1,m+12|0,b)){break c}f=F[m+12>>2]}e:{f:{g:{h:{i:{j:{if(!f){break j}c=F[a+8>>2];if((F[c+4>>2]-F[c>>2]>>2>>>0)/3>>>0>>0){break c}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0>=258){d=0;k:{l:{while(1){if(!Fa(1,m+8|0,b)){break c}c=F[m+8>>2];if(!Fa(1,m+8|0,b)){break c}d=c+d|0;c=F[m+8>>2];if(d>>>0>>0){break c}h=d-c|0;g=F[a+40>>2];m:{if((g|0)!=F[a+44>>2]){F[g+4>>2]=d;F[g>>2]=h;F[a+40>>2]=g+12;break m}c=F[a+36>>2];e=g-c|0;g=(e|0)/12|0;i=g+1|0;if(i>>>0>=357913942){break l}l=g<<1;i=g>>>0<178956970?i>>>0>l>>>0?i:l:357913941;if(i>>>0>=357913942){break k}i=L(i,12);l=sa(i);g=l+L(g,12)|0;F[g+4>>2]=d;F[g>>2]=h;h=g+L((e|0)/-12|0,12)|0;g=g+12|0;if((e|0)>0){ta(h,c,e)}F[a+44>>2]=i+l;F[a+40>>2]=g;F[a+36>>2]=h;if(!c){break m}ra(c)}k=k+1|0;if((k|0)!=(f|0)){continue}break}j=0;Db(b,0,0);d=f>>>0>1?f:1;while(1){c=G[b+36|0];f=H[F[a+4>>2]+36>>1];n:{o:{if(((f<<8|f>>>8)&65535)>>>0<=513){if(!c){break n}g=0;c=F[b+32>>2];k=c>>>3|0;e=F[b+24>>2];f=k+e|0;h=F[b+28>>2];p:{if(f>>>0>=h>>>0){f=c;break p}g=G[f|0];f=c+1|0;F[b+32>>2]=f;k=f>>>3|0;g=g>>>(c&7)&1}if(h>>>0>e+k>>>0){break o}break n}if(!c){break n}g=0;f=F[b+32>>2];c=F[b+24>>2]+(f>>>3|0)|0;if(c>>>0>=I[b+28>>2]){break n}g=G[c|0]>>>(f&7)&1}F[b+32>>2]=f+1}c=F[a+36>>2]+L(j,12)|0;D[c+8|0]=G[c+8|0]&254|g&1;j=j+1|0;if((d|0)!=(j|0)){continue}break}D[b+36|0]=0;c=F[b+20>>2];d=0;f=F[b+32>>2]+7|0;d=f>>>0<7?1:d;e=d>>>3|0;f=(d&7)<<29|f>>>3;d=f+F[b+16>>2]|0;c=c+e|0;F[b+16>>2]=d;F[b+20>>2]=d>>>0>>0?c+1|0:c;break j}va();V()}break a}while(1){e=F[b+12>>2];c=F[b+20>>2];d=c;h=F[b+16>>2];i=h+4|0;c=i>>>0<4?c+1|0:c;n=F[b+8>>2];l=i;if(n>>>0>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break c}o=F[b>>2];i=o+h|0;p=G[i|0]|G[i+1|0]<<8|(G[i+2|0]<<16|G[i+3|0]<<24);F[b+16>>2]=l;F[b+20>>2]=c;c=d;i=h+8|0;c=i>>>0<8?c+1|0:c;if(i>>>0>n>>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break c}l=l+o|0;l=G[l|0]|G[l+1|0]<<8|(G[l+2|0]<<16|G[l+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;if((c|0)>=(e|0)&i>>>0>=n>>>0|(c|0)>(e|0)){break c}c=G[i+o|0];e=h+9|0;d=e>>>0<9?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;g=c&1|g&-2;c=F[a+40>>2];q:{if((c|0)!=F[a+44>>2]){D[c+8|0]=g;F[c+4>>2]=l;F[c>>2]=p;F[a+40>>2]=c+12;break q}d=F[a+36>>2];e=c-d|0;c=(e|0)/12|0;h=c+1|0;if(h>>>0>=357913942){break i}i=c<<1;h=c>>>0<178956970?h>>>0>i>>>0?h:i:357913941;if(h>>>0>=357913942){break a}i=L(h,12);n=sa(i);c=n+L(c,12)|0;D[c+8|0]=g;F[c+4>>2]=l;F[c>>2]=p;h=c+L((e|0)/-12|0,12)|0;if((e|0)>0){ta(h,d,e)}F[a+44>>2]=i+n;F[a+40>>2]=c+12;F[a+36>>2]=h;if(!d){break q}ra(d)}k=k+1|0;if((k|0)!=(f|0)){continue}break}}F[m+8>>2]=0;c=H[F[a+4>>2]+36>>1];c=(c<<8|c>>>8)&65535;r:{if(c>>>0<=511){j=-1;c=F[b+20>>2];d=F[b+16>>2];f=d+4|0;c=f>>>0<4?c+1|0:c;e=F[b+12>>2];if((e|0)<=(c|0)&f>>>0>I[b+8>>2]|(c|0)>(e|0)){break c}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=c;break r}if((c|0)!=512){break e}j=-1;if(!Fa(1,m+8|0,b)){break c}d=F[m+8>>2]}if(!d){break e}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0<258){break f}g=0;j=0;while(1){if(!Fa(1,m+4|0,b)){break g}j=F[m+4>>2]+j|0;c=F[a+52>>2];s:{if((c|0)!=F[a+56>>2]){F[c>>2]=j;F[a+52>>2]=c+4;break s}f=F[a+48>>2];e=c-f|0;h=e>>2;c=h+1|0;if(c>>>0>=1073741824){break h}k=e>>1;k=h>>>0<536870911?c>>>0>k>>>0?c:k:1073741823;if(k){if(k>>>0>=1073741824){break a}c=sa(k<<2)}else{c=0}h=c+(h<<2)|0;F[h>>2]=j;if((e|0)>0){ta(c,f,e)}F[a+56>>2]=c+(k<<2);F[a+52>>2]=h+4;F[a+48>>2]=c;if(!f){break s}ra(f)}g=g+1|0;if((g|0)!=(d|0)){continue}break}break e}va();V()}va();V()}j=-1;break c}f=0;while(1){c=F[b+20>>2];e=F[b+16>>2];g=e+4|0;c=g>>>0<4?c+1|0:c;j=F[b+12>>2];if((j|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(j|0)){j=-1;break c}e=e+F[b>>2]|0;k=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;c=F[a+52>>2];t:{if((c|0)!=F[a+56>>2]){F[c>>2]=k;F[a+52>>2]=c+4;break t}e=F[a+48>>2];g=c-e|0;h=g>>2;c=h+1|0;if(c>>>0>=1073741824){break b}j=g>>1;j=h>>>0<536870911?c>>>0>j>>>0?c:j:1073741823;if(j){if(j>>>0>=1073741824){break a}c=sa(j<<2)}else{c=0}h=c+(h<<2)|0;F[h>>2]=k;if((g|0)>0){ta(c,e,g)}F[a+56>>2]=c+(j<<2);F[a+52>>2]=h+4;F[a+48>>2]=c;if(!e){break t}ra(e)}f=f+1|0;if((f|0)!=(d|0)){continue}break}}j=F[b+16>>2]}ea=m+16|0;return j}va();V()}wa(1336);V()}function ic(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:d:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f|0];if((e|0)<0){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if((e-128&65535)>>>0<65280){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>127){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e-128>>>0<4294967040){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>127){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=F[f>>2];e=F[f+4>>2]-(h>>>0<128)|0;if((e|0)==-1&h-128>>>0<4294967040|(e|0)!=-1){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>127|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=J[f>>2];m:{if(M(N(i))=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=K[f>>3];o:{if(N(j)<2147483648){e=~~j;break o}e=-2147483648}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}ua(d+e|0,0,c-e|0)}return g}function hc(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:d:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f|0];if((e|0)<0){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>255|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>255|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=J[f>>2];m:{if(i=M(0)){e=~~i>>>0;break m}e=0}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=K[f>>3];o:{if(j<4294967296&j>=0){e=~~j>>>0;break o}e=0}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}ua(d+e|0,0,c-e|0)}return g}function ve(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{b:{c:{d:{e:{if(F[a+92>>2]==F[a+88>>2]){break e}c=F[a+52>>2];f:{if((c|0)!=F[a+56>>2]){F[c>>2]=b;F[a+52>>2]=c+4;break f}g=F[a+48>>2];h=c-g|0;d=h>>2;e=d+1|0;if(e>>>0>=1073741824){break b}c=h>>1;f=d>>>0<536870911?c>>>0>>0?e:c:1073741823;if(f){if(f>>>0>=1073741824){break a}c=sa(f<<2)}else{c=0}e=c+(d<<2)|0;F[e>>2]=b;if((h|0)>0){ta(c,g,h)}F[a+56>>2]=c+(f<<2);F[a+52>>2]=e+4;F[a+48>>2]=c;if(!g){break f}ra(g)}F[a+84>>2]=0;e=-1;c=-1;g:{if((b|0)==-1){break g}f=F[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){e=F[F[f>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=F[F[f>>2]+(d<<2)>>2]}j=c>>>3&536870908;d=F[a+36>>2];g=d+(e>>>3&536870908)|0;h=F[g>>2];f=1<>2]=f|h;f=a+8|0;if((b|0)!=-1){d=b+1|0;d=(d>>>0)%3|0?d:b-2|0}else{d=-1}Va(f,e,d);d=F[a+36>>2]}f=d+j|0;d=F[f>>2];e=1<>2]=d|e;d=a+8|0;e=-1;i:{if((b|0)==-1){break i}e=b-1|0;if((b>>>0)%3|0){break i}e=b+2|0}Va(d,c,e)}e=-1;e=(b|0)!=-1?F[F[F[a+4>>2]>>2]+(b<<2)>>2]:e;f=F[a+36>>2]+(e>>>3&536870908)|0;d=F[f>>2];c=1<>2]=c|d;Va(a+8|0,e,b)}d=F[a+84>>2];if((d|0)>2){break e}while(1){e=L(d,12)+a|0;b=F[e+52>>2];if((b|0)==F[e+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=F[c>>2];F[e+52>>2]=c;F[a+84>>2]=d;if((b|0)==-1){break e}e=F[a+24>>2];c=(b>>>0)/3|0;j:{if(F[e+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){l=(b>>>0)/3|0;c=(l>>>3&268435452)+e|0;F[c>>2]=F[c>>2]|1<>2]>>2]+(b<<2)>>2]:e;f=F[a+36>>2]+(e>>>3&536870908)|0;d=F[f>>2];c=1<>2]=c|d;h=F[(F[F[a+16>>2]+96>>2]+L(l,12)|0)+((b>>>0)%3<<2)>>2];k=F[F[a+20>>2]+4>>2];c=F[k+4>>2];t:{if((c|0)!=F[k+8>>2]){F[c>>2]=h;F[k+4>>2]=c+4;break t}i=F[k>>2];j=c-i|0;f=j>>2;d=f+1|0;if(d>>>0>=1073741824){break s}c=j>>1;g=f>>>0<536870911?c>>>0>>0?d:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=sa(g<<2)}else{c=0}d=c+(f<<2)|0;F[d>>2]=h;if((j|0)>0){ta(c,i,j)}F[k+8>>2]=c+(g<<2);F[k+4>>2]=d+4;F[k>>2]=c;if(!i){break t}ra(i)}i=F[a+12>>2];c=F[i+4>>2];u:{if((c|0)!=F[i+8>>2]){F[c>>2]=b;F[i+4>>2]=c+4;break u}j=F[i>>2];g=c-j|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break r}c=g>>1;h=f>>>0<536870911?c>>>0>>0?d:c:1073741823;if(h){if(h>>>0>=1073741824){break a}c=sa(h<<2)}else{c=0}d=c+(f<<2)|0;F[d>>2]=b;if((g|0)>0){ta(c,j,g)}F[i+8>>2]=c+(h<<2);F[i+4>>2]=d+4;F[i>>2]=c;if(!j){break u}ra(j)}c=F[a+12>>2];F[F[c+12>>2]+(e<<2)>>2]=F[c+24>>2];F[c+24>>2]=F[c+24>>2]+1}if((b|0)==-1){break k}g=F[a+4>>2];e=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){e=F[F[g+12>>2]+(c<<2)>>2]}v:{w:{if((L(l,3)|0)!=(b|0)){f=b-1|0;break w}f=b+2|0;b=-1;if((f|0)==-1){break v}}b=F[F[g+12>>2]+(f<<2)>>2]}h=(b|0)==-1;f=(b>>>0)/3|0;d=(e>>>0)/3|0;c=(e|0)==-1;if(!c){c=c?-1:d;c=F[F[a+24>>2]+(c>>>3&536870908)>>2]&1<>2]+(c>>>3&536870908)>>2]>>>c&1){break x}f=0;c=F[F[g>>2]+(b<<2)>>2];if(!(F[F[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=F[a+88>>2]+(c<<2)|0;d=F[c>>2];F[c>>2]=d+1;f=(d|0)<=0?2:1}if(F[a+84>>2]>=(f|0)?l:0){break m}k=L(f,12)+a|0;c=F[k+52>>2];y:{if((c|0)!=F[k+56>>2]){F[c>>2]=b;F[k+52>>2]=c+4;break y}i=F[k+48>>2];j=c-i|0;h=j>>2;d=h+1|0;if(d>>>0>=1073741824){break d}c=j>>1;g=h>>>0<536870911?c>>>0>>0?d:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=sa(g<<2)}else{c=0}d=c+(h<<2)|0;F[d>>2]=b;if((j|0)>0){ta(c,i,j)}F[k+48>>2]=c;F[k+52>>2]=d+4;F[k+56>>2]=c+(g<<2);if(!i){break y}ra(i)}if(F[a+84>>2]<=(f|0)){break x}F[a+84>>2]=f}if(l){break k}b=-1;if((e|0)==-1){break n}}b=F[F[F[a+4>>2]>>2]+(e<<2)>>2]}f=0;if(!(F[F[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=F[a+88>>2]+(b<<2)|0;c=F[b>>2];F[b>>2]=c+1;f=(c|0)<=0?2:1}if(F[a+84>>2]<(f|0)){break l}b=e}e=F[a+24>>2];continue}break}i=L(f,12)+a|0;b=F[i+52>>2];z:{if((b|0)!=F[i+56>>2]){F[b>>2]=e;F[i+52>>2]=b+4;break z}j=F[i+48>>2];g=b-j|0;d=g>>2;c=d+1|0;if(c>>>0>=1073741824){break c}b=g>>1;h=d>>>0<536870911?b>>>0>>0?c:b:1073741823;if(h){if(h>>>0>=1073741824){break a}b=sa(h<<2)}else{b=0}c=b+(d<<2)|0;F[c>>2]=e;if((g|0)>0){ta(b,j,g)}F[i+48>>2]=b;F[i+52>>2]=c+4;F[i+56>>2]=b+(h<<2);if(!j){break z}ra(j)}d=F[a+84>>2];if((d|0)<=(f|0)){break j}F[a+84>>2]=f;d=f;break j}d=F[a+84>>2]}if((d|0)<3){continue}break}}return 1}va();V()}va();V()}va();V()}wa(1336);V()}function $c(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=ea-48|0;ea=h;c=F[F[a+4>>2]+44>>2];d=F[a+8>>2];f=F[d>>2];d=F[d+4>>2];F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;d=(d-f>>2>>>0)/3|0;j=F[c+96>>2];f=(F[c+100>>2]-j|0)/12|0;a:{if(d>>>0>f>>>0){Zc(c+96|0,d-f|0,h+32|0);break a}if(d>>>0>=f>>>0){break a}F[c+100>>2]=j+L(d,12)}b:{if(F[a+216>>2]==F[a+220>>2]){k=F[a+4>>2];i=F[k+44>>2];d=F[i+100>>2];if((d|0)!=F[i+96>>2]){c=0;while(1){g=F[a+8>>2];e=L(c,3);c:{d:{if((e|0)==-1){l=F[(F[g>>2]+(e<<2)|0)+4>>2];j=-1;e=1;break d}l=-1;j=F[F[g>>2]+(e<<2)>>2];f=e+1|0;if((f|0)==-1){e=0;break d}l=F[F[g>>2]+(f<<2)>>2];e=e+2|0;f=-1;if((e|0)==-1){break c}}f=F[F[g>>2]+(e<<2)>>2]}g=f;f=c+1|0;e=d;d=F[i+96>>2];e=(e-d|0)/12|0;if(e>>>0<=c>>>0){F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;Zc(i+96|0,f-e|0,h+32|0);k=F[a+4>>2];d=F[i+96>>2]}c=L(c,12)+d|0;F[c+8>>2]=g;F[c+4>>2]=l;F[c>>2]=j;c=f;i=F[k+44>>2];d=F[i+100>>2];if(c>>>0<(d-F[i+96>>2]|0)/12>>>0){continue}break}}F[F[k+4>>2]+80>>2]=b;c=1;break b}F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;k=F[a+8>>2];b=F[k>>2];c=F[k+4>>2];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;e:{f:{g:{h:{i:{j:{k:{b=c-b|0;if(b){if((b|0)<0){break k}n=sa(b);F[h>>2]=n;F[h+8>>2]=(b>>2<<2)+n;u=h,v=ua(n,0,b)+b|0,F[u+4>>2]=v}c=F[k+24>>2];if((F[k+28>>2]-c|0)<=0){d=0;b=0;break f}d=0;f=0;b=0;while(1){j=F[(o<<2)+c>>2];l:{if((j|0)==-1){break l}m:{if(F[F[a+120>>2]+(o>>>3&536870908)>>2]>>>o&1){break m}q=F[a+216>>2];c=F[a+220>>2]-q|0;if(!c){break m}c=(c|0)/144|0;r=c>>>0>1?c:1;l=0;c=(j>>>0)%3|0;g=j+2|0;s=(c|0)!=0|(g|0)!=-1;t=c?j-1|0:g;while(1){i=j<<2;e=q+L(l,144)|0;c=F[i+F[F[e+68>>2]>>2]>>2];n:{if(!(F[F[e+16>>2]+(c>>>3&536870908)>>2]>>>c&1)){break n}c=-1;o:{if(!s){break o}g=F[F[k+12>>2]+(t<<2)>>2];c=-1;if((g|0)==-1){break o}c=g-1|0;if((g>>>0)%3|0){break o}c=g+2|0}if((j|0)==(c|0)){break n}e=F[e+32>>2];g=F[e+i>>2];while(1){m=0;if((c|0)==-1){break e}if(F[e+(c<<2)>>2]!=(g|0)){j=c;break m}p:{q:{if((c>>>0)%3|0){i=c-1|0;break q}i=c+2|0;m=-1;if((i|0)==-1){break p}}c=F[F[k+12>>2]+(i<<2)>>2];m=-1;if((c|0)==-1){break p}m=c-1|0;if((c>>>0)%3|0){break p}m=c+2|0}c=m;if((j|0)!=(c|0)){continue}break}}l=l+1|0;if((r|0)!=(l|0)){continue}break}}c=b-f|0;g=c>>2;F[(j<<2)+n>>2]=g;r:{if(b>>>0

>>0){F[b>>2]=j;b=b+4|0;F[h+20>>2]=b;break r}b=g+1|0;if(b>>>0>=1073741824){break j}d=p-f|0;e=d>>1;b=d>>2>>>0<536870911?b>>>0>e>>>0?b:e:1073741823;if(b){if(b>>>0>=1073741824){break i}d=sa(b<<2)}else{d=0}g=d+(g<<2)|0;F[g>>2]=j;p=(b<<2)+d|0;b=g+4|0;if((c|0)>0){ta(d,f,c)}F[h+24>>2]=p;F[h+20>>2]=b;F[h+16>>2]=d;if(f){ra(f);k=F[a+8>>2]}f=d}if((j|0)==-1){break l}s:{if((j>>>0)%3|0){c=j-1|0;break s}c=j+2|0;if((c|0)==-1){break l}}c=F[F[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=j;if((c|0)==(e|0)){break l}while(1){g=c;t:{u:{i=F[a+216>>2];c=F[a+220>>2]-i|0;if(!c){break u}c=(c|0)/144|0;l=c>>>0>1?c:1;c=0;while(1){q=F[(i+L(c,144)|0)+32>>2];r=g<<2;if(F[q+r>>2]==F[q+(e<<2)>>2]){c=c+1|0;if((l|0)!=(c|0)){continue}break u}break}c=b-d|0;e=c>>2;F[n+r>>2]=e;if(b>>>0

>>0){F[b>>2]=g;b=b+4|0;F[h+20>>2]=b;f=d;break t}b=e+1|0;if(b>>>0>=1073741824){break h}f=p-d|0;i=f>>1;b=f>>2>>>0<536870911?b>>>0>i>>>0?b:i:1073741823;if(b){if(b>>>0>=1073741824){break g}f=sa(b<<2)}else{f=0}e=f+(e<<2)|0;F[e>>2]=g;p=(b<<2)+f|0;b=e+4|0;if((c|0)>0){ta(f,d,c)}F[h+24>>2]=p;F[h+20>>2]=b;F[h+16>>2]=f;if(!d){d=f;break t}ra(d);k=F[a+8>>2];d=f;break t}F[(g<<2)+n>>2]=F[(e<<2)+n>>2]}if((g|0)==-1){break l}v:{if((g>>>0)%3|0){c=g-1|0;break v}c=g+2|0;if((c|0)==-1){break l}}c=F[F[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=g;if((c|0)!=(j|0)){continue}break}}o=o+1|0;c=F[k+24>>2];if((o|0)>2]-c>>2){continue}break}break f}va();V()}va();V()}wa(1336);V()}va();V()}wa(1336);V()}o=F[a+4>>2];i=F[o+44>>2];l=F[i+100>>2];if((l|0)!=F[i+96>>2]){c=0;while(1){f=c+1|0;g=L(c,12);j=g+n|0;e=F[j+8>>2];k=F[j+4>>2];j=F[j>>2];m=c;c=F[i+96>>2];l=(l-c|0)/12|0;if(m>>>0>=l>>>0){F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;Zc(i+96|0,f-l|0,h+32|0);o=F[a+4>>2];c=F[i+96>>2]}c=c+g|0;F[c+8>>2]=e;F[c+4>>2]=k;F[c>>2]=j;c=f;i=F[o+44>>2];l=F[i+100>>2];if(c>>>0<(l-F[i+96>>2]|0)/12>>>0){continue}break}}F[F[o+4>>2]+80>>2]=b-d>>2;m=1}c=m;if(n){ra(n)}if(!d){break b}F[h+20>>2]=d;ra(d)}ea=h+48|0;return c}function Sa(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=D[b|0];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 1:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=0;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=E[b>>1];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=H[b>>1];F[e+4>>2]=0;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 4:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=F[b>>2];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 5:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=0;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 6:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=F[b+4>>2];e=(f<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 7:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=F[b>>2];g=F[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;F[k>>2]=e;F[k+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 8:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;i=J[b>>2];d:{if(M(N(i))=M(1)?~~(i>M(0)?M(P(M(R(M(i*M(2.3283064365386963e-10)))),M(4294967296))):M(S(M(M(i-M(~~i>>>0>>>0))*M(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}F[e>>2]=h;F[e+4>>2]=g;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 9:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;j=K[b>>3];e:{if(N(j)<0x8000000000000000){g=N(j)>=1?~~(j>0?P(R(j*2.3283064365386963e-10),4294967295):S((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}F[e>>2]=h;F[e+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=0;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break a}}ua((e<<3)+d|0,0,c-e<<3)}}function Mb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=ea-96|0;ea=f;e=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=e;m=F[a+20>>2];d=F[m>>2];a:{b:{e=F[F[e+28>>2]+(b<<2)>>2];if(e>>>0>2]-d>>2>>>0){d=F[F[a+8>>2]+(F[d+(e<<2)>>2]<<2)>>2];e=F[a+4>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}F[f+72>>2]=0;F[f+76>>2]=0;m=f- -64|0;F[m>>2]=0;F[m+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Sa(e,d,D[e+24|0],f+56|0);e=b+1|0;d=(e>>>0)%3|0;if(b>>>0<=e>>>0){m=d?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;while(1){d=m;e=h;c:{if(!F[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}k=F[a+20>>2];b=F[k>>2];d=F[F[F[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=F[k+4>>2]-b>>2>>>0){break b}d=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){d=F[F[b+68>>2]+(d<<2)>>2]}F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;Sa(b,d,D[b+24|0],f+32|0);d=F[a+20>>2];b=F[d>>2];e=F[F[F[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=F[d+4>>2]-b>>2>>>0){break a}d=F[F[a+8>>2]+(F[b+(e<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){d=F[F[b+68>>2]+(d<<2)>>2]}F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;Sa(b,d,D[b+24|0],f+8|0);e=F[f+8>>2];b=F[f+56>>2];d=e-b|0;k=F[f+60>>2];n=F[f+12>>2]-(k+(b>>>0>e>>>0)|0)|0;i=F[f+40>>2];e=F[f+64>>2];s=i-e|0;t=F[f+68>>2];i=F[f+44>>2]-(t+(e>>>0>i>>>0)|0)|0;u=Fj(d,n,s,i);v=j-u|0;g=g-(fa+(j>>>0>>0)|0)|0;w=v;j=F[f+16>>2];u=j-e|0;t=F[f+20>>2]-((e>>>0>j>>>0)+t|0)|0;j=F[f+32>>2];v=j-b|0;k=F[f+36>>2]-((b>>>0>j>>>0)+k|0)|0;e=Fj(u,t,v,k);j=w+e|0;b=fa+g|0;b=e>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=F[f+48>>2];e=F[f+72>>2];n=b-e|0;o=F[f+76>>2];x=F[f+52>>2]-(o+(b>>>0>>0)|0)|0;p=Fj(d,p,n,x);d=w+p|0;b=fa+l|0;b=d>>>0

>>0?b+1|0:b;l=F[f+24>>2];p=l-e|0;e=F[f+28>>2]-((e>>>0>l>>>0)+o|0)|0;l=Fj(p,e,v,k);o=d-l|0;l=b-(fa+(d>>>0>>0)|0)|0;b=Fj(u,t,n,x);d=q-b|0;b=r-(fa+(b>>>0>q>>>0)|0)|0;r=Fj(p,e,s,i);q=r+d|0;b=fa+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=F[f+88>>2];e=F[f+80>>2];d:{if(G[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}F[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;F[f+88>>2]=b;if((b|0)!=-1){break e}}b=F[f+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}D[f+92|0]=0;F[f+88>>2]=d;break d}if((b|0)!=F[f+84>>2]){break d}F[f+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}F[f+88>>2]=d}b=F[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;d=b+q|0;e=b;b=b+r|0;k=d^e;h=e^(d>>>0>>0?b+1|0:b);n=-1;d=2147483647;b=l>>31;i=b;e=b+o|0;b=b+l|0;b=e>>>0>>0?b+1|0:b;e=e^i;b=b^i;i=b;s=e^-1;b=b^2147483647;m=g;m:{n:{if(!F[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break m}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=a;a=b;b=g>>31;d=b+j|0;h=g;g=b;b=h+b|0;b=d>>>0>>0?b+1|0:b;h=d^g;d=h+e|0;g=b^g;b=d;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break o}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(e|0)&(g^-1)>>>0>>0|e>>>0>h>>>0){break o}b=b+e|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;d=b;if(!b&a>>>0<536870913){break m}}b=d>>>29|0;a=(d&536870911)<<3|n>>>29}j=Gj(j,m,a,b);o=Gj(o,l,a,b);q=Gj(q,r,a,b)}F[c+8>>2]=j;F[c+4>>2]=o;F[c>>2]=q;ea=f+96|0;return}Da();V()}Da();V()}Da();V()}function gc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=E[b>>1];if((e|0)<0){break b}E[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e-32768>>>0<4294901760){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>32767){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=F[b>>2];e=F[b+4>>2]-(i>>>0<32768)|0;if((e|0)==-1&i-32768>>>0<4294901760|(e|0)!=-1){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>32767|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=J[b>>2];e:{if(M(N(j))>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=K[b>>3];f:{if(N(k)<2147483648){e=~~k;break f}e=-2147483648}E[i>>1]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<1)+d|0,0,c-e<<1)}return h}return 0}function zj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;F[a+8>>2]=e;d=a+32|0;i=F[d>>2];f=F[a+36>>2]-i>>2;a:{if(f>>>0>>0){Aa(d,e-f|0);i=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}d=e}f=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(f),0,f);p=ua(sa(f),0,f);b:{if((d|0)<=0){break b}while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){F[d+i>>2]=h;break c}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){h=f<<2;d=h+c|0;h=F[b+h>>2]+F[h+i>>2]|0;F[d>>2]=h;d:{if((h|0)>F[a+16>>2]){g=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}g=h+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];u=F[f>>2];f=F[f+4>>2]-u|0;if((f|0)>=5){y=F[a+52>>2];r=F[a+48>>2];f=f>>2;z=(f|0)>2?f:2;A=f>>>0>1?f:1;v=e&-2;w=e&1;B=e&-4;x=e&3;t=e-1|0;C=e<<2;o=1;while(1){e:{f:{g:{h:{if((o|0)!=(A|0)){h=F[(o<<2)+u>>2];s=(e|0)<=0;if(!s){ua(m,0,C)}if((h|0)==-1){j=L(e,o);break f}D=F[r>>2];n=0;f=h;while(1){i:{if(F[(f>>>3&536870908)+D>>2]>>>f&1){break i}g=F[F[F[r+64>>2]+12>>2]+(f<<2)>>2];if((g|0)==-1){break i}j=F[y>>2];i=F[r+28>>2];l=F[j+(F[i+(g<<2)>>2]<<2)>>2];if((l|0)>=(o|0)){break i}k=g+1|0;k=F[j+(F[i+(((k>>>0)%3|0?k:g-2|0)<<2)>>2]<<2)>>2];if((k|0)>=(o|0)){break i}g=F[j+(F[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(o|0)){break i}j:{if(s){break j}i=L(e,g);j=L(e,k);l=L(e,l);g=0;q=0;if(t){while(1){F[(g<<2)+p>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+l<<2)+c>>2];k=g|1;F[(k<<2)+p>>2]=(F[(i+k<<2)+c>>2]+F[(j+k<<2)+c>>2]|0)-F[(k+l<<2)+c>>2];g=g+2|0;q=q+2|0;if((v|0)!=(q|0)){continue}break}}if(w){F[(g<<2)+p>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+l<<2)+c>>2]}if(s){break j}i=0;g=0;j=0;if(t>>>0>2){while(1){l=g<<2;k=l+m|0;F[k>>2]=F[k>>2]+F[l+p>>2];k=l|4;q=k+m|0;F[q>>2]=F[q>>2]+F[k+p>>2];k=l|8;q=k+m|0;F[q>>2]=F[q>>2]+F[k+p>>2];l=l|12;k=l+m|0;F[k>>2]=F[k>>2]+F[l+p>>2];g=g+4|0;j=j+4|0;if((B|0)!=(j|0)){continue}break}}if(!x){break j}while(1){j=g<<2;l=j+m|0;F[l>>2]=F[l>>2]+F[j+p>>2];g=g+1|0;i=i+1|0;if((x|0)!=(i|0)){continue}break}}n=n+1|0}k:{l:{if((f>>>0)%3|0){f=f-1|0;break l}f=f+2|0;g=-1;if((f|0)==-1){break k}}g=-1;if(F[F[r>>2]+(f>>>3&536870908)>>2]>>>f&1){break k}f=F[F[F[r+64>>2]+12>>2]+(f<<2)>>2];g=-1;if((f|0)==-1){break k}g=f-1|0;if((f>>>0)%3|0){break k}g=f+2|0}f=(g|0)==(h|0)?-1:g;if((f|0)!=-1){continue}break}j=L(e,o);if(!n){break f}if(s){break g}g=0;f=0;if(!t){break h}while(1){h=g<<2;i=h+m|0;F[i>>2]=F[i>>2]/(n|0);h=(h|4)+m|0;F[h>>2]=F[h>>2]/(n|0);g=g+2|0;f=f+2|0;if((v|0)!=(f|0)){continue}break}break h}Da();V()}if(!w){break g}f=(g<<2)+m|0;F[f>>2]=F[f>>2]/(n|0)}if((d|0)<=0){break e}i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];m:{if((f|0)>(h|0)){F[d+i>>2]=h;break m}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break m}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=j<<2;g=d+c|0;j=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+j>>2]+F[h+i>>2]|0;F[d>>2]=h;n:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break n}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}if((d|0)<=0){break e}h=(L(o-1|0,e)<<2)+c|0;i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+h>>2];n=F[a+16>>2];o:{if((f|0)>(n|0)){F[d+i>>2]=n;break o}d=d+i|0;n=F[a+12>>2];if((n|0)>(f|0)){F[d>>2]=n;break o}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=j<<2;g=d+c|0;j=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+j>>2]+F[h+i>>2]|0;F[d>>2]=h;p:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break p}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}o=o+1|0;if((z|0)!=(o|0)){continue}break}}ra(p);ra(m);return 1}function fc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b|0];if((e|0)<0){break b}E[(g<<1)+d>>1]=e&255;b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=E[b>>1];if((e|0)<0){break b}E[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>65535){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>65535){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=J[b>>2];e:{if(j=M(0)){e=~~j>>>0;break e}e=0}E[i>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=K[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}E[i>>1]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<1)+d|0,0,c-e<<1)}return h}return 0}function nc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=ea-48|0;ea=e;d=H[6693]|H[6694]<<16;f=H[6691]|H[6692]<<16;E[e+38>>1]=f;E[e+40>>1]=f>>>16;E[e+42>>1]=d;E[e+44>>1]=d>>>16;d=F[3345];F[e+32>>2]=F[3344];F[e+36>>2]=d;d=F[3343];F[e+24>>2]=F[3342];F[e+28>>2]=d;d=F[3341];F[e+16>>2]=F[3340];F[e+20>>2]=d;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+5|0;d=h>>>0<5?d+1|0:d;a:{b:{if(h>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){b=La(e+16|0);if(b>>>0>=4294967280){break a}c:{d:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break d}D[e+11|0]=b;c=e;if(!b){break c}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}d=g+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);D[c|0]=f;D[c+1|0]=f>>>8;D[c+2|0]=f>>>16;D[c+3|0]=f>>>24;D[c+4|0]=G[d+4|0];d=F[b+20>>2];f=F[b+16>>2]+5|0;d=f>>>0<5?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(Ha(c,1404,5)){b=sa(32);D[b+16|0]=G[1640];c=G[1636]|G[1637]<<8|(G[1638]<<16|G[1639]<<24);d=G[1632]|G[1633]<<8|(G[1634]<<16|G[1635]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1628]|G[1629]<<8|(G[1630]<<16|G[1631]<<24);d=G[1624]|G[1625]<<8|(G[1626]<<16|G[1627]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+17|0]=0;F[a>>2]=-1;Ba(a+4|0,b,17);ra(b);break b}g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=La(e+16|0);if(b>>>0>=4294967280){break a}e:{f:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break f}D[e+11|0]=b;c=e;if(!b){break e}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+5|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=La(e+16|0);if(b>>>0>=4294967280){break a}g:{h:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break h}D[e+11|0]=b;c=e;if(!b){break g}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+6|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=La(e+16|0);if(b>>>0>=4294967280){break a}i:{j:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break j}D[e+11|0]=b;c=e;if(!b){break i}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+7|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=mc(e,e+16|0);F[a>>2]=-2;a=a+4|0;if(D[b+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}Ba(a,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break b}ra(F[b>>2]);break b}D[c+8|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=d;i=F[b+16>>2];g=i+1|0;d=g?d:d+1|0;F[b+16>>2]=g;F[b+20>>2]=d;h=F[b+12>>2];d=f;f=i+3|0;d=f>>>0<3?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){b=mc(e,e+16|0);F[a>>2]=-2;a=a+4|0;if(D[b+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}Ba(a,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break b}ra(F[b>>2]);break b}f=c;c=g+F[b>>2]|0;E[f+10>>1]=G[c|0]|G[c+1|0]<<8;d=F[b+20>>2];c=F[b+16>>2]+2|0;d=c>>>0<2?d+1|0:d;F[b+16>>2]=c;F[b+20>>2]=d;F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+4>>2]=0}ea=e+48|0;return}Ma();V()}function Ee(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=ea+-64|0;ea=f;F[f+48>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;e=b;b=H[e+38>>1];a:{b:{if(!b){break b}c:{if(b>>>0<=511){d=F[e+12>>2];b=F[e+20>>2];h=F[e+16>>2];g=h+4|0;b=g>>>0<4?b+1|0:b;if(g>>>0>I[e+8>>2]&(b|0)>=(d|0)|(b|0)>(d|0)){break b}b=h+F[e>>2]|0;j=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[f+12>>2]=j;d=F[e+20>>2];b=F[e+16>>2]+4|0;d=b>>>0<4?d+1|0:d;F[e+16>>2]=b;F[e+20>>2]=d;break c}if(!hb(1,f+12|0,e)){break b}j=F[f+12>>2]}d=F[f>>2];b=F[f+4>>2]-d>>2;d:{if(b>>>0>>0){Aa(f,j-b|0);j=F[f+12>>2];break d}if(b>>>0<=j>>>0){break d}F[f+4>>2]=d+(j<<2)}d=1;if(!j){break a}m=F[e+8>>2];l=F[e+12>>2];p=F[f>>2];h=0;while(1){b=F[e+20>>2];g=F[e+16>>2];d=0;if((l|0)<=(b|0)&m>>>0<=g>>>0|(b|0)>(l|0)){break a}o=F[e>>2];n=G[o+g|0];d=b;b=g+1|0;d=b?d:d+1|0;g=b;F[e+16>>2]=b;F[e+20>>2]=d;b=n>>>2|0;i=0;e:{f:{g:{h:{q=n&3;switch(q|0){case 0:break f;case 3:break h;default:break g}}b=b+h|0;d=0;if(b>>>0>=j>>>0){break a}ua(p+(h<<2)|0,0,(n&252)+4|0);h=b;break e}while(1){if((d|0)>=(l|0)&g>>>0>=m>>>0|(d|0)>(l|0)){break b}j=G[g+o|0];g=g+1|0;d=g?d:d+1|0;F[e+16>>2]=g;F[e+20>>2]=d;b=j<<(i<<3|6)|b;i=i+1|0;if((q|0)!=(i|0)){continue}break}}F[p+(h<<2)>>2]=b}h=h+1|0;j=F[f+12>>2];if(h>>>0>>0){continue}break}l=f+16|0;p=F[f>>2];b=F[f+16>>2];d=F[f+20>>2]-b|0;h=d>>2;i:{if(h>>>0<=1048575){Aa(l,1048576-h|0);break i}if((d|0)==4194304){break i}F[f+20>>2]=b+4194304}b=f+28|0;h=F[b>>2];d=F[f+32>>2]-h>>3;j:{if(d>>>0>>0){sb(b,j-d|0);h=F[b>>2];break j}if(d>>>0>j>>>0){F[f+32>>2]=(j<<3)+h}if(!j){break b}}i=0;d=0;while(1){g=(i<<2)+p|0;n=F[g>>2];m=(i<<3)+h|0;b=d;F[m+4>>2]=b;F[m>>2]=n;g=F[g>>2];d=g+b|0;if(d>>>0>1048576){break b}k:{if(b>>>0>=d>>>0){break k}n=F[l>>2];m=0;o=g&7;if(o){while(1){F[n+(b<<2)>>2]=i;b=b+1|0;m=m+1|0;if((o|0)!=(m|0)){continue}break}}if(g-1>>>0<=6){break k}while(1){g=n+(b<<2)|0;F[g>>2]=i;F[g+28>>2]=i;F[g+24>>2]=i;F[g+20>>2]=i;F[g+16>>2]=i;F[g+12>>2]=i;F[g+8>>2]=i;F[g+4>>2]=i;b=b+8|0;if((d|0)!=(b|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==1048576}d=k}l:{if(!d|(F[f+12>>2]?0:a)){break l}m:{if(H[e+38>>1]<=511){b=F[e+12>>2];i=b;d=F[e+20>>2];k=F[e+16>>2];g=k+8|0;d=g>>>0<8?d+1|0:d;h=F[e+8>>2];if(h>>>0>>0&(b|0)<=(d|0)|(b|0)<(d|0)){break l}k=k+F[e>>2]|0;b=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[e+16>>2]=g;F[e+20>>2]=d;break m}if(!bb(1,f+56|0,e)){break l}g=F[e+16>>2];d=F[e+20>>2];h=F[e+8>>2];i=F[e+12>>2];b=F[f+56>>2];k=F[f+60>>2]}j=h-g|0;h=i-(d+(g>>>0>h>>>0)|0)|0;if((h|0)==(k|0)&b>>>0>j>>>0|h>>>0>>0){break l}d=d+k|0;h=b+g|0;d=h>>>0>>0?d+1|0:d;F[e+16>>2]=h;F[e+20>>2]=d;d=b;if((b|0)<=0){break l}g=g+F[e>>2]|0;F[f+40>>2]=g;b=d-1|0;e=g+b|0;h=G[e|0];n:{if(h>>>0<=63){F[f+44>>2]=b;d=G[e|0]&63;break n}o:{switch((h>>>6|0)-1|0){case 0:if(d>>>0<2){break l}b=d-2|0;F[f+44>>2]=b;e=(d+g|0)-2|0;d=G[e+1|0]<<8&16128|G[e|0];break n;case 1:if(d>>>0<3){break l}b=d-3|0;F[f+44>>2]=b;e=(d+g|0)-3|0;d=G[e+2|0]<<16&4128768|G[e+1|0]<<8|G[e|0];break n;default:break o}}b=d-4|0;F[f+44>>2]=b;e=(d+g|0)-4|0;d=G[e+2|0]<<16|G[e+3|0]<<24&1056964608|G[e+1|0]<<8|G[e|0]}e=d+4194304|0;F[f+48>>2]=e;if(e>>>0>1073741823){break l}if(!a){r=1;break l}d=F[f+28>>2];h=0;k=F[f+16>>2];while(1){p:{if(e>>>0>4194303){break p}while(1){if((b|0)<=0){break p}b=b-1|0;F[f+44>>2]=b;e=G[b+g|0]|e<<8;F[f+48>>2]=e;if(e>>>0<4194304){continue}break}}i=e&1048575;j=F[k+(i<<2)>>2];l=d+(j<<3)|0;e=(L(F[l>>2],e>>>20|0)+i|0)-F[l+4>>2]|0;F[f+48>>2]=e;F[(h<<2)+c>>2]=j;r=1;h=h+1|0;if((h|0)!=(a|0)){continue}break}}a=F[f+28>>2];if(a){F[f+32>>2]=a;ra(a)}a=F[f+16>>2];if(a){F[f+20>>2]=a;ra(a)}a=F[f>>2];if(a){F[f+4>>2]=a;ra(a)}ea=f- -64|0;return r}function jj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;F[a+8>>2]=e;d=a+32|0;i=F[d>>2];f=F[a+36>>2]-i>>2;a:{if(f>>>0>>0){Aa(d,e-f|0);i=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}d=e}f=(e&1073741823)!=(e|0)?-1:e<<2;n=ua(sa(f),0,f);q=ua(sa(f),0,f);b:{if((d|0)<=0){break b}while(1){d=g<<2;f=F[d+n>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){F[d+i>>2]=h;break c}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){h=f<<2;d=h+c|0;h=F[b+h>>2]+F[h+i>>2]|0;F[d>>2]=h;d:{if((h|0)>F[a+16>>2]){g=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}g=h+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];t=F[f>>2];f=F[f+4>>2]-t|0;if((f|0)>=5){z=F[a+52>>2];u=F[a+48>>2];f=f>>2;A=(f|0)>2?f:2;B=f>>>0>1?f:1;v=e&-2;w=e&1;C=e&-4;x=e&3;s=e-1|0;D=e<<2;o=1;while(1){e:{f:{g:{h:{if((o|0)!=(B|0)){h=F[(o<<2)+t>>2];r=(e|0)<=0;if(!r){ua(n,0,D)}if((h|0)==-1){h=L(e,o);break f}y=F[u+12>>2];l=0;f=h;while(1){g=F[(f<<2)+y>>2];i:{if((g|0)==-1){break i}j=F[z>>2];i=F[u>>2];p=F[j+(F[i+(g<<2)>>2]<<2)>>2];k=g+1|0;k=(k>>>0)%3|0?k:g-2|0;if((k|0)!=-1){k=F[i+(k<<2)>>2]}else{k=-1}j:{k:{if((g>>>0)%3|0){g=g-1|0;break k}g=g+2|0;m=-1;if((g|0)==-1){break j}}m=F[i+(g<<2)>>2]}if((o|0)<=(p|0)){break i}g=F[(k<<2)+j>>2];if((g|0)>=(o|0)){break i}i=F[j+(m<<2)>>2];if((i|0)>=(o|0)){break i}l:{if(r){break l}i=L(e,i);j=L(e,g);p=L(e,p);g=0;m=0;if(s){while(1){F[(g<<2)+q>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+p<<2)+c>>2];k=g|1;F[(k<<2)+q>>2]=(F[(i+k<<2)+c>>2]+F[(j+k<<2)+c>>2]|0)-F[(k+p<<2)+c>>2];g=g+2|0;m=m+2|0;if((v|0)!=(m|0)){continue}break}}if(w){F[(g<<2)+q>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+p<<2)+c>>2]}if(r){break l}p=0;g=0;i=0;if(s>>>0>2){while(1){j=g<<2;k=j+n|0;F[k>>2]=F[k>>2]+F[j+q>>2];k=j|4;m=k+n|0;F[m>>2]=F[m>>2]+F[k+q>>2];k=j|8;m=k+n|0;F[m>>2]=F[m>>2]+F[k+q>>2];j=j|12;k=j+n|0;F[k>>2]=F[k>>2]+F[j+q>>2];g=g+4|0;i=i+4|0;if((C|0)!=(i|0)){continue}break}}if(!x){break l}while(1){i=g<<2;j=i+n|0;F[j>>2]=F[j>>2]+F[i+q>>2];g=g+1|0;p=p+1|0;if((x|0)!=(p|0)){continue}break}}l=l+1|0}m:{n:{if((f>>>0)%3|0){f=f-1|0;break n}f=f+2|0;g=-1;if((f|0)==-1){break m}}f=F[(f<<2)+y>>2];g=-1;if((f|0)==-1){break m}g=f-1|0;if((f>>>0)%3|0){break m}g=f+2|0}f=(g|0)==(h|0)?-1:g;if((f|0)!=-1){continue}break}h=L(e,o);if(!l){break f}if(r){break g}g=0;f=0;if(!s){break h}while(1){i=g<<2;j=i+n|0;F[j>>2]=F[j>>2]/(l|0);i=(i|4)+n|0;F[i>>2]=F[i>>2]/(l|0);g=g+2|0;f=f+2|0;if((v|0)!=(f|0)){continue}break}break h}Da();V()}if(!w){break g}f=(g<<2)+n|0;F[f>>2]=F[f>>2]/(l|0)}if((d|0)<=0){break e}i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+n>>2];l=F[a+16>>2];o:{if((f|0)>(l|0)){F[d+i>>2]=l;break o}d=d+i|0;l=F[a+12>>2];if((l|0)>(f|0)){F[d>>2]=l;break o}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=h<<2;g=d+c|0;l=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+l>>2]+F[h+i>>2]|0;F[d>>2]=h;p:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break p}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}if((d|0)<=0){break e}l=(L(o-1|0,e)<<2)+c|0;i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+l>>2];j=F[a+16>>2];q:{if((f|0)>(j|0)){F[d+i>>2]=j;break q}d=d+i|0;j=F[a+12>>2];if((j|0)>(f|0)){F[d>>2]=j;break q}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=h<<2;g=d+c|0;l=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+l>>2]+F[h+i>>2]|0;F[d>>2]=h;r:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break r}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}o=o+1|0;if((A|0)!=(o|0)){continue}break}}ra(q);ra(n);return 1}function ec(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=E[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if((e|0)<0){break b}F[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if((F[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>2147483647|e){break a}F[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=J[b>>2];e:{if(M(N(j))>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=K[b>>3];f:{if(N(k)<2147483648){e=~~k;break f}e=-2147483648}F[i>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<2)+d|0,0,c-e<<2)}return h}return 0}function dc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=E[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(F[b+4>>2]){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(F[b+4>>2]){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=J[b>>2];e:{if(j=M(0)){e=~~j>>>0;break e}e=0}F[i>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=K[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}F[i>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Fj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<2)+d|0,0,c-e<<2)}return h}return 0}function Si(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=ea-32|0;ea=e;a:{b:{switch(c-2|0){case 0:c=F[a+4>>2];f=F[a+12>>2];F[e+24>>2]=-1;F[e+16>>2]=-1;F[e+20>>2]=1065353216;F[e+8>>2]=-1;F[e+12>>2]=-1;if((b|0)==-2){break a}j=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[c>>2]+8>>2]](c)|0)==1){i=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];c:{if((ga[F[F[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break c}h=ga[F[F[c>>2]+36>>2]](c)|0;a=ga[F[F[c>>2]+44>>2]](c,f)|0;if(!h|!a){break c}g=a+12|0;f=ga[F[F[c>>2]+40>>2]](c,f)|0;c=F[c+44>>2];if(f){if((b|0)!=6){break c}d=sa(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=f;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=f;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=7172;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=7696;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0;break c}if((b|0)!=6){break c}d=sa(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=h;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=h;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=8108;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=8500;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0}if(d){break a}}d=sa(28);F[d+4>>2]=j;a=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=a;a=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=a;F[d+24>>2]=F[e+24>>2];F[d>>2]=8888;break a;case 1:break b;default:break a}}c=F[a+4>>2];f=F[a+12>>2];F[e+24>>2]=-1;F[e+16>>2]=-1;F[e+20>>2]=1065353216;F[e+8>>2]=-1;F[e+12>>2]=-1;if((b|0)==-2){break a}j=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[c>>2]+8>>2]](c)|0)==1){i=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];d:{if((ga[F[F[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break d}h=ga[F[F[c>>2]+36>>2]](c)|0;a=ga[F[F[c>>2]+44>>2]](c,f)|0;if(!h|!a){break d}g=a+12|0;f=ga[F[F[c>>2]+40>>2]](c,f)|0;c=F[c+44>>2];if(f){if((b|0)!=6){break d}d=sa(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=f;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=f;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=9056;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=9620;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0;break d}if((b|0)!=6){break d}d=sa(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=h;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=h;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=10060;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=10480;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0}if(d){break a}}d=sa(28);F[d+4>>2]=j;a=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=a;a=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=a;F[d+24>>2]=F[e+24>>2];F[d>>2]=10892}ea=e+32|0;return d|0}function tj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=M(0),j=M(0),k=0,l=0,m=0,n=M(0),o=M(0),p=M(0),q=M(0),r=M(0),s=M(0),t=0,u=M(0),v=M(0),w=M(0),x=M(0),y=M(0),z=M(0),A=0,B=M(0),C=M(0);F[a+64>>2]=f;F[a+72>>2]=e;f=sa((e&1073741823)!=(e|0)?-1:e<<2);d=F[a+68>>2];F[a+68>>2]=f;if(d){ra(d)}F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{if(d>>>0>>0){Aa(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}b:{d=F[a+56>>2];g=F[d+4>>2];f=F[d>>2];d=g-f|0;if((d|0)<=0){break b}if((f|0)!=(g|0)){d=d>>>2|0;A=d>>>0>1?d:1;while(1){h=F[(m<<2)+f>>2];j=M(0);g=ea-48|0;ea=g;f=-1;d=-1;c:{if((h|0)==-1){break c}d=h+1|0;f=(d>>>0)%3|0?d:h-2|0;d=h-1|0;if((h>>>0)%3|0){break c}d=h+2|0}k=F[a+52>>2];h=F[k>>2];d:{e:{k=F[k+4>>2]-h>>2;l=f<<2;f=F[F[a+48>>2]+28>>2];l=F[l+f>>2];if(k>>>0<=l>>>0){break e}f=F[f+(d<<2)>>2];if(f>>>0>=k>>>0){break e}k=F[h+(f<<2)>>2];d=F[h+(l<<2)>>2];f:{if(!((k|0)>=(m|0)|(d|0)>=(m|0))){f=F[a+72>>2];h=(L(f,k)<<2)+c|0;n=M(F[h+4>>2]);f=(L(d,f)<<2)+c|0;q=M(F[f+4>>2]);u=M(F[h>>2]);x=M(F[f>>2]);if(!(u!=x|n!=q)){d=F[a+68>>2];if(M(N(n))>2]=f;if(M(N(u))>2]=~~u;break f}F[d>>2]=-2147483648;break f}f=F[F[a+64>>2]+(m<<2)>>2];F[g+40>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;h=F[a+60>>2];if(!G[h+84|0]){f=F[F[h+68>>2]+(f<<2)>>2]}Wa(h,f,D[h+24|0],g+32|0);f=F[F[a+64>>2]+(d<<2)>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Wa(d,f,D[d+24|0],g+16|0);f=F[F[a+64>>2]+(k<<2)>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Wa(d,f,D[d+24|0],g);r=J[g+24>>2];i=M(J[g+8>>2]-r);s=J[g+20>>2];v=M(J[g+4>>2]-s);z=J[g+16>>2];w=M(J[g>>2]-z);y=M(M(i*i)+M(M(v*v)+M(M(w*w)+M(0))));o=J[g+40>>2];B=J[g+36>>2];C=J[g+32>>2];g:{if(F[a+88>>2]>=258){p=M(0);if(!(y>M(0))){break g}}o=M(o-r);r=M(B-s);s=M(C-z);j=M(M(M(i*o)+M(M(v*r)+M(M(w*s)+M(0))))/y);i=M(o-M(i*j));o=M(i*i);i=M(r-M(v*j));p=M(i*i);i=M(s-M(w*j));p=M(U(M(M(o+M(p+M(M(i*i)+M(0))))/y)))}o=p;d=F[a+80>>2]-1|0;f=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;i=M(n-q);p=M(M(i*j)+q);q=M(u-x);n=M(q*o);d=f>>>d&1;n=M(p+(d?n:M(-n)));p=M(M(q*j)+x);j=M(i*o);j=M(p+(d?M(-j):j));h:{if(j!=j){f=F[a+68>>2];F[f>>2]=-2147483648;break h}f=F[a+68>>2];t=R(+j+.5);i:{if(N(t)<2147483648){d=~~t;break i}d=-2147483648}F[f>>2]=d}t=R(+n+.5);j:{if(N(t)<2147483648){d=~~t;break j}d=-2147483648}F[f+4>>2]=n!=n?-2147483648:d;break f}k:{if((d|0)<(m|0)){f=F[a+72>>2];d=L(d,f);break k}f=0;if((m|0)<=0){if(F[a+72>>2]<=0){break f}d=F[a+68>>2];while(1){F[d+(f<<2)>>2]=0;f=f+1|0;if((f|0)>2]){continue}break}break f}f=F[a+72>>2];d=L(f,m-1|0)}if((f|0)<=0){break f}h=F[a+68>>2];f=0;while(1){F[h+(f<<2)>>2]=F[(d+f<<2)+c>>2];f=f+1|0;if((f|0)>2]){continue}break}}ea=g+48|0;break d}Da();V()}l:{if(F[a+8>>2]<=0){break l}h=F[a+32>>2];k=F[a+68>>2];f=0;while(1){d=f<<2;g=F[d+k>>2];l=F[a+16>>2];m:{if((g|0)>(l|0)){F[d+h>>2]=l;break m}d=d+h|0;l=F[a+12>>2];if((l|0)>(g|0)){F[d>>2]=l;break m}F[d>>2]=g}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break l}f=L(e,m)<<2;k=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+k|0;g=F[g+l>>2]+F[g+h>>2]|0;F[f>>2]=g;n:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break n}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}m=m+1|0;if((A|0)==(m|0)){break b}d=F[a+56>>2];f=F[d>>2];if(F[d+4>>2]-f>>2>>>0>m>>>0){continue}break}}Da();V()}return 1}function dj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=M(0),j=0,k=M(0),l=0,m=M(0),n=M(0),o=M(0),p=0,q=M(0),r=M(0),s=M(0),t=0,u=M(0),v=M(0),w=M(0),x=M(0),y=M(0),z=M(0),A=0,B=M(0),C=M(0);F[a+64>>2]=f;F[a+72>>2]=e;f=sa((e&1073741823)!=(e|0)?-1:e<<2);d=F[a+68>>2];F[a+68>>2]=f;if(d){ra(d)}F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{if(d>>>0>>0){Aa(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}b:{d=F[a+56>>2];g=F[d+4>>2];f=F[d>>2];d=g-f|0;if((d|0)<=0){break b}if((f|0)!=(g|0)){d=d>>>2|0;A=d>>>0>1?d:1;while(1){k=M(0);g=ea-48|0;ea=g;h=-1;c:{d:{d=F[(l<<2)+f>>2];if((d|0)==-1){break d}j=F[a+48>>2];f=d+1|0;f=(f>>>0)%3|0?f:d-2|0;if((f|0)!=-1){h=F[F[j>>2]+(f<<2)>>2]}f=-1;d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)!=-1){f=F[F[j>>2]+(d<<2)>>2]}d=F[a+52>>2];j=F[d>>2];d=F[d+4>>2]-j>>2;if(d>>>0<=h>>>0|d>>>0<=f>>>0){break d}d=F[j+(h<<2)>>2];j=F[j+(f<<2)>>2];e:{if(!((j|0)>=(l|0)|(d|0)>=(l|0))){f=F[a+72>>2];h=(L(f,j)<<2)+c|0;m=M(F[h+4>>2]);f=(L(d,f)<<2)+c|0;q=M(F[f+4>>2]);u=M(F[h>>2]);x=M(F[f>>2]);if(!(u!=x|m!=q)){d=F[a+68>>2];if(M(N(m))>2]=f;if(M(N(u))>2]=~~u;break e}F[d>>2]=-2147483648;break e}f=F[F[a+64>>2]+(l<<2)>>2];F[g+40>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;h=F[a+60>>2];if(!G[h+84|0]){f=F[F[h+68>>2]+(f<<2)>>2]}Wa(h,f,D[h+24|0],g+32|0);f=F[F[a+64>>2]+(d<<2)>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Wa(d,f,D[d+24|0],g+16|0);f=F[F[a+64>>2]+(j<<2)>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Wa(d,f,D[d+24|0],g);r=J[g+24>>2];i=M(J[g+8>>2]-r);s=J[g+20>>2];v=M(J[g+4>>2]-s);z=J[g+16>>2];w=M(J[g>>2]-z);y=M(M(i*i)+M(M(v*v)+M(M(w*w)+M(0))));n=J[g+40>>2];B=J[g+36>>2];C=J[g+32>>2];f:{if(F[a+88>>2]>=258){o=M(0);if(!(y>M(0))){break f}}n=M(n-r);r=M(B-s);s=M(C-z);k=M(M(M(i*n)+M(M(v*r)+M(M(w*s)+M(0))))/y);i=M(n-M(i*k));n=M(i*i);i=M(r-M(v*k));o=M(i*i);i=M(s-M(w*k));o=M(U(M(M(n+M(o+M(M(i*i)+M(0))))/y)))}n=o;d=F[a+80>>2]-1|0;f=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;i=M(m-q);o=M(M(i*k)+q);q=M(u-x);m=M(q*n);d=f>>>d&1;m=M(o+(d?m:M(-m)));o=M(M(q*k)+x);k=M(i*n);k=M(o+(d?M(-k):k));g:{if(k!=k){f=F[a+68>>2];F[f>>2]=-2147483648;break g}f=F[a+68>>2];t=R(+k+.5);h:{if(N(t)<2147483648){d=~~t;break h}d=-2147483648}F[f>>2]=d}t=R(+m+.5);i:{if(N(t)<2147483648){d=~~t;break i}d=-2147483648}F[f+4>>2]=m!=m?-2147483648:d;break e}j:{if((d|0)<(l|0)){f=F[a+72>>2];d=L(d,f);break j}f=0;if((l|0)<=0){if(F[a+72>>2]<=0){break e}d=F[a+68>>2];while(1){F[d+(f<<2)>>2]=0;f=f+1|0;if((f|0)>2]){continue}break}break e}f=F[a+72>>2];d=L(f,l-1|0)}if((f|0)<=0){break e}h=F[a+68>>2];f=0;while(1){F[h+(f<<2)>>2]=F[(d+f<<2)+c>>2];f=f+1|0;if((f|0)>2]){continue}break}}ea=g+48|0;break c}Da();V()}k:{if(F[a+8>>2]<=0){break k}h=F[a+32>>2];j=F[a+68>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];p=F[a+16>>2];l:{if((g|0)>(p|0)){F[d+h>>2]=p;break l}d=d+h|0;p=F[a+12>>2];if((p|0)>(g|0)){F[d>>2]=p;break l}F[d>>2]=g}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=L(e,l)<<2;j=f+c|0;p=b+f|0;while(1){g=d<<2;f=g+j|0;g=F[g+p>>2]+F[g+h>>2]|0;F[f>>2]=g;m:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break m}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}l=l+1|0;if((A|0)==(l|0)){break b}d=F[a+56>>2];f=F[d>>2];if(F[d+4>>2]-f>>2>>>0>l>>>0){continue}break}}Da();V()}return 1}function Pi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=M(0),f=0,g=0,h=0,i=0,j=0,k=M(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;if(F[c>>2]==F[c+4>>2]){g=F[d+80>>2];v=ea-16|0;ea=v;j=F[a+4>>2];h=F[d+48>>2];d=F[F[d>>2]>>2];i=D[b+24|0];c=v+8|0;F[c>>2]=1065353216;u=c;J[c>>2]=M(-1<>2];w=sa((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!g|(i|0)<=0){break a}s=d+h|0;y=F[b>>2];c=F[b+48>>2];z=F[b+44>>2];x=F[b+40>>2];if(!G[b+84|0]){n=F[b+68>>2];t=i&-2;j=i&1;b=0;while(1){f=F[y>>2];d=Fj(x,z,F[n+(o<<2)>>2],0)+c|0;p=ta(w,f+d|0,x);k=J[u>>2];l=F[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){f=s+(b<<2)|0;q=d<<2;e=M(R(M(M(k*M(J[q+p>>2]-J[l+q>>2]))+M(.5))));b:{if(M(N(e))>2]=h;h=q|4;e=M(R(M(M(k*M(J[h+p>>2]-J[l+h>>2]))+M(.5))));c:{if(M(N(e))>2]=h;d=d+2|0;b=b+2|0;m=m+2|0;if((t|0)!=(m|0)){continue}break}}if(j){f=s+(b<<2)|0;d=d<<2;e=M(R(M(M(k*M(J[d+p>>2]-J[d+l>>2]))+M(.5))));d:{if(M(N(e))>2]=d;b=b+1|0}o=o+1|0;if((g|0)!=(o|0)){continue}break}break a}n=i&-2;t=i&1;b=0;while(1){h=F[y>>2];d=Fj(x,z,o,f)+c|0;p=ta(w,h+d|0,x);k=J[u>>2];l=F[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){h=s+(b<<2)|0;q=d<<2;e=M(R(M(M(k*M(J[q+p>>2]-J[l+q>>2]))+M(.5))));e:{if(M(N(e))>2]=j;j=q|4;e=M(R(M(M(k*M(J[j+p>>2]-J[l+j>>2]))+M(.5))));f:{if(M(N(e))>2]=j;d=d+2|0;b=b+2|0;m=m+2|0;if((n|0)!=(m|0)){continue}break}}if(t){h=s+(b<<2)|0;d=d<<2;e=M(R(M(M(k*M(J[d+p>>2]-J[d+l>>2]))+M(.5))));g:{if(M(N(e))>2]=d;b=b+1|0}d=o+1|0;f=d?f:f+1|0;o=d;if((g|0)!=(d|0)|f){continue}break}}ra(w);ea=v+16|0;return 1}v=ea-16|0;ea=v;u=F[a+4>>2];g=F[d+48>>2];f=F[F[d>>2]>>2];r=D[b+24|0];d=v+8|0;F[d>>2]=1065353216;h=d;J[d>>2]=M(-1<>2];w=sa((r|0)!=(r&1073741823)?-1:r<<2);y=F[c>>2];c=F[c+4>>2]-y|0;h:{if(!c|(r|0)<=0){break h}s=f+g|0;z=F[b>>2];d=F[b+48>>2];x=F[b+44>>2];o=F[b+40>>2];c=c>>2;q=c>>>0>1?c:1;if(G[b+84|0]){j=r&-2;u=r&1;b=0;while(1){f=F[z>>2];c=Fj(o,x,F[y+(m<<2)>>2],0)+d|0;l=ta(w,f+c|0,o);k=J[h>>2];n=F[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;t=c<<2;e=M(R(M(M(k*M(J[t+l>>2]-J[n+t>>2]))+M(.5))));i:{if(M(N(e))>2]=g;g=t|4;e=M(R(M(M(k*M(J[g+l>>2]-J[n+g>>2]))+M(.5))));j:{if(M(N(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=M(R(M(M(k*M(J[c+l>>2]-J[c+n>>2]))+M(.5))));k:{if(M(N(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}break h}t=F[b+68>>2];j=r&-2;u=r&1;b=0;while(1){f=F[z>>2];c=Fj(o,x,F[t+(F[y+(m<<2)>>2]<<2)>>2],0)+d|0;p=ta(w,f+c|0,o);k=J[h>>2];l=F[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;n=c<<2;e=M(R(M(M(k*M(J[n+p>>2]-J[l+n>>2]))+M(.5))));l:{if(M(N(e))>2]=g;g=n|4;e=M(R(M(M(k*M(J[g+p>>2]-J[l+g>>2]))+M(.5))));m:{if(M(N(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=M(R(M(M(k*M(J[c+p>>2]-J[c+l>>2]))+M(.5))));n:{if(M(N(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}}ra(w);ea=v+16|0;return 1}function Jf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=ea-704|0;ea=f;n=1;a:{b:{c:{d:{if(H[b+38>>1]<515){break d}n=0;c=F[b+20>>2];e=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(e|0)&d>>>0>=I[b+8>>2]|(c|0)>(e|0)){break d}p=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;o=F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+80>>2];c=ga[F[F[a>>2]+24>>2]](a)|0;F[f+696>>2]=0;F[f+688>>2]=0;F[f+692>>2]=0;if(c){if(c>>>0>=214748365){break c}c=L(c,20);j=sa(c);F[f+688>>2]=j;F[f+696>>2]=c+j;c=L((c-20>>>0)/20|0,20)+20|0;r=f,s=ua(j,0,c)+c|0,F[r+692>>2]=s}e:{if((ga[F[F[a>>2]+24>>2]](a)|0)>0){while(1){c=ga[F[F[a>>2]+20>>2]](a,m)|0;e=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];pb(e,o);D[e+84|0]=1;F[e+72>>2]=F[e+68>>2];c=F[e+28>>2];if(c>>>0>9){break e}f:{g:{h:{d=1<>2],g,6,0,c,c>>31);e=sa(96);c=kc(e,d);F[f+656>>2]=e;D[c+84|0]=1;F[c+72>>2]=F[c+68>>2];pb(c,o);c=F[a+64>>2];if(c>>>0>=I[a+68>>2]){break h}d=F[f+656>>2];F[f+656>>2]=0;F[c>>2]=d;d=c+4|0;F[a+64>>2]=d;break g}d=0;if(D[e+24|0]<=0){break f}while(1){c=F[a+52>>2];g=F[a+56>>2];i:{if(c>>>0>>0){F[c>>2]=0;F[a+52>>2]=c+4;break i}h=F[a+48>>2];l=c-h|0;k=l>>2;c=k+1|0;if(c>>>0>=1073741824){break b}q=k<<2;g=g-h|0;k=g>>1;g=g>>2>>>0<536870911?c>>>0>k>>>0?c:k:1073741823;if(g){if(g>>>0>=1073741824){break a}c=sa(g<<2)}else{c=0}k=q+c|0;F[k>>2]=0;if((l|0)>0){ta(c,h,l)}F[a+56>>2]=c+(g<<2);F[a+52>>2]=k+4;F[a+48>>2]=c;if(!h){break i}ra(h)}d=d+1|0;if((d|0)>2];h=F[a+64>>2]-e>>2;c=h+1|0;if(c>>>0<1073741824){e=F[a+68>>2]-e|0;g=e>>1;e=e>>2>>>0<536870911?c>>>0>g>>>0?c:g:1073741823;if(e){if(e>>>0>=1073741824){break l}d=sa(e<<2)}g=F[f+656>>2];F[f+656>>2]=0;c=(h<<2)+d|0;F[c>>2]=g;h=(e<<2)+d|0;g=c+4|0;d=F[a+64>>2];e=F[a+60>>2];if((d|0)==(e|0)){break k}while(1){d=d-4|0;l=F[d>>2];F[d>>2]=0;c=c-4|0;F[c>>2]=l;if((d|0)!=(e|0)){continue}break}F[a+68>>2]=h;d=F[a+64>>2];F[a+64>>2]=g;e=F[a+60>>2];F[a+60>>2]=c;if((d|0)==(e|0)){break j}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){Ja(c)}if((d|0)!=(e|0)){continue}break}break j}va();V()}wa(1336);V()}F[a+68>>2]=h;F[a+64>>2]=g;F[a+60>>2]=c}if(e){ra(e)}d=F[a+64>>2]}e=F[d-4>>2];c=F[f+656>>2];F[f+656>>2]=0;if(!c){break f}Ja(c)}h=F[e+28>>2];c=h-1|0;if(c>>>0<=10){d=F[(c<<2)+13616>>2]}else{d=-1}c=L(m,20)+j|0;g=D[e+24|0];F[c+16>>2]=g;F[c+8>>2]=h;F[c+4>>2]=i;F[c>>2]=e;F[c+12>>2]=(d|0)>0?d:0;i=g+i|0;m=m+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(m|0)){continue}break}}a=Ac(f+656|0,f+688|0);m:{n:{o:{switch(p|0){case 0:c=yb(f,i);b=Bd(c,b,a);zb(c);if(b){break n}break m;case 1:c=yb(f,i);b=zd(c,b,a);zb(c);if(b){break n}break m;case 2:c=wb(f,i);b=yd(c,b,a);xb(c);if(b){break n}break m;case 3:c=wb(f,i);b=xd(c,b,a);xb(c);if(b){break n}break m;case 4:c=_a(f,i);b=wd(c,b,a);$a(c);if(b){break n}break m;case 5:c=_a(f,i);b=vd(c,b,a);$a(c);if(b){break n}break m;case 6:break o;default:break m}}c=_a(f,i);b=ud(c,b,a);$a(c);if(!b){break m}}n=1}b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}j=F[f+688>>2]}if(!j){break d}F[f+692>>2]=j;ra(j)}ea=f+704|0;return n|0}va();V()}va();V()}wa(1336);V()}function Je(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ea-80|0;ea=f;e=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=e;g=F[c+28>>2];e=f- -64|0;F[e>>2]=F[c+24>>2];F[e+4>>2]=g;e=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=e;e=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=e;e=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=e;nc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<0){ra(F[j>>2])}if(G[f+31|0]){b=sa(32);c=G[1665]|G[1666]<<8|(G[1667]<<16|G[1668]<<24);D[b+23|0]=c;D[b+24|0]=c>>>8;D[b+25|0]=c>>>16;D[b+26|0]=c>>>24;c=G[1662]|G[1663]<<8|(G[1664]<<16|G[1665]<<24);d=G[1658]|G[1659]<<8|(G[1660]<<16|G[1661]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1654]|G[1655]<<8|(G[1656]<<16|G[1657]<<24);d=G[1650]|G[1651]<<8|(G[1652]<<16|G[1653]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1646]|G[1647]<<8|(G[1648]<<16|G[1649]<<24);d=G[1642]|G[1643]<<8|(G[1644]<<16|G[1645]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+27|0]=0;F[a>>2]=-1;Ba(j,b,27);ra(b);break a}i=ea-16|0;ea=i;b:{c:{switch(D[f+32|0]){case 0:e=sa(44);F[e>>2]=0;F[e+4>>2]=0;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=Tc(e);F[e>>2]=13528;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=g;break b;case 1:e=sa(44);F[e>>2]=0;F[e+4>>2]=0;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=Tc(e);F[e>>2]=13436;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=g;break b;default:break c}}g=sa(32);e=G[1694]|G[1695]<<8|(G[1696]<<16|G[1697]<<24);D[g+24|0]=e;D[g+25|0]=e>>>8;D[g+26|0]=e>>>16;D[g+27|0]=e>>>24;e=G[1690]|G[1691]<<8|(G[1692]<<16|G[1693]<<24);h=G[1686]|G[1687]<<8|(G[1688]<<16|G[1689]<<24);D[g+16|0]=h;D[g+17|0]=h>>>8;D[g+18|0]=h>>>16;D[g+19|0]=h>>>24;D[g+20|0]=e;D[g+21|0]=e>>>8;D[g+22|0]=e>>>16;D[g+23|0]=e>>>24;e=G[1682]|G[1683]<<8|(G[1684]<<16|G[1685]<<24);h=G[1678]|G[1679]<<8|(G[1680]<<16|G[1681]<<24);D[g+8|0]=h;D[g+9|0]=h>>>8;D[g+10|0]=h>>>16;D[g+11|0]=h>>>24;D[g+12|0]=e;D[g+13|0]=e>>>8;D[g+14|0]=e>>>16;D[g+15|0]=e>>>24;e=G[1674]|G[1675]<<8|(G[1676]<<16|G[1677]<<24);h=G[1670]|G[1671]<<8|(G[1672]<<16|G[1673]<<24);D[g|0]=h;D[g+1|0]=h>>>8;D[g+2|0]=h>>>16;D[g+3|0]=h>>>24;D[g+4|0]=e;D[g+5|0]=e>>>8;D[g+6|0]=e>>>16;D[g+7|0]=e>>>24;D[g+28|0]=0;F[i>>2]=-1;e=i|4;Ba(e,g,28);k=D[i+15|0];F[f>>2]=F[i>>2];h=f+4|0;d:{if((k|0)>=0){k=F[e+4>>2];F[h>>2]=F[e>>2];F[h+4>>2]=k;F[h+8>>2]=F[e+8>>2];break d}Ba(h,F[i+4>>2],F[i+8>>2])}F[f+16>>2]=0;if(D[i+15|0]<0){ra(F[i+4>>2])}ra(g)}ea=i+16|0;e=F[f>>2];e:{if(e){F[a>>2]=e;if(D[f+15|0]>=0){a=f|4;b=F[a+4>>2];F[j>>2]=F[a>>2];F[j+4>>2]=b;F[j+8>>2]=F[a+8>>2];break e}Ba(j,F[f+4>>2],F[f+8>>2]);break e}e=F[f+16>>2];F[f+16>>2]=0;re(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<0){ra(F[j>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ga[F[F[e>>2]+4>>2]](e)}a=F[f+16>>2];F[f+16>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>=0){break a}ra(F[f+4>>2])}ea=f+80|0}function ed(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=F[a+4>>2];d=F[a>>2];f=(c-d|0)/144|0;if(f>>>0>>0){d=a;g=b-f|0;c=F[a+8>>2];a=F[a+4>>2];a:{if(g>>>0<=(c-a|0)/144>>>0){if(g){b=L(g,144)+a|0;while(1){F[a>>2]=-1;ae(a+4|0);F[a+104>>2]=0;F[a+108>>2]=0;D[a+100|0]=1;F[a+112>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;F[a+124>>2]=0;F[a+128>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;F[a+140>>2]=0;a=a+144|0;if((b|0)!=(a|0)){continue}break}a=b}F[d+4>>2]=a;break a}b:{c:{d:{b=a;a=F[d>>2];f=(b-a|0)/144|0;h=f+g|0;if(h>>>0<29826162){b=(c-a|0)/144|0;a=b<<1;e=b>>>0<14913080?a>>>0>>0?h:a:29826161;if(e){if(e>>>0>=29826162){break d}c=sa(L(e,144))}else{c=0}b=c+L(f,144)|0;h=b+L(g,144)|0;a=b;while(1){F[a>>2]=-1;ae(a+4|0);F[a+104>>2]=0;F[a+108>>2]=0;D[a+100|0]=1;F[a+112>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;F[a+124>>2]=0;F[a+128>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;F[a+140>>2]=0;a=a+144|0;if((h|0)!=(a|0)){continue}break}f=c+L(e,144)|0;a=F[d+4>>2];e=F[d>>2];if((a|0)==(e|0)){break c}while(1){b=b-144|0;a=a-144|0;F[b>>2]=F[a>>2];F[b+4>>2]=F[a+4>>2];F[b+8>>2]=F[a+8>>2];F[b+12>>2]=F[a+12>>2];F[a+12>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[b+16>>2]=F[a+16>>2];F[b+20>>2]=F[a+20>>2];F[b+24>>2]=F[a+24>>2];F[a+24>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;c=G[a+28|0];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;D[b+28|0]=c;F[b+32>>2]=F[a+32>>2];F[b+36>>2]=F[a+36>>2];F[b+40>>2]=F[a+40>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[b+52>>2]=0;F[b+44>>2]=0;F[b+48>>2]=0;F[b+44>>2]=F[a+44>>2];F[b+48>>2]=F[a+48>>2];F[b+52>>2]=F[a+52>>2];F[a+52>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;c=b- -64|0;F[c>>2]=0;F[b+56>>2]=0;F[b+60>>2]=0;F[b+56>>2]=F[a+56>>2];F[b+60>>2]=F[a+60>>2];g=c;c=a- -64|0;F[g>>2]=F[c>>2];F[c>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[b+68>>2]=F[a+68>>2];c=F[a+72>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+72>>2]=c;F[b+76>>2]=F[a+76>>2];F[b+80>>2]=F[a+80>>2];F[b+84>>2]=F[a+84>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[b+96>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+88>>2]=F[a+88>>2];F[b+92>>2]=F[a+92>>2];F[b+96>>2]=F[a+96>>2];F[a+96>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;c=G[a+100|0];F[b+112>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;D[b+100|0]=c;F[b+104>>2]=F[a+104>>2];F[b+108>>2]=F[a+108>>2];F[b+112>>2]=F[a+112>>2];F[a+112>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;F[b+124>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+116>>2]=F[a+116>>2];F[b+120>>2]=F[a+120>>2];F[b+124>>2]=F[a+124>>2];F[a+124>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;c=F[a+128>>2];F[b+140>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+128>>2]=c;F[b+132>>2]=F[a+132>>2];F[b+136>>2]=F[a+136>>2];F[b+140>>2]=F[a+140>>2];F[a+140>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;if((a|0)!=(e|0)){continue}break}F[d+8>>2]=f;a=F[d+4>>2];F[d+4>>2]=h;e=F[d>>2];F[d>>2]=b;if((a|0)==(e|0)){break b}while(1){b=F[a-12>>2];if(b){F[a-8>>2]=b;ra(b)}b=F[a-28>>2];if(b){F[a-24>>2]=b;ra(b)}b=F[a-40>>2];if(b){F[a-36>>2]=b;ra(b)}Fb(a-140|0);a=a-144|0;if((e|0)!=(a|0)){continue}break}break b}va();V()}wa(1336);V()}F[d+8>>2]=f;F[d+4>>2]=h;F[d>>2]=b}if(e){ra(e)}}return}if(b>>>0>>0){d=d+L(b,144)|0;if((d|0)!=(c|0)){while(1){b=F[c-12>>2];if(b){F[c-8>>2]=b;ra(b)}b=F[c-28>>2];if(b){F[c-24>>2]=b;ra(b)}b=F[c-40>>2];if(b){F[c-36>>2]=b;ra(b)}Fb(c-140|0);c=c-144|0;if((d|0)!=(c|0)){continue}break}}F[a+4>>2]=d}}function Kb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=ea-96|0;ea=e;d=F[a+16>>2];D[e+92|0]=1;F[e+88>>2]=b;F[e+84>>2]=b;F[e+80>>2]=d;a:{if((b|0)==-1){break a}m=F[a+20>>2];f=F[m>>2];d=F[F[d>>2]+(b<<2)>>2];if(d>>>0>=F[m+4>>2]-f>>2>>>0){break a}d=F[F[a+8>>2]+(F[f+(d<<2)>>2]<<2)>>2];f=F[a+4>>2];if(!G[f+84|0]){d=F[F[f+68>>2]+(d<<2)>>2]}F[e+72>>2]=0;F[e+76>>2]=0;m=e- -64|0;F[m>>2]=0;F[m+4>>2]=0;F[e+56>>2]=0;F[e+60>>2]=0;Sa(f,d,D[f+24|0],e+56|0);d=b+1|0;m=(d>>>0)%3|0?d:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){f=m;d=h;d:{if(!F[a+28>>2]){break d}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((f|0)==-1){break b}k=F[a+20>>2];b=F[k>>2];f=F[F[F[a+16>>2]>>2]+(f<<2)>>2];if(f>>>0>=F[k+4>>2]-b>>2>>>0){break b}f=F[F[a+8>>2]+(F[(f<<2)+b>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}F[e+48>>2]=0;F[e+52>>2]=0;F[e+40>>2]=0;F[e+44>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;Sa(b,f,D[b+24|0],e+32|0);if((d|0)==-1){break c}f=F[a+20>>2];b=F[f>>2];d=F[F[F[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=F[f+4>>2]-b>>2>>>0){break c}f=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Sa(b,f,D[b+24|0],e+8|0);d=F[e+8>>2];b=F[e+56>>2];f=d-b|0;k=F[e+60>>2];n=F[e+12>>2]-(k+(b>>>0>d>>>0)|0)|0;i=F[e+40>>2];d=F[e+64>>2];s=i-d|0;t=F[e+68>>2];i=F[e+44>>2]-(t+(d>>>0>i>>>0)|0)|0;u=Fj(f,n,s,i);v=j-u|0;g=g-(fa+(j>>>0>>0)|0)|0;w=v;j=F[e+16>>2];u=j-d|0;t=F[e+20>>2]-((d>>>0>j>>>0)+t|0)|0;j=F[e+32>>2];v=j-b|0;k=F[e+36>>2]-((b>>>0>j>>>0)+k|0)|0;d=Fj(u,t,v,k);j=w+d|0;b=fa+g|0;b=d>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=F[e+48>>2];d=F[e+72>>2];n=b-d|0;o=F[e+76>>2];x=F[e+52>>2]-(o+(b>>>0>>0)|0)|0;p=Fj(f,p,n,x);f=w+p|0;b=fa+l|0;b=f>>>0

>>0?b+1|0:b;l=F[e+24>>2];p=l-d|0;d=F[e+28>>2]-((d>>>0>l>>>0)+o|0)|0;l=Fj(p,d,v,k);o=f-l|0;l=b-(fa+(f>>>0>>0)|0)|0;b=Fj(u,t,n,x);f=q-b|0;b=r-(fa+(b>>>0>q>>>0)|0)|0;r=Fj(p,d,s,i);q=r+f|0;b=fa+b|0;b=q>>>0>>0?b+1|0:b;r=b;tc(e+80|0);b=F[e+88>>2];if((b|0)!=-1){continue}break}b=r>>31;f=b+q|0;d=b;b=b+r|0;k=f^d;h=d^(f>>>0>>0?b+1|0:b);n=-1;f=2147483647;b=l>>31;i=b;d=b+o|0;b=b+l|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^i;i=b;s=d^-1;b=b^2147483647;m=g;e:{f:{if(!F[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break e}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=a;a=b;b=g>>31;f=b+j|0;h=g;g=b;b=h+b|0;b=f>>>0>>0?b+1|0:b;h=f^g;f=h+d|0;g=b^g;b=f;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break e}b=0;a=a>>>29|0;break f}g:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break g}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(d|0)&(g^-1)>>>0>>0|d>>>0>h>>>0){break g}b=b+d|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;f=b;if(!b&a>>>0<536870913){break e}}b=f>>>29|0;a=(f&536870911)<<3|n>>>29}j=Gj(j,m,a,b);o=Gj(o,l,a,b);q=Gj(q,r,a,b)}F[c+8>>2]=j;F[c+4>>2]=o;F[c>>2]=q;ea=e+96|0;return}Da();V()}Da();V()}Da();V()}function Td(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}d=F[a+12>>2];c=F[a+8>>2];if(d-c>>2>>>0<=b>>>0){break a}e=c+(b<<2)|0;f=F[e>>2];i=F[f+60>>2];g=F[f+56>>2];c=e+4|0;b:{if((c|0)!=(d|0)){while(1){h=F[c>>2];F[c>>2]=0;F[e>>2]=h;if(f){Ja(f)}e=e+4|0;c=c+4|0;if((c|0)!=(d|0)){f=F[e>>2];continue}break}d=F[a+12>>2];if((e|0)==(d|0)){break b}}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){Ja(c)}if((d|0)!=(e|0)){continue}break}}F[a+12>>2]=e;f=F[a+4>>2];c:{if(!f|(i|0)<0){break c}d=F[f+24>>2];c=F[f+28>>2];if((d|0)==(c|0)){break c}while(1){if((i|0)==F[F[d>>2]+24>>2]){e=d+4|0;i=F[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=F[e>>2];F[e>>2]=0;c=F[d>>2];F[d>>2]=h;if(c){Pa(c+12|0,F[c+16>>2]);Oa(c,F[c+4>>2]);ra(c)}d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=F[f+28>>2];if((e|0)==(d|0)){break d}}while(1){e=e-4|0;c=F[e>>2];F[e>>2]=0;if(c){Pa(c+12|0,F[c+16>>2]);Oa(c,F[c+4>>2]);ra(c)}if((d|0)!=(e|0)){continue}break}}F[f+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=L(g,12)+a|0;d=F[e+20>>2];c=F[e+24>>2];if((d|0)==(c|0)){break f}while(1){if(F[d>>2]==(b|0)){break f}d=d+4|0;if((c|0)!=(d|0)){continue}break}break e}if((d|0)==(c|0)){break e}f=d+4|0;c=c-f|0;if(c){Ua(d,f,c)}F[e+24>>2]=d+c}e=F[a+20>>2];d=F[a+24>>2]-e|0;g:{if(!d){break g}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break g}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break g}F[d>>2]=c-1}e=F[a+32>>2];d=F[a+36>>2]-e|0;h:{if(!d){break h}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break h}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break h}F[d>>2]=c-1}e=F[a+44>>2];d=F[a+48>>2]-e|0;i:{if(!d){break i}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break i}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break i}F[d>>2]=c-1}e=F[a+56>>2];d=F[a+60>>2]-e|0;j:{if(!d){break j}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break j}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break j}F[d>>2]=c-1}c=F[a+72>>2];a=F[a+68>>2];d=c-a|0;if(!d){break a}c=d>>2;e=c>>>0>1?c:1;f=e&1;d=0;if(c>>>0>=2){e=e&-2;c=0;while(1){i=d<<2;g=i+a|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}i=a+(i|4)|0;g=F[i>>2];if((g|0)>(b|0)){F[i>>2]=g-1}d=d+2|0;c=c+2|0;if((e|0)!=(c|0)){continue}break}}if(!f){break a}c=b;a=a+(d<<2)|0;b=F[a>>2];if((c|0)>=(b|0)){break a}F[a>>2]=b-1}}function ra(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=F[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=F[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=F[d+8>>2];b=b>>>3|0;c=F[d+12>>2];if((c|0)==(e|0)){i=15912,j=F[3978]&Jj(b),F[i>>2]=j;break b}F[e+12>>2]=c;F[c+8>>2]=e;break b}h=F[d+24>>2];b=F[d+12>>2];c:{if((d|0)!=(b|0)){c=F[d+8>>2];F[c+12>>2]=b;F[b+8>>2]=c;break c}d:{e=d+20|0;c=F[e>>2];if(c){break d}e=d+16|0;c=F[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=F[e>>2];if(c){continue}e=b+16|0;c=F[b+16>>2];if(c){continue}break}F[g>>2]=0}if(!h){break b}e=F[d+28>>2];c=(e<<2)+16216|0;e:{if(F[c>>2]==(d|0)){F[c>>2]=b;if(b){break e}i=15916,j=F[3979]&Jj(e),F[i>>2]=j;break b}F[h+(F[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}F[b+24>>2]=h;c=F[d+16>>2];if(c){F[b+16>>2]=c;F[c+24>>2]=b}c=F[d+20>>2];if(!c){break b}F[b+20>>2]=c;F[c+24>>2]=b;break b}b=F[f+4>>2];if((b&3)!=3){break b}F[3980]=a;F[f+4>>2]=b&-2;F[d+4>>2]=a|1;F[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=F[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(F[3984]==(f|0)){F[3984]=d;a=F[3981]+a|0;F[3981]=a;F[d+4>>2]=a|1;if(F[3983]!=(d|0)){break a}F[3980]=0;F[3983]=0;return}if(F[3983]==(f|0)){F[3983]=d;a=F[3980]+a|0;F[3980]=a;F[d+4>>2]=a|1;F[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=F[f+8>>2];b=b>>>3|0;c=F[f+12>>2];if((c|0)==(e|0)){i=15912,j=F[3978]&Jj(b),F[i>>2]=j;break g}F[e+12>>2]=c;F[c+8>>2]=e;break g}h=F[f+24>>2];b=F[f+12>>2];h:{if((f|0)!=(b|0)){c=F[f+8>>2];F[c+12>>2]=b;F[b+8>>2]=c;break h}i:{e=f+20|0;c=F[e>>2];if(c){break i}e=f+16|0;c=F[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=F[e>>2];if(c){continue}e=b+16|0;c=F[b+16>>2];if(c){continue}break}F[g>>2]=0}if(!h){break g}e=F[f+28>>2];c=(e<<2)+16216|0;j:{if(F[c>>2]==(f|0)){F[c>>2]=b;if(b){break j}i=15916,j=F[3979]&Jj(e),F[i>>2]=j;break g}F[h+(F[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}F[b+24>>2]=h;c=F[f+16>>2];if(c){F[b+16>>2]=c;F[c+24>>2]=b}c=F[f+20>>2];if(!c){break g}F[b+20>>2]=c;F[c+24>>2]=b}F[d+4>>2]=a|1;F[a+d>>2]=a;if(F[3983]!=(d|0)){break f}F[3980]=a;return}F[f+4>>2]=b&-2;F[d+4>>2]=a|1;F[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+15952|0;c=F[3978];a=1<>2]}F[b+8>>2]=d;F[a+12>>2]=d;F[d+12>>2]=b;F[d+8>>2]=a;return}e=31;F[d+16>>2]=0;F[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}F[d+28>>2]=e;g=(e<<2)+16216|0;l:{m:{c=F[3979];b=1<>2]=d;F[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=F[g>>2];while(1){c=b;if((F[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=F[g+16>>2];if(b){continue}break}F[g+16>>2]=d;F[d+24>>2]=c}F[d+12>>2]=d;F[d+8>>2]=d;break l}a=F[c+8>>2];F[a+12>>2]=d;F[c+8>>2]=d;F[d+24>>2]=0;F[d+12>>2]=c;F[d+8>>2]=a}a=F[3986]-1|0;F[3986]=a?a:-1}}function _c(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=M(0),l=0,m=0,n=M(0);j=F[c>>2];a:{b:{f=F[b+4>>2];if(!f){break b}g=Ij(f);c:{if(g>>>0>=2){e=j;if(e>>>0>=f>>>0){e=(j>>>0)%(f>>>0)|0}c=F[F[b>>2]+(e<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=F[c>>2];if(!c){break b}g=F[c+4>>2];if((g|0)!=(j|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if(F[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&j;c=F[F[b>>2]+(e<<2)>>2];if(!c){break b}}g=f-1|0;while(1){c=F[c>>2];if(!c){break b}h=F[c+4>>2];if((h|0)!=(j|0)&(g&h)!=(e|0)){break b}if(F[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=sa(16);d=F[F[d>>2]>>2];F[c+12>>2]=0;F[c+8>>2]=d;F[c+4>>2]=j;F[c>>2]=0;n=M(F[b+12>>2]+1>>>0);k=J[b+16>>2];d:{if(!(f?n>M(k*M(f>>>0)):1)){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;e=2;k=M(S(M(n/k)));e:{if(k=M(0)){d=~~k>>>0;break e}d=0}d=d>>>0>g>>>0?d:g;f:{if((d|0)==1){break f}if(!(d&d-1)){e=d;break f}e=Md(d);f=F[b+4>>2]}g:{if(e>>>0<=f>>>0){if(e>>>0>=f>>>0){break g}g=f>>>0<3;k=M(S(M(M(I[b+12>>2])/J[b+16>>2])));h:{if(k=M(0)){d=~~k>>>0;break h}d=0}i:{j:{if(g){break j}if(Ij(f)>>>0>1){break j}d=d>>>0<2?d:1<<32-O(d-1|0);break i}d=Md(d)}e=d>>>0>e>>>0?d:e;if(e>>>0>=f>>>0){break g}}f=0;h=e;k:{l:{m:{n:{if(e){if(h>>>0>=1073741824){break n}e=sa(h<<2);d=F[b>>2];F[b>>2]=e;if(d){ra(d)}F[b+4>>2]=h;e=0;if(h-1>>>0>=3){g=h&-4;while(1){d=e<<2;F[d+F[b>>2]>>2]=0;F[F[b>>2]+(d|4)>>2]=0;F[F[b>>2]+(d|8)>>2]=0;F[F[b>>2]+(d|12)>>2]=0;e=e+4|0;f=f+4|0;if((g|0)!=(f|0)){continue}break}}d=h&3;if(d){while(1){F[F[b>>2]+(e<<2)>>2]=0;e=e+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}f=F[b+8>>2];if(!f){break k}d=b+8|0;g=F[f+4>>2];e=Ij(h);if(e>>>0<2){break m}g=g>>>0>=h>>>0?(g>>>0)%(h>>>0)|0:g;F[F[b>>2]+(g<<2)>>2]=d;d=F[f>>2];if(!d){break k}if(e>>>0<=1){break l}while(1){i=F[d+4>>2];if(h>>>0<=i>>>0){i=(i>>>0)%(h>>>0)|0}o:{if((g|0)==(i|0)){f=d;break o}e=d;l=i<<2;m=l+F[b>>2]|0;if(!F[m>>2]){F[m>>2]=f;f=d;g=i;break o}while(1){i=e;e=F[e>>2];if(F[d+8>>2]==F[e+8>>2]?e:0){continue}break}F[f>>2]=e;F[i>>2]=F[F[l+F[b>>2]>>2]>>2];F[F[l+F[b>>2]>>2]>>2]=d}d=F[f>>2];if(d){continue}break}break k}d=F[b>>2];F[b>>2]=0;if(d){ra(d)}F[b+4>>2]=0;break k}wa(1336);V()}g=h-1&g;F[F[b>>2]+(g<<2)>>2]=d;d=F[f>>2];if(!d){break k}}l=h-1|0;while(1){h=l&F[d+4>>2];p:{if((h|0)==(g|0)){f=d;break p}e=d;i=h<<2;m=i+F[b>>2]|0;if(F[m>>2]){while(1){h=e;e=F[e>>2];if(F[d+8>>2]==F[e+8>>2]?e:0){continue}break}F[f>>2]=e;F[h>>2]=F[F[i+F[b>>2]>>2]>>2];F[F[i+F[b>>2]>>2]>>2]=d;break p}F[m>>2]=f;f=d;g=h}d=F[f>>2];if(d){continue}break}}}f=F[b+4>>2];d=f-1|0;if(!(d&f)){e=d&j;break d}if(f>>>0>j>>>0){e=j;break d}e=(j>>>0)%(f>>>0)|0}e=F[b>>2]+(e<<2)|0;d=F[e>>2];q:{if(!d){F[c>>2]=F[b+8>>2];F[b+8>>2]=c;F[e>>2]=b+8;d=F[c>>2];if(!d){break q}d=F[d+4>>2];e=f-1|0;r:{if(!(e&f)){d=d&e;break r}if(d>>>0>>0){break r}d=(d>>>0)%(f>>>0)|0}F[F[b>>2]+(d<<2)>>2]=c;break q}F[c>>2]=F[d>>2];F[d>>2]=c}F[b+12>>2]=F[b+12>>2]+1;b=1}D[a+4|0]=b;F[a>>2]=c}function kj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;F[a+8>>2]=e;d=a+32|0;k=F[d>>2];f=F[a+36>>2]-k>>2;a:{if(f>>>0>>0){Aa(d,e-f|0);k=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+k}d=e}q=F[a+52>>2];n=F[a+48>>2];f=0;m=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(m),0,m);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=F[d+m>>2];i=F[a+16>>2];c:{if((g|0)>(i|0)){F[d+k>>2]=i;break c}d=d+k|0;i=F[a+12>>2];if((i|0)>(g|0)){F[d>>2]=i;break c}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[d>>2]=g;d:{if((g|0)>F[a+16>>2]){h=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}h=g+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];o=F[f>>2];f=F[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=L(e,k);f=F[(k<<2)+o>>2];if((f|0)==-1){break f}f=F[F[n+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}i=F[q>>2];g=F[n>>2];j=F[i+(F[g+(f<<2)>>2]<<2)>>2];h=f+1|0;h=(h>>>0)%3|0?h:f-2|0;if((h|0)!=-1){h=F[g+(h<<2)>>2]}else{h=-1}g:{h:{if((f>>>0)%3|0){f=f-1|0;break h}f=f+2|0;l=-1;if((f|0)==-1){break g}}l=F[g+(f<<2)>>2]}if((j|0)>=(k|0)){break f}f=F[(h<<2)+i>>2];if((f|0)>=(k|0)){break f}g=F[i+(l<<2)>>2];if((g|0)>=(k|0)){break f}i:{if((e|0)<=0){break i}g=L(e,g);i=L(e,f);j=L(e,j);f=0;l=0;if((e|0)!=1){while(1){F[m+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+i<<2)+c>>2]|0)-F[(f+j<<2)+c>>2];h=f|1;F[m+(h<<2)>>2]=(F[(g+h<<2)+c>>2]+F[(i+h<<2)+c>>2]|0)-F[(h+j<<2)+c>>2];f=f+2|0;l=l+2|0;if((t|0)!=(l|0)){continue}break}}if(!u){break i}F[m+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+i<<2)+c>>2]|0)-F[(f+j<<2)+c>>2]}if((d|0)<=0){break e}i=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+m>>2];j=F[a+16>>2];j:{if((g|0)>(j|0)){F[d+i>>2]=j;break j}d=d+i|0;j=F[a+12>>2];if((j|0)>(g|0)){F[d>>2]=j;break j}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+h>>2]+F[g+i>>2]|0;F[d>>2]=g;k:{if((g|0)>F[a+16>>2]){l=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break k}l=g+F[a+20>>2]|0}F[d>>2]=l}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}Da();V()}if((d|0)<=0){break e}j=(L(k-1|0,e)<<2)+c|0;i=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];h=F[a+16>>2];l:{if((g|0)>(h|0)){F[d+i>>2]=h;break l}d=d+i|0;h=F[a+12>>2];if((h|0)>(g|0)){F[d>>2]=h;break l}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+h>>2]+F[g+i>>2]|0;F[d>>2]=g;m:{if((g|0)>F[a+16>>2]){l=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break m}l=g+F[a+20>>2]|0}F[d>>2]=l}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}ra(m);return 1}function Hc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;F[a+56>>2]=F[a+52>>2];F[a+44>>2]=F[a+40>>2];a:{b:{c:{e=F[a+64>>2];c=F[e+24>>2];if((c|0)!=F[e+28>>2]){while(1){d=b;i=F[(k<<2)+c>>2];d:{if((i|0)==-1){break d}b=F[a+56>>2];e:{if((b|0)!=F[a+60>>2]){F[b>>2]=d;F[a+56>>2]=b+4;break e}c=F[a+52>>2];e=b-c|0;g=e>>2;b=g+1|0;if(b>>>0>=1073741824){break c}f=e>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=d;if((e|0)>0){ta(b,c,e)}F[a+60>>2]=b+(f<<2);F[a+56>>2]=g+4;F[a+52>>2]=b;if(!c){break e}ra(c)}f:{if(!(F[F[a+12>>2]+(k>>>3&536870908)>>2]>>>k&1)){break f}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1){break f}e=F[a>>2];if(F[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[F[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break f}f=F[a+64>>2];while(1){i=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|F[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[f+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}F[F[a+28>>2]+(i<<2)>>2]=d;b=F[a+44>>2];g:{if((b|0)!=F[a+48>>2]){F[b>>2]=i;F[a+44>>2]=b+4;break g}c=F[a+40>>2];e=b-c|0;g=e>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=e>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=i;if((e|0)>0){ta(b,c,e)}F[a+48>>2]=b+(f<<2);F[a+44>>2]=g+4;F[a+40>>2]=b;if(!c){break g}ra(c)}b=d+1|0;e=F[a+64>>2];h:{if((i>>>0)%3|0){c=i-1|0;break h}c=i+2|0;if((c|0)==-1){break d}}c=F[F[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(i|0)){break d}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(F[F[a>>2]+(e>>>3&536870908)>>2]>>>e&1){d=F[a+56>>2];i:{if((d|0)!=F[a+60>>2]){F[d>>2]=b;F[a+56>>2]=d+4;break i}e=F[a+52>>2];f=d-e|0;h=f>>2;d=h+1|0;if(d>>>0>=1073741824){break c}g=f>>1;g=h>>>0<536870911?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break a}d=sa(g<<2)}else{d=0}h=d+(h<<2)|0;F[h>>2]=b;if((f|0)>0){ta(d,e,f)}F[a+60>>2]=d+(g<<2);F[a+56>>2]=h+4;F[a+52>>2]=d;if(!e){break i}ra(e)}e=b+1|0;d=F[a+44>>2];j:{if((d|0)!=F[a+48>>2]){F[d>>2]=c;F[a+44>>2]=d+4;break j}f=F[a+40>>2];g=d-f|0;j=g>>2;d=j+1|0;if(d>>>0>=1073741824){break b}h=g>>1;h=j>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;if(h){if(h>>>0>=1073741824){break a}d=sa(h<<2)}else{d=0}j=d+(j<<2)|0;F[j>>2]=c;if((g|0)>0){ta(d,f,g)}F[a+48>>2]=d+(h<<2);F[a+44>>2]=j+4;F[a+40>>2]=d;if(!f){break j}ra(f)}d=b;b=e}F[F[a+28>>2]+(c<<2)>>2]=d;e=F[a+64>>2];k:{if((c>>>0)%3|0){c=c-1|0;break k}c=c+2|0;if((c|0)==-1){break d}}c=F[F[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break d}if((c|0)!=(i|0)){continue}break}}k=k+1|0;c=F[e+24>>2];if(k>>>0>2]-c>>2>>>0){continue}break}}return}va();V()}va();V()}wa(1336);V()}function Bj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;F[a+8>>2]=e;d=a+32|0;k=F[d>>2];f=F[a+36>>2]-k>>2;a:{if(f>>>0>>0){Aa(d,e-f|0);k=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+k}d=e}q=F[a+52>>2];m=F[a+48>>2];f=0;l=(e&1073741823)!=(e|0)?-1:e<<2;l=ua(sa(l),0,l);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=F[d+l>>2];h=F[a+16>>2];c:{if((g|0)>(h|0)){F[d+k>>2]=h;break c}d=d+k|0;h=F[a+12>>2];if((h|0)>(g|0)){F[d>>2]=h;break c}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[d>>2]=g;d:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];o=F[f>>2];f=F[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=L(e,k);f=F[(k<<2)+o>>2];if((f|0)==-1|F[F[m>>2]+(f>>>3&536870908)>>2]>>>f&1){break f}f=F[F[F[m+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}h=F[q>>2];g=F[m+28>>2];j=F[h+(F[g+(f<<2)>>2]<<2)>>2];if((j|0)>=(k|0)){break f}i=f+1|0;i=F[h+(F[g+(((i>>>0)%3|0?i:f-2|0)<<2)>>2]<<2)>>2];if((i|0)>=(k|0)){break f}f=F[h+(F[g+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(k|0)){break f}g:{if((e|0)<=0){break g}g=L(e,f);h=L(e,i);j=L(e,j);f=0;n=0;if((e|0)!=1){while(1){F[l+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+h<<2)+c>>2]|0)-F[(f+j<<2)+c>>2];i=f|1;F[l+(i<<2)>>2]=(F[(g+i<<2)+c>>2]+F[(h+i<<2)+c>>2]|0)-F[(j+i<<2)+c>>2];f=f+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(!u){break g}F[l+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+h<<2)+c>>2]|0)-F[(f+j<<2)+c>>2]}if((d|0)<=0){break e}h=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+l>>2];j=F[a+16>>2];h:{if((g|0)>(j|0)){F[d+h>>2]=j;break h}d=d+h|0;j=F[a+12>>2];if((j|0)>(g|0)){F[d>>2]=j;break h}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+i>>2]+F[g+h>>2]|0;F[d>>2]=g;i:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break i}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}Da();V()}if((d|0)<=0){break e}j=(L(k-1|0,e)<<2)+c|0;h=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];i=F[a+16>>2];j:{if((g|0)>(i|0)){F[d+h>>2]=i;break j}d=d+h|0;i=F[a+12>>2];if((i|0)>(g|0)){F[d>>2]=i;break j}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+i>>2]+F[g+h>>2]|0;F[d>>2]=g;k:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break k}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}ra(l);return 1}function te(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}c=(b>>>0)/3|0;if(!(F[F[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=F[a+48>>2];F[a+52>>2]=d;a:{if((d|0)!=F[a+56>>2]){F[d>>2]=b;F[a+52>>2]=d+4;break a}e=sa(4);F[e>>2]=b;f=e+4|0;F[a+56>>2]=f;F[a+52>>2]=f;F[a+48>>2]=e;if(!d){break a}ra(d)}f=F[F[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=F[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-L(c,3)|0?-1:2)+b|0;c=F[f+(g<<2)>>2];if((c|0)==-1){return 0}b=F[a+36>>2];f=b+(d>>>3&536870908)|0;h=F[f>>2];i=1<>2]=h|i;Va(a+8|0,d,e);b=F[a+36>>2]}b=(c>>>3&536870908)+b|0;d=F[b>>2];e=1<>2]=d|e;Va(a+8|0,c,g)}c=F[a+52>>2];if((c|0)==F[a+48>>2]){return 1}k=a+8|0;while(1){c=c-4|0;b=F[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=F[a+24>>2]+(d>>>3&268435452)|0;f=F[e>>2];d=1<>2]=d|f;e=F[a+4>>2];d=F[F[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=F[a+36>>2]+(d>>>3&536870908)|0;g=F[f>>2];h=1<>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}F[f>>2]=g|h;Va(k,d,c);break e}F[f>>2]=g|h;Va(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=F[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|F[F[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=F[F[F[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<>2];i=d>>>5|0;f=F[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=F[a+4>>2];if(!((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(F[F[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=F[F[F[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;f=(d>>>0)/3|0;h=(d|0)==-1;if(!h){c=F[a+24>>2];h=h?-1:f;i=h>>>5|0;f=F[c+(i<<2)>>2];h=1<>2];i=g>>>5|0;f=F[c+(i<<2)>>2];if(!(h&f)){break d}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break b}if(j){b=d;break d}if(F[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=F[a+52>>2];F[c-4>>2]=b;if((c|0)!=F[a+56>>2]){F[c>>2]=d;c=c+4|0;break c}m:{e=F[a+48>>2];f=c-e|0;c=f>>2;b=c+1|0;if(b>>>0<1073741824){g=f>>1;g=c>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break m}b=sa(g<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=d;c=c+4|0;if((f|0)>0){ta(b,e,f)}F[a+56>>2]=b+(g<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!e){break b}ra(e);c=F[a+52>>2];break b}va();V()}wa(1336);V()}F[(i<<2)+c>>2]=f|h;d=F[F[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}function Ie(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ea-80|0;ea=f;e=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=e;g=F[c+28>>2];e=f- -64|0;F[e>>2]=F[c+24>>2];F[e+4>>2]=g;e=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=e;e=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=e;e=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=e;nc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<0){ra(F[j>>2])}if(G[f+31|0]!=1){b=sa(32);c=G[1592]|G[1593]<<8|(G[1594]<<16|G[1595]<<24);D[b+16|0]=c;D[b+17|0]=c>>>8;D[b+18|0]=c>>>16;D[b+19|0]=c>>>24;c=G[1588]|G[1589]<<8|(G[1590]<<16|G[1591]<<24);d=G[1584]|G[1585]<<8|(G[1586]<<16|G[1587]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1580]|G[1581]<<8|(G[1582]<<16|G[1583]<<24);d=G[1576]|G[1577]<<8|(G[1578]<<16|G[1579]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+20|0]=0;F[a>>2]=-1;Ba(j,b,20);ra(b);break a}i=ea-16|0;ea=i;b:{c:{switch(G[f+32|0]){case 0:e=sa(48);De(e);F[e>>2]=13144;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;case 1:e=sa(52);De(e);F[e+48>>2]=0;F[e>>2]=11304;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;default:break c}}g=sa(32);e=G[1694]|G[1695]<<8|(G[1696]<<16|G[1697]<<24);D[g+24|0]=e;D[g+25|0]=e>>>8;D[g+26|0]=e>>>16;D[g+27|0]=e>>>24;e=G[1690]|G[1691]<<8|(G[1692]<<16|G[1693]<<24);h=G[1686]|G[1687]<<8|(G[1688]<<16|G[1689]<<24);D[g+16|0]=h;D[g+17|0]=h>>>8;D[g+18|0]=h>>>16;D[g+19|0]=h>>>24;D[g+20|0]=e;D[g+21|0]=e>>>8;D[g+22|0]=e>>>16;D[g+23|0]=e>>>24;e=G[1682]|G[1683]<<8|(G[1684]<<16|G[1685]<<24);h=G[1678]|G[1679]<<8|(G[1680]<<16|G[1681]<<24);D[g+8|0]=h;D[g+9|0]=h>>>8;D[g+10|0]=h>>>16;D[g+11|0]=h>>>24;D[g+12|0]=e;D[g+13|0]=e>>>8;D[g+14|0]=e>>>16;D[g+15|0]=e>>>24;e=G[1674]|G[1675]<<8|(G[1676]<<16|G[1677]<<24);h=G[1670]|G[1671]<<8|(G[1672]<<16|G[1673]<<24);D[g|0]=h;D[g+1|0]=h>>>8;D[g+2|0]=h>>>16;D[g+3|0]=h>>>24;D[g+4|0]=e;D[g+5|0]=e>>>8;D[g+6|0]=e>>>16;D[g+7|0]=e>>>24;D[g+28|0]=0;F[i>>2]=-1;e=i|4;Ba(e,g,28);k=D[i+15|0];F[f>>2]=F[i>>2];h=f+4|0;d:{if((k|0)>=0){k=F[e+4>>2];F[h>>2]=F[e>>2];F[h+4>>2]=k;F[h+8>>2]=F[e+8>>2];break d}Ba(h,F[i+4>>2],F[i+8>>2])}F[f+16>>2]=0;if(D[i+15|0]<0){ra(F[i+4>>2])}ra(g)}ea=i+16|0;e=F[f>>2];e:{if(e){F[a>>2]=e;if(D[f+15|0]>=0){a=f|4;b=F[a+4>>2];F[j>>2]=F[a>>2];F[j+4>>2]=b;F[j+8>>2]=F[a+8>>2];break e}Ba(j,F[f+4>>2],F[f+8>>2]);break e}e=F[f+16>>2];F[f+16>>2]=0;F[e+44>>2]=d;re(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<0){ra(F[j>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ga[F[F[e>>2]+4>>2]](e)}a=F[f+16>>2];F[f+16>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>=0){break a}ra(F[f+4>>2])}ea=f+80|0}function Fc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=L(b,12)+a|0;F[i+12>>2]=F[i+8>>2];l=(c|0)==-1?-1:(c>>>0)/3|0;n=1;j=c;a:{b:{c:{while(1){d:{o=e&1;if(o){if((j|0)==-1){break d}if(($d(a,((j>>>0)%3|0?-1:2)+j|0)|0)==-1){break a}c=j+1|0;d=(c>>>0)%3|0?c:j-2|0;if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}d=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}l=(c>>>0)/3|0}k=1<>2]+(l>>>3&536870908)|0;m=F[g>>2];e:{if(k&m){break e}e=0;while(1){F[g>>2]=m|k;d=F[i+12>>2];f:{if((d|0)!=F[i+16>>2]){F[d>>2]=l;F[i+12>>2]=d+4;break f}g=F[i+8>>2];k=d-g|0;f=k>>2;h=f+1|0;if(h>>>0>=1073741824){break c}d=k>>1;m=f>>>0<536870911?d>>>0>>0?h:d:1073741823;if(m){if(m>>>0>=1073741824){break b}d=sa(m<<2)}else{d=0}h=d+(f<<2)|0;F[h>>2]=l;if((k|0)>0){ta(d,g,k)}F[i+8>>2]=d;F[i+12>>2]=h+4;F[i+16>>2]=d+(m<<2);if(!g){break f}ra(g)}h=e+1|0;g:{h:{i:{if(!e){break i}if(h&1){if((c|0)==-1){c=-1;break g}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;break i}j=o?c:j;if((c|0)==-1){c=-1;break g}if((c>>>0)%3|0){e=c-1|0;break h}c=c+2|0}d=c;c=-1;e=d;if((d|0)==-1){break g}}c=F[F[F[a+4>>2]+12>>2]+(e<<2)>>2];g=-1;m=-1;d=e+1|0;f=(d>>>0)%3|0?d:e-2|0;if((f|0)>=0){d=(f>>>0)/3|0;m=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(f-L(d,3)<<2)>>2]}j:{if((c|0)==-1){k=1;break j}k=0;f=((c>>>0)%3|0?-1:2)+c|0;if((f|0)<0){break j}d=(f>>>0)/3|0;g=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(f-L(d,3)<<2)>>2]}if((g|0)!=(m|0)){c=-1;break g}k:{l:{e=((e>>>0)%3|0?-1:2)+e|0;m:{n:{if((e|0)>=0){d=(e>>>0)/3|0;g=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2];e=-1;if(!k){break n}break m}g=-1;if(k){break l}}d=c+1|0;e=(d>>>0)%3|0?d:c-2|0;if((e|0)<0){e=-1;break m}d=(e>>>0)/3|0;e=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2]}if((e|0)!=(g|0)){c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}e=h;l=(c>>>0)/3|0;g=F[a+56>>2]+(l>>>3&268435452)|0;m=F[g>>2];k=1<>2]-4|0;h=F[f>>2];e=F[a+56>>2]+(h>>>3&536870908)|0;d=F[e>>2];p=e,q=Jj(h)&d,F[p>>2]=q;F[i+12>>2]=f}e=1;d=n;n=0;if(d){continue}break a}break}j=-1;$d(a,-1);break a}va();V()}wa(1336);V()}F[((b<<2)+a|0)+44>>2]=j;f=F[i+8>>2];b=F[i+12>>2]-f|0;o:{if(!b){break o}j=F[a+56>>2];b=b>>2;a=b>>>0>1?b:1;h=a&1;c=0;if(b>>>0>=2){n=a&-2;l=0;while(1){e=c<<2;d=F[e+f>>2];b=j+(d>>>3&536870908)|0;a=F[b>>2];p=b,q=Jj(d)&a,F[p>>2]=q;d=F[f+(e|4)>>2];b=j+(d>>>3&536870908)|0;a=F[b>>2];p=b,q=Jj(d)&a,F[p>>2]=q;c=c+2|0;l=l+2|0;if((n|0)!=(l|0)){continue}break}}if(!h){break o}c=F[f+(c<<2)>>2];b=j+(c>>>3&536870908)|0;a=F[b>>2];p=b,q=Jj(c)&a,F[p>>2]=q}}function ue(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(F[F[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=F[a+48>>2];F[a+52>>2]=c;a:{if((c|0)!=F[a+56>>2]){F[c>>2]=b;F[a+52>>2]=c+4;break a}e=sa(4);F[e>>2]=b;f=e+4|0;F[a+56>>2]=f;F[a+52>>2]=f;F[a+48>>2]=e;if(!c){break a}ra(c)}e=-1;f=F[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=F[F[f>>2]+(g<<2)>>2]}b:{h=b-L(d,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}d=F[F[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=F[a+36>>2];f=c+(e>>>3&536870908)|0;i=F[f>>2];j=1<>2]=i|j;Va(a+8|0,e,g);c=F[a+36>>2]}c=(d>>>3&536870908)+c|0;e=F[c>>2];f=1<>2]=e|f;Va(a+8|0,d,(h?-1:2)+b|0)}c=F[a+52>>2];if((c|0)==F[a+48>>2]){return 1}j=a+8|0;while(1){c=c-4|0;b=F[c>>2];d=(b>>>0)/3|0;c:{d:{if((b|0)==-1){break d}e=F[a+24>>2]+(d>>>3&268435452)|0;f=F[e>>2];d=1<>2]=d|f;while(1){d=F[a+4>>2];c=F[F[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=F[a+36>>2]+(c>>>3&536870908)|0;f=F[e>>2];g=1<>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=F[F[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}F[e>>2]=f|g;Va(j,c,b);break f}F[e>>2]=f|g;Va(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];h=c>>>5|0;d=F[e+(h<<2)>>2];break e}c=-1;f=F[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=F[F[f+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=F[F[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;d=(c>>>0)/3|0;k:{g=(c|0)==-1;if(!g){e=F[a+24>>2];g=g?-1:d;h=g>>>5|0;d=F[e+(h<<2)>>2];g=1<>2];h=f>>>5|0;d=F[e+(h<<2)>>2];if(!(g&d)){break e}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break c}if(i){b=c;break e}if(F[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=F[a+52>>2];F[d-4>>2]=b;if((d|0)!=F[a+56>>2]){F[d>>2]=c;c=d+4|0;break d}l:{b=d;d=F[a+48>>2];e=b-d|0;g=e>>2;b=g+1|0;if(b>>>0<1073741824){f=e>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break l}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=c;c=g+4|0;if((e|0)>0){ta(b,d,e)}F[a+56>>2]=b+(f<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!d){break c}ra(d);c=F[a+52>>2];break c}va();V()}wa(1336);V()}F[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}function Ve(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ea-32|0;ea=i;a:{if(H[b+38>>1]<=513){c=F[b+20>>2];h=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(h|0)&d>>>0>=I[b+8>>2]|(c|0)>(h|0)){break a}h=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;if(h){break a}}b:{if(!Pb(1,i+28|0,b)){break b}c:{d=F[i+28>>2];if(d){Ob(a+60|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!xa(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Pb(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Ob(a+72|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!xa(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Pb(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Ob(a+84|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!xa(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Pb(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Ob(a+96|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!xa(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;d=F[b+12>>2];h=d;c=F[b+20>>2];g=c;f=F[b+16>>2];j=f+4|0;c=j>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=c;c=g;g=f+8|0;c=g>>>0<8?c+1|0:c;f=g;g=c;if(f>>>0>k>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=j+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=g;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}e=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1;break a}}e=0}ea=i+32|0;return e|0}function wc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{n=ga[F[F[a>>2]+44>>2]](a)|0;if((n|0)<=0){break a}e=F[b+4>>2]-F[b>>2]>>2;g=ea+-64|0;ea=g;d=Eb(g);f=L(F[3408],n);lc(d,F[F[a+8>>2]+56>>2],n<<24>>24,5,0,f,f>>31);f=sa(96);d=kc(f,d);D[d+84|0]=1;F[d+72>>2]=F[d+68>>2];pb(d,e);F[d+60>>2]=F[F[a+8>>2]+60>>2];d=F[a+16>>2];F[a+16>>2]=f;if(d){Ja(d)}ea=g- -64|0;g=F[a+16>>2];if(!F[g+80>>2]){break a}i=F[F[g>>2]>>2];if(!i){break a}h=F[c+12>>2];d=F[c+20>>2];j=F[c+8>>2];f=F[c+16>>2];if((h|0)<=(d|0)&j>>>0<=f>>>0|(d|0)>(h|0)){break a}k=L(e,n);i=i+F[g+48>>2]|0;l=F[c>>2];m=G[l+f|0];g=f+1|0;e=g?d:d+1|0;F[c+16>>2]=g;F[c+20>>2]=e;b:{c:{d:{if(m){if(md(k,n,c,i)){break d}break a}if((e|0)>=(h|0)&g>>>0>=j>>>0|(e|0)>(h|0)){break a}g=G[g+l|0];e=f+2|0;d=e>>>0<2?d+1|0:d;F[c+16>>2]=e;F[c+20>>2]=d;d=F[F[a+16>>2]+64>>2];d=F[d+4>>2]-F[d>>2]|0;e:{if((g|0)==F[3408]){e=d;d=k<<2;if(e>>>0>>0){break a}h=F[c+8>>2];g=F[c+12>>2];e=F[c+20>>2];j=F[c+16>>2];f=d+j|0;e=f>>>0>>0?e+1|0:e;if((e|0)<=(g|0)&f>>>0<=h>>>0|(e|0)<(g|0)){break e}break a}if(d>>>0>>0){break a}h=F[c+12>>2];e=F[c+20>>2];l=F[c+8>>2];f=l;j=F[c+16>>2];d=g;p=f-j>>>0>>0;f=h-(e+(f>>>0>>0)|0)|0;m=fa;if(p&(f|0)<=(m|0)|(f|0)<(m|0)){break a}f=1;if(!k){break c}f=0;m=l;l=d+j|0;e=l>>>0>>0?e+1|0:e;if(m>>>0>>0&(e|0)>=(h|0)|(e|0)>(h|0)){break b}while(1){ta(i+(o<<2)|0,j+F[c>>2]|0,g);e=F[c+20>>2];h=d+F[c+16>>2]|0;e=h>>>0>>0?e+1|0:e;j=h;F[c+16>>2]=h;F[c+20>>2]=e;o=o+1|0;if((k|0)==(o|0)){break d}m=F[c+8>>2];h=F[c+12>>2];l=d+j|0;e=l>>>0>>0?e+1|0:e;if((e|0)<=(h|0)&l>>>0<=m>>>0|(e|0)<(h|0)){continue}break}break b}ta(i,j+F[c>>2]|0,d);e=d;g=d+F[c+16>>2]|0;d=F[c+20>>2];F[c+16>>2]=g;F[c+20>>2]=e>>>0>g>>>0?d+1|0:d}f=1;if(!k){break c}d=F[a+20>>2];if(d){f=0;if(ga[F[F[d>>2]+32>>2]](d)|0){break c}}d=0;f=0;f:{if((k|0)<=0){break f}if((k|0)!=1){h=k&-2;while(1){e=d<<2;g=F[e+i>>2];F[e+i>>2]=0-(g&1)^g>>>1;g=e|4;e=F[g+i>>2];F[g+i>>2]=0-(e&1)^e>>>1;d=d+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(!(k&1)){break f}e=d<<2;d=F[e+i>>2];F[e+i>>2]=0-(d&1)^d>>>1}f=0}d=F[a+20>>2];g:{if(!d){break g}if(!(ga[F[F[d>>2]+40>>2]](d,c)|0)){break a}if(f){break g}f=0;a=F[a+20>>2];if(!(ga[F[F[a>>2]+44>>2]](a,i,i,k,n,F[b>>2])|0)){break b}}f=1}return f|0}return 0}function lj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=ea-32|0;ea=g;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){Mb(n,F[(k<<2)+d>>2],g+16|0);e=F[g+20>>2];d=e>>31;f=F[g+16>>2];h=f>>31;j=F[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+16>>2]=F[a+108>>2];break b}i=F[a+108>>2];l=i>>31;f=Gj(Fj(i,l,f,f>>31),fa,h,d);F[g+16>>2]=f;d=Gj(Fj(i,l,e,e>>31),fa,h,d);F[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){F[g+24>>2]=i-d;break b}F[g+24>>2]=d-i}d=Ga(m);f=F[g+16>>2];c:{if(d){F[g+24>>2]=0-F[g+24>>2];e=0-F[g+20>>2]|0;F[g+20>>2]=e;f=0-f|0;F[g+16>>2]=f;break c}e=F[g+20>>2]}d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=F[g+24>>2];d=f>>31;d=d^d+f;break e}f=F[g+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=F[a+100>>2]-(f+e^e)|0}e=F[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}h=(d|0)!=(e|0);if(!(f|h)){f=d;break f}g:{if(d){break g}j=F[a+108>>2];if((j|0)>=(f|0)){break g}f=(j<<1)-f|0;d=0;break f}h:{if(h){break h}h=F[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=F[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}F[g+12>>2]=f;F[g+8>>2]=d;j:{if(F[a+8>>2]<=0){break j}h=F[a+32>>2];f=0;while(1){e=F[a+16>>2];k:{if((e|0)<(d|0)){F[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[e>>2]=j;break k}F[e>>2]=d}f=f+1|0;e=F[a+8>>2];if((f|0)<(e|0)){d=F[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=F[f+i>>2]+F[f+h>>2]|0;F[e>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}Da();V()}ea=g+32|0;return 1}function Zi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=ea-32|0;ea=g;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){Kb(n,F[(k<<2)+d>>2],g+16|0);e=F[g+20>>2];d=e>>31;f=F[g+16>>2];h=f>>31;j=F[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+16>>2]=F[a+108>>2];break b}i=F[a+108>>2];l=i>>31;f=Gj(Fj(i,l,f,f>>31),fa,h,d);F[g+16>>2]=f;d=Gj(Fj(i,l,e,e>>31),fa,h,d);F[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){F[g+24>>2]=i-d;break b}F[g+24>>2]=d-i}d=Ga(m);f=F[g+16>>2];c:{if(d){F[g+24>>2]=0-F[g+24>>2];e=0-F[g+20>>2]|0;F[g+20>>2]=e;f=0-f|0;F[g+16>>2]=f;break c}e=F[g+20>>2]}d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=F[g+24>>2];d=f>>31;d=d^d+f;break e}f=F[g+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=F[a+100>>2]-(f+e^e)|0}e=F[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}h=(d|0)!=(e|0);if(!(f|h)){f=d;break f}g:{if(d){break g}j=F[a+108>>2];if((j|0)>=(f|0)){break g}f=(j<<1)-f|0;d=0;break f}h:{if(h){break h}h=F[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=F[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}F[g+12>>2]=f;F[g+8>>2]=d;j:{if(F[a+8>>2]<=0){break j}h=F[a+32>>2];f=0;while(1){e=F[a+16>>2];k:{if((e|0)<(d|0)){F[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[e>>2]=j;break k}F[e>>2]=d}f=f+1|0;e=F[a+8>>2];if((f|0)<(e|0)){d=F[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=F[f+i>>2]+F[f+h>>2]|0;F[e>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}Da();V()}ea=g+32|0;return 1}function he(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=ea-80|0;ea=h;a:{b:{if(G[F[a+28>>2]+36|0]<=1){d=F[b+20>>2];c=F[b+16>>2];e=c+4|0;d=e>>>0<4?d+1|0:d;k=F[b+12>>2];if((k|0)<=(d|0)&e>>>0>I[b+8>>2]|(d|0)>(k|0)){break a}c=c+F[b>>2]|0;i=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;break b}if(!Oc(1,h+76|0,b)){break a}i=F[h+76>>2]}if(!i){break a}d=F[b+8>>2];c=F[b+16>>2];d=Fj(d-c|0,F[b+12>>2]-(F[b+20>>2]+(c>>>0>d>>>0)|0)|0,5,0);c=fa;if(d>>>0>>0&(c|0)<=0|(c|0)<0){break a}c=F[a+4>>2];d=F[a+8>>2]-c>>2;c:{if(d>>>0>>0){Aa(a+4|0,i-d|0);break c}if(d>>>0<=i>>>0){break c}F[a+8>>2]=c+(i<<2)}r=a+16|0;m=F[a+32>>2];f=1;while(1){d:{g=F[b+12>>2];c=g;d=F[b+20>>2];o=F[b+8>>2];j=F[b+16>>2];if((c|0)<=(d|0)&o>>>0<=j>>>0|(c|0)<(d|0)){break d}p=F[b>>2];k=G[p+j|0];c=d;e=j+1|0;c=e?c:c+1|0;F[b+16>>2]=e;F[b+20>>2]=c;if((c|0)>=(g|0)&e>>>0>=o>>>0|(c|0)>(g|0)){break d}e=G[e+p|0];c=d;l=j+2|0;c=l>>>0<2?c+1|0:c;F[b+16>>2]=l;F[b+20>>2]=c;if((c|0)>=(g|0)&l>>>0>=o>>>0|(c|0)>(g|0)){break d}l=G[l+p|0];c=d;q=j+3|0;c=q>>>0<3?c+1|0:c;F[b+16>>2]=q;F[b+20>>2]=c;if((c|0)>=(g|0)&q>>>0>=o>>>0|(c|0)>(g|0)){break d}g=G[q+p|0];c=d;d=j+4|0;c=d>>>0<4?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;if(!l|((e-12&255)>>>0<245|k>>>0>4)){break d}j=Eb(h+8|0);o=l<<24>>24;g=(g|0)!=0;d=e-1|0;if(d>>>0<=10){c=F[(d<<2)+13616>>2]}else{c=-1}d=L(c,l);lc(j,k,o,e,g,d,d>>31);d=H[F[a+28>>2]+36>>1];e:{if(((d<<8|d>>>8)&65535)>>>0<=258){c=F[b+20>>2];d=F[b+16>>2];e=d+2|0;c=e>>>0<2?c+1|0:c;k=F[b+12>>2];if((k|0)<=(c|0)&e>>>0>I[b+8>>2]|(c|0)>(k|0)){break d}d=d+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8;F[b+16>>2]=e;F[b+20>>2]=c;break e}if(!Oc(1,h+4|0,b)){break d}f=F[h+4>>2]}F[h+68>>2]=f;d=kc(sa(96),j);ga[F[F[m>>2]+8>>2]](m,F[m+12>>2]-F[m+8>>2]>>2,d);d=(F[m+12>>2]-F[m+8>>2]>>2)-1|0;e=d<<2;F[F[e+F[m+8>>2]>>2]+60>>2]=f;F[F[a+4>>2]+(n<<2)>>2]=d;f=F[a+16>>2];c=F[a+20>>2]-f>>2;f:{if((c|0)>(d|0)){break f}F[h>>2]=-1;d=d+1|0;if(d>>>0>c>>>0){Ia(r,d-c|0,h);f=F[r>>2];break f}if(c>>>0<=d>>>0){break f}F[a+20>>2]=(d<<2)+f}F[e+f>>2]=n;n=n+1|0;f=n>>>0>>0;if((i|0)!=(n|0)){continue}}break}n=!f}ea=h+80|0;return n&1}function ld(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c=H[b+38>>1];a:{if(!c){break a}b:{if(c>>>0<=511){d=F[b+12>>2];c=F[b+20>>2];g=F[b+16>>2];e=g+4|0;c=e>>>0<4?c+1|0:c;if(e>>>0>I[b+8>>2]&(c|0)>=(d|0)|(c|0)>(d|0)){break a}c=g+F[b>>2]|0;f=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[a+12>>2]=f;c=F[b+20>>2];d=F[b+16>>2]+4|0;c=d>>>0<4?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;break b}if(!hb(1,a+12|0,b)){break a}f=F[a+12>>2]}d=F[a>>2];c=F[a+4>>2]-d>>2;c:{if(c>>>0>>0){Aa(a,f-c|0);f=F[a+12>>2];break c}if(c>>>0<=f>>>0){break c}F[a+4>>2]=d+(f<<2)}if(!f){return 1}j=F[b+8>>2];i=F[b+12>>2];l=F[a>>2];g=0;while(1){c=F[b+20>>2];d=F[b+16>>2];if((i|0)<=(c|0)&j>>>0<=d>>>0|(c|0)>(i|0)){return 0}m=F[b>>2];k=G[m+d|0];d=d+1|0;c=d?c:c+1|0;h=d;F[b+16>>2]=d;F[b+20>>2]=c;d=k>>>2|0;e=0;d:{e:{f:{g:{n=k&3;switch(n|0){case 0:break e;case 3:break g;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}ua(l+(g<<2)|0,0,(k&252)+4|0);g=c;break d}while(1){if((c|0)>=(i|0)&h>>>0>=j>>>0|(c|0)>(i|0)){break a}f=G[h+m|0];h=h+1|0;c=h?c:c+1|0;F[b+16>>2]=h;F[b+20>>2]=c;d=f<<(e<<3|6)|d;e=e+1|0;if((n|0)!=(e|0)){continue}break}}F[l+(g<<2)>>2]=d}f=F[a+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}c=a+16|0;k=F[a>>2];b=F[a+16>>2];d=F[a+20>>2]-b|0;g=d>>2;h:{if(g>>>0<=4095){Aa(c,4096-g|0);break h}if((d|0)==16384){break h}F[a+20>>2]=b+16384}b=a+28|0;g=F[b>>2];d=F[a+32>>2]-g>>3;i:{if(d>>>0>>0){sb(b,f-d|0);g=F[b>>2];break i}if(d>>>0>f>>>0){F[a+32>>2]=(f<<3)+g}if(!f){break a}}e=0;a=0;while(1){b=k+(e<<2)|0;i=F[b>>2];d=a;h=(e<<3)+g|0;F[h+4>>2]=d;F[h>>2]=i;i=F[b>>2];a=i+d|0;if(a>>>0>4096){break a}j:{if(a>>>0<=d>>>0){break j}h=F[c>>2];b=0;j=i&7;if(j){while(1){F[h+(d<<2)>>2]=e;d=d+1|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}if(i-1>>>0<=6){break j}while(1){b=h+(d<<2)|0;F[b>>2]=e;F[b+28>>2]=e;F[b+24>>2]=e;F[b+20>>2]=e;F[b+16>>2]=e;F[b+12>>2]=e;F[b+8>>2]=e;F[b+4>>2]=e;d=d+8|0;if((d|0)!=(a|0)){continue}break}}e=e+1|0;if((e|0)!=(f|0)){continue}break}o=(a|0)==4096}return o}function Gi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=ea-48|0;ea=h;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];g=F[e+4>>2];f=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;a:{g=g-d|0;if((g|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=g>>>2|0;p=e>>>0>1?e:1;while(1){Mb(o,F[(f<<2)+d>>2],h+8|0);e=F[h+12>>2];d=e>>31;g=F[h+8>>2];i=g>>31;k=F[h+16>>2];j=k>>31;j=j^j+k;i=j+((d^d+e)+(i^g+i)|0)|0;d=0;d=i>>>0>>0?1:d;b:{if(!(d|i)){F[h+8>>2]=F[a+92>>2];break b}j=F[a+92>>2];l=j>>31;g=Gj(Fj(j,l,g,g>>31),fa,i,d);F[h+8>>2]=g;d=Gj(Fj(j,l,e,e>>31),fa,i,d);F[h+12>>2]=d;e=d;d=d>>31;e=e+d^d;d=g>>31;d=e+(d+g^d)|0;if((k|0)>=0){F[h+16>>2]=j-d;break b}F[h+16>>2]=d-j}d=Ga(n);e=F[h+8>>2];c:{if(d){F[h+16>>2]=0-F[h+16>>2];g=0-F[h+12>>2]|0;F[h+12>>2]=g;e=0-e|0;F[h+8>>2]=e;break c}g=F[h+12>>2]}d:{if((e|0)>=0){e=F[a+92>>2];d=e+F[h+16>>2]|0;e=e+g|0;break d}e:{if((g|0)<0){d=F[h+16>>2];e=d>>31;e=e^d+e;break e}d=F[h+16>>2];e=d>>31;e=F[a+84>>2]-(e^d+e)|0}if((d|0)<0){d=g>>31;d=d+g^d;break d}d=g>>31;d=F[a+84>>2]-(d+g^d)|0}g=F[a+84>>2];f:{if(!(d|e)){d=g;e=d;break f}if(!((d|0)!=(g|0)|e)){e=d;break f}i=(e|0)!=(g|0);if(!(d|i)){d=e;break f}g:{if(e){break g}k=F[a+92>>2];if((k|0)>=(d|0)){break g}d=(k<<1)-d|0;e=0;break f}h:{if(i){break h}i=F[a+92>>2];if((i|0)<=(d|0)){break h}d=(i<<1)-d|0;break f}i:{if((d|0)!=(g|0)){break i}g=F[a+92>>2];if((g|0)<=(e|0)){break i}e=(g<<1)-e|0;break f}if(d){break f}d=0;g=F[a+92>>2];if((g|0)>=(e|0)){break f}e=(g<<1)-e|0}g=f<<3;i=g+b|0;k=F[i+4>>2];i=F[i>>2];F[h+36>>2]=d;F[h+32>>2]=e;F[h+24>>2]=i;F[h+28>>2]=k;pc(h+40|0,m,h+32|0,h+24|0);d=c+g|0;F[d>>2]=F[h+40>>2];F[d+4>>2]=F[h+44>>2];f=f+1|0;if((p|0)==(f|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>f>>>0){continue}break}}Da();V()}ea=h+48|0;return 1}function Ci(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=ea-48|0;ea=h;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];g=F[e+4>>2];f=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;a:{g=g-d|0;if((g|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=g>>>2|0;p=e>>>0>1?e:1;while(1){Kb(o,F[(f<<2)+d>>2],h+8|0);e=F[h+12>>2];d=e>>31;g=F[h+8>>2];i=g>>31;k=F[h+16>>2];j=k>>31;j=j^j+k;i=j+((d^d+e)+(i^g+i)|0)|0;d=0;d=i>>>0>>0?1:d;b:{if(!(d|i)){F[h+8>>2]=F[a+92>>2];break b}j=F[a+92>>2];l=j>>31;g=Gj(Fj(j,l,g,g>>31),fa,i,d);F[h+8>>2]=g;d=Gj(Fj(j,l,e,e>>31),fa,i,d);F[h+12>>2]=d;e=d;d=d>>31;e=e+d^d;d=g>>31;d=e+(d+g^d)|0;if((k|0)>=0){F[h+16>>2]=j-d;break b}F[h+16>>2]=d-j}d=Ga(n);e=F[h+8>>2];c:{if(d){F[h+16>>2]=0-F[h+16>>2];g=0-F[h+12>>2]|0;F[h+12>>2]=g;e=0-e|0;F[h+8>>2]=e;break c}g=F[h+12>>2]}d:{if((e|0)>=0){e=F[a+92>>2];d=e+F[h+16>>2]|0;e=e+g|0;break d}e:{if((g|0)<0){d=F[h+16>>2];e=d>>31;e=e^d+e;break e}d=F[h+16>>2];e=d>>31;e=F[a+84>>2]-(e^d+e)|0}if((d|0)<0){d=g>>31;d=d+g^d;break d}d=g>>31;d=F[a+84>>2]-(d+g^d)|0}g=F[a+84>>2];f:{if(!(d|e)){d=g;e=d;break f}if(!((d|0)!=(g|0)|e)){e=d;break f}i=(e|0)!=(g|0);if(!(d|i)){d=e;break f}g:{if(e){break g}k=F[a+92>>2];if((k|0)>=(d|0)){break g}d=(k<<1)-d|0;e=0;break f}h:{if(i){break h}i=F[a+92>>2];if((i|0)<=(d|0)){break h}d=(i<<1)-d|0;break f}i:{if((d|0)!=(g|0)){break i}g=F[a+92>>2];if((g|0)<=(e|0)){break i}e=(g<<1)-e|0;break f}if(d){break f}d=0;g=F[a+92>>2];if((g|0)>=(e|0)){break f}e=(g<<1)-e|0}g=f<<3;i=g+b|0;k=F[i+4>>2];i=F[i>>2];F[h+36>>2]=d;F[h+32>>2]=e;F[h+24>>2]=i;F[h+28>>2]=k;pc(h+40|0,m,h+32|0,h+24|0);d=c+g|0;F[d>>2]=F[h+40>>2];F[d+4>>2]=F[h+44>>2];f=f+1|0;if((p|0)==(f|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>f>>>0){continue}break}}Da();V()}ea=h+48|0;return 1}function Oi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=ea-48|0;ea=h;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];g=F[e+4>>2];f=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;a:{g=g-d|0;if((g|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=g>>>2|0;p=e>>>0>1?e:1;while(1){Mb(o,F[(f<<2)+d>>2],h+8|0);e=F[h+12>>2];d=e>>31;g=F[h+8>>2];i=g>>31;k=F[h+16>>2];j=k>>31;j=j^j+k;i=j+((d^d+e)+(i^g+i)|0)|0;d=0;d=i>>>0>>0?1:d;b:{if(!(d|i)){F[h+8>>2]=F[a+92>>2];break b}j=F[a+92>>2];l=j>>31;g=Gj(Fj(j,l,g,g>>31),fa,i,d);F[h+8>>2]=g;d=Gj(Fj(j,l,e,e>>31),fa,i,d);F[h+12>>2]=d;e=d;d=d>>31;e=e+d^d;d=g>>31;d=e+(d+g^d)|0;if((k|0)>=0){F[h+16>>2]=j-d;break b}F[h+16>>2]=d-j}d=Ga(n);e=F[h+8>>2];c:{if(d){F[h+16>>2]=0-F[h+16>>2];g=0-F[h+12>>2]|0;F[h+12>>2]=g;e=0-e|0;F[h+8>>2]=e;break c}g=F[h+12>>2]}d:{if((e|0)>=0){e=F[a+92>>2];d=e+F[h+16>>2]|0;e=e+g|0;break d}e:{if((g|0)<0){d=F[h+16>>2];e=d>>31;e=e^d+e;break e}d=F[h+16>>2];e=d>>31;e=F[a+84>>2]-(e^d+e)|0}if((d|0)<0){d=g>>31;d=d+g^d;break d}d=g>>31;d=F[a+84>>2]-(d+g^d)|0}g=F[a+84>>2];f:{if(!(d|e)){d=g;e=d;break f}if(!((d|0)!=(g|0)|e)){e=d;break f}i=(e|0)!=(g|0);if(!(d|i)){d=e;break f}g:{if(e){break g}k=F[a+92>>2];if((k|0)>=(d|0)){break g}d=(k<<1)-d|0;e=0;break f}h:{if(i){break h}i=F[a+92>>2];if((i|0)<=(d|0)){break h}d=(i<<1)-d|0;break f}i:{if((d|0)!=(g|0)){break i}g=F[a+92>>2];if((g|0)<=(e|0)){break i}e=(g<<1)-e|0;break f}if(d){break f}d=0;g=F[a+92>>2];if((g|0)>=(e|0)){break f}e=(g<<1)-e|0}g=f<<3;i=g+b|0;k=F[i+4>>2];F[h+40>>2]=F[i>>2];F[h+44>>2]=k;F[h+28>>2]=d;F[h+24>>2]=e;qc(h+32|0,m,h+24|0,h+40|0);d=c+g|0;F[d>>2]=F[h+32>>2];F[d+4>>2]=F[h+36>>2];f=f+1|0;if((p|0)==(f|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>f>>>0){continue}break}}Da();V()}ea=h+48|0;return 1}function Ki(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=ea-48|0;ea=h;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];g=F[e+4>>2];f=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;a:{g=g-d|0;if((g|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=g>>>2|0;p=e>>>0>1?e:1;while(1){Kb(o,F[(f<<2)+d>>2],h+8|0);e=F[h+12>>2];d=e>>31;g=F[h+8>>2];i=g>>31;k=F[h+16>>2];j=k>>31;j=j^j+k;i=j+((d^d+e)+(i^g+i)|0)|0;d=0;d=i>>>0>>0?1:d;b:{if(!(d|i)){F[h+8>>2]=F[a+92>>2];break b}j=F[a+92>>2];l=j>>31;g=Gj(Fj(j,l,g,g>>31),fa,i,d);F[h+8>>2]=g;d=Gj(Fj(j,l,e,e>>31),fa,i,d);F[h+12>>2]=d;e=d;d=d>>31;e=e+d^d;d=g>>31;d=e+(d+g^d)|0;if((k|0)>=0){F[h+16>>2]=j-d;break b}F[h+16>>2]=d-j}d=Ga(n);e=F[h+8>>2];c:{if(d){F[h+16>>2]=0-F[h+16>>2];g=0-F[h+12>>2]|0;F[h+12>>2]=g;e=0-e|0;F[h+8>>2]=e;break c}g=F[h+12>>2]}d:{if((e|0)>=0){e=F[a+92>>2];d=e+F[h+16>>2]|0;e=e+g|0;break d}e:{if((g|0)<0){d=F[h+16>>2];e=d>>31;e=e^d+e;break e}d=F[h+16>>2];e=d>>31;e=F[a+84>>2]-(e^d+e)|0}if((d|0)<0){d=g>>31;d=d+g^d;break d}d=g>>31;d=F[a+84>>2]-(d+g^d)|0}g=F[a+84>>2];f:{if(!(d|e)){d=g;e=d;break f}if(!((d|0)!=(g|0)|e)){e=d;break f}i=(e|0)!=(g|0);if(!(d|i)){d=e;break f}g:{if(e){break g}k=F[a+92>>2];if((k|0)>=(d|0)){break g}d=(k<<1)-d|0;e=0;break f}h:{if(i){break h}i=F[a+92>>2];if((i|0)<=(d|0)){break h}d=(i<<1)-d|0;break f}i:{if((d|0)!=(g|0)){break i}g=F[a+92>>2];if((g|0)<=(e|0)){break i}e=(g<<1)-e|0;break f}if(d){break f}d=0;g=F[a+92>>2];if((g|0)>=(e|0)){break f}e=(g<<1)-e|0}g=f<<3;i=g+b|0;k=F[i+4>>2];F[h+40>>2]=F[i>>2];F[h+44>>2]=k;F[h+28>>2]=d;F[h+24>>2]=e;qc(h+32|0,m,h+24|0,h+40|0);d=c+g|0;F[d>>2]=F[h+32>>2];F[d+4>>2]=F[h+36>>2];f=f+1|0;if((p|0)==(f|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>f>>>0){continue}break}}Da();V()}ea=h+48|0;return 1}function gf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=ea-16|0;ea=g;l=1;m=ga[F[F[a>>2]+24>>2]](a)|0;a:{if((m|0)<=0){l=0;break a}q=a+48|0;while(1){b:{c:{if(!F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2]){break c}n=j<<2;i=F[n+F[a+36>>2]>>2];d=F[i+8>>2];o=tb(i);if(!o){break c}i=F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2];h=F[d+56>>2];c=sa(32);F[g>>2]=c;F[g+4>>2]=24;F[g+8>>2]=-2147483616;D[c+24|0]=0;b=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);d=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[c+16|0]=d;D[c+17|0]=d>>>8;D[c+18|0]=d>>>16;D[c+19|0]=d>>>24;D[c+20|0]=b;D[c+21|0]=b>>>8;D[c+22|0]=b>>>16;D[c+23|0]=b>>>24;b=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[c+8|0]=d;D[c+9|0]=d>>>8;D[c+10|0]=d>>>16;D[c+11|0]=d>>>24;D[c+12|0]=b;D[c+13|0]=b>>>8;D[c+14|0]=b>>>16;D[c+15|0]=b>>>24;b=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;D[c+4|0]=b;D[c+5|0]=b>>>8;D[c+6|0]=b>>>16;D[c+7|0]=b>>>24;b=i+16|0;f=b;e=F[b>>2];d:{if(!e){break d}while(1){d=(h|0)>F[e+16>>2];f=d?f:e;e=F[(d<<2)+e>>2];if(e){continue}break}if((b|0)==(f|0)|(h|0)>2]){break d}e=F[f+24>>2];if(!e){break d}d=f+20|0;while(1){b=G[e+27|0];h=b<<24>>24<0;k=h?F[e+20>>2]:b;p=k>>>0<24;e:{f:{f=p?k:24;g:{if(f){b=e+16|0;h=h?F[b>>2]:b;b=Ha(c,h,f);h:{if(!b){if(k>>>0<=24){break h}break e}if((b|0)<0){break e}}b=Ha(h,c,f);if(!b){break g}if((b|0)<0){break f}i=d;break d}if(k>>>0>24){break e}}if(p){break f}i=d;break d}e=e+4|0}e=F[e>>2];if(e){continue}break}}d=oe(i,g);if(D[g+11|0]<0){ra(F[g>>2])}if(!d){break c}le(F[F[F[a+36>>2]+n>>2]+8>>2],o);break b}d=F[F[a+36>>2]+(j<<2)>>2];if(!(ga[F[F[d>>2]+24>>2]](d,q)|0)){break a}}j=j+1|0;l=(m|0)>(j|0);if((j|0)!=(m|0)){continue}break}}ea=g+16|0;return(l^-1)&1}function Ae(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=ea-16|0;ea=f;c=F[a+4>>2];F[a+40>>2]=F[a>>2];F[a+44>>2]=c;c=F[a+36>>2];F[a+72>>2]=F[a+32>>2];F[a+76>>2]=c;d=F[a+28>>2];c=a- -64|0;F[c>>2]=F[a+24>>2];F[c+4>>2]=d;c=F[a+20>>2];F[a+56>>2]=F[a+16>>2];F[a+60>>2]=c;c=F[a+12>>2];F[a+48>>2]=F[a+8>>2];F[a+52>>2]=c;a:{b:{if(Db(a+40|0,1,f+8|0)){c=F[a+44>>2];F[a>>2]=F[a+40>>2];F[a+4>>2]=c;c=F[a+76>>2];F[a+32>>2]=F[a+72>>2];F[a+36>>2]=c;c=F[a+68>>2];F[a+24>>2]=F[a+64>>2];F[a+28>>2]=c;d=F[a+60>>2];h=d;c=F[a+56>>2];F[a+16>>2]=c;F[a+20>>2]=d;e=F[a+52>>2];d=F[a+48>>2];F[a+8>>2]=d;F[a+12>>2]=e;i=d-c|0;g=F[f+12>>2];e=e-((c>>>0>d>>>0)+h|0)|0;d=F[f+8>>2];if((g|0)==(e|0)&i>>>0>=d>>>0|e>>>0>g>>>0){break b}}c=0;break a}e=c+d|0;c=h+g|0;F[a+16>>2]=e;F[a+20>>2]=d>>>0>e>>>0?c+1|0:c;c:{if(H[a+38>>1]<=513){c=F[a+4>>2];F[a+96>>2]=F[a>>2];F[a+100>>2]=c;c=F[a+36>>2];F[a+128>>2]=F[a+32>>2];F[a+132>>2]=c;c=F[a+28>>2];F[a+120>>2]=F[a+24>>2];F[a+124>>2]=c;c=F[a+20>>2];F[a+112>>2]=F[a+16>>2];F[a+116>>2]=c;c=F[a+12>>2];F[a+104>>2]=F[a+8>>2];F[a+108>>2]=c;d:{if(Db(a+96|0,1,f+8|0)){c=F[a+100>>2];F[a>>2]=F[a+96>>2];F[a+4>>2]=c;c=F[a+132>>2];F[a+32>>2]=F[a+128>>2];F[a+36>>2]=c;c=F[a+124>>2];F[a+24>>2]=F[a+120>>2];F[a+28>>2]=c;d=F[a+116>>2];h=d;c=F[a+112>>2];F[a+16>>2]=c;F[a+20>>2]=d;e=F[a+108>>2];d=F[a+104>>2];F[a+8>>2]=d;F[a+12>>2]=e;i=d-c|0;g=F[f+12>>2];e=e-((c>>>0>d>>>0)+h|0)|0;d=F[f+8>>2];if((g|0)==(e|0)&i>>>0>=d>>>0|e>>>0>g>>>0){break d}}c=0;break a}e=c+d|0;c=h+g|0;F[a+16>>2]=e;F[a+20>>2]=d>>>0>e>>>0?c+1|0:c;break c}c=0;if(!xa(a+80|0,a)){break a}}c=0;if(!ze(a)){break a}c=F[a+4>>2];F[b>>2]=F[a>>2];F[b+4>>2]=c;c=F[a+36>>2];F[b+32>>2]=F[a+32>>2];F[b+36>>2]=c;c=F[a+28>>2];F[b+24>>2]=F[a+24>>2];F[b+28>>2]=c;c=F[a+20>>2];F[b+16>>2]=F[a+16>>2];F[b+20>>2]=c;c=F[a+12>>2];F[b+8>>2]=F[a+8>>2];F[b+12>>2]=c;c=1}ea=f+16|0;return c}function ig(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=ea-32|0;ea=f;e=f+8|0;c=ea-80|0;ea=c;a=F[b+36>>2];F[c+72>>2]=F[b+32>>2];F[c+76>>2]=a;d=F[b+28>>2];a=c- -64|0;F[a>>2]=F[b+24>>2];F[a+4>>2]=d;a=F[b+20>>2];F[c+56>>2]=F[b+16>>2];F[c+60>>2]=a;a=F[b+12>>2];F[c+48>>2]=F[b+8>>2];F[c+52>>2]=a;a=F[b+4>>2];F[c+40>>2]=F[b>>2];F[c+44>>2]=a;nc(c+8|0,c+40|0,c+24|0);a=F[c+8>>2];a:{if(a){F[e>>2]=a;a=e+4|0;if(D[c+23|0]>=0){b=c+8|4;e=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=e;F[a+8>>2]=F[b+8>>2];break a}Ba(a,F[c+12>>2],F[c+16>>2]);if(D[c+23|0]>=0){break a}ra(F[c+12>>2]);break a}if(D[c+23|0]<0){ra(F[c+12>>2])}a=G[c+31|0];if(a>>>0>=2){a=sa(32);b=G[1621]|G[1622]<<8;D[a+24|0]=b;D[a+25|0]=b>>>8;b=G[1617]|G[1618]<<8|(G[1619]<<16|G[1620]<<24);d=G[1613]|G[1614]<<8|(G[1615]<<16|G[1616]<<24);D[a+16|0]=d;D[a+17|0]=d>>>8;D[a+18|0]=d>>>16;D[a+19|0]=d>>>24;D[a+20|0]=b;D[a+21|0]=b>>>8;D[a+22|0]=b>>>16;D[a+23|0]=b>>>24;b=G[1609]|G[1610]<<8|(G[1611]<<16|G[1612]<<24);d=G[1605]|G[1606]<<8|(G[1607]<<16|G[1608]<<24);D[a+8|0]=d;D[a+9|0]=d>>>8;D[a+10|0]=d>>>16;D[a+11|0]=d>>>24;D[a+12|0]=b;D[a+13|0]=b>>>8;D[a+14|0]=b>>>16;D[a+15|0]=b>>>24;b=G[1601]|G[1602]<<8|(G[1603]<<16|G[1604]<<24);d=G[1597]|G[1598]<<8|(G[1599]<<16|G[1600]<<24);D[a|0]=d;D[a+1|0]=d>>>8;D[a+2|0]=d>>>16;D[a+3|0]=d>>>24;D[a+4|0]=b;D[a+5|0]=b>>>8;D[a+6|0]=b>>>16;D[a+7|0]=b>>>24;D[a+26|0]=0;F[c+8>>2]=-1;b=c+8|4;Ba(b,a,26);d=D[c+23|0];F[e>>2]=F[c+8>>2];e=e+4|0;b:{if((d|0)>=0){d=F[b+4>>2];F[e>>2]=F[b>>2];F[e+4>>2]=d;F[e+8>>2]=F[b+8>>2];break b}Ba(e,F[c+12>>2],F[c+16>>2])}if(D[c+23|0]<0){ra(F[c+12>>2])}ra(a);break a}F[e>>2]=0;F[e+4>>2]=0;F[e+16>>2]=a;F[e+8>>2]=0;F[e+12>>2]=0}ea=c+80|0;a=F[f+24>>2];if(D[f+23|0]<0){ra(F[f+12>>2])}ea=f+32|0;return a|0}function Ig(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c;a:{d=a;if(F[d+12>>2]==(b|0)){break a}a=b;b=F[d+4>>2];c=F[d>>2];if((b|0)!=(c|0)){while(1){e=b-12|0;if(D[b-1|0]<0){ra(F[e>>2])}b=e;if((c|0)!=(b|0)){continue}break}}F[d+12>>2]=a;F[d+4>>2]=c;b=F[a>>2];j=a+4|0;if((b|0)==(j|0)){break a}while(1){b:{if(F[d+8>>2]!=(c|0)){c:{if(D[b+27|0]>=0){a=F[b+20>>2];F[c>>2]=F[b+16>>2];F[c+4>>2]=a;F[c+8>>2]=F[b+24>>2];break c}Ba(c,F[b+16>>2],F[b+20>>2])}F[d+4>>2]=c+12;break b}g=0;d:{e:{f:{e=F[d+4>>2];a=F[d>>2];f=(e-a|0)/12|0;c=f+1|0;if(c>>>0<357913942){h=(F[d+8>>2]-a|0)/12|0;k=h<<1;c=h>>>0<178956970?c>>>0>k>>>0?c:k:357913941;if(c){if(c>>>0>=357913942){break f}g=sa(L(c,12))}h=L(c,12);c=L(f,12)+g|0;g:{if(D[b+27|0]>=0){f=F[b+20>>2];F[c>>2]=F[b+16>>2];F[c+4>>2]=f;F[c+8>>2]=F[b+24>>2];break g}Ba(c,F[b+16>>2],F[b+20>>2]);e=F[d+4>>2];a=F[d>>2]}g=g+h|0;f=c+12|0;if((a|0)==(e|0)){break e}while(1){e=e-12|0;h=F[e+4>>2];c=c-12|0;F[c>>2]=F[e>>2];F[c+4>>2]=h;F[c+8>>2]=F[e+8>>2];F[e>>2]=0;F[e+4>>2]=0;F[e+8>>2]=0;if((a|0)!=(e|0)){continue}break}F[d+8>>2]=g;a=F[d+4>>2];F[d+4>>2]=f;e=F[d>>2];F[d>>2]=c;if((a|0)==(e|0)){break d}while(1){c=a-12|0;if(D[a-1|0]<0){ra(F[c>>2])}a=c;if((c|0)!=(e|0)){continue}break}break d}va();V()}wa(1336);V()}F[d+8>>2]=g;F[d+4>>2]=f;F[d>>2]=c}if(e){ra(e)}}c=F[b+4>>2];h:{if(!c){a=F[b+8>>2];if(F[a>>2]==(b|0)){break h}b=b+8|0;while(1){c=F[b>>2];b=c+8|0;a=F[c+8>>2];if((c|0)!=F[a>>2]){continue}break}break h}while(1){a=c;c=F[c>>2];if(c){continue}break}}if((a|0)==(j|0)){break a}c=F[d+4>>2];b=a;continue}}c=0;i:{if((i|0)<0){break i}a=F[d>>2];if((F[d+4>>2]-a|0)/12>>>0<=i>>>0){break i}a=a+L(i,12)|0;c=D[a+11|0]<0?F[a>>2]:a}return c|0}function Ud(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=ea-16|0;ea=k;F[k+8>>2]=c;e=F[a+12>>2];d=F[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=F[a+16>>2];d=F[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=ua(e,0,d)+d|0}F[a+12>>2]=d;break a}b:{c:{d:{h=F[a+8>>2];j=d-h>>2;e=j+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>2>>>0<536870911?e>>>0>l>>>0?e:l:1073741823;if(g){if(g>>>0>=1073741824){break d}i=sa(g<<2)}e=(j<<2)+i|0;j=f<<2;f=ua(e,0,j);j=f+j|0;g=(g<<2)+i|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=F[d>>2];F[d>>2]=0;e=e-4|0;F[e>>2]=f;if((d|0)!=(h|0)){continue}break}F[a+16>>2]=g;f=F[a+12>>2];F[a+12>>2]=j;d=F[a+8>>2];F[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=F[f>>2];F[f>>2]=0;if(e){Ja(e)}if((d|0)!=(f|0)){continue}break}break b}va();V()}wa(1336);V()}F[a+16>>2]=g;F[a+12>>2]=j;F[a+8>>2]=f}if(d){ra(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=F[e>>2];F[e>>2]=0;if(c){Ja(c)}if((d|0)!=(e|0)){continue}break}c=F[k+8>>2]}F[a+12>>2]=d}e:{f:{d=F[c+56>>2];g:{if((d|0)>4){break g}e=L(d,12)+a|0;d=F[e+24>>2];if((d|0)!=F[e+28>>2]){F[d>>2]=b;F[e+24>>2]=d+4;break g}f=F[e+20>>2];h=d-f|0;i=h>>2;d=i+1|0;if(d>>>0>=1073741824){break f}g=h>>1;g=i>>>0<536870911?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break e}d=sa(g<<2)}else{d=0}i=d+(i<<2)|0;F[i>>2]=b;if((h|0)>0){ta(d,f,h)}F[e+20>>2]=d;F[e+24>>2]=i+4;F[e+28>>2]=d+(g<<2);if(!f){break g}ra(f)}F[c+60>>2]=b;a=F[a+8>>2];F[k+8>>2]=0;b=a+(b<<2)|0;a=F[b>>2];F[b>>2]=c;if(a){Ja(a)}a=F[k+8>>2];F[k+8>>2]=0;if(a){Ja(a)}ea=k+16|0;return}va();V()}wa(1336);V()}function pg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=ea-16|0;ea=e;k=F[b+80>>2];n=G[c+24|0];b=n<<24>>24;f=L(k,b);a:{b:{c:{a=F[c+28>>2];d:{if(!(!((a|0)==1|(a|0)==2)|!G[c+84|0])){a=F[c+48>>2];c=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(f){if((f|0)<0){break c}g=sa(f);b=ta(g,a+c|0,f)+f|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=b;F[d>>2]=g;a=1;break d}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(b){if((b|0)<0){break c}g=sa(b);F[e>>2]=g;a=b+g|0;F[e+8>>2]=a;ua(g,0,b);F[e+4>>2]=a}a=F[d+4>>2];i=F[d>>2];j=a-i|0;e:{if(j>>>0>>0){l=f-j|0;m=F[d+8>>2];if(l>>>0<=m-a>>>0){if(l){a=ua(a,0,l)+l|0}F[d+4>>2]=a;break e}if((f|0)<0){break b}a=m-i|0;m=a<<1;a=a>>>0<1073741823?f>>>0>m>>>0?f:m:2147483647;if(a){h=sa(a)}ua(h+j|0,0,l);if((j|0)>0){ta(h,i,j)}F[d+8>>2]=a+h;F[d+4>>2]=f+h;F[d>>2]=h;if(!i){break e}ra(i);break e}if(f>>>0>=j>>>0){break e}F[d+4>>2]=f+i}f:{if(!k){b=0;break f}if(!b){a=0;b=1;while(1){if(!ic(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],g)){break f}a=a+1|0;b=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}break}break f}a=b-1|0;i=a&-2;j=a&1;a=0;b=1;h=0;while(1){f=F[e>>2];if(ic(c,G[c+84|0]?h:F[F[c+68>>2]+(h<<2)>>2],D[c+24|0],f)){D[F[d>>2]+a|0]=G[f|0];b=1;a=a+1|0;g=0;g:{h:{switch(n-1|0){default:while(1){D[F[d>>2]+a|0]=G[F[e>>2]+b|0];D[(F[d>>2]+a|0)+1|0]=G[(F[e>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;g=g+2|0;if((i|0)!=(g|0)){continue}break};break;case 0:break g;case 1:break h}}if(!j){break g}D[F[d>>2]+a|0]=G[F[e>>2]+b|0];a=a+1|0}h=h+1|0;b=k>>>0>h>>>0;if((h|0)!=(k|0)){continue}}break}g=F[e>>2]}if(g){ra(g)}a=!b}ea=e+16|0;a=a&1;break a}va();V()}va();V()}return a|0}function og(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=ea-16|0;ea=e;k=F[b+80>>2];n=G[c+24|0];b=n<<24>>24;f=L(k,b);a:{b:{c:{a=F[c+28>>2];d:{if(!(!((a|0)==1|(a|0)==2)|!G[c+84|0])){a=F[c+48>>2];c=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(f){if((f|0)<0){break c}g=sa(f);b=ta(g,a+c|0,f)+f|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=b;F[d>>2]=g;a=1;break d}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(b){if((b|0)<0){break c}g=sa(b);F[e>>2]=g;a=b+g|0;F[e+8>>2]=a;ua(g,0,b);F[e+4>>2]=a}a=F[d+4>>2];i=F[d>>2];j=a-i|0;e:{if(j>>>0>>0){l=f-j|0;m=F[d+8>>2];if(l>>>0<=m-a>>>0){if(l){a=ua(a,0,l)+l|0}F[d+4>>2]=a;break e}if((f|0)<0){break b}a=m-i|0;m=a<<1;a=a>>>0<1073741823?f>>>0>m>>>0?f:m:2147483647;if(a){h=sa(a)}ua(h+j|0,0,l);if((j|0)>0){ta(h,i,j)}F[d+8>>2]=a+h;F[d+4>>2]=f+h;F[d>>2]=h;if(!i){break e}ra(i);break e}if(f>>>0>=j>>>0){break e}F[d+4>>2]=f+i}f:{if(!k){b=0;break f}if(!b){a=0;b=1;while(1){if(!hc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],g)){break f}a=a+1|0;b=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}break}break f}a=b-1|0;i=a&-2;j=a&1;a=0;b=1;h=0;while(1){f=F[e>>2];if(hc(c,G[c+84|0]?h:F[F[c+68>>2]+(h<<2)>>2],D[c+24|0],f)){D[F[d>>2]+a|0]=G[f|0];b=1;a=a+1|0;g=0;g:{h:{switch(n-1|0){default:while(1){D[F[d>>2]+a|0]=G[F[e>>2]+b|0];D[(F[d>>2]+a|0)+1|0]=G[(F[e>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;g=g+2|0;if((i|0)!=(g|0)){continue}break};break;case 0:break g;case 1:break h}}if(!j){break g}D[F[d>>2]+a|0]=G[F[e>>2]+b|0];a=a+1|0}h=h+1|0;b=k>>>0>h>>>0;if((h|0)!=(k|0)){continue}}break}g=F[e>>2]}if(g){ra(g)}a=!b}ea=e+16|0;a=a&1;break a}va();V()}va();V()}return a|0}function bd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=ea-16|0;ea=i;F[i>>2]=b;g=-1;a:{if((b|0)==-1){F[i+4>>2]=-1;break a}c=b+1|0;F[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}F[i+8>>2]=g;m=(b|0)==-1?-1:(b>>>0)/3|0;b:{c:{d:{e:{while(1){f:{g:{if((b|0)!=-1){c=F[F[F[a+8>>2]+12>>2]+(b<<2)>>2];if((c|0)!=-1){break g}}g=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break f}while(1){f=L(g,144)+c|0;c=F[f+136>>2];d=F[f+140>>2];h:{if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break h}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break e}k=e<<2;d=d-h|0;e=d>>1;d=d>>2>>>0<536870911?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break d}c=sa(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break h}ra(h)}g=g+1|0;c=F[a+216>>2];if(g>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}g=0;if(F[a+220>>2]==F[a+216>>2]){break f}while(1){i:{if(!Ga(F[a+368>>2]+(g<<4)|0)){break i}f=F[a+216>>2]+L(g,144)|0;c=F[f+136>>2];d=F[f+140>>2];if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break i}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break c}k=e<<2;d=d-h|0;e=d>>1;d=d>>2>>>0<536870911?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break b}c=sa(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break i}ra(h)}g=g+1|0;if(g>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){b=F[(l<<2)+i>>2];continue}break}ea=i+16|0;return 1}va();V()}wa(1336);V()}va();V()}wa(1336);V()}function cd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ea-16|0;ea=i;F[i>>2]=b;g=-1;a:{if((b|0)==-1){F[i+4>>2]=-1;break a}c=b+1|0;F[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}F[i+8>>2]=g;b:{c:{while(1){d:{if(!((b|0)==-1|F[F[F[a+8>>2]+12>>2]+(b<<2)>>2]==-1)){g=0;if(F[a+220>>2]==F[a+216>>2]){break d}e:{while(1){f:{g:{if(!Ga(F[a+368>>2]+(g<<4)|0)){break g}f=F[a+216>>2]+L(g,144)|0;c=F[f+136>>2];d=F[f+140>>2];if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break g}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break f}k=e<<2;d=d-h|0;e=d>>1;d=d>>2>>>0<536870911?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break e}c=sa(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break g}ra(h)}g=g+1|0;if(g>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break d}break}va();V()}wa(1336);V()}g=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break d}while(1){f=L(g,144)+c|0;c=F[f+136>>2];d=F[f+140>>2];h:{if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break h}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break c}k=e<<2;d=d-h|0;e=d>>1;d=d>>2>>>0<536870911?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break b}c=sa(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break h}ra(h)}g=g+1|0;c=F[a+216>>2];if(g>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){b=F[(l<<2)+i>>2];continue}break}ea=i+16|0;return 1}va();V()}wa(1336);V()}function Zc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=F[a+8>>2];g=F[a+4>>2];if((e-g|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=g;e=L(b,12)-12|0;f=((e>>>0)/12|0)+1&3;if(f){while(1){j=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=j;F[d+8>>2]=F[c+8>>2];d=d+12|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}g=L(b,12)+g|0;if(e>>>0<36){break a}while(1){b=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=b;F[d+8>>2]=F[c+8>>2];F[d+20>>2]=F[c+8>>2];b=F[c+4>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=b;F[d+32>>2]=F[c+8>>2];b=F[c+4>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=b;b=F[c+4>>2];F[d+36>>2]=F[c>>2];F[d+40>>2]=b;F[d+44>>2]=F[c+8>>2];d=d+48|0;if((g|0)!=(d|0)){continue}break}}F[a+4>>2]=g;return}b:{f=F[a>>2];i=(g-f|0)/12|0;d=i+b|0;if(d>>>0<357913942){e=(e-f|0)/12|0;f=e<<1;f=e>>>0<178956970?d>>>0>f>>>0?d:f:357913941;if(f){if(f>>>0>=357913942){break b}j=sa(L(f,12))}e=L(i,12)+j|0;d=e;b=L(b,12);i=b-12|0;k=((i>>>0)/12|0)+1&3;if(k){d=e;while(1){l=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=l;F[d+8>>2]=F[c+8>>2];d=d+12|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}h=b+e|0;if(i>>>0>=36){while(1){b=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=b;F[d+8>>2]=F[c+8>>2];F[d+20>>2]=F[c+8>>2];b=F[c+4>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=b;F[d+32>>2]=F[c+8>>2];b=F[c+4>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=b;b=F[c+4>>2];F[d+36>>2]=F[c>>2];F[d+40>>2]=b;F[d+44>>2]=F[c+8>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}b=F[a>>2];c=g-b|0;d=e+L((c|0)/-12|0,12)|0;if((c|0)>0){ta(d,b,c)}F[a+8>>2]=L(f,12)+j;F[a+4>>2]=h;F[a>>2]=d;if(b){ra(b)}return}va();V()}wa(1336);V()}function rg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=0;h=ea-16|0;ea=h;k=F[b+80>>2];e=D[c+24|0];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;a:{b:{if(e){if((e|0)<0){break b}b=e<<2;a=sa(b);F[h>>2]=a;g=a+b|0;F[h+8>>2]=g;i=b-4|0;l=(i>>>2|0)+1&7;c:{if(!l){b=a;break c}b=a;while(1){F[b>>2]=-1073741824;b=b+4|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}if(i>>>0>=28){while(1){F[b+24>>2]=-1073741824;F[b+28>>2]=-1073741824;F[b+16>>2]=-1073741824;F[b+20>>2]=-1073741824;F[b+8>>2]=-1073741824;F[b+12>>2]=-1073741824;F[b>>2]=-1073741824;F[b+4>>2]=-1073741824;b=b+32|0;if((g|0)!=(b|0)){continue}break}}F[h+4>>2]=g}b=L(e,k);g=F[d>>2];f=F[d+4>>2]-g>>2;d:{if(b>>>0>f>>>0){Aa(d,b-f|0);break d}if(b>>>0>=f>>>0){break d}F[d+4>>2]=g+(b<<2)}e:{if(!k){break e}j=1;if((e|0)<=0){b=0;while(1){if(!Wa(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],a)){break e}b=b+1|0;j=k>>>0>b>>>0;if((b|0)!=(k|0)){continue}break}break e}p=e&-4;l=e&3;f=0;q=e-1>>>0<3;while(1){if(Wa(c,G[c+84|0]?m:F[F[c+68>>2]+(m<<2)>>2],D[c+24|0],a)){o=F[d>>2];n=0;e=F[h>>2];b=0;j=0;if(!q){while(1){g=o+(f<<2)|0;i=b<<2;J[g>>2]=J[i+e>>2];J[g+4>>2]=J[(i|4)+e>>2];J[g+8>>2]=J[(i|8)+e>>2];J[g+12>>2]=J[(i|12)+e>>2];b=b+4|0;f=f+4|0;j=j+4|0;if((p|0)!=(j|0)){continue}break}}if(l){while(1){J[o+(f<<2)>>2]=J[(b<<2)+e>>2];b=b+1|0;f=f+1|0;n=n+1|0;if((l|0)!=(n|0)){continue}break}}m=m+1|0;j=m>>>0>>0;if((k|0)!=(m|0)){continue}}break}a=F[h>>2]}if(a){ra(a)}ea=h+16|0;a=(j^-1)&1;break a}va();V()}return a|0}function pc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=F[b+16>>2];g=F[c+4>>2]-k|0;e=g;f=F[c>>2]-k|0;F[c>>2]=f;F[c+4>>2]=e;j=F[b+16>>2];e=e>>31;h=e+g^e;e=f>>31;l=(j|0)>=(h+(e+f^e)|0);a:{if(l){e=g;break a}b:{c:{if((f|0)>=0){i=1;h=1;if((g|0)>=0){break b}e=1;i=-1;h=-1;if(f){break c}break b}e=-1;i=-1;h=-1;if((g|0)<=0){break b}}i=(g|0)<=0?-1:1;h=e}e=f<<1;f=L(h,j);e=e-f|0;h=(L(i,h)|0)>=0;i=L(i,j);e=((h?0-e|0:e)+i|0)/2|0;F[c+4>>2]=e;j=f;f=(g<<1)-i|0;f=(j+(h?0-f|0:f)|0)/2|0;F[c>>2]=f}d:{e:{f:{g:{h:{i:{j:{if(f){if((f|0)<0){break j}if((e|0)>=0){break i}break f}if(e){break h}i=1;g=0;e=0;h=0;break d}i=1;if((e|0)>0){break g}h=(e|0)>0?253:0;g=e;e=f;break d}g=0-e|0;e=0-f|0;h=254;break e}if((e|0)<=0){break f}}e=0-e|0;g=f;h=253;break e}g=0-f|0;h=255}F[c>>2]=e;F[c+4>>2]=g;i=0}c=F[d+4>>2]+g|0;f=F[d>>2]+e|0;g=F[b+16>>2];k:{if((f|0)>(g|0)){f=f-F[b+4>>2]|0;break k}if((0-g|0)<=(f|0)){break k}f=F[b+4>>2]+f|0}l:{if((c|0)>(g|0)){c=c-F[b+4>>2]|0;break l}if((0-g|0)<=(c|0)){break l}c=F[b+4>>2]+c|0}m:{if(i){b=c;break m}b=c;n:{switch((h&3)-1|0){case 0:b=0-f|0;f=c;break m;case 1:b=0-c|0;f=0-f|0;break m;case 2:break n;default:break m}}b=f;f=0-c|0}o:{if(l){c=b;break o}p:{q:{if((f|0)>=0){c=1;e=1;if((b|0)>=0){break p}d=1;c=-1;e=-1;if(f){break q}break p}d=-1;c=-1;e=-1;if((b|0)<=0){break p}}c=(b|0)<=0?-1:1;e=d}d=f<<1;f=L(e,g);d=d-f|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(c,e)|0)>=0;e=L(c,g);c=((d?j:h)+e|0)/2|0;b=(b<<1)-e|0;f=(f+(d?0-b|0:b)|0)/2|0}F[a>>2]=f+k;F[a+4>>2]=c+k}function le(a,b){var c=0,d=0,e=0,f=0;if(!F[a+64>>2]){c=sa(32);F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=F[a+64>>2];F[a+64>>2]=c;if(d){c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}ra(d);c=F[a+64>>2]}F[a>>2]=c;d=F[c+20>>2];F[a+8>>2]=F[c+16>>2];F[a+12>>2]=d;d=F[c+24>>2];c=F[c+28>>2];F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+16>>2]=d;F[a+20>>2]=c}a:{D[a+24|0]=G[b+24|0];F[a+28>>2]=F[b+28>>2];D[a+32|0]=G[b+32|0];c=F[b+44>>2];F[a+40>>2]=F[b+40>>2];F[a+44>>2]=c;c=F[b+52>>2];F[a+48>>2]=F[b+48>>2];F[a+52>>2]=c;F[a+56>>2]=F[b+56>>2];c=F[b+12>>2];F[a+8>>2]=F[b+8>>2];F[a+12>>2]=c;c=F[b+20>>2];F[a+16>>2]=F[b+16>>2];F[a+20>>2]=c;F[a+60>>2]=F[b+60>>2];d=F[b>>2];b:{if(!d){F[a>>2]=0;c=1;break b}e=F[a>>2];c=0;if(!e){break b}c=F[d>>2];qe(e,c,F[d+4>>2]-c|0,0);c=1}c:{if(!c){break c}D[a+84|0]=G[b+84|0];F[a+80>>2]=F[b+80>>2];if((a|0)!=(b|0)){Cb(a+68|0,F[b+68>>2],F[b+72>>2])}d=F[b+88>>2];d:{if(d){b=sa(40);c=F[d>>2];F[b+16>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b>>2]=c;e=F[d+12>>2]-F[d+8>>2]|0;if(e){if((e|0)<0){break a}c=sa(e);F[b+8>>2]=c;F[b+12>>2]=c;F[b+16>>2]=c+e;f=F[d+8>>2];e=F[d+12>>2]-f|0;if((e|0)>0){c=ta(c,f,e)+e|0}F[b+12>>2]=c}c=F[d+36>>2];F[b+32>>2]=F[d+32>>2];F[b+36>>2]=c;c=F[d+28>>2];F[b+24>>2]=F[d+24>>2];F[b+28>>2]=c;c=F[a+88>>2];F[a+88>>2]=b;if(c){break d}break c}c=F[a+88>>2];F[a+88>>2]=0;if(!c){break c}}a=F[c+8>>2];if(a){F[c+12>>2]=a;ra(a)}ra(c)}return}va();V()}function Yb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=d-c|0;if((h|0)<=0){return}a:{f=F[a+8>>2];i=F[a+4>>2];if((h|0)<=(f-i|0)){j=i-b|0;if((j|0)>=(h|0)){g=i;f=d;break a}g=i;f=c+j|0;if((f|0)!=(d|0)){e=f;while(1){D[g|0]=G[e|0];g=g+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=g;if((j|0)>0){break a}return}e=F[a>>2];d=h+(i-e|0)|0;if((d|0)>=0){g=b-e|0;f=f-e|0;j=f<<1;f=f>>>0<1073741823?d>>>0>j>>>0?d:j:2147483647;if(f){d=sa(f)}else{d=0}c=ta(g+d|0,c,h);if((g|0)>0){ta(d,e,g)}c=c+h|0;if((b|0)!=(i|0)){g=(b^-1)+i|0;h=i-b&7;if(h){e=0;while(1){D[c|0]=G[b|0];c=c+1|0;b=b+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if(g>>>0>=7){while(1){D[c|0]=G[b|0];D[c+1|0]=G[b+1|0];D[c+2|0]=G[b+2|0];D[c+3|0]=G[b+3|0];D[c+4|0]=G[b+4|0];D[c+5|0]=G[b+5|0];D[c+6|0]=G[b+6|0];D[c+7|0]=G[b+7|0];c=c+8|0;b=b+8|0;if((i|0)!=(b|0)){continue}break}}e=F[a>>2]}F[a+8>>2]=d+f;F[a+4>>2]=c;F[a>>2]=d;if(e){ra(e)}return}va();V()}e=g;d=e-h|0;if(i>>>0>d>>>0){while(1){D[e|0]=G[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}F[a+4>>2]=e;a=g-(b+h|0)|0;if(a){Ua(g-a|0,b,a)}if((c|0)==(f|0)){return}a=(c^-1)+f|0;g=f-c&7;b:{if(!g){e=b;break b}d=0;e=b;while(1){D[e|0]=G[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){D[e|0]=G[c|0];D[e+1|0]=G[c+1|0];D[e+2|0]=G[c+2|0];D[e+3|0]=G[c+3|0];D[e+4|0]=G[c+4|0];D[e+5|0]=G[c+5|0];D[e+6|0]=G[c+6|0];D[e+7|0]=G[c+7|0];e=e+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}function lg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=ea-16|0;ea=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!((b|0)==5|(b|0)==6)|!G[c+84|0])){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=sa(a);b=ta(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=sa(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;ua(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>2;d:{if(b>>>0>>0){Aa(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!dc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(dc(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;F[k>>2]=F[g+l>>2];F[k+4>>2]=F[g+(l|4)>>2];F[k+8>>2]=F[g+(l|8)>>2];F[k+12>>2]=F[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){F[(j<<2)+o>>2]=F[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){ra(h)}a=b^1}ea=e+16|0;a=a&1;break a}va();V()}return a|0}function ee(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=ea-16|0;ea=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!((b|0)==5|(b|0)==6)|!G[c+84|0])){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=sa(a);b=ta(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=sa(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;ua(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>2;d:{if(b>>>0>>0){Aa(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!ec(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(ec(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;F[k>>2]=F[g+l>>2];F[k+4>>2]=F[g+(l|4)>>2];F[k+8>>2]=F[g+(l|8)>>2];F[k+12>>2]=F[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){F[(j<<2)+o>>2]=F[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){ra(h)}a=b^1}ea=e+16|0;a=a&1;break a}va();V()}return a|0}function ng(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=ea-16|0;ea=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!((b|0)==3|(b|0)==4)|!G[c+84|0])){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=sa(a);b=ta(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=sa(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;ua(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>1;d:{if(b>>>0>>0){ne(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!gc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(gc(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;E[k>>1]=H[g+l>>1];E[k+2>>1]=H[g+(l|2)>>1];E[k+4>>1]=H[g+(l|4)>>1];E[k+6>>1]=H[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){E[(j<<1)+o>>1]=H[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){ra(h)}a=b^1}ea=e+16|0;a=a&1;break a}va();V()}return a|0}function mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=ea-16|0;ea=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!((b|0)==3|(b|0)==4)|!G[c+84|0])){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=sa(a);b=ta(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=sa(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;ua(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>1;d:{if(b>>>0>>0){ne(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!fc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(fc(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;E[k>>1]=H[g+l>>1];E[k+2>>1]=H[g+(l|2)>>1];E[k+4>>1]=H[g+(l|4)>>1];E[k+6>>1]=H[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){E[(j<<1)+o>>1]=H[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){ra(h)}a=b^1}ea=e+16|0;a=a&1;break a}va();V()}return a|0}function Yi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;F[a+8>>2]=e;f=a+32|0;i=F[f>>2];h=F[a+36>>2]-i>>2;a:{if(h>>>0>>0){Aa(f,e-h|0);i=F[f>>2];f=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}f=e}h=0;g=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(g),0,g);b:{if((f|0)<=0){break b}while(1){f=h<<2;g=F[f+m>>2];j=F[a+16>>2];c:{if((g|0)>(j|0)){F[f+i>>2]=j;break c}f=f+i|0;j=F[a+12>>2];if((j|0)>(g|0)){F[f>>2]=j;break c}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}if((f|0)<=0){break b}h=0;while(1){g=h<<2;f=g+c|0;g=F[b+g>>2]+F[g+i>>2]|0;F[f>>2]=g;d:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}g=g+F[a+20>>2]|0}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}if(!((d|0)<=(e|0)|(f|0)<=0)){o=0-e<<2;i=e;while(1){e:{if((f|0)<=0){break e}l=i<<2;n=l+c|0;p=n+o|0;j=F[a+32>>2];h=0;while(1){f=h<<2;g=F[f+p>>2];k=F[a+16>>2];f:{if((g|0)>(k|0)){F[f+j>>2]=k;break f}f=f+j|0;k=F[a+12>>2];if((k|0)>(g|0)){F[f>>2]=k;break f}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}h=0;if((f|0)<=0){break e}l=b+l|0;while(1){g=h<<2;f=g+n|0;g=F[g+l>>2]+F[g+j>>2]|0;F[f>>2]=g;g:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break g}g=g+F[a+20>>2]|0}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}i=e+i|0;if((i|0)<(d|0)){continue}break}}ra(m);return 1}function Te(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ea-32|0;ea=i;F[i+28>>2]=0;a:{b:{if(H[b+38>>1]<=513){c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=F[b+12>>2];if((e|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(e|0)){break a}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;break b}if(!Pb(1,i+28|0,b)){break a}d=F[i+28>>2]}if(!d){break a}Ob(a+76|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c:{if(!xa(c,b)){break c}e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^j;if(e&1){f=F[g>>2]&(f^-1)}else{f=f|F[g>>2]}e=e^1;F[g>>2]=f;h=h+1|0;if((h|0)!=(d|0)){continue}break}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;f=F[b+16>>2];j=f+4|0;c=j>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break c}c=j+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break c}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break c}h=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break c}F[a+24>>2]=c-1}}ea=i+32|0;return h|0}function Xc(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;a:{if((b|0)==-1){break a}c=b+1|0;d=(c>>>0)%3|0?c:b-2|0;f=b-1|0;if((b>>>0)%3|0){break a}f=b+2|0}b:{c:{d:{e:{f:{g:{e=F[a+184>>2];switch(e|0){case 7:break d;case 3:break e;case 5:break f;case 0:case 1:break g;default:break b}}g=F[a+148>>2];c=-1;e=1;d=((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:c)<<2;c=F[a+156>>2];d=d+c|0;F[d>>2]=F[d>>2]+1;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+1;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+1;e=2;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+1;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+2;e=1;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+2;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+2;e=2;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0}F[c>>2]=F[c>>2]+e;e=F[a+184>>2]}h:{switch(e|0){case 0:case 5:f=F[a+156>>2];c=-1;i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;c=-1;if((b|0)==-1){break i}c=F[F[F[a+148>>2]>>2]+(b<<2)>>2]}if(F[f+(c<<2)>>2]<=5){F[a+188>>2]=5;return}F[a+188>>2]=0;return;default:break h}}F[a+188>>2]=-1}function we(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;F[a>>2]=11512;e=a+232|0;b=F[e+196>>2];if(b){F[e+200>>2]=b;ra(b)}c=F[e+184>>2];if(c){b=F[e+188>>2];if((c|0)==(b|0)){b=c}else{while(1){d=b-12|0;f=F[d>>2];if(f){F[b-8>>2]=f;ra(f)}b=d;if((c|0)!=(b|0)){continue}break}b=F[e+184>>2]}F[e+188>>2]=c;ra(b)}b=F[e+156>>2];if(b){F[e+160>>2]=b;ra(b)}c=F[e+136>>2];F[e+136>>2]=0;if(c){d=c-4|0;b=F[d>>2];if(b){b=c+(b<<4)|0;while(1){b=b-16|0;if((c|0)!=(b|0)){continue}break}}ra(d)}c=F[a+216>>2];if(c){b=F[a+220>>2];if((c|0)==(b|0)){b=c}else{while(1){d=F[b-12>>2];if(d){F[b-8>>2]=d;ra(d)}d=F[b-28>>2];if(d){F[b-24>>2]=d;ra(d)}d=F[b-40>>2];if(d){F[b-36>>2]=d;ra(d)}Fb(b-140|0);b=b-144|0;if((c|0)!=(b|0)){continue}break}b=F[a+216>>2]}F[a+220>>2]=c;ra(b)}b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}b=F[a+144>>2];if(b){while(1){c=F[b>>2];ra(b);b=c;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){ab(b)}return a|0}function Re(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=ea-16|0;ea=j;c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=F[b+12>>2];a:{if((e|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(e|0)){break a}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;if((d|0)<0){break a}Ob(a+76|0,d);c=j;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;b:{if(!xa(c,b)){break b}if(d){e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^i;if(e&1){f=F[g>>2]&(f^-1)}else{f=f|F[g>>2]}e=e^1;F[g>>2]=f;h=h+1|0;if((d|0)!=(h|0)){continue}break}}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;f=F[b+16>>2];i=f+4|0;c=i>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break b}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break b}c=i+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break b}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break b}h=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break b}F[a+24>>2]=c-1}}ea=j+16|0;return h|0}function Wc(a,b){var c=0,d=0,e=0,f=0,g=0;f=-1;d=-1;a:{if((b|0)==-1){break a}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}b:{c:{d:{switch(F[a+168>>2]){case 0:case 1:e=F[a+148>>2];c=1;b=F[a+156>>2];g=b+(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)|0;F[g>>2]=F[g>>2]+1;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+1;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+1;c=2;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 3:e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+1;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+2;c=1;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 7:break d;default:break b}}e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+2;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+2;c=2;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0}F[b>>2]=F[b>>2]+c}c=a;d=F[a+180>>2];b=F[F[a+156>>2]+(((f|0)!=-1?F[F[F[a+148>>2]>>2]+(f<<2)>>2]:-1)<<2)>>2];a=F[a+176>>2];F[c+172>>2]=(a|0)>(b|0)?0:((b|0)>(d|0)?d:b)-a|0}function Jc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=F[a+8>>2];e=F[a>>2];if(d-e>>2>>>0>=b>>>0){g=F[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){F[d>>2]=F[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){d=a;a=b-h|0;if(a){a=(a<<2)+g|0;while(1){F[g>>2]=F[c>>2];g=g+4|0;if((a|0)!=(g|0)){continue}break}}else{a=g}F[d+4>>2]=a;return}F[a+4>>2]=e+(b<<2);return}if(e){F[a+4>>2]=e;ra(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>2>>>0<536870911?b>>>0>e>>>0?b:e:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=sa(d);F[a>>2]=e;F[a+8>>2]=d+e;c=F[c>>2];d=e;b=b<<2;g=b-4|0;h=(g>>>2|0)+1&7;if(h){while(1){F[d>>2]=c;d=d+4|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}b=b+e|0;if(g>>>0>=28){while(1){F[d+28>>2]=c;F[d+24>>2]=c;F[d+20>>2]=c;F[d+16>>2]=c;F[d+12>>2]=c;F[d+8>>2]=c;F[d+4>>2]=c;F[d>>2]=c;d=d+32|0;if((b|0)!=(d|0)){continue}break}}F[a+4>>2]=b;return}va();V()}function xh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b=F[a+32>>2];f=F[b+8>>2];g=F[b+12>>2];d=F[b+20>>2];h=f;f=F[b+16>>2];e=0;b:{if((g|0)<=(d|0)&h>>>0<=f>>>0|(d|0)>(g|0)){break b}h=G[f+F[b>>2]|0];g=f+1|0;d=g?d:d+1|0;F[b+16>>2]=g;F[b+20>>2]=d;c:{if(!h){break c}while(1){if(ga[F[F[a>>2]+16>>2]](a,c)|0){c=c+1|0;if((h|0)!=(c|0)){continue}break c}break}return 0}c=F[a+8>>2];d=F[a+12>>2];if((c|0)!=(d|0)){while(1){b=F[c>>2];if(!(ga[F[F[b>>2]+8>>2]](b,a,F[a+4>>2])|0)){break a}c=c+4|0;if((d|0)!=(c|0)){continue}break}}d:{if(!h){break d}c=0;while(1){b=F[F[a+8>>2]+(c<<2)>>2];if(!(ga[F[F[b>>2]+12>>2]](b,F[a+32>>2])|0)){break a}c=c+1|0;if((h|0)!=(c|0)){continue}break}if(!h){break d}f=a+20|0;while(1){c=0;g=i<<2;b=F[g+F[a+8>>2]>>2];d=ga[F[F[b>>2]+24>>2]](b)|0;if((d|0)>0){while(1){b=F[F[a+8>>2]+g>>2];k=ga[F[F[b>>2]+20>>2]](b,c)|0;e=F[a+20>>2];j=F[a+24>>2]-e>>2;e:{if(k>>>0>>0){break e}b=k+1|0;if(b>>>0>j>>>0){Aa(f,b-j|0);e=F[f>>2];break e}if(b>>>0>=j>>>0){break e}F[a+24>>2]=(b<<2)+e}F[(k<<2)+e>>2]=i;c=c+1|0;if((d|0)!=(c|0)){continue}break}}i=i+1|0;if((h|0)!=(i|0)){continue}break}}e=0;if(!(ga[F[F[a>>2]+28>>2]](a)|0)){break b}e=ga[F[F[a>>2]+32>>2]](a)|0}return e|0}return 0}function Qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;Ud(a,b,c);c=F[a+84>>2];d=F[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=F[a+92>>2];c=F[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=(d<<2)-4|0;g=(f>>>2|0)+1&7;if(g){while(1){F[b>>2]=1;b=b+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}c=(d<<2)+c|0;if(f>>>0<28){break c}while(1){F[b+24>>2]=1;F[b+28>>2]=1;F[b+16>>2]=1;F[b+20>>2]=1;F[b+8>>2]=1;F[b+12>>2]=1;F[b>>2]=1;F[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}F[a+88>>2]=c;break b}d:{f=F[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;i=e>>1;e=e>>2>>>0<536870911?b>>>0>i>>>0?b:i:1073741823;if(e){if(e>>>0>=1073741824){break d}g=sa(e<<2)}c=(c<<2)+g|0;b=c;d=d<<2;i=d-4|0;k=(i>>>2|0)+1&7;if(k){b=c;while(1){F[b>>2]=1;b=b+4|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}c=c+d|0;if(i>>>0>=28){while(1){F[b+24>>2]=1;F[b+28>>2]=1;F[b+16>>2]=1;F[b+20>>2]=1;F[b+8>>2]=1;F[b+12>>2]=1;F[b>>2]=1;F[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){ta(g,f,j)}F[a+92>>2]=(e<<2)+g;F[a+88>>2]=c;F[a+84>>2]=g;if(f){ra(f)}break b}va();V()}wa(1336);V()}return}if(b>>>0>=d>>>0){break a}F[a+88>>2]=c+(b<<2)}}function xa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ea-16|0;ea=i;e=F[b+20>>2];c=F[b+12>>2];f=F[b+16>>2];a:{if((e|0)>=(c|0)&f>>>0>=I[b+8>>2]|(c|0)<(e|0)){break a}D[a+12|0]=G[f+F[b>>2]|0];e=F[b+20>>2];c=e;f=F[b+16>>2];d=f+1|0;e=d?c:c+1|0;h=d;F[b+16>>2]=d;F[b+20>>2]=e;b:{if(H[b+38>>1]<=513){g=F[b+12>>2];e=c;c=f+5|0;e=c>>>0<5?e+1|0:e;d=F[b+8>>2];f=c;if(d>>>0>>0&(e|0)>=(g|0)|(e|0)>(g|0)){break a}c=h+F[b>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;break b}if(!Ke(1,i+12|0,b)){break a}f=F[b+16>>2];e=F[b+20>>2];d=F[b+8>>2];g=F[b+12>>2];c=F[i+12>>2]}h=d-f|0;d=g-(e+(d>>>0>>0)|0)|0;if((d|0)<=0&c>>>0>h>>>0|(d|0)<0|(c|0)<=0){break a}d=f+F[b>>2]|0;F[a>>2]=d;k=a;g=c-1|0;h=g+d|0;j=G[h|0];c:{if(j>>>0<=63){F[a+4>>2]=g;a=G[h|0]&63;break c}d:{switch((j>>>6|0)-1|0){case 0:if(c>>>0<2){break a}F[a+4>>2]=c-2;d=(c+d|0)-2|0;a=G[d+1|0]<<8&16128|G[d|0];break c;case 1:break d;default:break a}}if(c>>>0<3){break a}F[a+4>>2]=c-3;d=(c+d|0)-3|0;a=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0]}a=a+4096|0;F[k+8>>2]=a;if(a>>>0>1048575){break a}a=c+f|0;e=a>>>0>>0?e+1|0:e;F[b+16>>2]=a;F[b+20>>2]=e;l=1}ea=i+16|0;return l}function Ge(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=ea-16|0;ea=h;a:{b:{if(H[b+38>>1]<=511){g=F[b+12>>2];i=g;c=F[b+20>>2];d=F[b+16>>2];f=d+8|0;c=f>>>0<8?c+1|0:c;e=F[b+8>>2];if(e>>>0>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break a}d=d+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=G[d+4|0]|G[d+5|0]<<8|(G[d+6|0]<<16|G[d+7|0]<<24);F[b+16>>2]=f;F[b+20>>2]=c;break b}if(!bb(1,h+8|0,b)){break a}f=F[b+16>>2];c=F[b+20>>2];e=F[b+8>>2];i=F[b+12>>2];g=F[h+8>>2];d=F[h+12>>2]}j=e-f|0;e=i-(c+(f>>>0>e>>>0)|0)|0;if((e|0)==(d|0)&g>>>0>j>>>0|d>>>0>e>>>0){break a}c=c+d|0;e=f+g|0;c=e>>>0>>0?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;c=g;if((c|0)<=0){break a}b=f+F[b>>2]|0;F[a+40>>2]=b;i=a;f=c-1|0;g=b+f|0;e=G[g|0];c:{if(e>>>0<=63){F[a+44>>2]=f;a=G[g|0]&63;break c}d:{switch((e>>>6|0)-1|0){case 0:if(c>>>0<2){break a}F[a+44>>2]=c-2;b=(b+c|0)-2|0;a=G[b+1|0]<<8&16128|G[b|0];break c;case 1:if(c>>>0<3){break a}F[a+44>>2]=c-3;b=(b+c|0)-3|0;a=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break c;default:break d}}F[a+44>>2]=c-4;b=(b+c|0)-4|0;a=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}a=a+16384|0;F[i+48>>2]=a;k=a>>>0<4194304}ea=h+16|0;return k}function Ia(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=F[a+8>>2];e=F[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=(b<<2)-4|0;h=(g>>>2|0)+1&7;if(h){while(1){F[d>>2]=F[c>>2];d=d+4|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}e=(b<<2)+e|0;if(g>>>0<28){break a}while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=e;return}b:{g=F[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;j=f>>1;f=f>>2>>>0<536870911?d>>>0>j>>>0?d:j:1073741823;if(f){if(f>>>0>=1073741824){break b}h=sa(f<<2)}e=(e<<2)+h|0;d=e;b=b<<2;j=b-4|0;l=(j>>>2|0)+1&7;if(l){d=e;while(1){F[d>>2]=F[c>>2];d=d+4|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}b=b+e|0;if(j>>>0>=28){while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;if((b|0)!=(d|0)){continue}break}}if((k|0)>0){ta(h,g,k)}F[a+8>>2]=(f<<2)+h;F[a+4>>2]=b;F[a>>2]=h;if(g){ra(g)}return}va();V()}wa(1336);V()}function ta(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){$(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){D[c|0]=G[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){F[c>>2]=F[b>>2];F[c+4>>2]=F[b+4>>2];F[c+8>>2]=F[b+8>>2];F[c+12>>2]=F[b+12>>2];F[c+16>>2]=F[b+16>>2];F[c+20>>2]=F[b+20>>2];F[c+24>>2]=F[b+24>>2];F[c+28>>2]=F[b+28>>2];F[c+32>>2]=F[b+32>>2];F[c+36>>2]=F[b+36>>2];F[c+40>>2]=F[b+40>>2];F[c+44>>2]=F[b+44>>2];F[c+48>>2]=F[b+48>>2];F[c+52>>2]=F[b+52>>2];F[c+56>>2]=F[b+56>>2];F[c+60>>2]=F[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){F[c>>2]=F[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){D[c|0]=G[b|0];D[c+1|0]=G[b+1|0];D[c+2|0]=G[b+2|0];D[c+3|0]=G[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){D[c|0]=G[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function xe(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11464;b=F[a+388>>2];if(b){F[a+392>>2]=b;ra(b)}e=F[a+368>>2];F[a+368>>2]=0;if(e){d=e-4|0;b=F[d>>2];if(b){c=(b<<4)+e|0;while(1){c=c-16|0;if((e|0)!=(c|0)){continue}break}}ra(d)}d=F[a+216>>2];if(d){c=F[a+220>>2];if((d|0)==(c|0)){b=d}else{while(1){b=F[c-12>>2];if(b){F[c-8>>2]=b;ra(b)}b=F[c-28>>2];if(b){F[c-24>>2]=b;ra(b)}b=F[c-40>>2];if(b){F[c-36>>2]=b;ra(b)}Fb(c-140|0);c=c-144|0;if((d|0)!=(c|0)){continue}break}b=F[a+216>>2]}F[a+220>>2]=d;ra(b)}b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}c=F[a+144>>2];if(c){while(1){b=F[c>>2];ra(c);c=b;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){ab(b)}return a|0}function wb(a,b){var c=0,d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;c=a+16|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+48>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+68>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+88>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+100>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;g=a+116|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+104>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=1;break a}c=b<<2;e=sa(c);F[a+92>>2]=e;f=c+e|0;F[a+100>>2]=f;ua(e,0,c);F[a+112>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;F[a+96>>2]=f;e=sa(c);F[a+104>>2]=e;f=c+e|0;F[a+112>>2]=f;ua(e,0,c);F[a+108>>2]=f;e=sa(c);F[d>>2]=e;f=c+e|0;F[d+8>>2]=f;ua(e,0,c);F[d+4>>2]=f;c=b<<5|1}vb(g,c,d);e=F[d>>2];if(e){F[d+4>>2]=e;ra(e)}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(b){b=b<<2;e=sa(b);F[d>>2]=e;f=b+e|0;F[d+8>>2]=f;ua(e,0,b);F[d+4>>2]=f}vb(a+128|0,c,d);b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}ea=d+16|0;return a}function ye(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11412;e=F[a+368>>2];F[a+368>>2]=0;if(e){d=e-4|0;b=F[d>>2];if(b){c=(b<<4)+e|0;while(1){c=c-16|0;if((e|0)!=(c|0)){continue}break}}ra(d)}d=F[a+216>>2];if(d){c=F[a+220>>2];if((d|0)==(c|0)){b=d}else{while(1){b=F[c-12>>2];if(b){F[c-8>>2]=b;ra(b)}b=F[c-28>>2];if(b){F[c-24>>2]=b;ra(b)}b=F[c-40>>2];if(b){F[c-36>>2]=b;ra(b)}Fb(c-140|0);c=c-144|0;if((d|0)!=(c|0)){continue}break}b=F[a+216>>2]}F[a+220>>2]=d;ra(b)}b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}c=F[a+144>>2];if(c){while(1){b=F[c>>2];ra(c);c=b;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){ab(b)}return a|0}function Hj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=O(d)-O(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;fa=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>Kj(d)|0;fa=0;break a}if(!(g-1&g)){break f}h=(O(g)+33|0)-O(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;fa=0;break a}c=O(d)-O(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=Kj(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<>>d}fa=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;j=b>>>f|0}else{c=b>>>f|0;j=((1<>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<>>32-e|b<>>31;f=f<<1|j>>>31;i=l-(f+(c>>>0>e>>>0)|0)>>31;k=g&i;j=c-k|0;f=f-((d&i)+(c>>>0>>0)|0)|0;b=b<<1|a>>>31;a=m|a<<1;i=i&1;m=i;h=h-1|0;if(h){continue}break}}fa=b<<1|a>>>31;a=i|a<<1;break a}a=0;b=0}fa=b}return a}function yb(a,b){var c=0,d=0,e=0,f=0,g=0;c=ea-16|0;ea=c;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a+52>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[a+72>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+92>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+104>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;g=a+120|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+108>>2]=0;F[a+112>>2]=0;F[a+116>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;e=1;break a}e=b<<2;d=sa(e);F[a+96>>2]=d;f=d+e|0;F[a+104>>2]=f;ua(d,0,e);F[a+116>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;F[a+100>>2]=f;d=sa(e);F[a+108>>2]=d;f=d+e|0;F[a+116>>2]=f;ua(d,0,e);F[a+112>>2]=f;d=sa(e);F[c>>2]=d;f=d+e|0;F[c+8>>2]=f;ua(d,0,e);F[c+4>>2]=f;e=b<<5|1}vb(g,e,c);d=F[c>>2];if(d){F[c+4>>2]=d;ra(d)}F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;if(b){b=b<<2;d=sa(b);F[c>>2]=d;f=b+d|0;F[c+8>>2]=f;ua(d,0,b);F[c+4>>2]=f}vb(a+132|0,e,c);b=F[c>>2];if(b){F[c+4>>2]=b;ra(b)}ea=c+16|0;return a}function Tb(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);D[b+12|0]=c;a:{if(c){break a}while(1){d=F[b+8>>2];if(G[d+12|0]){break a}b:{c=F[d+8>>2];e=F[c>>2];c:{if((d|0)==(e|0)){e=F[c+4>>2];if(!(!e|G[e+12|0])){break b}d:{if(F[d>>2]==(b|0)){b=d;break d}b=F[d+4>>2];a=F[b>>2];F[d+4>>2]=a;if(a){F[a+8>>2]=d;c=F[d+8>>2]}F[b+8>>2]=c;a=F[d+8>>2];F[(((d|0)!=F[a>>2])<<2)+a>>2]=b;F[b>>2]=d;F[d+8>>2]=b;c=F[b+8>>2]}D[b+12|0]=1;D[c+12|0]=0;a=F[c>>2];b=F[a+4>>2];F[c>>2]=b;if(b){F[b+8>>2]=c}F[a+8>>2]=F[c+8>>2];b=F[c+8>>2];F[((F[b>>2]!=(c|0))<<2)+b>>2]=a;F[a+4>>2]=c;b=c+8|0;break c}if(!(G[e+12|0]|!e)){break b}e:{if(F[d>>2]!=(b|0)){b=d;break e}a=F[b+4>>2];F[d>>2]=a;if(a){F[a+8>>2]=d;c=F[d+8>>2]}F[b+8>>2]=c;a=F[d+8>>2];F[(((d|0)!=F[a>>2])<<2)+a>>2]=b;F[b+4>>2]=d;F[d+8>>2]=b;c=F[b+8>>2]}D[b+12|0]=1;D[c+12|0]=0;a=F[c+4>>2];b=F[a>>2];F[c+4>>2]=b;if(b){F[b+8>>2]=c}F[a+8>>2]=F[c+8>>2];b=F[c+8>>2];F[((F[b>>2]!=(c|0))<<2)+b>>2]=a;F[a>>2]=c;b=c+8|0}F[b>>2]=a;break a}D[d+12|0]=1;d=(a|0)==(c|0);D[c+12|0]=d;D[e+12|0]=1;b=c;if(!d){continue}break}}}function qc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=F[b+16>>2];i=F[c+4>>2]-k|0;e=i;f=F[c>>2]-k|0;F[c>>2]=f;F[c+4>>2]=e;g=F[b+16>>2];e=e>>31;h=e+i^e;e=f>>31;l=(g|0)>=(h+(e+f^e)|0);a:{if(l){e=i;break a}b:{c:{if((f|0)>=0){e=1;h=1;if((i|0)>=0){break b}j=1;e=-1;h=-1;if(f){break c}break b}j=-1;e=-1;h=-1;if((i|0)<=0){break b}}e=(i|0)<=0?-1:1;h=j}j=L(g,h);f=(f<<1)-j|0;h=(L(e,h)|0)>=0;g=L(e,g);e=((h?0-f|0:f)+g|0)/2|0;F[c+4>>2]=e;m=c;c=(i<<1)-g|0;f=(j+(h?0-c|0:c)|0)/2|0;F[m>>2]=f;g=F[b+16>>2]}c=F[d+4>>2]+e|0;f=F[d>>2]+f|0;d:{if((g|0)<(f|0)){f=f-F[b+4>>2]|0;break d}if((0-g|0)<=(f|0)){break d}f=F[b+4>>2]+f|0}e:{if((c|0)>(g|0)){c=c-F[b+4>>2]|0;break e}if((0-g|0)<=(c|0)){break e}c=F[b+4>>2]+c|0}f:{if(l){g=c;break f}g:{h:{if((f|0)>=0){b=1;e=1;if((c|0)>=0){break g}d=1;b=-1;e=-1;if(f){break h}break g}d=-1;b=-1;e=-1;if((c|0)<=0){break g}}b=(c|0)<=0?-1:1;e=d}i=L(e,g);d=(f<<1)-i|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(b,e)|0)>=0;b=L(b,g);g=((d?j:h)+b|0)/2|0;b=(c<<1)-b|0;f=(i+(d?0-b|0:b)|0)/2|0}F[a>>2]=f+k;F[a+4>>2]=g+k}function za(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=ea-32|0;ea=b;c=F[a+16>>2];a:{if(c>>>0>=341){F[a+16>>2]=c-341;c=F[a+4>>2];F[b+8>>2]=F[c>>2];F[a+4>>2]=c+4;Xb(a,b+8|0);break a}b:{c:{d:{e:{e=F[a+8>>2];f=e-F[a+4>>2]>>2;d=F[a+12>>2];c=d-F[a>>2]|0;if(f>>>0>2>>>0){if((d|0)==(e|0)){break e}g=b,h=sa(4092),F[g+8>>2]=h;Xb(a,b+8|0);break a}F[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=sa(d);F[b+8>>2]=c;e=c+(f<<2)|0;F[b+16>>2]=e;F[b+20>>2]=c+d;F[b+12>>2]=e;g=b,h=sa(4092),F[g+4>>2]=h;Xb(b+8|0,b+4|0);d=F[a+8>>2];if((d|0)==F[a+4>>2]){c=d;break b}while(1){d=d-4|0;rd(b+8|0,d);if(F[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=sa(4092),F[g+8>>2]=h;c=b+8|0;rd(a,c);d=F[a+4>>2];F[b+8>>2]=F[d>>2];F[a+4>>2]=d+4;Xb(a,c);break a}wa(1336);V()}c=F[a+8>>2]}e=F[a>>2];F[a>>2]=F[b+8>>2];F[b+8>>2]=e;F[a+4>>2]=F[b+12>>2];F[b+12>>2]=d;F[a+8>>2]=F[b+16>>2];F[b+16>>2]=c;f=F[a+12>>2];F[a+12>>2]=F[b+20>>2];F[b+20>>2]=f;if((c|0)!=(d|0)){F[b+16>>2]=c+(((c-d|0)-4>>>2^-1)<<2)}if(!e){break a}ra(e)}ea=b+32|0}function Le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=M(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=ea-16|0;ea=k;if(F[c+28>>2]==9){d=F[a+4>>2];g=D[c+24|0];e=g<<2;f=sa((g&1073741823)!=(g|0)?-1:e);l=k+8|0;F[l>>2]=1065353216;i=J[a+20>>2];d=-1<0){J[l>>2]=i/M(d|0)}o=(d|0)>0;a:{if(!o){break a}j=F[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){ta(F[F[c+64>>2]>>2]+d|0,f,e);d=d+e|0;ta(d+F[F[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}ta(F[F[c+64>>2]>>2]+d|0,f,e);break a}p=F[F[b>>2]>>2]+F[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=F[a+8>>2];i=J[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;J[h+f>>2]=M(i*M(F[q>>2]))+J[h+m>>2];h=h|4;J[h+f>>2]=M(i*M(F[q+4>>2]))+J[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;J[b+f>>2]=M(i*M(F[(d<<2)+p>>2]))+J[b+m>>2];d=d+1|0}ta(F[F[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}ra(f)}ea=k+16|0;return o|0}function lf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(he(a,b)){i=a+36|0;g=ga[F[F[a>>2]+24>>2]](a)|0;d=F[a+40>>2];e=F[a+36>>2];c=d-e>>2;a:{if(g>>>0>c>>>0){Wb(i,g-c|0);break a}if(c>>>0<=g>>>0){break a}e=e+(g<<2)|0;if((e|0)!=(d|0)){while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}if((d|0)!=(e|0)){continue}break}}F[a+40>>2]=e}b:{if((g|0)<=0){e=0;break b}e=1;c=F[b+20>>2];d=F[b+12>>2];f=F[b+16>>2];if((c|0)>=(d|0)&f>>>0>=I[b+8>>2]|(c|0)>(d|0)){break b}d=0;while(1){h=G[f+F[b>>2]|0];f=f+1|0;c=f?c:c+1|0;F[b+16>>2]=f;F[b+20>>2]=c;f=ga[F[F[a>>2]+48>>2]](a,h)|0;h=d<<2;j=h+F[a+36>>2]|0;c=F[j>>2];F[j>>2]=f;if(c){ga[F[F[c>>2]+4>>2]](c)}c=F[F[i>>2]+h>>2];if(!c){break b}if(!(l=c,m=ga[F[F[a>>2]+28>>2]](a)|0,n=ga[F[F[a>>2]+20>>2]](a,d)|0,k=F[F[c>>2]+8>>2],ga[k](l|0,m|0,n|0)|0)){break b}d=d+1|0;e=(g|0)>(d|0);if((d|0)==(g|0)){break b}f=F[b+16>>2];c=F[b+20>>2];h=F[b+12>>2];if(f>>>0>2]&(c|0)<=(h|0)|(c|0)<(h|0)){continue}break}}a=!e}else{a=0}return a|0}function mj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=F[b+88>>2];if(!(!c|F[c>>2]!=1)){d=F[c+8>>2];F[a+4>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=D[b+24|0];e=F[a+8>>2];f=F[a+12>>2]-e>>2;a:{if(d>>>0>f>>>0){Aa(a+8|0,d-f|0);d=D[b+24|0];e=F[a+8>>2];break a}if(d>>>0>=f>>>0){break a}F[a+12>>2]=(d<<2)+e}k=1;f=F[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){g=d<<2;c=b+f|0;F[g+e>>2]=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[(g|4)+e>>2]=G[c+4|0]|G[c+5|0]<<8|(G[c+6|0]<<16|G[c+7|0]<<24);F[(g|8)+e>>2]=G[c+8|0]|G[c+9|0]<<8|(G[c+10|0]<<16|G[c+11|0]<<24);F[(g|12)+e>>2]=G[c+12|0]|G[c+13|0]<<8|(G[c+14|0]<<16|G[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+f|0;F[(d<<2)+e>>2]=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+f|0;F[c+20>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)}return k|0}function Va(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;g=F[(F[F[a+8>>2]+96>>2]+L(d,12)|0)+(c-L(d,3)<<2)>>2];e=F[F[a+12>>2]+4>>2];d=F[e+4>>2];a:{if((d|0)!=F[e+8>>2]){F[d>>2]=g;F[e+4>>2]=d+4;break a}b:{h=F[e>>2];i=d-h|0;j=i>>2;d=j+1|0;if(d>>>0<1073741824){f=i>>1;f=j>>>0<536870911?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break b}d=sa(f<<2)}else{d=0}j=d+(j<<2)|0;F[j>>2]=g;if((i|0)>0){ta(d,h,i)}F[e+8>>2]=d+(f<<2);F[e+4>>2]=j+4;F[e>>2]=d;if(h){ra(h)}break a}va();V()}wa(1336);V()}e=F[a+4>>2];d=F[e+4>>2];c:{d:{e:{if((d|0)!=F[e+8>>2]){F[d>>2]=c;F[e+4>>2]=d+4;break e}h=F[e>>2];i=d-h|0;g=i>>2;d=g+1|0;if(d>>>0>=1073741824){break d}f=i>>1;f=g>>>0<536870911?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break c}d=sa(f<<2)}else{d=0}g=d+(g<<2)|0;F[g>>2]=c;if((i|0)>0){ta(d,h,i)}F[e+8>>2]=d+(f<<2);F[e+4>>2]=g+4;F[e>>2]=d;if(!h){break e}ra(h)}a=F[a+4>>2];F[F[a+12>>2]+(b<<2)>>2]=F[a+24>>2];F[a+24>>2]=F[a+24>>2]+1;return}va();V()}wa(1336);V()}function yh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=F[d+80>>2];e=ea-48|0;ea=e;a=F[a+4>>2];a:{if(a-31>>>0<4294967267){break a}i=F[F[d>>2]>>2]+F[d+48>>2]|0;F[e+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;F[e+24>>2]=a;F[e+32>>2]=(a|0)/2;J[e+28>>2]=M(2)/M(a|0);g=F[c>>2];if((g|0)!=F[c+4>>2]){a=0;d=0;while(1){f=F[(d<<2)+g>>2];h=e+36|0;j=F[F[b>>2]>>2];l=F[b+48>>2];g=F[b+44>>2];k=F[b+40>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}f=Fj(k,g,f,0)+l|0;ta(h,f+j|0,k);de(e+16|0,h,e+12|0,e+8|0);g=a<<2;F[g+i>>2]=F[e+12>>2];F[(g|4)+i>>2]=F[e+8>>2];f=1;a=a+2|0;d=d+1|0;g=F[c>>2];if(d>>>0>2]-g>>2>>>0){continue}break}break a}if(!h){f=1;break a}d=0;a=0;while(1){j=e+36|0;c=F[F[b>>2]>>2];f=F[b+40>>2];g=F[b+48>>2]+Fj(f,F[b+44>>2],G[b+84|0]?a:F[F[b+68>>2]+(a<<2)>>2],0)|0;ta(j,c+g|0,f);de(e+16|0,j,e+12|0,e+8|0);c=d<<2;F[c+i>>2]=F[e+12>>2];F[(c|4)+i>>2]=F[e+8>>2];d=d+2|0;f=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}ea=e+48|0;return f|0}function Cc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=G[a+11|0]>>>7|0?F[a+4>>2]:G[a+11|0];if(d>>>0>>0){h=ea-16|0;ea=h;f=b-d|0;if(f){b=G[a+11|0]>>>7|0;g=b?F[a+4>>2]:G[a+11|0];i=g+f|0;b=b?(F[a+8>>2]&2147483647)-1|0:10;if(b-g>>>0>>0){a:{d=ea-16|0;ea=d;c=i-b|0;if(c>>>0<=-17-b>>>0){j=G[a+11|0]>>>7|0?F[a>>2]:a;b:{if(b>>>0<2147483623){F[d+8>>2]=b<<1;F[d+12>>2]=b+c;c=ea-16|0;ea=c;ea=c+16|0;c=d+8|0;e=d+12|0;c=F[(I[e>>2]>2]?c:e)>>2];if(c>>>0>=11){e=c+16&-16;c=e-1|0;c=(c|0)==11?e:c}else{c=10}break b}c=-18}e=c+1|0;c=sa(e);if(g){kb(c,j,g)}if((b|0)!=10){ra(j)}F[a>>2]=c;F[a+8>>2]=e|-2147483648;ea=d+16|0;break a}Ma();V()}}b=G[a+11|0]>>>7|0?F[a>>2]:a;d=g+b|0;if(f){ua(d,0,f)}c:{if(G[a+11|0]>>>7|0){F[a+4>>2]=i;break c}D[a+11|0]=i}D[h+15|0]=0;D[b+i|0]=G[h+15|0]}ea=h+16|0;return}d=ea-16|0;ea=d;d:{if(G[a+11|0]>>>7|0){f=F[a>>2];D[d+15|0]=0;D[b+f|0]=G[d+15|0];F[a+4>>2]=b;break d}D[d+14|0]=0;D[a+b|0]=G[d+14|0];D[a+11|0]=b}ea=d+16|0}function Oe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=F[b+12>>2];c=f;d=F[b+20>>2];g=d;i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;j=F[b+8>>2];a:{if(j>>>0>>0&(c|0)<=(d|0)|(c|0)<(d|0)){break a}k=F[b>>2];c=i+k|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;d=g;h=i+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>j>>>0&(d|0)>=(f|0)|(d|0)>(f|0)){break a}e=e+k|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=h;F[b+20>>2]=d;if((c|0)>(e|0)){break a}F[a+16>>2]=e;F[a+12>>2]=c;m=(e>>31)-((c>>31)+(c>>>0>e>>>0)|0)|0;c=e-c|0;if(!m&c>>>0>2147483646|m){break a}c=c+1|0;F[a+20>>2]=c;e=c>>>1|0;F[a+24>>2]=e;F[a+28>>2]=0-e;if(!(c&1)){F[a+24>>2]=e-1}if(H[b+38>>1]<=513){if((d|0)>=(f|0)&h>>>0>=j>>>0|(d|0)>(f|0)){break a}c=G[h+k|0];d=g;g=i+9|0;d=g>>>0<9?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;b:{switch(c|0){case 1:l=1;break;case 0:break b;default:break a}}F[a+88>>2]=l}l=xa(a+112|0,b)}return l|0}function Ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=ea-16|0;ea=d;a:{e=F[a+4>>2];b:{if(e>>>0>>0){f=b-e|0;h=F[a+8>>2];c=h<<5;c:{if(!(f>>>0>c>>>0|e>>>0>c-f>>>0)){F[a+4>>2]=b;g=e&31;b=F[a>>2]+(e>>>3&536870908)|0;break c}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if((b|0)<0){break a}if(c>>>0<=1073741822){c=b+31&-32;b=h<<6;b=b>>>0>>0?c:b}else{b=2147483647}cb(d,b);e=F[a+4>>2];F[d+4>>2]=e+f;i=F[a>>2];b=F[d>>2];d:{if((e|0)<=0){break d}c=e>>>5|0;h=c<<2;b=Ua(b,i,h)+h|0;g=e-(c<<5)|0;e:{if((g|0)<=0){g=0;break e}c=-1>>>32-g|0;F[b>>2]=F[b>>2]&(c^-1)|c&F[i+h>>2]}i=F[a>>2]}F[a>>2]=F[d>>2];F[d>>2]=i;c=F[a+4>>2];F[a+4>>2]=F[d+4>>2];F[d+4>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[d+8>>2];F[d+8>>2]=c;if(!i){break c}ra(i)}if(!f){break b}if(g){c=32-g|0;a=c>>>0>f>>>0?f:c;F[b>>2]=F[b>>2]&(-1<>>c-a^-1);f=f-a|0;b=b+4|0}c=f>>>5<<2;a=ua(b,0,c);b=f&31;if(!b){break b}a=a+c|0;F[a>>2]=F[a>>2]&(-1>>>32-b^-1);break b}F[a+4>>2]=b}ea=d+16|0;return}va();V()}function Rh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=F[a+12>>2];c=F[a+108>>2];e=F[c+80>>2];D[b+84|0]=0;f=F[b+68>>2];d=F[b+72>>2]-f>>2;a:{if(d>>>0>>0){Ia(b+68|0,e-d|0,12404);c=F[a+108>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=f+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break b}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break b}j=F[F[a+112>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break b}i=F[f+4>>2];if(i>>>0>=e>>>0){break b}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break b}f=F[f+8>>2];if(f>>>0>=e>>>0){break b}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}F[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Qh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=ea-16|0;ea=g;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+28>>2]-F[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=h;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}b=F[a+12>>2];d=F[b+28>>2];b=F[b+24>>2];F[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=F[c>>2];d=F[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){Ia(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}F[a+100>>2]=e+(b<<2)}e=a+8|0;b=F[a+116>>2];d:{if(b){c=F[b>>2];if((c|0)==F[b+4>>2]){d=1;break d}b=0;while(1){d=ve(e,F[(b<<2)+c>>2]);if(!d){break d}f=F[a+116>>2];c=F[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=F[a+12>>2];a=F[a+4>>2]-F[a>>2]>>2;if(a>>>0<3){break d}a=(a>>>0)/3|0;b=0;while(1){d=ve(e,L(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}ea=g+16|0;return d|0}wa(1336);V()}function Ih(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=F[a+12>>2];c=F[a+68>>2];e=F[c+80>>2];D[b+84|0]=0;f=F[b+68>>2];d=F[b+72>>2]-f>>2;a:{if(d>>>0>>0){Ia(b+68|0,e-d|0,12404);c=F[a+68>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=f+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break b}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break b}j=F[F[a+72>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break b}i=F[f+4>>2];if(i>>>0>=e>>>0){break b}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break b}f=F[f+8>>2];if(f>>>0>=e>>>0){break b}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}F[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=F[a+12>>2];h=F[a+8>>2];d=f-h>>2;b=D[b+24|0];a:{if(d>>>0>>0){Aa(a+8|0,b-d|0);h=F[a+8>>2];f=F[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;F[a+12>>2]=f}b=0;i=F[c+20>>2];e=F[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=F[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>I[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}ta(h,e+F[c>>2]|0,d);d=F[c+20>>2];e=f+F[c+16>>2]|0;d=e>>>0>>0?d+1|0:d;g=e;F[c+16>>2]=e;F[c+20>>2]=d;e=F[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>I[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+F[c>>2]|0;F[a+20>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[c+20>>2];g=F[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;F[c+16>>2]=e;F[c+20>>2]=f;e=F[c+12>>2];if((f|0)>=(e|0)&j>>>0>=I[c+8>>2]|(f|0)>(e|0)){break b}e=G[j+F[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;if(e-1>>>0>29){break b}F[a+4>>2]=e;b=1}return b|0}function ub(a,b){var c=0;a:{if(!xa(a,b)){break a}if(!xa(a+16|0,b)){break a}if(!xa(a+32|0,b)){break a}if(!xa(a+48|0,b)){break a}if(!xa(a- -64|0,b)){break a}if(!xa(a+80|0,b)){break a}if(!xa(a+96|0,b)){break a}if(!xa(a+112|0,b)){break a}if(!xa(a+128|0,b)){break a}if(!xa(a+144|0,b)){break a}if(!xa(a+160|0,b)){break a}if(!xa(a+176|0,b)){break a}if(!xa(a+192|0,b)){break a}if(!xa(a+208|0,b)){break a}if(!xa(a+224|0,b)){break a}if(!xa(a+240|0,b)){break a}if(!xa(a+256|0,b)){break a}if(!xa(a+272|0,b)){break a}if(!xa(a+288|0,b)){break a}if(!xa(a+304|0,b)){break a}if(!xa(a+320|0,b)){break a}if(!xa(a+336|0,b)){break a}if(!xa(a+352|0,b)){break a}if(!xa(a+368|0,b)){break a}if(!xa(a+384|0,b)){break a}if(!xa(a+400|0,b)){break a}if(!xa(a+416|0,b)){break a}if(!xa(a+432|0,b)){break a}if(!xa(a+448|0,b)){break a}if(!xa(a+464|0,b)){break a}if(!xa(a+480|0,b)){break a}if(!xa(a+496|0,b)){break a}c=xa(a+512|0,b)}return c}function Ic(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=ea-16|0;ea=g;a:{b:{if(b){F[a+88>>2]=0;F[a+92>>2]=0;c=F[a+84>>2];F[a+84>>2]=0;if(c){ra(c)}F[a+76>>2]=0;F[a+80>>2]=0;c=F[a+72>>2];F[a+72>>2]=0;if(c){ra(c)}c=F[b>>2];d=F[b+4>>2];D[g+15|0]=0;Na(a,d-c>>2,g+15|0);c=F[b+28>>2];d=F[b+24>>2];D[g+14|0]=0;Na(a+12|0,c-d>>2,g+14|0);Jc(a+28|0,F[b+4>>2]-F[b>>2]>>2,13740);d=F[b+28>>2]-F[b+24>>2]|0;e=d>>2;c=F[a+52>>2];c:{if(e>>>0<=F[a+60>>2]-c>>2>>>0){break c}if((d|0)<0){break b}f=F[a+56>>2];d=sa(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){ta(d,c,e)}F[a+60>>2]=h;F[a+56>>2]=f;F[a+52>>2]=d;if(!c){break c}ra(c)}d=F[b+28>>2]-F[b+24>>2]|0;e=d>>2;c=F[a+40>>2];d:{if(e>>>0<=F[a+48>>2]-c>>2>>>0){break d}if((d|0)<0){break a}f=F[a+44>>2];d=sa(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){ta(d,c,e)}F[a+48>>2]=h;F[a+44>>2]=f;F[a+40>>2]=d;if(!c){break d}ra(c)}D[a+24|0]=1;F[a+64>>2]=b}ea=g+16|0;return}wa(1336);V()}wa(1336);V()}function Xb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{e=F[a+8>>2];b:{if((e|0)!=F[a+12>>2]){break b}d=F[a+4>>2];g=F[a>>2];if(d>>>0>g>>>0){g=((d-g>>2)+1|0)/-2<<2;c=g+d|0;f=e-d|0;if(f){Ua(c,d,f);d=F[a+4>>2]}e=c+f|0;F[a+8>>2]=e;F[a+4>>2]=d+g;break b}c=e-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}f=c<<2;h=sa(f);l=h+f|0;i=e-d|0;f=(c&-4)+h|0;e=f;c:{if(!i){break c}j=i-4|0;k=(j>>>2|0)+1&7;d:{if(!k){c=f;break d}e=0;c=f;while(1){F[c>>2]=F[d>>2];d=d+4|0;c=c+4|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}e=f+i|0;if(j>>>0<28){break c}while(1){F[c>>2]=F[d>>2];F[c+4>>2]=F[d+4>>2];F[c+8>>2]=F[d+8>>2];F[c+12>>2]=F[d+12>>2];F[c+16>>2]=F[d+16>>2];F[c+20>>2]=F[d+20>>2];F[c+24>>2]=F[d+24>>2];F[c+28>>2]=F[d+28>>2];d=d+32|0;c=c+32|0;if((e|0)!=(c|0)){continue}break}}F[a+12>>2]=l;F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=h;if(!g){break b}ra(g);e=F[a+8>>2]}F[e>>2]=F[b>>2];F[a+8>>2]=F[a+8>>2]+4;return}wa(1336);V()}function Dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=F[a+12>>2];c=F[a+68>>2];e=F[c+80>>2];D[b+84|0]=0;g=F[b+68>>2];d=F[b+72>>2]-g>>2;a:{if(d>>>0>>0){Ia(b+68|0,e-d|0,12404);c=F[a+68>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=g+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;l=c>>>0>1?c:1;m=F[h+28>>2];c=0;b:{while(1){d=(L(c,3)<<2)+m|0;g=F[d>>2];if((g|0)==-1){break b}h=L(c,12)+k|0;i=F[h>>2];if(i>>>0>=e>>>0){break b}f=g<<2;g=F[F[a+72>>2]+12>>2];f=F[f+g>>2];if(f>>>0>=e>>>0){break b}j=i<<2;i=F[b+68>>2];F[j+i>>2]=f;f=F[d+4>>2];if((f|0)==-1){break b}j=F[h+4>>2];if(j>>>0>=e>>>0){break b}f=F[g+(f<<2)>>2];if(f>>>0>=e>>>0){break b}F[i+(j<<2)>>2]=f;d=F[d+8>>2];if((d|0)==-1){break b}h=F[h+8>>2];if(h>>>0>=e>>>0){break b}d=F[g+(d<<2)>>2];if(d>>>0>=e>>>0){break b}F[i+(h<<2)>>2]=d;c=c+1|0;if((l|0)!=(c|0)){continue}break}return 1}return 0}function rd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{g=F[a+4>>2];b:{if((g|0)!=F[a>>2]){c=g;break b}d=F[a+8>>2];c=F[a+12>>2];if(d>>>0>>0){f=((c-d>>2)+1|0)/2<<2;c=f+d|0;e=d-g|0;if(e){c=c-e|0;Ua(c,g,e);d=F[a+8>>2]}F[a+4>>2]=c;F[a+8>>2]=d+f;break b}c=c-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}e=c<<2;h=sa(e);l=h+e|0;c=(c+3&-4)+h|0;f=c;i=d-g|0;c:{if(!i){break c}d=c;e=g;j=i-4|0;k=(j>>>2|0)+1&7;if(k){f=0;while(1){F[d>>2]=F[e>>2];e=e+4|0;d=d+4|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}f=c+i|0;if(j>>>0<28){break c}while(1){F[d>>2]=F[e>>2];F[d+4>>2]=F[e+4>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=F[e+12>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=F[e+20>>2];F[d+24>>2]=F[e+24>>2];F[d+28>>2]=F[e+28>>2];e=e+32|0;d=d+32|0;if((f|0)!=(d|0)){continue}break}}F[a+12>>2]=l;F[a+8>>2]=f;F[a+4>>2]=c;F[a>>2]=h;if(!g){break b}ra(g);c=F[a+4>>2]}F[c-4>>2]=F[b>>2];F[a+4>>2]=F[a+4>>2]-4;return}wa(1336);V()}function Cd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=M(0),f=M(0),g=M(0),h=M(0),i=M(0),j=0,k=M(0),l=M(0),m=M(0),n=M(0),o=0;a:{if(F[c+28>>2]!=9|G[c+24|0]!=3){break a}a=F[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=F[c+80>>2];if(!j){break a}k=M(M(2)/M((1<>2]>>2]+F[c+48>>2]|0;a=F[F[b>>2]>>2]+F[b+48>>2]|0;b=0;while(1){g=M(0);l=M(0);m=M(0);e=M(M(M(F[a>>2])*k)+M(-1));f=M(M(M(F[a+4>>2])*k)+M(-1));i=M(M(M(1)-M(N(e)))-M(N(f)));h=M(Q(M(-i),M(0)));n=M(-h);f=M(f+(f>>8;D[c+10|0]=d>>>16;D[c+11|0]=d>>>24;d=(v(l),x(2));D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;d=(v(g),x(2));D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function de(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+J[b>>2];k=+J[b+4>>2];l=+J[b+8>>2];g=N(j)+N(k)+N(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=F[a+16>>2];l=+(h|0);g=R(j*l+.5);b:{if(N(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=f+m^f;g=R(k*l+.5);c:{if(N(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+(f+b^b)|0)|0;i=(b|0)<0?0:b;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=F[a+8>>2];e=f+h|0;break d}b=f>>31;b=b+f^b;a=F[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}f=(a|0)!=(e|0);if(!(b|f)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((b|0)>=(h|0)|f)){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}F[c>>2]=a;F[d>>2]=b}function Gc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=F[a>>2];c=g+(b>>>3&536870908)|0;F[c>>2]=F[c>>2]|1<>2];e=(b|0)==-1;d=-1;a:{if(e){break a}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;d=-1;if((c|0)==-1){break a}d=F[F[f>>2]+(c<<2)>>2]}c=F[a+12>>2];h=(d>>>3&536870908)+c|0;F[h>>2]=F[h>>2]|1<>>0)%3|0){e=b-1|0;break e}e=b+2|0;d=-1;if((e|0)==-1){break d}}d=F[F[f>>2]+(e<<2)>>2]}e=(d>>>3&536870908)+c|0;F[e>>2]=F[e>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}D[a+24|0]=0;a=(b>>>3&536870908)+g|0;F[a>>2]=F[a>>2]|1<>>0)%3|0?a:b-2|0;if((a|0)!=-1){d=F[F[f>>2]+(a<<2)>>2]}a=c+(d>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>>0)%3|0){b=b-1|0;break g}b=b+2|0;a=-1;if((b|0)==-1){break f}}a=F[F[f>>2]+(b<<2)>>2]}b=1<>>3&536870908)|0;c=F[a>>2];break c}a=c+536870908|0;b=F[c+536870908>>2];c=-2147483648}F[a>>2]=b|c}}function Sd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(b>>>0<=63){b=0;a=F[a+12>>2];if(a>>>0<2){break a}d=F[c>>2];b=a-1|0;e=b&3;c=0;b:{if(a-2>>>0<3){a=1;b=0;break b}f=b&-4;b=0;a=1;while(1){g=a+3|0;h=a+2|0;i=a+1|0;b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a:b;b=I[d+(b<<2)>>2]>I[d+(i<<2)>>2]?i:b;b=I[d+(b<<2)>>2]>I[d+(h<<2)>>2]?h:b;b=I[d+(b<<2)>>2]>I[d+(g<<2)>>2]?g:b;a=a+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}if(!e){break a}while(1){b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a:b;a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}break a}b=F[a+580>>2];d=32-b|0;if((d|0)>=4){c=F[a+576>>2];if((c|0)==F[a+568>>2]){return 0}d=F[c>>2];e=b+4|0;F[a+580>>2]=e;b=d<>>28|0;if((e|0)!=32){break a}F[a+580>>2]=0;F[a+576>>2]=c+4;return b}c=F[a+576>>2];e=c+4|0;if((e|0)==F[a+568>>2]){return 0}f=F[c>>2];F[a+576>>2]=e;F[a+580>>2]=b-28;a=60-b|0;b=F[c+4>>2]>>>a|f<>>a-d}return b}function gd(a,b){var c=0,d=0;c=F[b+8>>2];F[a+4>>2]=F[b+4>>2];F[a+8>>2]=c;F[a+20>>2]=F[b+20>>2];c=F[b+16>>2];F[a+12>>2]=F[b+12>>2];F[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=F[b+28>>2];if(c){c:{if(F[a+32>>2]<<5>>>0>=c>>>0){d=F[a+24>>2];break c}d=F[a+24>>2];if(d){ra(d);F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;c=F[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=sa(c<<2);F[a+32>>2]=c;F[a+28>>2]=0;F[a+24>>2]=d;c=F[b+28>>2]}Ua(d,F[b+24>>2],(c-1>>>3&536870908)+4|0);c=F[b+28>>2]}else{c=0}F[a+28>>2]=c;c=F[b+40>>2];if(c){d:{if(F[a+44>>2]<<5>>>0>=c>>>0){d=F[a+36>>2];break d}d=F[a+36>>2];if(d){ra(d);F[a+44>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;c=F[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=sa(c<<2);F[a+44>>2]=c;F[a+40>>2]=0;F[a+36>>2]=d;c=F[b+40>>2]}Ua(d,F[b+36>>2],(c-1>>>3&536870908)+4|0);b=F[b+40>>2]}else{b=0}F[a+40>>2]=b}return}va();V()}va();V()}function Ef(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=ea+-64|0;ea=f;d=1;a:{if(Xa(a,b,0)){break a}d=0;if(!b){break a}d=ea+-64|0;ea=d;e=F[b>>2];g=F[e-4>>2];h=F[e-8>>2];F[d+20>>2]=0;F[d+16>>2]=15124;F[d+12>>2]=b;F[d+8>>2]=15172;e=0;ua(d+24|0,0,39);b=b+h|0;b:{if(Xa(g,15172,0)){F[d+56>>2]=1;ga[F[F[g>>2]+20>>2]](g,d+8|0,b,b,1,0);e=F[d+32>>2]==1?b:0;break b}ga[F[F[g>>2]+24>>2]](g,d+8|0,b,1,0);c:{switch(F[d+44>>2]){case 0:e=F[d+48>>2]==1?F[d+36>>2]==1?F[d+40>>2]==1?F[d+28>>2]:0:0:0;break b;case 1:break c;default:break b}}if(F[d+32>>2]!=1){if(F[d+48>>2]|F[d+36>>2]!=1|F[d+40>>2]!=1){break b}}e=F[d+24>>2]}ea=d- -64|0;d=0;if(!e){break a}b=f+8|0;ua(b|4,0,52);F[f+56>>2]=1;F[f+20>>2]=-1;F[f+16>>2]=a;F[f+8>>2]=e;ga[F[F[e>>2]+28>>2]](e,b,F[c>>2],1);a=F[f+32>>2];if((a|0)==1){F[c>>2]=F[f+24>>2]}d=(a|0)==1}ea=f- -64|0;return d|0}function Ne(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=F[b+12>>2];c=F[b+20>>2];d=c;i=F[b+16>>2];e=i+4|0;c=e>>>0<4?c+1|0:c;j=F[b+8>>2];g=e;a:{if(j>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}l=F[b>>2];e=i+l|0;h=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;e=H[b+38>>1];if(e>>>0<=513){c=d;d=i+8|0;c=d>>>0<8?c+1|0:c;g=d;if(d>>>0>j>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=g;F[b+20>>2]=c}if(!(h&1)){break a}d=O(h)^31;if(d-30>>>0<4294967267){break a}F[a+8>>2]=d+1;d=-2<>2]=h;F[a+12>>2]=d^-1;F[a+24>>2]=(h|0)/2;J[a+20>>2]=M(2)/M(h|0);if(e>>>0<=513){if((c|0)>=(f|0)&g>>>0>=j>>>0|(c|0)>(f|0)){break a}f=G[g+l|0];d=g+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;b:{switch(f|0){case 1:k=1;break;case 0:break b;default:break a}}F[a+72>>2]=k}k=xa(a+96|0,b)}return k|0}function Me(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=F[b+12>>2];c=F[b+20>>2];g=c;h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}l=F[b>>2];e=h+l|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;c=g;d=h+8|0;c=d>>>0<8?c+1|0:c;j=d;if(d>>>0>i>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=j;F[b+20>>2]=c;if(!(e&1)){break a}d=O(e)^31;if(d-30>>>0<4294967267){break a}F[a+8>>2]=d+1;d=-2<>2]=e;F[a+12>>2]=d^-1;F[a+24>>2]=(e|0)/2;J[a+20>>2]=M(2)/M(e|0);if(H[b+38>>1]<=513){if((c|0)>=(f|0)&j>>>0>=i>>>0|(c|0)>(f|0)){break a}f=G[j+l|0];c=h+9|0;g=c>>>0<9?g+1|0:g;F[b+16>>2]=c;F[b+20>>2]=g;b:{switch(f|0){case 1:k=1;break;case 0:break b;default:break a}}F[a+72>>2]=k}k=xa(a+96|0,b)}return k|0}function Mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{a=ea-32|0;ea=a;e=La(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=sa(g);F[a+24>>2]=g|-2147483648;F[a+16>>2]=f;F[a+20>>2]=e;break c}D[a+27|0]=e;f=a+16|0;if(!e){break b}}ta(f,c,e)}D[e+f|0]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d:{c=qb(b,a+16|0);if((c|0)==(b+4|0)){break d}b=F[c+28>>2];f=F[c+32>>2];if((b|0)==(f|0)){break d}b=f-b|0;if(b&3){break d}e=b>>>2|0;f=F[a+4>>2];b=F[a>>2];g=f-b>>2;e:{if(e>>>0>g>>>0){Aa(a,e-g|0);b=F[a>>2];f=F[a+4>>2];break e}if(e>>>0>=g>>>0){break e}f=(e<<2)+b|0;F[a+4>>2]=f}if((b|0)!=(f|0)){e=b;b=F[c+28>>2];ta(e,b,F[c+32>>2]-b|0);break d}Da();V()}b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d>>2]=F[a>>2];F[d+4>>2]=F[a+4>>2];F[d+8>>2]=F[a+8>>2];if(D[a+27|0]<0){ra(F[a+16>>2])}ea=a+32|0;break a}Ma();V()}}function tc(a){var b=0,c=0,d=0;b=F[a+8>>2];d=F[a>>2];a:{if(G[a+12|0]){b:{c:{d:{e:{if((b|0)==-1){break e}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break e}b=F[F[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}F[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;F[a+8>>2]=b;if((b|0)!=-1){break b}}c=F[a+4>>2];b=-1;f:{if((c|0)==-1){break f}g:{if((c>>>0)%3|0){c=c-1|0;break g}c=c+2|0;b=-1;if((c|0)==-1){break f}}c=F[F[d+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break f}b=c-1|0;if((c>>>0)%3|0){break f}b=c+2|0}D[a+12|0]=0;F[a+8>>2]=b;return}if((b|0)!=F[a+4>>2]){break a}F[a+8>>2]=-1;return}c=-1;h:{if((b|0)==-1){break h}i:{if((b>>>0)%3|0){b=b-1|0;break i}b=b+2|0;c=-1;if((b|0)==-1){break h}}b=F[F[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break h}c=b-1|0;if((b>>>0)%3|0){break h}c=b+2|0}F[a+8>>2]=c}}function Kf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=ea-32|0;ea=e;f=F[a+28>>2];F[e+16>>2]=f;d=F[a+20>>2];F[e+28>>2]=c;F[e+24>>2]=b;b=d-f|0;F[e+20>>2]=b;f=b+c|0;j=2;a:{b:{b=e+16|0;d=Z(F[a+60>>2],b|0,2,e+12|0)|0;if(d){F[3934]=d;d=-1}else{d=0}c:{if(!d){while(1){d=F[e+12>>2];if((d|0)==(f|0)){break c}if((d|0)<0){break b}g=F[b+4>>2];h=g>>>0>>0;i=(h<<3)+b|0;g=d-(h?g:0)|0;F[i>>2]=g+F[i>>2];i=(h?12:4)+b|0;F[i>>2]=F[i>>2]-g;f=f-d|0;b=h?b+8|0:b;j=j-h|0;d=Z(F[a+60>>2],b|0,j|0,e+12|0)|0;if(d){F[3934]=d;d=-1}else{d=0}if(!d){continue}break}}if((f|0)!=-1){break b}}b=F[a+44>>2];F[a+28>>2]=b;F[a+20>>2]=b;F[a+16>>2]=b+F[a+48>>2];a=c;break a}F[a+28>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a>>2]=F[a>>2]|32;a=0;if((j|0)==2){break a}a=c-F[b+4>>2]|0}ea=e+32|0;return a|0}function Og(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=ea-16|0;ea=d;a:{e=La(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=sa(f);F[d+8>>2]=f|-2147483648;F[d>>2]=a;F[d+4>>2]=e;break c}D[d+11|0]=e;a=d;if(!e){break b}}ta(a,c,e)}D[a+e|0]=0;c=G[d+11|0];e=c<<24>>24;f=F[d>>2];b=F[b+4>>2];a=0;d:{if(!b){break d}a=c;c=(e|0)<0;a=c?F[d+4>>2]:a;j=c?f:d;while(1){c=G[b+27|0];g=c<<24>>24<0;c=g?F[b+20>>2]:c;k=c>>>0>>0;e:{f:{i=k?c:a;g:{if(i){h=b+16|0;g=g?F[h>>2]:h;h=Ha(j,g,i);h:{if(!h){if(a>>>0>=c>>>0){break h}break e}if((h|0)<0){break e}}c=Ha(g,j,i);if(!c){break g}if((c|0)<0){break f}a=1;break d}if(a>>>0>>0){break e}}if(k){break f}a=1;break d}b=b+4|0}b=F[b>>2];if(b){continue}break}a=0}if((e|0)<0){ra(f)}ea=d+16|0;break a}Ma();V()}return a|0}function Ac(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;f=F[b+4>>2]-F[b>>2]|0;i=(f|0)/20|0;a:{b:{c:{if(f){if(i>>>0>=214748365){break c}d=sa(f);F[a+16>>2]=d;F[a+20>>2]=d;F[a+24>>2]=L(i,20)+d;c=F[b>>2];b=F[b+4>>2]-c|0;if((b|0)<=0){b=d}else{b=ta(d,c,b)+L((b>>>0)/20|0,20)|0}c=b;F[a+20>>2]=c}F[a+28>>2]=0;b=c-d|0;if(!b){break a}b=(b|0)/20|0;c=b>>>0>1?b:1;f=c&1;if(b>>>0<2){b=0;break b}i=c&-2;b=0;c=0;while(1){g=L(b|1,20)+d|0;g=L(F[g+16>>2],F[g+12>>2]);h=L(b,20)+d|0;h=L(F[h+16>>2],F[h+12>>2]);e=e>>>0>>0?h:e;e=e>>>0>>0?g:e;b=b+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}break b}va();V()}if(!f){break a}b=L(b,20)+d|0;b=L(F[b+16>>2],F[b+12>>2]);e=b>>>0>e>>>0?b:e}ib(a,e);F[a+12>>2]=F[a>>2];return a}function Ua(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return ta(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}D[d|0]=G[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;D[d|0]=G[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;F[c+a>>2]=F[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;D[c+a|0]=G[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){F[d>>2]=F[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){D[d|0]=G[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=F[c+12>>2];d=h;e=F[c+20>>2];i=F[c+8>>2];f=F[c+16>>2];a:{if((d|0)<=(e|0)&i>>>0<=f>>>0|(d|0)<(e|0)){break a}j=F[c>>2];k=D[j+f|0];d=e;g=f+1|0;d=g?d:d+1|0;F[c+16>>2]=g;F[c+20>>2]=d;b:{if((k|0)==-2){break b}if((d|0)>=(h|0)&g>>>0>=i>>>0|(d|0)>(h|0)){break a}d=D[g+j|0];f=f+2|0;e=f>>>0<2?e+1|0:e;F[c+16>>2]=f;F[c+20>>2]=e;if((d-4&255)>>>0<251){break a}e=ga[F[F[a>>2]+40>>2]](a,k,d)|0;d=F[a+20>>2];F[a+20>>2]=e;if(!d){break b}ga[F[F[d>>2]+4>>2]](d)}d=F[a+20>>2];if(d){if(!(ga[F[F[a>>2]+28>>2]](a,d)|0)){break a}}if(!(ga[F[F[a>>2]+36>>2]](a,b,c)|0)){break a}c=F[a+4>>2];if(!(!c|G[c+36|0]>1)){if(!(ga[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0)){break a}}l=1}return l|0}function Zd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=ea-16|0;ea=d;g=F[a+24>>2];l=F[a+28>>2];a:{if((g|0)!=(l|0)){while(1){F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;e=Yd(F[g>>2],b,d);a=G[d+11|0];i=a<<24>>24;j=3;b:{c:{d:{e:{if(!e){break e}j=0;e=G[c+11|0];f=e<<24>>24;k=(i|0)<0?F[d+4>>2]:a;if((k|0)!=(((f|0)<0?F[c+4>>2]:e)|0)){break e}h=(f|0)<0?F[c>>2]:c;f=F[d>>2];e=(i|0)<0;f:{if(!e){if(!i){break f}e=d;if(G[h|0]!=(f&255)){break b}while(1){a=a-1|0;if(!a){break f}f=G[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==G[e|0]){continue}break}break e}if(!k){break f}if(Ha(e?f:d,h,k)){break d}}m=F[g>>2];j=1}if((i|0)>=0){break c}}ra(F[d>>2])}switch(j|0){case 0:case 3:break b;default:break a}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}m=0}ea=d+16|0;return m}function Wb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=F[a+8>>2];c=F[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{b:{c:{g=F[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>2>>>0<536870911?e>>>0>h>>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}i=sa(e<<2)}d=(f<<2)+i|0;f=b<<2;b=ua(d,0,f);f=b+f|0;e=(e<<2)+i|0;if((c|0)==(g|0)){break b}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;d=d-4|0;F[d>>2]=b;if((c|0)!=(g|0)){continue}break}F[a+8>>2]=e;b=F[a+4>>2];F[a+4>>2]=f;c=F[a>>2];F[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b-4|0;a=F[b>>2];F[b>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}va();V()}wa(1336);V()}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b}if(c){ra(c)}}function Od(a,b,c){a:{switch(b-9|0){case 0:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];return;case 6:b=F[c>>2];F[c>>2]=b+4;b=E[b>>1];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 7:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=H[b>>1];F[a+4>>2]=0;return;case 8:b=F[c>>2];F[c>>2]=b+4;b=D[b|0];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 9:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=G[b|0];F[a+4>>2]=0;return;case 16:b=F[c>>2]+7&-8;F[c>>2]=b+8;K[a>>3]=K[b>>3];return;case 17:ga[0](a,c);default:return;case 1:case 4:case 14:b=F[c>>2];F[c>>2]=b+4;b=F[b>>2];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];F[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=F[c>>2]+7&-8;F[c>>2]=b+8;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c}function ya(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;F[a+16>>2]=0;c=F[a>>2];F[a+4>>2]=c;F[a+12>>2]=c;g=F[b+12>>2];c=g;d=F[b+20>>2];f=F[b+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;h=F[b+8>>2];a:{if(h>>>0>>0&(c|0)<=(d|0)|(c|0)<(d|0)){break a}c=f+F[b>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;if(!c|c&3){break a}f=g-(d+(e>>>0>h>>>0)|0)|0;if(h-e>>>0>>0&(f|0)<=0|(f|0)<0){break a}if(c>>>0>=4){Aa(a,c>>>2|0);h=F[b+8>>2];g=F[b+12>>2];e=F[b+16>>2];d=F[b+20>>2]}f=c+e|0;d=c>>>0>f>>>0?d+1|0:d;if(f>>>0>h>>>0&(d|0)>=(g|0)|(d|0)>(g|0)){break a}ta(F[a>>2],e+F[b>>2]|0,c);d=F[b+20>>2];e=c+F[b+16>>2]|0;d=e>>>0>>0?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;F[a+16>>2]=0;F[a+12>>2]=F[a>>2];i=1}return i}function uh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=sa(72);F[c+4>>2]=0;F[c+8>>2]=0;F[c>>2]=2012;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c>>2]=2156;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+64>>2]=0;F[c+68>>2]=0;h=c;a:{if((b|0)>=0){g=a+8|0;c=F[a+12>>2];e=F[a+8>>2];f=c-e>>2;b:{if((f|0)>(b|0)){break b}d=b+1|0;if(b>>>0>=f>>>0){Wb(g,d-f|0);break b}if(d>>>0>=f>>>0){break b}e=(d<<2)+e|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ga[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}a=F[g>>2]+(b<<2)|0;c=F[a>>2];F[a>>2]=h;if(!c){break a}}ga[F[F[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function ua(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}D[a|0]=b;e=a+c|0;D[e-1|0]=b;if(c>>>0<3){break a}D[a+2|0]=b;D[a+1|0]=b;D[e-3|0]=b;D[e-2|0]=b;if(c>>>0<7){break a}D[a+3|0]=b;D[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=L(b&255,16843009);F[f>>2]=d;b=c-e&-4;c=b+f|0;F[c-4>>2]=d;if(b>>>0<9){break a}F[f+8>>2]=d;F[f+4>>2]=d;F[c-8>>2]=d;F[c-12>>2]=d;if(b>>>0<25){break a}F[f+24>>2]=d;F[f+20>>2]=d;F[f+16>>2]=d;F[f+12>>2]=d;F[c-16>>2]=d;F[c-20>>2]=d;F[c-24>>2]=d;F[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=Fj(d,0,1,1);e=fa;b=b+f|0;while(1){F[b+24>>2]=d;F[b+28>>2]=e;F[b+16>>2]=d;F[b+20>>2]=e;F[b+8>>2]=d;F[b+12>>2]=e;F[b>>2]=d;F[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function $d(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;e=-1;a:{b:{if((b|0)==-1){break b}g=1;f=F[F[F[a+4>>2]+12>>2]+(b<<2)>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)>=0){e=(c>>>0)/3|0;e=F[(F[F[a>>2]+96>>2]+L(e,12)|0)+(c-L(e,3)<<2)>>2]}c:{if((f|0)==-1){break c}g=0;c=((f>>>0)%3|0?-1:2)+f|0;if((c|0)<0){break c}d=(c>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(c-L(d,3)<<2)>>2]}c=-1;if((d|0)!=(e|0)){break a}e=-1;d:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){d=(b>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(b-L(d,3)<<2)>>2];if(g){break b}break d}d=-1;if(!g){break d}break b}b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)<0){break b}c=F[F[a>>2]+96>>2];a=(b>>>0)/3|0;e=F[(c+L(a,12)|0)+(b-L(a,3)<<2)>>2]}c=(d|0)==(e|0)?f:-1}return c}function Cj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=F[b+12>>2];h=d;c=F[b+20>>2];e=c;f=F[b+16>>2];g=f+4|0;c=g>>>0<4?c+1|0:c;i=F[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}j=F[b>>2];d=j+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>i>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=g+j|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}k=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1}return k|0}function Ch(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+56>>2]-F[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}e=a+8|0;b=F[a+76>>2];c:{if(b){d=F[b>>2];if((d|0)==F[b+4>>2]){return 1}b=0;while(1){c=te(e,F[(b<<2)+d>>2]);if(!c){break c}f=F[a+76>>2];d=F[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=F[F[a+12>>2]+64>>2];a=F[a+4>>2]-F[a>>2]>>2;if(a>>>0<3){break c}a=(a>>>0)/3|0;b=0;while(1){c=te(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(1336);V()}function Fg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=ea+-64|0;ea=f;e=f+8|0;E[e+38>>1]=0;F[e>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;D[e+29|0]=0;D[e+30|0]=0;D[e+31|0]=0;D[e+32|0]=0;D[e+33|0]=0;D[e+34|0]=0;D[e+35|0]=0;D[e+36|0]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e>>2]=b;F[e+8>>2]=c;F[e+12>>2]=0;b=f+48|0;Je(b,a,e,d);F[a+24>>2]=F[f+48>>2];c=a+24|0;a:{if((c|0)==(b|0)){break a}e=f+48|4;b=G[f+63|0];d=b<<24>>24;g=a+28|0;if(D[g+11|0]>=0){if((d|0)>=0){a=F[e+4>>2];F[g>>2]=F[e>>2];F[g+4>>2]=a;F[g+8>>2]=F[e+8>>2];break a}Zb(g,F[f+52>>2],F[f+56>>2]);break a}a=(d|0)<0;_b(g,a?F[f+52>>2]:e,a?F[f+56>>2]:b)}if(D[f+63|0]<0){ra(F[f+52>>2])}ea=f- -64|0;return c|0}function Eg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=ea+-64|0;ea=f;e=f+8|0;E[e+38>>1]=0;F[e>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;D[e+29|0]=0;D[e+30|0]=0;D[e+31|0]=0;D[e+32|0]=0;D[e+33|0]=0;D[e+34|0]=0;D[e+35|0]=0;D[e+36|0]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e>>2]=b;F[e+8>>2]=c;F[e+12>>2]=0;b=f+48|0;Ie(b,a,e,d);F[a+24>>2]=F[f+48>>2];c=a+24|0;a:{if((c|0)==(b|0)){break a}e=f+48|4;b=G[f+63|0];d=b<<24>>24;g=a+28|0;if(D[g+11|0]>=0){if((d|0)>=0){a=F[e+4>>2];F[g>>2]=F[e>>2];F[g+4>>2]=a;F[g+8>>2]=F[e+8>>2];break a}Zb(g,F[f+52>>2],F[f+56>>2]);break a}a=(d|0)<0;_b(g,a?F[f+52>>2]:e,a?F[f+56>>2]:b)}if(D[f+63|0]<0){ra(F[f+52>>2])}ea=f- -64|0;return c|0}function Hh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+28>>2]-F[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}e=a+8|0;b=F[a+76>>2];c:{if(b){d=F[b>>2];if((d|0)==F[b+4>>2]){return 1}b=0;while(1){c=ue(e,F[(b<<2)+d>>2]);if(!c){break c}f=F[a+76>>2];d=F[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=F[a+12>>2];a=F[a+4>>2]-F[a>>2]>>2;if(a>>>0<3){break c}a=(a>>>0)/3|0;b=0;while(1){c=ue(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(1336);V()}function of(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=F[b>>2];b=F[b+4>>2];f=F[F[a+8>>2]+40>>2];m=sa((f|0)>=0?f:-1);g=1;h=b-d|0;a:{if((h|0)<=0){break a}b=0;g=0;d=0+F[c+20>>2]|0;i=F[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;e=F[c+12>>2];if(j>>>0>I[c+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break a}k=h>>2;g=(k|0)>1?k:1;while(1){b:{e=ta(m,i+F[c>>2]|0,f);F[c+16>>2]=j;F[c+20>>2]=d;ta(F[F[F[a+8>>2]+64>>2]>>2]+b|0,e,f);l=l+1|0;if((g|0)==(l|0)){break b}b=b+f|0;d=n+F[c+20>>2]|0;i=F[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;h=e;e=F[c+12>>2];if((e|0)>=(d|0)&I[c+8>>2]>=h>>>0|(d|0)<(e|0)){continue}}break}g=(l|0)>=(k|0)}ra(m);return g|0}function ff(a,b){a=a|0;b=b|0;a=0;a:{switch(b|0){case 0:a=sa(20);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;return a|0;case 1:a=sa(24);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;return a|0;case 2:a=sa(48);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;F[a+32>>2]=0;F[a+36>>2]=0;F[a+28>>2]=-1;F[a+24>>2]=1140;F[a>>2]=11076;F[a+40>>2]=0;F[a+44>>2]=0;return a|0;case 3:a=sa(32);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;F[a+28>>2]=-1;F[a+24>>2]=1032;F[a>>2]=7056;break;default:break a}}return a|0}function Bg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=ea-32|0;ea=e;a:{b:{f=La(c);if(f>>>0<4294967280){c:{d:{if(f>>>0>=11){g=f+16&-16;a=sa(g);F[e+24>>2]=g|-2147483648;F[e+16>>2]=a;F[e+20>>2]=f;break d}D[e+27|0]=f;a=e+16|0;if(!f){break c}}ta(a,c,f)}D[a+f|0]=0;c=La(d);if(c>>>0>=4294967280){break b}e:{f:{if(c>>>0>=11){f=c+16&-16;a=sa(f);F[e+8>>2]=f|-2147483648;F[e>>2]=a;F[e+4>>2]=c;break f}D[e+11|0]=c;a=e;if(!c){break e}}ta(a,d,c)}D[a+c|0]=0;c=F[b+4>>2];a=-1;g:{if(!c){break g}c=Zd(c,e+16|0,e);a=-1;if(!c){break g}a=Vd(b,F[c+24>>2])}if(D[e+11|0]<0){ra(F[e>>2])}if(D[e+27|0]<0){ra(F[e+16>>2])}ea=e+32|0;break a}Ma();V()}Ma();V()}return a|0}function Xi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;F[b>>2]=1;f=b+8|0;c=F[b+8>>2];d=F[b+12>>2]-c|0;if(d>>>0<=4294967291){jc(f,d+4|0);c=F[f>>2]}c=c+d|0;d=F[a+4>>2];D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;c=F[a+8>>2];if((c|0)!=F[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=F[b+8>>2];e=F[b+12>>2]-c|0;if(e>>>0<=4294967291){jc(f,e+4|0);c=F[f>>2]}c=c+e|0;e=F[g>>2];D[c|0]=e;D[c+1|0]=e>>>8;D[c+2|0]=e>>>16;D[c+3|0]=e>>>24;d=d+1|0;c=F[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=F[b+12>>2];b=F[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){jc(f,c+4|0);b=F[f>>2]}b=b+c|0;a=F[a+20>>2];D[b|0]=a;D[b+1|0]=a>>>8;D[b+2|0]=a>>>16;D[b+3|0]=a>>>24}function Na(a,b,c){var d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[a+4>>2]=0;a:{b:{if(!b){break b}g=F[a+8>>2];d=g<<5;c:{if(d>>>0>=b>>>0){F[a+4>>2]=b;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=b+31&-32;d=g<<6;d=d>>>0>>0?f:d}else{d=2147483647}cb(e,d);f=F[a>>2];F[a>>2]=F[e>>2];F[e>>2]=f;d=F[a+4>>2];F[a+4>>2]=b;F[e+4>>2]=d;d=F[a+8>>2];F[a+8>>2]=F[e+8>>2];F[e+8>>2]=d;if(!f){break c}ra(f)}f=b>>>5|0;d=f<<2;a=F[a>>2];if(G[c|0]){a=ua(a,255,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;F[a>>2]=F[a>>2]|-1>>>32-b;break b}a=ua(a,0,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;F[a>>2]=F[a>>2]&(-1>>>32-b^-1)}ea=e+16|0;return}va();V()}function mb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=F[b>>2];g=F[b+8>>2];i=F[b+4>>2];j=F[b>>2];d=F[a>>2];b=F[d+4>>2];c=F[d+8>>2];if(b>>>0>>0){F[b+8>>2]=g;F[b+4>>2]=i;F[b>>2]=j;F[d+4>>2]=b+12;return}a:{e=F[d>>2];f=(b-e|0)/12|0;a=f+1|0;if(a>>>0<357913942){c=(c-e|0)/12|0;h=c<<1;a=c>>>0<178956970?a>>>0>h>>>0?a:h:357913941;if(a>>>0>=357913942){break a}h=L(f,12);c=L(a,12);f=sa(c);a=h+f|0;F[a+8>>2]=g;F[a+4>>2]=i;F[a>>2]=j;g=a+12|0;if((b|0)!=(e|0)){while(1){a=a-12|0;b=b-12|0;F[a>>2]=F[b>>2];F[a+4>>2]=F[b+4>>2];F[a+8>>2]=F[b+8>>2];if((b|0)!=(e|0)){continue}break}}F[d+8>>2]=c+f;F[d+4>>2]=g;F[d>>2]=a;if(e){ra(e)}return}va();V()}wa(1336);V()}function Ji(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=ea-32|0;ea=f;g=(e&1073741823)!=(e|0)?-1:e<<2;l=ua(sa(g),0,g);g=l;i=F[g>>2];g=F[g+4>>2];k=F[b+4>>2];F[f+24>>2]=F[b>>2];F[f+28>>2]=k;F[f+8>>2]=i;F[f+12>>2]=g;i=a+8|0;qc(f+16|0,i,f+8|0,f+24|0);F[c>>2]=F[f+16>>2];F[c+4>>2]=F[f+20>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){h=a<<2;g=h+c|0;j=g+k|0;m=F[j>>2];j=F[j+4>>2];h=b+h|0;n=F[h+4>>2];F[f+24>>2]=F[h>>2];F[f+28>>2]=n;F[f+8>>2]=m;F[f+12>>2]=j;qc(f+16|0,i,f+8|0,f+24|0);F[g>>2]=F[f+16>>2];F[g+4>>2]=F[f+20>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}ra(l);ea=f+32|0;return 1}function Bi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=ea-32|0;ea=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=ua(sa(h),0,h);g=F[b>>2];i=F[b+4>>2];k=F[h+4>>2];F[f+16>>2]=F[h>>2];F[f+20>>2]=k;F[f+8>>2]=g;F[f+12>>2]=i;i=a+8|0;pc(f+24|0,i,f+16|0,f+8|0);F[c>>2]=F[f+24>>2];F[c+4>>2]=F[f+28>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){g=a<<2;j=g+b|0;m=F[j>>2];j=F[j+4>>2];g=c+g|0;l=g+k|0;n=F[l+4>>2];F[f+16>>2]=F[l>>2];F[f+20>>2]=n;F[f+8>>2]=m;F[f+12>>2]=j;pc(f+24|0,i,f+16|0,f+8|0);F[g>>2]=F[f+24>>2];F[g+4>>2]=F[f+28>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}ra(h);ea=f+32|0;return 1}function Ni(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=F[b+12>>2];c=F[b+20>>2];f=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=F[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}d=g+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;if(H[b+38>>1]<=513){c=f;f=g+8|0;c=f>>>0<8?c+1|0:c;if(f>>>0>h>>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}F[b+16>>2]=f;F[b+20>>2]=c}if(!(d&1)){break a}b=O(d)^31;c=b-30|0;if(c>>>0>=4294967267){F[a+8>>2]=b+1;e=-2<>2]=b;F[a+12>>2]=e^-1;F[a+24>>2]=(b|0)/2;J[a+20>>2]=M(2)/M(b|0)}j=c>>>0>4294967266}return j|0}function Cb(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=F[a+8>>2];e=F[a>>2];if(g>>>0<=d-e>>2>>>0){f=F[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){F[e>>2]=F[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>0){f=ta(f,d,b)+b|0}F[a+4>>2]=f;return}F[a+4>>2]=e;return}if(e){F[a+4>>2]=e;ra(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>2>>>0<536870911?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=sa(e);F[a>>2]=c;F[a+4>>2]=c;F[a+8>>2]=c+e;if(f){c=ta(c,b,f)+f|0}F[a+4>>2]=c;return}va();V()}function pf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=1;a:{if((ga[F[F[b>>2]+20>>2]](b)|0)<=0){break a}while(1){f=0;c=Wd(F[F[a+4>>2]+4>>2],ga[F[F[b>>2]+24>>2]](b,g)|0);if((c|0)==-1){break a}e=F[a+4>>2];b:{if(G[e+36|0]<=1){if(ga[F[F[b>>2]+28>>2]](b,F[F[F[e+4>>2]+8>>2]+(c<<2)>>2])|0){break b}break a}d=0;c:{if((c|0)<0){break c}h=F[e+4>>2];if(F[h+12>>2]-F[h+8>>2]>>2<=(c|0)){break c}d=F[F[e+8>>2]+(F[F[e+20>>2]+(c<<2)>>2]<<2)>>2];d=ga[F[F[d>>2]+32>>2]](d,c)|0}if(!d){break a}if(!(ga[F[F[b>>2]+28>>2]](b,d)|0)){break a}}f=1;g=g+1|0;if((ga[F[F[b>>2]+20>>2]](b)|0)>(g|0)){continue}break}}return f|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a=ea-32|0;ea=a;F[a+24>>2]=0;F[a+28>>2]=0;a:{d=La(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=sa(f);F[a+16>>2]=f|-2147483648;F[a+8>>2]=e;F[a+12>>2]=d;break c}D[a+19|0]=d;e=a+8|0;if(!d){break b}}ta(e,c,d)}D[d+e|0]=0;c=b+4|0;b=qb(b,a+8|0);d:{if((c|0)==(b|0)){break d}c=F[b+32>>2];b=F[b+28>>2];if((c-b|0)!=8){break d}c=G[b+4|0]|G[b+5|0]<<8|(G[b+6|0]<<16|G[b+7|0]<<24);F[a+24>>2]=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[a+28>>2]=c}g=K[a+24>>3];if(D[a+19|0]<0){ra(F[a+8>>2])}ea=a+32|0;break a}Ma();V()}return+g}function ze(a){var b=0,c=0,d=0,e=0;c=1;d=F[a+140>>2];a:{if((d|0)<=0){break a}b=d<<4;c=sa((d|0)!=(d&268435455)?-1:b|4);F[c>>2]=d;c=c+4|0;d=c+b|0;b=c;while(1){F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=b+16|0;if((d|0)!=(b|0)){continue}break}e=F[a+136>>2];F[a+136>>2]=c;if(e){d=e-4|0;c=F[d>>2];if(c){b=(c<<4)+e|0;while(1){b=b-16|0;if((e|0)!=(b|0)){continue}break}}ra(d)}c=1;if(F[a+140>>2]<=0){break a}b=0;while(1){c=xa(F[a+136>>2]+(b<<4)|0,a);if(!c){break a}b=b+1|0;if((b|0)>2]){continue}break}}return c}function pb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(F[a+64>>2]){break a}c=sa(32);F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=F[a+64>>2];F[a+64>>2]=c;if(!d){break a}c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}ra(d)}e=F[a+64>>2];c=F[a+28>>2]-1|0;if(c>>>0<=10){d=F[(c<<2)+13616>>2]}else{d=-1}c=L(d,D[a+24|0]);d=c;g=c>>31;e=qe(e,0,Fj(c,g,b,0),fa);if(e){c=F[a+64>>2];F[a>>2]=c;f=F[c+20>>2];F[a+8>>2]=F[c+16>>2];F[a+12>>2]=f;f=F[c+24>>2];c=F[c+28>>2];F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=d;F[a+44>>2]=g;F[a+16>>2]=f;F[a+20>>2]=c;F[a+80>>2]=b}return e}function Fi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=F[b+12>>2];c=F[b+20>>2];e=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=F[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}d=g+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;e=g+8|0;c=e>>>0<8?c+1|0:c;if(e>>>0>h>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=e;F[b+20>>2]=c;if(!(d&1)){break a}b=O(d)^31;if(b-30>>>0<4294967267){break a}j=1;F[a+8>>2]=b+1;c=-2<>2]=b;F[a+12>>2]=c^-1;F[a+24>>2]=(b|0)/2;J[a+20>>2]=M(2)/M(b|0)}return j|0}function He(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+4|0;a:{a=F[a+4>>2];if(a){e=G[c+11|0];d=e<<24>>24<0;i=d?F[c>>2]:c;e=d?F[c+4>>2]:e;while(1){c=G[a+27|0];d=c<<24>>24<0;c=d?F[a+20>>2]:c;j=c>>>0>>0;b:{c:{d:{e:{f:{h=j?c:e;g:{if(h){g=a+16|0;d=d?F[g>>2]:g;g=Ha(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>=0){break f}break g}if(c>>>0<=e>>>0){break e}}c=F[a>>2];if(c){break b}F[b>>2]=a;return a}c=Ha(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>=0){break a}}f=a+4|0;c=F[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}F[b>>2]=f;return f}F[b>>2]=a;return f}function kc(a,b){var c=0;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;c=F[b+60>>2];F[a+56>>2]=F[b+56>>2];F[a+60>>2]=c;c=F[b+52>>2];F[a+48>>2]=F[b+48>>2];F[a+52>>2]=c;c=F[b+44>>2];F[a+40>>2]=F[b+40>>2];F[a+44>>2]=c;c=F[b+36>>2];F[a+32>>2]=F[b+32>>2];F[a+36>>2]=c;c=F[b+28>>2];F[a+24>>2]=F[b+24>>2];F[a+28>>2]=c;c=F[b+20>>2];F[a+16>>2]=F[b+16>>2];F[a+20>>2]=c;c=F[b+12>>2];F[a+8>>2]=F[b+8>>2];F[a+12>>2]=c;F[a+88>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;D[a+77|0]=0;D[a+78|0]=0;D[a+79|0]=0;D[a+80|0]=0;D[a+81|0]=0;D[a+82|0]=0;D[a+83|0]=0;D[a+84|0]=0;return a}function qb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;a=F[a+4>>2];a:{b:{if(!a){break b}d=G[b+11|0];c=d<<24>>24<0;i=c?F[b>>2]:b;e=c?F[b+4>>2]:d;c=g;while(1){b=G[a+27|0];j=b<<24>>24<0;h=j?F[a+20>>2]:b;f=h>>>0>e>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Ha(j?F[b>>2]:b,i,d);if(b){break c}}b=e>>>0>h>>>0?-1:f}c=(b|0)<0?c:a;a=F[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=G[c+27|0];f=a<<24>>24<0;d:{d=f?F[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=Ha(i,f?F[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>=0){break a}}c=g}return c}function Bf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Xa(a,F[b+8>>2],e)){if(!(F[b+28>>2]==1|F[b+4>>2]!=(c|0))){F[b+28>>2]=d}return}a:{if(Xa(a,F[b>>2],e)){if(!(F[b+16>>2]!=(c|0)&F[b+20>>2]!=(c|0))){if((d|0)!=1){break a}F[b+32>>2]=1;return}F[b+32>>2]=d;b:{if(F[b+44>>2]==4){break b}E[b+52>>1]=0;a=F[a+8>>2];ga[F[F[a>>2]+20>>2]](a,b,c,c,1,e);if(G[b+53|0]){F[b+44>>2]=3;if(!G[b+52|0]){break b}break a}F[b+44>>2]=4}F[b+20>>2]=c;F[b+40>>2]=F[b+40>>2]+1;if(F[b+36>>2]!=1|F[b+24>>2]!=2){break a}D[b+54|0]=1;return}a=F[a+8>>2];ga[F[F[a>>2]+24>>2]](a,b,c,d,e)}}function Db(a,b,c){var d=0,e=0,f=0,g=0;a:{b:{if(!b){break b}if(H[a+38>>1]<=513){e=F[a+12>>2];b=F[a+20>>2];f=F[a+16>>2];g=f+8|0;b=g>>>0<8?b+1|0:b;if(g>>>0>I[a+8>>2]&(b|0)>=(e|0)|(b|0)>(e|0)){break a}b=f+F[a>>2]|0;d=G[b+4|0]|G[b+5|0]<<8|(G[b+6|0]<<16|G[b+7|0]<<24);F[c>>2]=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[c+4>>2]=d;b=F[a+20>>2];c=F[a+16>>2]+8|0;b=c>>>0<8?b+1|0:b;F[a+16>>2]=c;F[a+20>>2]=b;break b}if(!pe(1,c,a)){break a}}D[a+36|0]=1;F[a+32>>2]=0;b=F[a+16>>2];c=b+F[a>>2]|0;F[a+24>>2]=c;d=a;a=F[a+8>>2];F[d+28>>2]=c+(a-b|0);d=1}return d}function vb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}d=L(b,12);b=sa(d);F[a>>2]=b;F[a+4>>2]=b;e=b+d|0;F[a+8>>2]=e;f=F[c>>2];c=F[c+4>>2]-f|0;c:{if(!c){c=b;b=d-12|0;ua(c,0,(b-((b>>>0)%12|0)|0)+12|0);break c}if((c|0)<0){break a}g=c>>2<<2;h=c>>>2<<2;while(1){F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;d=sa(c);F[b>>2]=d;F[b+4>>2]=d;F[b+8>>2]=d+g;i=b,j=ta(d,f,c)+h|0,F[i+4>>2]=j;b=b+12|0;if((e|0)!=(b|0)){continue}break}}F[a+4>>2]=e}return}va();V()}F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;va();V()}function se(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=sa(64);c=sa(12);F[c+8>>2]=F[F[a+4>>2]+80>>2];F[c>>2]=13248;F[c+4>>2]=0;f=pd(f,c);a:{b:{if((b|0)<0){c=f;break b}h=a+8|0;c=F[a+12>>2];e=F[a+8>>2];g=c-e>>2;c:{if((g|0)>(b|0)){break c}d=b+1|0;if(b>>>0>=g>>>0){Wb(h,d-g|0);break c}if(d>>>0>=g>>>0){break c}e=e+(d<<2)|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ga[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}a=F[h>>2]+(b<<2)|0;c=F[a>>2];F[a>>2]=f;if(!c){break a}}ga[F[F[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function Ad(a,b){var c=0,d=0,e=0,f=0;d=ea-16|0;ea=d;F[d+12>>2]=b;c=ea-208|0;ea=c;F[c+204>>2]=b;b=c+160|0;ua(b,0,40);F[c+200>>2]=F[c+204>>2];a:{if((Qd(0,a,c+200|0,c+80|0,b)|0)<0){break a}f=F[3887]>=0;b=F[3868];if(F[3886]<=0){F[3868]=b&-33}b:{c:{d:{if(!F[3880]){F[3880]=80;F[3875]=0;F[3872]=0;F[3873]=0;e=F[3879];F[3879]=c;break d}if(F[3872]){break c}}if(Ed(15472)){break b}}Qd(15472,a,c+200|0,c+80|0,c+160|0)}if(e){ga[F[3877]](15472,0,0)|0;F[3880]=0;F[3879]=e;F[3875]=0;F[3872]=0;F[3873]=0}F[3868]=F[3868]|b&32;if(!f){break a}}ea=c+208|0;ea=d+16|0}function Ca(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=F[a+8>>2];e=F[a>>2];if(g>>>0<=d-e>>2>>>0){d=F[a+4>>2]-e|0;f=d>>2;d=f>>>0>>0?b+d|0:c;h=d-b|0;if(h){Ua(e,b,h)}if(f>>>0>>0){b=F[a+4>>2];c=c-d|0;if((c|0)>0){b=ta(b,d,c)+c|0}F[a+4>>2]=b;return}F[a+4>>2]=e+h;return}if(e){F[a+4>>2]=e;ra(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>2>>>0<536870911?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=sa(e);F[a>>2]=c;F[a+4>>2]=c;F[a+8>>2]=c+e;if(f){c=ta(c,b,f)+f|0}F[a+4>>2]=c;return}va();V()}function Kc(a,b,c){var d=0,e=0,f=0,g=0;a:{if(!((b|0)<0|(c|0)<0)){b:{if(b>>>0>1431655765){break b}d=L(b,3);Jc(a,d,13680);Jc(a+12|0,d,13684);d=F[a+24>>2];c:{if(F[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=F[a+28>>2];f=c<<2;c=sa(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>0){ta(c,d,e)}F[a+32>>2]=f;F[a+28>>2]=g;F[a+24>>2]=c;if(!d){break c}ra(d)}F[a+80>>2]=0;F[a+84>>2]=0;c=F[a+76>>2];F[a+76>>2]=0;if(c){ra(c)}F[a+68>>2]=0;F[a+72>>2]=0;c=a- -64|0;a=F[c>>2];F[c>>2]=0;if(!a){break b}ra(a)}d=b>>>0<1431655766}return d}wa(1336);V()}function tb(a){var b=0,c=0,d=0,e=0,f=0;d=F[a+8>>2];a:{if(G[d+84|0]){break a}b=F[a+16>>2];if(!b|!G[b+84|0]){break a}c=F[d+72>>2];e=F[d+68>>2];D[b+84|0]=0;c=c-e>>2;f=F[b+68>>2];e=F[b+72>>2]-f>>2;b:{if(c>>>0>e>>>0){Ia(b+68|0,c-e|0,2344);d=F[a+8>>2];break b}if(c>>>0>=e>>>0){break b}F[b+72>>2]=f+(c<<2)}b=G[d+84|0];if(b){break a}c=F[d+68>>2];if((c|0)==F[d+72>>2]){break a}e=F[F[a+16>>2]+68>>2];if(!b){b=0;while(1){f=b<<2;F[f+e>>2]=F[c+f>>2];b=b+1|0;c=F[d+68>>2];if(b>>>0>2]-c>>2>>>0){continue}break}break a}F[e>>2]=0}return F[a+16>>2]}function jd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{c=F[a+216>>2];if((c|0)==F[a+220>>2]){break a}while(1){b:{c=F[L(e,144)+c>>2];if((c|0)<0){break b}d=F[a+4>>2];f=F[d+8>>2];if((c|0)>=F[d+12>>2]-f>>2){break b}d=0;c=F[(c<<2)+f>>2];if((ga[F[F[c>>2]+24>>2]](c)|0)<=0){break b}while(1){if((ga[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ga[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break b}break}a=F[a+216>>2]+L(e,144)|0;e=G[a+100|0]?a+4|0:0;break a}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}return 0}return e|0}function Sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=F[a+4>>2];if((c|0)!=F[a+8>>2]){d=F[b+4>>2];F[c>>2]=F[b>>2];F[c+4>>2]=d;F[c+8>>2]=F[b+8>>2];F[a+4>>2]=c+12;return}a:{f=F[a>>2];g=c-f|0;d=(g|0)/12|0;c=d+1|0;if(c>>>0<357913942){e=d<<1;e=d>>>0<178956970?c>>>0>e>>>0?c:e:357913941;if(e){if(e>>>0>=357913942){break a}c=sa(L(e,12))}else{c=0}d=c+L(d,12)|0;h=F[b+4>>2];F[d>>2]=F[b>>2];F[d+4>>2]=h;F[d+8>>2]=F[b+8>>2];b=d+L((g|0)/-12|0,12)|0;if((g|0)>0){ta(b,f,g)}F[a+8>>2]=c+L(e,12);F[a+4>>2]=d+12;F[a>>2]=b;if(f){ra(f)}return}va();V()}wa(1336);V()}function kf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=F[a+60>>2];a:{if(!c){break a}F[c+4>>2]=a+48;if(!(ga[F[F[c>>2]+12>>2]](c)|0)){break a}b:{c=ga[F[F[a>>2]+24>>2]](a)|0;if((c|0)<=0){break b}while(1){c:{f=F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2];g=ga[F[F[a>>2]+20>>2]](a,d)|0;e=F[a+60>>2];if(!(ga[F[F[e>>2]+8>>2]](e,F[F[f+8>>2]+(g<<2)>>2])|0)){break c}d=d+1|0;if((c|0)!=(d|0)){continue}break b}break}return 0}d=0;if(!(ga[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(ga[F[F[a>>2]+40>>2]](a,b)|0)){break a}d=ga[F[F[a>>2]+44>>2]](a)|0}return d|0}function zb(a){var b=0,c=0,d=0,e=0;c=F[a+132>>2];if(c){b=F[a+136>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+132>>2]}F[a+136>>2]=c;ra(b)}c=F[a+120>>2];if(c){b=F[a+124>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+120>>2]}F[a+124>>2]=c;ra(b)}b=F[a+108>>2];if(b){F[a+112>>2]=b;ra(b)}b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}Ya(a+76|0);Ya(a+56|0);Ya(a+36|0);Ya(a+16|0)}function sd(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2156;b=F[a+60>>2];if(b){c=F[a- -64>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){Ja(d)}if((b|0)!=(c|0)){continue}break}c=F[a+60>>2]}F[a+64>>2]=b;ra(c)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){c=F[a+40>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-24|0;ga[F[F[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}c=F[a+36>>2]}F[a+40>>2]=b;ra(c)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function Jd(a,b,c,d,e,f,g){var h=0,i=0,j=0;h=ea-16|0;ea=h;if((b^-1)-17>>>0>=c>>>0){if(G[a+11|0]>>>7|0){j=F[a>>2]}else{j=a}a:{if(b>>>0<2147483623){F[h+8>>2]=b<<1;F[h+12>>2]=b+c;c=ea-16|0;ea=c;ea=c+16|0;c=h+8|0;i=h+12|0;c=F[(I[i>>2]>2]?c:i)>>2];if(c>>>0>=11){i=c+16&-16;c=i-1|0;c=(c|0)==11?i:c}else{c=10}break a}c=-18}i=c+1|0;c=sa(i);if(f){kb(c,g,f)}d=d-e|0;if(d){kb(c+f|0,e+j|0,d)}if((b|0)!=10){ra(j)}F[a>>2]=c;F[a+8>>2]=i|-2147483648;b=a;a=d+f|0;F[b+4>>2]=a;D[h+7|0]=0;D[a+c|0]=G[h+7|0];ea=h+16|0;return}Ma();V()}function $a(a){var b=0,c=0,d=0,e=0;c=F[a+640>>2];if(c){b=F[a+644>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+640>>2]}F[a+644>>2]=c;ra(b)}c=F[a+628>>2];if(c){b=F[a+632>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+628>>2]}F[a+632>>2]=c;ra(b)}b=F[a+616>>2];if(b){F[a+620>>2]=b;ra(b)}b=F[a+604>>2];if(b){F[a+608>>2]=b;ra(b)}Ya(a+584|0);Ya(a+564|0);Ya(a+544|0)}function xb(a){var b=0,c=0,d=0,e=0;c=F[a+128>>2];if(c){b=F[a+132>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+128>>2]}F[a+132>>2]=c;ra(b)}c=F[a+116>>2];if(c){b=F[a+120>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+116>>2]}F[a+120>>2]=c;ra(b)}b=F[a+104>>2];if(b){F[a+108>>2]=b;ra(b)}b=F[a+92>>2];if(b){F[a+96>>2]=b;ra(b)}Ya(a+72|0);Ya(a+52|0);Ya(a+32|0)}function id(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F[a+216>>2];if((c|0)!=F[a+220>>2]){while(1){a:{c=F[L(e,144)+c>>2];if((c|0)<0){break a}d=F[a+4>>2];f=F[d+8>>2];if((c|0)>=F[d+12>>2]-f>>2){break a}d=0;c=F[(c<<2)+f>>2];if((ga[F[F[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((ga[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ga[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break a}break}return(F[a+216>>2]+L(e,144)|0)+104|0}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function cb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=ea-16|0;ea=c;a:{b:{if(F[a+8>>2]<<5>>>0>=b>>>0){break b}F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;if((b|0)<0){break a}g=(b-1>>>5|0)+1|0;e=sa(g<<2);F[c+8>>2]=g;F[c>>2]=e;f=F[a>>2];b=F[a+4>>2];F[c+4>>2]=b;F[((b>>>0<33?0:b-1>>>5|0)<<2)+e>>2]=0;c:{if((b|0)<=0){break c}h=b>>>5|0;d=h<<2;i=Ua(e,f,d);b=b-(h<<5)|0;if((b|0)<=0){break c}d=d+i|0;b=-1>>>32-b|0;F[d>>2]=F[d>>2]&(b^-1)|b&F[(h<<2)+f>>2]}F[a+8>>2]=g;F[a>>2]=e;if(!f){break b}ra(f)}ea=c+16|0;return}va();V()}function Cg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a=ea-32|0;ea=a;a:{d=La(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=sa(f);F[a+24>>2]=f|-2147483648;F[a+16>>2]=e;F[a+20>>2]=d;break c}D[a+27|0]=d;e=a+16|0;if(!d){break b}}ta(e,c,d)}D[d+e|0]=0;D[a+4|0]=0;F[a>>2]=1701667182;D[a+11|0]=4;d=F[b+4>>2];c=-1;d:{if(!d){break d}d=Zd(d,a,a+16|0);c=-1;if(!d){break d}c=Vd(b,F[d+24>>2])}b=c;if(D[a+11|0]<0){ra(F[a>>2])}if(D[a+27|0]<0){ra(F[a+16>>2])}ea=a+32|0;break a}Ma();V()}return b|0}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ea-16|0;ea=d;F[d+12>>2]=0;a:{e=La(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=sa(f);F[d+8>>2]=f|-2147483648;F[d>>2]=a;F[d+4>>2]=e;break c}D[d+11|0]=e;a=d;if(!e){break b}}ta(a,c,e)}D[a+e|0]=0;a=qb(b,d);d:{if((a|0)==(b+4|0)){break d}b=F[a+32>>2];a=F[a+28>>2];if((b-a|0)!=4){break d}F[d+12>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)}a=F[d+12>>2];if(D[d+11|0]<0){ra(F[d>>2])}ea=d+16|0;break a}Ma();V()}return a|0}function Nd(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!F[F[3971]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){D[a+1|0]=b&63|128;D[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){D[a+2|0]=b&63|128;D[a|0]=b>>>12|224;D[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){D[a+3|0]=b&63|128;D[a|0]=b>>>18|240;D[a+2|0]=b>>>6&63|128;D[a+1|0]=b>>>12&63|128;a=4;break a}}F[3934]=25;a=-1}else{a=1}break a}D[a|0]=b;a=1}return a}function $b(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13756;b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}b=F[a+44>>2];if(b){F[a+48>>2]=b;ra(b)}b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){Ja(b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}b=F[a+4>>2];F[a+4>>2]=0;if(b){Sc(b)}return a|0}function Aa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>2>>>0<536870911?d>>>0>i>>>0?d:i:1073741823;if(d){if(d>>>0>=1073741824){break a}c=sa(d<<2)}b=b<<2;b=ua((h<<2)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<2)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}wa(1336);V()}function sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>3>>>0<268435455?d>>>0>i>>>0?d:i:536870911;if(d){if(d>>>0>=536870912){break a}c=sa(d<<3)}b=b<<3;b=ua((h<<3)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<3)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}wa(1336);V()}function gb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a>>2];a=F[e+4>>2];c=F[e+8>>2];if(a>>>0>>0){F[a>>2]=F[b>>2];F[e+4>>2]=a+4;return}a:{f=F[e>>2];g=a-f|0;d=g>>2;a=d+1|0;if(a>>>0<1073741824){h=d<<2;c=c-f|0;d=c>>1;c=c>>2>>>0<536870911?a>>>0>d>>>0?a:d:1073741823;if(c){if(c>>>0>=1073741824){break a}a=sa(c<<2)}else{a=0}d=h+a|0;F[d>>2]=F[b>>2];if((g|0)>0){ta(a,f,g)}F[e+8>>2]=a+(c<<2);F[e+4>>2]=d+4;F[e>>2]=a;if(f){ra(f)}return}va();V()}wa(1336);V()}function oe(a,b){var c=0,d=0,e=0,f=0;c=a+4|0;a=qb(a,b);a:{if((c|0)==(a|0)){break a}b=D[a+39|0]<0?F[a+28>>2]:a+28|0;while(1){a=b;b=a+1|0;c=D[a|0];if((c|0)==32|c-9>>>0<5){continue}break}b:{c:{d:{c=D[a|0];switch(c-43|0){case 0:break c;case 2:break d;default:break b}}e=1}c=D[b|0];a=b}if(c-48>>>0<10){while(1){d=(L(d,10)-D[a|0]|0)+48|0;b=D[a+1|0];a=a+1|0;if(b-48>>>0<10){continue}break}}a=e?d:0-d|0;if((a|0)==-1){break a}f=(a|0)!=0}return f}function ib(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{c=F[a+4>>2];e=F[a>>2];f=c-e|0;b:{if(f>>>0>>0){g=b-f|0;d=F[a+8>>2];if(g>>>0<=d-c>>>0){if(g){c=ua(c,0,g)+g|0}F[a+4>>2]=c;return}if((b|0)<0){break a}c=0;d=d-e|0;h=d<<1;d=d>>>0<1073741823?b>>>0>h>>>0?b:h:2147483647;if(d){c=sa(d)}ua(c+f|0,0,g);if((f|0)>0){ta(c,e,f)}F[a+8>>2]=c+d;F[a+4>>2]=b+c;F[a>>2]=c;if(!e){break b}ra(e);return}if(b>>>0>=f>>>0){break b}F[a+4>>2]=b+e}return}va();V()}function ef(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2356;b=F[a+60>>2];F[a+60>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}d=F[a+36>>2];if(d){c=F[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;ra(b)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function df(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2356;b=F[a+60>>2];F[a+60>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}d=F[a+36>>2];if(d){c=F[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;ra(b)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}ra(a)}function ne(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>=0){c=0;e=e-f|0;d=e>>1>>>0<1073741823?d>>>0>e>>>0?d:e:2147483647;if(d){if((d|0)<0){break a}c=sa(d<<1)}b=b<<1;b=ua((h<<1)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<1)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}wa(1336);V()}function ri(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=ea-16|0;ea=d;e=F[a+4>>2];a:{if((e|0)==-1){break a}c=F[b+20>>2];if(!!F[b+16>>2]&(c|0)>=0|(c|0)>0){break a}Yb(b,F[b+4>>2],F[a+8>>2],F[a+12>>2]);c=F[b+20>>2];if(!!F[b+16>>2]&(c|0)>=0|(c|0)>0){break a}c=a+20|0;Yb(b,F[b+4>>2],c,c+4|0);c=F[b+20>>2];f=F[b+16>>2];D[d+15|0]=F[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}Yb(b,F[b+4>>2],d+15|0,d+16|0)}ea=d+16|0;return(e|0)!=-1|0}function zh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=F[a+8>>2];b:{if((b|0)<0){break b}c=F[a+4>>2];e=F[c>>2];d=F[c+4>>2]-e>>2;c:{if(d>>>0>>0){Aa(c,b-d|0);f=F[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}F[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=F[a+4>>2];c=F[a>>2];e=F[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}F[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}Da();V()}function hg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;Je(d,a,b,c);F[a+24>>2]=F[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=G[d+15|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}Zb(a,F[d+4>>2],F[d+8>>2]);break a}g=a;a=(c|0)<0;_b(g,a?F[d+4>>2]:b,a?F[d+8>>2]:f)}if(D[d+15|0]<0){ra(F[d+4>>2])}ea=d+16|0;return e|0}function gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;Ie(d,a,b,c);F[a+24>>2]=F[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=G[d+15|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}Zb(a,F[d+4>>2],F[d+8>>2]);break a}g=a;a=(c|0)<0;_b(g,a?F[d+4>>2]:b,a?F[d+8>>2]:f)}if(D[d+15|0]<0){ra(F[d+4>>2])}ea=d+16|0;return e|0}function sg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a=ea-32|0;ea=a;e=D[b+24|0];f=F[3419];F[a+24>>2]=F[3418];F[a+28>>2]=f;f=F[3417];F[a+16>>2]=F[3416];F[a+20>>2]=f;a:{b:{c=Wa(b,c,e,a+16|0);if(c){F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;b=0;if(e){if((e|0)<0){break b}e=e<<2;b=sa(e);g=ta(b,a+16|0,e)+e|0}e=F[d>>2];if(e){F[d+4>>2]=e;ra(e)}F[d+8>>2]=g;F[d+4>>2]=g;F[d>>2]=b}ea=a+32|0;break a}va();V()}return c|0}function Ra(a){var b=0,c=0,d=0,e=0,f=0;b=F[a+4>>2];if((b|0)!=F[a+8>>2]){F[b>>2]=F[2863];F[a+4>>2]=b+4;return}a:{e=F[a>>2];f=b-e|0;d=f>>2;b=d+1|0;if(b>>>0<1073741824){c=f>>1;c=d>>>0<536870911?b>>>0>c>>>0?b:c:1073741823;if(c){if(c>>>0>=1073741824){break a}b=sa(c<<2)}else{b=0}d=b+(d<<2)|0;F[d>>2]=F[2863];if((f|0)>0){ta(b,e,f)}F[a+8>>2]=b+(c<<2);F[a+4>>2]=d+4;F[a>>2]=b;if(e){ra(e)}return}va();V()}wa(1336);V()}function zc(a,b,c){var d=0,e=0,f=0;d=F[c+16>>2];a:{if(!d){if(Ed(c)){break a}d=F[c+16>>2]}f=F[c+20>>2];if(d-f>>>0>>0){return ga[F[c+36>>2]](c,a,b)|0}b:{if(F[c+80>>2]<0){d=0;break b}e=b;while(1){d=e;if(!d){d=0;break b}e=d-1|0;if(G[e+a|0]!=10){continue}break}e=ga[F[c+36>>2]](c,a,d)|0;if(e>>>0>>0){break a}a=a+d|0;b=b-d|0;f=F[c+20>>2]}ta(f,a,b);F[c+20>>2]=F[c+20>>2]+b;e=b+d|0}return e}function Gb(a,b){var c=0,d=0,e=0,f=0;d=F[a+12>>2];c=F[a+16>>2]-d>>2;a:{if(c>>>0>>0){Aa(a+12|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}F[a+16>>2]=d+(b<<2)}b:{c=F[a>>2];c:{if(F[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=F[a+4>>2];e=b<<2;b=sa(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){ta(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break c}ra(c)}return}wa(1336);V()}function Kg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;a:{e=La(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=sa(g);F[d+8>>2]=g|-2147483648;F[d>>2]=f;F[d+4>>2]=e;break c}D[d+11|0]=e;f=d;if(!e){break b}}ta(f,c,e)}D[e+f|0]=0;f=a+16|0;c=Yd(b,d,f);b=D[a+27|0];a=F[a+16>>2];if(D[d+11|0]<0){ra(F[d>>2])}ea=d+16|0;a=c?(b|0)<0?a:f:0;break a}Ma();V()}return a|0}function ad(a){var b=0,c=0,d=0,e=0;if(G[a+76|0]){D[a+76|0]=0;d=F[a+60>>2];c=F[a+72>>2]+7|0;b=c>>>0<7?1:b;e=b>>>3|0;c=b<<29|c>>>3;b=c+F[a+56>>2]|0;d=d+e|0;F[a+56>>2]=b;F[a+60>>2]=b>>>0>>0?d+1|0:d}if(H[a+38>>1]<=513){D[a+132|0]=0;d=F[a+116>>2];b=0;c=F[a+128>>2]+7|0;b=c>>>0<7?1:b;e=b>>>3|0;c=b<<29|c>>>3;b=c+F[a+112>>2]|0;d=d+e|0;F[a+112>>2]=b;F[a+116>>2]=b>>>0>>0?d+1|0:d}}function Kh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=ea+-64|0;ea=d;e=ga[F[F[a>>2]+44>>2]](a,b)|0;a=ga[F[F[a>>2]+40>>2]](a,b)|0;f=Eb(d);g=F[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=F[(a<<2)+13616>>2]}else{a=-1}a=L(a,e);lc(f,g,h,i,0,a,a>>31);a=kc(sa(96),f);pb(a,c);D[a+84|0]=1;F[a+72>>2]=F[a+68>>2];F[a+60>>2]=F[b+60>>2];ea=d- -64|0;return a|0}function pe(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=F[c+20>>2];e=F[c+12>>2];f=F[c+16>>2];if((d|0)>=(e|0)&f>>>0>=I[c+8>>2]|(d|0)>(e|0)){break a}e=D[f+F[c>>2]|0];f=f+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;b:{if((e|0)<0){if(!pe(a+1|0,b,c)){break a}c=F[b>>2];a=F[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}F[b>>2]=c;F[b+4>>2]=a;g=1}return g}function bb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=F[c+20>>2];e=F[c+12>>2];f=F[c+16>>2];if((d|0)>=(e|0)&f>>>0>=I[c+8>>2]|(d|0)>(e|0)){break a}e=D[f+F[c>>2]|0];f=f+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;b:{if((e|0)<0){if(!bb(a+1|0,b,c)){break a}c=F[b>>2];a=F[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}F[b>>2]=c;F[b+4>>2]=a;g=1}return g}function Af(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Xa(a,F[b+8>>2],e)){if(!(F[b+28>>2]==1|F[b+4>>2]!=(c|0))){F[b+28>>2]=d}return}a:{if(!Xa(a,F[b>>2],e)){break a}if(!(F[b+16>>2]!=(c|0)&F[b+20>>2]!=(c|0))){if((d|0)!=1){break a}F[b+32>>2]=1;return}F[b+20>>2]=c;F[b+32>>2]=d;F[b+40>>2]=F[b+40>>2]+1;if(!(F[b+36>>2]!=1|F[b+24>>2]!=2)){D[b+54|0]=1}F[b+44>>2]=4}}function ug(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{if(I[b+80>>2]>65535){break a}f=F[b+96>>2];b=F[b+100>>2]-f|0;a=(b|0)/12|0;e=L(a,6);g=(e|0)==(c|0);if(!b|(c|0)!=(e|0)){break a}g=1;e=a>>>0>1?a:1;a=0;while(1){b=L(a,6)+d|0;c=L(a,12)+f|0;E[b>>1]=F[c>>2];E[b+2>>1]=F[c+4>>2];E[b+4>>1]=F[c+8>>2];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return g|0}function ji(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=11304;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}return a|0}function ii(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=11304;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}ra(a)}function vh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=F[a+32>>2];f=F[b+8>>2];e=F[b+12>>2];d=F[b+20>>2];h=f;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;a:{if(h>>>0>>0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}c=f+F[b>>2]|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=d;c=0;if((e|0)<0){break a}F[F[a+4>>2]+80>>2]=e;c=1}return c|0}function Gd(a,b,c,d){D[a+53|0]=1;a:{if(F[a+4>>2]!=(c|0)){break a}D[a+52|0]=1;c=F[a+16>>2];b:{if(!c){F[a+36>>2]=1;F[a+24>>2]=d;F[a+16>>2]=b;if(F[a+48>>2]!=1){break a}if((d|0)==1){break b}break a}if((b|0)==(c|0)){c=F[a+24>>2];if((c|0)==2){F[a+24>>2]=d;c=d}if(F[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}F[a+36>>2]=F[a+36>>2]+1}D[a+54|0]=1}}function th(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+32>>2];e=F[d+12>>2];g=F[d+8>>2];b=g;c=F[d+20>>2];h=F[d+16>>2];f=h+4|0;c=f>>>0<4?c+1|0:c;if((c|0)<=(e|0)&b>>>0>=f>>>0|(c|0)<(e|0)){b=h+F[d>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[d+16>>2]=f;F[d+20>>2]=c;F[F[a+4>>2]+80>>2]=b}return(c|0)<=(e|0)&f>>>0<=g>>>0|(c|0)<(e|0)}function Ce(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ea-16|0;ea=d;F[a+4>>2]=b;b=F[b+64>>2];e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Na(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=F[a+4>>2];e=F[b+56>>2];b=F[b+52>>2];D[d+14|0]=0;Na(a+36|0,e-b>>2,d+14|0);b=F[c+12>>2];F[a+16>>2]=F[c+8>>2];F[a+20>>2]=b;b=F[c+4>>2];F[a+8>>2]=F[c>>2];F[a+12>>2]=b;ea=d+16|0}function jf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ga[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=F[F[a+36>>2]>>2];f=a+48|0;c=0;if(!(ga[F[F[d>>2]+16>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=F[F[a+36>>2]+(c<<2)>>2];if(ga[F[F[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function hf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ga[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=F[F[a+36>>2]>>2];f=a+48|0;c=0;if(!(ga[F[F[d>>2]+20>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=F[F[a+36>>2]+(c<<2)>>2];if(ga[F[F[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function oc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(b){g=0-G[a+12|0]&255;h=F[a>>2];e=F[a+8>>2];while(1){i=d<<1;a:{if(e>>>0>4095){break a}d=F[a+4>>2];if((d|0)<=0){break a}d=d-1|0;F[a+4>>2]=d;e=G[d+h|0]|e<<8}f=e&255;d=f>>>0>>0;j=f;f=L(e>>>8|0,g);e=d?j+f|0:e-(g+f|0)|0;F[a+8>>2]=e;d=d|i;b=b-1|0;if(b){continue}break}}F[c>>2]=d}function ae(a){F[a>>2]=0;F[a+4>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;D[a+24|0]=1;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+68>>2]=a}function Vh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ea-16|0;ea=d;F[a+4>>2]=b;e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Na(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=F[a+4>>2];e=F[b+28>>2];b=F[b+24>>2];D[d+14|0]=0;Na(a+36|0,e-b>>2,d+14|0);b=F[c+12>>2];F[a+16>>2]=F[c+8>>2];F[a+20>>2]=b;b=F[c+4>>2];F[a+8>>2]=F[c>>2];F[a+12>>2]=b;ea=d+16|0}function dd(a,b){var c=0,d=0,e=0,f=0,g=0;F[a+144>>2]=b;c=F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2];e=F[c>>2]+F[c+16>>2]|0;d=F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2];c=F[d+8>>2];d=F[d+16>>2];c=c-d|0;f=a,g=H[F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2]+38>>1],E[f+38>>1]=g;F[a>>2]=e;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=c;F[a+12>>2]=0}function Lc(a){var b=0;F[a>>2]=0;F[a+4>>2]=0;F[a+56>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+60>>2]=a}function td(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!td(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function rb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!rb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function hb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!hb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Pb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Pb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Oc(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Oc(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Ke(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Ke(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Fa(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Fa(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Bb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Bb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function tg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;g=F[b+96>>2];b=F[b+100>>2]-g|0;if(!((b|0)!=(c|0)|!b)){a=(c|0)/12|0;h=a>>>0>1?a:1;a=0;while(1){e=L(a,12);f=e+d|0;e=e+g|0;F[f>>2]=F[e>>2];F[f+4>>2]=F[e+4>>2];F[f+8>>2]=F[e+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}return(b|0)==(c|0)|0}function Ha(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(F[a>>2]!=F[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=G[a|0];e=G[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function xg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[b+4>>2];a:{if(!d){break a}b=F[F[F[b+8>>2]+(c<<2)>>2]+60>>2];if((b|0)<0){break a}a=F[d+24>>2];c=F[d+28>>2];if((a|0)==(c|0)){break a}b:{while(1){e=F[a>>2];if((b|0)==F[e+24>>2]){break b}a=a+4|0;if((c|0)!=(a|0)){continue}break}e=0}}return e|0}function Sc(a){var b=0,c=0,d=0;if(a){d=F[a+24>>2];if(d){c=F[a+28>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){Pa(b+12|0,F[b+16>>2]);Oa(b,F[b+4>>2]);ra(b)}if((d|0)!=(c|0)){continue}break}b=F[a+24>>2]}F[a+28>>2]=d;ra(b)}Pa(a+12|0,F[a+16>>2]);Oa(a,F[a+4>>2]);ra(a)}}function Th(a){a=a|0;var b=0;F[a+8>>2]=12416;F[a>>2]=12204;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function pi(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}return a|0}function Sh(a){a=a|0;var b=0;F[a+8>>2]=12416;F[a>>2]=12204;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function La(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!G[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=F[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=G[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function Uc(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}ra(a)}function xc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=F[c+8>>2];e=F[c+16>>2];g=F[c+12>>2];f=g;d=F[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=G[e+F[c>>2]|0];i=e+1|0;f=i?d:d+1|0;F[c+16>>2]=i;F[c+20>>2]=f;F[a+4>>2]=b}return e>>>0>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function Xa(a,b,c){var d=0;if(!c){return F[a+4>>2]==F[b+4>>2]}if((a|0)==(b|0)){return 1}d=F[a+4>>2];a=G[d|0];c=F[b+4>>2];b=G[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=G[c+1|0];a=G[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function Uh(a){a=a|0;var b=0;F[a>>2]=12416;b=F[a+88>>2];if(b){F[a+92>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Ib(a,b){var c=0,d=0,e=0,f=0;a:{c=F[a>>2];b:{if(F[a+8>>2]-c>>2>>>0>=b>>>0){break b}if(b>>>0>=1073741824){break a}d=F[a+4>>2];e=b<<2;b=sa(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){ta(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break b}ra(c)}return}wa(1336);V()}function zg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=F[b+12>>2];b=F[b+8>>2];d=a-b|0;a=0;a:{if(!d){break a}a=d>>2;d=a>>>0>1?a:1;a=0;b:{while(1){e=F[b+(a<<2)>>2];if(F[e+60>>2]==(c|0)){break b}a=a+1|0;if((d|0)!=(a|0)){continue}break}a=0;break a}a=(a|0)==-1?0:e}return a|0}function Ph(a){a=a|0;var b=0;F[a>>2]=12416;b=F[a+88>>2];if(b){F[a+92>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function ab(a){var b=0;if(a){b=F[a+76>>2];if(b){F[a+80>>2]=b;ra(b)}b=F[a- -64>>2];if(b){F[a+68>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}ra(a)}}function Kd(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=ea-16|0;ea=f;d=ea-16|0;ea=d;b=b-a>>2;while(1){if(b){F[d+12>>2]=a;e=b>>>1|0;F[d+12>>2]=F[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=F[d+12>>2];g=I[e>>2]>2];b=g?h:b;a=g?e+4|0:a;continue}break}ea=d+16|0;ea=f+16|0;return a}function Fb(a){var b=0;b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+52>>2];if(b){F[a+56>>2]=b;ra(b)}b=F[a+40>>2];if(b){F[a+44>>2]=b;ra(b)}b=F[a+28>>2];if(b){F[a+32>>2]=b;ra(b)}b=F[a+12>>2];if(b){ra(b)}a=F[a>>2];if(a){ra(a)}}function fd(a){var b=0,c=0,d=0;b=F[a+4>>2];d=F[a>>2];if((b|0)!=(d|0)){while(1){c=F[b-12>>2];if(c){F[b-8>>2]=c;ra(c)}c=F[b-28>>2];if(c){F[b-24>>2]=c;ra(c)}c=F[b-40>>2];if(c){F[b-36>>2]=c;ra(c)}Fb(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}}F[a+4>>2]=d}function Ba(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<=10){d=a;D[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=sa(e);F[a>>2]=d;F[a+8>>2]=e|-2147483648;F[a+4>>2]=c}kb(d,b,c+1|0);return}Ma();V()}function Vc(a,b){var c=0,d=0;d=sa(40);F[d>>2]=-1;c=d+8|0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;ga[F[F[a>>2]+16>>2]](a,d);a=F[b+88>>2];F[b+88>>2]=d;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)}return 1}function wg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a=ea-16|0;ea=a;b=F[b+96>>2];F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;e=sa(12);c=ta(e,b+L(c,12)|0,12);f=c+12|0;b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d+8>>2]=c+12;F[d+4>>2]=f;F[d>>2]=e;ea=a+16|0;return 1}function Ga(a){var b=0,c=0,d=0,e=0,f=0;d=G[a+12|0];c=F[a+8>>2];a:{if(c>>>0>4095){break a}b=F[a+4>>2];if((b|0)<=0){break a}b=b-1|0;F[a+4>>2]=b;c=G[b+F[a>>2]|0]|c<<8}d=0-d&255;b=L(d,c>>>8|0);e=c&255;f=e>>>0>>0;F[a+8>>2]=f?b+e|0:c-(b+d|0)|0;return f}function pd(a,b){F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2012;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a>>2]=2356;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+60>>2]=b;return a}function qe(a,b,c,d){a:{if(!b){if((d|0)<0){return 0}ib(a,c);break a}if((d|0)<0){return 0}if(!(!d&F[a+4>>2]-F[a>>2]>>>0>=c>>>0)){ib(a,c)}if(!c){break a}Ua(F[a>>2],b,c)}b=F[a+28>>2];c=F[a+24>>2]+1|0;b=c?b:b+1|0;F[a+24>>2]=c;F[a+28>>2]=b;return 1}function Hg(a){a=a|0;var b=0,c=0,d=0;if(a){if(D[a+27|0]<0){ra(F[a+16>>2])}b=F[a>>2];if(b){c=F[a+4>>2];if((c|0)==(b|0)){d=b}else{while(1){d=c-12|0;if(D[c-1|0]<0){ra(F[d>>2])}c=d;if((c|0)!=(b|0)){continue}break}d=F[a>>2]}F[a+4>>2]=b;ra(d)}ra(a)}}function sh(){var a=0;a=sa(40);E[a+38>>1]=0;F[a>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;D[a+29|0]=0;D[a+30|0]=0;D[a+31|0]=0;D[a+32|0]=0;D[a+33|0]=0;D[a+34|0]=0;D[a+35|0]=0;D[a+36|0]=0;return a|0}function Pd(a){var b=0,c=0,d=0;if(D[F[a>>2]]-48>>>0>=10){return 0}while(1){d=F[a>>2];c=-1;if(b>>>0<=214748364){c=D[d|0]-48|0;b=L(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}F[a>>2]=d+1;b=c;if(D[d+1|0]-48>>>0<10){continue}break}return b}function Ja(a){a=a|0;var b=0,c=0;if(a){b=F[a+88>>2];F[a+88>>2]=0;if(b){c=F[b+8>>2];if(c){F[b+12>>2]=c;ra(c)}ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+64>>2];F[a+64>>2]=0;if(b){c=F[b>>2];if(c){F[b+4>>2]=c;ra(c)}ra(b)}ra(a)}}function ui(a){a=a|0;var b=0;F[a+24>>2]=1140;F[a>>2]=11076;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function mc(a,b){var c=0,d=0,e=0;c=La(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=sa(e);F[a+8>>2]=e|-2147483648;F[a>>2]=d;F[a+4>>2]=c;break b}D[a+11|0]=c;d=a;if(!c){break a}}ta(d,b,c)}D[c+d|0]=0;return a}Ma();V()}function Gj(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=Hj(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;fa=(g^fa)-((a>>>0>>0)+g|0)|0;return b}function ti(a){a=a|0;var b=0;F[a+24>>2]=1140;F[a>>2]=11076;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function _b(a,b,c){var d=0,e=0,f=0;e=ea-16|0;ea=e;d=F[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=F[a>>2];F[a+4>>2]=c;kb(d,b,c);D[e+15|0]=0;D[c+d|0]=G[e+15|0];break a}f=a;a=F[a+4>>2];Jd(f,d-1|0,(c-d|0)+1|0,a,a,c,b)}ea=e+16|0}function wf(a,b){a=a|0;b=b|0;var c=0,d=0;c=ea-16|0;ea=c;a=F[a+4>>2];a:{if((a|0)==-1){break a}D[c+15|0]=a;d=F[b+20>>2];if(!!F[b+16>>2]&(d|0)>=0|(d|0)>0){break a}Yb(b,F[b+4>>2],c+15|0,c+16|0)}ea=c+16|0;return(a|0)!=-1|0}function Fj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=L(e,f);g=c&65535;h=a&65535;i=L(g,h);f=(i>>>16|0)+L(f,g)|0;e=(f&65535)+L(e,h)|0;fa=(L(b,c)+j|0)+L(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function nh(){var a=0;a=sa(96);Eb(a);F[a+64>>2]=0;F[a+68>>2]=0;F[a+88>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;D[a+77|0]=0;D[a+78|0]=0;D[a+79|0]=0;D[a+80|0]=0;D[a+81|0]=0;D[a+82|0]=0;D[a+83|0]=0;D[a+84|0]=0;return a|0}function Hd(a,b,c){var d=0;d=F[a+16>>2];if(!d){F[a+36>>2]=1;F[a+24>>2]=c;F[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(F[a+24>>2]!=2){break a}F[a+24>>2]=c;return}D[a+54|0]=1;F[a+24>>2]=2;F[a+36>>2]=F[a+36>>2]+1}}function si(a,b){a=a|0;b=b|0;var c=0,d=0;F[b>>2]=2;c=F[b+8>>2];d=F[b+12>>2]-c|0;if(d>>>0<=4294967291){jc(b+8|0,d+4|0);c=F[b+8>>2]}b=c+d|0;a=F[a+4>>2];D[b|0]=a;D[b+1|0]=a>>>8;D[b+2|0]=a>>>16;D[b+3|0]=a>>>24}function yj(a){a=a|0;var b=0;F[a>>2]=3592;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function wh(a){a=a|0;var b=0,c=0,d=0;b=F[a+8>>2];d=F[a+12>>2];if((b|0)==(d|0)){return 1}while(1){c=F[b>>2];c=ga[F[F[c>>2]+16>>2]](c,F[a+32>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function wa(a){var b=0,c=0,d=0,e=0,f=0;b=da(8)|0;F[b>>2]=14928;F[b>>2]=14972;c=La(a);d=sa(c+13|0);F[d+8>>2]=0;F[d+4>>2]=c;F[d>>2]=c;e=b,f=ta(d+12|0,a,c+1|0),F[e+4>>2]=f;F[b>>2]=15020;ca(b|0,15052,13);V()}function lb(a,b,c,d,e){var f=0;f=ea-256|0;ea=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;ua(f,b&255,d?c:256);if(!d){while(1){Ab(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}Ab(a,f,c)}ea=f+256|0}function ij(a){a=a|0;var b=0;F[a>>2]=5608;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function xj(a){a=a|0;var b=0;F[a>>2]=3592;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function hj(a){a=a|0;var b=0;F[a>>2]=5608;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Yd(a,b,c){var d=0,e=0;d=a+4|0;a=qb(a,b);if((d|0)==(a|0)){return 0}b=F[a+32>>2];d=F[a+28>>2];if((b|0)!=(d|0)){Cc(c,b-d|0);e=Dc(c);c=F[a+28>>2];ta(e,c,F[a+32>>2]-c|0)}return(b|0)!=(d|0)}function Vd(a,b){var c=0,d=0;c=F[a+8>>2];a=F[a+12>>2]-c|0;if(a){a=a>>2;d=a>>>0>1?a:1;a=0;while(1){if(F[F[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return-1}function Lf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=ea-16|0;ea=e;a=_(F[a+60>>2],b|0,c|0,d&255,e+8|0)|0;if(a){F[3934]=a;a=-1}else{a=0}ea=e+16|0;fa=a?-1:F[e+12>>2];return(a?-1:F[e+8>>2])|0}function Ed(a){var b=0;b=F[a+72>>2];F[a+72>>2]=b-1|b;b=F[a>>2];if(b&8){F[a>>2]=b|32;return-1}F[a+4>>2]=0;F[a+8>>2]=0;b=F[a+44>>2];F[a+28>>2]=b;F[a+20>>2]=b;F[a+16>>2]=b+F[a+48>>2];return 0}function Eb(a){F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+28>>2]=9;D[a+24|0]=1;F[a+56>>2]=-1;F[a+60>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;return a}function Pf(a,b){a=a|0;b=b|0;var c=0,d=0;Td(a,b);a:{if((b|0)<0){break a}c=F[a+88>>2];d=F[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){Ua(b,d,c)}F[a+88>>2]=b+c}}function cf(a,b){a=a|0;b=b|0;var c=0,d=0;d=F[a+16>>2];c=0;a:{if(F[a+20>>2]-d>>2<=(b|0)){break a}b=F[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=tb(F[F[a+36>>2]+(b<<2)>>2])}return c|0}function Gg(){var a=0,b=0;a=sa(40);F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=a+4;b=a+16|0;F[b>>2]=0;F[b+4>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+12>>2]=b;F[a+32>>2]=0;F[a+36>>2]=0;return a|0}function jb(a){var b=0,c=0;b=F[3866];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ha()<<16>>>0){if(!(aa(a|0)|0)){break a}}F[3866]=a;return b}F[3934]=48;return-1}function Zb(a,b,c){var d=0,e=0;d=ea-16|0;ea=d;a:{if(c>>>0<=10){D[a+11|0]=c;kb(a,b,c);D[d+15|0]=0;D[a+c|0]=G[d+15|0];break a}e=a;a=G[a+11|0];Jd(e,10,c-10|0,a,a,c,b)}ea=d+16|0}function Lh(a){a=a|0;var b=0;F[a+8>>2]=12836;F[a>>2]=12672;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function Fh(a){a=a|0;var b=0;F[a+8>>2]=11900;F[a>>2]=12964;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12152;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[a+8>>2];a:{if(D[d+24|0]<=0){break a}if(!pb(d,F[b+4>>2]-F[b>>2]>>2)){break a}e=ga[F[F[a>>2]+32>>2]](a,b,c)|0}return e|0}function Wi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;F[a+4>>2]=b;b=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=b;a=F[a+8>>2];if(G[a+24|0]==3){d=F[a+28>>2]==9}return d|0}function Jh(a){a=a|0;var b=0;F[a+8>>2]=12836;F[a>>2]=12672;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function Eh(a){a=a|0;var b=0;F[a+8>>2]=11900;F[a>>2]=12964;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12152;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function vj(a){a=a|0;var b=0;F[a>>2]=3840;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function fj(a){a=a|0;var b=0;F[a>>2]=5844;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Pa(a,b){if(b){Pa(a,F[b>>2]);Pa(a,F[b+4>>2]);a=F[b+28>>2];F[b+28>>2]=0;if(a){Pa(a+12|0,F[a+16>>2]);Oa(a,F[a+4>>2]);ra(a)}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Ai(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;F[a+4>>2]=b;d=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=d;return F[F[F[F[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9|0}function Tc(a){F[a+40>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=13312;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;E[a+36>>1]=0;return a}function dg(a,b){a=a|0;b=b|0;var c=0;a:{if(!(ga[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(ga[F[F[a>>2]+40>>2]](a,b)|0)){break a}c=ga[F[F[a>>2]+44>>2]](a)|0}return c|0}function uj(a){a=a|0;var b=0;F[a>>2]=3840;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function ej(a){a=a|0;var b=0;F[a>>2]=5844;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Qe(a){a=a|0;var b=0;a:{if(!F[a- -64>>2]|!F[a+68>>2]|(!F[a+44>>2]|!F[a+48>>2])){break a}if(!F[a+52>>2]|!F[a+56>>2]){break a}b=F[a+92>>2]!=-1}return b|0}function Ye(a){a=a|0;var b=0;F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function Ej(a,b){a=a|0;b=b|0;var c=0;b=F[b+88>>2];if(!(!b|F[b>>2]!=2)){c=a;a=F[b+8>>2];F[c+4>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);c=1}return c|0}function sc(a){a=a|0;var b=0;a:{if(!F[a+48>>2]|!F[a+52>>2]|(!F[a+28>>2]|!F[a+32>>2])){break a}if(!F[a+36>>2]|!F[a+40>>2]){break a}b=F[a+76>>2]!=-1}return b|0}function Mh(a){a=a|0;var b=0;F[a>>2]=12836;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Be(a){a=a|0;var b=0;F[a>>2]=11900;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12152;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Xe(a){a=a|0;var b=0;F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function qh(){var a=0,b=0;b=sa(40);F[b>>2]=-1;a=b+8|0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;return b|0}function bf(a,b){a=a|0;b=b|0;var c=0,d=0;d=F[a+4>>2];a:{if(d){c=1;if(G[d+36|0]<2){break a}}c=ga[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0}return c|0}function Yh(a){a=a|0;var b=0;F[a>>2]=11900;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12152;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Gh(a){a=a|0;var b=0;F[a>>2]=12836;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function zf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Xa(a,F[b+8>>2],f)){Gd(b,c,d,e);return}a=F[a+8>>2];ga[F[F[a>>2]+20>>2]](a,b,c,d,e,f)}function yi(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(G[F[a+4>>2]+36|0]>=2){b=0;if(!(ga[F[F[a>>2]+52>>2]](a)|0)){break a}}b=Vc(a+24|0,F[a+16>>2])}return b|0}function ah(){var a=0;a=sa(108);Xd(a);F[a+84>>2]=0;F[a+88>>2]=0;F[a>>2]=13696;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;return a|0}function zi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(G[F[a+4>>2]+36|0]<=1){d=0;if(!(ga[F[F[a>>2]+52>>2]](a)|0)){break a}}d=wc(a,b,c)}return d|0}function Wd(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=L(b,12)+a|0;a=F[b+20>>2];if((F[b+24>>2]-a|0)<=0){break a}c=F[a>>2]}return c}function lc(a,b,c,d,e,f,g){F[a>>2]=0;F[a+56>>2]=b;F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=f;F[a+44>>2]=g;D[a+32|0]=e;F[a+28>>2]=d;D[a+24|0]=c}function Vi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(G[F[a+4>>2]+36|0]<=1){d=0;if(!xc(a+24|0,F[a+8>>2],c)){break a}}d=wc(a,b,c)}return d|0}function Ui(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(G[F[a+4>>2]+36|0]>=2){b=0;if(!xc(a+24|0,tb(a),c)){break a}}b=Vc(a+24|0,F[a+16>>2])}return b|0}function Sf(a){a=a|0;var b=0;F[a>>2]=13696;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}$b(a);return a|0}function Rf(a){a=a|0;var b=0;F[a>>2]=13696;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}$b(a);ra(a)}function sj(a){a=a|0;var b=0;F[a>>2]=4068;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function cj(a){a=a|0;var b=0;F[a>>2]=6060;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Oa(a,b){if(b){Oa(a,F[b>>2]);Oa(a,F[b+4>>2]);a=F[b+28>>2];if(a){F[b+32>>2]=a;ra(a)}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Pg(){var a=0;a=sa(28);F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;return a|0}function qg(a){a=a|0;var b=0;F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function Dc(a){var b=0;if(G[a+11|0]>>>7|0){b=F[a+4>>2]}else{b=G[a+11|0]}if(!b){Ec();V()}if(G[a+11|0]>>>7|0){a=F[a>>2]}return a}function _g(){var a=0,b=0;a=sa(24);F[a+4>>2]=0;F[a+8>>2]=0;b=a+16|0;F[b>>2]=0;F[b+4>>2]=0;F[a>>2]=a+4;F[a+12>>2]=b;return a|0}function Cf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Xa(a,F[b+8>>2],0)){Hd(b,c,d);return}a=F[a+8>>2];ga[F[F[a>>2]+28>>2]](a,b,c,d)}function rj(a){a=a|0;var b=0;F[a>>2]=4068;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function bj(a){a=a|0;var b=0;F[a>>2]=6060;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function sa(a){var b=0;a=a?a:1;a:{while(1){b=Fd(a);if(b){break a}b=F[3977];if(b){ga[b|0]();continue}break}Y();V()}return b}function Jb(a,b){if(b){Jb(a,F[b>>2]);Jb(a,F[b+4>>2]);if(D[b+39|0]<0){ra(F[b+28>>2])}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Lb(a,b){a=a|0;b=b|0;var c=0;a:{switch(b|0){case 1:b=1;case 0:F[a+28>>2]=b;c=1;break;default:break a}}return c|0}function Bc(a){a=a|0;var b=0,c=0;F[a>>2]=14972;b=F[a+4>>2]-12|0;c=F[b+8>>2]-1|0;F[b+8>>2]=c;if((c|0)<0){ra(b)}return a|0}function fh(){var a=0;a=sa(24);F[a+8>>2]=0;F[a+12>>2]=0;F[a+4>>2]=-1;F[a>>2]=1140;F[a+16>>2]=0;F[a+20>>2]=0;return a|0}function qd(a,b,c){a=a|0;b=b|0;c=c|0;F[a+4>>2]=b;b=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=b;return 1}function vc(a){a=a|0;var b=0;if(!(!F[a+60>>2]|!F[a+44>>2]|(!F[a+48>>2]|!F[a+52>>2]))){b=F[a+56>>2]!=0}return b|0}function jc(a,b){var c=0,d=0;ib(a,b);b=F[a+28>>2];c=b;d=b+1|0;b=F[a+24>>2]+1|0;F[a+24>>2]=b;F[a+28>>2]=b?c:d}function oj(a){a=a|0;var b=0;F[a>>2]=4304;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Xh(a){a=a|0;var b=0;F[a>>2]=12152;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Oh(a){a=a|0;var b=0;F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function $i(a){a=a|0;var b=0;F[a>>2]=6284;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function fg(a){a=a|0;if(a){if(D[a+39|0]<0){ra(F[a+28>>2])}Nc(a+12|0,F[a+16>>2]);Jb(a,F[a+4>>2]);ra(a)}}function Qb(a){a=a|0;var b=0;if(!(!F[a+52>>2]|(!F[a+44>>2]|!F[a+48>>2]))){b=F[a+56>>2]!=0}return b|0}function uc(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|!b|G[b+24|0]!=3)){F[a+60>>2]=b;c=1}return c|0}function nj(a){a=a|0;var b=0;F[a>>2]=4304;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function _i(a){a=a|0;var b=0;F[a>>2]=6284;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Wh(a){a=a|0;var b=0;F[a>>2]=12152;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Nh(a){a=a|0;var b=0;F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function rh(a,b,c){a=a|0;b=b|0;c=c|0;F[a+16>>2]=0;F[a+20>>2]=0;F[a>>2]=b;F[a+8>>2]=c;F[a+12>>2]=0}function Pe(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|G[b+24|0]!=3)){F[a- -64>>2]=b;c=1}return c|0}function yf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Xa(a,F[b+8>>2],f)){Gd(b,c,d,e)}}function yc(a){var b=0;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}}function rc(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|G[b+24|0]!=3)){F[a+48>>2]=b;c=1}return c|0}function Ya(a){var b=0;F[a+16>>2]=0;b=F[a>>2];F[a+4>>2]=b;F[a+12>>2]=b;if(b){F[a+4>>2]=b;ra(b)}}function nf(a){a=a|0;var b=0;F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function Aj(a){a=a|0;var b=0;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function wi(a){a=a|0;var b=0;b=tb(a);return Fe(a+24|0,b?b:F[a+8>>2],F[F[a+4>>2]+32>>2])|0}function li(a){a=a|0;var b=0;F[a>>2]=1140;b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}return a|0}function mf(a){a=a|0;var b=0;F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function Vb(a){a=a|0;var b=0;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function ei(a){a=a|0;var b=0;F[a>>2]=1140;b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)}function Nc(a,b){if(b){Nc(a,F[b>>2]);Nc(a,F[b+4>>2]);Jb(b+20|0,F[b+24>>2]);ra(b)}}function qi(a){a=a|0;if(!F[a+44>>2]){return 0}return ga[F[F[a>>2]+48>>2]](a)|0}function ph(a){a=a|0;var b=0;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)}}function Ij(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function Df(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Xa(a,F[b+8>>2],0)){Hd(b,c,d)}}function oi(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+20>>2]](a,b)|0}function gi(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+12>>2]](a,b)|0}function fi(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+16>>2]](a,b)|0}function ob(){var a=0;a=sa(12);F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;return a|0}function nb(a){a=a|0;var b=0;if(a){b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}ra(a)}}function Jj(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function Zg(a,b,c){a=a|0;b=b|0;c=c|0;F[a+32>>2]=c;F[a+28>>2]=b;return 1}function Yg(a){a=a|0;if(a){Pa(a+12|0,F[a+16>>2]);Oa(a,F[a+4>>2]);ra(a)}}function Dd(a,b,c){a:{if(F[c+76>>2]<0){a=zc(a,b,c);break a}a=zc(a,b,c)}}function Ah(a,b){a=a|0;b=b|0;D[b+84|0]=1;F[b+72>>2]=F[b+68>>2];return 1}function mi(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+24>>2]](a)|0}function ki(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+28>>2]](a)|0}function hi(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+36>>2]](a)|0}function ch(){var a=0;a=sa(8);F[a+4>>2]=-1;F[a>>2]=1032;return a|0}function Ag(a,b,c){a=a|0;b=b|0;c=c|0;return F[F[b+8>>2]+(c<<2)>>2]}function vi(a,b){a=a|0;b=b|0;return Le(a+24|0,tb(a),F[a+8>>2])|0}function Ti(a,b){a=a|0;b=b|0;return Cd(a+24|0,tb(a),F[a+8>>2])|0}function xi(a,b){a=a|0;b=b|0;return ga[F[F[a>>2]+56>>2]](a,b)|0}function sf(a,b){a=a|0;b=b|0;F[a+12>>2]=-1;F[a+8>>2]=b;return 1}function ke(a,b){a=a|0;b=b|0;return ga[F[F[a>>2]+12>>2]](a,b)|0}function Vg(a){a=a|0;if(a){if(D[a+15|0]<0){ra(F[a+4>>2])}ra(a)}}function eh(a,b){a=a|0;b=b|0;return M(J[F[a+8>>2]+(b<<2)>>2])}function Ug(a,b){a=a|0;b=b|0;return M(J[F[a>>2]+(b<<2)>>2])}function xf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fa=0;return 0}function Wg(a){a=a|0;return(D[a+15|0]<0?F[a+4>>2]:a+4|0)|0}function Uf(a,b){a=a|0;b=b|0;return F[F[a+4>>2]+(b<<2)>>2]}function $g(a){a=a|0;return(F[a+100>>2]-F[a+96>>2]|0)/12|0}function fe(a,b){a=a|0;b=b|0;return F[F[a>>2]+(b<<2)>>2]}function Rg(a,b){a=a|0;b=b|0;return E[F[a>>2]+(b<<1)>>1]}function Qg(a,b){a=a|0;b=b|0;return H[F[a>>2]+(b<<1)>>1]}function Dg(a,b,c){a=a|0;b=b|0;c=c|0;return Wd(b,c)|0}function Xd(a){F[a>>2]=13756;ua(a+4|0,0,80);return a}function Kj(a){if(a){return 31-O(a-1^a)|0}return 32} -function je(a){a=a|0;return F[a+12>>2]-F[a+8>>2]>>2}function cc(a){a=a|0;if(a){ga[F[F[a>>2]+4>>2]](a)}}function Tg(a,b){a=a|0;b=b|0;return D[F[a>>2]+b|0]}function Sg(a,b){a=a|0;b=b|0;return G[F[a>>2]+b|0]}function Of(a){a=a|0;return F[a+8>>2]-F[a+4>>2]>>2}function kd(a,b){a=a|0;b=b|0;F[a+4>>2]=b;return 1}function ge(a){a=a|0;return F[a+4>>2]-F[a>>2]>>1}function Pc(a){a=a|0;return F[a+4>>2]-F[a>>2]>>2}function ie(a){a=a|0;return F[a+4>>2]-F[a>>2]|0}function De(a){Tc(a);F[a+44>>2]=0;F[a>>2]=11208}function ci(a,b){a=a|0;b=b|0;return D[b+24|0]} -function Ab(a,b,c){if(!(G[a|0]&32)){zc(b,c,a)}}function yg(a,b){a=a|0;b=b|0;return F[b+4>>2]}function qf(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Jg(a,b){a=a|0;b=b|0;return F[b+8>>2]}function Ei(a){a=a|0;F[a>>2]=10060;return a|0}function Dj(a){a=a|0;return D[F[a+8>>2]+24|0]}function Ri(a){a=a|0;F[a>>2]=7172;return a|0}function Mi(a){a=a|0;F[a>>2]=8108;return a|0}function Mf(a){a=a|0;return ba(F[a+60>>2])|0}function Ii(a){a=a|0;F[a>>2]=9056;return a|0}function dh(a){a=a|0;return M(J[a+20>>2])}function Di(a){a=a|0;F[a>>2]=10060;ra(a)}function Qi(a){a=a|0;F[a>>2]=7172;ra(a)}function Li(a){a=a|0;F[a>>2]=8108;ra(a)}function Hi(a){a=a|0;F[a>>2]=9056;ra(a)}function mh(a){a=a|0;return F[a+88>>2]}function lh(a){a=a|0;return F[a+56>>2]}function ih(a){a=a|0;return F[a+40>>2]}function hh(a){a=a|0;return F[a+48>>2]}function gh(a){a=a|0;return F[a+60>>2]}function eb(a){a=a|0;return F[a+28>>2]}function Ze(){F[3971]=15772;F[3953]=42}function Qc(a){a=a|0;return F[a+80>>2]}function qj(a,b){a=a|0;b=b|0;return 2}function od(a,b){a=a|0;b=b|0;return-1}function kh(a){a=a|0;return D[a+24|0]}function jh(a){a=a|0;return G[a+32|0]}function db(a){a=a|0;return F[a+4>>2]}function Yc(a){a=a|0;return F[a+8>>2]}function Xg(a){a=a|0;return!F[a>>2]|0}function Ue(a,b){a=a|0;b=b|0;return 6}function Ld(a,b){a=a|0;b=b|0;return 1}function Ka(a,b){a=a|0;b=b|0;return 0}function me(a){a=a|0;return F[a>>2]}function kb(a,b,c){if(c){ta(a,b,c)}}function oh(){return Eb(sa(64))|0}function bh(){return Xd(sa(84))|0}function Rc(a){a=a|0;if(a){ra(a)}}function Hf(a){a=a|0;return 1283}function Ff(a){a=a|0;Bc(a);ra(a)}function Ta(a){a=a|0;return a|0}function tf(a){a=a|0;ra(sd(a))}function _h(a){a=a|0;ra(xe(a))}function Zh(a){a=a|0;ra(we(a))}function Nf(a){a=a|0;ra($b(a))}function Gf(a){a=a|0;ra(Bc(a))}function $h(a){a=a|0;ra(ye(a))}function nd(a){a=a|0;return 3}function Za(a){a=a|0;return 0}function We(a){a=a|0;return 4}function Ub(a){a=a|0;return 2}function Se(a){a=a|0;return 5}function Nb(a){a=a|0;return 6}function Ea(a){a=a|0;return 1}function va(){wa(1276);V()}function Qa(a){a=a|0;ra(a)}function Ma(){wa(1323);V()}function fb(a){a=a|0;V()}function _f(){return 10}function Zf(){return 11}function Yf(){return 12}function eg(){return 5}function cg(){return 6}function ce(){return 3}function bg(){return 7}function be(){return 4}function bc(){return-1}function ag(){return 8}function ac(){return 1}function Xf(){return-2}function Wf(){return-3}function Vf(){return-4}function Tf(){return-5}function Rb(){return 0}function Mc(){return 2}function Da(){Ec();V()}function $f(){return 9}function Ec(){Y();V()}function Id(a){a=a|0}function If(){V()} +function Sd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=ea-672|0;ea=w;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];q=e+4|0;d=q>>>0<4?d+1|0:d;a:{b:{c:{if(q>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break c}d=e+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;q=F[b+16>>2];e=q+4|0;d=e>>>0<4?d+1|0:d;t=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[a>>2]>31){break c}e=F[b+12>>2];d=f;f=q+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=t+F[b>>2]|0;F[a+4>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;q=F[b+16>>2];e=q+4|0;d=e>>>0<4?d+1|0:d;t=e;F[b+16>>2]=e;F[b+20>>2]=d;e=F[b+12>>2];d=f;f=q+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=t+F[b>>2]|0;F[a+12>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;q=F[b+16>>2];e=q+4|0;d=e>>>0<4?d+1|0:d;p=e;F[b+16>>2]=e;F[b+20>>2]=d;d=F[a+20>>2];t=F[a+12>>2];if((t|0)!=(d|0)?d:0){break c}e=F[b+12>>2];d=f;f=q+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=p+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+16>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(f>>>0>=7){F[w>>2]=f;Od(1857,w);break c}F[w+664>>2]=c;d:{if(!t){break d}e:{q=F[c>>2];if(t>>>0<=(F[c+8>>2]-q|0)/12>>>0){break e}if(t>>>0<357913942){e=F[c+4>>2];f=L(t,12);d=sa(f);t=d+f|0;f=d+L((e-q|0)/12|0,12)|0;d=f;if((e|0)!=(q|0)){d=f;while(1){d=d-12|0;e=e-12|0;F[d>>2]=F[e>>2];F[d+4>>2]=F[e+4>>2];F[d+8>>2]=F[e+8>>2];if((e|0)!=(q|0)){continue}break}}F[c+8>>2]=t;F[c+4>>2]=f;F[c>>2]=d;if(!q){break e}ra(q);break e}break b}f:{switch(F[a+16>>2]){case 0:h=zb(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;g:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break g}d=g+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;j=g;F[b+16>>2]=g;F[b+20>>2]=d;if(I[h>>2]>32){break g}g=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break g}d=j+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){break g}F[h+8>>2]=0;if(!ya(h+16|0,b)){break g}if(!ya(h+36|0,b)){break g}if(!ya(h+56|0,b)){break g}if(!ya(h+76|0,b)){break g}t=F[h+4>>2];f=0;b=0;e=ea-48|0;ea=e;g=F[h+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(g){if(g>>>0>=1073741824){break a}d=g<<2;f=sa(d);F[e+8>>2]=f;b=d+f|0;F[e+16>>2]=b;ua(f,0,d);F[e+12>>2]=b}d=F[h+120>>2];j=F[d>>2];if(j){F[d+4>>2]=j;ra(j);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;g=F[h+12>>2];f=F[e+8>>2];b=F[e+12>>2]}F[d+4>>2]=b;F[d>>2]=f;F[d+8>>2]=F[e+16>>2];f=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;h:{if(g){if(g>>>0>=1073741824){break a}b=g<<2;i=sa(b);F[e+8>>2]=i;f=b+i|0;F[e+16>>2]=f;ua(i,0,b);F[e+12>>2]=f}b=F[h+132>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[e+8>>2];f=F[e+12>>2]}F[b+4>>2]=f;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=t;b=F[e+28>>2];g=b+1|0;F[e+28>>2]=g;i:{if(b>>>0>g>>>0){break i}while(1){p=F[e+12>>2];f=F[e+24>>2];j=g-1|0;b=f+j|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;k=F[b+8>>2];i=F[b+4>>2];d=F[b>>2];F[e+28>>2]=j;b=F[e+16>>2];j=b-p|0;if(((j?L(j>>2,341)-1|0:0)-(g+f|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}f=0;if(d>>>0>t>>>0){break i}b=F[h+12>>2];i=(i|0)==(b-1|0)?0:i+1|0;if(i>>>0>=b>>>0){break i}g=L(k,12);p=g+F[h+132>>2]|0;j=g+F[h+120>>2]|0;j:{k:{m=i<<2;o=F[h>>2]-F[m+F[p>>2]>>2]|0;if(!o){if(!d){break k}while(1){b=F[j>>2];p=F[b+8>>2];m=F[b+4>>2];o=F[b>>2];b=F[q>>2];g=F[b+4>>2];l=F[b+8>>2];l:{if(g>>>0>>0){F[g+8>>2]=p;F[g+4>>2]=m;F[g>>2]=o;F[b+4>>2]=g+12;break l}k=F[b>>2];n=(g-k|0)/12|0;i=n+1|0;if(i>>>0>=357913942){break a}l=(l-k|0)/12|0;r=l<<1;i=l>>>0<178956970?i>>>0>r>>>0?i:r:357913941;if(i>>>0>=357913942){break b}v=L(n,12);l=L(i,12);n=sa(l);i=v+n|0;F[i+8>>2]=p;F[i+4>>2]=m;F[i>>2]=o;p=i+12|0;if((g|0)!=(k|0)){while(1){i=i-12|0;g=g-12|0;F[i>>2]=F[g>>2];F[i+4>>2]=F[g+4>>2];F[i+8>>2]=F[g+8>>2];if((g|0)!=(k|0)){continue}break}}F[b+8>>2]=l+n;F[b+4>>2]=p;F[b>>2]=i;if(!k){break l}ra(k)}F[h+8>>2]=F[h+8>>2]+1;f=f+1|0;if((d|0)!=(f|0)){continue}break}break k}m:{n:{o:{p:{if(d>>>0<=2){b=F[h+108>>2];F[b>>2]=i;f=1;g=F[h+12>>2];if(g>>>0>1){break p}break m}if(I[h+8>>2]>I[h+4>>2]){break i}b=F[h+120>>2];l=k+1|0;p=L(l,12);f=b+p|0;if((f|0)!=(j|0)){Ca(f,F[j>>2],F[j+4>>2]);b=F[h+120>>2]}b=m+F[b+p>>2]|0;F[b>>2]=F[b>>2]+(1<>2];o=32-f|0;q:{if((b|0)<=(o|0)){j=F[h+28>>2];if((j|0)==F[h+20>>2]){f=0;break q}o=F[j>>2];n=b+f|0;F[h+32>>2]=n;f=o<>>32-b|0;if((n|0)!=32){break q}F[h+32>>2]=0;F[h+28>>2]=j+4;break q}j=F[h+28>>2];n=j+4|0;if((n|0)==F[h+20>>2]){f=0;break q}r=F[j>>2];F[h+28>>2]=n;o=b-o|0;F[h+32>>2]=o;f=F[j+4>>2]>>>32-o|r<>>32-b}b=(d>>>1|0)-f|0;f=d-b|0;r:{if((f|0)==(b|0)){d=b;break r}d=F[h+88>>2];if((d|0)==F[h+80>>2]){break o}j=F[d>>2];o=F[h+92>>2];n=o+1|0;F[h+92>>2]=n;j=j&-2147483648>>>o;s:{if((n|0)==32){F[h+92>>2]=0;F[h+88>>2]=d+4;if(j){break s}break o}if(!j){break o}}d=f}f=b;break n}while(1){i=(g-1|0)==(i|0)?0:i+1|0;F[b+(f<<2)>>2]=i;f=f+1|0;g=F[h+12>>2];if(f>>>0>>0){continue}break}break m}d=b}b=F[h+132>>2];g=b+g|0;j=F[g>>2];m=j+m|0;F[m>>2]=F[m>>2]+1;Ca(b+p|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];j=F[e+16>>2]-b|0;if((g|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=b}b=(g>>>0)/341|0;b=F[j+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break k}g=F[e+28>>2]+F[e+24>>2]|0;f=F[e+12>>2];b=F[e+16>>2]-f|0;if((g|0)==((b?L(b>>2,341)-1|0:0)|0)){za(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;f=F[e+12>>2]}b=(g>>>0)/341|0;b=F[f+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=i;F[b>>2]=d;g=F[e+28>>2]+1|0;F[e+28>>2]=g;break j}i=0;if(!d){break k}while(1){f=F[h+96>>2];if(g){m=F[h+40>>2];r=F[h+108>>2];x=F[j>>2];z=F[p>>2];g=0;while(1){o=r+(g<<2)|0;F[(F[o>>2]<<2)+f>>2]=0;k=F[o>>2]<<2;b=F[h>>2]-F[k+z>>2]|0;t:{if(!b){break t}k=f+k|0;l=F[h+52>>2];s=32-l|0;if((s|0)>=(b|0)){n=F[h+48>>2];if((n|0)==(m|0)){F[k>>2]=0;break t}F[k>>2]=F[n>>2]<>>32-b;b=b+F[h+52>>2]|0;F[h+52>>2]=b;if((b|0)!=32){break t}F[h+52>>2]=0;F[h+48>>2]=n+4;break t}n=F[h+48>>2];u=n+4|0;if((u|0)==(m|0)){F[k>>2]=0;break t}y=F[n>>2];F[h+48>>2]=u;s=b-s|0;F[h+52>>2]=s;F[k>>2]=F[n+4>>2]>>>32-s|y<>>32-b}b=F[o>>2]<<2;k=b+f|0;F[k>>2]=F[k>>2]|F[b+x>>2];g=g+1|0;if(g>>>0>2]){continue}break}f=F[h+96>>2]}F[e+32>>2]=F[f>>2];F[e+36>>2]=F[f+4>>2];F[e+40>>2]=F[f+8>>2];nb(F[q>>2],e+32|0);F[h+8>>2]=F[h+8>>2]+1;i=i+1|0;if((d|0)==(i|0)){break k}g=F[h+12>>2];continue}}g=F[e+28>>2]}if(g){continue}break}}F[e+28>>2]=0;g=F[e+16>>2];b=F[e+12>>2];i=g-b|0;if(i>>>0>=9){while(1){ra(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;g=F[e+16>>2];i=g-b|0;if(i>>>0>8){continue}break}}f=170;u:{switch((i>>>2|0)-1|0){case 1:f=341;case 0:F[e+24>>2]=f;break;default:break u}}v:{if((b|0)==(g|0)){break v}while(1){ra(F[b>>2]);b=b+4|0;if((g|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break v}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){ra(b)}ea=e+48|0;break h}}Ab(h);break d;case 1:h=zb(w+8|0,3);t=w+664|0;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;w:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break w}d=g+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;k=g;F[b+16>>2]=g;F[b+20>>2]=d;if(I[h>>2]>32){break w}g=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break w}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){break w}F[h+8>>2]=0;if(!ya(h+16|0,b)){break w}if(!ya(h+36|0,b)){break w}if(!ya(h+56|0,b)){break w}if(!ya(h+76|0,b)){break w}p=F[h+4>>2];f=0;e=ea-48|0;ea=e;g=F[h+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(g){if(g>>>0>=1073741824){break a}b=g<<2;j=sa(b);F[e+8>>2]=j;f=b+j|0;F[e+16>>2]=f;ua(j,0,b);F[e+12>>2]=f}b=F[h+120>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[e+8>>2];g=F[h+12>>2];f=F[e+12>>2]}F[b+4>>2]=f;F[b>>2]=j;F[b+8>>2]=F[e+16>>2];j=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;x:{if(g){if(g>>>0>=1073741824){break a}b=g<<2;i=sa(b);F[e+8>>2]=i;j=b+i|0;F[e+16>>2]=j;ua(i,0,b);F[e+12>>2]=j}b=F[h+132>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[e+12>>2];i=F[e+8>>2]}F[b+4>>2]=j;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[e+28>>2];g=b+1|0;F[e+28>>2]=g;y:{if(b>>>0>g>>>0){break y}while(1){j=F[e+12>>2];f=F[e+24>>2];i=g-1|0;b=f+i|0;d=(b>>>0)/341|0;b=F[j+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;q=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[e+28>>2]=i;i=F[e+16>>2];j=i-j|0;if(((j?L(j>>2,341)-1|0:0)-(g+f|0)|0)+1>>>0>=682){ra(F[i-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(b>>>0>p>>>0){break y}f=0;g=F[h+12>>2];i=(d|0)==(g-1|0)?0:d+1|0;if(i>>>0>=g>>>0){break y}d=F[h+120>>2];g=L(q,12);k=d+g|0;z:{A:{j=i<<2;n=g+F[h+132>>2]|0;m=F[h>>2]-F[j+F[n>>2]>>2]|0;if(!m){if(!b){break A}while(1){d=F[k>>2];q=F[d+8>>2];m=F[d+4>>2];o=F[d>>2];d=F[t>>2];g=F[d+4>>2];l=F[d+8>>2];B:{if(g>>>0>>0){F[g+8>>2]=q;F[g+4>>2]=m;F[g>>2]=o;F[d+4>>2]=g+12;break B}j=F[d>>2];n=(g-j|0)/12|0;i=n+1|0;if(i>>>0>=357913942){break a}l=(l-j|0)/12|0;r=l<<1;i=l>>>0<178956970?i>>>0>r>>>0?i:r:357913941;if(i>>>0>=357913942){break b}v=L(n,12);l=L(i,12);n=sa(l);i=v+n|0;F[i+8>>2]=q;F[i+4>>2]=m;F[i>>2]=o;q=i+12|0;if((g|0)!=(j|0)){while(1){i=i-12|0;g=g-12|0;F[i>>2]=F[g>>2];F[i+4>>2]=F[g+4>>2];F[i+8>>2]=F[g+8>>2];if((g|0)!=(j|0)){continue}break}}F[d+8>>2]=l+n;F[d+4>>2]=q;F[d>>2]=i;if(!j){break B}ra(j)}F[h+8>>2]=F[h+8>>2]+1;f=f+1|0;if((b|0)!=(f|0)){continue}break}break A}C:{D:{E:{F:{if(b>>>0<=2){d=F[h+108>>2];F[d>>2]=i;j=1;g=F[h+12>>2];if(g>>>0>1){break F}break C}if(I[h+8>>2]>I[h+4>>2]){break y}f=d;d=g+12|0;Ca(f+d|0,F[k>>2],F[k+4>>2]);d=j+F[d+F[h+120>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>2];m=32-f|0;G:{if((d|0)<=(m|0)){k=F[h+28>>2];if((k|0)==F[h+20>>2]){f=0;break G}m=F[k>>2];o=d+f|0;F[h+32>>2]=o;f=m<>>32-d|0;if((o|0)!=32){break G}F[h+32>>2]=0;F[h+28>>2]=k+4;break G}k=F[h+28>>2];o=k+4|0;if((o|0)==F[h+20>>2]){f=0;break G}l=F[k>>2];F[h+28>>2]=o;m=d-m|0;F[h+32>>2]=m;f=F[k+4>>2]>>>32-m|l<>>32-d}k=q+1|0;d=b;b=(b>>>1|0)-f|0;f=d-b|0;H:{if((f|0)==(b|0)){d=b;break H}d=F[h+88>>2];if((d|0)==F[h+80>>2]){break E}m=F[d>>2];o=F[h+92>>2];l=o+1|0;F[h+92>>2]=l;m=m&-2147483648>>>o;I:{if((l|0)==32){F[h+92>>2]=0;F[h+88>>2]=d+4;if(m){break I}break E}if(!m){break E}}d=f}f=b;break D}while(1){i=(g-1|0)==(i|0)?0:i+1|0;F[d+(j<<2)>>2]=i;g=F[h+12>>2];j=j+1|0;if(g>>>0>j>>>0){continue}break}break C}d=b}v=j;b=F[h+132>>2];g=b+g|0;j=F[g>>2];m=v+j|0;F[m>>2]=F[m>>2]+1;Ca(b+L(k,12)|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;j=F[e+12>>2];b=F[e+16>>2]-j|0;if((g|0)==((b?L(b>>2,341)-1|0:0)|0)){za(e+8|0);j=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+j>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=i;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break A}g=F[e+28>>2]+F[e+24>>2]|0;j=F[e+12>>2];b=F[e+16>>2]-j|0;if((g|0)==((b?L(b>>2,341)-1|0:0)|0)){za(e+8|0);j=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+j>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=d;g=F[e+28>>2]+1|0;F[e+28>>2]=g;break z}i=0;if(!b){break A}while(1){j=F[h+96>>2];if(g){q=F[h+40>>2];r=F[h+108>>2];x=F[k>>2];z=F[n>>2];g=0;while(1){m=r+(g<<2)|0;F[(F[m>>2]<<2)+j>>2]=0;f=F[m>>2]<<2;d=F[h>>2]-F[f+z>>2]|0;J:{if(!d){break J}f=f+j|0;o=F[h+52>>2];s=32-o|0;if((s|0)>=(d|0)){l=F[h+48>>2];if((l|0)==(q|0)){F[f>>2]=0;break J}F[f>>2]=F[l>>2]<>>32-d;d=d+F[h+52>>2]|0;F[h+52>>2]=d;if((d|0)!=32){break J}F[h+52>>2]=0;F[h+48>>2]=l+4;break J}l=F[h+48>>2];u=l+4|0;if((u|0)==(q|0)){F[f>>2]=0;break J}y=F[l>>2];F[h+48>>2]=u;s=d-s|0;F[h+52>>2]=s;F[f>>2]=F[l+4>>2]>>>32-s|y<>>32-d}d=F[m>>2]<<2;f=d+j|0;F[f>>2]=F[f>>2]|F[d+x>>2];g=g+1|0;if(g>>>0>2]){continue}break}j=F[h+96>>2]}F[e+32>>2]=F[j>>2];F[e+36>>2]=F[j+4>>2];F[e+40>>2]=F[j+8>>2];nb(F[t>>2],e+32|0);F[h+8>>2]=F[h+8>>2]+1;i=i+1|0;if((b|0)==(i|0)){break A}g=F[h+12>>2];continue}}g=F[e+28>>2]}if(g){continue}break}}F[e+28>>2]=0;g=F[e+16>>2];b=F[e+12>>2];i=g-b|0;if(i>>>0>=9){while(1){ra(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;g=F[e+16>>2];i=g-b|0;if(i>>>0>8){continue}break}}j=170;K:{switch((i>>>2|0)-1|0){case 1:j=341;case 0:F[e+24>>2]=j;break;default:break K}}L:{if((b|0)==(g|0)){break L}while(1){ra(F[b>>2]);b=b+4|0;if((g|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break L}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){ra(b)}ea=e+48|0;break x}}Ab(h);break d;case 2:i=xb(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;M:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break M}d=g+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;h=g;F[b+16>>2]=h;F[b+20>>2]=d;if(I[i>>2]>32){break M}g=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break M}d=h+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){break M}F[i+8>>2]=0;if(!xa(i+16|0,b)){break M}if(!ya(i+32|0,b)){break M}if(!ya(i+52|0,b)){break M}if(!ya(i+72|0,b)){break M}t=F[i+4>>2];f=0;b=0;g=ea-48|0;ea=g;e=F[i+12>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;if(e){if(e>>>0>=1073741824){break a}d=e<<2;f=sa(d);F[g+8>>2]=f;b=d+f|0;F[g+16>>2]=b;ua(f,0,d);F[g+12>>2]=b}d=F[i+116>>2];h=F[d>>2];if(h){F[d+4>>2]=h;ra(h);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;e=F[i+12>>2];f=F[g+8>>2];b=F[g+12>>2]}F[d+4>>2]=b;F[d>>2]=f;F[d+8>>2]=F[g+16>>2];f=0;F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;N:{if(e){if(e>>>0>=1073741824){break a}b=e<<2;k=sa(b);F[g+8>>2]=k;f=b+k|0;F[g+16>>2]=f;ua(k,0,b);F[g+12>>2]=f}b=F[i+128>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;k=F[g+8>>2];f=F[g+12>>2]}F[b+4>>2]=f;F[b>>2]=k;F[b+8>>2]=F[g+16>>2];F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;za(g+8|0);b=F[g+24>>2]+F[g+28>>2]|0;d=(b>>>0)/341|0;b=F[F[g+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=t;b=F[g+28>>2];e=b+1|0;F[g+28>>2]=e;O:{if(b>>>0>e>>>0){break O}r=i+16|0;while(1){p=F[g+12>>2];f=F[g+24>>2];k=e-1|0;b=f+k|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;j=F[b+8>>2];h=F[b+4>>2];d=F[b>>2];F[g+28>>2]=k;b=F[g+16>>2];k=b-p|0;if(((k?L(k>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[g+16>>2]=F[g+16>>2]-4}f=0;if(d>>>0>t>>>0){break O}b=F[i+12>>2];k=(h|0)==(b-1|0)?0:h+1|0;if(k>>>0>=b>>>0){break O}e=L(j,12);p=e+F[i+128>>2]|0;h=e+F[i+116>>2]|0;P:{m=k<<2;o=F[i>>2]-F[m+F[p>>2]>>2]|0;if(!o){if(!d){break P}while(1){b=F[h>>2];p=F[b+8>>2];m=F[b+4>>2];o=F[b>>2];b=F[q>>2];e=F[b+4>>2];l=F[b+8>>2];Q:{if(e>>>0>>0){F[e+8>>2]=p;F[e+4>>2]=m;F[e>>2]=o;F[b+4>>2]=e+12;break Q}j=F[b>>2];n=(e-j|0)/12|0;k=n+1|0;if(k>>>0>=357913942){break a}l=(l-j|0)/12|0;x=l<<1;k=l>>>0<178956970?k>>>0>x>>>0?k:x:357913941;if(k>>>0>=357913942){break b}v=L(n,12);l=L(k,12);n=sa(l);k=v+n|0;F[k+8>>2]=p;F[k+4>>2]=m;F[k>>2]=o;p=k+12|0;if((e|0)!=(j|0)){while(1){k=k-12|0;e=e-12|0;F[k>>2]=F[e>>2];F[k+4>>2]=F[e+4>>2];F[k+8>>2]=F[e+8>>2];if((e|0)!=(j|0)){continue}break}}F[b+8>>2]=l+n;F[b+4>>2]=p;F[b>>2]=k;if(!j){break Q}ra(j)}F[i+8>>2]=F[i+8>>2]+1;f=f+1|0;if((d|0)!=(f|0)){continue}break}break P}R:{S:{T:{U:{if(d>>>0<=2){b=F[i+104>>2];F[b>>2]=k;f=1;e=F[i+12>>2];if(e>>>0>1){break U}break R}if(I[i+8>>2]>I[i+4>>2]){break O}b=F[i+116>>2];l=j+1|0;p=L(l,12);f=b+p|0;if((f|0)!=(h|0)){Ca(f,F[h>>2],F[h+4>>2]);b=F[i+116>>2]}b=m+F[b+p>>2]|0;F[b>>2]=F[b>>2]+(1<>2]=0;qc(r,O(d)^31,g+32|0);b=(d>>>1|0)-F[g+32>>2]|0;f=d-b|0;V:{if((f|0)==(b|0)){d=b;break V}d=F[i+84>>2];if((d|0)==F[i+76>>2]){break T}h=F[d>>2];o=F[i+88>>2];n=o+1|0;F[i+88>>2]=n;h=h&-2147483648>>>o;W:{if((n|0)==32){F[i+88>>2]=0;F[i+84>>2]=d+4;if(h){break W}break T}if(!h){break T}}d=f}f=b;break S}while(1){k=(e-1|0)==(k|0)?0:k+1|0;F[b+(f<<2)>>2]=k;e=F[i+12>>2];f=f+1|0;if(e>>>0>f>>>0){continue}break}break R}d=b}b=F[i+128>>2];e=b+e|0;h=F[e>>2];m=h+m|0;F[m>>2]=F[m>>2]+1;Ca(b+p|0,h,F[e+4>>2]);if(f){e=F[g+28>>2]+F[g+24>>2]|0;b=F[g+12>>2];h=F[g+16>>2]-b|0;if((e|0)==((h?L(h>>2,341)-1|0:0)|0)){za(g+8|0);e=F[g+24>>2]+F[g+28>>2]|0;v=F[g+12>>2]}else{v=b}b=(e>>>0)/341|0;b=F[v+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=j;F[b+4>>2]=k;F[b>>2]=f;F[g+28>>2]=F[g+28>>2]+1}if(!d){break P}e=F[g+28>>2]+F[g+24>>2]|0;f=F[g+12>>2];b=F[g+16>>2]-f|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(g+8|0);e=F[g+24>>2]+F[g+28>>2]|0;f=F[g+12>>2]}b=(e>>>0)/341|0;b=F[f+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=k;F[b>>2]=d;F[g+28>>2]=F[g+28>>2]+1;break P}k=0;if(!d){break P}while(1){f=F[i+92>>2];if(e){m=F[i+36>>2];x=F[i+104>>2];z=F[h>>2];s=F[p>>2];e=0;while(1){o=x+(e<<2)|0;F[(F[o>>2]<<2)+f>>2]=0;j=F[o>>2]<<2;b=F[i>>2]-F[j+s>>2]|0;X:{if(!b){break X}j=f+j|0;l=F[i+48>>2];u=32-l|0;if((u|0)>=(b|0)){n=F[i+44>>2];if((n|0)==(m|0)){F[j>>2]=0;break X}F[j>>2]=F[n>>2]<>>32-b;b=b+F[i+48>>2]|0;F[i+48>>2]=b;if((b|0)!=32){break X}F[i+48>>2]=0;F[i+44>>2]=n+4;break X}n=F[i+44>>2];y=n+4|0;if((y|0)==(m|0)){F[j>>2]=0;break X}v=F[n>>2];F[i+44>>2]=y;u=b-u|0;F[i+48>>2]=u;F[j>>2]=F[n+4>>2]>>>32-u|v<>>32-b}b=F[o>>2]<<2;j=b+f|0;F[j>>2]=F[j>>2]|F[b+z>>2];e=e+1|0;if(e>>>0>2]){continue}break}f=F[i+92>>2]}F[g+32>>2]=F[f>>2];F[g+36>>2]=F[f+4>>2];F[g+40>>2]=F[f+8>>2];nb(F[q>>2],g+32|0);F[i+8>>2]=F[i+8>>2]+1;k=k+1|0;if((d|0)==(k|0)){break P}e=F[i+12>>2];continue}}e=F[g+28>>2];if(e){continue}break}}F[g+28>>2]=0;e=F[g+16>>2];b=F[g+12>>2];k=e-b|0;if(k>>>0>=9){while(1){ra(F[b>>2]);b=F[g+12>>2]+4|0;F[g+12>>2]=b;e=F[g+16>>2];k=e-b|0;if(k>>>0>8){continue}break}}f=170;Y:{switch((k>>>2|0)-1|0){case 1:f=341;case 0:F[g+24>>2]=f;break;default:break Y}}Z:{if((b|0)==(e|0)){break Z}while(1){ra(F[b>>2]);b=b+4|0;if((e|0)!=(b|0)){continue}break}b=F[g+16>>2];d=F[g+12>>2];if((b|0)==(d|0)){break Z}F[g+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[g+8>>2];if(b){ra(b)}ea=g+48|0;break N}}yb(i);break d;case 3:j=xb(w+8|0,3);t=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];h=e+4|0;d=h>>>0<4?d+1|0:d;_:{if(h>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break _}d=e+F[b>>2]|0;F[j>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;h=F[b+16>>2];e=h+4|0;d=e>>>0<4?d+1|0:d;k=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[j>>2]>32){break _}e=F[b+12>>2];d=f;f=h+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break _}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[j+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break _}F[j+8>>2]=0;if(!xa(j+16|0,b)){break _}if(!ya(j+32|0,b)){break _}if(!ya(j+52|0,b)){break _}if(!ya(j+72|0,b)){break _}p=F[j+4>>2];f=0;h=ea-48|0;ea=h;e=F[j+12>>2];F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;if(e){if(e>>>0>=1073741824){break a}b=e<<2;g=sa(b);F[h+8>>2]=g;f=b+g|0;F[h+16>>2]=f;ua(g,0,b);F[h+12>>2]=f}b=F[j+116>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;g=F[h+8>>2];e=F[j+12>>2];f=F[h+12>>2]}F[b+4>>2]=f;F[b>>2]=g;F[b+8>>2]=F[h+16>>2];g=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;$:{if(e){if(e>>>0>=1073741824){break a}b=e<<2;i=sa(b);F[h+8>>2]=i;g=b+i|0;F[h+16>>2]=g;ua(i,0,b);F[h+12>>2]=g}b=F[j+128>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[h+8>>2];g=F[h+12>>2]}F[b+4>>2]=g;F[b>>2]=i;F[b+8>>2]=F[h+16>>2];F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;za(h+8|0);b=F[h+24>>2]+F[h+28>>2]|0;d=(b>>>0)/341|0;b=F[F[h+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[h+28>>2];e=b+1|0;F[h+28>>2]=e;aa:{if(b>>>0>e>>>0){break aa}n=j+16|0;while(1){i=F[h+12>>2];f=F[h+24>>2];g=e-1|0;b=f+g|0;d=(b>>>0)/341|0;b=F[i+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;k=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[h+28>>2]=g;g=F[h+16>>2];i=g-i|0;if(((i?L(i>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){ra(F[g-4>>2]);F[h+16>>2]=F[h+16>>2]-4}if(b>>>0>p>>>0){break aa}f=0;g=F[j+12>>2];i=(d|0)==(g-1|0)?0:d+1|0;if(i>>>0>=g>>>0){break aa}d=F[j+116>>2];g=L(k,12);q=d+g|0;ba:{e=i<<2;r=g+F[j+128>>2]|0;m=F[j>>2]-F[e+F[r>>2]>>2]|0;if(!m){if(!b){break ba}while(1){d=F[q>>2];k=F[d+8>>2];m=F[d+4>>2];o=F[d>>2];d=F[t>>2];e=F[d+4>>2];l=F[d+8>>2];ca:{if(e>>>0>>0){F[e+8>>2]=k;F[e+4>>2]=m;F[e>>2]=o;F[d+4>>2]=e+12;break ca}g=F[d>>2];r=(e-g|0)/12|0;i=r+1|0;if(i>>>0>=357913942){break a}l=(l-g|0)/12|0;x=l<<1;i=l>>>0<178956970?i>>>0>x>>>0?i:x:357913941;if(i>>>0>=357913942){break b}v=L(r,12);l=L(i,12);r=sa(l);i=v+r|0;F[i+8>>2]=k;F[i+4>>2]=m;F[i>>2]=o;k=i+12|0;if((e|0)!=(g|0)){while(1){i=i-12|0;e=e-12|0;F[i>>2]=F[e>>2];F[i+4>>2]=F[e+4>>2];F[i+8>>2]=F[e+8>>2];if((e|0)!=(g|0)){continue}break}}F[d+8>>2]=l+r;F[d+4>>2]=k;F[d>>2]=i;if(!g){break ca}ra(g)}F[j+8>>2]=F[j+8>>2]+1;f=f+1|0;if((b|0)!=(f|0)){continue}break}break ba}da:{ea:{fa:{ga:{if(b>>>0<=2){d=F[j+104>>2];F[d>>2]=i;g=1;e=F[j+12>>2];if(e>>>0>1){break ga}break da}if(I[j+8>>2]>I[j+4>>2]){break aa}f=d;d=g+12|0;Ca(f+d|0,F[q>>2],F[q+4>>2]);d=e+F[d+F[j+116>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>2]=0;qc(n,O(b)^31,h+32|0);q=k+1|0;d=b;b=(b>>>1|0)-F[h+32>>2]|0;f=d-b|0;ha:{if((f|0)==(b|0)){d=b;break ha}d=F[j+84>>2];if((d|0)==F[j+76>>2]){break fa}m=F[d>>2];o=F[j+88>>2];l=o+1|0;F[j+88>>2]=l;m=m&-2147483648>>>o;ia:{if((l|0)==32){F[j+88>>2]=0;F[j+84>>2]=d+4;if(m){break ia}break fa}if(!m){break fa}}d=f}f=b;break ea}while(1){i=(e-1|0)==(i|0)?0:i+1|0;F[d+(g<<2)>>2]=i;e=F[j+12>>2];g=g+1|0;if(e>>>0>g>>>0){continue}break}break da}d=b}v=e;b=F[j+128>>2];g=b+g|0;e=F[g>>2];m=v+e|0;F[m>>2]=F[m>>2]+1;Ca(b+L(q,12)|0,e,F[g+4>>2]);if(f){e=F[h+28>>2]+F[h+24>>2]|0;g=F[h+12>>2];b=F[h+16>>2]-g|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(h+8|0);e=F[h+24>>2]+F[h+28>>2]|0;g=F[h+12>>2]}b=(e>>>0)/341|0;b=F[g+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=f;F[h+28>>2]=F[h+28>>2]+1}if(!d){break ba}e=F[h+28>>2]+F[h+24>>2]|0;g=F[h+12>>2];b=F[h+16>>2]-g|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){za(h+8|0);e=F[h+24>>2]+F[h+28>>2]|0;g=F[h+12>>2]}b=(e>>>0)/341|0;b=F[g+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=i;F[b>>2]=d;F[h+28>>2]=F[h+28>>2]+1;break ba}k=0;if(!b){break ba}while(1){g=F[j+92>>2];if(e){i=F[j+36>>2];x=F[j+104>>2];z=F[q>>2];s=F[r>>2];e=0;while(1){m=x+(e<<2)|0;F[(F[m>>2]<<2)+g>>2]=0;f=F[m>>2]<<2;d=F[j>>2]-F[f+s>>2]|0;ja:{if(!d){break ja}f=g+f|0;o=F[j+48>>2];u=32-o|0;if((u|0)>=(d|0)){l=F[j+44>>2];if((l|0)==(i|0)){F[f>>2]=0;break ja}F[f>>2]=F[l>>2]<>>32-d;d=d+F[j+48>>2]|0;F[j+48>>2]=d;if((d|0)!=32){break ja}F[j+48>>2]=0;F[j+44>>2]=l+4;break ja}l=F[j+44>>2];y=l+4|0;if((y|0)==(i|0)){F[f>>2]=0;break ja}v=F[l>>2];F[j+44>>2]=y;u=d-u|0;F[j+48>>2]=u;F[f>>2]=F[l+4>>2]>>>32-u|v<>>32-d}d=F[m>>2]<<2;f=d+g|0;F[f>>2]=F[f>>2]|F[d+z>>2];e=e+1|0;if(e>>>0>2]){continue}break}g=F[j+92>>2]}F[h+32>>2]=F[g>>2];F[h+36>>2]=F[g+4>>2];F[h+40>>2]=F[g+8>>2];nb(F[t>>2],h+32|0);F[j+8>>2]=F[j+8>>2]+1;k=k+1|0;if((b|0)==(k|0)){break ba}e=F[j+12>>2];continue}}e=F[h+28>>2];if(e){continue}break}}F[h+28>>2]=0;e=F[h+16>>2];b=F[h+12>>2];i=e-b|0;if(i>>>0>=9){while(1){ra(F[b>>2]);b=F[h+12>>2]+4|0;F[h+12>>2]=b;e=F[h+16>>2];i=e-b|0;if(i>>>0>8){continue}break}}g=170;ka:{switch((i>>>2|0)-1|0){case 1:g=341;case 0:F[h+24>>2]=g;break;default:break ka}}la:{if((b|0)==(e|0)){break la}while(1){ra(F[b>>2]);b=b+4|0;if((e|0)!=(b|0)){continue}break}b=F[h+16>>2];d=F[h+12>>2];if((b|0)==(d|0)){break la}F[h+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[h+8>>2];if(b){ra(b)}ea=h+48|0;break $}}yb(j);break d;case 4:i=ab(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;ma:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break ma}d=e+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;k=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[i>>2]>32){break ma}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break ma}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break ma}F[i+8>>2]=0;if(!vb(i+16|0,b)){break ma}if(!ya(i+544|0,b)){break ma}if(!ya(i+564|0,b)){break ma}if(!ya(i+584|0,b)){break ma}t=F[i+4>>2];d=0;e=ea-48|0;ea=e;f=F[i+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;g=sa(b);F[e+8>>2]=g;d=b+g|0;F[e+16>>2]=d;ua(g,0,b);F[e+12>>2]=d}b=F[i+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;ra(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[i+12>>2];g=F[e+8>>2];d=F[e+12>>2]}F[b+4>>2]=d;F[b>>2]=g;F[b+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;na:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;h=sa(b);F[e+8>>2]=h;g=b+h|0;F[e+16>>2]=g;ua(h,0,b);F[e+12>>2]=g}b=F[i+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[e+8>>2];g=F[e+12>>2]}F[b+4>>2]=g;F[b>>2]=h;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=t;b=F[e+28>>2];f=b+1|0;F[e+28>>2]=f;oa:{if(b>>>0>f>>>0){break oa}while(1){p=F[e+12>>2];h=F[e+24>>2];j=f-1|0;b=h+j|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;k=F[b+8>>2];g=F[b+4>>2];d=F[b>>2];F[e+28>>2]=j;b=F[e+16>>2];j=b-p|0;if(((j?L(j>>2,341)-1|0:0)-(f+h|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(d>>>0>t>>>0){break oa}b=F[i+12>>2];h=(g|0)==(b-1|0)?0:g+1|0;if(h>>>0>=b>>>0){break oa}p=L(k,12);m=p+F[i+640>>2]|0;j=p+F[i+628>>2]|0;pa:{qa:{o=h<<2;f=F[i>>2]-F[o+F[m>>2]>>2]|0;if(!f){b=0;if(!d){break qa}while(1){f=F[j>>2];p=F[f+8>>2];m=F[f+4>>2];o=F[f>>2];g=F[q>>2];f=F[g+4>>2];l=F[g+8>>2];ra:{if(f>>>0>>0){F[f+8>>2]=p;F[f+4>>2]=m;F[f>>2]=o;F[g+4>>2]=f+12;break ra}k=F[g>>2];n=(f-k|0)/12|0;h=n+1|0;if(h>>>0>=357913942){break a}l=(l-k|0)/12|0;r=l<<1;h=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;if(h>>>0>=357913942){break b}v=L(n,12);l=L(h,12);n=sa(l);h=v+n|0;F[h+8>>2]=p;F[h+4>>2]=m;F[h>>2]=o;p=h+12|0;if((f|0)!=(k|0)){while(1){h=h-12|0;f=f-12|0;F[h>>2]=F[f>>2];F[h+4>>2]=F[f+4>>2];F[h+8>>2]=F[f+8>>2];if((f|0)!=(k|0)){continue}break}}F[g+8>>2]=l+n;F[g+4>>2]=p;F[g>>2]=h;if(!k){break ra}ra(k)}F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)!=(b|0)){continue}break}break qa}sa:{ta:{ua:{va:{if(d>>>0<=2){b=F[i+616>>2];F[b>>2]=h;g=1;f=F[i+12>>2];if(f>>>0>1){break va}break sa}if(I[i+8>>2]>I[i+4>>2]){break oa}b=F[i+628>>2];l=k+1|0;m=L(l,12);g=b+m|0;if((g|0)!=(j|0)){Ca(g,F[j>>2],F[j+4>>2]);b=F[i+628>>2]}b=o+F[b+m>>2]|0;F[b>>2]=F[b>>2]+(1<>>1|0)-g|0;f=d-b|0;wa:{if((f|0)==(b|0)){d=b;break wa}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break ua}g=F[d>>2];j=F[i+600>>2];n=j+1|0;F[i+600>>2]=n;g=g&-2147483648>>>j;xa:{if((n|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(g){break xa}break ua}if(!g){break ua}}d=f}f=b;break ta}while(1){h=(f-1|0)==(h|0)?0:h+1|0;F[b+(g<<2)>>2]=h;f=F[i+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}break sa}d=b}b=F[i+640>>2];g=b+p|0;j=F[g>>2];p=j+o|0;F[p>>2]=F[p>>2]+1;Ca(b+m|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];j=F[e+16>>2]-b|0;if((g|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=b}b=(g>>>0)/341|0;b=F[j+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=h;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break qa}f=F[e+28>>2]+F[e+24>>2]|0;g=F[e+12>>2];b=F[e+16>>2]-g|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){za(e+8|0);g=F[e+12>>2];f=F[e+24>>2]+F[e+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+g>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=h;F[b>>2]=d;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break pa}b=0;if(!d){break qa}while(1){g=F[i+604>>2];if(f){p=F[i+548>>2];r=F[i+616>>2];x=F[j>>2];z=F[m>>2];f=0;while(1){o=r+(f<<2)|0;F[(F[o>>2]<<2)+g>>2]=0;k=F[o>>2]<<2;h=F[i>>2]-F[k+z>>2]|0;ya:{if(!h){break ya}k=g+k|0;l=F[i+560>>2];s=32-l|0;if((s|0)>=(h|0)){n=F[i+556>>2];if((n|0)==(p|0)){F[k>>2]=0;break ya}F[k>>2]=F[n>>2]<>>32-h;h=h+F[i+560>>2]|0;F[i+560>>2]=h;if((h|0)!=32){break ya}F[i+560>>2]=0;F[i+556>>2]=n+4;break ya}n=F[i+556>>2];u=n+4|0;if((u|0)==(p|0)){F[k>>2]=0;break ya}y=F[n>>2];F[i+556>>2]=u;s=h-s|0;F[i+560>>2]=s;F[k>>2]=F[n+4>>2]>>>32-s|y<>>32-h}h=F[o>>2]<<2;k=h+g|0;F[k>>2]=F[k>>2]|F[h+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}g=F[i+604>>2]}F[e+32>>2]=F[g>>2];F[e+36>>2]=F[g+4>>2];F[e+40>>2]=F[g+8>>2];nb(F[q>>2],e+32|0);F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)==(b|0)){break qa}f=F[i+12>>2];continue}}f=F[e+28>>2]}if(f){continue}break}}F[e+28>>2]=0;f=F[e+16>>2];b=F[e+12>>2];h=f-b|0;if(h>>>0>=9){while(1){ra(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;f=F[e+16>>2];h=f-b|0;if(h>>>0>8){continue}break}}d=170;za:{switch((h>>>2|0)-1|0){case 1:d=341;case 0:F[e+24>>2]=d;break;default:break za}}Aa:{if((b|0)==(f|0)){break Aa}while(1){ra(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break Aa}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){ra(b)}ea=e+48|0;break na}}bb(i);break d;case 5:h=ab(w+8|0,3);t=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;Ba:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break Ba}d=e+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;k=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[h>>2]>32){break Ba}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break Ba}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break Ba}F[h+8>>2]=0;if(!vb(h+16|0,b)){break Ba}if(!ya(h+544|0,b)){break Ba}if(!ya(h+564|0,b)){break Ba}if(!ya(h+584|0,b)){break Ba}p=F[h+4>>2];d=0;e=ea-48|0;ea=e;f=F[h+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;g=sa(b);F[e+8>>2]=g;d=b+g|0;F[e+16>>2]=d;ua(g,0,b);F[e+12>>2]=d}b=F[h+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;ra(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[h+12>>2];g=F[e+8>>2];d=F[e+12>>2]}F[b+4>>2]=d;F[b>>2]=g;F[b+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Ca:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;i=sa(b);F[e+8>>2]=i;g=b+i|0;F[e+16>>2]=g;ua(i,0,b);F[e+12>>2]=g}b=F[h+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[e+8>>2];g=F[e+12>>2]}F[b+4>>2]=g;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[e+28>>2];f=b+1|0;F[e+28>>2]=f;Da:{if(b>>>0>f>>>0){break Da}while(1){j=F[e+12>>2];g=F[e+24>>2];i=f-1|0;b=g+i|0;d=(b>>>0)/341|0;b=F[j+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;q=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[e+28>>2]=i;i=F[e+16>>2];j=i-j|0;if(((j?L(j>>2,341)-1|0:0)-(g+f|0)|0)+1>>>0>=682){ra(F[i-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(b>>>0>p>>>0){break Da}f=F[h+12>>2];i=(d|0)==(f-1|0)?0:d+1|0;if(i>>>0>=f>>>0){break Da}d=F[h+628>>2];j=L(q,12);k=d+j|0;Ea:{Fa:{m=i<<2;n=j+F[h+640>>2]|0;f=F[h>>2]-F[m+F[n>>2]>>2]|0;if(!f){j=0;if(!b){break Fa}while(1){d=F[k>>2];q=F[d+8>>2];m=F[d+4>>2];o=F[d>>2];d=F[t>>2];f=F[d+4>>2];l=F[d+8>>2];Ga:{if(f>>>0>>0){F[f+8>>2]=q;F[f+4>>2]=m;F[f>>2]=o;F[d+4>>2]=f+12;break Ga}g=F[d>>2];n=(f-g|0)/12|0;i=n+1|0;if(i>>>0>=357913942){break a}l=(l-g|0)/12|0;r=l<<1;i=l>>>0<178956970?i>>>0>r>>>0?i:r:357913941;if(i>>>0>=357913942){break b}v=L(n,12);l=L(i,12);n=sa(l);i=v+n|0;F[i+8>>2]=q;F[i+4>>2]=m;F[i>>2]=o;q=i+12|0;if((g|0)!=(f|0)){while(1){i=i-12|0;f=f-12|0;F[i>>2]=F[f>>2];F[i+4>>2]=F[f+4>>2];F[i+8>>2]=F[f+8>>2];if((g|0)!=(f|0)){continue}break}}F[d+8>>2]=l+n;F[d+4>>2]=q;F[d>>2]=i;if(!g){break Ga}ra(g)}F[h+8>>2]=F[h+8>>2]+1;j=j+1|0;if((b|0)!=(j|0)){continue}break}break Fa}Ha:{Ia:{Ja:{Ka:{if(b>>>0<=2){d=F[h+616>>2];F[d>>2]=i;g=1;f=F[h+12>>2];if(f>>>0>1){break Ka}break Ha}if(I[h+8>>2]>I[h+4>>2]){break Da}g=d;d=j+12|0;Ca(g+d|0,F[k>>2],F[k+4>>2]);d=m+F[d+F[h+628>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>>1|0)-g|0;f=d-b|0;La:{if((f|0)==(b|0)){d=b;break La}d=F[h+596>>2];if((d|0)==F[h+588>>2]){break Ja}g=F[d>>2];o=F[h+600>>2];l=o+1|0;F[h+600>>2]=l;g=g&-2147483648>>>o;Ma:{if((l|0)==32){F[h+600>>2]=0;F[h+596>>2]=d+4;if(g){break Ma}break Ja}if(!g){break Ja}}d=f}f=b;break Ia}while(1){i=(f-1|0)==(i|0)?0:i+1|0;F[d+(g<<2)>>2]=i;f=F[h+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}break Ha}d=b}b=F[h+640>>2];g=b+j|0;j=F[g>>2];m=j+m|0;F[m>>2]=F[m>>2]+1;Ca(b+L(k,12)|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;j=F[e+12>>2];b=F[e+16>>2]-j|0;if((g|0)==((b?L(b>>2,341)-1|0:0)|0)){za(e+8|0);j=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+j>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=i;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break Fa}f=F[e+28>>2]+F[e+24>>2]|0;g=F[e+12>>2];b=F[e+16>>2]-g|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){za(e+8|0);g=F[e+12>>2];f=F[e+24>>2]+F[e+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+g>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=d;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break Ea}j=0;if(!b){break Fa}while(1){g=F[h+604>>2];if(f){q=F[h+548>>2];r=F[h+616>>2];x=F[k>>2];z=F[n>>2];f=0;while(1){m=r+(f<<2)|0;F[(F[m>>2]<<2)+g>>2]=0;i=F[m>>2]<<2;d=F[h>>2]-F[i+z>>2]|0;Na:{if(!d){break Na}i=g+i|0;o=F[h+560>>2];s=32-o|0;if((s|0)>=(d|0)){l=F[h+556>>2];if((l|0)==(q|0)){F[i>>2]=0;break Na}F[i>>2]=F[l>>2]<>>32-d;d=d+F[h+560>>2]|0;F[h+560>>2]=d;if((d|0)!=32){break Na}F[h+560>>2]=0;F[h+556>>2]=l+4;break Na}l=F[h+556>>2];u=l+4|0;if((u|0)==(q|0)){F[i>>2]=0;break Na}y=F[l>>2];F[h+556>>2]=u;s=d-s|0;F[h+560>>2]=s;F[i>>2]=F[l+4>>2]>>>32-s|y<>>32-d}d=F[m>>2]<<2;i=d+g|0;F[i>>2]=F[i>>2]|F[d+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}g=F[h+604>>2]}F[e+32>>2]=F[g>>2];F[e+36>>2]=F[g+4>>2];F[e+40>>2]=F[g+8>>2];nb(F[t>>2],e+32|0);F[h+8>>2]=F[h+8>>2]+1;j=j+1|0;if((b|0)==(j|0)){break Fa}f=F[h+12>>2];continue}}f=F[e+28>>2]}if(f){continue}break}}F[e+28>>2]=0;f=F[e+16>>2];b=F[e+12>>2];i=f-b|0;if(i>>>0>=9){while(1){ra(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;f=F[e+16>>2];i=f-b|0;if(i>>>0>8){continue}break}}g=170;Oa:{switch((i>>>2|0)-1|0){case 1:g=341;case 0:F[e+24>>2]=g;break;default:break Oa}}Pa:{if((b|0)==(f|0)){break Pa}while(1){ra(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break Pa}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){ra(b)}ea=e+48|0;break Ca}}bb(h);break d;case 6:break f;default:break c}}i=ab(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;Qa:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break Qa}d=e+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;k=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[i>>2]>32){break Qa}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break Qa}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break Qa}F[i+8>>2]=0;if(!vb(i+16|0,b)){break Qa}if(!ya(i+544|0,b)){break Qa}if(!ya(i+564|0,b)){break Qa}if(!ya(i+584|0,b)){break Qa}t=F[i+4>>2];d=0;e=ea-48|0;ea=e;f=F[i+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;g=sa(b);F[e+8>>2]=g;d=b+g|0;F[e+16>>2]=d;ua(g,0,b);F[e+12>>2]=d}b=F[i+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;ra(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[i+12>>2];g=F[e+8>>2];d=F[e+12>>2]}F[b+4>>2]=d;F[b>>2]=g;F[b+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Ra:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;h=sa(b);F[e+8>>2]=h;g=b+h|0;F[e+16>>2]=g;ua(h,0,b);F[e+12>>2]=g}b=F[i+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;ra(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[e+8>>2];g=F[e+12>>2]}F[b+4>>2]=g;F[b>>2]=h;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=t;b=F[e+28>>2];f=b+1|0;F[e+28>>2]=f;Sa:{if(b>>>0>f>>>0){break Sa}while(1){j=F[e+12>>2];b=F[e+24>>2];g=f-1|0;d=b+g|0;h=(d>>>0)/341|0;d=F[j+(h<<2)>>2]+L(d-L(h,341)|0,12)|0;k=F[d+8>>2];d=F[d>>2];F[e+28>>2]=g;g=F[e+16>>2];h=g-j|0;if(((h?L(h>>2,341)-1|0:0)-(b+f|0)|0)+1>>>0>=682){ra(F[g-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(d>>>0>t>>>0){break Sa}b=F[i+628>>2];p=L(k,12);m=p+F[i+640>>2]|0;h=Td(i,d,m);if(h>>>0>=I[i+12>>2]){break Sa}j=b+p|0;Ta:{Ua:{o=h<<2;f=F[i>>2]-F[o+F[m>>2]>>2]|0;if(!f){b=0;if(!d){break Ua}while(1){f=F[j>>2];p=F[f+8>>2];m=F[f+4>>2];o=F[f>>2];g=F[q>>2];f=F[g+4>>2];l=F[g+8>>2];Va:{if(f>>>0>>0){F[f+8>>2]=p;F[f+4>>2]=m;F[f>>2]=o;F[g+4>>2]=f+12;break Va}k=F[g>>2];n=(f-k|0)/12|0;h=n+1|0;if(h>>>0>=357913942){break a}l=(l-k|0)/12|0;r=l<<1;h=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;if(h>>>0>=357913942){break b}v=L(n,12);l=L(h,12);n=sa(l);h=v+n|0;F[h+8>>2]=p;F[h+4>>2]=m;F[h>>2]=o;p=h+12|0;if((f|0)!=(k|0)){while(1){h=h-12|0;f=f-12|0;F[h>>2]=F[f>>2];F[h+4>>2]=F[f+4>>2];F[h+8>>2]=F[f+8>>2];if((f|0)!=(k|0)){continue}break}}F[g+8>>2]=l+n;F[g+4>>2]=p;F[g>>2]=h;if(!k){break Va}ra(k)}F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)!=(b|0)){continue}break}break Ua}Wa:{Xa:{Ya:{Za:{if(d>>>0<=2){b=F[i+616>>2];F[b>>2]=h;g=1;f=F[i+12>>2];if(f>>>0>1){break Za}break Wa}if(I[i+8>>2]>I[i+4>>2]){break Sa}b=F[i+628>>2];l=k+1|0;m=L(l,12);g=b+m|0;if((g|0)!=(j|0)){Ca(g,F[j>>2],F[j+4>>2]);b=F[i+628>>2]}b=o+F[b+m>>2]|0;F[b>>2]=F[b>>2]+(1<>>1|0)-g|0;f=d-b|0;_a:{if((f|0)==(b|0)){d=b;break _a}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break Ya}g=F[d>>2];j=F[i+600>>2];n=j+1|0;F[i+600>>2]=n;g=g&-2147483648>>>j;$a:{if((n|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(g){break $a}break Ya}if(!g){break Ya}}d=f}f=b;break Xa}while(1){h=(f-1|0)==(h|0)?0:h+1|0;F[b+(g<<2)>>2]=h;f=F[i+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}break Wa}d=b}b=F[i+640>>2];g=b+p|0;j=F[g>>2];p=j+o|0;F[p>>2]=F[p>>2]+1;Ca(b+m|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];j=F[e+16>>2]-b|0;if((g|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=b}b=(g>>>0)/341|0;b=F[j+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=h;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break Ua}f=F[e+28>>2]+F[e+24>>2]|0;g=F[e+12>>2];b=F[e+16>>2]-g|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){za(e+8|0);g=F[e+12>>2];f=F[e+24>>2]+F[e+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+g>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=h;F[b>>2]=d;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break Ta}b=0;if(!d){break Ua}while(1){g=F[i+604>>2];if(f){p=F[i+548>>2];r=F[i+616>>2];x=F[j>>2];z=F[m>>2];f=0;while(1){o=r+(f<<2)|0;F[(F[o>>2]<<2)+g>>2]=0;k=F[o>>2]<<2;h=F[i>>2]-F[k+z>>2]|0;ab:{if(!h){break ab}k=g+k|0;l=F[i+560>>2];s=32-l|0;if((s|0)>=(h|0)){n=F[i+556>>2];if((n|0)==(p|0)){F[k>>2]=0;break ab}F[k>>2]=F[n>>2]<>>32-h;h=h+F[i+560>>2]|0;F[i+560>>2]=h;if((h|0)!=32){break ab}F[i+560>>2]=0;F[i+556>>2]=n+4;break ab}n=F[i+556>>2];u=n+4|0;if((u|0)==(p|0)){F[k>>2]=0;break ab}y=F[n>>2];F[i+556>>2]=u;s=h-s|0;F[i+560>>2]=s;F[k>>2]=F[n+4>>2]>>>32-s|y<>>32-h}h=F[o>>2]<<2;k=h+g|0;F[k>>2]=F[k>>2]|F[h+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}g=F[i+604>>2]}F[e+32>>2]=F[g>>2];F[e+36>>2]=F[g+4>>2];F[e+40>>2]=F[g+8>>2];nb(F[q>>2],e+32|0);F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)==(b|0)){break Ua}f=F[i+12>>2];continue}}f=F[e+28>>2]}if(f){continue}break}}F[e+28>>2]=0;f=F[e+16>>2];b=F[e+12>>2];h=f-b|0;if(h>>>0>=9){while(1){ra(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;f=F[e+16>>2];h=f-b|0;if(h>>>0>8){continue}break}}d=170;bb:{switch((h>>>2|0)-1|0){case 1:d=341;case 0:F[e+24>>2]=d;break;default:break bb}}cb:{if((b|0)==(f|0)){break cb}while(1){ra(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break cb}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){ra(b)}ea=e+48|0;break Ra}}bb(i)}g=F[a+12>>2]==((F[c+4>>2]-F[c>>2]|0)/12|0)}ea=w+672|0;return g}wa(1336);V()}va();V()}function ld(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;if(!a){return 1}e=F[c+20>>2];g=F[c+12>>2];f=F[c+16>>2];a:{if((e|0)>=(g|0)&f>>>0>=I[c+8>>2]|(e|0)>(g|0)){break a}g=G[f+F[c>>2]|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;b:{switch(g|0){case 0:k=a;h=b;f=d;a=0;d=0;o=ea+-64|0;ea=o;F[o+56>>2]=0;F[o+48>>2]=0;F[o+52>>2]=0;F[o+40>>2]=0;F[o+44>>2]=0;F[o+32>>2]=0;F[o+36>>2]=0;F[o+24>>2]=0;F[o+28>>2]=0;F[o+16>>2]=0;F[o+20>>2]=0;F[o+8>>2]=0;F[o+12>>2]=0;c:{if(!Je(o+8|0,c)){break c}if(!Ie(o+8|0,c)|(F[o+20>>2]?0:k)){break c}Eb(c,0,0);if(k){p=h<<2;q=F[o+36>>2];s=F[o+48>>2];t=F[o+24>>2];while(1){m=F[o+56>>2];d:{if(m>>>0>16383){break d}a=F[o+52>>2];while(1){if((a|0)<=0){break d}a=a-1|0;F[o+52>>2]=a;m=G[a+s|0]|m<<8;F[o+56>>2]=m;if(m>>>0<16384){continue}break}}a=m&4095;n=F[(a<<2)+t>>2];b=q+(n<<3)|0;F[o+56>>2]=(L(F[b>>2],m>>>12|0)+a|0)-F[b+4>>2];e:{if((h|0)<=0){break e}a=0;if(!G[c+36|0]|n>>>0>32){break c}if(n){w=n&-2;x=n&1;g=d+h|0;b=F[c+32>>2];while(1){i=F[c+28>>2];j=F[c+24>>2];m=0;a=b;e=0;r=0;if((n|0)!=1){while(1){l=j+(a>>>3|0)|0;f:{if(l>>>0>=i>>>0){l=0;break f}l=G[l|0];b=a+1|0;F[c+32>>2]=b;l=l>>>(a&7)&1;a=b}l=l<>>3|0)|0;if(u>>>0>>0){e=G[u|0];b=a+1|0;F[c+32>>2]=b;e=e>>>(a&7)&1;a=b}u=m|1;m=m+2|0;e=l|e<>>3|0)|0;if(r>>>0>i>>>0){i=G[i|0];b=a+1|0;F[c+32>>2]=b;a=i>>>(a&7)&1}else{a=0}e=a<>2]=e;d=d+1|0;if((g|0)!=(d|0)){continue}break}d=g;break e}ua(f+(d<<2)|0,0,p);d=d+h|0}v=h+v|0;if(k>>>0>v>>>0){continue}break}}D[c+36|0]=0;b=F[c+20>>2];e=0;a=F[c+32>>2]+7|0;e=a>>>0<7?1:e;d=(e&7)<<29|a>>>3;a=d+F[c+16>>2]|0;e=(e>>>3|0)+b|0;F[c+16>>2]=a;F[c+20>>2]=a>>>0>>0?e+1|0:e;a=1}b=F[o+36>>2];if(b){F[o+40>>2]=b;ra(b)}b=F[o+24>>2];if(b){F[o+28>>2]=b;ra(b)}b=F[o+8>>2];if(b){F[o+12>>2]=b;ra(b)}ea=o- -64|0;return a;case 1:break b;default:break a}}b=0;e=F[c+20>>2];g=F[c+12>>2];f=F[c+16>>2];g:{if((e|0)>=(g|0)&f>>>0>=I[c+8>>2]|(e|0)>(g|0)){break g}g=G[f+F[c>>2]|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;h:{switch(g-1|0){case 8:g=a;o=d;f=ea+-64|0;ea=f;F[f+56>>2]=0;F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;n=f+8|0;a=H[c+38>>1];i:{j:{if(!a){break j}k:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break j}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[n+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break k}if(!jb(1,n+12|0,c)){break j}j=F[n+12>>2]}b=F[n>>2];a=F[n+4>>2]-b>>2;l:{if(a>>>0>>0){Aa(n,j-a|0);j=F[n+12>>2];break l}if(a>>>0<=j>>>0){break l}F[n+4>>2]=b+(j<<2)}d=1;if(!j){break i}q=F[c+8>>2];l=F[c+12>>2];s=F[n>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((l|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(l|0)){break i}d=F[c>>2];p=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=p>>>2|0;i=0;m:{n:{o:{p:{t=p&3;switch(t|0){case 0:break n;case 3:break p;default:break o}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break i}ua(s+(b<<2)|0,0,(p&252)+4|0);b=a;break m}while(1){if((e|0)>=(l|0)&h>>>0>=q>>>0|(e|0)>(l|0)){break j}j=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[n+12>>2];if(b>>>0>>0){continue}break}h=n+16|0;p=F[n>>2];b=F[n+16>>2];a=F[n+20>>2]-b|0;q:{if(a>>>0<=32767){Aa(h,8192-(a>>>2|0)|0);break q}if((a|0)==32768){break q}F[n+20>>2]=b+32768}a=n+28|0;b=F[a>>2];d=F[n+32>>2]-b>>3;r:{if(d>>>0>>0){tb(a,j-d|0);b=F[a>>2];break r}if(d>>>0>j>>>0){F[n+32>>2]=(j<<3)+b}if(!j){break j}}i=0;d=0;while(1){e=p+(i<<2)|0;n=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=n;e=F[e>>2];d=e+a|0;if(d>>>0>8192){break j}s:{if(a>>>0>=d>>>0){break s}n=F[h>>2];l=0;q=e&7;if(q){while(1){F[n+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break s}while(1){e=n+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==8192}d=k}t:{if(!d|(F[f+20>>2]?0:g)){break t}d=0;n=ea-16|0;ea=n;u:{v:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break u}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break v}if(!ib(1,n+8|0,c)){break u}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[n+8>>2];k=F[n+12>>2]}j=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>j>>>0|b>>>0>>0){break u}e=e+k|0;b=a+h|0;e=b>>>0>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break u}b=h+F[c>>2]|0;F[f+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];w:{if(h>>>0<=63){F[f+52>>2]=c;a=G[e|0]&63;break w}x:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break u}F[f+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break w;case 1:if(a>>>0<3){break u}F[f+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break w;default:break x}}F[f+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a+32768|0;F[f+56>>2]=a;d=a>>>0<8388608}ea=n+16|0;if(!d){break t}if(!g){m=1;break t}b=F[f+36>>2];c=F[f+48>>2];d=F[f+24>>2];a=F[f+56>>2];while(1){y:{if(a>>>0>32767){break y}m=F[f+52>>2];while(1){if((m|0)<=0){break y}m=m-1|0;F[f+52>>2]=m;a=G[c+m|0]|a<<8;F[f+56>>2]=a;if(a>>>0<32768){continue}break}}e=a&8191;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>13|0)+e|0)-F[m+4>>2]|0;F[f+56>>2]=a;F[o+(r<<2)>>2]=h;m=1;r=r+1|0;if((g|0)!=(r|0)){continue}break}}a=F[f+36>>2];if(a){F[f+40>>2]=a;ra(a)}a=F[f+24>>2];if(a){F[f+28>>2]=a;ra(a)}a=F[f+8>>2];if(a){F[f+12>>2]=a;ra(a)}ea=f- -64|0;b=m;break g;case 9:o=a;n=d;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;f=g+8|0;a=H[c+38>>1];z:{A:{if(!a){break A}B:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break A}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break B}if(!jb(1,f+12|0,c)){break A}j=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;C:{if(a>>>0>>0){Aa(f,j-a|0);j=F[f+12>>2];break C}if(a>>>0<=j>>>0){break C}F[f+4>>2]=b+(j<<2)}d=1;if(!j){break z}q=F[c+8>>2];l=F[c+12>>2];s=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((l|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(l|0)){break z}d=F[c>>2];p=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=p>>>2|0;i=0;D:{E:{F:{G:{t=p&3;switch(t|0){case 0:break E;case 3:break G;default:break F}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break z}ua(s+(b<<2)|0,0,(p&252)+4|0);b=a;break D}while(1){if((e|0)>=(l|0)&h>>>0>=q>>>0|(e|0)>(l|0)){break A}j=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;p=F[f>>2];b=F[f+16>>2];a=F[f+20>>2]-b|0;H:{if(a>>>0<=131071){Aa(h,32768-(a>>>2|0)|0);break H}if((a|0)==131072){break H}F[f+20>>2]=b+131072}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;I:{if(d>>>0>>0){tb(a,j-d|0);b=F[a>>2];break I}if(d>>>0>j>>>0){F[f+32>>2]=(j<<3)+b}if(!j){break A}}i=0;d=0;while(1){e=p+(i<<2)|0;f=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=f;e=F[e>>2];d=e+a|0;if(d>>>0>32768){break A}J:{if(a>>>0>=d>>>0){break J}f=F[h>>2];l=0;q=e&7;if(q){while(1){F[f+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break J}while(1){e=f+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==32768}d=k}K:{if(!d|(F[g+20>>2]?0:o)){break K}d=0;j=ea-16|0;ea=j;L:{M:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break L}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break M}if(!ib(1,j+8|0,c)){break L}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[j+8>>2];k=F[j+12>>2]}f=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>f>>>0|b>>>0>>0){break L}f=e+k|0;b=a+h|0;f=b>>>0>>0?f+1|0:f;F[c+16>>2]=b;F[c+20>>2]=f;if((a|0)<=0){break L}b=h+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];N:{if(h>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break N}O:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break L}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break N;case 1:if(a>>>0<3){break L}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break N;default:break O}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a+131072|0;F[g+56>>2]=a;d=a>>>0<33554432}ea=j+16|0;if(!d){break K}if(!o){m=1;break K}b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];a=F[g+56>>2];while(1){P:{if(a>>>0>131071){break P}m=F[g+52>>2];while(1){if((m|0)<=0){break P}m=m-1|0;F[g+52>>2]=m;a=G[c+m|0]|a<<8;F[g+56>>2]=a;if(a>>>0<131072){continue}break}}e=a&32767;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>15|0)+e|0)-F[m+4>>2]|0;F[g+56>>2]=a;F[n+(r<<2)>>2]=h;m=1;r=r+1|0;if((o|0)!=(r|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;b=m;break g;case 10:o=a;n=d;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;l=g+8|0;a=H[c+38>>1];Q:{R:{if(!a){break R}S:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break R}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[l+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break S}if(!jb(1,l+12|0,c)){break R}j=F[l+12>>2]}b=F[l>>2];a=F[l+4>>2]-b>>2;T:{if(a>>>0>>0){Aa(l,j-a|0);j=F[l+12>>2];break T}if(a>>>0<=j>>>0){break T}F[l+4>>2]=b+(j<<2)}d=1;if(!j){break Q}q=F[c+8>>2];p=F[c+12>>2];s=F[l>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((p|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(p|0)){break Q}d=F[c>>2];f=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=f>>>2|0;i=0;U:{V:{W:{X:{t=f&3;switch(t|0){case 0:break V;case 3:break X;default:break W}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break Q}ua(s+(b<<2)|0,0,(f&252)+4|0);b=a;break U}while(1){if((e|0)>=(p|0)&h>>>0>=q>>>0|(e|0)>(p|0)){break R}j=G[d+h|0];f=e;e=h+1|0;f=e?f:f+1|0;h=e;F[c+16>>2]=e;e=f;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[l+12>>2];if(b>>>0>>0){continue}break}h=l+16|0;p=F[l>>2];b=F[l+16>>2];a=F[l+20>>2]-b|0;Y:{if(a>>>0<=262143){Aa(h,65536-(a>>>2|0)|0);break Y}if((a|0)==262144){break Y}F[l+20>>2]=b+262144}a=l+28|0;b=F[a>>2];d=F[l+32>>2]-b>>3;Z:{if(d>>>0>>0){tb(a,j-d|0);b=F[a>>2];break Z}if(d>>>0>j>>>0){F[l+32>>2]=(j<<3)+b}if(!j){break R}}i=0;d=0;while(1){e=p+(i<<2)|0;f=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=f;e=F[e>>2];d=e+a|0;if(d>>>0>65536){break R}_:{if(a>>>0>=d>>>0){break _}f=F[h>>2];l=0;q=e&7;if(q){while(1){F[f+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break _}while(1){e=f+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==65536}d=k}$:{if(!d|(F[g+20>>2]?0:o)){break $}d=0;f=ea-16|0;ea=f;aa:{ba:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break aa}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break ba}if(!ib(1,f+8|0,c)){break aa}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[f+8>>2];k=F[f+12>>2]}j=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>j>>>0|b>>>0>>0){break aa}e=e+k|0;b=a+h|0;e=b>>>0>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break aa}b=h+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];ca:{if(h>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break ca}da:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break aa}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break ca;case 1:if(a>>>0<3){break aa}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break ca;default:break da}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a+262144|0;F[g+56>>2]=a;d=a>>>0<67108864}ea=f+16|0;if(!d){break $}if(!o){m=1;break $}b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];a=F[g+56>>2];while(1){ea:{if(a>>>0>262143){break ea}m=F[g+52>>2];while(1){if((m|0)<=0){break ea}m=m-1|0;F[g+52>>2]=m;a=G[c+m|0]|a<<8;F[g+56>>2]=a;if(a>>>0<262144){continue}break}}e=a&65535;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>16|0)+e|0)-F[m+4>>2]|0;F[g+56>>2]=a;F[n+(r<<2)>>2]=h;m=1;r=r+1|0;if((o|0)!=(r|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;b=m;break g;case 11:g=a;o=d;f=ea+-64|0;ea=f;F[f+56>>2]=0;F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;n=f+8|0;a=H[c+38>>1];fa:{ga:{if(!a){break ga}ha:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break ga}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[n+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break ha}if(!jb(1,n+12|0,c)){break ga}j=F[n+12>>2]}b=F[n>>2];a=F[n+4>>2]-b>>2;ia:{if(a>>>0>>0){Aa(n,j-a|0);j=F[n+12>>2];break ia}if(a>>>0<=j>>>0){break ia}F[n+4>>2]=b+(j<<2)}d=1;if(!j){break fa}q=F[c+8>>2];l=F[c+12>>2];s=F[n>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((l|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(l|0)){break fa}d=F[c>>2];p=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=p>>>2|0;i=0;ja:{ka:{la:{ma:{t=p&3;switch(t|0){case 0:break ka;case 3:break ma;default:break la}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break fa}ua(s+(b<<2)|0,0,(p&252)+4|0);b=a;break ja}while(1){if((e|0)>=(l|0)&h>>>0>=q>>>0|(e|0)>(l|0)){break ga}j=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[n+12>>2];if(b>>>0>>0){continue}break}h=n+16|0;p=F[n>>2];b=F[n+16>>2];a=F[n+20>>2]-b|0;na:{if(a>>>0<=1048575){Aa(h,262144-(a>>>2|0)|0);break na}if((a|0)==1048576){break na}F[n+20>>2]=b- -1048576}a=n+28|0;b=F[a>>2];d=F[n+32>>2]-b>>3;oa:{if(d>>>0>>0){tb(a,j-d|0);b=F[a>>2];break oa}if(d>>>0>j>>>0){F[n+32>>2]=(j<<3)+b}if(!j){break ga}}i=0;d=0;while(1){e=p+(i<<2)|0;n=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=n;e=F[e>>2];d=e+a|0;if(d>>>0>262144){break ga}pa:{if(a>>>0>=d>>>0){break pa}n=F[h>>2];l=0;q=e&7;if(q){while(1){F[n+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break pa}while(1){e=n+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==262144}d=k}qa:{if(!d|(F[f+20>>2]?0:g)){break qa}d=0;n=ea-16|0;ea=n;ra:{sa:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break ra}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break sa}if(!ib(1,n+8|0,c)){break ra}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[n+8>>2];k=F[n+12>>2]}j=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>j>>>0|b>>>0>>0){break ra}e=e+k|0;b=a+h|0;e=b>>>0>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break ra}b=h+F[c>>2]|0;F[f+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];ta:{if(h>>>0<=63){F[f+52>>2]=c;a=G[e|0]&63;break ta}ua:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break ra}F[f+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break ta;case 1:if(a>>>0<3){break ra}F[f+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break ta;default:break ua}}F[f+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a- -1048576|0;F[f+56>>2]=a;d=a>>>0<268435456}ea=n+16|0;if(!d){break qa}if(!g){m=1;break qa}b=F[f+36>>2];c=F[f+48>>2];d=F[f+24>>2];a=F[f+56>>2];while(1){va:{if(a>>>0>1048575){break va}m=F[f+52>>2];while(1){if((m|0)<=0){break va}m=m-1|0;F[f+52>>2]=m;a=G[c+m|0]|a<<8;F[f+56>>2]=a;if(a>>>0<1048576){continue}break}}e=a&262143;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>18|0)+e|0)-F[m+4>>2]|0;F[f+56>>2]=a;F[o+(r<<2)>>2]=h;m=1;r=r+1|0;if((g|0)!=(r|0)){continue}break}}a=F[f+36>>2];if(a){F[f+40>>2]=a;ra(a)}a=F[f+24>>2];if(a){F[f+28>>2]=a;ra(a)}a=F[f+8>>2];if(a){F[f+12>>2]=a;ra(a)}ea=f- -64|0;b=m;break g;case 12:o=a;n=d;g=ea+-64|0;ea=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;f=g+8|0;a=H[c+38>>1];wa:{xa:{if(!a){break xa}ya:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break xa}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break ya}if(!jb(1,f+12|0,c)){break xa}j=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;za:{if(a>>>0>>0){Aa(f,j-a|0);j=F[f+12>>2];break za}if(a>>>0<=j>>>0){break za}F[f+4>>2]=b+(j<<2)}d=1;if(!j){break wa}q=F[c+8>>2];l=F[c+12>>2];s=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((l|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(l|0)){break wa}d=F[c>>2];p=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=p>>>2|0;i=0;Aa:{Ba:{Ca:{Da:{t=p&3;switch(t|0){case 0:break Ba;case 3:break Da;default:break Ca}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break wa}ua(s+(b<<2)|0,0,(p&252)+4|0);b=a;break Aa}while(1){if((e|0)>=(l|0)&h>>>0>=q>>>0|(e|0)>(l|0)){break xa}j=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;p=F[f>>2];b=F[f+16>>2];a=F[f+20>>2]-b|0;Ea:{if(a>>>0<=2097151){Aa(h,524288-(a>>>2|0)|0);break Ea}if((a|0)==2097152){break Ea}F[f+20>>2]=b+2097152}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;Fa:{if(d>>>0>>0){tb(a,j-d|0);b=F[a>>2];break Fa}if(d>>>0>j>>>0){F[f+32>>2]=(j<<3)+b}if(!j){break xa}}i=0;d=0;while(1){e=p+(i<<2)|0;f=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=f;e=F[e>>2];d=e+a|0;if(d>>>0>524288){break xa}Ga:{if(a>>>0>=d>>>0){break Ga}f=F[h>>2];l=0;q=e&7;if(q){while(1){F[f+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break Ga}while(1){e=f+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==524288}d=k}Ha:{if(!d|(F[g+20>>2]?0:o)){break Ha}d=0;j=ea-16|0;ea=j;Ia:{Ja:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break Ia}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break Ja}if(!ib(1,j+8|0,c)){break Ia}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[j+8>>2];k=F[j+12>>2]}f=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>f>>>0|b>>>0>>0){break Ia}f=e+k|0;b=a+h|0;f=b>>>0>>0?f+1|0:f;F[c+16>>2]=b;F[c+20>>2]=f;if((a|0)<=0){break Ia}b=h+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];Ka:{if(h>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break Ka}La:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break Ia}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break Ka;case 1:if(a>>>0<3){break Ia}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break Ka;default:break La}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a+2097152|0;F[g+56>>2]=a;d=a>>>0<536870912}ea=j+16|0;if(!d){break Ha}if(!o){m=1;break Ha}b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];a=F[g+56>>2];while(1){Ma:{if(a>>>0>2097151){break Ma}m=F[g+52>>2];while(1){if((m|0)<=0){break Ma}m=m-1|0;F[g+52>>2]=m;a=G[c+m|0]|a<<8;F[g+56>>2]=a;if(a>>>0<2097152){continue}break}}e=a&524287;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>19|0)+e|0)-F[m+4>>2]|0;F[g+56>>2]=a;F[n+(r<<2)>>2]=h;m=1;r=r+1|0;if((o|0)!=(r|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;ra(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;ra(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;ra(a)}ea=g- -64|0;b=m;break g;case 17:b=He(a,c,d);break g;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:e=ea+-64|0;ea=e;F[e+56>>2]=0;F[e+48>>2]=0;F[e+52>>2]=0;F[e+40>>2]=0;F[e+44>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Na:{if(!Je(e+8|0,c)|(F[e+20>>2]?0:a)){break Na}if(!Ie(e+8|0,c)){break Na}if(!a){b=1;break Na}m=F[e+36>>2];k=F[e+48>>2];f=F[e+24>>2];c=F[e+56>>2];while(1){Oa:{if(c>>>0>16383){break Oa}b=F[e+52>>2];while(1){if((b|0)<=0){break Oa}b=b-1|0;F[e+52>>2]=b;c=G[b+k|0]|c<<8;F[e+56>>2]=c;if(c>>>0<16384){continue}break}}b=c&4095;g=F[f+(b<<2)>>2];o=m+(g<<3)|0;c=(L(F[o>>2],c>>>12|0)+b|0)-F[o+4>>2]|0;F[e+56>>2]=c;F[(h<<2)+d>>2]=g;b=1;h=h+1|0;if((h|0)!=(a|0)){continue}break}}a=F[e+36>>2];if(a){F[e+40>>2]=a;ra(a)}a=F[e+24>>2];if(a){F[e+28>>2]=a;ra(a)}a=F[e+8>>2];if(a){F[e+12>>2]=a;ra(a)}ea=e- -64|0;break g;case 13:case 14:case 15:case 16:break h;default:break g}}b=He(a,c,d)}h=b}return h}function ci(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0;k=ea+-64|0;ea=k;F[a+132>>2]=0;if(F[a+148>>2]){b=F[a+144>>2];if(b){while(1){e=F[b>>2];ra(b);b=e;if(b){continue}break}}b=0;F[a+144>>2]=0;e=F[a+140>>2];a:{if(!e){break a}if(e-1>>>0>=3){d=e&-4;while(1){g=b<<2;F[g+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(g|4)>>2]=0;F[F[a+136>>2]+(g|8)>>2]=0;F[F[a+136>>2]+(g|12)>>2]=0;b=b+4|0;h=h+4|0;if((d|0)!=(h|0)){continue}break}}e=e&3;if(!e){break a}while(1){F[F[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;v=v+1|0;if((e|0)!=(v|0)){continue}break}}F[a+148>>2]=0}b:{c:{b=F[a+4>>2];v=G[b+36|0];h=v<<8|G[b+37|0];d:{if(h>>>0>513){break d}e=F[b+32>>2];if(h>>>0<=511){h=F[e+20>>2];g=F[e+16>>2];d=g+4|0;h=d>>>0<4?h+1|0:h;c=F[e+12>>2];if((c|0)<=(h|0)&d>>>0>I[e+8>>2]|(c|0)<(h|0)){break c}g=g+F[e>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[e+16>>2]=d;F[e+20>>2]=h;F[a+132>>2]=g;break d}if(!Fa(1,k,e)){break c}b=F[a+4>>2];v=G[b+36|0];F[a+132>>2]=F[k>>2]}h=F[b+32>>2];e:{f:{g:{if((v&255)>>>0<=1){v=0;e=F[h+20>>2];g=F[h+16>>2];d=g+4|0;e=d>>>0<4?e+1|0:e;c=F[h+12>>2];if((c|0)<=(e|0)&d>>>0>I[h+8>>2]|(c|0)<(e|0)){break b}g=g+F[h>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[k+60>>2]=g;F[h+16>>2]=d;F[h+20>>2]=e;F[a+156>>2]=g;d=a+156|0;break g}v=0;if(!Fa(1,k+60|0,h)){break b}b=F[a+4>>2];e=G[b+36|0];F[a+156>>2]=F[k+60>>2];d=a+156|0;if(e>>>0>1){break f}}e=F[b+32>>2];b=F[e+8>>2];h=F[e+12>>2];i=b;b=F[e+20>>2];g=F[e+16>>2];c=g+4|0;b=c>>>0<4?b+1|0:b;if(i>>>0>>0&(b|0)>=(h|0)|(b|0)>(h|0)){break b}h=g+F[e>>2]|0;h=G[h|0]|G[h+1|0]<<8|(G[h+2|0]<<16|G[h+3|0]<<24);F[k+56>>2]=h;F[e+16>>2]=c;F[e+20>>2]=b;break e}if(!Fa(1,k+56|0,F[b+32>>2])){break b}h=F[k+56>>2]}if(h>>>0>1431655765|I[d>>2]>L(h,3)>>>0){break b}f=F[a+4>>2];g=F[f+32>>2];b=g;j=F[b+8>>2];d=F[b+12>>2];e=F[b+20>>2];c=F[b+16>>2];if((d|0)<=(e|0)&j>>>0<=c>>>0|(e|0)>(d|0)){break b}m=F[g>>2];i=G[m+c|0];b=e;y=c+1|0;b=y?b:b+1|0;F[g+16>>2]=y;F[g+20>>2]=b;h:{if(G[f+36|0]<=1){b=d;d=c+5|0;e=d>>>0<5?e+1|0:e;c=d;if((b|0)<=(e|0)&c>>>0>j>>>0|(b|0)<(e|0)){break b}b=m+y|0;d=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[k+52>>2]=d;F[g+16>>2]=c;F[g+20>>2]=e;break h}if(!Fa(1,k+52|0,g)){break b}d=F[k+52>>2]}if(((d>>>0)/3|0)+d>>>0>>0|d>>>0>h>>>0){break b}b=F[a+4>>2];g=F[b+32>>2];i:{if(G[b+36|0]<=1){b=F[g+20>>2];e=F[g+16>>2];c=e+4|0;b=c>>>0<4?b+1|0:b;f=F[g+12>>2];if((f|0)<=(b|0)&c>>>0>I[g+8>>2]|(b|0)>(f|0)){break b}e=e+F[g>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[k+48>>2]=e;F[g+16>>2]=c;F[g+20>>2]=b;break i}if(!Fa(1,k+48|0,g)){break b}e=F[k+48>>2]}if(e>>>0>d>>>0){break b}F[a+28>>2]=F[a+24>>2];g=sa(88);Lc(g);b=F[a+8>>2];F[a+8>>2]=g;if(b){cb(b);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Ib(a+160|0,h);F[a+176>>2]=F[a+172>>2];Ib(a+172|0,h);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];M=a+216|0;fd(M);ed(M,i);if(!Kc(F[a+8>>2],h,F[a+156>>2]+e|0)){break b}b=F[a+156>>2];D[k|0]=1;Na(a+120|0,b+e|0,k);b=F[a+4>>2];h=H[b+36>>1];h=(h<<8|h>>>8)&65535;j:{if(h>>>0<=513){g=F[b+32>>2];k:{if(h>>>0<=511){h=F[g+20>>2];c=F[g+16>>2];b=c+4|0;h=b>>>0<4?h+1|0:h;f=b;b=h;j=F[g+12>>2];if(f>>>0>I[g+8>>2]&(b|0)>=(j|0)|(b|0)>(j|0)){break b}h=c+F[g>>2]|0;h=G[h|0]|G[h+1|0]<<8|(G[h+2|0]<<16|G[h+3|0]<<24);F[g+16>>2]=f;F[g+20>>2]=b;break k}if(!Fa(1,k+44|0,g)){break b}h=F[k+44>>2]}if(!h){break b}b=F[F[a+4>>2]+32>>2];g=F[b+8>>2];c=F[b+16>>2];f=g-c|0;b=F[b+12>>2]-(F[b+20>>2]+(c>>>0>g>>>0)|0)|0;if(f>>>0>>0&(b|0)<=0|(b|0)<0){break b}E[k+38>>1]=0;F[k>>2]=0;F[k+8>>2]=0;F[k+12>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;F[k+24>>2]=0;F[k+28>>2]=0;D[k+29|0]=0;D[k+30|0]=0;D[k+31|0]=0;D[k+32|0]=0;D[k+33|0]=0;D[k+34|0]=0;D[k+35|0]=0;D[k+36|0]=0;g=F[F[a+4>>2]+32>>2];b=F[g+16>>2];c=(b+F[g>>2]|0)+h|0;f=F[g+8>>2];b=(f-b|0)-h|0;E[k+38>>1]=H[g+38>>1];F[k>>2]=c;F[k+16>>2]=0;F[k+20>>2]=0;F[k+8>>2]=b;F[k+12>>2]=0;y=Hb(a,k);if((y|0)==-1){break b}N=y>>31;break j}y=-1;N=-1;if((Hb(a,F[b+32>>2])|0)==-1){break b}}f=a+232|0;Ae(f,a);F[a+372>>2]=i;F[a+384>>2]=F[a+156>>2]+e;E[k+38>>1]=0;F[k>>2]=0;F[k+8>>2]=0;F[k+12>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;F[k+24>>2]=0;F[k+28>>2]=0;D[k+29|0]=0;D[k+30|0]=0;D[k+31|0]=0;D[k+32|0]=0;D[k+33|0]=0;D[k+34|0]=0;D[k+35|0]=0;D[k+36|0]=0;h=0;i=ea-16|0;ea=i;l:{m:{b=F[f+144>>2];b=H[(ga[F[F[b>>2]+32>>2]](b)|0)+36>>1];if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[f+4>>2];F[f+40>>2]=F[f>>2];F[f+44>>2]=b;b=F[f+36>>2];F[f+72>>2]=F[f+32>>2];F[f+76>>2]=b;e=F[f+28>>2];b=f- -64|0;F[b>>2]=F[f+24>>2];F[b+4>>2]=e;b=F[f+20>>2];F[f+56>>2]=F[f+16>>2];F[f+60>>2]=b;b=F[f+12>>2];F[f+48>>2]=F[f+8>>2];F[f+52>>2]=b;if(!Eb(f+40|0,1,i+8|0)){break m}b=F[f+44>>2];F[f>>2]=F[f+40>>2];F[f+4>>2]=b;b=F[f+76>>2];F[f+32>>2]=F[f+72>>2];F[f+36>>2]=b;b=F[f+68>>2];F[f+24>>2]=F[f+64>>2];F[f+28>>2]=b;e=F[f+60>>2];g=e;b=F[f+56>>2];F[f+16>>2]=b;F[f+20>>2]=e;c=F[f+52>>2];e=F[f+48>>2];F[f+8>>2]=e;F[f+12>>2]=c;j=e-b|0;m=F[i+12>>2];e=c-((b>>>0>e>>>0)+g|0)|0;c=F[i+8>>2];if((m|0)==(e|0)&j>>>0>>0|e>>>0>>0){break m}e=b;c=b+c|0;b=g+m|0;F[f+16>>2]=c;F[f+20>>2]=c>>>0>>0?b+1|0:b}n:{if(H[f+38>>1]<=513){b=F[f+4>>2];F[f+96>>2]=F[f>>2];F[f+100>>2]=b;b=F[f+36>>2];F[f+128>>2]=F[f+32>>2];F[f+132>>2]=b;b=F[f+28>>2];F[f+120>>2]=F[f+24>>2];F[f+124>>2]=b;b=F[f+20>>2];F[f+112>>2]=F[f+16>>2];F[f+116>>2]=b;b=F[f+12>>2];F[f+104>>2]=F[f+8>>2];F[f+108>>2]=b;if(!Eb(f+96|0,1,i+8|0)){break m}b=F[f+100>>2];F[f>>2]=F[f+96>>2];F[f+4>>2]=b;b=F[f+132>>2];F[f+32>>2]=F[f+128>>2];F[f+36>>2]=b;b=F[f+124>>2];F[f+24>>2]=F[f+120>>2];F[f+28>>2]=b;e=F[f+116>>2];g=e;b=F[f+112>>2];F[f+16>>2]=b;F[f+20>>2]=e;c=F[f+108>>2];e=F[f+104>>2];F[f+8>>2]=e;F[f+12>>2]=c;j=e-b|0;m=F[i+12>>2];e=c-((b>>>0>e>>>0)+g|0)|0;c=F[i+8>>2];if((m|0)==(e|0)&j>>>0>>0|e>>>0>>0){break m}e=g+m|0;c=b+c|0;e=c>>>0>>0?e+1|0:e;F[f+16>>2]=c;F[f+20>>2]=e;break n}if(!xa(f+80|0,f)){break l}}if(!Be(f)){break l}b=F[f+4>>2];F[k>>2]=F[f>>2];F[k+4>>2]=b;b=F[f+36>>2];F[k+32>>2]=F[f+32>>2];F[k+36>>2]=b;b=F[f+28>>2];F[k+24>>2]=F[f+24>>2];F[k+28>>2]=b;b=F[f+20>>2];F[k+16>>2]=F[f+16>>2];F[k+20>>2]=b;b=F[f+12>>2];F[k+8>>2]=F[f+8>>2];F[k+12>>2]=b;b=F[f+144>>2];b=H[(ga[F[F[b>>2]+32>>2]](b)|0)+36>>1];o:{if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[f+144>>2];p:{if(G[(ga[F[F[b>>2]+32>>2]](b)|0)+36|0]<=1){b=F[k+20>>2];e=F[k+16>>2];g=e+4|0;b=g>>>0<4?b+1|0:b;c=F[k+12>>2];if((c|0)<=(b|0)&g>>>0>I[k+8>>2]|(b|0)>(c|0)){break l}e=e+F[k>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[k+16>>2]=g;F[k+20>>2]=b;break p}if(!Fa(1,i+8|0,k)){break l}e=F[i+8>>2]}b=F[f+152>>2];if(e>>>0>=b>>>0){break l}e=F[k+20>>2];c=F[k+12>>2];g=F[k+16>>2];if((e|0)>=(c|0)&g>>>0>=I[k+8>>2]|(c|0)<(e|0)){break l}c=G[g+F[k>>2]|0];g=g+1|0;e=g?e:e+1|0;F[k+16>>2]=g;F[k+20>>2]=e;if(c){break l}F[f+176>>2]=2;F[f+180>>2]=7;break o}F[f+176>>2]=2;F[f+180>>2]=7;b=F[f+152>>2]}if((b|0)<0){break l}F[i+8>>2]=0;h=2;c=F[f+156>>2];g=F[f+160>>2]-c>>2;q:{if(g>>>0>>0){Ia(f+156|0,b-g|0,i+8|0);h=F[f+176>>2];e=F[f+180>>2];break q}e=7;if(b>>>0>=g>>>0){break q}F[f+160>>2]=c+(b<<2)}g=f+184|0;e=(e-h|0)+1|0;b=F[f+188>>2];c=F[f+184>>2];h=(b-c|0)/12|0;r:{if(e>>>0>h>>>0){e=e-h|0;j=F[g+8>>2];b=F[g+4>>2];s:{if(e>>>0<=(j-b|0)/12>>>0){if(e){h=b;b=L((L(e,12)-12>>>0)/12|0,12)+12|0;b=ua(h,0,b)+b|0}F[g+4>>2]=b;break s}t:{u:{v:{h=F[g>>2];m=(b-h|0)/12|0;c=m+e|0;if(c>>>0<357913942){j=(j-h|0)/12|0;l=j<<1;j=j>>>0<178956970?c>>>0>l>>>0?c:l:357913941;if(j){if(j>>>0>=357913942){break v}s=sa(L(j,12))}c=L(m,12)+s|0;m=L((L(e,12)-12>>>0)/12|0,12)+12|0;e=ua(c,0,m);m=e+m|0;j=L(j,12)+s|0;if((b|0)==(h|0)){break u}while(1){c=c-12|0;b=b-12|0;F[c>>2]=F[b>>2];F[c+4>>2]=F[b+4>>2];F[c+8>>2]=F[b+8>>2];F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;if((b|0)!=(h|0)){continue}break}F[g+8>>2]=j;e=F[g+4>>2];F[g+4>>2]=m;b=F[g>>2];F[g>>2]=c;if((b|0)==(e|0)){break t}while(1){h=e-12|0;c=F[h>>2];if(c){F[e-8>>2]=c;ra(c)}e=h;if((e|0)!=(b|0)){continue}break}break t}va();V()}wa(1336);V()}F[g+8>>2]=j;F[g+4>>2]=m;F[g>>2]=e}if(b){ra(b)}}e=F[f+188>>2];break r}if(e>>>0>=h>>>0){e=b;break r}e=c+L(e,12)|0;if((e|0)!=(b|0)){while(1){h=b-12|0;c=F[h>>2];if(c){F[b-8>>2]=c;ra(c)}b=h;if((e|0)!=(b|0)){continue}break}}F[f+188>>2]=e}j=f+196|0;h=F[f+184>>2];b=(e-h|0)/12|0;s=F[f+196>>2];c=F[f+200>>2]-s>>2;w:{if(b>>>0>c>>>0){Aa(j,b-c|0);h=F[f+184>>2];e=F[f+188>>2];break w}if(b>>>0>=c>>>0){break w}F[f+200>>2]=s+(b<<2)}if((e|0)==(h|0)){h=1;break l}b=0;while(1){if(!Fa(1,i+8|0,k)){break m}h=F[i+8>>2];e=F[f+148>>2];if(h>>>0>(F[e+4>>2]-F[e>>2]>>2>>>0)/3>>>0){break m}if(h){e=F[g>>2];l=L(b,12);c=e+l|0;s=F[c>>2];m=F[c+4>>2]-s>>2;x:{if(m>>>0>>0){Aa(c,h-m|0);e=F[g>>2];break x}if(h>>>0>=m>>>0){break x}F[c+4>>2]=s+(h<<2)}ld(h,1,k,F[e+l>>2]);F[F[j>>2]+(b<<2)>>2]=h}h=1;b=b+1|0;if(b>>>0<(F[f+188>>2]-F[f+184>>2]|0)/12>>>0){continue}break}break l}h=0}ea=i+16|0;y:{if(!h){break y}b=0;i=0;e=0;g=0;s=0;h=0;o=ea-96|0;ea=o;F[o+72>>2]=0;F[o+64>>2]=0;F[o+68>>2]=0;F[o+48>>2]=0;F[o+52>>2]=0;F[o+40>>2]=0;F[o+44>>2]=0;F[o+56>>2]=1065353216;F[o+32>>2]=0;F[o+24>>2]=0;F[o+28>>2]=0;t=1;l=a;B=F[a+124>>2];z:{A:{B:{C:{m=d;D:{E:{if((d|0)<=0){break E}r=l+232|0;O=F[l+216>>2]!=F[l+220>>2];while(1){a=s;s=a+1|0;d=F[r+172>>2];F:{if((d|0)!=-1){c=F[r+196>>2]+(d<<2)|0;j=F[c>>2];d=j-1|0;F[c>>2]=d;c=9;if((j|0)<=0){break F}c=F[(F[F[F[r+184>>2]+L(F[r+172>>2],12)>>2]+(d<<2)>>2]<<2)+12176>>2];F[r+168>>2]=c;break F}c=7;d=F[r+144>>2];d=H[(ga[F[F[d>>2]+32>>2]](d)|0)+36>>1];G:{if(((d<<8|d>>>8)&65535)>>>0>513){break G}if(!G[r+76|0]){F[r+168>>2]=1;c=1;break F}c=0;n=F[r- -64>>2];j=F[r+72>>2];d=n+(j>>>3|0)|0;q=F[r+68>>2];if(d>>>0>=q>>>0){break G}p=G[d|0];d=j+1|0;F[r+72>>2]=d;if(!(p>>>(j&7)&1)){break G}p=d>>>3|0;c=n+p|0;H:{if(c>>>0>=q>>>0){c=d;d=0;break H}w=G[c|0];c=j+2|0;F[r+72>>2]=c;p=c>>>3|0;d=w>>>(d&7)&1}j=n+p|0;if(j>>>0>>0){j=G[j|0];F[r+72>>2]=c+1;c=j>>>(c&7)<<1&2}else{c=0}c=(d|c)<<1|1}F[r+168>>2]=c}I:{J:{if(!c){if((e|0)==(g|0)){j=-1;break D}c=-1;n=F[l+8>>2];p=F[n+24>>2];b=p;q=e-4|0;j=F[q>>2];d=-1;K:{if((j|0)==-1){break K}i=j+1|0;i=(i>>>0)%3|0?i:j-2|0;d=-1;if((i|0)==-1){break K}d=F[F[n>>2]+(i<<2)>>2]}b=F[b+(d<<2)>>2];if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b-2|0}i=F[n+12>>2];b=L(a,3);a=b+1|0;F[i+(j<<2)>>2]=a;w=a<<2;F[w+i>>2]=j;t=b+2|0;F[i+(c<<2)>>2]=t;x=t<<2;F[x+i>>2]=c;i=-1;a=-1;L:{if((j|0)==-1){break L}M:{if((j>>>0)%3|0){j=j-1|0;break M}j=j+2|0;a=-1;if((j|0)==-1){break L}}a=F[F[n>>2]+(j<<2)>>2]}N:{if((c|0)==-1){break N}j=c+1|0;c=(j>>>0)%3|0?j:c-2|0;if((c|0)==-1){break N}i=F[F[n>>2]+(c<<2)>>2]}j=-1;if((a|0)==(d|0)|(d|0)==(i|0)){break D}c=F[n>>2];F[c+(b<<2)>>2]=d;F[c+w>>2]=i;F[c+x>>2]=a;if((a|0)!=-1){F[p+(a<<2)>>2]=t}a=F[l+120>>2]+(d>>>3&536870908)|0;c=F[a>>2];P=a,Q=Lj(d)&c,F[P>>2]=Q;F[q>>2]=b;break J}j=-1;O:{P:{Q:{R:{S:{T:{U:{V:{W:{X:{switch(c-1|0){case 2:case 4:if((b|0)==(g|0)){break D}d=F[l+8>>2];i=F[d+12>>2];n=L(a,3);w=(c|0)==5;p=n+(w?2:1)|0;x=p<<2;J=b-4|0;c=F[J>>2];F[i+x>>2]=c;F[i+(c<<2)>>2]=p;Sa(d+24|0);i=F[l+8>>2];q=F[i+24>>2];if(F[i+28>>2]-q>>2>(B|0)){break D}i=F[i>>2];K=i+x|0;d=F[d+28>>2]-F[d+24>>2]|0;x=(d>>2)-1|0;F[K>>2]=x;if(d){F[q+(x<<2)>>2]=p}p=w?n:n+2|0;K=i+(n+w<<2)|0;Y:{if((c|0)==-1){F[i+(p<<2)>>2]=-1;d=-1;break Y}Z:{_:{$:{if((c>>>0)%3|0){d=c-1|0;break $}d=c+2|0;if((d|0)==-1){break _}}d=F[i+(d<<2)>>2];F[i+(p<<2)>>2]=d;if((d|0)==-1){break Z}F[q+(d<<2)>>2]=p;break Z}F[i+(p<<2)>>2]=-1}p=c+1|0;c=(p>>>0)%3|0?p:c-2|0;d=-1;if((c|0)==-1){break Y}d=F[i+(c<<2)>>2]}F[K>>2]=d;F[J>>2]=n;break W;case 0:if((b|0)==(i|0)){break D}e=b-4|0;p=F[e>>2];F[o+68>>2]=e;q=F[o+44>>2];aa:{if(!q){break aa}c=F[o+40>>2];w=Kj(q)>>>0>1;d=a&q+2147483647;ba:{if(!w){break ba}d=a;if(a>>>0>>0){break ba}d=(a>>>0)%(q>>>0)|0}n=d;d=F[c+(n<<2)>>2];if(!d){break aa}d=F[d>>2];if(!d){break aa}ca:{if(!w){c=q-1|0;while(1){q=F[d+4>>2];da:{if((q|0)!=(a|0)){if((n|0)==(c&q)){break da}break aa}if((a|0)==F[d+8>>2]){break ca}}d=F[d>>2];if(d){continue}break}break aa}while(1){c=F[d+4>>2];ea:{if((c|0)!=(a|0)){if(c>>>0>=q>>>0){c=(c>>>0)%(q>>>0)|0}if((c|0)==(n|0)){break ea}break aa}if((a|0)==F[d+8>>2]){break ca}}d=F[d>>2];if(d){continue}break}break aa}if((e|0)!=(A|0)){F[e>>2]=F[d+12>>2];F[o+68>>2]=b;e=b;break aa}b=A-i|0;c=b>>2;e=c+1|0;if(e>>>0>=1073741824){break T}g=b>>1;e=b>>>0<2147483644?e>>>0>g>>>0?e:g:1073741823;if(e){if(e>>>0>=1073741824){break A}g=sa(e<<2)}else{g=0}c=g+(c<<2)|0;F[c>>2]=F[d+12>>2];A=(e<<2)+g|0;e=c+4|0;if((b|0)>0){ta(g,i,b)}F[o+72>>2]=A;F[o+68>>2]=e;F[o+64>>2]=g;if(!i){break aa}ra(i)}if((e|0)==(g|0)){break U}w=e-4|0;c=F[w>>2];d=(c|0)==-1;n=F[l+8>>2];if(!d&F[F[n+12>>2]+(c<<2)>>2]!=-1){break U}q=F[n+12>>2];if((p|0)!=-1&F[q+(p<<2)>>2]!=-1){break U}b=L(a,3);t=b+2|0;F[q+(c<<2)>>2]=t;a=t<<2;F[a+q>>2]=c;i=b+1|0;F[q+(p<<2)>>2]=i;x=i<<2;F[x+q>>2]=p;if(d){break S}if((c>>>0)%3|0){j=c-1|0;break Q}j=c+2|0;if((j|0)!=-1){break Q}i=F[n>>2];d=-1;break P;case 6:break X;default:break D}}c=F[l+8>>2];Sa(c+24|0);d=F[l+8>>2];e=L(a,3);p=F[c+28>>2]-F[c+24>>2]|0;n=p>>2;w=n-1|0;F[F[d>>2]+(e<<2)>>2]=w;Sa(d+24|0);q=e+1|0;F[F[d>>2]+(q<<2)>>2]=(F[d+28>>2]-F[d+24>>2]>>2)-1;d=F[l+8>>2];Sa(d+24|0);x=e+2|0;F[F[d>>2]+(x<<2)>>2]=(F[d+28>>2]-F[d+24>>2]>>2)-1;d=F[l+8>>2];c=F[d+24>>2];if(F[d+28>>2]-c>>2>(B|0)){break D}fa:{ga:{if(!p){F[c+(n<<2)>>2]=q;d=1;break ga}F[c+(w<<2)>>2]=e;d=0;if((p|0)==-4){break ga}F[c+(n<<2)>>2]=q;d=n+1|0;if((d|0)==-1){break fa}}F[c+(d<<2)>>2]=x}if((b|0)!=(A|0)){F[b>>2]=e;e=b+4|0;F[o+68>>2]=e;b=e;break V}b=b-i|0;c=b>>2;g=c+1|0;if(g>>>0>=1073741824){break R}d=b>>1;d=b>>>0<2147483644?d>>>0>>0?g:d:1073741823;if(d){if(d>>>0>=1073741824){break A}g=sa(d<<2)}else{g=0}c=g+(c<<2)|0;F[c>>2]=e;A=(d<<2)+g|0;e=c+4|0;if((b|0)>0){ta(g,i,b)}F[o+72>>2]=A;F[o+68>>2]=e;F[o+64>>2]=g;if(i){ra(i)}b=e}i=g}ze(r,F[b-4>>2]);d=F[l+40>>2];if((d|0)==F[l+36>>2]){break I}c=m+(a^-1)|0;n=e-4|0;while(1){a=F[d-8>>2];if(a>>>0>c>>>0){break U}if((a|0)!=(c|0)){break I}p=G[d-4|0];a=d-12|0;b=F[a>>2];F[l+40>>2]=a;if((b|0)<0){break U}a=F[n>>2];F[o+20>>2]=m+(b^-1);b=o+20|0;F[o+88>>2]=b;$c(o,o+40|0,b,o+88|0);d=F[o>>2];ha:{if(p&1){b=-1;if((a|0)==-1){break ha}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0;break ha}b=-1;if((a|0)==-1){break ha}b=a-1|0;if((a>>>0)%3|0){break ha}b=a+2|0}F[d+12>>2]=b;b=e;d=F[l+40>>2];if((d|0)!=F[l+36>>2]){continue}break}break I}if(t&1){break D}break E}va();V()}d=-1;i=F[n>>2];F[i+(b<<2)>>2]=-1;j=-1;break O}va();V()}i=F[n>>2];d=F[i+(j<<2)>>2]}F[(b<<2)+i>>2]=d;J=c+1|0;c=(J>>>0)%3|0?J:c-2|0;j=-1;if((c|0)==-1){break O}j=F[(c<<2)+i>>2]}F[i+x>>2]=j;ia:{if((p|0)==-1){F[a+i>>2]=-1;t=-1;j=-1;break ia}ja:{ka:{la:{if((p>>>0)%3|0){j=p-1|0;break la}j=p+2|0;if((j|0)==-1){break ka}}c=a+i|0;a=F[(j<<2)+i>>2];F[c>>2]=a;if((a|0)==-1){break ja}F[F[n+24>>2]+(a<<2)>>2]=t;break ja}F[a+i>>2]=-1}t=-1;a=p+1|0;a=(a>>>0)%3|0?a:p-2|0;j=-1;if((a|0)==-1){break ia}t=F[(a<<2)+i>>2];j=a}a=F[l+388>>2];c=d<<2;p=a+c|0;K=a;a=t<<2;F[p>>2]=F[p>>2]+F[K+a>>2];n=F[n+24>>2];a=n+a|0;if((d|0)!=-1){F[c+n>>2]=F[a>>2]}ma:{if((j|0)==-1){break ma}while(1){F[(j<<2)+i>>2]=d;c=j+1|0;c=(c>>>0)%3|0?c:j-2|0;if((c|0)==-1){break ma}c=F[q+(c<<2)>>2];if((c|0)==-1){break ma}j=c+1|0;j=(j>>>0)%3|0?j:c-2|0;if((j|0)!=-1){continue}break}}F[a>>2]=-1;na:{if(O){break na}if((z|0)!=(C|0)){F[z>>2]=t;z=z+4|0;F[o+28>>2]=z;break na}oa:{a=C-u|0;c=a>>2;h=c+1|0;if(h>>>0<1073741824){d=a>>1;d=a>>>0<2147483644?d>>>0>>0?h:d:1073741823;if(d){if(d>>>0>=1073741824){break oa}h=sa(d<<2)}else{h=0}c=h+(c<<2)|0;F[c>>2]=t;C=(d<<2)+h|0;z=c+4|0;if((a|0)>0){ta(h,u,a)}F[o+32>>2]=C;F[o+28>>2]=z;F[o+24>>2]=h;if(u){ra(u)}u=h;break na}va();V()}break A}F[w>>2]=b}ze(r,b);b=e;i=g}t=(m|0)>(s|0);if((m|0)!=(s|0)){continue}break}s=m}j=-1;b=F[l+8>>2];if(F[b+28>>2]-F[b+24>>2]>>2>(B|0)){break D}if((e|0)!=(g|0)){a=l+60|0;A=l+312|0;while(1){e=e-4|0;u=F[e>>2];F[o+68>>2]=e;pa:{qa:{ra:{sa:{if(H[l+270>>1]<=513){if(!G[l+364|0]){break ra}b=F[l+360>>2];d=F[l+352>>2]+(b>>>3|0)|0;if(d>>>0>=I[l+356>>2]){break qa}d=G[d|0];F[l+360>>2]=b+1;b=d>>>(b&7)&1;break sa}b=Ga(A)}if(!b){break qa}}r=F[l+8>>2];n=F[r>>2];if(((F[r+4>>2]-n>>2>>>0)/3|0)<=(s|0)){break D}d=-1;c=-1;i=F[r+24>>2];b=-1;ta:{if((u|0)==-1){break ta}m=u+1|0;m=(m>>>0)%3|0?m:u-2|0;b=-1;if((m|0)==-1){break ta}b=F[n+(m<<2)>>2]}m=b;b=F[i+(m<<2)>>2];ua:{if((b|0)==-1){break ua}t=b+1|0;b=(t>>>0)%3|0?t:b-2|0;if((b|0)==-1){break ua}d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=F[n+(d<<2)>>2]}d=b}t=-1;p=-1;i=F[i+(c<<2)>>2];b=-1;va:{if((i|0)==-1){break va}q=i+1|0;i=(q>>>0)%3|0?q:i-2|0;b=-1;if((i|0)==-1){break va}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)!=-1){p=F[n+(b<<2)>>2]}b=i}r=F[r+12>>2];i=L(s,3);B=i<<2;F[r+B>>2]=u;F[r+(u<<2)>>2]=i;u=i+1|0;C=u<<2;F[C+r>>2]=d;F[r+(d<<2)>>2]=u;q=i+2|0;d=q<<2;F[d+r>>2]=b;F[r+(b<<2)>>2]=q;F[n+B>>2]=c;r=n+C|0;F[r>>2]=p;n=d+n|0;F[n>>2]=m;b=F[l+120>>2];d=i>>>0>u>>>0?-1:c;c=b+(d>>>3&536870908)|0;m=F[c>>2];P=c,Q=Lj(d)&m,F[P>>2]=Q;t=(u|0)!=-1?F[r>>2]:t;d=b+(t>>>3&536870908)|0;c=F[d>>2];P=d,Q=Lj(t)&c,F[P>>2]=Q;d=-1;d=(q|0)!=-1?F[n>>2]:d;b=b+(d>>>3&536870908)|0;c=F[b>>2];P=b,Q=Lj(d)&c,F[P>>2]=Q;d=F[l+64>>2];b=F[l+68>>2];if((d|0)==b<<5){if((d+1|0)<0){break C}if(d>>>0<=1073741822){d=d+32&-32;b=b<<6;b=b>>>0>>0?d:b}else{b=2147483647}db(a,b);d=F[l+64>>2]}s=s+1|0;F[l+64>>2]=d+1;b=F[l+60>>2]+(d>>>3&536870908)|0;F[b>>2]=F[b>>2]|1<>2];if((b|0)!=F[l+80>>2]){F[b>>2]=i;F[l+76>>2]=b+4;break pa}c=F[l+72>>2];d=b-c|0;u=d>>2;b=u+1|0;if(b>>>0>=1073741824){break B}m=d>>1;m=d>>>0<2147483644?b>>>0>m>>>0?b:m:1073741823;if(m){if(m>>>0>=1073741824){break A}b=sa(m<<2)}else{b=0}u=b+(u<<2)|0;F[u>>2]=i;if((d|0)>0){ta(b,c,d)}F[l+80>>2]=b+(m<<2);F[l+76>>2]=u+4;F[l+72>>2]=b;if(!c){break pa}ra(c);break pa}b=F[l+64>>2];d=F[l+68>>2];if((b|0)==d<<5){if((b+1|0)<0){break C}if(b>>>0<=1073741822){b=b+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}db(a,b);b=F[l+64>>2]}F[l+64>>2]=b+1;d=F[l+60>>2]+(b>>>3&536870908)|0;c=F[d>>2];P=d,Q=Lj(b)&c,F[P>>2]=Q;b=F[l+76>>2];if((b|0)!=F[l+80>>2]){F[b>>2]=u;F[l+76>>2]=b+4;break pa}c=F[l+72>>2];d=b-c|0;m=d>>2;b=m+1|0;if(b>>>0>=1073741824){break B}i=d>>1;i=d>>>0<2147483644?b>>>0>i>>>0?b:i:1073741823;if(i){if(i>>>0>=1073741824){break A}b=sa(i<<2)}else{b=0}m=b+(m<<2)|0;F[m>>2]=u;if((d|0)>0){ta(b,c,d)}F[l+80>>2]=b+(i<<2);F[l+76>>2]=m+4;F[l+72>>2]=b;if(!c){break pa}ra(c)}if((e|0)!=(g|0)){continue}break}b=F[l+8>>2]}if(((F[b+4>>2]-F[b>>2]>>2>>>0)/3|0)!=(s|0)){break D}d=F[b+24>>2];j=F[b+28>>2]-d>>2;if((h|0)==(z|0)){h=z;break D}c=h;while(1){a=F[c>>2];e=j-1|0;i=(e<<2)+d|0;if(F[i>>2]==-1){while(1){e=j-2|0;j=j-1|0;i=(e<<2)+d|0;if(F[i>>2]==-1){continue}break}}if(a>>>0<=e>>>0){F[o>>2]=b;d=F[i>>2];D[o+12|0]=1;F[o+8>>2]=d;F[o+4>>2]=d;if((d|0)!=-1){while(1){F[F[b>>2]+(d<<2)>>2]=a;vc(o);b=F[l+8>>2];d=F[o+8>>2];if((d|0)!=-1){continue}break}}d=F[b+24>>2];i=d+(e<<2)|0;if((a|0)!=-1){F[(a<<2)+d>>2]=F[i>>2]}F[i>>2]=-1;i=1<>2];a=s+(a>>>3&536870908)|0;s=s+(e>>>3&536870908)|0;e=1<>2]&e){i=i|F[a>>2]}else{i=F[a>>2]&(i^-1)}F[a>>2]=i;F[s>>2]=F[s>>2]&(e^-1);j=j-1|0}c=c+4|0;if((z|0)!=(c|0)){continue}break}}if(h){ra(h)}a=F[o+48>>2];if(a){while(1){b=F[a>>2];ra(a);a=b;if(b){continue}break}}a=F[o+40>>2];F[o+40>>2]=0;if(a){ra(a)}if(g){F[o+68>>2]=g;ra(g)}ea=o+96|0;break z}Oa();V()}va();V()}wa(1336);V()}if((j|0)==-1){break y}a=F[k+16>>2];b=a+F[k>>2]|0;e=F[k+8>>2];e=e-a|0;a=F[F[l+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=b;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=e;F[a+12>>2]=0;a=F[l+4>>2];b=H[a+36>>1];h=b<<8|b>>>8;if((h&65535)>>>0<=513){a=F[a+32>>2];e=N+F[a+20>>2]|0;b=y+F[a+16>>2]|0;e=b>>>0>>0?e+1|0:e;F[a+16>>2]=b;F[a+20>>2]=e}wa:{if(F[l+216>>2]==F[l+220>>2]){break wa}b=F[l+8>>2];a=F[b>>2];b=F[b+4>>2];xa:{if((h&65535)>>>0>=513){if((a|0)==(b|0)){break wa}b=0;break xa}if((a|0)==(b|0)){break wa}b=0;while(1){if(dd(l,b)){b=b+3|0;a=F[l+8>>2];if(b>>>0>2]-F[a>>2]>>2>>>0){continue}break wa}break}break y}while(1){if(cd(l,b)){b=b+3|0;a=F[l+8>>2];if(b>>>0>2]-F[a>>2]>>2>>>0){continue}break wa}break}break y}bd(f);b=F[l+216>>2];if((b|0)!=F[l+220>>2]){h=0;while(1){a=L(h,144);Ic((a+b|0)+4|0,F[l+8>>2]);v=F[M>>2];e=a+v|0;b=F[e+132>>2];e=F[e+136>>2];if((b|0)!=(e|0)){while(1){Gc((a+v|0)+4|0,F[b>>2]);v=F[M>>2];b=b+4|0;if((e|0)!=(b|0)){continue}break}}Hc((a+v|0)+4|0);h=h+1|0;b=F[l+216>>2];if(h>>>0<(F[l+220>>2]-b|0)/144>>>0){continue}break}}a=F[l+8>>2];Gb(l+184|0,F[a+28>>2]-F[a+24>>2]>>2);v=F[l+216>>2];if((v|0)!=F[l+220>>2]){b=0;while(1){a=L(b,144)+v|0;e=F[a+60>>2]-F[a+56>>2]>>2;h=a+104|0;a=F[l+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Gb(h,(a|0)>(e|0)?a:e);b=b+1|0;v=F[l+216>>2];if(b>>>0<(F[l+220>>2]-v|0)/144>>>0){continue}break}}v=ad(l,j)}break b}v=0}ea=k- -64|0;return v|0}function di(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;m=ea+-64|0;ea=m;F[a+132>>2]=0;if(F[a+148>>2]){e=F[a+144>>2];if(e){while(1){d=F[e>>2];ra(e);e=d;if(d){continue}break}}e=0;F[a+144>>2]=0;f=F[a+140>>2];a:{if(!f){break a}if(f-1>>>0>=3){d=f&-4;while(1){b=e<<2;F[b+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(b|4)>>2]=0;F[F[a+136>>2]+(b|8)>>2]=0;F[F[a+136>>2]+(b|12)>>2]=0;e=e+4|0;g=g+4|0;if((d|0)!=(g|0)){continue}break}}d=f&3;if(!d){break a}while(1){F[F[a+136>>2]+(e<<2)>>2]=0;e=e+1|0;v=v+1|0;if((d|0)!=(v|0)){continue}break}}F[a+148>>2]=0}b:{c:{e=F[a+4>>2];v=G[e+36|0];d=v<<8|G[e+37|0];d:{if(d>>>0>513){break d}c=F[e+32>>2];if(d>>>0<=511){d=F[c+20>>2];f=F[c+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;b=g;g=F[c+12>>2];if(b>>>0>I[c+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break c}g=f+F[c>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[c+16>>2]=b;F[c+20>>2]=d;F[a+132>>2]=g;break d}if(!Fa(1,m,c)){break c}e=F[a+4>>2];v=G[e+36|0];F[a+132>>2]=F[m>>2]}c=F[e+32>>2];e:{f:{g:{if((v&255)>>>0<=1){v=0;d=F[c+20>>2];f=F[c+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;b=g;g=F[c+12>>2];if(b>>>0>I[c+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break b}g=f+F[c>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[m+60>>2]=g;F[c+16>>2]=b;F[c+20>>2]=d;F[a+156>>2]=g;c=a+156|0;break g}v=0;if(!Fa(1,m+60|0,c)){break b}e=F[a+4>>2];d=G[e+36|0];F[a+156>>2]=F[m+60>>2];c=a+156|0;if(d>>>0>1){break f}}o=F[e+32>>2];d=F[o+8>>2];f=F[o+12>>2];j=d;d=F[o+20>>2];b=F[o+16>>2];g=b+4|0;d=g>>>0<4?d+1|0:d;e=g;if(j>>>0>>0&(d|0)>=(f|0)|(d|0)>(f|0)){break b}g=b+F[o>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[m+56>>2]=g;F[o+16>>2]=e;F[o+20>>2]=d;break e}if(!Fa(1,m+56|0,F[e+32>>2])){break b}g=F[m+56>>2]}if(g>>>0>1431655765|I[c>>2]>L(g,3)>>>0){break b}x=F[a+4>>2];e=F[x+32>>2];j=F[e+8>>2];f=j;b=F[e+12>>2];d=F[e+20>>2];l=F[e+16>>2];if((b|0)<=(d|0)&l>>>0>=f>>>0|(d|0)>(b|0)){break b}o=F[e>>2];i=G[o+l|0];c=l+1|0;f=c?d:d+1|0;F[e+16>>2]=c;F[e+20>>2]=f;h:{if(G[x+36|0]<=1){f=l+5|0;d=f>>>0<5?d+1|0:d;if(f>>>0>j>>>0&(d|0)>=(b|0)|(d|0)>(b|0)){break b}b=c+o|0;c=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[m+52>>2]=c;F[e+16>>2]=f;F[e+20>>2]=d;break h}if(!Fa(1,m+52|0,e)){break b}c=F[m+52>>2]}if(((c>>>0)/3|0)+c>>>0>>0|c>>>0>g>>>0){break b}d=F[a+4>>2];o=F[d+32>>2];i:{if(G[d+36|0]<=1){d=F[o+20>>2];b=F[o+16>>2];e=b+4|0;d=e>>>0<4?d+1|0:d;f=e;e=F[o+12>>2];if(f>>>0>I[o+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break b}e=b+F[o>>2]|0;b=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[m+48>>2]=b;F[o+16>>2]=f;F[o+20>>2]=d;break i}if(!Fa(1,m+48|0,o)){break b}b=F[m+48>>2]}if(c>>>0>>0){break b}F[a+28>>2]=F[a+24>>2];d=sa(88);Lc(d);e=F[a+8>>2];F[a+8>>2]=d;if(e){cb(e);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Ib(a+160|0,g);F[a+176>>2]=F[a+172>>2];Ib(a+172|0,g);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];N=a+216|0;fd(N);ed(N,i);if(!Kc(F[a+8>>2],g,F[a+156>>2]+b|0)){break b}d=F[a+156>>2];D[m|0]=1;Na(a+120|0,d+b|0,m);g=F[a+4>>2];d=H[g+36>>1];d=(d<<8|d>>>8)&65535;j:{if(d>>>0<=513){o=F[g+32>>2];k:{if(d>>>0<=511){d=F[o+20>>2];f=F[o+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;e=g;g=F[o+12>>2];if(e>>>0>I[o+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break b}g=f+F[o>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[o+16>>2]=e;F[o+20>>2]=d;break k}if(!Fa(1,m+44|0,o)){break b}g=F[m+44>>2]}if(!g){break b}o=F[F[a+4>>2]+32>>2];f=F[o+8>>2];d=F[o+16>>2];e=f-d|0;d=F[o+12>>2]-(F[o+20>>2]+(d>>>0>f>>>0)|0)|0;if(e>>>0>>0&(d|0)<=0|(d|0)<0){break b}E[m+38>>1]=0;F[m>>2]=0;F[m+8>>2]=0;F[m+12>>2]=0;F[m+16>>2]=0;F[m+20>>2]=0;F[m+24>>2]=0;F[m+28>>2]=0;D[m+29|0]=0;D[m+30|0]=0;D[m+31|0]=0;D[m+32|0]=0;D[m+33|0]=0;D[m+34|0]=0;D[m+35|0]=0;D[m+36|0]=0;o=F[F[a+4>>2]+32>>2];e=o;d=F[e+16>>2];f=(d+F[e>>2]|0)+g|0;e=F[e+8>>2];d=(e-d|0)-g|0;E[m+38>>1]=H[o+38>>1];F[m>>2]=f;F[m+16>>2]=0;F[m+20>>2]=0;F[m+8>>2]=d;F[m+12>>2]=0;o=Hb(a,m);if((o|0)==-1){break b}Q=o>>31;break j}o=-1;Q=-1;if((Hb(a,F[g+32>>2])|0)==-1){break b}}C=a+232|0;Ae(C,a);F[a+372>>2]=i;F[a+384>>2]=F[a+156>>2]+b;E[m+38>>1]=0;F[m>>2]=0;d=m;F[d+8>>2]=0;F[d+12>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+24>>2]=0;F[d+28>>2]=0;D[d+29|0]=0;D[d+30|0]=0;D[d+31|0]=0;D[d+32|0]=0;D[d+33|0]=0;D[d+34|0]=0;D[d+35|0]=0;D[d+36|0]=0;l=0;j=ea-16|0;ea=j;l:{if(!Ce(C,d)){break l}g=d;d=F[d+20>>2];f=F[g+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;b=e;e=F[g+12>>2];if(b>>>0>I[g+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break l}e=f+F[g>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[g+16>>2]=b;F[g+20>>2]=d;if((e|0)<0){break l}b=F[C+152>>2];if((b|0)<=(e|0)){break l}F[j+12>>2]=0;d=F[C+156>>2];e=F[C+160>>2]-d>>2;m:{if(e>>>0>>0){Ia(C+156|0,b-e|0,j+12|0);break m}if(b>>>0>=e>>>0){break m}F[C+160>>2]=d+(b<<2)}l=xa(C+168|0,g)}ea=j+16|0;n:{if(!l){break n}b=0;l=0;e=0;d=0;g=0;x=0;n=ea-96|0;ea=n;F[n+72>>2]=0;F[n+64>>2]=0;F[n+68>>2]=0;F[n+48>>2]=0;F[n+52>>2]=0;F[n+40>>2]=0;F[n+44>>2]=0;F[n+56>>2]=1065353216;F[n+32>>2]=0;F[n+24>>2]=0;F[n+28>>2]=0;p=1;h=a;O=F[a+124>>2];o:{p:{q:{r:{j=c;s:{t:{if((c|0)<=0){break t}K=h+400|0;P=h+232|0;z=F[h+216>>2]!=F[h+220>>2];while(1){i=x;x=i+1|0;u:{v:{w:{x:{y:{if(F[h+420>>2]!=-1){if(Ga(K)){break y}}if(G[h+308|0]){q=F[h+296>>2];r=F[h+304>>2];a=q+(r>>>3|0)|0;s=F[h+300>>2];if(a>>>0>=s>>>0){break x}f=G[a|0];a=r+1|0;F[h+304>>2]=a;if(!(f>>>(r&7)&1)){break x}k=a>>>3|0;f=q+k|0;z:{if(f>>>0>=s>>>0){f=a;a=0;break z}c=G[f|0];f=r+2|0;F[h+304>>2]=f;k=f>>>3|0;a=c>>>(a&7)&1}c=k+q|0;if(c>>>0>>0){c=G[c|0];F[h+304>>2]=f+1;f=c>>>(f&7)<<1&2}else{f=0}c=(a|f)<<1|1}else{c=1}F[h+416>>2]=c;break v}c=F[h+420>>2];F[h+416>>2]=c;if(c){break v}break w}F[h+416>>2]=0}if((b|0)==(l|0)){f=-1;break s}s=-1;y=F[h+8>>2];r=F[y+24>>2];a=r;q=b-4|0;A=F[q>>2];c=-1;A:{if((A|0)==-1){break A}f=A+1|0;f=(f>>>0)%3|0?f:A-2|0;c=-1;if((f|0)==-1){break A}c=F[F[y>>2]+(f<<2)>>2]}f=F[a+(c<<2)>>2];if((f|0)!=-1){a=f+1|0;s=(a>>>0)%3|0?a:f-2|0}f=F[y+12>>2];u=L(i,3);a=u+1|0;F[f+(A<<2)>>2]=a;k=a<<2;F[k+f>>2]=A;t=u+2|0;F[f+(s<<2)>>2]=t;i=t<<2;F[i+f>>2]=s;p=-1;a=-1;B:{if((A|0)==-1){break B}C:{if((A>>>0)%3|0){f=A-1|0;break C}f=A+2|0;a=-1;if((f|0)==-1){break B}}a=F[F[y>>2]+(f<<2)>>2]}D:{if((s|0)==-1){break D}f=s+1|0;f=(f>>>0)%3|0?f:s-2|0;if((f|0)==-1){break D}p=F[F[y>>2]+(f<<2)>>2]}f=-1;if((a|0)==(c|0)|(c|0)==(p|0)){break s}f=F[y>>2];F[f+(u<<2)>>2]=c;F[f+k>>2]=p;F[f+i>>2]=a;if((a|0)!=-1){F[r+(a<<2)>>2]=t}f=F[h+120>>2]+(c>>>3&536870908)|0;a=F[f>>2];R=f,S=Lj(c)&a,F[R>>2]=S;F[q>>2]=u;Yc(P,u);break u}f=-1;E:{F:{G:{H:{I:{J:{K:{L:{M:{N:{switch(c-1|0){case 2:case 4:if((d|0)==(b|0)){break s}q=F[h+8>>2];k=F[q+12>>2];r=L(i,3);s=(c|0)==5;c=r+(s?2:1)|0;a=c<<2;l=b-4|0;u=F[l>>2];F[k+a>>2]=u;F[k+(u<<2)>>2]=c;Sa(q+24|0);b=F[h+8>>2];k=F[b+24>>2];if(F[b+28>>2]-k>>2>(O|0)){break s}t=F[b>>2];A=t+a|0;b=F[q+28>>2]-F[q+24>>2]|0;a=(b>>2)-1|0;F[A>>2]=a;if(b){F[k+(a<<2)>>2]=c}q=s?r:r+2|0;b=t+(s+r<<2)|0;O:{if((u|0)==-1){F[t+(q<<2)>>2]=-1;c=-1;break O}P:{Q:{R:{if((u>>>0)%3|0){c=u-1|0;break R}c=u+2|0;if((c|0)==-1){break Q}}a=F[t+(c<<2)>>2];F[t+(q<<2)>>2]=a;if((a|0)==-1){break P}F[k+(a<<2)>>2]=q;break P}F[t+(q<<2)>>2]=-1}a=u+1|0;a=(a>>>0)%3|0?a:u-2|0;c=-1;if((a|0)==-1){break O}c=F[t+(a<<2)>>2]}F[b>>2]=c;F[l>>2]=r;break M;case 0:if((b|0)==(l|0)){break s}e=b-4|0;y=F[e>>2];F[n+68>>2]=e;q=F[n+44>>2];S:{if(!q){break S}c=F[n+40>>2];s=Kj(q)>>>0>1;a=i&q+2147483647;T:{if(!s){break T}a=i;if(a>>>0>>0){break T}a=(i>>>0)%(q>>>0)|0}k=a;a=F[c+(k<<2)>>2];if(!a){break S}c=F[a>>2];if(!c){break S}U:{if(!s){s=q-1|0;while(1){a=F[c+4>>2];V:{if((a|0)!=(i|0)){if((k|0)==(a&s)){break V}break S}if((i|0)==F[c+8>>2]){break U}}c=F[c>>2];if(c){continue}break}break S}while(1){a=F[c+4>>2];W:{if((a|0)!=(i|0)){if(a>>>0>=q>>>0){a=(a>>>0)%(q>>>0)|0}if((a|0)==(k|0)){break W}break S}if((i|0)==F[c+8>>2]){break U}}c=F[c>>2];if(c){continue}break}break S}if((e|0)!=(M|0)){F[e>>2]=F[c+12>>2];F[n+68>>2]=b;e=b;break S}k=M-l|0;e=k>>2;d=e+1|0;if(d>>>0>=1073741824){break J}a=k>>1;b=k>>>0<2147483644?a>>>0>>0?d:a:1073741823;if(b){if(b>>>0>=1073741824){break p}d=sa(b<<2)}else{d=0}a=d+(e<<2)|0;F[a>>2]=F[c+12>>2];M=(b<<2)+d|0;e=a+4|0;if((k|0)>0){ta(d,l,k)}F[n+72>>2]=M;F[n+68>>2]=e;F[n+64>>2]=d;if(!l){break S}ra(l)}if((d|0)==(e|0)){break K}k=e-4|0;u=F[k>>2];c=(u|0)==-1;t=F[h+8>>2];if(!c&F[F[t+12>>2]+(u<<2)>>2]!=-1){break K}r=F[t+12>>2];if((y|0)!=-1&F[r+(y<<2)>>2]!=-1){break K}q=L(i,3);i=q+2|0;F[r+(u<<2)>>2]=i;l=i<<2;F[l+r>>2]=u;a=q+1|0;F[r+(y<<2)>>2]=a;b=a<<2;F[b+r>>2]=y;if(c){break I}if((u>>>0)%3|0){f=u-1|0;break G}f=u+2|0;if((f|0)!=-1){break G}p=F[t>>2];a=-1;break F;case 6:break N;default:break s}}a=F[h+8>>2];Sa(a+24|0);e=F[h+8>>2];t=L(i,3);s=F[a+28>>2]-F[a+24>>2]|0;q=s>>2;c=q-1|0;F[F[e>>2]+(t<<2)>>2]=c;Sa(e+24|0);k=t+1|0;F[F[e>>2]+(k<<2)>>2]=(F[e+28>>2]-F[e+24>>2]>>2)-1;a=F[h+8>>2];Sa(a+24|0);e=t+2|0;F[F[a>>2]+(e<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[h+8>>2];r=F[a+24>>2];if(F[a+28>>2]-r>>2>(O|0)){break s}X:{Y:{if(!s){F[r+(q<<2)>>2]=k;c=1;break Y}F[r+(c<<2)>>2]=t;c=0;if((s|0)==-4){break Y}F[r+(q<<2)>>2]=k;c=q+1|0;if((c|0)==-1){break X}}F[r+(c<<2)>>2]=e}if((b|0)!=(M|0)){F[b>>2]=t;e=b+4|0;F[n+68>>2]=e;break L}c=M-l|0;e=c>>2;d=e+1|0;if(d>>>0>=1073741824){break H}a=c>>1;b=c>>>0<2147483644?a>>>0>>0?d:a:1073741823;if(b){if(b>>>0>=1073741824){break p}d=sa(b<<2)}else{d=0}a=d+(e<<2)|0;F[a>>2]=t;M=(b<<2)+d|0;e=a+4|0;if((c|0)>0){ta(d,l,c)}F[n+72>>2]=M;F[n+68>>2]=e;F[n+64>>2]=d;if(!l){break M}ra(l)}l=d}Yc(P,F[e-4>>2]);c=F[h+40>>2];Z:{if((c|0)==F[h+36>>2]){break Z}s=j+(i^-1)|0;k=e-4|0;while(1){a=F[c-8>>2];if(a>>>0>s>>>0){break K}if((a|0)!=(s|0)){break Z}i=G[c-4|0];a=c-12|0;b=F[a>>2];F[h+40>>2]=a;if((b|0)<0){break K}c=F[k>>2];F[n+20>>2]=j+(b^-1);a=n+20|0;F[n+88>>2]=a;$c(n,n+40|0,a,n+88|0);b=F[n>>2];_:{if(i&1){a=-1;if((c|0)==-1){break _}a=c+1|0;a=(a>>>0)%3|0?a:c-2|0;break _}a=-1;if((c|0)==-1){break _}a=c-1|0;if((c>>>0)%3|0){break _}a=c+2|0}F[b+12>>2]=a;c=F[h+40>>2];if((c|0)!=F[h+36>>2]){continue}break}}b=e;break u}if(p){break s}break t}va();V()}s=-1;p=F[t>>2];F[p+(q<<2)>>2]=-1;f=-1;break E}va();V()}p=F[t>>2];a=F[p+(f<<2)>>2]}s=a;F[(q<<2)+p>>2]=a;a=u+1|0;a=(a>>>0)%3|0?a:u-2|0;f=-1;if((a|0)==-1){break E}f=F[(a<<2)+p>>2]}F[b+p>>2]=f;$:{if((y|0)==-1){F[l+p>>2]=-1;l=-1;f=-1;break $}aa:{ba:{ca:{if((y>>>0)%3|0){f=y-1|0;break ca}f=y+2|0;if((f|0)==-1){break ba}}a=F[(f<<2)+p>>2];F[l+p>>2]=a;if((a|0)==-1){break aa}F[F[t+24>>2]+(a<<2)>>2]=i;break aa}F[l+p>>2]=-1}l=-1;a=y+1|0;a=(a>>>0)%3|0?a:y-2|0;f=-1;if((a|0)==-1){break $}l=F[(a<<2)+p>>2];f=a}c=F[h+388>>2];b=s<<2;a=c+b|0;i=a;A=F[a>>2];a=l<<2;F[i>>2]=A+F[a+c>>2];i=a;a=F[t+24>>2];c=i+a|0;if((s|0)!=-1){F[a+b>>2]=F[c>>2]}da:{if((f|0)==-1){break da}while(1){F[(f<<2)+p>>2]=s;a=f+1|0;a=(a>>>0)%3|0?a:f-2|0;if((a|0)==-1){break da}b=F[r+(a<<2)>>2];if((b|0)==-1){break da}a=b+1|0;f=(a>>>0)%3|0?a:b-2|0;if((f|0)!=-1){continue}break}}F[c>>2]=-1;ea:{if(z){break ea}if((B|0)!=(J|0)){F[J>>2]=l;J=J+4|0;F[n+28>>2]=J;break ea}fa:{c=B-w|0;b=c>>2;g=b+1|0;if(g>>>0<1073741824){a=c>>1;f=c>>>0<2147483644?a>>>0>>0?g:a:1073741823;if(f){if(f>>>0>=1073741824){break fa}g=sa(f<<2)}else{g=0}a=g+(b<<2)|0;F[a>>2]=l;B=(f<<2)+g|0;J=a+4|0;if((c|0)>0){ta(g,w,c)}F[n+32>>2]=B;F[n+28>>2]=J;F[n+24>>2]=g;if(w){ra(w)}w=g;break ea}va();V()}break p}F[k>>2]=q;b=e;l=d;Yc(P,q)}p=(j|0)>(x|0);if((j|0)!=(x|0)){continue}break}x=j}f=-1;p=F[h+8>>2];if(F[p+28>>2]-F[p+24>>2]>>2>(O|0)){break s}if((d|0)!=(e|0)){a=h+60|0;q=h+312|0;while(1){e=e-4|0;z=F[e>>2];F[n+68>>2]=e;ga:{ha:{ia:{ja:{if(H[h+270>>1]<=513){if(!G[h+364|0]){break ia}c=F[h+360>>2];b=F[h+352>>2]+(c>>>3|0)|0;if(b>>>0>=I[h+356>>2]){break ha}b=G[b|0];F[h+360>>2]=c+1;b=b>>>(c&7)&1;break ja}b=Ga(q)}if(!b){break ha}}r=F[h+8>>2];B=F[r>>2];if(((F[r+4>>2]-B>>2>>>0)/3|0)<=(x|0)){break s}c=-1;l=-1;s=-1;w=F[r+24>>2];i=w;j=-1;ka:{if((z|0)==-1){break ka}b=z+1|0;b=(b>>>0)%3|0?b:z-2|0;j=-1;if((b|0)==-1){break ka}j=F[B+(b<<2)>>2]}k=F[(j<<2)+i>>2];b=-1;la:{if((k|0)==-1){break la}i=k+1|0;i=(i>>>0)%3|0?i:k-2|0;b=-1;if((i|0)==-1){break la}b=i+1|0;c=i;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){b=F[B+(b<<2)>>2]}else{b=-1}}w=F[w+(b<<2)>>2];k=-1;ma:{if((w|0)==-1){break ma}i=w+1|0;i=(i>>>0)%3|0?i:w-2|0;k=-1;if((i|0)==-1){break ma}k=i+1|0;k=(k>>>0)%3|0?k:i-2|0;if((k|0)!=-1){s=F[B+(k<<2)>>2]}k=i}K=F[r+12>>2];t=L(x,3);w=t<<2;F[K+w>>2]=z;F[K+(z<<2)>>2]=t;z=t+1|0;i=z<<2;F[i+K>>2]=c;F[K+(c<<2)>>2]=z;r=t+2|0;c=r<<2;F[c+K>>2]=k;F[K+(k<<2)>>2]=r;F[w+B>>2]=b;k=i+B|0;F[k>>2]=s;i=c+B|0;F[i>>2]=j;w=F[h+120>>2];j=t>>>0>z>>>0?-1:b;c=w+(j>>>3&536870908)|0;b=F[c>>2];R=c,S=Lj(j)&b,F[R>>2]=S;l=(z|0)!=-1?F[k>>2]:l;c=w+(l>>>3&536870908)|0;b=F[c>>2];R=c,S=Lj(l)&b,F[R>>2]=S;c=-1;c=(r|0)!=-1?F[i>>2]:c;j=w+(c>>>3&536870908)|0;b=F[j>>2];R=j,S=Lj(c)&b,F[R>>2]=S;c=F[h+64>>2];b=F[h+68>>2];if((c|0)==b<<5){if((c+1|0)<0){break r}if(c>>>0<=1073741822){c=c+32&-32;b=b<<6;b=c>>>0>b>>>0?c:b}else{b=2147483647}db(a,b);c=F[h+64>>2]}x=x+1|0;F[h+64>>2]=c+1;b=F[h+60>>2]+(c>>>3&536870908)|0;F[b>>2]=F[b>>2]|1<>2];if((b|0)!=F[h+80>>2]){F[b>>2]=t;F[h+76>>2]=b+4;break ga}i=F[h+72>>2];l=b-i|0;c=l>>2;j=c+1|0;if(j>>>0>=1073741824){break q}b=l>>1;j=l>>>0<2147483644?b>>>0>>0?j:b:1073741823;if(j){if(j>>>0>=1073741824){break p}b=sa(j<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=t;if((l|0)>0){ta(b,i,l)}F[h+80>>2]=b+(j<<2);F[h+76>>2]=c+4;F[h+72>>2]=b;if(!i){break ga}ra(i);break ga}p=F[h+64>>2];b=F[h+68>>2];if((p|0)==b<<5){if((p+1|0)<0){break r}if(p>>>0<=1073741822){c=p+32&-32;b=b<<6;b=c>>>0>b>>>0?c:b}else{b=2147483647}db(a,b);p=F[h+64>>2]}F[h+64>>2]=p+1;c=F[h+60>>2]+(p>>>3&536870908)|0;b=F[c>>2];R=c,S=Lj(p)&b,F[R>>2]=S;b=F[h+76>>2];if((b|0)!=F[h+80>>2]){F[b>>2]=z;F[h+76>>2]=b+4;break ga}i=F[h+72>>2];l=b-i|0;c=l>>2;j=c+1|0;if(j>>>0>=1073741824){break q}b=l>>1;j=l>>>0<2147483644?b>>>0>>0?j:b:1073741823;if(j){if(j>>>0>=1073741824){break p}b=sa(j<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=z;if((l|0)>0){ta(b,i,l)}F[h+80>>2]=b+(j<<2);F[h+76>>2]=c+4;F[h+72>>2]=b;if(!i){break ga}ra(i)}if((d|0)!=(e|0)){continue}break}p=F[h+8>>2]}if(((F[p+4>>2]-F[p>>2]>>2>>>0)/3|0)!=(x|0)){break s}e=F[p+24>>2];f=F[p+28>>2]-e>>2;if((g|0)==(J|0)){g=J;break s}a=g;while(1){j=F[a>>2];c=f-1|0;b=(c<<2)+e|0;if(F[b>>2]==-1){while(1){c=f-2|0;f=f-1|0;b=(c<<2)+e|0;if(F[b>>2]==-1){continue}break}}if(c>>>0>=j>>>0){F[n>>2]=p;e=F[b>>2];D[n+12|0]=1;F[n+8>>2]=e;F[n+4>>2]=e;if((e|0)!=-1){while(1){F[F[p>>2]+(e<<2)>>2]=j;vc(n);p=F[h+8>>2];e=F[n+8>>2];if((e|0)!=-1){continue}break}}e=F[p+24>>2];b=e+(c<<2)|0;if((j|0)!=-1){F[(j<<2)+e>>2]=F[b>>2]}F[b>>2]=-1;i=1<>2];j=b+(j>>>3&536870908)|0;x=b+(c>>>3&536870908)|0;b=1<>2]&b){i=i|F[j>>2]}else{i=F[j>>2]&(i^-1)}F[j>>2]=i;F[x>>2]=F[x>>2]&(b^-1);f=f-1|0}a=a+4|0;if((J|0)!=(a|0)){continue}break}}if(g){ra(g)}a=F[n+48>>2];if(a){while(1){g=F[a>>2];ra(a);a=g;if(a){continue}break}}a=F[n+40>>2];F[n+40>>2]=0;if(a){ra(a)}if(d){F[n+68>>2]=d;ra(d)}ea=n+96|0;break o}Oa();V()}va();V()}wa(1336);V()}if((f|0)==-1){break n}a=F[m+16>>2];g=a+F[m>>2]|0;d=F[m+8>>2];a=d-a|0;d=F[F[h+4>>2]+32>>2];E[d+38>>1]=H[d+38>>1];F[d>>2]=g;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=a;F[d+12>>2]=0;d=F[h+4>>2];a=H[d+36>>1];g=a<<8|a>>>8;if((g&65535)>>>0<=513){a=F[d+32>>2];d=Q+F[a+20>>2]|0;e=o+F[a+16>>2]|0;d=e>>>0>>0?d+1|0:d;F[a+16>>2]=e;F[a+20>>2]=d}na:{if(F[h+216>>2]==F[h+220>>2]){break na}a=F[h+8>>2];d=F[a>>2];a=F[a+4>>2];oa:{if((g&65535)>>>0>=513){if((a|0)==(d|0)){break na}e=0;break oa}if((a|0)==(d|0)){break na}e=0;while(1){if(dd(h,e)){e=e+3|0;a=F[h+8>>2];if(e>>>0>2]-F[a>>2]>>2>>>0){continue}break na}break}break n}while(1){if(cd(h,e)){e=e+3|0;a=F[h+8>>2];if(e>>>0>2]-F[a>>2]>>2>>>0){continue}break na}break}break n}bd(C);e=F[h+216>>2];if((e|0)!=F[h+220>>2]){g=0;while(1){d=L(g,144);Ic((d+e|0)+4|0,F[h+8>>2]);v=F[N>>2];a=d+v|0;e=F[a+132>>2];a=F[a+136>>2];if((e|0)!=(a|0)){while(1){Gc((d+v|0)+4|0,F[e>>2]);v=F[N>>2];e=e+4|0;if((a|0)!=(e|0)){continue}break}}Hc((d+v|0)+4|0);g=g+1|0;e=F[h+216>>2];if(g>>>0<(F[h+220>>2]-e|0)/144>>>0){continue}break}}a=F[h+8>>2];Gb(h+184|0,F[a+28>>2]-F[a+24>>2]>>2);v=F[h+216>>2];if((v|0)!=F[h+220>>2]){e=0;while(1){a=L(e,144)+v|0;d=F[a+60>>2]-F[a+56>>2]>>2;g=a+104|0;a=F[h+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Gb(g,(a|0)>(d|0)?a:d);e=e+1|0;v=F[h+216>>2];if(e>>>0<(F[h+220>>2]-v|0)/144>>>0){continue}break}}v=ad(h,f)}break b}v=0}ea=m- -64|0;return v|0}function fi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0;i=ea+-64|0;ea=i;F[a+132>>2]=0;if(F[a+148>>2]){c=F[a+144>>2];if(c){while(1){b=F[c>>2];ra(c);c=b;if(b){continue}break}}c=0;F[a+144>>2]=0;d=F[a+140>>2];a:{if(!d){break a}if(d-1>>>0>=3){b=d&-4;while(1){j=c<<2;F[j+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(j|4)>>2]=0;F[F[a+136>>2]+(j|8)>>2]=0;F[F[a+136>>2]+(j|12)>>2]=0;c=c+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}}b=d&3;if(!b){break a}while(1){F[F[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;x=x+1|0;if((b|0)!=(x|0)){continue}break}}F[a+148>>2]=0}b:{c:{c=F[a+4>>2];x=G[c+36|0];b=x<<8|G[c+37|0];d:{if(b>>>0>513){break d}o=F[c+32>>2];if(b>>>0<=511){b=F[o+20>>2];d=F[o+16>>2];e=d+4|0;b=e>>>0<4?b+1|0:b;j=e;e=F[o+12>>2];if(j>>>0>I[o+8>>2]&(e|0)<=(b|0)|(b|0)>(e|0)){break c}e=d+F[o>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[o+16>>2]=j;F[o+20>>2]=b;F[a+132>>2]=e;break d}if(!Fa(1,i,o)){break c}c=F[a+4>>2];x=G[c+36|0];F[a+132>>2]=F[i>>2]}o=F[c+32>>2];e:{f:{g:{if((x&255)>>>0<=1){x=0;b=F[o+20>>2];d=F[o+16>>2];e=d+4|0;b=e>>>0<4?b+1|0:b;j=e;e=F[o+12>>2];if(j>>>0>I[o+8>>2]&(e|0)<=(b|0)|(b|0)>(e|0)){break b}e=d+F[o>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[i+60>>2]=e;F[o+16>>2]=j;F[o+20>>2]=b;F[a+156>>2]=e;k=a+156|0;break g}x=0;if(!Fa(1,i+60|0,o)){break b}c=F[a+4>>2];b=G[c+36|0];F[a+156>>2]=F[i+60>>2];k=a+156|0;if(b>>>0>1){break f}}d=F[c+32>>2];c=F[d+8>>2];j=F[d+12>>2];h=c;c=F[d+20>>2];e=F[d+16>>2];b=e+4|0;c=b>>>0<4?c+1|0:c;if(h>>>0>>0&(c|0)>=(j|0)|(c|0)>(j|0)){break b}e=e+F[d>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[i+56>>2]=e;F[d+16>>2]=b;F[d+20>>2]=c;break e}if(!Fa(1,i+56|0,F[c+32>>2])){break b}e=F[i+56>>2]}if(e>>>0>1431655765|I[k>>2]>L(e,3)>>>0){break b}f=F[a+4>>2];b=F[f+32>>2];v=F[b+8>>2];d=v;j=F[b+12>>2];c=F[b+20>>2];k=F[b+16>>2];if((j|0)<=(c|0)&k>>>0>=d>>>0|(c|0)>(j|0)){break b}h=F[b>>2];g=G[h+k|0];o=k+1|0;d=o?c:c+1|0;F[b+16>>2]=o;F[b+20>>2]=d;h:{if(G[f+36|0]<=1){d=k+5|0;c=d>>>0<5?c+1|0:c;if(d>>>0>v>>>0&(c|0)>=(j|0)|(c|0)>(j|0)){break b}j=h+o|0;k=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[i+52>>2]=k;F[b+16>>2]=d;F[b+20>>2]=c;break h}if(!Fa(1,i+52|0,b)){break b}k=F[i+52>>2]}if(e>>>0>>0|((k>>>0)/3|0)+k>>>0>>0){break b}c=F[a+4>>2];o=F[c+32>>2];i:{if(G[c+36|0]<=1){c=F[o+20>>2];d=F[o+16>>2];b=d+4|0;c=b>>>0<4?c+1|0:c;j=b;b=F[o+12>>2];if(j>>>0>I[o+8>>2]&(b|0)<=(c|0)|(b|0)<(c|0)){break b}b=d+F[o>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[i+48>>2]=b;F[o+16>>2]=j;F[o+20>>2]=c;break i}if(!Fa(1,i+48|0,o)){break b}b=F[i+48>>2]}if(b>>>0>k>>>0){break b}F[a+28>>2]=F[a+24>>2];c=sa(88);Lc(c);j=F[a+8>>2];F[a+8>>2]=c;if(j){cb(j);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Ib(a+160|0,e);F[a+176>>2]=F[a+172>>2];Ib(a+172|0,e);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];J=a+216|0;fd(J);ed(J,g);if(!Kc(F[a+8>>2],e,F[a+156>>2]+b|0)){break b}c=F[a+156>>2];D[i|0]=1;Na(a+120|0,b+c|0,i);b=F[a+4>>2];c=H[b+36>>1];c=(c<<8|c>>>8)&65535;j:{if(c>>>0<=513){d=F[b+32>>2];k:{if(c>>>0<=511){b=F[d+20>>2];e=F[d+16>>2];c=e+4|0;b=c>>>0<4?b+1|0:b;j=c;c=F[d+12>>2];if(j>>>0>I[d+8>>2]&(c|0)<=(b|0)|(b|0)>(c|0)){break b}c=e+F[d>>2]|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[d+16>>2]=j;F[d+20>>2]=b;break k}if(!Fa(1,i+44|0,d)){break b}e=F[i+44>>2]}if(!e){break b}d=F[F[a+4>>2]+32>>2];j=F[d+8>>2];c=F[d+16>>2];b=j-c|0;c=F[d+12>>2]-(F[d+20>>2]+(c>>>0>j>>>0)|0)|0;if(b>>>0>>0&(c|0)<=0|(c|0)<0){break b}E[i+38>>1]=0;F[i>>2]=0;F[i+8>>2]=0;F[i+12>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i+24>>2]=0;F[i+28>>2]=0;D[i+29|0]=0;D[i+30|0]=0;D[i+31|0]=0;D[i+32|0]=0;D[i+33|0]=0;D[i+34|0]=0;D[i+35|0]=0;D[i+36|0]=0;d=F[F[a+4>>2]+32>>2];c=F[d+16>>2];j=(c+F[d>>2]|0)+e|0;b=F[d+8>>2];c=(b-c|0)-e|0;E[i+38>>1]=H[d+38>>1];F[i>>2]=j;F[i+16>>2]=0;F[i+20>>2]=0;F[i+8>>2]=c;F[i+12>>2]=0;o=Hb(a,i);if((o|0)==-1){break b}M=o>>31;break j}o=-1;M=-1;if((Hb(a,F[b+32>>2])|0)==-1){break b}}N=a+232|0;j=N;F[j+144>>2]=a;c=F[(ga[F[F[a>>2]+32>>2]](a)|0)+32>>2];e=F[c>>2]+F[c+16>>2]|0;b=F[(ga[F[F[a>>2]+32>>2]](a)|0)+32>>2];c=F[b+8>>2];b=F[b+16>>2];c=c-b|0;O=j,P=H[F[(ga[F[F[a>>2]+32>>2]](a)|0)+32>>2]+38>>1],E[O+38>>1]=P;F[j>>2]=e;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=c;F[j+12>>2]=0;F[a+372>>2]=g;E[i+38>>1]=0;F[i>>2]=0;F[i+8>>2]=0;F[i+12>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i+24>>2]=0;F[i+28>>2]=0;D[i+29|0]=0;D[i+30|0]=0;D[i+31|0]=0;D[i+32|0]=0;D[i+33|0]=0;D[i+34|0]=0;D[i+35|0]=0;D[i+36|0]=0;l:{if(!Ce(j,i)){break l}b=0;e=0;c=0;v=0;j=0;m=ea-96|0;ea=m;F[m+72>>2]=0;F[m+64>>2]=0;F[m+68>>2]=0;F[m+48>>2]=0;F[m+52>>2]=0;F[m+40>>2]=0;F[m+44>>2]=0;F[m+56>>2]=1065353216;F[m+32>>2]=0;F[m+24>>2]=0;F[m+28>>2]=0;n=1;g=a;K=F[a+124>>2];m:{n:{o:{p:{q:{r:{s:{t:{if((k|0)<=0){break t}z=F[g+216>>2]!=F[g+220>>2];while(1){h=v;v=h+1|0;u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{if(!G[g+308|0]){break E}F:{G:{t=F[g+296>>2];p=F[g+304>>2];a=t+(p>>>3|0)|0;l=F[g+300>>2];if(a>>>0>=l>>>0){break G}d=G[a|0];a=p+1|0;F[g+304>>2]=a;if(!(d>>>(p&7)&1)){break G}r=a>>>3|0;d=t+r|0;H:{if(d>>>0>=l>>>0){d=a;a=0;break H}f=G[d|0];d=p+2|0;F[g+304>>2]=d;r=d>>>3|0;a=f>>>(a&7)&1}f=r+t|0;if(f>>>0>>0){f=G[f|0];F[g+304>>2]=d+1;d=f>>>(d&7)<<1&2}else{d=0}a=(a|d)<<1;switch(a-1|0){case 0:case 2:case 4:break o;case 5:break D;case 1:case 3:break F;default:break E}}if((c|0)==(e|0)){d=-1;break s}r=-1;s=F[g+8>>2];t=F[s+24>>2];l=c-4|0;y=F[l>>2];a=-1;I:{if((y|0)==-1){break I}b=y+1|0;b=(b>>>0)%3|0?b:y-2|0;a=-1;if((b|0)==-1){break I}a=F[F[s>>2]+(b<<2)>>2]}b=a;d=F[t+(b<<2)>>2];if((d|0)!=-1){a=d+1|0;r=(a>>>0)%3|0?a:d-2|0}d=F[s+12>>2];q=L(h,3);a=q+1|0;F[d+(y<<2)>>2]=a;f=a<<2;F[f+d>>2]=y;p=q+2|0;F[d+(r<<2)>>2]=p;h=p<<2;F[h+d>>2]=r;u=-1;a=-1;J:{if((y|0)==-1){break J}K:{if((y>>>0)%3|0){d=y-1|0;break K}d=y+2|0;a=-1;if((d|0)==-1){break J}}a=F[F[s>>2]+(d<<2)>>2]}L:{if((r|0)==-1){break L}d=r+1|0;d=(d>>>0)%3|0?d:r-2|0;if((d|0)==-1){break L}u=F[F[s>>2]+(d<<2)>>2]}d=-1;if((a|0)==(b|0)|(b|0)==(u|0)){break s}d=F[s>>2];F[d+(q<<2)>>2]=b;F[d+f>>2]=u;F[d+h>>2]=a;if((a|0)!=-1){F[t+(a<<2)>>2]=p}d=F[g+120>>2]+(b>>>3&536870908)|0;a=F[d>>2];O=d,P=Lj(b)&a,F[O>>2]=P;F[l>>2]=q;b=e;break u}if((c|0)==(e|0)){d=-1;break s}u=F[g+8>>2];b=F[u+12>>2];q=L(h,3);t=(a|1)==5;l=q+(t?2:1)|0;a=l<<2;f=c-4|0;y=F[f>>2];F[b+a>>2]=y;F[b+(y<<2)>>2]=l;Sa(u+24|0);d=-1;b=F[g+8>>2];p=F[b+24>>2];if((K|0)>2]-p>>2){break s}s=F[b>>2];d=s+a|0;b=F[u+28>>2]-F[u+24>>2]|0;a=(b>>2)-1|0;F[d>>2]=a;if(b){F[p+(a<<2)>>2]=l}l=t?q:q+2|0;d=s+(q+t<<2)|0;M:{if((y|0)==-1){F[s+(l<<2)>>2]=-1;b=-1;break M}N:{O:{P:{if((y>>>0)%3|0){b=y-1|0;break P}b=y+2|0;if((b|0)==-1){break O}}a=F[s+(b<<2)>>2];F[s+(l<<2)>>2]=a;if((a|0)==-1){break N}F[p+(a<<2)>>2]=l;break N}F[s+(l<<2)>>2]=-1}a=y+1|0;a=(a>>>0)%3|0?a:y-2|0;b=-1;if((a|0)==-1){break M}b=F[s+(a<<2)>>2]}F[d>>2]=b;F[f>>2]=q;b=e;break C}if((c|0)==(e|0)){d=-1;break s}a=c-4|0;s=F[a>>2];F[m+68>>2]=a;l=F[m+44>>2];Q:{if(!l){c=a;break Q}f=Kj(l)>>>0>1;R:{if(!f){b=h&l+2147483647;break R}b=h;if(l>>>0>b>>>0){break R}b=(h>>>0)%(l>>>0)|0}d=F[F[m+40>>2]+(b<<2)>>2];if(!d){c=a;break Q}d=F[d>>2];if(!d){c=a;break Q}S:{if(!f){l=l-1|0;while(1){f=F[d+4>>2];T:{if((f|0)!=(h|0)){if((f&l)==(b|0)){break T}c=a;break Q}if((h|0)==F[d+8>>2]){break S}}d=F[d>>2];if(d){continue}break}c=a;break Q}while(1){f=F[d+4>>2];U:{if((f|0)!=(h|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((b|0)==(f|0)){break U}c=a;break Q}if((h|0)==F[d+8>>2]){break S}}d=F[d>>2];if(d){continue}break}c=a;break Q}if((a|0)!=(C|0)){F[a>>2]=F[d+12>>2];F[m+68>>2]=c;break Q}f=C-e|0;c=f>>2;b=c+1|0;if(b>>>0>=1073741824){break A}a=f>>1;b=f>>>0<2147483644?a>>>0>>0?b:a:1073741823;if(b){if(b>>>0>=1073741824){break n}w=sa(b<<2)}else{w=0}a=w+(c<<2)|0;F[a>>2]=F[d+12>>2];C=(b<<2)+w|0;c=a+4|0;if((f|0)>0){ta(w,e,f)}F[m+72>>2]=C;F[m+68>>2]=c;F[m+64>>2]=w;if(!e){break Q}ra(e)}if((c|0)==(w|0)){break B}f=c-4|0;q=F[f>>2];b=(q|0)==-1;u=F[g+8>>2];if(!b&F[F[u+12>>2]+(q<<2)>>2]!=-1){break B}p=F[u+12>>2];if((s|0)!=-1&F[p+(s<<2)>>2]!=-1){break B}t=L(h,3);h=t+2|0;F[p+(q<<2)>>2]=h;l=h<<2;F[l+p>>2]=q;a=t+1|0;F[p+(s<<2)>>2]=a;e=a<<2;F[e+p>>2]=s;if(b){break z}if((q>>>0)%3|0){n=q-1|0;break x}n=q+2|0;if((n|0)!=-1){break x}r=F[u>>2];b=-1;break w}a=F[g+8>>2];Sa(a+24|0);d=-1;f=F[g+8>>2];s=L(h,3);p=F[a+28>>2]-F[a+24>>2]|0;u=p>>2;l=u-1|0;F[F[f>>2]+(s<<2)>>2]=l;Sa(f+24|0);t=s+1|0;F[F[f>>2]+(t<<2)>>2]=(F[f+28>>2]-F[f+24>>2]>>2)-1;a=F[g+8>>2];Sa(a+24|0);f=s+2|0;F[F[a>>2]+(f<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[g+8>>2];q=F[a+24>>2];if((K|0)>2]-q>>2){break s}V:{W:{if(!p){F[q+(u<<2)>>2]=t;d=1;break W}F[q+(l<<2)>>2]=s;d=0;if((p|0)==-4){break W}F[q+(u<<2)>>2]=t;d=u+1|0;if((d|0)==-1){break V}}F[q+(d<<2)>>2]=f}if((c|0)!=(C|0)){F[c>>2]=s;c=c+4|0;F[m+68>>2]=c;break C}d=c-b|0;c=d>>2;w=c+1|0;if(w>>>0>=1073741824){break y}a=d>>1;e=d>>>0<2147483644?a>>>0>>0?w:a:1073741823;if(e){if(e>>>0>=1073741824){break n}w=sa(e<<2)}else{w=0}a=w+(c<<2)|0;F[a>>2]=s;C=(e<<2)+w|0;c=a+4|0;if((d|0)>0){ta(w,b,d)}F[m+72>>2]=C;F[m+68>>2]=c;F[m+64>>2]=w;if(b){ra(b)}e=w;b=e}d=F[g+40>>2];if((d|0)==F[g+36>>2]){break u}l=(h^-1)+k|0;f=c-4|0;while(1){a=F[d-8>>2];if(a>>>0>l>>>0){break B}if((a|0)!=(l|0)){break u}h=G[d-4|0];a=d-12|0;d=F[a>>2];F[g+40>>2]=a;if((d|0)<0){break B}t=F[f>>2];F[m+20>>2]=(d^-1)+k;a=m+20|0;F[m+88>>2]=a;$c(m,m+40|0,a,m+88|0);d=F[m>>2];X:{if(h&1){a=-1;if((t|0)==-1){break X}a=t+1|0;a=(a>>>0)%3|0?a:t-2|0;break X}a=-1;if((t|0)==-1){break X}a=t-1|0;if((t>>>0)%3|0){break X}a=t+2|0}F[d+12>>2]=a;d=F[g+40>>2];if((d|0)!=F[g+36>>2]){continue}break}break u}d=-1;if(n&1){break s}break t}va();V()}b=-1;r=F[u>>2];F[r+(t<<2)>>2]=-1;d=-1;break v}va();V()}r=F[u>>2];b=F[r+(n<<2)>>2]}F[(t<<2)+r>>2]=b;a=q+1|0;a=(a>>>0)%3|0?a:q-2|0;d=-1;if((a|0)==-1){break v}d=F[(a<<2)+r>>2]}F[e+r>>2]=d;Y:{if((s|0)==-1){F[l+r>>2]=-1;n=-1;d=-1;break Y}Z:{_:{$:{if((s>>>0)%3|0){d=s-1|0;break $}d=s+2|0;if((d|0)==-1){break _}}a=F[(d<<2)+r>>2];F[l+r>>2]=a;if((a|0)==-1){break Z}F[F[u+24>>2]+(a<<2)>>2]=h;break Z}F[l+r>>2]=-1}n=-1;a=s+1|0;a=(a>>>0)%3|0?a:s-2|0;d=-1;if((a|0)==-1){break Y}n=F[(a<<2)+r>>2];d=a}a=F[u+24>>2];h=a+(n<<2)|0;if((b|0)!=-1){F[a+(b<<2)>>2]=F[h>>2]}aa:{if((d|0)==-1){break aa}while(1){F[(d<<2)+r>>2]=b;a=d+1|0;a=(a>>>0)%3|0?a:d-2|0;if((a|0)==-1){break aa}e=F[p+(a<<2)>>2];if((e|0)==-1){break aa}a=e+1|0;d=(a>>>0)%3|0?a:e-2|0;if((d|0)!=-1){continue}break}}F[h>>2]=-1;ba:{if(z){break ba}if((A|0)!=(B|0)){F[B>>2]=n;B=B+4|0;F[m+28>>2]=B;break ba}ca:{d=A-j|0;b=d>>2;e=b+1|0;if(e>>>0<1073741824){a=d>>1;e=d>>>0<2147483644?a>>>0>>0?e:a:1073741823;if(e){if(e>>>0>=1073741824){break ca}a=sa(e<<2)}else{a=0}b=a+(b<<2)|0;F[b>>2]=n;A=a+(e<<2)|0;B=b+4|0;if((d|0)>0){ta(a,j,d)}F[m+32>>2]=A;F[m+28>>2]=B;F[m+24>>2]=a;if(j){ra(j)}j=a;break ba}va();V()}break n}F[f>>2]=t;e=w;b=e}n=(k|0)>(v|0);if((k|0)!=(v|0)){continue}break}v=k}d=-1;n=F[g+8>>2];if((K|0)>2]-F[n+24>>2]>>2){break s}if((c|0)!=(w|0)){e=g+60|0;t=g+312|0;while(1){c=c-4|0;p=F[c>>2];F[m+68>>2]=c;da:{ea:{fa:{ga:{if(H[g+270>>1]<=513){if(!G[g+364|0]){break fa}b=F[g+360>>2];a=F[g+352>>2]+(b>>>3|0)|0;if(a>>>0>=I[g+356>>2]){break ea}a=G[a|0];F[g+360>>2]=b+1;a=a>>>(b&7)&1;break ga}a=Ga(t)}if(!a){break ea}}z=F[g+8>>2];q=F[z>>2];if(((F[z+4>>2]-q>>2>>>0)/3|0)<=(v|0)){break s}a=-1;b=-1;l=F[z+24>>2];h=-1;ha:{if((p|0)==-1){break ha}f=p+1|0;f=(f>>>0)%3|0?f:p-2|0;h=-1;if((f|0)==-1){break ha}h=F[q+(f<<2)>>2]}k=F[l+(h<<2)>>2];ia:{if((k|0)==-1){break ia}f=k+1|0;f=(f>>>0)%3|0?f:k-2|0;if((f|0)==-1){break ia}a=f+1|0;a=(a>>>0)%3|0?a:f-2|0;if((a|0)!=-1){b=F[q+(a<<2)>>2]}a=f}n=-1;r=-1;l=F[l+(b<<2)>>2];k=-1;ja:{if((l|0)==-1){break ja}f=l+1|0;f=(f>>>0)%3|0?f:l-2|0;k=-1;if((f|0)==-1){break ja}k=f+1|0;k=(k>>>0)%3|0?k:f-2|0;if((k|0)!=-1){r=F[q+(k<<2)>>2]}k=f}A=F[z+12>>2];u=L(v,3);l=u<<2;F[A+l>>2]=p;F[A+(p<<2)>>2]=u;p=u+1|0;f=p<<2;F[f+A>>2]=a;F[A+(a<<2)>>2]=p;z=u+2|0;a=z<<2;F[a+A>>2]=k;F[A+(k<<2)>>2]=z;F[l+q>>2]=b;k=f+q|0;F[k>>2]=r;f=a+q|0;F[f>>2]=h;l=F[g+120>>2];h=p>>>0>>0?-1:b;b=l+(h>>>3&536870908)|0;a=F[b>>2];O=b,P=Lj(h)&a,F[O>>2]=P;n=(p|0)!=-1?F[k>>2]:n;b=l+(n>>>3&536870908)|0;a=F[b>>2];O=b,P=Lj(n)&a,F[O>>2]=P;n=-1;n=(z|0)!=-1?F[f>>2]:n;b=l+(n>>>3&536870908)|0;a=F[b>>2];O=b,P=Lj(n)&a,F[O>>2]=P;n=F[g+64>>2];a=F[g+68>>2];if((n|0)==a<<5){if((n+1|0)<0){break r}if(n>>>0<=1073741822){b=n+32&-32;a=a<<6;a=a>>>0>>0?b:a}else{a=2147483647}db(e,a);n=F[g+64>>2]}v=v+1|0;F[g+64>>2]=n+1;a=F[g+60>>2]+(n>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>2];if((a|0)!=F[g+80>>2]){F[a>>2]=u;F[g+76>>2]=a+4;break da}f=F[g+72>>2];k=a-f|0;b=k>>2;h=b+1|0;if(h>>>0>=1073741824){break q}a=k>>1;h=k>>>0<2147483644?a>>>0>>0?h:a:1073741823;if(h){if(h>>>0>=1073741824){break n}a=sa(h<<2)}else{a=0}b=a+(b<<2)|0;F[b>>2]=u;if((k|0)>0){ta(a,f,k)}F[g+80>>2]=a+(h<<2);F[g+76>>2]=b+4;F[g+72>>2]=a;if(!f){break da}ra(f);break da}a=F[g+64>>2];h=F[g+68>>2];if((a|0)==h<<5){if((a+1|0)<0){break r}if(a>>>0<=1073741822){b=a+32&-32;a=h<<6;a=a>>>0>>0?b:a}else{a=2147483647}db(e,a);a=F[g+64>>2]}F[g+64>>2]=a+1;h=F[g+60>>2]+(a>>>3&536870908)|0;b=F[h>>2];O=h,P=Lj(a)&b,F[O>>2]=P;a=F[g+76>>2];if((a|0)!=F[g+80>>2]){F[a>>2]=p;F[g+76>>2]=a+4;break da}f=F[g+72>>2];k=a-f|0;b=k>>2;h=b+1|0;if(h>>>0>=1073741824){break q}a=k>>1;h=k>>>0<2147483644?a>>>0>>0?h:a:1073741823;if(h){if(h>>>0>=1073741824){break p}a=sa(h<<2)}else{a=0}b=a+(b<<2)|0;F[b>>2]=p;if((k|0)>0){ta(a,f,k)}F[g+80>>2]=a+(h<<2);F[g+76>>2]=b+4;F[g+72>>2]=a;if(!f){break da}ra(f)}if((c|0)!=(w|0)){continue}break}n=F[g+8>>2]}if(((F[n+4>>2]-F[n>>2]>>2>>>0)/3|0)!=(v|0)){break s}v=F[n+24>>2];d=F[n+28>>2]-v>>2;if((j|0)==(B|0)){j=B;break s}b=j;while(1){e=F[b>>2];c=d-1|0;r=(c<<2)+v|0;if(F[r>>2]==-1){while(1){c=d-2|0;d=d-1|0;r=(c<<2)+v|0;if(F[r>>2]==-1){continue}break}}if(c>>>0>=e>>>0){F[m>>2]=n;v=F[r>>2];D[m+12|0]=1;F[m+8>>2]=v;F[m+4>>2]=v;if((v|0)!=-1){while(1){F[F[n>>2]+(v<<2)>>2]=e;vc(m);n=F[g+8>>2];v=F[m+8>>2];if((v|0)!=-1){continue}break}}v=F[n+24>>2];a=v+(c<<2)|0;if((e|0)!=-1){F[(e<<2)+v>>2]=F[a>>2]}F[a>>2]=-1;f=1<>2];e=a+(e>>>3&536870908)|0;h=a+(c>>>3&536870908)|0;a=1<>2]&a){c=f|F[e>>2]}else{c=F[e>>2]&(f^-1)}F[e>>2]=c;F[h>>2]=F[h>>2]&(a^-1);d=d-1|0}b=b+4|0;if((B|0)!=(b|0)){continue}break}}if(j){ra(j)}a=F[m+48>>2];if(a){while(1){c=F[a>>2];ra(a);a=c;if(a){continue}break}}a=F[m+40>>2];F[m+40>>2]=0;if(a){ra(a)}if(w){F[m+68>>2]=w;ra(w)}ea=m+96|0;break m}Oa();V()}va();V()}wa(1336)}V()}wa(1336);V()}if((d|0)==-1){break l}a=F[i+16>>2];b=a+F[i>>2]|0;c=F[i+8>>2];a=c-a|0;c=F[F[g+4>>2]+32>>2];E[c+38>>1]=H[c+38>>1];F[c>>2]=b;F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=a;F[c+12>>2]=0;b=F[g+4>>2];a=H[b+36>>1];c=a<<8|a>>>8;if((c&65535)>>>0<=513){a=F[b+32>>2];b=M+F[a+20>>2]|0;w=o+F[a+16>>2]|0;b=w>>>0>>0?b+1|0:b;F[a+16>>2]=w;F[a+20>>2]=b}ka:{if(F[g+216>>2]==F[g+220>>2]){break ka}a=F[g+8>>2];b=F[a>>2];a=F[a+4>>2];la:{if((c&65535)>>>0>=513){if((a|0)==(b|0)){break ka}c=0;break la}if((a|0)==(b|0)){break ka}c=0;while(1){if(dd(g,c)){c=c+3|0;a=F[g+8>>2];if(c>>>0>2]-F[a>>2]>>2>>>0){continue}break ka}break}break l}while(1){if(cd(g,c)){c=c+3|0;a=F[g+8>>2];if(c>>>0>2]-F[a>>2]>>2>>>0){continue}break ka}break}break l}bd(N);c=F[g+216>>2];if((c|0)!=F[g+220>>2]){e=0;while(1){b=L(e,144);Ic((b+c|0)+4|0,F[g+8>>2]);x=F[J>>2];a=b+x|0;c=F[a+132>>2];a=F[a+136>>2];if((c|0)!=(a|0)){while(1){Gc((b+x|0)+4|0,F[c>>2]);x=F[J>>2];c=c+4|0;if((a|0)!=(c|0)){continue}break}}Hc((b+x|0)+4|0);e=e+1|0;c=F[g+216>>2];if(e>>>0<(F[g+220>>2]-c|0)/144>>>0){continue}break}}a=F[g+8>>2];Gb(g+184|0,F[a+28>>2]-F[a+24>>2]>>2);x=F[g+216>>2];if((x|0)!=F[g+220>>2]){c=0;while(1){a=L(c,144)+x|0;b=F[a+60>>2]-F[a+56>>2]>>2;e=a+104|0;a=F[g+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Gb(e,(a|0)>(b|0)?a:b);c=c+1|0;x=F[g+216>>2];if(c>>>0<(F[g+220>>2]-x|0)/144>>>0){continue}break}}x=ad(g,d)}break b}x=0}ea=i- -64|0;return x|0}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;a:{b:{c:{d:{e:{switch(d-1|0){case 0:a=0;m=ea-16|0;ea=m;j=F[b+80>>2];g=D[c+24|0];f:{if((L(j,g)|0)!=(e|0)){break f}b=F[c+28>>2]!=1;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break f}d=0;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(g){if((g|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,g)}g:{h:{if(!j){break h}if(!b){if(g){n=g&-4;l=g&3;b=0;o=g-1>>>0<3;while(1){e=F[F[c>>2]>>2];p=F[c+40>>2];a=F[c+48>>2]+Hj(p,F[c+44>>2],a&255?d:F[F[c+68>>2]+(d<<2)>>2],0)|0;g=ta(h,e+a|0,p);e=0;a=0;i=0;if(!o){while(1){k=b+f|0;D[k|0]=G[a+g|0];D[k+1|0]=G[g+(a|1)|0];D[k+2|0]=G[g+(a|2)|0];D[k+3|0]=G[g+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){D[b+f|0]=G[a+g|0];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break g}a=G[c+84|0];continue}}l=F[c>>2];e=F[c+48>>2];o=F[c+68>>2];f=F[c+44>>2];c=F[c+40>>2];p=c;b=0;if((j|0)!=1){q=j&-2;s=a&255;while(1){g=b|1;n=F[l>>2];k=Hj(c,f,s?b:F[o+(b<<2)>>2],0)+e|0;k=ta(h,n+k|0,p);r=F[l>>2];if(!s){g=F[o+(g<<2)>>2]}g=Hj(c,f,g,0)+e|0;ta(k,g+r|0,p);b=b+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!(j&1)){break h}i=F[l>>2];if(!(a&255)){b=F[o+(b<<2)>>2]}a=Hj(c,f,b,0)+e|0;ta(h,a+i|0,p);break h}if(!g){b=0;d=1;while(1){if(!jc(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break h}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break h}a=G[c+84|0];continue}}l=g&-4;k=g&3;b=0;n=g-1>>>0<3;d=1;while(1){if(!jc(c,a&255?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],h)){break h}d=0;a=0;e=0;if(!n){while(1){g=b+f|0;D[g|0]=G[a+h|0];D[g+1|0]=G[(a|1)+h|0];D[g+2|0]=G[(a|2)+h|0];D[g+3|0]=G[(a|3)+h|0];a=a+4|0;b=b+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}if(k){while(1){D[b+f|0]=G[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){d=i>>>0>>0;a=G[c+84|0];continue}break}a=i>>>0>=j>>>0;break g}a=d^1;if(!h){break f}}ra(h)}break c;case 2:a=0;m=ea-16|0;ea=m;d=D[c+24|0];g=d<<1;j=F[b+80>>2];i:{if((L(g,j)|0)!=(e|0)){break i}b=F[c+28>>2]!=3;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break i}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,d<<1)}j:{k:{if(!j){break k}if(!b){n=F[c>>2];e=F[c+48>>2];p=F[c+68>>2];g=F[c+44>>2];k=F[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=F[n>>2];a=Hj(k,g,u?d:F[p+(d<<2)>>2],0)+e|0;l=ta(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<1)+f|0;r=a<<1;E[q>>1]=H[r+l>>1];E[q+2>>1]=H[l+(r|2)>>1];E[q+4>>1]=H[l+(r|4)>>1];E[q+6>>1]=H[l+(r|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){E[(b<<1)+f>>1]=H[l+(a<<1)>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break j}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=F[n>>2];f=Hj(k,g,l?b:F[p+(b<<2)>>2],0)+e|0;f=ta(h,o+f|0,s);r=F[n>>2];if(!l){c=F[p+(c<<2)>>2]}c=Hj(k,g,c,0)+e|0;ta(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break k}c=F[n>>2];if(!(a&255)){b=F[p+(b<<2)>>2]}a=Hj(k,g,b,0)+e|0;ta(h,a+c|0,s);break k}if(!d){b=0;i=1;while(1){if(!hc(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break k}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break k}a=G[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!hc(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break k}e=0;a=0;i=0;if(!o){while(1){g=(b<<1)+f|0;k=a<<1;E[g>>1]=H[k+h>>1];E[g+2>>1]=H[(k|2)+h>>1];E[g+4>>1]=H[(k|4)+h>>1];E[g+6>>1]=H[(k|6)+h>>1];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){E[(b<<1)+f>>1]=H[(a<<1)+h>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break j}a=!i;if(!h){break i}}ra(h)}break b;case 4:a=0;m=ea-16|0;ea=m;d=D[c+24|0];g=d<<2;j=F[b+80>>2];l:{if((L(g,j)|0)!=(e|0)){break l}b=F[c+28>>2]!=5;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break l}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,d<<2)}m:{n:{if(!j){break n}if(!b){n=F[c>>2];e=F[c+48>>2];p=F[c+68>>2];g=F[c+44>>2];k=F[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=F[n>>2];a=Hj(k,g,u?d:F[p+(d<<2)>>2],0)+e|0;l=ta(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<2)+f|0;r=a<<2;F[q>>2]=F[r+l>>2];F[q+4>>2]=F[l+(r|4)>>2];F[q+8>>2]=F[l+(r|8)>>2];F[q+12>>2]=F[l+(r|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){F[(b<<2)+f>>2]=F[l+(a<<2)>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break m}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=F[n>>2];f=Hj(k,g,l?b:F[p+(b<<2)>>2],0)+e|0;f=ta(h,o+f|0,s);r=F[n>>2];if(!l){c=F[p+(c<<2)>>2]}c=Hj(k,g,c,0)+e|0;ta(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break n}c=F[n>>2];if(!(a&255)){b=F[p+(b<<2)>>2]}a=Hj(k,g,b,0)+e|0;ta(h,a+c|0,s);break n}if(!d){b=0;i=1;while(1){if(!fc(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break n}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break n}a=G[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!fc(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break n}e=0;a=0;i=0;if(!o){while(1){g=(b<<2)+f|0;k=a<<2;F[g>>2]=F[k+h>>2];F[g+4>>2]=F[(k|4)+h>>2];F[g+8>>2]=F[(k|8)+h>>2];F[g+12>>2]=F[(k|12)+h>>2];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){F[(b<<2)+f>>2]=F[(a<<2)+h>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break m}a=!i;if(!h){break l}}ra(h)}break b;case 1:a=0;m=ea-16|0;ea=m;j=F[b+80>>2];g=D[c+24|0];o:{if((L(j,g)|0)!=(e|0)){break o}b=F[c+28>>2]!=2;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break o}d=0;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(g){if((g|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,g)}p:{q:{if(!j){break q}if(!b){if(g){n=g&-4;l=g&3;b=0;o=g-1>>>0<3;while(1){e=F[F[c>>2]>>2];p=F[c+40>>2];a=F[c+48>>2]+Hj(p,F[c+44>>2],a&255?d:F[F[c+68>>2]+(d<<2)>>2],0)|0;g=ta(h,e+a|0,p);e=0;a=0;i=0;if(!o){while(1){k=b+f|0;D[k|0]=G[a+g|0];D[k+1|0]=G[g+(a|1)|0];D[k+2|0]=G[g+(a|2)|0];D[k+3|0]=G[g+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){D[b+f|0]=G[a+g|0];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break p}a=G[c+84|0];continue}}l=F[c>>2];e=F[c+48>>2];o=F[c+68>>2];f=F[c+44>>2];c=F[c+40>>2];p=c;b=0;if((j|0)!=1){q=j&-2;s=a&255;while(1){g=b|1;n=F[l>>2];k=Hj(c,f,s?b:F[o+(b<<2)>>2],0)+e|0;k=ta(h,n+k|0,p);r=F[l>>2];if(!s){g=F[o+(g<<2)>>2]}g=Hj(c,f,g,0)+e|0;ta(k,g+r|0,p);b=b+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!(j&1)){break q}i=F[l>>2];if(!(a&255)){b=F[o+(b<<2)>>2]}a=Hj(c,f,b,0)+e|0;ta(h,a+i|0,p);break q}if(!g){b=0;d=1;while(1){if(!ic(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break q}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break q}a=G[c+84|0];continue}}l=g&-4;k=g&3;b=0;n=g-1>>>0<3;d=1;while(1){if(!ic(c,a&255?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],h)){break q}d=0;a=0;e=0;if(!n){while(1){g=b+f|0;D[g|0]=G[a+h|0];D[g+1|0]=G[(a|1)+h|0];D[g+2|0]=G[(a|2)+h|0];D[g+3|0]=G[(a|3)+h|0];a=a+4|0;b=b+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}if(k){while(1){D[b+f|0]=G[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){d=i>>>0>>0;a=G[c+84|0];continue}break}a=i>>>0>=j>>>0;break p}a=d^1;if(!h){break o}}ra(h)}break c;case 3:a=0;m=ea-16|0;ea=m;d=D[c+24|0];g=d<<1;j=F[b+80>>2];r:{if((L(g,j)|0)!=(e|0)){break r}b=F[c+28>>2]!=4;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break r}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,d<<1)}s:{t:{if(!j){break t}if(!b){n=F[c>>2];e=F[c+48>>2];p=F[c+68>>2];g=F[c+44>>2];k=F[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=F[n>>2];a=Hj(k,g,u?d:F[p+(d<<2)>>2],0)+e|0;l=ta(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<1)+f|0;r=a<<1;E[q>>1]=H[r+l>>1];E[q+2>>1]=H[l+(r|2)>>1];E[q+4>>1]=H[l+(r|4)>>1];E[q+6>>1]=H[l+(r|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){E[(b<<1)+f>>1]=H[l+(a<<1)>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break s}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=F[n>>2];f=Hj(k,g,l?b:F[p+(b<<2)>>2],0)+e|0;f=ta(h,o+f|0,s);r=F[n>>2];if(!l){c=F[p+(c<<2)>>2]}c=Hj(k,g,c,0)+e|0;ta(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break t}c=F[n>>2];if(!(a&255)){b=F[p+(b<<2)>>2]}a=Hj(k,g,b,0)+e|0;ta(h,a+c|0,s);break t}if(!d){b=0;i=1;while(1){if(!gc(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break t}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break t}a=G[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!gc(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break t}e=0;a=0;i=0;if(!o){while(1){g=(b<<1)+f|0;k=a<<1;E[g>>1]=H[k+h>>1];E[g+2>>1]=H[(k|2)+h>>1];E[g+4>>1]=H[(k|4)+h>>1];E[g+6>>1]=H[(k|6)+h>>1];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){E[(b<<1)+f>>1]=H[(a<<1)+h>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break s}a=!i;if(!h){break r}}ra(h)}break b;case 5:a=0;m=ea-16|0;ea=m;d=D[c+24|0];g=d<<2;j=F[b+80>>2];u:{if((L(g,j)|0)!=(e|0)){break u}b=F[c+28>>2]!=6;a=G[c+84|0];if(!(b|!a)){ta(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break u}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=sa(g);F[m>>2]=h;ua(h,0,d<<2)}v:{w:{if(!j){break w}if(!b){n=F[c>>2];e=F[c+48>>2];p=F[c+68>>2];g=F[c+44>>2];k=F[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=F[n>>2];a=Hj(k,g,u?d:F[p+(d<<2)>>2],0)+e|0;l=ta(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<2)+f|0;r=a<<2;F[q>>2]=F[r+l>>2];F[q+4>>2]=F[l+(r|4)>>2];F[q+8>>2]=F[l+(r|8)>>2];F[q+12>>2]=F[l+(r|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){F[(b<<2)+f>>2]=F[l+(a<<2)>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break v}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=F[n>>2];f=Hj(k,g,l?b:F[p+(b<<2)>>2],0)+e|0;f=ta(h,o+f|0,s);r=F[n>>2];if(!l){c=F[p+(c<<2)>>2]}c=Hj(k,g,c,0)+e|0;ta(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break w}c=F[n>>2];if(!(a&255)){b=F[p+(b<<2)>>2]}a=Hj(k,g,b,0)+e|0;ta(h,a+c|0,s);break w}if(!d){b=0;i=1;while(1){if(!ec(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break w}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break w}a=G[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!ec(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break w}e=0;a=0;i=0;if(!o){while(1){g=(b<<2)+f|0;k=a<<2;F[g>>2]=F[k+h>>2];F[g+4>>2]=F[(k|4)+h>>2];F[g+8>>2]=F[(k|8)+h>>2];F[g+12>>2]=F[(k|12)+h>>2];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){F[(b<<2)+f>>2]=F[(a<<2)+h>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break v}a=!i;if(!h){break u}}ra(h)}break b;case 8:break e;default:break a}}a=0;j=ea-16|0;ea=j;i=D[c+24|0];d=i<<2;k=F[b+80>>2];x:{if((L(d,k)|0)!=(e|0)){break x}e=F[c+28>>2];F[j+8>>2]=0;F[j>>2]=0;F[j+4>>2]=0;b=0;y:{z:{A:{B:{if(!i){break B}if((i|0)<0){break A}b=sa(d);F[j>>2]=b;g=(i<<2)+b|0;F[j+8>>2]=g;d=d-4|0;m=(d>>>2|0)+1&7;C:{if(!m){a=b;break C}a=b;while(1){F[a>>2]=-1073741824;a=a+4|0;h=h+1|0;if((m|0)!=(h|0)){continue}break}}if(d>>>0<28){break B}while(1){F[a+24>>2]=-1073741824;F[a+28>>2]=-1073741824;F[a+16>>2]=-1073741824;F[a+20>>2]=-1073741824;F[a+8>>2]=-1073741824;F[a+12>>2]=-1073741824;F[a>>2]=-1073741824;F[a+4>>2]=-1073741824;a=a+32|0;if((g|0)!=(a|0)){continue}break}}if(!k){break z}if((e|0)==9){a=0;n=F[c>>2];d=F[c+48>>2];p=F[c+68>>2];s=G[c+84|0];e=F[c+44>>2];g=F[c+40>>2];q=g;if((i|0)<=0){if((k|0)!=1){i=k&-2;c=0;while(1){f=a|1;m=F[n>>2];h=Hj(g,e,s?a:F[p+(a<<2)>>2],0)+d|0;h=ta(b,m+h|0,q);m=F[n>>2];if(!s){f=F[p+(f<<2)>>2]}f=Hj(g,e,f,0)+d|0;ta(h,f+m|0,q);a=a+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(!(k&1)){break z}c=F[n>>2];if(!s){a=F[p+(a<<2)>>2]}a=Hj(g,e,a,0)+d|0;ta(b,a+c|0,q);break z}u=i&-4;o=i&3;h=0;v=i-1>>>0<3;i=0;while(1){c=F[n>>2];a=Hj(g,e,s?i:F[p+(i<<2)>>2],0)+d|0;c=ta(b,c+a|0,q);m=0;a=0;t=0;if(!v){while(1){l=(h<<2)+f|0;r=a<<2;J[l>>2]=J[r+c>>2];J[l+4>>2]=J[c+(r|4)>>2];J[l+8>>2]=J[c+(r|8)>>2];J[l+12>>2]=J[c+(r|12)>>2];a=a+4|0;h=h+4|0;t=t+4|0;if((u|0)!=(t|0)){continue}break}}if(o){while(1){J[(h<<2)+f>>2]=J[c+(a<<2)>>2];a=a+1|0;h=h+1|0;m=m+1|0;if((o|0)!=(m|0)){continue}break}}a=1;i=i+1|0;if((k|0)!=(i|0)){continue}break}break y}l=1;if((i|0)<=0){a=0;while(1){if(!Ya(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],b)){break z}a=a+1|0;l=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}break}break z}n=i&-4;g=i&3;h=0;o=i-1>>>0<3;i=0;while(1){if(!Ya(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],b)){break z}l=0;a=0;m=0;if(!o){while(1){d=(h<<2)+f|0;e=a<<2;J[d>>2]=J[e+b>>2];J[d+4>>2]=J[(e|4)+b>>2];J[d+8>>2]=J[(e|8)+b>>2];J[d+12>>2]=J[(e|12)+b>>2];a=a+4|0;h=h+4|0;m=m+4|0;if((n|0)!=(m|0)){continue}break}}if(g){while(1){J[(h<<2)+f>>2]=J[(a<<2)+b>>2];a=a+1|0;h=h+1|0;l=l+1|0;if((g|0)!=(l|0)){continue}break}}i=i+1|0;l=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}break}a=i>>>0>=k>>>0;break y}va();V()}a=l^1;if(!b){break x}}ra(b)}ea=j+16|0;h=a&1;break a}va();V()}ea=m+16|0;h=a&1;break a}ea=m+16|0;h=a&1}return h|0}function wg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,M=0,N=0;z=c;c=0;m=ea-96|0;ea=m;k=m+16|0;ua(k,0,76);F[m+92>>2]=-1;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;s=ea-16|0;ea=s;F[k+68>>2]=0;F[k+72>>2]=0;F[k>>2]=b;t=ea-16|0;ea=t;x=b;a=F[b+20>>2];a:{if((F[b+24>>2]-a|0)<=0){break a}a=F[a>>2];if((a|0)==-1){break a}c=F[F[x+8>>2]+(a<<2)>>2]}b:{c:{d:{e:{if(!c){a=0;break e}a=F[x+100>>2];e=F[x+96>>2];F[t+8>>2]=0;F[t>>2]=0;F[t+4>>2]=0;d=a-e|0;b=(d|0)/12|0;f:{if(!d){break f}if(b>>>0>=357913942){break c}f=sa(d);F[t>>2]=f;F[t+8>>2]=f+L(b,12);a=0;g=f;f=L((d-12>>>0)/12|0,12)+12|0;d=ua(g,0,f);F[t+4>>2]=d+f;if(G[c+84|0]){c=b>>>0>1?b:1;g=c&1;if(b>>>0>=2){j=c&-2;c=0;while(1){f=L(a,12);b=f+e|0;n=F[b+4>>2];o=F[b>>2];f=d+f|0;F[f+8>>2]=F[b+8>>2];F[f>>2]=o;F[f+4>>2]=n;f=L(a|1,12);b=f+e|0;n=F[b+8>>2];o=F[b+4>>2];f=d+f|0;F[f>>2]=F[b>>2];F[f+4>>2]=o;F[f+8>>2]=n;a=a+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!g){break f}b=L(a,12);a=b+e|0;c=F[a+4>>2];e=F[a>>2];b=b+d|0;F[b+8>>2]=F[a+8>>2];F[b>>2]=e;F[b+4>>2]=c;break f}g=b>>>0>1?b:1;a=F[c+68>>2];c=0;while(1){f=L(c,12);b=f+e|0;j=F[a+(F[b>>2]<<2)>>2];n=F[a+(F[b+4>>2]<<2)>>2];f=d+f|0;F[f+8>>2]=F[a+(F[b+8>>2]<<2)>>2];F[f+4>>2]=n;F[f>>2]=j;c=c+1|0;if((g|0)!=(c|0)){continue}break}}C=ea-16|0;ea=C;g=sa(88);F[g>>2]=0;F[g+4>>2]=0;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a=g- -64|0;F[a>>2]=0;F[a+4>>2]=0;F[g+72>>2]=0;F[g+76>>2]=0;F[g+80>>2]=0;F[g+84>>2]=0;F[g+60>>2]=g;A=ea-16|0;ea=A;F[g+80>>2]=0;F[g+84>>2]=0;a=F[g+76>>2];F[g+76>>2]=0;if(a){ra(a)}F[g+68>>2]=0;F[g+72>>2]=0;b=g- -64|0;a=F[b>>2];F[b>>2]=0;if(a){ra(a)}b=F[t>>2];c=F[t+4>>2]-b|0;j=(c|0)/12|0;a=L(j,3);d=F[g>>2];e=F[g+4>>2]-d>>2;g:{if(a>>>0>e>>>0){Aa(g,a-e|0);b=F[t>>2];c=F[t+4>>2]-b|0;j=(c|0)/12|0;d=F[g>>2];break g}if(a>>>0>=e>>>0){break g}F[g+4>>2]=(a<<2)+d}if(c){f=j>>>0>1?j:1;a=0;while(1){e=L(a,12);c=e+d|0;e=b+e|0;F[c>>2]=F[e>>2];F[c+4>>2]=F[e+4>>2];F[c+8>>2]=F[e+8>>2];a=a+1|0;if((f|0)!=(a|0)){continue}break}}F[A+12>>2]=-1;f=ea-48|0;ea=f;h:{i:{w=A+12|0;j:{if(!w){break j}d=F[g+4>>2];n=F[g>>2];c=d-n|0;o=c>>2;b=F[g+12>>2];a=F[g+16>>2]-b>>2;k:{if(o>>>0>a>>>0){Ia(g+12|0,o-a|0,13684);d=F[g+4>>2];n=F[g>>2];c=d-n|0;o=c>>2;break k}if(a>>>0<=o>>>0){break k}F[g+16>>2]=b+(o<<2)}b=0;F[f+40>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;l:{if(!c){F[f+24>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;break l}m:{if((c|0)>=0){b=sa(c);F[f+36>>2]=b;F[f+32>>2]=b;F[f+40>>2]=(o<<2)+b;a=b;c=0;while(1){j=F[(c<<2)+n>>2];a=a-b>>2;n:{if(j>>>0>>0){break n}F[f+16>>2]=0;e=j+1|0;if(e>>>0>a>>>0){Ia(f+32|0,e-a|0,f+16|0);n=F[g>>2];d=F[g+4>>2];b=F[f+32>>2];break n}if(a>>>0<=e>>>0){break n}F[f+36>>2]=(e<<2)+b}a=(j<<2)+b|0;F[a>>2]=F[a>>2]+1;c=c+1|0;a=d-n|0;o=a>>2;if(c>>>0>=o>>>0){break m}a=F[f+36>>2];continue}}break i}F[f+24>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;if(!a){break l}if(a>>>0>=2147483645){break c}c=a<<1;a=sa(c);F[f+16>>2]=a;e=a+(o<<3)|0;F[f+24>>2]=e;ua(a,255,c);F[f+20>>2]=e}d=0;F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;a=F[f+36>>2]-b|0;j=a>>2;o:{if(!a){break o}if((a|0)<0){break c}l=sa(a);F[f>>2]=l;a=j<<2;c=a+l|0;F[f+8>>2]=c;a=ua(l,0,a);F[f+4>>2]=c;e=j>>>0>1?j:1;q=e&3;c=0;if(e-1>>>0>=3){r=e&-4;while(1){e=i<<2;F[e+a>>2]=c;y=e|4;c=F[b+e>>2]+c|0;F[y+a>>2]=c;v=e|8;c=c+F[b+y>>2]|0;F[v+a>>2]=c;e=e|12;c=c+F[b+v>>2]|0;F[e+a>>2]=c;c=c+F[b+e>>2]|0;i=i+4|0;h=h+4|0;if((r|0)!=(h|0)){continue}break}}if(!q){break o}while(1){e=i<<2;F[e+a>>2]=c;i=i+1|0;c=F[b+e>>2]+c|0;p=p+1|0;if((q|0)!=(p|0)){continue}break}}if(o){y=F[g+12>>2];while(1){E=d<<2;c=E+n|0;h=-1;e=d+1|0;a=(e>>>0)%3|0?e:d-2|0;if((a|0)!=-1){h=F[(a<<2)+n>>2]}a=F[c>>2];p:{q:{if(!((d>>>0)%3|0)){p=-1;c=d+2|0;if((c|0)!=-1){p=F[(c<<2)+n>>2]}if(!((a|0)==(h|0)|(a|0)==(p|0))&(h|0)!=(p|0)){break q}F[g+40>>2]=F[g+40>>2]+1;e=d+3|0;break p}p=F[c-4>>2]}c=p<<2;v=F[c+b>>2];r:{s:{if((v|0)<=0){break s}q=F[f+16>>2];c=F[c+l>>2];i=0;while(1){r=q+(c<<3)|0;u=F[r>>2];if((u|0)==-1){break s}t:{if((h|0)!=(u|0)){break t}r=F[r+4>>2];if((r|0)!=-1){u=F[(r<<2)+n>>2]}else{u=-1}if((u|0)==(a|0)){break t}while(1){u:{a=c;i=i+1|0;if((v|0)<=(i|0)){break u}u=q+(a<<3)|0;c=a+1|0;H=q+(c<<3)|0;I=F[H>>2];F[u>>2]=I;F[u+4>>2]=F[H+4>>2];if((I|0)!=-1){continue}}break}F[q+(a<<3)>>2]=-1;if((r|0)==-1){break s}F[y+E>>2]=r;F[y+(r<<2)>>2]=d;break r}c=c+1|0;i=i+1|0;if((v|0)!=(i|0)){continue}break}}a=h<<2;h=F[a+b>>2];if((h|0)<=0){break r}q=F[f+16>>2];c=F[a+l>>2];i=0;while(1){a=q+(c<<3)|0;if(F[a>>2]==-1){F[a>>2]=p;F[a+4>>2]=d;break r}c=c+1|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}}d=e;if(o>>>0>d>>>0){continue}break}}F[w>>2]=j;if(l){ra(l)}a=F[f+16>>2];if(a){F[f+20>>2]=a;ra(a)}a=F[f+32>>2];if(!a){break j}F[f+36>>2]=a;ra(a)}ea=f+48|0;y=(w|0)!=0;if(y){h=ea-32|0;ea=h;o=F[g>>2];a=F[g+4>>2];F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;v:{w:{b=a-o|0;x:{if(!b){break x}if((b|0)<0){break w}c=b>>2;d=c-1>>>5|0;f=d+1|0;e=sa(f<<2);F[h+24>>2]=f;F[h+16>>2]=e;F[h+20>>2]=c;F[e+((b>>>0<132?0:d)<<2)>>2]=0;b=c>>>5<<2;e=ua(e,0,b);c=c&31;if(!c){break x}b=b+e|0;F[b>>2]=F[b>>2]&(-1>>>32-c^-1)}F[h+8>>2]=0;F[h>>2]=0;while(1){y:{q=0;b=0;if((a|0)==(o|0)){break y}while(1){d=F[h+16>>2];z:{if(F[d+(b>>>3&536870908)>>2]>>>b&1){break z}e=F[h>>2];F[h+4>>2]=e;c=F[g+12>>2];a=b;while(1){A:{f=a+1|0;i=a;a=(f>>>0)%3|0?f:a-2|0;if((a|0)==-1){break A}a=F[c+(a<<2)>>2];if((a|0)==-1){break A}f=a+1|0;a=(f>>>0)%3|0?f:a-2|0;if((b|0)==(a|0)|(a|0)==-1){break A}if(!(F[(a>>>3&536870908)+d>>2]>>>a&1)){continue}}break}c=e;j=i;B:{C:{while(1){a=(j>>>3&536870908)+d|0;F[a>>2]=F[a>>2]|1<>>0)%3|0?a:j-2|0;v=(j>>>0)%3|0;n=(v?-1:2)+j|0;r=n<<2;D:{if((c|0)==(e|0)){break D}w=F[(f<<2)+o>>2];l=F[g+12>>2];a=c;if((n|0)!=-1){u=l+r|0;while(1){E:{if((w|0)!=F[a>>2]){break E}d=F[a+4>>2];p=F[u>>2];if((d|0)==(p|0)){break E}e=-1;a=-1;if((d|0)==-1){break B}break C}a=a+8|0;if((e|0)!=(a|0)){continue}break}break D}while(1){if((w|0)==F[a>>2]){p=-1;n=-1;d=F[a+4>>2];if((d|0)!=-1){break C}}a=a+8|0;if((e|0)!=(a|0)){continue}break}}n=F[o+r>>2];F:{if(F[h+8>>2]!=(e|0)){F[e>>2]=n;F[e+4>>2]=f;e=e+8|0;F[h+4>>2]=e;break F}d=e-c|0;e=d>>3;a=e+1|0;if(a>>>0>=536870912){break c}l=d>>2;l=d>>>0<2147483640?a>>>0>l>>>0?a:l:536870911;if(l){if(l>>>0>=536870912){break i}a=sa(l<<3)}else{a=0}e=a+(e<<3)|0;F[e>>2]=n;F[e+4>>2]=f;e=e+8|0;if((d|0)>0){ta(a,c,d)}F[h+8>>2]=a+(l<<3);F[h+4>>2]=e;F[h>>2]=a;if(!c){break F}ra(c)}G:{H:{if(v){a=j-1|0;break H}a=j+2|0;if((a|0)==-1){break G}}a=F[F[g+12>>2]+(a<<2)>>2];if((a|0)==-1){break G}j=a+((a>>>0)%3|0?-1:2)|0;if((i|0)==(j|0)|(j|0)==-1){break G}o=F[g>>2];c=F[h>>2];d=F[h+16>>2];continue}break}o=F[g>>2];break z}e=d;a=F[l+(e<<2)>>2]}if((p|0)!=-1){F[l+(p<<2)>>2]=-1}if((a|0)!=-1){F[F[g+12>>2]+(a<<2)>>2]=-1}a=F[g+12>>2];F[a+(n<<2)>>2]=-1;F[a+(e<<2)>>2]=-1;q=1}b=b+1|0;a=F[g+4>>2];if(b>>>0>2>>>0){continue}break}if(q){continue}}break}a=F[h>>2];if(a){ra(a)}a=F[h+16>>2];if(a){ra(a)}ea=h+32|0;break v}Oa();V()}n=0;i=ea-32|0;ea=i;a=F[A+12>>2];F[g+36>>2]=a;o=g+24|0;I:{J:{K:{L:{M:{c=F[g+24>>2];b=F[g+28>>2]-c>>2;N:{O:{if(b>>>0>>0){Ia(o,a-b|0,13684);F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;break O}if(a>>>0>>0){F[g+28>>2]=c+(a<<2)}b=0;F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;if(!a){break N}}if((a|0)<0){break M}c=a-1>>>5|0;e=c+1|0;b=sa(e<<2);F[i+24>>2]=e;F[i+16>>2]=b;F[i+20>>2]=a;F[((a>>>0<33?0:c)<<2)+b>>2]=0;c=a>>>5<<2;e=ua(b,0,c);d=a&31;if(!d){break N}c=c+e|0;F[c>>2]=F[c>>2]&(-1>>>32-d^-1)}l=F[g>>2];j=F[g+4>>2];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;c=j-l|0;if(!c){break I}if((c|0)<0){break L}e=c>>2;d=e-1>>>5|0;f=d+1|0;h=sa(f<<2);F[i+8>>2]=f;F[i>>2]=h;F[i+4>>2]=e;p=0;F[((c>>>0<132?0:d)<<2)+h>>2]=0;d=e>>>5<<2;f=ua(h,0,d);e=e&31;if(e){d=d+f|0;F[d>>2]=F[d>>2]&(-1>>>32-e^-1)}if(c>>>0<12){break I}while(1){r=L(p,3);e=(r<<2)+l|0;c=F[e>>2];d=-1;f=r+1|0;if((f|0)!=-1){d=F[(f<<2)+l>>2]}P:{if((c|0)==(d|0)){break P}f=c;c=F[e+8>>2];if((f|0)==(c|0)){break P}q=0;if((c|0)==(d|0)){break P}while(1){e=q+r|0;if(!(F[(e>>>3&536870908)+h>>2]>>>e&1)){c=F[(e<<2)+l>>2];d=1<>>5|0;w=d&F[(h<<2)+b>>2];if(w){b=F[g+28>>2];Q:{if((b|0)!=F[g+32>>2]){F[b>>2]=-1;F[g+28>>2]=b+4;break Q}f=F[o>>2];d=b-f|0;h=d>>2;b=h+1|0;if(b>>>0>=1073741824){break c}j=d>>1;j=d>>>0<2147483644?b>>>0>j>>>0?b:j:1073741823;if(j){if(j>>>0>=1073741824){break i}b=sa(j<<2)}else{b=0}h=b+(h<<2)|0;F[h>>2]=-1;if((d|0)>0){ta(b,f,d)}F[g+32>>2]=b+(j<<2);F[g+28>>2]=h+4;F[g+24>>2]=b;if(!f){break Q}ra(f)}b=F[g+52>>2];R:{if((b|0)!=F[g+56>>2]){F[b>>2]=c;F[g+52>>2]=b+4;break R}f=F[g+48>>2];d=b-f|0;h=d>>2;b=h+1|0;if(b>>>0>=1073741824){break c}j=d>>1;j=d>>>0<2147483644?b>>>0>j>>>0?b:j:1073741823;if(j){if(j>>>0>=1073741824){break i}b=sa(j<<2)}else{b=0}h=b+(h<<2)|0;F[h>>2]=c;if((d|0)>0){ta(b,f,d)}F[g+56>>2]=b+(j<<2);F[g+52>>2]=h+4;F[g+48>>2]=b;if(!f){break R}ra(f)}d=F[i+20>>2];b=F[i+24>>2];if((d|0)==b<<5){if((d+1|0)<0){break K}c=i+16|0;if(d>>>0<=1073741822){d=d+32&-32;b=b<<6;b=b>>>0>>0?d:b}else{b=2147483647}db(c,b);d=F[i+20>>2]}F[i+20>>2]=d+1;b=F[i+16>>2]+(d>>>3&536870908)|0;c=F[b>>2];M=b,N=Lj(d)&c,F[M>>2]=N;d=1<>>5|0;c=a;a=a+1|0}f=a;b=F[i+16>>2];a=b+(h<<2)|0;F[a>>2]=F[a>>2]|d;v=F[g+24>>2]+(c<<2)|0;j=F[g+12>>2];l=F[g>>2];h=F[i>>2];a=e;S:{T:{U:{V:{W:{X:{while(1){if((a|0)==-1){break X}d=(a>>>3&536870908)+h|0;F[d>>2]=F[d>>2]|1<>2]=a;if(w){F[(a<<2)+l>>2]=c}u=a+1|0;a=(u>>>0)%3|0?u:a-2|0;d=-1;Y:{if((a|0)==-1){break Y}a=F[j+(a<<2)>>2];d=-1;if((a|0)==-1){break Y}d=a+1|0;d=(d>>>0)%3|0?d:a-2|0}a=d;if((e|0)!=(a|0)){continue}break}if((e|0)!=-1){break S}a=1;break W}if((e>>>0)%3|0){a=e-1|0;break W}a=e+2|0;if((a|0)==-1){break V}}a=F[j+(a<<2)>>2];if((a|0)==-1){break V}if(!((a>>>0)%3|0)){break U}a=a-1|0;l=F[g>>2];h=F[i>>2];break T}l=F[g>>2];h=F[i>>2];break S}l=F[g>>2];h=F[i>>2];a=a+2|0;if((a|0)==-1){break S}}e=F[g+12>>2];while(1){d=(a>>>3&536870908)+h|0;F[d>>2]=F[d>>2]|1<>2]=c}Z:{if((a>>>0)%3|0){a=a-1|0;break Z}a=a+2|0;if((a|0)==-1){break S}}a=F[e+(a<<2)>>2];if((a|0)==-1){break S}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=f}q=q+1|0;if((q|0)!=3){continue}break}l=F[g>>2];j=F[g+4>>2]}p=p+1|0;if(p>>>0<(j-l>>2>>>0)/3>>>0){continue}break}break J}Oa();V()}Oa();V()}Oa();V()}b=F[i+16>>2]}F[g+44>>2]=0;a=F[i+20>>2];if(a){c=a&31;e=(a>>>3&536870908)+b|0;a=b;h=0;while(1){if(!(F[a>>2]>>>n&1)){h=h+1|0;F[g+44>>2]=h}d=(n|0)==31;n=d?0:n+1|0;a=(d<<2)+a|0;if((e|0)!=(a|0)|(c|0)!=(n|0)){continue}break}}a=F[i>>2];if(a){ra(a);b=F[i+16>>2]}if(b){ra(b)}ea=i+32|0}ea=A+16|0;if(!y){F[C+8>>2]=0;cb(g);g=0}ea=C+16|0;a=g;break h}wa(1336);V()}b=F[t>>2];if(!b){break e}F[t+4>>2]=b;ra(b)}ea=t+16|0;break d}b=F[k+4>>2];F[k+4>>2]=a;if(b){cb(b);a=F[k+4>>2]}_:{if(!a){break _}a=F[x+100>>2];b=F[x+96>>2];D[s+12|0]=0;Na(k+56|0,(a-b|0)/12|0,s+12|0);a=F[x+100>>2];c=F[x+96>>2];if((a|0)==(c|0)){J=1;break _}while(1){if(!(F[F[k+56>>2]+(B>>>3&536870908)>>2]>>>B&1)){a=L(B,3);Fc(k,0,a);b=F[k+8>>2];c=F[k+12>>2];Fc(k,1,a+1|0);e=F[k+20>>2];d=F[k+24>>2];Fc(k,2,a+2|0);e=d-e>>2;b=c-b|0;c=b>>2;a=e>>>0>c>>>0;c=F[k+36>>2]-F[k+32>>2]>>2>>>0>(a?e:c)>>>0?2:a?1:b?0:-1;$:{if(F[k+68>>2]<=0){break $}F[s+12>>2]=F[k+76>>2];F[s+8>>2]=m;hb(s+8|0,s+12|0);a=F[((c<<2)+k|0)+44>>2];if((a|0)<0){a=-1}else{b=(a>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(b,12)|0)+(a-L(b,3)<<2)>>2]}F[s+12>>2]=a;F[s+8>>2]=m;hb(s+8|0,s+12|0);b=F[k+72>>2];F[k+72>>2]=b+2;if(!(b&1)){break $}F[s+12>>2]=a;F[s+8>>2]=m;hb(s+8|0,s+12|0);F[k+72>>2]=F[k+72>>2]+1}b=ea-16|0;ea=b;F[k+68>>2]=F[k+68>>2]+1;a=L(c,12)+k|0;e=F[a+12>>2]-F[a+8>>2]|0;aa:{if((e|0)<=0){break aa}a=-1;c=F[((c<<2)+k|0)+44>>2];d=(c>>>0)/3|0;i=(c|0)==-1;f=i?-1:d;g=F[k+56>>2]+(f>>>3&536870908)|0;F[g>>2]=F[g>>2]|1<>2]=F[k+72>>2]+1;F[b+12>>2]=(c|0)>=0?F[(F[F[k>>2]+96>>2]+L(d,12)|0)+((c>>>0)%3<<2)>>2]:-1;F[b+8>>2]=m;hb(b+8|0,b+12|0);ba:{if(!i){f=c+1|0;f=(f>>>0)%3|0?f:c-2|0;if((f|0)>=0){i=(f>>>0)/3|0;f=F[(F[F[k>>2]+96>>2]+L(i,12)|0)+(f-L(i,3)<<2)>>2]}else{f=-1}F[b+12>>2]=f;F[b+8>>2]=m;hb(b+8|0,b+12|0);d=c+(c-L(d,3)|0?-1:2)|0;if((d|0)<0){break ba}a=(d>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(a,12)|0)+(d-L(a,3)<<2)>>2];break ba}F[b+12>>2]=-1;F[b+8>>2]=m;hb(b+8|0,b+12|0)}F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=m;a=-1;hb(b+8|0,b+12|0);a=(c|0)!=-1?F[F[F[k+4>>2]+12>>2]+(c<<2)>>2]:a;if(e>>>0<=7){break aa}c=e>>>2|0;i=c>>>0>1?c:1;e=1;while(1){c=a;f=(a>>>0)/3|0;a=(a|0)==-1?-1:f;d=F[k+56>>2]+(a>>>3&536870908)|0;F[d>>2]=F[d>>2]|1<>2]=F[k+72>>2]+1;a=-1;a=(c|0)>=0?F[(F[F[k>>2]+96>>2]+L(f,12)|0)+((c>>>0)%3<<2)>>2]:a;F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=m;hb(b+8|0,b+12|0);ca:{da:{ea:{if(e&1){d=-1;if((c|0)==-1){break ca}if((c|0)!=(L(f,3)|0)){a=c-1|0;break da}a=c+2|0;break ea}d=-1;if((c|0)==-1){break ca}a=c+1|0;a=(a>>>0)%3|0?a:c-2|0}d=-1;if((a|0)==-1){break ca}}d=F[F[F[k+4>>2]+12>>2]+(a<<2)>>2]}a=d;e=e+1|0;if((i|0)!=(e|0)){continue}break}}ea=b+16|0;c=F[x+96>>2];a=F[x+100>>2]}J=1;B=B+1|0;if(B>>>0<(a-c|0)/12>>>0){continue}break}}ea=s+16|0;fa:{if(J){a=F[z>>2];if(a){F[z+4>>2]=a;ra(a)}F[z>>2]=F[m>>2];F[z+4>>2]=F[m+4>>2];F[z+8>>2]=F[m+8>>2];K=F[m+84>>2];break fa}a=F[m>>2];if(!a){break fa}F[m+4>>2]=a;ra(a)}a=F[m+72>>2];if(a){ra(a)}a=F[m+48>>2];if(a){F[m+52>>2]=a;ra(a)}a=F[m+36>>2];if(a){F[m+40>>2]=a;ra(a)}a=F[m+24>>2];if(a){F[m+28>>2]=a;ra(a)}a=F[m+20>>2];F[m+20>>2]=0;if(a){cb(a)}ea=m+96|0;break b}va();V()}return K|0}function Gd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=ea-16|0;ea=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=F[4233];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=F[b+16980>>2];a=f+8|0;c=F[f+8>>2];b=b+16972|0;l:{if((c|0)==(b|0)){m=16932,n=Lj(d)&e,F[m>>2]=n;break l}F[c+12>>2]=b;F[b+8>>2]=c}b=d<<3;F[f+4>>2]=b|3;b=b+f|0;F[b+4>>2]=F[b+4>>2]|1;break a}k=F[4235];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=F[a+16980>>2];b=F[g+8>>2];a=a+16972|0;m:{if((b|0)==(a|0)){e=Lj(c)&e;F[4233]=e;break m}F[b+12>>2]=a;F[a+8>>2]=b}a=g+8|0;F[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;F[d+4>>2]=f|1;F[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+16972|0;g=F[4238];b=1<>2]}F[c+8>>2]=g;F[b+12>>2]=g;F[g+12>>2]=c;F[g+8>>2]=b}F[4238]=d;F[4235]=f;break a}j=F[4234];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=F[((c|a)+(b>>>a|0)<<2)+17236>>2];d=(F[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=F[c+16>>2];if(!a){a=F[c+20>>2];if(!a){break o}}c=(F[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=F[b+24>>2];f=F[b+12>>2];if((f|0)!=(b|0)){a=F[b+8>>2];F[a+12>>2]=f;F[f+8>>2]=a;break b}c=b+20|0;a=F[c>>2];if(!a){a=F[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=F[c>>2];if(a){continue}c=f+16|0;a=F[f+16>>2];if(a){continue}break}F[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=F[4234];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=F[(e<<2)+17236>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(F[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=F[c+20>>2];c=F[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=F[((c|a)+(b>>>a|0)<<2)+17236>>2]}if(!a){break q}}while(1){b=(F[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=F[a+16>>2];if(b){a=b}else{a=F[a+20>>2]}if(a){continue}break}}if(!f|F[4235]-h>>>0<=d>>>0){break k}e=F[f+24>>2];b=F[f+12>>2];if((f|0)!=(b|0)){a=F[f+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break c}c=f+20|0;a=F[c>>2];if(!a){a=F[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=F[c>>2];if(a){continue}c=b+16|0;a=F[b+16>>2];if(a){continue}break}F[g>>2]=0;break c}c=F[4235];if(c>>>0>=h>>>0){d=F[4238];b=c-h|0;u:{if(b>>>0>=16){F[4235]=b;a=d+h|0;F[4238]=a;F[a+4>>2]=b|1;F[c+d>>2]=b;F[d+4>>2]=h|3;break u}F[4238]=0;F[4235]=0;F[d+4>>2]=c|3;a=c+d|0;F[a+4>>2]=F[a+4>>2]|1}a=d+8|0;break a}i=F[4236];if(i>>>0>h>>>0){b=i-h|0;F[4236]=b;c=F[4239];a=c+h|0;F[4239]=a;F[a+4>>2]=b|1;F[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(F[4351]){c=F[4353]}else{F[4354]=-1;F[4355]=-1;F[4352]=4096;F[4353]=4096;F[4351]=l+12&-16^1431655768;F[4356]=0;F[4344]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=F[4343];if(d){b=F[4341];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(G[17376]&4){break f}v:{w:{d=F[4239];if(d){a=17380;while(1){b=F[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=F[a+8>>2];if(a){continue}break}}b=lb(0);if((b|0)==-1){break g}e=c;d=F[4352];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=F[4343];if(d){a=F[4341];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=lb(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=lb(e);if((b|0)==(F[a>>2]+F[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=F[4353];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((lb(b)|0)!=-1){e=b+e|0;b=a;break e}lb(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}F[4344]=F[4344]|4}if(c>>>0>2147483646){break d}b=lb(c);a=lb(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=F[4341]+e|0;F[4341]=a;if(a>>>0>I[4342]){F[4342]=a}x:{y:{z:{g=F[4239];if(g){a=17380;while(1){d=F[a>>2];c=F[a+4>>2];if((d+c|0)==(b|0)){break z}a=F[a+8>>2];if(a){continue}break}break y}a=F[4237];if(!(a>>>0<=b>>>0?a:0)){F[4237]=b}a=0;F[4346]=e;F[4345]=b;F[4241]=-1;F[4242]=F[4351];F[4348]=0;while(1){d=a<<3;c=d+16972|0;F[d+16980>>2]=c;F[d+16984>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[4236]=c;a=a+b|0;F[4239]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[4240]=F[4355];break x}if(G[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}F[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;F[4239]=c;b=F[4236]+e|0;a=b-a|0;F[4236]=a;F[c+4>>2]=a|1;F[(b+g|0)+4>>2]=40;F[4240]=F[4355];break x}if(I[4237]>b>>>0){F[4237]=b}c=b+e|0;a=17380;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=F[a>>2]){a=F[a+8>>2];if(a){continue}break F}break}if(!(G[a+12|0]&8)){break E}}a=17380;while(1){c=F[a>>2];if(c>>>0<=g>>>0){f=c+F[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=F[a+8>>2];continue}}F[a>>2]=b;F[a+4>>2]=F[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;F[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){F[4239]=i;a=F[4236]+c|0;F[4236]=a;F[i+4>>2]=a|1;break B}if(F[4238]==(e|0)){F[4238]=i;a=F[4235]+c|0;F[4235]=a;F[i+4>>2]=a|1;F[a+i>>2]=a;break B}a=F[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=F[e+8>>2];a=a>>>3|0;b=F[e+12>>2];if((b|0)==(d|0)){m=16932,n=F[4233]&Lj(a),F[m>>2]=n;break G}F[d+12>>2]=b;F[b+8>>2]=d;break G}h=F[e+24>>2];b=F[e+12>>2];H:{if((e|0)!=(b|0)){a=F[e+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break H}I:{a=e+20|0;d=F[a>>2];if(d){break I}a=e+16|0;d=F[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=F[a>>2];if(d){continue}a=b+16|0;d=F[b+16>>2];if(d){continue}break}F[f>>2]=0}if(!h){break G}d=F[e+28>>2];a=(d<<2)+17236|0;J:{if(F[a>>2]==(e|0)){F[a>>2]=b;if(b){break J}m=16936,n=F[4234]&Lj(d),F[m>>2]=n;break G}F[h+(F[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}F[b+24>>2]=h;a=F[e+16>>2];if(a){F[b+16>>2]=a;F[a+24>>2]=b}a=F[e+20>>2];if(!a){break G}F[b+20>>2]=a;F[a+24>>2]=b}e=e+g|0;c=c+g|0}F[e+4>>2]=F[e+4>>2]&-2;F[i+4>>2]=c|1;F[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+16972|0;c=F[4233];a=1<>2]}F[b+8>>2]=i;F[a+12>>2]=i;F[i+12>>2]=b;F[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}F[i+28>>2]=a;F[i+16>>2]=0;F[i+20>>2]=0;f=(a<<2)+17236|0;d=F[4234];b=1<>2]=i;F[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[f>>2];while(1){d=b;if((F[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=F[f+16>>2];if(b){continue}break}F[f+16>>2]=i;F[i+24>>2]=d}F[i+12>>2]=i;F[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[4236]=c;a=a+b|0;F[4239]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[4240]=F[4355];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;F[c+4>>2]=27;a=F[4348];F[c+16>>2]=F[4347];F[c+20>>2]=a;a=F[4346];F[c+8>>2]=F[4345];F[c+12>>2]=a;F[4347]=c+8;F[4346]=e;F[4345]=b;F[4348]=0;a=c+24|0;while(1){F[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}F[c+4>>2]=F[c+4>>2]&-2;f=c-g|0;F[g+4>>2]=f|1;F[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+16972|0;c=F[4233];a=1<>2]}F[b+8>>2]=g;F[a+12>>2]=g;F[g+12>>2]=b;F[g+8>>2]=a;break x}a=31;F[g+16>>2]=0;F[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}F[g+28>>2]=a;d=(a<<2)+17236|0;c=F[4234];b=1<>2]=g;F[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[d>>2];while(1){c=b;if((f|0)==(F[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=F[d+16>>2];if(b){continue}break}F[d+16>>2]=g;F[g+24>>2]=c}F[g+12>>2]=g;F[g+8>>2]=g;break x}a=F[d+8>>2];F[a+12>>2]=i;F[d+8>>2]=i;F[i+24>>2]=0;F[i+12>>2]=d;F[i+8>>2]=a}a=j+8|0;break a}a=F[c+8>>2];F[a+12>>2]=g;F[c+8>>2]=g;F[g+24>>2]=0;F[g+12>>2]=c;F[g+8>>2]=a}a=F[4236];if(a>>>0<=h>>>0){break d}b=a-h|0;F[4236]=b;c=F[4239];a=c+h|0;F[4239]=a;F[a+4>>2]=b|1;F[c+4>>2]=h|3;a=c+8|0;break a}F[4190]=48;a=0;break a}O:{if(!e){break O}c=F[f+28>>2];a=(c<<2)+17236|0;P:{if(F[a>>2]==(f|0)){F[a>>2]=b;if(b){break P}j=Lj(c)&j;F[4234]=j;break O}F[e+(F[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}F[b+24>>2]=e;a=F[f+16>>2];if(a){F[b+16>>2]=a;F[a+24>>2]=b}a=F[f+20>>2];if(!a){break O}F[b+20>>2]=a;F[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;F[f+4>>2]=a|3;a=a+f|0;F[a+4>>2]=F[a+4>>2]|1;break Q}F[f+4>>2]=h|3;e=f+h|0;F[e+4>>2]=d|1;F[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+16972|0;c=F[4233];a=1<>2]}F[b+8>>2]=e;F[a+12>>2]=e;F[e+12>>2]=b;F[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}F[e+28>>2]=a;F[e+16>>2]=0;F[e+20>>2]=0;b=(a<<2)+17236|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=F[b>>2];while(1){b=h;if((F[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=F[c+16>>2];if(h){continue}break}F[c+16>>2]=e}F[e+24>>2]=b;F[e+12>>2]=e;F[e+8>>2]=e;break Q}a=F[b+8>>2];F[a+12>>2]=e;F[b+8>>2]=e;F[e+24>>2]=0;F[e+12>>2]=b;F[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=F[b+28>>2];a=(c<<2)+17236|0;V:{if(F[a>>2]==(b|0)){F[a>>2]=f;if(f){break V}m=16936,n=Lj(c)&j,F[m>>2]=n;break U}F[i+(F[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}F[f+24>>2]=i;a=F[b+16>>2];if(a){F[f+16>>2]=a;F[a+24>>2]=f}a=F[b+20>>2];if(!a){break U}F[f+20>>2]=a;F[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;F[b+4>>2]=a|3;a=a+b|0;F[a+4>>2]=F[a+4>>2]|1;break W}F[b+4>>2]=h|3;f=b+h|0;F[f+4>>2]=d|1;F[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+16972|0;g=F[4238];a=1<>2]}F[c+8>>2]=g;F[a+12>>2]=g;F[g+12>>2]=c;F[g+8>>2]=a}F[4238]=f;F[4235]=d}a=b+8|0}ea=l+16|0;return a|0}function bf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=ea-48|0;ea=j;a:{if((c|0)!=1){break a}f=F[a+4>>2];i=F[a+12>>2];F[j+40>>2]=0;F[j+32>>2]=0;F[j+36>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;e=j+8|0;b:{if((b|0)==-2){break b}m=F[F[F[f+4>>2]+8>>2]+(i<<2)>>2];if((ga[F[F[f>>2]+8>>2]](f)|0)==1){a=H[f+36>>1];l=(a<<8|a>>>8)&65535;a=0;k=ea-32|0;ea=k;g=F[F[F[f+4>>2]+8>>2]+(i<<2)>>2];c:{if((ga[F[F[f>>2]+8>>2]](f)|0)!=1|b-1>>>0>5){break c}d=ga[F[F[f>>2]+36>>2]](f)|0;h=ga[F[F[f>>2]+44>>2]](f,i)|0;if(!d|!h){break c}c=ga[F[F[f>>2]+40>>2]](f,i)|0;if(c){a=F[f+44>>2];F[k+12>>2]=c;F[k+8>>2]=a;F[k+20>>2]=h;F[k+16>>2]=h+12;f=k+8|0;a=0;d:{e:{f:{switch(b-1|0){case 0:a=sa(60);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=2592;break d;case 1:a=sa(60);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=3356;break d;case 3:a=sa(112);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=3592;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;break d;case 2:a=sa(92);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=3840;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=l;break d;case 4:a=sa(104);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;c=F[f+8>>2];b=F[f+12>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=4068;F[a+52>>2]=c;F[a+56>>2]=b;b=F[f+4>>2];F[a+88>>2]=F[f>>2];F[a+92>>2]=b;b=F[f+12>>2];F[a+96>>2]=F[f+8>>2];F[a+100>>2]=b;break d;case 5:break f;default:break d}}a=sa(128);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;g:{h:{c=F[e+28>>2]-F[e+24>>2]|0;if(c){if((c|0)<0){break h}b=sa(c);F[a+32>>2]=b;F[a+36>>2]=b;F[a+40>>2]=b+(c>>2<<2);c=F[e+24>>2];d=F[e+28>>2]-c|0;if((d|0)>0){b=ta(b,c,d)+d|0}F[a+36>>2]=b}F[a>>2]=3244;b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+60>>2]=4932;F[a>>2]=4304;b=F[f+4>>2];F[a+72>>2]=F[f>>2];F[a+76>>2]=b;b=F[f+12>>2];F[a+80>>2]=F[f+8>>2];F[a+84>>2]=b;F[a+104>>2]=1065353216;F[a+108>>2]=-1;F[a+96>>2]=-1;F[a+100>>2]=-1;F[a+88>>2]=1;F[a+92>>2]=-1;F[a+60>>2]=4540;F[a+112>>2]=0;F[a+116>>2]=0;D[a+117|0]=0;D[a+118|0]=0;D[a+119|0]=0;D[a+120|0]=0;D[a+121|0]=0;D[a+122|0]=0;D[a+123|0]=0;D[a+124|0]=0;break g}va();V()}break d}va();V()}break c}a=F[f+44>>2];F[k+12>>2]=d;F[k+8>>2]=a;F[k+20>>2]=h;F[k+16>>2]=h+12;f=k+8|0;a=0;i:{j:{k:{switch(b-1|0){case 0:a=sa(60);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=4960;break i;case 1:a=sa(60);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=5384;break i;case 3:a=sa(112);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=5608;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;break i;case 2:a=sa(92);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=5844;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=l;break i;case 4:a=sa(104);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=sa(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=ta(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;c=F[f+8>>2];b=F[f+12>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=6060;F[a+52>>2]=c;F[a+56>>2]=b;b=F[f+4>>2];F[a+88>>2]=F[f>>2];F[a+92>>2]=b;b=F[f+12>>2];F[a+96>>2]=F[f+8>>2];F[a+100>>2]=b;break i;case 5:break k;default:break i}}a=sa(128);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;l:{m:{c=F[e+28>>2]-F[e+24>>2]|0;if(c){if((c|0)<0){break m}b=sa(c);F[a+32>>2]=b;F[a+36>>2]=b;F[a+40>>2]=b+(c>>2<<2);c=F[e+24>>2];d=F[e+28>>2]-c|0;if((d|0)>0){b=ta(b,c,d)+d|0}F[a+36>>2]=b}F[a>>2]=5328;b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+60>>2]=6868;F[a>>2]=6284;b=F[f+4>>2];F[a+72>>2]=F[f>>2];F[a+76>>2]=b;b=F[f+12>>2];F[a+80>>2]=F[f+8>>2];F[a+84>>2]=b;F[a+104>>2]=1065353216;F[a+108>>2]=-1;F[a+96>>2]=-1;F[a+100>>2]=-1;F[a+88>>2]=1;F[a+92>>2]=-1;F[a+60>>2]=6504;F[a+112>>2]=0;F[a+116>>2]=0;D[a+117|0]=0;D[a+118|0]=0;D[a+119|0]=0;D[a+120|0]=0;D[a+121|0]=0;D[a+122|0]=0;D[a+123|0]=0;D[a+124|0]=0;break l}va();V()}break i}va();V()}}ea=k+32|0;d=a;if(a){break b}}d=sa(44);F[d+4>>2]=m;F[d>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];c=F[e+20>>2];b=F[e>>2];a=F[e+4>>2];F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;F[d+24>>2]=i;F[d+28>>2]=c;F[d+16>>2]=g;F[d+20>>2]=h;F[d+8>>2]=b;F[d+12>>2]=a;n:{a=F[e+24>>2];c=F[e+28>>2]-a|0;if(c){if((c|0)<0){break n}b=sa(c);F[d+32>>2]=b;F[d+40>>2]=b+(c>>2<<2);n=d,o=ta(b,a,c)+c|0,F[n+36>>2]=o}F[d>>2]=6896;break b}va();V()}a=F[j+32>>2];if(!a){break a}F[j+36>>2]=a;ra(a)}ea=j+48|0;return d|0}function $d(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=ea-48|0;ea=k;c=sa(8);F[c+4>>2]=b;F[c>>2]=0;b=c+8|0;F[k+40>>2]=b;F[k+36>>2]=b;F[k+32>>2]=c;a:{b:{c:{d:{while(1){b=b-8|0;j=F[b+4>>2];g=F[b>>2];F[k+36>>2]=b;if(g){F[k+24>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;c=1;b=F[a>>2];e=F[b+8>>2];h=F[b+12>>2];d=F[b+20>>2];f=F[b+16>>2];e:{if((h|0)<=(d|0)&f>>>0>=e>>>0|(d|0)>(h|0)){break e}e=G[f+F[b>>2]|0];f=f+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;Cc(k+16|0,e);if(e){d=F[a>>2];m=Dc(k+16|0);f=F[d+20>>2];i=F[d+16>>2];b=e;n=i+e|0;h=F[d+12>>2];f=e>>>0>n>>>0?f+1|0:f;if(n>>>0>I[d+8>>2]&(h|0)<=(f|0)|(f|0)>(h|0)){break e}ta(m,i+F[d>>2]|0,e);c=F[d+20>>2];e=b+F[d+16>>2]|0;c=e>>>0>>0?c+1|0:c;F[d+16>>2]=e;F[d+20>>2]=c}j=sa(24);b=j;F[b+4>>2]=0;F[b+8>>2]=0;b=b+16|0;F[b>>2]=0;F[b+4>>2]=0;F[j>>2]=j+4;F[j+12>>2]=b;e=ea-32|0;ea=e;f=g+12|0;c=k+16|0;l=rb(f,c);p=g+16|0;f:{if((l|0)==(p|0)){F[e+16>>2]=c;b=F[f+4>>2];g:{h:{if(b){d=G[c+11|0];g=d<<24>>24<0;h=g?F[c>>2]:c;g=g?F[c+4>>2]:d;c=f+4|0;while(1){d=G[b+27|0];n=d<<24>>24<0;d=n?F[b+20>>2]:d;m=d>>>0>>0;i:{j:{k:{l:{m:{i=m?d:g;n:{if(i){o=b+16|0;n=n?F[o>>2]:o;o=Ha(h,n,i);if(!o){if(d>>>0>g>>>0){break n}break m}if((o|0)>=0){break m}break n}if(d>>>0<=g>>>0){break l}}d=F[b>>2];if(d){break i}break h}d=Ha(n,h,i);if(d){break k}}if(m){break j}break g}if((d|0)>=0){break g}}c=b+4|0;d=F[b+4>>2];if(!d){break g}b=c}c=b;b=d;continue}}b=f+4|0}c=b}d=F[c>>2];if(d){b=0}else{d=sa(32);h=d+16|0;g=F[e+16>>2];o:{if(D[g+11|0]>=0){n=F[g+4>>2];F[h>>2]=F[g>>2];F[h+4>>2]=n;F[h+8>>2]=F[g+8>>2];break o}Ba(h,F[g>>2],F[g+4>>2])}F[d+8>>2]=b;F[d>>2]=0;F[d+4>>2]=0;F[d+28>>2]=0;F[c>>2]=d;b=F[F[f>>2]>>2];if(b){F[f>>2]=b;b=F[c>>2]}else{b=d}Tb(F[f+4>>2],b);F[f+8>>2]=F[f+8>>2]+1;b=1}D[e+28|0]=b;F[e+24>>2]=d;c=F[e+24>>2];b=F[c+28>>2];F[c+28>>2]=j;if(!b){break f}Qa(b+12|0,F[b+16>>2]);Pa(b,F[b+4>>2]);ra(b);break f}if(!j){break f}Qa(j+12|0,F[j+16>>2]);Pa(j,F[j+4>>2]);ra(j)}ea=e+32|0;c=(l|0)!=(p|0)}if(D[k+27|0]<0){ra(F[k+16>>2])}if(c){break b}}if(!j){break b}F[k+16>>2]=0;if(!Cb(1,k+16|0,F[a>>2])){break b}b=0;r=F[k+16>>2];if(r){while(1){n=0;i=ea-32|0;ea=i;F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;c=F[a>>2];e=F[c+8>>2];p:{q:{f=F[c+12>>2];d=F[c+20>>2];g=F[c+16>>2];r:{if((f|0)<=(d|0)&g>>>0>=e>>>0|(d|0)>(f|0)){break r}f=G[g+F[c>>2]|0];e=c;c=d;d=g+1|0;c=d?c:c+1|0;F[e+16>>2]=d;F[e+20>>2]=c;Cc(i+16|0,f);if(f){e=F[a>>2];m=Dc(i+16|0);d=F[e+20>>2];l=F[e+16>>2];c=f;h=l+c|0;g=F[e+12>>2];d=c>>>0>h>>>0?d+1|0:d;if(h>>>0>I[e+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break r}ta(m,l+F[e>>2]|0,f);d=F[e+20>>2];f=c+F[e+16>>2]|0;d=f>>>0>>0?d+1|0:d;F[e+16>>2]=f;F[e+20>>2]=d}F[i+12>>2]=0;if(!Cb(1,i+12|0,F[a>>2])){break r}c=F[i+12>>2];if(!c){break r}F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;if((c|0)<0){break q}d=sa(c);F[i>>2]=d;e=c+d|0;F[i+8>>2]=e;m=ua(d,0,c);F[i+4>>2]=e;e=F[a>>2];n=F[e+8>>2];g=F[e+12>>2];f=F[e+20>>2];l=F[e+16>>2];h=c+l|0;f=h>>>0>>0?f+1|0:f;n=(f|0)<=(g|0)&h>>>0<=n>>>0|(f|0)<(g|0);if(n){ta(m,l+F[e>>2]|0,c);d=c;f=c+F[e+16>>2]|0;c=F[e+20>>2];F[e+16>>2]=f;F[e+20>>2]=d>>>0>f>>>0?c+1|0:c;g=ea-48|0;ea=g;d=rb(j,i+16|0);if((d|0)!=(j+4|0)){e=F[d+4>>2];s:{if(!e){f=F[d+8>>2];if(F[f>>2]==(d|0)){break s}c=d+8|0;while(1){e=F[c>>2];c=e+8|0;f=F[e+8>>2];if((e|0)!=F[f>>2]){continue}break}break s}while(1){f=e;e=F[e>>2];if(e){continue}break}}if(F[j>>2]==(d|0)){F[j>>2]=f}F[j+8>>2]=F[j+8>>2]-1;f=F[j+4>>2];h=d;t:{u:{e=F[d>>2];if(e){c=F[h+4>>2];if(!c){break u}while(1){d=c;c=F[c>>2];if(c){continue}break}}e=F[d+4>>2];if(e){break u}e=0;m=1;break t}F[e+8>>2]=F[d+8>>2];m=0}l=F[d+8>>2];c=F[l>>2];v:{if((d|0)==(c|0)){F[l>>2]=e;if((d|0)==(f|0)){c=0;f=e;break v}c=F[l+4>>2];break v}F[l+4>>2]=e}o=!G[d+12|0];if((d|0)!=(h|0)){l=F[h+8>>2];F[d+8>>2]=l;F[l+(((h|0)!=F[F[h+8>>2]>>2])<<2)>>2]=d;l=F[h>>2];F[d>>2]=l;F[l+8>>2]=d;l=F[h+4>>2];F[d+4>>2]=l;if(l){F[l+8>>2]=d}D[d+12|0]=G[h+12|0];f=(f|0)==(h|0)?d:f}w:{if(o|!f){break w}if(m){while(1){e=G[c+12|0];x:{d=F[c+8>>2];if(F[d>>2]!=(c|0)){if(!e){D[c+12|0]=1;D[d+12|0]=0;e=F[d+4>>2];m=F[e>>2];F[d+4>>2]=m;if(m){F[m+8>>2]=d}F[e+8>>2]=F[d+8>>2];m=F[d+8>>2];F[(((d|0)!=F[m>>2])<<2)+m>>2]=e;F[e>>2]=d;F[d+8>>2]=e;d=c;c=F[c>>2];f=(c|0)==(f|0)?d:f;c=F[c+4>>2]}y:{z:{d=F[c>>2];A:{if(!(G[d+12|0]?0:d)){e=F[c+4>>2];if(G[e+12|0]?0:e){break A}D[c+12|0]=0;c=F[c+8>>2];B:{if((f|0)==(c|0)){c=f;break B}if(G[c+12|0]){break x}}D[c+12|0]=1;break w}e=F[c+4>>2];if(!e){break z}}if(G[e+12|0]){break z}d=c;break y}D[d+12|0]=1;D[c+12|0]=0;e=F[d+4>>2];F[c>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[((F[e>>2]!=(c|0))<<2)+e>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;e=c}c=F[d+8>>2];D[d+12|0]=G[c+12|0];D[c+12|0]=1;D[e+12|0]=1;d=F[c+4>>2];e=F[d>>2];F[c+4>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[(((c|0)!=F[e>>2])<<2)+e>>2]=d;F[d>>2]=c;F[c+8>>2]=d;break w}if(!e){D[c+12|0]=1;D[d+12|0]=0;e=F[c+4>>2];F[d>>2]=e;if(e){F[e+8>>2]=d}F[c+8>>2]=F[d+8>>2];e=F[d+8>>2];F[(((d|0)!=F[e>>2])<<2)+e>>2]=c;F[c+4>>2]=d;F[d+8>>2]=c;f=(d|0)==(f|0)?c:f;c=F[d>>2]}e=F[c>>2];C:{if(!(!e|G[e+12|0])){d=c;break C}d=F[c+4>>2];if(!(G[d+12|0]?0:d)){D[c+12|0]=0;c=F[c+8>>2];if((c|0)!=(f|0)?G[c+12|0]:0){break x}D[c+12|0]=1;break w}if(e){if(!G[e+12|0]){d=c;break C}d=F[c+4>>2]}D[d+12|0]=1;D[c+12|0]=0;e=F[d>>2];F[c+4>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[((F[e>>2]!=(c|0))<<2)+e>>2]=d;F[d>>2]=c;F[c+8>>2]=d;e=c}c=F[d+8>>2];D[d+12|0]=G[c+12|0];D[c+12|0]=1;D[e+12|0]=1;d=F[c>>2];e=F[d+4>>2];F[c>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[(((c|0)!=F[e>>2])<<2)+e>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;break w}d=c;c=F[c+8>>2];c=F[(((d|0)==F[c>>2])<<2)+c>>2];continue}}D[e+12|0]=1}c=F[h+28>>2];if(c){F[h+32>>2]=c;ra(c)}if(D[h+27|0]<0){ra(F[h+16>>2])}ra(h)}F[g>>2]=0;F[g+4>>2]=0;F[g+8>>2]=0;c=F[i+4>>2]-F[i>>2]|0;Va(g,c);ta(F[g>>2],F[i>>2],c);D:{if(D[i+27|0]>=0){F[g+24>>2]=F[i+24>>2];c=F[i+20>>2];F[g+16>>2]=F[i+16>>2];F[g+20>>2]=c;break D}Ba(g+16|0,F[i+16>>2],F[i+20>>2])}F[g+36>>2]=0;F[g+28>>2]=0;F[g+32>>2]=0;Va(g+28|0,F[g+4>>2]-F[g>>2]|0);c=F[g>>2];ta(F[g+28>>2],c,F[g+4>>2]-c|0);f=g+16|0;d=f;c=F[j+4>>2];E:{F:{if(c){e=G[d+11|0];h=e<<24>>24<0;m=h?F[d>>2]:d;h=h?F[d+4>>2]:e;d=j+4|0;while(1){e=G[c+27|0];l=e<<24>>24<0;e=l?F[c+20>>2]:e;p=e>>>0>>0;G:{H:{I:{J:{K:{o=p?e:h;L:{if(o){q=c+16|0;l=l?F[q>>2]:q;q=Ha(m,l,o);if(!q){if(e>>>0>h>>>0){break L}break K}if((q|0)>=0){break K}break L}if(e>>>0<=h>>>0){break J}}e=F[c>>2];if(e){break G}break F}e=Ha(l,m,o);if(e){break I}}if(p){break H}break E}if((e|0)>=0){break E}}d=c+4|0;e=F[c+4>>2];if(!e){break E}c=d}d=c;c=e;continue}}c=j+4|0}d=c}e=F[d>>2];if(e){c=0}else{e=sa(40);F[e+24>>2]=F[f+8>>2];h=F[f+4>>2];F[e+16>>2]=F[f>>2];F[e+20>>2]=h;F[f>>2]=0;F[f+4>>2]=0;F[f+8>>2]=0;F[e+36>>2]=0;h=e+28|0;F[h>>2]=0;F[h+4>>2]=0;Va(h,F[f+16>>2]-F[f+12>>2]|0);m=F[h>>2];h=F[f+12>>2];ta(m,h,F[f+16>>2]-h|0);F[e+8>>2]=c;F[e>>2]=0;F[e+4>>2]=0;F[d>>2]=e;c=F[F[j>>2]>>2];if(c){F[j>>2]=c;c=F[d>>2]}else{c=e}Tb(F[j+4>>2],c);F[j+8>>2]=F[j+8>>2]+1;c=1}D[g+44|0]=c;F[g+40>>2]=e;c=F[g+28>>2];if(c){F[g+32>>2]=c;ra(c)}if(D[g+27|0]<0){ra(F[g+16>>2])}c=F[g>>2];if(c){F[g+4>>2]=c;ra(c)}ea=g+48|0;d=F[i>>2];if(!d){break r}}F[i+4>>2]=d;ra(d)}if(D[i+27|0]<0){ra(F[i+16>>2])}ea=i+32|0;break p}va();V()}if(!n){break b}b=b+1|0;if((r|0)!=(b|0)){continue}break}}F[k+12>>2]=0;if(!Cb(1,k+12|0,F[a>>2])){break b}b=F[a>>2];c=F[b+8>>2];d=F[b+16>>2];e=c-d|0;f=F[k+12>>2];b=F[b+12>>2]-(F[b+20>>2]+(c>>>0>>0)|0)|0;if(e>>>0>>0&(b|0)<=0|(b|0)<0){break b}c=0;b=F[k+36>>2];if(f){while(1){e=F[k+40>>2];M:{if(e>>>0>b>>>0){F[b+4>>2]=0;F[b>>2]=j;b=b+8|0;F[k+36>>2]=b;break M}d=F[k+32>>2];g=b-d|0;h=g>>3;b=h+1|0;if(b>>>0>=536870912){break d}e=e-d|0;n=e>>2;b=e>>>0<2147483640?b>>>0>n>>>0?b:n:536870911;if(b>>>0>=536870912){break c}m=h<<3;h=b<<3;e=sa(h);b=m+e|0;F[b+4>>2]=0;F[b>>2]=j;b=b+8|0;if((g|0)>0){ta(e,d,g)}F[k+40>>2]=e+h;F[k+36>>2]=b;F[k+32>>2]=e;if(!d){break M}ra(d)}c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(F[k+32>>2]!=(b|0)){continue}break}a=1;break a}va();V()}wa(1336);V()}b=F[k+32>>2];a=0}if(b){ra(b)}ea=k+48|0;return a}function re(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=ea-32|0;ea=h;F[b+32>>2]=d;F[b+40>>2]=c;F[b+4>>2]=e;oc(a,d,h+16|0);a:{if(F[a>>2]){break a}i=a+4|0;if(D[a+15|0]<0){ra(F[i>>2])}d=G[h+23|0];if((ga[F[F[b>>2]+8>>2]](b)|0)!=(d|0)){b=sa(64);c=G[1458]|G[1459]<<8;D[b+48|0]=c;D[b+49|0]=c>>>8;c=G[1454]|G[1455]<<8|(G[1456]<<16|G[1457]<<24);d=G[1450]|G[1451]<<8|(G[1452]<<16|G[1453]<<24);D[b+40|0]=d;D[b+41|0]=d>>>8;D[b+42|0]=d>>>16;D[b+43|0]=d>>>24;D[b+44|0]=c;D[b+45|0]=c>>>8;D[b+46|0]=c>>>16;D[b+47|0]=c>>>24;c=G[1446]|G[1447]<<8|(G[1448]<<16|G[1449]<<24);d=G[1442]|G[1443]<<8|(G[1444]<<16|G[1445]<<24);D[b+32|0]=d;D[b+33|0]=d>>>8;D[b+34|0]=d>>>16;D[b+35|0]=d>>>24;D[b+36|0]=c;D[b+37|0]=c>>>8;D[b+38|0]=c>>>16;D[b+39|0]=c>>>24;c=G[1438]|G[1439]<<8|(G[1440]<<16|G[1441]<<24);d=G[1434]|G[1435]<<8|(G[1436]<<16|G[1437]<<24);D[b+24|0]=d;D[b+25|0]=d>>>8;D[b+26|0]=d>>>16;D[b+27|0]=d>>>24;D[b+28|0]=c;D[b+29|0]=c>>>8;D[b+30|0]=c>>>16;D[b+31|0]=c>>>24;c=G[1430]|G[1431]<<8|(G[1432]<<16|G[1433]<<24);d=G[1426]|G[1427]<<8|(G[1428]<<16|G[1429]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1422]|G[1423]<<8|(G[1424]<<16|G[1425]<<24);d=G[1418]|G[1419]<<8|(G[1420]<<16|G[1421]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1414]|G[1415]<<8|(G[1416]<<16|G[1417]<<24);d=G[1410]|G[1411]<<8|(G[1412]<<16|G[1413]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+50|0]=0;F[a>>2]=-1;Ba(i,b,50);ra(b);break a}c=G[h+21|0];D[b+36|0]=c;e=G[h+22|0];D[b+37|0]=e;if((c-3&255)>>>0<=253){b=sa(32);c=G[1571]|G[1572]<<8|(G[1573]<<16|G[1574]<<24);d=G[1567]|G[1568]<<8|(G[1569]<<16|G[1570]<<24);D[b+14|0]=d;D[b+15|0]=d>>>8;D[b+16|0]=d>>>16;D[b+17|0]=d>>>24;D[b+18|0]=c;D[b+19|0]=c>>>8;D[b+20|0]=c>>>16;D[b+21|0]=c>>>24;c=G[1565]|G[1566]<<8|(G[1567]<<16|G[1568]<<24);d=G[1561]|G[1562]<<8|(G[1563]<<16|G[1564]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1557]|G[1558]<<8|(G[1559]<<16|G[1560]<<24);d=G[1553]|G[1554]<<8|(G[1555]<<16|G[1556]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+22|0]=0;F[a>>2]=-5;Ba(i,b,22);ra(b);break a}if(!((c|0)!=2|e>>>0<=(d?2:3)>>>0)){b=sa(32);c=G[1548]|G[1549]<<8|(G[1550]<<16|G[1551]<<24);d=G[1544]|G[1545]<<8|(G[1546]<<16|G[1547]<<24);D[b+14|0]=d;D[b+15|0]=d>>>8;D[b+16|0]=d>>>16;D[b+17|0]=d>>>24;D[b+18|0]=c;D[b+19|0]=c>>>8;D[b+20|0]=c>>>16;D[b+21|0]=c>>>24;c=G[1542]|G[1543]<<8|(G[1544]<<16|G[1545]<<24);d=G[1538]|G[1539]<<8|(G[1540]<<16|G[1541]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1534]|G[1535]<<8|(G[1536]<<16|G[1537]<<24);d=G[1530]|G[1531]<<8|(G[1532]<<16|G[1533]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+22|0]=0;F[a>>2]=-5;Ba(i,b,22);ra(b);break a}c=e|c<<8;E[F[b+32>>2]+38>>1]=c;b:{if((c&65535)>>>0<259|E[h+26>>1]>=0){break b}j=ea-16|0;ea=j;e=sa(36);c=e;F[c+4>>2]=0;F[c+8>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;c=c+16|0;F[c>>2]=0;F[c+4>>2]=0;F[e>>2]=e+4;F[e+32>>2]=0;F[e+12>>2]=c;F[j>>2]=0;d=F[b+32>>2];k=ea-16|0;ea=k;c=0;c:{if(!e){break c}F[j>>2]=d;F[k+12>>2]=0;c=0;if(!Cb(1,k+12|0,d)){break c}n=F[k+12>>2];if(n){while(1){d:{if(Cb(1,k+8|0,F[j>>2])){c=sa(28);F[c+4>>2]=0;F[c+8>>2]=0;d=c+16|0;F[d>>2]=0;F[d+4>>2]=0;F[c>>2]=c+4;F[c+12>>2]=d;F[c+24>>2]=F[k+8>>2];if($d(j,c)){break d}Qa(c+12|0,F[c+16>>2]);Pa(c,F[c+4>>2]);ra(c)}c=0;break c}f=ea-16|0;ea=f;F[f+8>>2]=c;e:{if(!c){F[f+8>>2]=0;break e}d=F[e+28>>2];f:{if(d>>>0>2]){F[f+8>>2]=0;F[d>>2]=c;F[e+28>>2]=d+4;break f}d=0;g:{h:{i:{g=F[e+24>>2];m=F[e+28>>2]-g>>2;c=m+1|0;if(c>>>0<1073741824){g=F[e+32>>2]-g|0;l=g>>1;c=g>>>0<2147483644?c>>>0>l>>>0?c:l:1073741823;if(c){if(c>>>0>=1073741824){break i}d=sa(c<<2)}l=F[f+8>>2];F[f+8>>2]=0;g=(m<<2)+d|0;F[g>>2]=l;m=(c<<2)+d|0;l=g+4|0;d=F[e+28>>2];c=F[e+24>>2];if((d|0)==(c|0)){break h}while(1){d=d-4|0;p=F[d>>2];F[d>>2]=0;g=g-4|0;F[g>>2]=p;if((c|0)!=(d|0)){continue}break}F[e+32>>2]=m;d=F[e+28>>2];F[e+28>>2]=l;c=F[e+24>>2];F[e+24>>2]=g;if((c|0)==(d|0)){break g}while(1){d=d-4|0;g=F[d>>2];F[d>>2]=0;if(g){Qa(g+12|0,F[g+16>>2]);Pa(g,F[g+4>>2]);ra(g)}if((c|0)!=(d|0)){continue}break}break g}va();V()}wa(1336);V()}F[e+32>>2]=m;F[e+28>>2]=l;F[e+24>>2]=g}if(c){ra(c)}}c=F[f+8>>2];F[f+8>>2]=0;if(!c){break e}Qa(c+12|0,F[c+16>>2]);Pa(c,F[c+4>>2]);ra(c)}ea=f+16|0;o=o+1|0;if((n|0)!=(o|0)){continue}break}}c=$d(j,e)}ea=k+16|0;j:{if(c){d=F[b+4>>2];c=F[d+4>>2];F[d+4>>2]=e;if(c){Tc(c)}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;break j}c=sa(32);d=G[1723]|G[1724]<<8;D[c+24|0]=d;D[c+25|0]=d>>>8;d=G[1719]|G[1720]<<8|(G[1721]<<16|G[1722]<<24);f=G[1715]|G[1716]<<8|(G[1717]<<16|G[1718]<<24);D[c+16|0]=f;D[c+17|0]=f>>>8;D[c+18|0]=f>>>16;D[c+19|0]=f>>>24;D[c+20|0]=d;D[c+21|0]=d>>>8;D[c+22|0]=d>>>16;D[c+23|0]=d>>>24;d=G[1711]|G[1712]<<8|(G[1713]<<16|G[1714]<<24);f=G[1707]|G[1708]<<8|(G[1709]<<16|G[1710]<<24);D[c+8|0]=f;D[c+9|0]=f>>>8;D[c+10|0]=f>>>16;D[c+11|0]=f>>>24;D[c+12|0]=d;D[c+13|0]=d>>>8;D[c+14|0]=d>>>16;D[c+15|0]=d>>>24;d=G[1703]|G[1704]<<8|(G[1705]<<16|G[1706]<<24);f=G[1699]|G[1700]<<8|(G[1701]<<16|G[1702]<<24);D[c|0]=f;D[c+1|0]=f>>>8;D[c+2|0]=f>>>16;D[c+3|0]=f>>>24;D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;D[c+26|0]=0;F[a>>2]=-1;Ba(a+4|0,c,26);ra(c);F[j+8>>2]=0;Tc(e)}ea=j+16|0;if(F[a>>2]){break a}if(D[i+11|0]>=0){break b}ra(F[i>>2])}if(!(ga[F[F[b>>2]+12>>2]](b)|0)){b=sa(48);D[b+32|0]=G[1528];c=G[1524]|G[1525]<<8|(G[1526]<<16|G[1527]<<24);d=G[1520]|G[1521]<<8|(G[1522]<<16|G[1523]<<24);D[b+24|0]=d;D[b+25|0]=d>>>8;D[b+26|0]=d>>>16;D[b+27|0]=d>>>24;D[b+28|0]=c;D[b+29|0]=c>>>8;D[b+30|0]=c>>>16;D[b+31|0]=c>>>24;c=G[1516]|G[1517]<<8|(G[1518]<<16|G[1519]<<24);d=G[1512]|G[1513]<<8|(G[1514]<<16|G[1515]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1508]|G[1509]<<8|(G[1510]<<16|G[1511]<<24);d=G[1504]|G[1505]<<8|(G[1506]<<16|G[1507]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1500]|G[1501]<<8|(G[1502]<<16|G[1503]<<24);d=G[1496]|G[1497]<<8|(G[1498]<<16|G[1499]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+33|0]=0;F[a>>2]=-1;Ba(i,b,33);ra(b);break a}if(!(ga[F[F[b>>2]+20>>2]](b)|0)){b=nc(h,1726);F[a>>2]=-1;if(D[b+11|0]>=0){a=F[h+4>>2];F[i>>2]=F[h>>2];F[i+4>>2]=a;F[i+8>>2]=F[h+8>>2];break a}Ba(i,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break a}ra(F[b>>2]);break a}if(!(ga[F[F[b>>2]+24>>2]](b)|0)){b=nc(h,1461);F[a>>2]=-1;if(D[b+11|0]>=0){a=F[h+4>>2];F[i>>2]=F[h>>2];F[i+4>>2]=a;F[i+8>>2]=F[h+8>>2];break a}Ba(i,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break a}ra(F[b>>2]);break a}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ea=h+32|0}function xf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=M(0),p=0,q=0,r=0;f=ea-720|0;ea=f;a:{b:{c:{d:{e:{f:{g:{h:{if(H[b+38>>1]>=515){F[f+680>>2]=0;F[f+672>>2]=0;F[f+676>>2]=0;if((ga[F[F[a>>2]+24>>2]](a)|0)<=0){break d}while(1){c=ga[F[F[a>>2]+20>>2]](a,k)|0;d=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];if(F[d+28>>2]==9){e=F[f+672>>2];c=F[f+676>>2]-e>>2;g=D[d+24|0];i:{if(c>>>0>>0){Aa(f+672|0,g-c|0);break i}if(c>>>0<=g>>>0){break i}F[f+676>>2]=e+(g<<2)}h=0;c=F[b+20>>2];j=F[b+16>>2];d=g<<2;i=j+d|0;e=F[b+12>>2];c=d>>>0>i>>>0?c+1|0:c;if(i>>>0>I[b+8>>2]&(e|0)<=(c|0)|(c|0)>(e|0)){break b}ta(F[f+672>>2],j+F[b>>2]|0,d);c=F[b+20>>2];e=d+F[b+16>>2]|0;c=e>>>0>>0?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;l=F[b+12>>2];j=l;i=e+4|0;d=i>>>0<4?c+1|0:c;m=F[b+8>>2];if(m>>>0>>0&(d|0)>=(j|0)|(d|0)>(j|0)){break b}n=F[b>>2];j=n+e|0;j=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=d;if((d|0)>=(l|0)&i>>>0>=m>>>0|(d|0)>(l|0)){break b}d=G[i+n|0];e=e+5|0;c=e>>>0<5?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;if(d>>>0>31){break b}o=(z(2,j),A());F[f+20>>2]=-1;F[f+16>>2]=1140;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;c=f+16|0;e=F[f+672>>2];i=d-1|0;if(i>>>0<=29){F[c+4>>2]=d;Ca(c+8|0,e,e+(g<<2)|0);J[c+20>>2]=o}j:{if(i>>>0>=30){break j}if(!Wc(f+16|0,F[F[a+60>>2]+((F[a+40>>2]-F[a+36>>2]|0)/24<<2)>>2])){break j}c=F[a+40>>2];k:{if((c|0)!=F[a+44>>2]){F[c>>2]=1140;d=F[f+20>>2];F[c+16>>2]=0;F[c+8>>2]=0;F[c+12>>2]=0;F[c+4>>2]=d;g=F[f+28>>2]-F[f+24>>2]|0;if(g){if((g|0)<0){break h}d=sa(g);F[c+8>>2]=d;F[c+12>>2]=d;F[c+16>>2]=d+(g>>2<<2);e=F[f+24>>2];g=F[f+28>>2]-e|0;if((g|0)>0){d=ta(d,e,g)+g|0}F[c+12>>2]=d}J[c+20>>2]=J[f+36>>2];F[a+40>>2]=c+24;break k}c=0;l:{m:{n:{o:{g=F[a+40>>2];h=F[a+36>>2];e=(g-h|0)/24|0;d=e+1|0;if(d>>>0<178956971){i=(F[a+44>>2]-h|0)/24|0;j=i<<1;i=i>>>0<89478485?d>>>0>j>>>0?d:j:178956970;if(i){if(i>>>0>=178956971){break o}c=sa(L(i,24))}e=L(e,24)+c|0;F[e>>2]=1140;d=F[f+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+4>>2]=d;l=F[f+24>>2];d=F[f+28>>2]-l|0;if(d){if((d|0)<0){break n}j=sa(d);F[e+8>>2]=j;F[e+16>>2]=j+(d>>2<<2);q=e,r=ta(j,l,d)+d|0,F[q+12>>2]=r}c=L(i,24)+c|0;J[e+20>>2]=J[f+36>>2];d=e+24|0;if((g|0)==(h|0)){break m}while(1){e=e-24|0;F[e>>2]=1140;F[e+4>>2]=F[g-20>>2];i=g-16|0;F[e+8>>2]=F[i>>2];F[e+12>>2]=F[g-12>>2];j=g-8|0;F[e+16>>2]=F[j>>2];F[j>>2]=0;F[i>>2]=0;F[i+4>>2]=0;J[e+20>>2]=J[g-4>>2];g=g-24|0;if((h|0)!=(g|0)){continue}break}F[a+44>>2]=c;h=F[a+40>>2];F[a+40>>2]=d;g=F[a+36>>2];F[a+36>>2]=e;if((g|0)==(h|0)){break l}while(1){h=h-24|0;ga[F[F[h>>2]>>2]](h)|0;if((g|0)!=(h|0)){continue}break}break l}va();V()}wa(1336);V()}va();V()}F[a+44>>2]=c;F[a+40>>2]=d;F[a+36>>2]=e}if(g){ra(g)}}h=1}F[f+16>>2]=1140;c=F[f+24>>2];if(c){F[f+28>>2]=c;ra(c)}if(!h){break c}}k=k+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(k|0)){continue}break}break d}i=ga[F[F[a>>2]+24>>2]](a)|0;F[f+712>>2]=0;F[f+704>>2]=0;F[f+708>>2]=0;if(i){if(i>>>0>=214748365){break g}c=L(i,20);d=sa(c);F[f+704>>2]=d;F[f+712>>2]=c+d;c=L((c-20>>>0)/20|0,20)+20|0;q=f,r=ua(d,0,c)+c|0,F[q+708>>2]=r;while(1){c=ga[F[F[a>>2]+20>>2]](a,k)|0;d=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];g=F[d+28>>2];c=g-1|0;if(c>>>0<=10){c=F[(c<<2)+13616>>2]}else{c=-1}j=(c|0)>0?c:0;if(j>>>0>4){break e}c=F[f+704>>2]+L(k,20)|0;l=D[d+24|0];F[c+16>>2]=l;F[c+12>>2]=j;F[c+8>>2]=g;F[c+4>>2]=e;F[c>>2]=d;e=e+l|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}c=ga[F[F[a>>2]+20>>2]](a,0)|0;m=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];D[m+84|0]=1;F[m+72>>2]=F[m+68>>2];g=F[b+12>>2];c=g;d=F[b+20>>2];j=F[b+8>>2];k=F[b+16>>2];if((c|0)<=(d|0)&j>>>0<=k>>>0|(c|0)<(d|0)){break e}n=F[b>>2];p=G[n+k|0];c=d;l=k+1|0;c=l?c:c+1|0;F[b+16>>2]=l;F[b+20>>2]=c;p:{switch(p|0){case 0:q:{if(j>>>0<=l>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break q}c=d;a=k+2|0;c=a>>>0<2?c+1|0:c;F[b+16>>2]=a;F[b+20>>2]=c;c=d;d=k+6|0;c=d>>>0<6?c+1|0:c;if(d>>>0>j>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break q}a=a+n|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;qb(m,a);h=f+672|0;F[h+20>>2]=0;F[h+12>>2]=0;F[h+16>>2]=0;F[h>>2]=0;F[h+4>>2]=0;F[h+20>>2]=a;k=Bc(f+16|0,f+704|0);g=0;e=ea-32|0;ea=e;F[e+24>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;a=F[b+12>>2];j=a;c=F[b+20>>2];d=c;l=F[b+16>>2];i=l+4|0;c=i>>>0<4?c+1|0:c;m=F[b+8>>2];r:{if(m>>>0>>0&(a|0)<=(c|0)|(a|0)<(c|0)){break r}n=F[b>>2];a=n+l|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;s:{t:{switch(a-2|0){case 1:if((c|0)>=(j|0)&i>>>0>=m>>>0|(c|0)>(j|0)){break r}a=D[i+n|0];c=d;d=l+5|0;c=d>>>0<5?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;F[h+8>>2]=a;if((a|0)==1){if(Sd(h,b,e+16|0)){break s}break r}Pd(1943,23,F[3451]);break r;default:Pd(1918,24,F[3451]);break r;case 0:break t}}if(!Sd(h,b,e+16|0)){break r}}F[e+8>>2]=F[e+16>>2];F[e>>2]=F[e+20>>2];a=ea-32|0;ea=a;b=F[h>>2];o=J[h+4>>2];g=a+24|0;F[g>>2]=1065353216;b=-1<0){J[g>>2]=o/M(b|0)}h=F[e+8>>2];if((h|0)!=F[e>>2]){c=F[k+28>>2];while(1){d=F[h>>2];i=F[h+4>>2];o=J[g>>2];J[a+16>>2]=o*M(F[h+8>>2]-b|0);J[a+12>>2]=o*M(i-b|0);J[a+8>>2]=o*M(d-b|0);i=F[k+16>>2];d=F[i>>2];if(!G[d+84|0]){c=F[F[d+68>>2]+(c<<2)>>2]}j=c;c=F[d+40>>2];ta(F[F[d>>2]>>2]+L(j,c)|0,(a+8|0)+(F[i+4>>2]<<2)|0,c);c=F[k+28>>2]+1|0;F[k+28>>2]=c;h=h+12|0;if((h|0)!=F[e>>2]){continue}break}}ea=a+32|0;g=1}a=F[e+16>>2];if(a){F[e+20>>2]=a;ra(a)}ea=e+32|0;zc(k);h=1;if(g){break e}}h=0;break e;case 1:break p;default:break e}}if(j>>>0<=l>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break e}l=G[l+n|0];c=d;m=k+2|0;c=m>>>0<2?c+1|0:c;F[b+16>>2]=m;F[b+20>>2]=c;if(l>>>0>=7){F[f>>2]=l;Od(1795,f);break e}c=d;d=k+6|0;c=d>>>0<6?c+1|0:c;k=d;if(d>>>0>j>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break e}d=m+n|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=k;F[b+20>>2]=c;if(i){k=0;while(1){c=ga[F[F[a>>2]+20>>2]](a,k)|0;c=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];qb(c,d);D[c+84|0]=1;F[c+72>>2]=F[c+68>>2];k=k+1|0;if((i|0)!=(k|0)){continue}break}}a=Bc(f+672|0,f+704|0);u:{v:{switch(l|0){case 1:c=zb(f+16|0,e);b=Ad(c,b,a);Ab(c);if(!b){break f}break u;case 2:c=xb(f+16|0,e);b=zd(c,b,a);yb(c);if(!b){break f}break u;case 3:c=xb(f+16|0,e);b=yd(c,b,a);yb(c);if(!b){break f}break u;case 4:c=ab(f+16|0,e);b=xd(c,b,a);bb(c);if(!b){break f}break u;case 5:c=ab(f+16|0,e);b=wd(c,b,a);bb(c);if(!b){break f}break u;case 6:c=ab(f+16|0,e);b=vd(c,b,a);bb(c);if(b){break u}break f;case 0:break v;default:break f}}c=zb(f+16|0,e);b=Bd(c,b,a);Ab(c);if(!b){break f}}zc(a);h=1;break e}va();V()}va();V()}zc(a)}a=F[f+704>>2];if(!a){break a}F[f+708>>2]=a;ra(a);break a}if(F[a+52>>2]==F[a+48>>2]){h=1;break b}k=0;while(1){if(!ud(1,f+16|0,b)){break c}h=1;c=F[a+48>>2];d=F[f+16>>2];F[c+(k<<2)>>2]=d>>>1^0-(d&1);k=k+1|0;if(k>>>0>2]-c>>2>>>0){continue}break}break b}h=0}a=F[f+672>>2];if(!a){break a}F[f+676>>2]=a;ra(a)}ea=f+720|0;return h|0}function Bd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?d+1|0:d;j=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=j+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=h;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!h){return 1}h=0;F[a+8>>2]=0;if(!ya(a+16|0,b)){break a}if(!ya(a+36|0,b)){break a}if(!ya(a+56|0,b)){break a}if(!ya(a+76|0,b)){break a}r=F[a+4>>2];i=c;b=0;c=0;e=ea-32|0;ea=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=sa(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;ua(b,0,d);F[e+12>>2]=c}d=F[f+120>>2];h=F[d>>2];if(h){F[d+4>>2]=h;ra(h);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=sa(a);F[e+8>>2]=g;b=a+g|0;F[e+16>>2]=b;ua(g,0,a);F[e+12>>2]=b}a=F[f+132>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=r;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}while(1){k=F[e+12>>2];d=F[e+24>>2];g=a-1|0;b=d+g|0;c=(b>>>0)/341|0;c=F[k+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;b=F[c+8>>2];h=F[c+4>>2];j=F[c>>2];F[e+28>>2]=g;c=F[e+16>>2];g=c-k|0;if(((g?L(g>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){ra(F[c-4>>2]);F[e+16>>2]=F[e+16>>2]-4}d=0;if(j>>>0>r>>>0){break e}a=F[f+12>>2];g=(h|0)==(a-1|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}l=L(b,12);m=l+F[f+132>>2]|0;k=l+F[f+120>>2]|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){if(!j){break g}m=0;a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=j+F[i+28>>2];F[f+8>>2]=a+j;break g}while(1){h=0;h:{if((a|0)==(g|0)){break h}while(1){d=L(h,20)+a|0;c=F[k>>2]+(F[d+4>>2]<<2)|0;l=F[d>>2];g=F[d+12>>2];i:{if(g>>>0>3){break i}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break i}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break h}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((j|0)==(m|0)){break g}a=F[i+16>>2];g=F[i+20>>2];continue}}j:{k:{l:{m:{if(j>>>0<=2){c=F[f+108>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+120>>2];n=b+1|0;m=L(n,12);d=a+m|0;if((d|0)!=(k|0)){Ca(d,F[k>>2],F[k+4>>2]);a=F[f+120>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>2];h=32-c|0;n:{if((a|0)<=(h|0)){h=F[f+28>>2];if((h|0)==F[f+20>>2]){d=0;break n}d=F[h>>2];k=a+c|0;F[f+32>>2]=k;d=d<>>32-a|0;if((k|0)!=32){break n}F[f+32>>2]=0;F[f+28>>2]=h+4;break n}d=F[f+28>>2];k=d+4|0;if((k|0)==F[f+20>>2]){d=0;break n}q=F[d>>2];F[f+28>>2]=k;h=a-h|0;F[f+32>>2]=h;d=F[d+4>>2]>>>32-h|q<>>32-a}a=(j>>>1|0)-d|0;d=j-a|0;o:{if((d|0)==(a|0)){d=a;break o}c=F[f+88>>2];if((c|0)==F[f+80>>2]){break l}h=F[c>>2];j=F[f+92>>2];k=j+1|0;F[f+92>>2]=k;h=h&-2147483648>>>j;p:{if((k|0)==32){F[f+92>>2]=0;F[f+88>>2]=c+4;if(h){break p}break l}if(!h){break l}}}h=d;d=a;break k}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break j}h=a}a=F[f+132>>2];c=a+l|0;j=F[c>>2];k=j+o|0;F[k>>2]=F[k>>2]+1;Ca(a+m|0,j,F[c+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];j=F[e+16>>2]-c|0;if((a|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}j=c;c=(a>>>0)/341|0;a=F[j+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;F[a+8>>2]=b;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!h){break g}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=h;a=F[e+28>>2]+1|0;F[e+28>>2]=a;break f}o=0;if(!j){break g}while(1){if(a){h=F[f+40>>2];d=F[f+96>>2];q=F[f+108>>2];t=F[k>>2];u=F[m>>2];a=0;while(1){g=q+(a<<2)|0;F[d+(F[g>>2]<<2)>>2]=0;c=F[g>>2]<<2;b=F[f>>2]-F[c+u>>2]|0;q:{if(!b){break q}c=c+d|0;l=F[f+52>>2];p=32-l|0;if((p|0)>=(b|0)){n=F[f+48>>2];if((n|0)==(h|0)){F[c>>2]=0;break q}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+52>>2]|0;F[f+52>>2]=b;if((b|0)!=32){break q}F[f+52>>2]=0;F[f+48>>2]=n+4;break q}n=F[f+48>>2];s=n+4|0;if((h|0)==(s|0)){F[c>>2]=0;break q}v=F[n>>2];F[f+48>>2]=s;p=b-p|0;F[f+52>>2]=p;F[c>>2]=F[n+4>>2]>>>32-p|v<>>32-b}b=F[g>>2]<<2;c=b+d|0;F[c>>2]=F[c>>2]|F[b+t>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];r:{if((a|0)==F[i+20>>2]){break r}while(1){d=L(h,20)+a|0;c=F[f+96>>2]+(F[d+4>>2]<<2)|0;l=F[d>>2];g=F[d+12>>2];s:{if(g>>>0>3){break s}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break s}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break r}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((j|0)==(o|0)){break g}a=F[f+12>>2];continue}}a=F[e+28>>2]}if(a){continue}break}d=1}F[e+28>>2]=0;g=F[e+16>>2];a=F[e+12>>2];b=g-a|0;if(b>>>0>=9){while(1){ra(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;g=F[e+16>>2];b=g-a|0;if(b>>>0>8){continue}break}}c=170;t:{switch((b>>>2|0)-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break t}}u:{if((a|0)==(g|0)){break u}while(1){ra(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break u}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}h=d}return h}function Ad(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?f+1|0:f;k=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=k+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=g;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!g){return 1}g=0;F[a+8>>2]=0;if(!ya(a+16|0,b)){break a}if(!ya(a+36|0,b)){break a}if(!ya(a+56|0,b)){break a}if(!ya(a+76|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;e=ea-32|0;ea=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=sa(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;ua(b,0,d);F[e+12>>2]=c}d=F[f+120>>2];g=F[d>>2];if(g){F[d+4>>2]=g;ra(g);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;h=sa(a);F[e+8>>2]=h;b=a+h|0;F[e+16>>2]=b;ua(h,0,a);F[e+12>>2]=b}a=F[f+132>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;h=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=h;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}while(1){j=F[e+12>>2];d=F[e+24>>2];h=a-1|0;b=d+h|0;c=(b>>>0)/341|0;b=F[j+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;c=F[b+8>>2];g=F[b+4>>2];k=F[b>>2];F[e+28>>2]=h;b=F[e+16>>2];h=b-j|0;if(((h?L(h>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(k>>>0>p>>>0){d=0;break e}d=0;a=F[f+12>>2];h=(g|0)==(a-1|0)?0:g+1|0;if(h>>>0>=a>>>0){break e}a=F[f+120>>2];b=L(c,12);m=a+b|0;f:{g:{j=h<<2;q=b+F[f+132>>2]|0;g=F[f>>2]-F[j+F[q>>2]>>2]|0;if(!g){if(!k){break g}a=F[i+16>>2];h=F[i+20>>2];if((a|0)==(h|0)){a=F[f+8>>2];F[i+28>>2]=k+F[i+28>>2];F[f+8>>2]=a+k;break g}while(1){g=0;h:{if((a|0)==(h|0)){break h}while(1){j=L(g,20)+a|0;c=F[m>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];h=F[j+12>>2];i:{if(h>>>0>3){break i}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break i}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[j+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break h}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[i+16>>2];if(g>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;d=d+1|0;if((k|0)==(d|0)){break g}a=F[i+16>>2];h=F[i+20>>2];continue}}j:{k:{l:{m:{if(k>>>0<=2){c=F[f+108>>2];F[c>>2]=h;b=1;a=F[f+12>>2];if(a>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}d=a;a=b+12|0;Ca(d+a|0,F[m>>2],F[m+4>>2]);a=j+F[a+F[f+120>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2];l=32-d|0;n:{if((a|0)<=(l|0)){g=F[f+28>>2];if((g|0)==F[f+20>>2]){d=0;break n}l=F[g>>2];m=a+d|0;F[f+32>>2]=m;d=l<>>32-a|0;if((m|0)!=32){break n}F[f+32>>2]=0;F[f+28>>2]=g+4;break n}g=F[f+28>>2];m=g+4|0;if((m|0)==F[f+20>>2]){d=0;break n}n=F[g>>2];F[f+28>>2]=m;l=a-l|0;F[f+32>>2]=l;d=F[g+4>>2]>>>32-l|n<>>32-a}l=c+1|0;a=(k>>>1|0)-d|0;d=k-a|0;o:{if((d|0)==(a|0)){d=a;break o}g=F[f+88>>2];if((g|0)==F[f+80>>2]){break l}k=F[g>>2];m=F[f+92>>2];n=m+1|0;F[f+92>>2]=n;k=k&-2147483648>>>m;p:{if((n|0)==32){F[f+92>>2]=0;F[f+88>>2]=g+4;if(k){break p}break l}if(!k){break l}}}g=d;d=a;break k}while(1){h=(a-1|0)==(h|0)?0:h+1|0;F[c+(b<<2)>>2]=h;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break j}g=a}a=F[f+132>>2];b=a+b|0;k=F[b>>2];j=k+j|0;F[j>>2]=F[j>>2]+1;Ca(a+L(l,12)|0,k,F[b+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];k=F[e+16>>2]-b|0;if((a|0)==((k?L(k>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}k=b;b=(a>>>0)/341|0;a=F[k+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=h;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!g){break g}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=h;F[a>>2]=g;a=F[e+28>>2]+1|0;F[e+28>>2]=a;break f}if(!k){break g}while(1){if(a){h=F[f+40>>2];g=F[f+96>>2];s=F[f+108>>2];t=F[m>>2];u=F[q>>2];a=0;while(1){j=(a<<2)+s|0;F[g+(F[j>>2]<<2)>>2]=0;c=F[j>>2]<<2;b=F[f>>2]-F[c+u>>2]|0;q:{if(!b){break q}c=c+g|0;l=F[f+52>>2];o=32-l|0;if((o|0)>=(b|0)){n=F[f+48>>2];if((n|0)==(h|0)){F[c>>2]=0;break q}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+52>>2]|0;F[f+52>>2]=b;if((b|0)!=32){break q}F[f+52>>2]=0;F[f+48>>2]=n+4;break q}n=F[f+48>>2];r=n+4|0;if((h|0)==(r|0)){F[c>>2]=0;break q}v=F[n>>2];F[f+48>>2]=r;o=b-o|0;F[f+52>>2]=o;F[c>>2]=F[n+4>>2]>>>32-o|v<>>32-b}b=F[j>>2]<<2;c=b+g|0;F[c>>2]=F[c>>2]|F[b+t>>2];a=a+1|0;if(a>>>0>2]){continue}break}}g=0;a=F[i+16>>2];r:{if((a|0)==F[i+20>>2]){break r}while(1){j=L(g,20)+a|0;c=F[f+96>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];h=F[j+12>>2];s:{if(h>>>0>3){break s}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break s}a=0;while(1){b=ta(b,(a<<2)+c|0,h);h=F[j+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break r}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[i+16>>2];if(g>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;d=d+1|0;if((k|0)==(d|0)){break g}a=F[f+12>>2];continue}}a=F[e+28>>2]}if(a){continue}break}d=1}F[e+28>>2]=0;h=F[e+16>>2];a=F[e+12>>2];b=h-a|0;if(b>>>0>=9){while(1){ra(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;h=F[e+16>>2];b=h-a|0;if(b>>>0>8){continue}break}}c=170;t:{switch((b>>>2|0)-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break t}}u:{if((a|0)==(h|0)){break u}while(1){ra(F[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break u}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}g=d}return g}function zd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?d+1|0:d;j=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=j+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=h;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!h){return 1}h=0;F[a+8>>2]=0;if(!xa(a+16|0,b)){break a}if(!ya(a+32|0,b)){break a}if(!ya(a+52|0,b)){break a}if(!ya(a+72|0,b)){break a}q=F[a+4>>2];i=c;b=0;c=0;e=ea-32|0;ea=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=sa(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;ua(b,0,d);F[e+12>>2]=c}d=F[f+116>>2];h=F[d>>2];if(h){F[d+4>>2]=h;ra(h);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=sa(a);F[e+8>>2]=g;b=a+g|0;F[e+16>>2]=b;ua(g,0,a);F[e+12>>2]=b}a=F[f+128>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}s=f+16|0;while(1){l=F[e+12>>2];d=F[e+24>>2];g=a-1|0;b=d+g|0;c=(b>>>0)/341|0;c=F[l+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;b=F[c+8>>2];h=F[c+4>>2];j=F[c>>2];F[e+28>>2]=g;c=F[e+16>>2];g=c-l|0;if(((g?L(g>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){ra(F[c-4>>2]);F[e+16>>2]=F[e+16>>2]-4}d=0;if(j>>>0>q>>>0){break e}a=F[f+12>>2];g=(a-1|0)==(h|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}c=L(b,12);m=c+F[f+128>>2]|0;l=c+F[f+116>>2]|0;f:{k=g<<2;h=F[f>>2]-F[k+F[m>>2]>>2]|0;if(!h){if(!j){break f}m=0;a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=j+F[i+28>>2];F[f+8>>2]=a+j;break f}while(1){h=0;g:{if((a|0)==(g|0)){break g}while(1){d=L(h,20)+a|0;c=F[l>>2]+(F[d+4>>2]<<2)|0;k=F[d>>2];g=F[d+12>>2];h:{if(g>>>0>3){break h}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break h}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[k+84|0]?a:F[F[k+68>>2]+(a<<2)>>2];if(a>>>0>=I[k+80>>2]){break g}b=a;a=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((j|0)==(m|0)){break f}a=F[i+16>>2];g=F[i+20>>2];continue}}i:{j:{k:{l:{if(j>>>0<=2){c=F[f+104>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break l}break i}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+116>>2];o=b+1|0;m=L(o,12);d=a+m|0;if((d|0)!=(l|0)){Ca(d,F[l>>2],F[l+4>>2]);a=F[f+116>>2]}a=k+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=0;qc(s,O(j)^31,e+4|0);a=(j>>>1|0)-F[e+4>>2]|0;d=j-a|0;m:{if((d|0)==(a|0)){d=a;break m}h=F[f+84>>2];if((h|0)==F[f+76>>2]){break k}j=F[h>>2];l=F[f+88>>2];n=l+1|0;F[f+88>>2]=n;j=j&-2147483648>>>l;n:{if((n|0)==32){F[f+88>>2]=0;F[f+84>>2]=h+4;if(j){break n}break k}if(!j){break k}}}h=d;d=a;break j}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break i}h=a}a=F[f+128>>2];c=a+c|0;j=F[c>>2];l=j+k|0;F[l>>2]=F[l>>2]+1;Ca(a+m|0,j,F[c+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];j=F[e+16>>2]-c|0;if((a|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}j=c;c=(a>>>0)/341|0;a=F[j+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;F[a+8>>2]=b;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!h){break f}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=o;F[a+4>>2]=g;F[a>>2]=h;F[e+28>>2]=F[e+28>>2]+1;break f}o=0;if(!j){break f}while(1){if(a){h=F[f+36>>2];d=F[f+92>>2];t=F[f+104>>2];u=F[l>>2];v=F[m>>2];a=0;while(1){g=(a<<2)+t|0;F[d+(F[g>>2]<<2)>>2]=0;c=F[g>>2]<<2;b=F[f>>2]-F[c+v>>2]|0;o:{if(!b){break o}c=c+d|0;k=F[f+48>>2];p=32-k|0;if((p|0)>=(b|0)){n=F[f+44>>2];if((n|0)==(h|0)){F[c>>2]=0;break o}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+48>>2]|0;F[f+48>>2]=b;if((b|0)!=32){break o}F[f+48>>2]=0;F[f+44>>2]=n+4;break o}n=F[f+44>>2];r=n+4|0;if((h|0)==(r|0)){F[c>>2]=0;break o}w=F[n>>2];F[f+44>>2]=r;p=b-p|0;F[f+48>>2]=p;F[c>>2]=F[n+4>>2]>>>32-p|w<>>32-b}b=F[g>>2]<<2;c=b+d|0;F[c>>2]=F[c>>2]|F[b+u>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];p:{if((a|0)==F[i+20>>2]){break p}while(1){d=L(h,20)+a|0;c=F[f+92>>2]+(F[d+4>>2]<<2)|0;k=F[d>>2];g=F[d+12>>2];q:{if(g>>>0>3){break q}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break q}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[k+84|0]?a:F[F[k+68>>2]+(a<<2)>>2];if(a>>>0>=I[k+80>>2]){break p}b=a;a=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((j|0)==(o|0)){break f}a=F[f+12>>2];continue}}a=F[e+28>>2];if(a){continue}break}d=1}F[e+28>>2]=0;g=F[e+16>>2];a=F[e+12>>2];b=g-a|0;if(b>>>0>=9){while(1){ra(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;g=F[e+16>>2];b=g-a|0;if(b>>>0>8){continue}break}}c=170;r:{switch((b>>>2|0)-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break r}}s:{if((a|0)==(g|0)){break s}while(1){ra(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break s}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}h=d}return h}function xd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F[b+12>>2];f=F[b+20>>2];e=F[b+16>>2];g=e+4|0;f=g>>>0<4?f+1|0:f;a:{if(g>>>0>I[b+8>>2]&(f|0)>=(h|0)|(f|0)>(h|0)){break a}f=e+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];h=f;g=F[b+16>>2];e=g+4|0;f=e>>>0<4?f+1|0:f;i=e;F[b+16>>2]=e;F[b+20>>2]=f;if(I[a>>2]>32){break a}e=F[b+12>>2];f=h;h=g+8|0;f=h>>>0<8?f+1|0:f;if((e|0)<=(f|0)&h>>>0>I[b+8>>2]|(e|0)<(f|0)){break a}d=i+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!vb(a+16|0,b)){break a}if(!ya(a+544|0,b)){break a}if(!ya(a+564|0,b)){break a}if(!ya(a+584|0,b)){break a}q=F[a+4>>2];h=c;c=0;b=0;e=ea-32|0;ea=e;f=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;c=sa(a);F[e+8>>2]=c;b=a+c|0;F[e+16>>2]=b;ua(c,0,a);F[e+12>>2]=b}a=F[f+628>>2];g=F[a>>2];if(g){F[a+4>>2]=g;ra(g);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[f+12>>2];c=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=c;F[a+8>>2]=F[e+16>>2];c=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;g=sa(a);F[e+8>>2]=g;c=a+g|0;F[e+16>>2]=c;ua(g,0,a);F[e+12>>2]=c}a=F[f+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];c=F[e+12>>2]}F[a+4>>2]=c;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){l=F[e+12>>2];b=F[e+24>>2];g=d-1|0;a=b+g|0;c=(a>>>0)/341|0;a=F[l+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;j=F[a+8>>2];c=F[a+4>>2];i=F[a>>2];F[e+28>>2]=g;a=F[e+16>>2];g=a-l|0;if(((g?L(g>>2,341)-1|0:0)-(b+d|0)|0)+1>>>0>=682){ra(F[a-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(i>>>0>q>>>0){break e}a=F[f+12>>2];g=(a-1|0)==(c|0)?0:c+1|0;if(g>>>0>=a>>>0){break e}k=L(j,12);m=k+F[f+640>>2]|0;l=k+F[f+628>>2]|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){m=0;if(!i){break g}while(1){a=0;d=F[h+16>>2];h:{if((d|0)==F[h+20>>2]){break h}while(1){j=L(a,20)+d|0;b=F[l>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];i:{if(g>>>0>3){break i}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break i}d=0;while(1){c=ta(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}c=F[k+40>>2];ta(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((i|0)!=(m|0)){continue}break}break g}j:{k:{l:{m:{if(i>>>0<=2){a=F[f+616>>2];F[a>>2]=g;c=1;d=F[f+12>>2];if(d>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];n=j+1|0;m=L(n,12);b=a+m|0;if((b|0)!=(l|0)){Ca(b,F[l>>2],F[l+4>>2]);a=F[f+628>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-c|0;d=i-a|0;n:{if((d|0)==(a|0)){b=a;break n}b=F[f+596>>2];if((b|0)==F[f+588>>2]){break l}c=F[b>>2];i=F[f+600>>2];l=i+1|0;F[f+600>>2]=l;c=c&-2147483648>>>i;o:{if((l|0)==32){F[f+600>>2]=0;F[f+596>>2]=b+4;if(c){break o}break l}if(!c){break l}}b=d}d=a;break k}while(1){g=(d-1|0)==(g|0)?0:g+1|0;F[a+(c<<2)>>2]=g;c=c+1|0;d=F[f+12>>2];if(c>>>0>>0){continue}break}break j}b=a}a=F[f+640>>2];c=a+k|0;i=F[c>>2];l=i+o|0;F[l>>2]=F[l>>2]+1;Ca(a+m|0,i,F[c+4>>2]);if(d){c=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];i=F[e+16>>2]-a|0;if((c|0)==((i?L(i>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+24>>2]+F[e+28>>2]|0;i=F[e+12>>2]}else{i=a}a=(c>>>0)/341|0;a=F[i+(a<<2)>>2]+L(c-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}d=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];a=F[e+16>>2]-c|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){za(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;c=F[e+12>>2]}a=(d>>>0)/341|0;a=F[c+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}o=0;if(!i){break g}while(1){if(d){g=F[f+548>>2];c=F[f+604>>2];s=F[f+616>>2];t=F[l>>2];u=F[m>>2];d=0;while(1){j=(d<<2)+s|0;F[c+(F[j>>2]<<2)>>2]=0;b=F[j>>2]<<2;a=F[f>>2]-F[b+u>>2]|0;p:{if(!a){break p}b=b+c|0;k=F[f+560>>2];p=32-k|0;if((p|0)>=(a|0)){n=F[f+556>>2];if((n|0)==(g|0)){F[b>>2]=0;break p}F[b>>2]=F[n>>2]<>>32-a;a=a+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break p}F[f+560>>2]=0;F[f+556>>2]=n+4;break p}n=F[f+556>>2];r=n+4|0;if((g|0)==(r|0)){F[b>>2]=0;break p}v=F[n>>2];F[f+556>>2]=r;p=a-p|0;F[f+560>>2]=p;F[b>>2]=F[n+4>>2]>>>32-p|v<>>32-a}a=F[j>>2]<<2;b=a+c|0;F[b>>2]=F[b>>2]|F[a+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=0;d=F[h+16>>2];q:{if((d|0)==F[h+20>>2]){break q}while(1){j=L(a,20)+d|0;b=F[f+604>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];r:{if(g>>>0>3){break r}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break r}d=0;while(1){c=ta(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}c=F[k+40>>2];ta(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((i|0)==(o|0)){break g}d=F[f+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;g=F[e+16>>2];d=F[e+12>>2];c=g-d|0;if(c>>>0>=9){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;g=F[e+16>>2];c=g-d|0;if(c>>>0>8){continue}break}}a=170;s:{switch((c>>>2|0)-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(g|0)){break t}while(1){ra(F[d>>2]);d=d+4|0;if((g|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break t}F[e+16>>2]=a+(((a-c|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=b}return d} +function yd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=F[b+12>>2];e=F[b+20>>2];i=F[b+16>>2];d=i+4|0;e=d>>>0<4?e+1|0:e;a:{if(d>>>0>I[b+8>>2]&(e|0)>=(f|0)|(e|0)>(f|0)){break a}e=i+F[b>>2]|0;F[a>>2]=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);e=F[b+20>>2];f=e;d=F[b+16>>2];i=d+4|0;e=i>>>0<4?f+1|0:f;k=i;F[b+16>>2]=i;F[b+20>>2]=e;if(I[a>>2]>32){break a}i=F[b+12>>2];e=f;f=d+8|0;e=f>>>0<8?e+1|0:e;if(f>>>0>I[b+8>>2]&(e|0)>=(i|0)|(e|0)>(i|0)){break a}e=k+F[b>>2]|0;h=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a+4>>2]=h;e=F[b+20>>2];f=F[b+16>>2]+4|0;e=f>>>0<4?e+1|0:e;F[b+16>>2]=f;F[b+20>>2]=e;if(!h){return 1}h=0;F[a+8>>2]=0;if(!xa(a+16|0,b)){break a}if(!ya(a+32|0,b)){break a}if(!ya(a+52|0,b)){break a}if(!ya(a+72|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;d=ea-32|0;ea=d;f=a;a=F[a+12>>2];F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}e=a<<2;b=sa(e);F[d+8>>2]=b;c=b+e|0;F[d+16>>2]=c;ua(b,0,e);F[d+12>>2]=c}e=F[f+116>>2];h=F[e>>2];if(h){F[e+4>>2]=h;ra(h);F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=F[d+12>>2];b=F[d+8>>2];a=F[f+12>>2]}F[e+4>>2]=c;F[e>>2]=b;F[e+8>>2]=F[d+16>>2];b=0;F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=sa(a);F[d+8>>2]=g;b=a+g|0;F[d+16>>2]=b;ua(g,0,a);F[d+12>>2]=b}a=F[f+128>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[d+8>>2];b=F[d+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[d+16>>2];F[d+24>>2]=0;F[d+28>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;za(d+8|0);a=F[d+24>>2]+F[d+28>>2]|0;b=(a>>>0)/341|0;a=F[F[d+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;e=1;b=F[d+28>>2];a=b+1|0;F[d+28>>2]=a;e:{if(a>>>0>>0){break e}s=f+16|0;while(1){j=F[d+12>>2];e=F[d+24>>2];g=a-1|0;b=e+g|0;c=(b>>>0)/341|0;b=F[j+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;c=F[b+8>>2];h=F[b+4>>2];k=F[b>>2];F[d+28>>2]=g;b=F[d+16>>2];g=b-j|0;if(((g?L(g>>2,341)-1|0:0)-(a+e|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[d+16>>2]=F[d+16>>2]-4}if(k>>>0>p>>>0){e=0;break e}e=0;a=F[f+12>>2];g=(h|0)==(a-1|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}a=F[f+116>>2];b=L(c,12);n=a+b|0;f:{j=g<<2;q=b+F[f+128>>2]|0;h=F[f>>2]-F[j+F[q>>2]>>2]|0;if(!h){if(!k){break f}a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=k+F[i+28>>2];F[f+8>>2]=a+k;break f}while(1){h=0;g:{if((a|0)==(g|0)){break g}while(1){j=L(h,20)+a|0;c=F[n>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];g=F[j+12>>2];h:{if(g>>>0>3){break h}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break h}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[j+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break g}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((k|0)==(e|0)){break f}a=F[i+16>>2];g=F[i+20>>2];continue}}i:{j:{k:{l:{if(k>>>0<=2){c=F[f+104>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break l}break i}if(I[f+8>>2]>I[f+4>>2]){break e}e=a;a=b+12|0;Ca(e+a|0,F[n>>2],F[n+4>>2]);a=j+F[a+F[f+116>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=0;qc(s,O(k)^31,d+4|0);l=c+1|0;a=(k>>>1|0)-F[d+4>>2]|0;e=k-a|0;m:{if((e|0)==(a|0)){e=a;break m}h=F[f+84>>2];if((h|0)==F[f+76>>2]){break k}k=F[h>>2];n=F[f+88>>2];m=n+1|0;F[f+88>>2]=m;k=k&-2147483648>>>n;n:{if((m|0)==32){F[f+88>>2]=0;F[f+84>>2]=h+4;if(k){break n}break k}if(!k){break k}}}h=e;e=a;break j}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break i}h=a}a=F[f+128>>2];b=a+b|0;k=F[b>>2];j=k+j|0;F[j>>2]=F[j>>2]+1;Ca(a+L(l,12)|0,k,F[b+4>>2]);if(e){a=F[d+28>>2]+F[d+24>>2]|0;b=F[d+12>>2];k=F[d+16>>2]-b|0;if((a|0)==((k?L(k>>2,341)-1|0:0)|0)){za(d+8|0);b=F[d+12>>2];a=F[d+24>>2]+F[d+28>>2]|0}k=b;b=(a>>>0)/341|0;a=F[k+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=g;F[a>>2]=e;F[d+28>>2]=F[d+28>>2]+1}if(!h){break f}a=F[d+28>>2]+F[d+24>>2]|0;b=F[d+12>>2];c=F[d+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){za(d+8|0);b=F[d+12>>2];a=F[d+24>>2]+F[d+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=g;F[a>>2]=h;F[d+28>>2]=F[d+28>>2]+1;break f}if(!k){break f}while(1){if(a){g=F[f+36>>2];h=F[f+92>>2];t=F[f+104>>2];u=F[n>>2];v=F[q>>2];a=0;while(1){j=(a<<2)+t|0;F[h+(F[j>>2]<<2)>>2]=0;c=F[j>>2]<<2;b=F[f>>2]-F[c+v>>2]|0;o:{if(!b){break o}c=c+h|0;l=F[f+48>>2];o=32-l|0;if((o|0)>=(b|0)){m=F[f+44>>2];if((m|0)==(g|0)){F[c>>2]=0;break o}F[c>>2]=F[m>>2]<>>32-b;b=b+F[f+48>>2]|0;F[f+48>>2]=b;if((b|0)!=32){break o}F[f+48>>2]=0;F[f+44>>2]=m+4;break o}m=F[f+44>>2];r=m+4|0;if((g|0)==(r|0)){F[c>>2]=0;break o}w=F[m>>2];F[f+44>>2]=r;o=b-o|0;F[f+48>>2]=o;F[c>>2]=F[m+4>>2]>>>32-o|w<>>32-b}b=F[j>>2]<<2;c=b+h|0;F[c>>2]=F[c>>2]|F[b+u>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];p:{if((a|0)==F[i+20>>2]){break p}while(1){j=L(h,20)+a|0;c=F[f+92>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];g=F[j+12>>2];q:{if(g>>>0>3){break q}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break q}a=0;while(1){b=ta(b,(a<<2)+c|0,g);g=F[j+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break p}b=a;a=F[l+40>>2];ta(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((k|0)==(e|0)){break f}a=F[f+12>>2];continue}}a=F[d+28>>2];if(a){continue}break}e=1}F[d+28>>2]=0;g=F[d+16>>2];a=F[d+12>>2];b=g-a|0;if(b>>>0>=9){while(1){ra(F[a>>2]);a=F[d+12>>2]+4|0;F[d+12>>2]=a;g=F[d+16>>2];b=g-a|0;if(b>>>0>8){continue}break}}c=170;r:{switch((b>>>2|0)-1|0){case 1:c=341;case 0:F[d+24>>2]=c;break;default:break r}}s:{if((a|0)==(g|0)){break s}while(1){ra(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[d+16>>2];b=F[d+12>>2];if((a|0)==(b|0)){break s}F[d+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[d+8>>2];if(a){ra(a)}ea=d+32|0;break b}va();V()}va();V()}h=e}return h}function wd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=F[b+12>>2];f=F[b+20>>2];i=F[b+16>>2];e=i+4|0;f=e>>>0<4?f+1|0:f;a:{if((g|0)<=(f|0)&e>>>0>I[b+8>>2]|(g|0)<(f|0)){break a}f=i+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];g=f;e=F[b+16>>2];i=e+4|0;f=i>>>0<4?g+1|0:g;j=i;F[b+16>>2]=i;F[b+20>>2]=f;if(I[a>>2]>32){break a}i=F[b+12>>2];f=g;g=e+8|0;f=g>>>0<8?f+1|0:f;if(g>>>0>I[b+8>>2]&(f|0)>=(i|0)|(f|0)>(i|0)){break a}d=j+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!vb(a+16|0,b)){break a}if(!ya(a+544|0,b)){break a}if(!ya(a+564|0,b)){break a}if(!ya(a+584|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;e=ea-32|0;ea=e;g=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;b=sa(a);F[e+8>>2]=b;c=a+b|0;F[e+16>>2]=c;ua(b,0,a);F[e+12>>2]=c}a=F[g+628>>2];f=F[a>>2];if(f){F[a+4>>2]=f;ra(f);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[g+12>>2];c=F[e+12>>2];b=F[e+8>>2]}F[a+4>>2]=c;F[a>>2]=b;F[a+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;h=sa(a);F[e+8>>2]=h;b=a+h|0;F[e+16>>2]=b;ua(h,0,a);F[e+12>>2]=b}a=F[g+640>>2];c=F[a>>2];if(c){F[a+4>>2]=c;ra(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;h=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=h;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;c=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){h=F[e+12>>2];c=F[e+24>>2];f=d-1|0;a=c+f|0;b=(a>>>0)/341|0;a=F[h+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;l=F[a+8>>2];b=F[a+4>>2];j=F[a>>2];F[e+28>>2]=f;a=F[e+16>>2];f=a-h|0;if(((f?L(f>>2,341)-1|0:0)-(c+d|0)|0)+1>>>0>=682){ra(F[a-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(j>>>0>p>>>0){c=0;break e}c=0;a=F[g+12>>2];h=(b|0)==(a-1|0)?0:b+1|0;if(h>>>0>=a>>>0){break e}a=F[g+628>>2];k=L(l,12);n=a+k|0;f:{g:{m=h<<2;q=k+F[g+640>>2]|0;b=F[g>>2]-F[m+F[q>>2]>>2]|0;if(!b){a=0;if(!j){break g}while(1){f=0;d=F[i+16>>2];h:{if((d|0)==F[i+20>>2]){break h}while(1){l=L(f,20)+d|0;c=F[n>>2]+(F[l+4>>2]<<2)|0;k=F[l>>2];h=F[l+12>>2];i:{if(h>>>0>3){break i}b=F[i+12>>2];if(!F[l+16>>2]){c=b;break i}d=0;while(1){b=ta(b,(d<<2)+c|0,h);h=F[l+12>>2];b=b+h|0;d=d+1|0;if(d>>>0>2]){continue}break}c=F[i+12>>2]}d=F[i+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}b=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,d)|0,c,b);f=f+1|0;d=F[i+16>>2];if(f>>>0<(F[i+20>>2]-d|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[g+8>>2]=F[g+8>>2]+1;a=a+1|0;if((j|0)!=(a|0)){continue}break}break g}j:{k:{l:{m:{if(j>>>0<=2){a=F[g+616>>2];F[a>>2]=h;b=1;d=F[g+12>>2];if(d>>>0>1){break m}break j}if(I[g+8>>2]>I[g+4>>2]){break e}c=a;a=k+12|0;Ca(c+a|0,F[n>>2],F[n+4>>2]);a=m+F[a+F[g+628>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-b|0;d=j-a|0;n:{if((d|0)==(a|0)){d=a;break n}b=F[g+596>>2];if((b|0)==F[g+588>>2]){break l}f=F[b>>2];j=F[g+600>>2];n=j+1|0;F[g+600>>2]=n;f=f&-2147483648>>>j;o:{if((n|0)==32){F[g+600>>2]=0;F[g+596>>2]=b+4;if(f){break o}break l}if(!f){break l}}}f=d;d=a;break k}while(1){h=(d-1|0)==(h|0)?0:h+1|0;F[a+(b<<2)>>2]=h;b=b+1|0;d=F[g+12>>2];if(b>>>0>>0){continue}break}break j}f=a}a=F[g+640>>2];b=a+k|0;j=F[b>>2];k=j+m|0;F[k>>2]=F[k>>2]+1;Ca(a+L(c,12)|0,j,F[b+4>>2]);if(d){b=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];j=F[e+16>>2]-a|0;if((b|0)==((j?L(j>>2,341)-1|0:0)|0)){za(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=a}a=(b>>>0)/341|0;a=F[j+(a<<2)>>2]+L(b-L(a,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=h;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!f){break g}d=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];a=F[e+16>>2]-b|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){za(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;b=F[e+12>>2]}a=(d>>>0)/341|0;a=F[b+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=h;F[a>>2]=f;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}a=0;if(!j){break g}while(1){if(d){h=F[g+548>>2];f=F[g+604>>2];s=F[g+616>>2];t=F[n>>2];u=F[q>>2];d=0;while(1){l=(d<<2)+s|0;F[f+(F[l>>2]<<2)>>2]=0;c=F[l>>2]<<2;b=F[g>>2]-F[c+u>>2]|0;p:{if(!b){break p}c=c+f|0;k=F[g+560>>2];o=32-k|0;if((o|0)>=(b|0)){m=F[g+556>>2];if((m|0)==(h|0)){F[c>>2]=0;break p}F[c>>2]=F[m>>2]<>>32-b;b=b+F[g+560>>2]|0;F[g+560>>2]=b;if((b|0)!=32){break p}F[g+560>>2]=0;F[g+556>>2]=m+4;break p}m=F[g+556>>2];r=m+4|0;if((h|0)==(r|0)){F[c>>2]=0;break p}v=F[m>>2];F[g+556>>2]=r;o=b-o|0;F[g+560>>2]=o;F[c>>2]=F[m+4>>2]>>>32-o|v<>>32-b}b=F[l>>2]<<2;c=b+f|0;F[c>>2]=F[c>>2]|F[b+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}f=0;d=F[i+16>>2];q:{if((d|0)==F[i+20>>2]){break q}while(1){l=L(f,20)+d|0;c=F[g+604>>2]+(F[l+4>>2]<<2)|0;k=F[l>>2];h=F[l+12>>2];r:{if(h>>>0>3){break r}b=F[i+12>>2];if(!F[l+16>>2]){c=b;break r}d=0;while(1){b=ta(b,(d<<2)+c|0,h);h=F[l+12>>2];b=b+h|0;d=d+1|0;if(d>>>0>2]){continue}break}c=F[i+12>>2]}d=F[i+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}b=F[k+40>>2];ta(F[F[k>>2]>>2]+L(b,d)|0,c,b);f=f+1|0;d=F[i+16>>2];if(f>>>0<(F[i+20>>2]-d|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[g+8>>2]=F[g+8>>2]+1;a=a+1|0;if((j|0)==(a|0)){break g}d=F[g+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}c=1}F[e+28>>2]=0;h=F[e+16>>2];d=F[e+12>>2];b=h-d|0;if(b>>>0>=9){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;h=F[e+16>>2];b=h-d|0;if(b>>>0>8){continue}break}}a=170;s:{switch((b>>>2|0)-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(h|0)){break t}while(1){ra(F[d>>2]);d=d+4|0;if((h|0)!=(d|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break t}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=c}return d}function vd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F[b+12>>2];f=F[b+20>>2];e=F[b+16>>2];g=e+4|0;f=g>>>0<4?f+1|0:f;a:{if(g>>>0>I[b+8>>2]&(f|0)>=(h|0)|(f|0)>(h|0)){break a}f=e+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];h=f;g=F[b+16>>2];e=g+4|0;f=e>>>0<4?f+1|0:f;i=e;F[b+16>>2]=e;F[b+20>>2]=f;if(I[a>>2]>32){break a}e=F[b+12>>2];f=h;h=g+8|0;f=h>>>0<8?f+1|0:f;if((e|0)<=(f|0)&h>>>0>I[b+8>>2]|(e|0)<(f|0)){break a}d=i+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!vb(a+16|0,b)){break a}if(!ya(a+544|0,b)){break a}if(!ya(a+564|0,b)){break a}if(!ya(a+584|0,b)){break a}q=F[a+4>>2];h=c;c=0;b=0;e=ea-32|0;ea=e;f=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;c=sa(a);F[e+8>>2]=c;b=a+c|0;F[e+16>>2]=b;ua(c,0,a);F[e+12>>2]=b}a=F[f+628>>2];g=F[a>>2];if(g){F[a+4>>2]=g;ra(g);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[f+12>>2];c=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=c;F[a+8>>2]=F[e+16>>2];c=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;g=sa(a);F[e+8>>2]=g;c=a+g|0;F[e+16>>2]=c;ua(g,0,a);F[e+12>>2]=c}a=F[f+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;ra(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];c=F[e+12>>2]}F[a+4>>2]=c;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;za(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){l=F[e+12>>2];a=F[e+24>>2];b=d-1|0;c=a+b|0;g=(c>>>0)/341|0;c=F[l+(g<<2)>>2]+L(c-L(g,341)|0,12)|0;j=F[c+8>>2];i=F[c>>2];F[e+28>>2]=b;b=F[e+16>>2];c=b-l|0;if(((c?L(c>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){ra(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(i>>>0>q>>>0){break e}a=F[f+628>>2];k=L(j,12);m=k+F[f+640>>2]|0;g=Td(f,i,m);if(g>>>0>=I[f+12>>2]){break e}l=a+k|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){m=0;if(!i){break g}while(1){a=0;d=F[h+16>>2];h:{if((d|0)==F[h+20>>2]){break h}while(1){j=L(a,20)+d|0;b=F[l>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];i:{if(g>>>0>3){break i}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break i}d=0;while(1){c=ta(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}c=F[k+40>>2];ta(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((i|0)!=(m|0)){continue}break}break g}j:{k:{l:{m:{if(i>>>0<=2){a=F[f+616>>2];F[a>>2]=g;c=1;d=F[f+12>>2];if(d>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];n=j+1|0;m=L(n,12);b=a+m|0;if((b|0)!=(l|0)){Ca(b,F[l>>2],F[l+4>>2]);a=F[f+628>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-c|0;d=i-a|0;n:{if((d|0)==(a|0)){b=a;break n}b=F[f+596>>2];if((b|0)==F[f+588>>2]){break l}c=F[b>>2];i=F[f+600>>2];l=i+1|0;F[f+600>>2]=l;c=c&-2147483648>>>i;o:{if((l|0)==32){F[f+600>>2]=0;F[f+596>>2]=b+4;if(c){break o}break l}if(!c){break l}}b=d}d=a;break k}while(1){g=(d-1|0)==(g|0)?0:g+1|0;F[a+(c<<2)>>2]=g;c=c+1|0;d=F[f+12>>2];if(c>>>0>>0){continue}break}break j}b=a}a=F[f+640>>2];c=a+k|0;i=F[c>>2];l=i+o|0;F[l>>2]=F[l>>2]+1;Ca(a+m|0,i,F[c+4>>2]);if(d){c=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];i=F[e+16>>2]-a|0;if((c|0)==((i?L(i>>2,341)-1|0:0)|0)){za(e+8|0);c=F[e+24>>2]+F[e+28>>2]|0;i=F[e+12>>2]}else{i=a}a=(c>>>0)/341|0;a=F[i+(a<<2)>>2]+L(c-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}d=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];a=F[e+16>>2]-c|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){za(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;c=F[e+12>>2]}a=(d>>>0)/341|0;a=F[c+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}o=0;if(!i){break g}while(1){if(d){g=F[f+548>>2];c=F[f+604>>2];s=F[f+616>>2];t=F[l>>2];u=F[m>>2];d=0;while(1){j=(d<<2)+s|0;F[c+(F[j>>2]<<2)>>2]=0;b=F[j>>2]<<2;a=F[f>>2]-F[b+u>>2]|0;p:{if(!a){break p}b=b+c|0;k=F[f+560>>2];p=32-k|0;if((p|0)>=(a|0)){n=F[f+556>>2];if((n|0)==(g|0)){F[b>>2]=0;break p}F[b>>2]=F[n>>2]<>>32-a;a=a+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break p}F[f+560>>2]=0;F[f+556>>2]=n+4;break p}n=F[f+556>>2];r=n+4|0;if((g|0)==(r|0)){F[b>>2]=0;break p}v=F[n>>2];F[f+556>>2]=r;p=a-p|0;F[f+560>>2]=p;F[b>>2]=F[n+4>>2]>>>32-p|v<>>32-a}a=F[j>>2]<<2;b=a+c|0;F[b>>2]=F[b>>2]|F[a+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=0;d=F[h+16>>2];q:{if((d|0)==F[h+20>>2]){break q}while(1){j=L(a,20)+d|0;b=F[f+604>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];r:{if(g>>>0>3){break r}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break r}d=0;while(1){c=ta(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}c=F[k+40>>2];ta(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((i|0)==(o|0)){break g}d=F[f+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;g=F[e+16>>2];d=F[e+12>>2];c=g-d|0;if(c>>>0>=9){while(1){ra(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;g=F[e+16>>2];c=g-d|0;if(c>>>0>8){continue}break}}a=170;s:{switch((c>>>2|0)-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(g|0)){break t}while(1){ra(F[d>>2]);d=d+4|0;if((g|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break t}F[e+16>>2]=a+(((a-c|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){ra(a)}ea=e+32|0;break b}va();V()}va();V()}d=b}return d}function Nd(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;h=ea-80|0;ea=h;F[h+76>>2]=b;w=h+55|0;r=h+56|0;b=0;a:{b:{c:{d:{e:while(1){if((2147483647-n|0)<(b|0)){break d}n=b+n|0;f:{g:{h:{l=F[h+76>>2];b=l;k=G[b|0];if(k){while(1){i:{f=k&255;j:{if(!f){k=b;break j}if((f|0)!=37){break i}k=b;while(1){if(G[b+1|0]!=37){break j}f=b+2|0;F[h+76>>2]=f;k=k+1|0;g=G[b+2|0];b=f;if((g|0)==37){continue}break}}b=k-l|0;v=2147483647-n|0;if((b|0)>(v|0)){break d}if(a){Bb(a,l,b)}if(b){continue e}q=-1;f=1;b=F[h+76>>2];if(!(D[b+1|0]-48>>>0>=10|G[b+2|0]!=36)){q=D[b+1|0]-48|0;s=1;f=3}b=f+b|0;F[h+76>>2]=b;o=0;j=D[b|0];g=j-32|0;k:{if(g>>>0>31){f=b;break k}f=b;i=1<>2]=f;o=i|o;j=D[b+1|0];g=j-32|0;if(g>>>0>=32){break k}b=f;i=1<>>0>=10){break n}b=F[h+76>>2];if(G[b+2|0]!=36){break n}F[((D[b+1|0]<<2)+e|0)-192>>2]=10;p=F[((D[b+1|0]<<3)+d|0)-384>>2];s=1;b=b+3|0;break m}if(s){break h}s=0;p=0;if(a){b=F[c>>2];F[c>>2]=b+4;p=F[b>>2]}b=F[h+76>>2]+1|0}F[h+76>>2]=b;if((p|0)>=0){break l}p=0-p|0;o=o|8192;break l}p=Ld(h+76|0);if((p|0)<0){break d}b=F[h+76>>2]}f=0;i=-1;g=0;o:{if(G[b|0]!=46){break o}if(G[b+1|0]==42){p:{q:{if(D[b+2|0]-48>>>0>=10){break q}b=F[h+76>>2];if(G[b+3|0]!=36){break q}F[((D[b+2|0]<<2)+e|0)-192>>2]=10;i=F[((D[b+2|0]<<3)+d|0)-384>>2];b=b+4|0;break p}if(s){break h}if(a){b=F[c>>2];F[c>>2]=b+4;i=F[b>>2]}else{i=0}b=F[h+76>>2]+2|0}F[h+76>>2]=b;g=(i^-1)>>>31|0;break o}F[h+76>>2]=b+1;i=Ld(h+76|0);b=F[h+76>>2];g=1}t=g;while(1){m=f;k=28;if(D[b|0]-123>>>0<4294967238){break c}j=b+1|0;F[h+76>>2]=j;f=D[b|0];b=j;f=G[(f+L(m,58)|0)+13743|0];if(f-1>>>0<8){continue}break}r:{s:{if((f|0)!=27){if(!f){break c}if((q|0)>=0){F[(q<<2)+e>>2]=f;b=(q<<3)+d|0;f=F[b+4>>2];F[h+64>>2]=F[b>>2];F[h+68>>2]=f;break s}if(!a){break f}Kd(h- -64|0,f,c);j=F[h+76>>2];break r}if((q|0)>=0){break c}}b=0;if(!a){continue e}}g=o&-65537;f=o&8192?g:o;o=0;q=1244;k=r;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{b=D[j-1|0];b=m?(b&15)==3?b&-33:b:b;switch(b-88|0){case 11:break t;case 9:case 13:case 14:case 15:break u;case 27:break z;case 12:case 17:break C;case 23:break D;case 0:case 32:break E;case 24:break F;case 22:break G;case 29:break H;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break I}}J:{switch(b-65|0){case 0:case 4:case 5:case 6:break u;case 2:break x;case 1:case 3:break g;default:break J}}if((b|0)==83){break y}break g}j=F[h+64>>2];g=F[h+68>>2];q=1244;break B}b=0;K:{switch(m&255){case 0:F[F[h+64>>2]>>2]=n;continue e;case 1:F[F[h+64>>2]>>2]=n;continue e;case 2:f=F[h+64>>2];F[f>>2]=n;F[f+4>>2]=n>>31;continue e;case 3:E[F[h+64>>2]>>1]=n;continue e;case 4:D[F[h+64>>2]]=n;continue e;case 6:F[F[h+64>>2]>>2]=n;continue e;case 7:break K;default:continue e}}f=F[h+64>>2];F[f>>2]=n;F[f+4>>2]=n>>31;continue e}i=i>>>0>8?i:8;f=f|8;b=120}m=r;u=b&32;j=F[h+64>>2];g=F[h+68>>2];if(j|g){while(1){m=m-1|0;D[m|0]=u|G[(j&15)+14272|0];x=!g&j>>>0>15|(g|0)!=0;l=g;g=g>>>4|0;j=(l&15)<<28|j>>>4;if(x){continue}break}}l=m;if(!(F[h+64>>2]|F[h+68>>2])|!(f&8)){break A}q=(b>>>4|0)+1244|0;o=2;break A}b=r;j=F[h+64>>2];g=F[h+68>>2];if(j|g){while(1){b=b-1|0;D[b|0]=j&7|48;m=!g&j>>>0>7|(g|0)!=0;l=g;g=g>>>3|0;j=(l&7)<<29|j>>>3;if(m){continue}break}}l=b;if(!(f&8)){break A}b=r-l|0;i=(b|0)<(i|0)?i:b+1|0;break A}b=F[h+68>>2];g=b;j=F[h+64>>2];if((b|0)<0){g=0-(((j|0)!=0)+g|0)|0;j=0-j|0;F[h+64>>2]=j;F[h+68>>2]=g;o=1;q=1244;break B}if(f&2048){o=1;q=1245;break B}o=f&1;q=o?1246:1244}l=r;L:{if(!g){m=j;break L}while(1){l=l-1|0;m=Jj(j,g,10,0);b=fa;y=l,z=j-Hj(m,b,10,0)|48,D[y|0]=z;u=g>>>0>9;j=m;g=b;if(u){continue}break}}if(m){while(1){l=l-1|0;b=(m>>>0)/10|0;D[l|0]=m-L(b,10)|48;g=m>>>0>9;m=b;if(g){continue}break}}}if((i|0)<0?t:0){break d}f=t?f&-65537:f;g=F[h+64>>2];b=F[h+68>>2];if(!(i|(g|b)!=0)){l=r;k=l;i=0;break g}b=!(b|g)+(r-l|0)|0;i=(b|0)<(i|0)?i:b;break g}j=(i|0)<0?2147483647:i;f=j;k=(f|0)!=0;b=F[h+64>>2];l=b?b:1758;b=l;M:{N:{O:{P:{if(!(b&3)|!f){break P}while(1){if(!G[b|0]){break O}f=f-1|0;k=(f|0)!=0;b=b+1|0;if(!(b&3)){break P}if(f){continue}break}}if(!k){break N}}Q:{if(!G[b|0]|f>>>0<4){break Q}while(1){k=F[b>>2];if((k^-1)&k-16843009&-2139062144){break Q}b=b+4|0;f=f-4|0;if(f>>>0>3){continue}break}}if(!f){break N}while(1){if(!G[b|0]){break M}b=b+1|0;f=f-1|0;if(f){continue}break}}b=0}b=b?b-l|0:j;k=b+l|0;if((i|0)>=0){f=g;i=b;break g}f=g;i=b;if(G[k|0]){break d}break g}if(i){k=F[h+64>>2];break w}b=0;mb(a,32,p,0,f);break v}F[h+12>>2]=0;F[h+8>>2]=F[h+64>>2];k=h+8|0;F[h+64>>2]=k;i=-1}b=0;R:{while(1){g=F[k>>2];if(!g){break R}g=Jd(h+4|0,g);l=(g|0)<0;if(!(l|g>>>0>i-b>>>0)){k=k+4|0;b=b+g|0;if(i>>>0>b>>>0){continue}break R}break}if(l){break b}}k=61;if((b|0)<0){break c}mb(a,32,p,b,f);if(!b){b=0;break v}i=0;k=F[h+64>>2];while(1){g=F[k>>2];if(!g){break v}g=Jd(h+4|0,g);i=g+i|0;if(i>>>0>b>>>0){break v}Bb(a,h+4|0,g);k=k+4|0;if(b>>>0>i>>>0){continue}break}}mb(a,32,p,b,f^8192);b=(b|0)<(p|0)?p:b;continue e}if((i|0)<0?t:0){break d}k=61;b=ga[0](a,K[h+64>>3],p,i,f,b)|0;if((b|0)>=0){continue e}break c}D[h+55|0]=F[h+64>>2];i=1;l=w;f=g;break g}f=b+1|0;F[h+76>>2]=f;k=G[b+1|0];b=f;continue}}if(a){break a}if(!s){break f}b=1;while(1){a=F[(b<<2)+e>>2];if(a){Kd((b<<3)+d|0,a,c);n=1;b=b+1|0;if((b|0)!=10){continue}break a}break}n=1;if(b>>>0>=10){break a}while(1){if(F[(b<<2)+e>>2]){break h}b=b+1|0;if((b|0)!=10){continue}break}break a}k=28;break c}j=k-l|0;m=(i|0)<(j|0)?j:i;if((m|0)>(2147483647-o|0)){break d}k=61;g=m+o|0;b=(g|0)>(p|0)?g:p;if((v|0)<(b|0)){break c}mb(a,32,b,g,f);Bb(a,q,o);mb(a,48,b,g,f^65536);mb(a,48,m,j,0);Bb(a,l,j);mb(a,32,b,g,f^8192);continue}break}n=0;break a}k=61}F[4190]=k}n=-1}ea=h+80|0;return n}function xj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0;h=ea+-64|0;ea=h;F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){Aa(f,e-d|0);F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;break b}if(d>>>0>e>>>0){F[a+36>>2]=g+(e<<2)}F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;d=0;if(!e){break a}}Ia(h+16|0,e,h);i=F[h+28>>2];d=F[h+32>>2]}F[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[h+32>>2]=(e<<2)+i;break c}Ia(h+16|12,e-d|0,h)}F[h>>2]=0;f=F[h+40>>2];d=F[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[h+44>>2]=f+(e<<2);break d}Ia(h+40|0,e-d|0,h)}F[h>>2]=0;f=F[h+52>>2];d=F[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}F[h+56>>2]=f+(e<<2);break e}Ia(h+52|0,e-d|0,h)}i=0;f:{if(F[a+8>>2]<=0){break f}j=F[a+32>>2];g=F[h+16>>2];while(1){d=i<<2;f=F[d+g>>2];m=F[a+16>>2];g:{if((f|0)>(m|0)){F[d+j>>2]=m;break g}d=d+j|0;m=F[a+12>>2];if((m|0)>(f|0)){F[d>>2]=m;break g}F[d>>2]=f}i=i+1|0;d=F[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=F[b+g>>2]+F[g+j>>2]|0;F[f>>2]=g;h:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break h}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}D=F[a+52>>2];q=F[a+48>>2];w=sa(16);d=w;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;v=sa(d);F[h>>2]=v;F[h+8>>2]=d+v;ua(v,0,d)}p=1;d=F[a+56>>2];z=F[d>>2];d=F[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;E=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;x=e-1|0;I=e<<2;m=1;while(1){k:{l:{m:{n:{if((m|0)!=(G|0)){f=F[(m<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}j=0;g=f+2|0;y=(d|0)!=0|(g|0)!=-1;n=1;r=d?f-1|0:g;o=1<>>5|0;J=F[q>>2];d=f;q:{while(1){r:{if(F[(d>>>3&536870908)+J>>2]>>>d&1){break r}g=F[F[F[q+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break r}k=F[D>>2];i=F[q+28>>2];p=F[k+(F[i+(g<<2)>>2]<<2)>>2];if((p|0)>=(m|0)){break r}l=g+1|0;l=F[k+(F[i+(((l>>>0)%3|0?l:g-2|0)<<2)>>2]<<2)>>2];if((l|0)>=(m|0)){break r}i=F[k+(F[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((i|0)>=(m|0)){break r}s:{if(!e){break s}g=F[(h+16|0)+L(j,12)>>2];k=L(e,i);l=L(e,l);p=L(e,p);i=0;u=0;if(x){while(1){F[g+(i<<2)>>2]=(F[(i+k<<2)+c>>2]+F[(i+l<<2)+c>>2]|0)-F[(i+p<<2)+c>>2];t=i|1;F[g+(t<<2)>>2]=(F[(k+t<<2)+c>>2]+F[(l+t<<2)+c>>2]|0)-F[(p+t<<2)+c>>2];i=i+2|0;u=u+2|0;if((A|0)!=(u|0)){continue}break}}if(!B){break s}F[g+(i<<2)>>2]=(F[(i+k<<2)+c>>2]+F[(i+l<<2)+c>>2]|0)-F[(i+p<<2)+c>>2]}g=4;j=j+1|0;if((j|0)==4){break q}}t:{if(n&1){i=d-2|0;g=d+1|0;d=-1;g=(g>>>0)%3|0?g:i;if((g|0)==-1|F[F[q>>2]+(g>>>3&536870908)>>2]>>>g&1){break t}g=F[F[F[q+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break t}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;break t}u:{if((d>>>0)%3|0){i=d-1|0;break u}i=d+2|0;d=-1;if((i|0)==-1){break t}}d=-1;if(F[F[q>>2]+(i>>>3&536870908)>>2]>>>i&1){break t}g=F[F[F[q+64>>2]+12>>2]+(i<<2)>>2];if((g|0)==-1){break t}if((g>>>0)%3|0){d=g-1|0;break t}d=g+2|0}v:{if((d|0)==(f|0)){break v}if(!((n^1)&1|(d|0)!=-1)){if(!y|o&F[F[q>>2]+(s<<2)>>2]){break v}d=F[F[F[q+64>>2]+12>>2]+(r<<2)>>2];if((d|0)==-1){break v}n=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=j;if((g|0)<=0){break p}}if(e){ua(F[h>>2],0,I)}d=g-1|0;t=(d<<2)+w|0;d=L(d,12)+a|0;u=d;y=F[d- -64>>2];p=0;n=0;d=0;while(1){f=F[t>>2];F[t>>2]=f+1;if(f>>>0>=y>>>0){break j}w:{if(F[F[u+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break w}d=d+1|0;if(!e){break w}j=F[h>>2];k=F[(h+16|0)+L(n,12)>>2];r=0;i=0;f=0;if(x>>>0>=3){while(1){l=i<<2;o=l+j|0;F[o>>2]=F[o>>2]+F[k+l>>2];o=l|4;s=o+j|0;F[s>>2]=F[s>>2]+F[k+o>>2];o=l|8;s=o+j|0;F[s>>2]=F[s>>2]+F[k+o>>2];l=l|12;o=l+j|0;F[o>>2]=F[o>>2]+F[k+l>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break w}while(1){f=i<<2;l=f+j|0;F[l>>2]=F[l>>2]+F[f+k>>2];i=i+1|0;r=r+1|0;if((C|0)!=(r|0)){continue}break}}n=n+1|0;if((n|0)!=(g|0)){continue}break}n=L(e,m);f=n;if(!d){break o}if(!e){break l}f=F[h>>2];i=0;g=0;if(x){break n}break m}f=L(e,m)}if(F[a+8>>2]<=0){break k}n=(L(m-1|0,e)<<2)+c|0;j=F[a+32>>2];i=0;while(1){d=i<<2;g=F[d+n>>2];k=F[a+16>>2];x:{if((g|0)>(k|0)){F[d+j>>2]=k;break x}d=d+j|0;k=F[a+12>>2];if((k|0)>(g|0)){F[d>>2]=k;break x}F[d>>2]=g}i=i+1|0;g=F[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+n>>2]+F[g+j>>2]|0;F[f>>2]=g;y:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break y}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}break k}Da();V()}while(1){j=i<<2;k=j+f|0;F[k>>2]=F[k>>2]/(d|0);j=f+(j|4)|0;F[j>>2]=F[j>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;F[f>>2]=F[f>>2]/(d|0)}if(F[a+8>>2]<=0){break k}j=F[a+32>>2];i=0;while(1){d=i<<2;f=F[d+v>>2];g=F[a+16>>2];z:{if((f|0)>(g|0)){F[d+j>>2]=g;break z}d=d+j|0;g=F[a+12>>2];if((g|0)>(f|0)){F[d>>2]=g;break z}F[d>>2]=f}i=i+1|0;f=F[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=n<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+n>>2]+F[g+j>>2]|0;F[f>>2]=g;A:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break A}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}p=1;m=m+1|0;if((E|0)!=(m|0)){continue}break}}a=F[h>>2];if(a){ra(a)}ra(w);a=F[h+52>>2];if(a){F[h+56>>2]=a;ra(a)}a=F[h+40>>2];if(a){F[h+44>>2]=a;ra(a)}a=F[h+28>>2];if(a){F[h+32>>2]=a;ra(a)}a=F[h+16>>2];if(a){F[h+20>>2]=a;ra(a)}ea=h- -64|0;return p|0}va();V()}function Ya(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:i=1;e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=D[b|0];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(D[b|0])/M(127);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 1:i=1;f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=G[b|0];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(G[b|0])/M(255);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 2:i=1;g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=E[b>>1];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(E[b>>1])/M(32767);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 3:i=1;h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=H[b>>1];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(H[b>>1])/M(65535);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 4:i=1;i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=F[b>>2];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(F[b>>2])*M(4.656612873077393e-10);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 5:i=1;j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=I[b>>2];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(I[b>>2])*M(2.3283064365386963e-10);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 6:i=1;k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=+I[b>>2]+ +F[b+4>>2]*4294967296;f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(+I[b>>2]+ +F[b+4>>2]*4294967296)*M(1.0842021724855044e-19);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 7:i=1;l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=+I[b>>2]+ +I[b+4>>2]*4294967296;f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(+I[b>>2]+ +I[b+4>>2]*4294967296)*M(5.421010862427522e-20);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 8:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;g=F[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}J[(f<<2)+d>>2]=J[b>>2];b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;g=F[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}J[(f<<2)+d>>2]=K[b>>3];b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){g=F[a>>2];e=F[g>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[g+4>>2]<=b>>>0){break a}J[(f<<2)+d>>2]=G[b|0]?M(1):M(0);b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<2)+d|0,0,c-e<<2)}return i}return 0}function kg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=ea-16|0;ea=m;F[m+12>>2]=b;b=sa(32);F[m>>2]=b;F[m+4>>2]=24;F[m+8>>2]=-2147483616;D[b+24|0]=0;c=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);d=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;h=ea-48|0;ea=h;k=a;c=a+16|0;a=F[c>>2];a:{b:{if(!a){break b}d=F[m+12>>2];b=c;while(1){f=(d|0)>F[a+16>>2];b=f?b:a;a=F[(f<<2)+a>>2];if(a){continue}break}if((b|0)==(c|0)){break b}if((d|0)>=F[b+16>>2]){break a}}t=h+24|0;a=t;F[a+4>>2]=0;F[a+8>>2]=0;u=a+4|0;F[a>>2]=u;a=F[m+12>>2];d=h+16|0;F[d>>2]=0;F[d+4>>2]=0;F[h+8>>2]=a;F[h+12>>2]=d;b=F[t>>2];if((u|0)!=(b|0)){l=h+8|4;while(1){f=b;g=b+16|0;q=ea-16|0;ea=q;i=q+12|0;a=q+8|0;c:{d:{e:{f:{g:{h:{r=l+4|0;i:{if((r|0)==(d|0)){break i}b=G[d+27|0];e=b<<24>>24<0;n=G[g+11|0];v=n<<24>>24;j=(v|0)<0;b=e?F[d+20>>2]:b;n=j?F[g+4>>2]:n;o=b>>>0>>0;p=o?b:n;if(p){j=j?F[g>>2]:g;s=d+16|0;e=e?F[s>>2]:s;s=Ha(j,e,p);if(!s){if(b>>>0>n>>>0){break i}break h}if((s|0)>=0){break h}break i}if(b>>>0<=n>>>0){break g}}e=F[d>>2];j:{a=d;k:{if((a|0)==F[l>>2]){break k}l:{if(e){b=e;while(1){a=b;b=F[b+4>>2];if(b){continue}break}break l}a=d+8|0;if((d|0)==F[F[d+8>>2]>>2]){while(1){b=F[a>>2];a=b+8|0;if((b|0)==F[F[b+8>>2]>>2]){continue}break}}a=F[a>>2]}j=G[g+11|0];b=j<<24>>24<0;o=G[a+27|0];n=o<<24>>24<0;m:{j=b?F[g+4>>2]:j;o=n?F[a+20>>2]:o;p=j>>>0>>0?j:o;if(p){r=a+16|0;b=Ha(n?F[r>>2]:r,b?F[g>>2]:g,p);if(b){break m}}if(j>>>0>o>>>0){break k}break j}if((b|0)>=0){break j}}if(!e){F[i>>2]=d;a=d;break c}F[i>>2]=a;a=a+4|0;break c}a=Ke(l,i,g);break c}b=Ha(e,j,p);if(b){break f}}if(o){break e}break d}if((b|0)>=0){break d}}e=F[d+4>>2];n:{if(e){b=e;while(1){a=b;b=F[b>>2];if(b){continue}break}break n}a=F[d+8>>2];if((d|0)==F[a>>2]){break n}b=d+8|0;while(1){j=F[b>>2];b=j+8|0;a=F[j+8>>2];if((j|0)!=F[a>>2]){continue}break}}o:{p:{if((a|0)==(r|0)){break p}j=G[a+27|0];b=j<<24>>24<0;q:{j=b?F[a+20>>2]:j;o=j>>>0>>0?j:n;if(o){p=a+16|0;b=Ha((v|0)<0?F[g>>2]:g,b?F[p>>2]:p,o);if(b){break q}}if(j>>>0>n>>>0){break p}break o}if((b|0)>=0){break o}}if(!e){F[i>>2]=d;a=d+4|0;break c}F[i>>2]=a;break c}a=Ke(l,i,g);break c}F[i>>2]=d;F[a>>2]=d}b=a;a=F[b>>2];if(a){b=0}else{a=sa(40);e=a+16|0;r:{if(D[g+11|0]>=0){i=F[g+4>>2];F[e>>2]=F[g>>2];F[e+4>>2]=i;F[e+8>>2]=F[g+8>>2];break r}Ba(e,F[g>>2],F[g+4>>2])}e=a+28|0;s:{if(D[g+23|0]>=0){i=F[g+16>>2];F[e>>2]=F[g+12>>2];F[e+4>>2]=i;F[e+8>>2]=F[g+20>>2];break s}Ba(e,F[g+12>>2],F[g+16>>2])}F[a+8>>2]=F[q+12>>2];F[a>>2]=0;F[a+4>>2]=0;F[b>>2]=a;e=F[F[l>>2]>>2];if(e){F[l>>2]=e;b=F[b>>2]}else{b=a}Tb(F[l+4>>2],b);F[l+8>>2]=F[l+8>>2]+1;b=1}D[h+44|0]=b;F[h+40>>2]=a;ea=q+16|0;a=F[f+4>>2];t:{if(!a){b=F[f+8>>2];if((f|0)==F[b>>2]){break t}a=f+8|0;while(1){f=F[a>>2];a=f+8|0;b=F[f+8>>2];if((f|0)!=F[b>>2]){continue}break}break t}while(1){b=a;a=F[b>>2];if(a){continue}break}}if((b|0)!=(u|0)){continue}break}}a=F[c>>2];u:{if(a){c=k+16|0;f=F[h+8>>2];while(1){b=F[a+16>>2];v:{if((b|0)>(f|0)){b=F[a>>2];if(b){break v}c=a;break u}if((b|0)>=(f|0)){break u}c=a+4|0;b=F[a+4>>2];if(!b){break u}a=c}c=a;a=b;continue}}a=c}b=F[c>>2];if(!b){b=sa(32);F[b+16>>2]=F[h+8>>2];F[b+20>>2]=F[h+12>>2];f=b+24|0;e=F[h+16>>2];F[f>>2]=e;g=F[h+20>>2];F[b+28>>2]=g;w:{if(!g){F[b+20>>2]=f;break w}F[e+8>>2]=f;F[h+16>>2]=0;F[h+20>>2]=0;F[h+12>>2]=d}F[b+8>>2]=a;F[b>>2]=0;F[b+4>>2]=0;F[c>>2]=b;a=F[F[k+12>>2]>>2];if(a){F[k+12>>2]=a;a=F[c>>2]}else{a=b}Tb(F[k+16>>2],a);F[k+20>>2]=F[k+20>>2]+1}Jb(h+8|4,F[h+16>>2]);Jb(t,F[t+4>>2])}ea=h+48|0;k=ea-48|0;ea=k;d=ea-32|0;ea=d;a=d+21|0;g=d+32|0;c=g;x:{if((a|0)==(c|0)){break x}}f=c-a|0;y:{if(!((f|0)<=9&(f|0)<(1-(I[3720]>1)|0))){D[a|0]=49;F[d+8>>2]=a+1;c=0;break y}F[d+8>>2]=c;c=61}F[d+12>>2]=c;h=ea-16|0;ea=h;c=k+8|0;e=ea-16|0;ea=e;z:{l=F[d+8>>2];f=l-a|0;if(f>>>0<=4294967279){A:{if(f>>>0<=10){D[c+11|0]=f;d=c;break A}if(f>>>0>=11){i=f+16&-16;d=i-1|0;d=(d|0)==11?i:d}else{d=10}i=d+1|0;d=sa(i);F[c>>2]=d;F[c+8>>2]=i|-2147483648;F[c+4>>2]=f}while(1){if((a|0)!=(l|0)){D[d|0]=G[a|0];d=d+1|0;a=a+1|0;continue}break}D[e+15|0]=0;D[d|0]=G[e+15|0];ea=e+16|0;break z}Ma();V()}ea=h+16|0;ea=g;F[k+32>>2]=m;d=b+20|0;a=F[d+4>>2];B:{C:{if(a){b=G[m+11|0];c=b<<24>>24<0;e=c?F[m>>2]:m;f=c?F[m+4>>2]:b;b=d+4|0;while(1){c=G[a+27|0];g=c<<24>>24<0;c=g?F[a+20>>2]:c;h=c>>>0>>0;D:{E:{F:{G:{H:{l=h?c:f;I:{if(l){i=a+16|0;g=g?F[i>>2]:i;i=Ha(e,g,l);if(!i){if(c>>>0>f>>>0){break I}break H}if((i|0)>=0){break H}break I}if(c>>>0<=f>>>0){break G}}c=F[a>>2];if(c){break D}break C}c=Ha(g,e,l);if(c){break F}}if(h){break E}break B}if((c|0)>=0){break B}}b=a+4|0;c=F[a+4>>2];if(!c){break B}a=b}b=a;a=c;continue}}a=d+4|0}b=a}c=F[b>>2];if(c){a=0}else{c=sa(40);e=c+16|0;f=F[k+32>>2];J:{if(D[f+11|0]>=0){g=F[f+4>>2];F[e>>2]=F[f>>2];F[e+4>>2]=g;F[e+8>>2]=F[f+8>>2];break J}Ba(e,F[f>>2],F[f+4>>2])}F[c+8>>2]=a;F[c>>2]=0;F[c+4>>2]=0;F[c+36>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[b>>2]=c;a=F[F[d>>2]>>2];if(a){F[d>>2]=a;a=F[b>>2]}else{a=c}Tb(F[d+4>>2],a);F[d+8>>2]=F[d+8>>2]+1;a=1}D[k+44|0]=a;F[k+40>>2]=c;a=F[k+40>>2];if(D[a+39|0]<0){ra(F[a+28>>2])}b=F[k+12>>2];F[a+28>>2]=F[k+8>>2];F[a+32>>2]=b;F[a+36>>2]=F[k+16>>2];ea=k+48|0;if(D[m+11|0]<0){ra(F[m>>2])}ea=m+16|0}function hj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0;h=ea+-64|0;ea=h;F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){Aa(f,e-d|0);F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;break b}if(d>>>0>e>>>0){F[a+36>>2]=g+(e<<2)}F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;d=0;if(!e){break a}}Ia(h+16|0,e,h);i=F[h+28>>2];d=F[h+32>>2]}F[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[h+32>>2]=(e<<2)+i;break c}Ia(h+16|12,e-d|0,h)}F[h>>2]=0;f=F[h+40>>2];d=F[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[h+44>>2]=f+(e<<2);break d}Ia(h+40|0,e-d|0,h)}F[h>>2]=0;f=F[h+52>>2];d=F[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}F[h+56>>2]=f+(e<<2);break e}Ia(h+52|0,e-d|0,h)}i=0;f:{if(F[a+8>>2]<=0){break f}k=F[a+32>>2];g=F[h+16>>2];while(1){d=i<<2;f=F[d+g>>2];n=F[a+16>>2];g:{if((f|0)>(n|0)){F[d+k>>2]=n;break g}d=d+k|0;n=F[a+12>>2];if((n|0)>(f|0)){F[d>>2]=n;break g}F[d>>2]=f}i=i+1|0;d=F[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[f>>2]=g;h:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break h}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}D=F[a+52>>2];y=F[a+48>>2];v=sa(16);d=v;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;u=sa(d);F[h>>2]=u;F[h+8>>2]=d+u;ua(u,0,d)}r=1;d=F[a+56>>2];z=F[d>>2];d=F[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;E=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;w=e-1|0;I=e<<2;n=1;while(1){k:{l:{m:{n:{if((n|0)!=(G|0)){f=F[(n<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}k=0;g=f+2|0;x=(d|0)!=0|(g|0)!=-1;s=F[y+12>>2];q=s+((d?f-1|0:g)<<2)|0;o=1;d=f;q:{while(1){g=F[s+(d<<2)>>2];r:{if((g|0)==-1){break r}l=-1;r=F[D>>2];m=F[y>>2];i=r+(F[m+(g<<2)>>2]<<2)|0;p=g+1|0;p=(p>>>0)%3|0?p:g-2|0;if((p|0)!=-1){l=F[m+(p<<2)>>2]}p=F[i>>2];s:{t:{if((g>>>0)%3|0){i=g-1|0;break t}i=g+2|0;j=-1;if((i|0)==-1){break s}}j=F[m+(i<<2)>>2]}if((n|0)<=(p|0)){break r}i=F[r+(l<<2)>>2];if((i|0)>=(n|0)){break r}l=F[r+(j<<2)>>2];if((l|0)>=(n|0)){break r}g=F[(h+16|0)+L(k,12)>>2];u:{if(!e){break u}l=L(e,l);m=L(e,i);r=L(e,p);i=0;j=0;if(w){while(1){F[g+(i<<2)>>2]=(F[(i+l<<2)+c>>2]+F[(i+m<<2)+c>>2]|0)-F[(i+r<<2)+c>>2];p=i|1;F[g+(p<<2)>>2]=(F[(l+p<<2)+c>>2]+F[(m+p<<2)+c>>2]|0)-F[(p+r<<2)+c>>2];i=i+2|0;j=j+2|0;if((A|0)!=(j|0)){continue}break}}if(!B){break u}F[g+(i<<2)>>2]=(F[(i+l<<2)+c>>2]+F[(i+m<<2)+c>>2]|0)-F[(i+r<<2)+c>>2]}g=4;k=k+1|0;if((k|0)==4){break q}}v:{if(o&1){i=d+1|0;d=(i>>>0)%3|0?i:d-2|0;j=-1;if((d|0)==-1){break v}d=F[s+(d<<2)>>2];j=-1;if((d|0)==-1){break v}g=d+1|0;j=(g>>>0)%3|0?g:d-2|0;break v}w:{if((d>>>0)%3|0){i=d-1|0;break w}i=d+2|0;j=-1;if((i|0)==-1){break v}}d=F[s+(i<<2)>>2];j=-1;if((d|0)==-1){break v}j=d-1|0;if((d>>>0)%3|0){break v}j=d+2|0}d=j;x:{if((f|0)==(d|0)){break x}if(!((o^1)&1|(d|0)!=-1)){if(!x){break x}d=F[q>>2];if((d|0)==-1){break x}o=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=k;if((g|0)<=0){break p}}if(e){ua(F[h>>2],0,I)}d=g-1|0;p=(d<<2)+v|0;d=L(d,12)+a|0;j=d;x=F[d- -64>>2];r=0;o=0;d=0;while(1){f=F[p>>2];F[p>>2]=f+1;if(f>>>0>=x>>>0){break j}y:{if(F[F[j+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break y}d=d+1|0;if(!e){break y}k=F[h>>2];s=F[(h+16|0)+L(o,12)>>2];l=0;i=0;f=0;if(w>>>0>=3){while(1){m=i<<2;q=m+k|0;F[q>>2]=F[q>>2]+F[m+s>>2];q=m|4;t=q+k|0;F[t>>2]=F[t>>2]+F[s+q>>2];q=m|8;t=q+k|0;F[t>>2]=F[t>>2]+F[s+q>>2];m=m|12;q=m+k|0;F[q>>2]=F[q>>2]+F[m+s>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break y}while(1){f=i<<2;m=f+k|0;F[m>>2]=F[m>>2]+F[f+s>>2];i=i+1|0;l=l+1|0;if((C|0)!=(l|0)){continue}break}}o=o+1|0;if((o|0)!=(g|0)){continue}break}o=L(e,n);f=o;if(!d){break o}if(!e){break l}f=F[h>>2];i=0;g=0;if(w){break n}break m}f=L(e,n)}if(F[a+8>>2]<=0){break k}o=(L(n-1|0,e)<<2)+c|0;k=F[a+32>>2];i=0;while(1){d=i<<2;g=F[d+o>>2];l=F[a+16>>2];z:{if((g|0)>(l|0)){F[d+k>>2]=l;break z}d=d+k|0;l=F[a+12>>2];if((l|0)>(g|0)){F[d>>2]=l;break z}F[d>>2]=g}i=i+1|0;g=F[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+o>>2]+F[g+k>>2]|0;F[f>>2]=g;A:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break A}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}break k}Da();V()}while(1){k=i<<2;l=k+f|0;F[l>>2]=F[l>>2]/(d|0);k=f+(k|4)|0;F[k>>2]=F[k>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;F[f>>2]=F[f>>2]/(d|0)}if(F[a+8>>2]<=0){break k}k=F[a+32>>2];i=0;while(1){d=i<<2;f=F[d+u>>2];g=F[a+16>>2];B:{if((f|0)>(g|0)){F[d+k>>2]=g;break B}d=d+k|0;g=F[a+12>>2];if((g|0)>(f|0)){F[d>>2]=g;break B}F[d>>2]=f}i=i+1|0;f=F[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=o<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+o>>2]+F[g+k>>2]|0;F[f>>2]=g;C:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break C}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}r=1;n=n+1|0;if((E|0)!=(n|0)){continue}break}}a=F[h>>2];if(a){ra(a)}ra(v);a=F[h+52>>2];if(a){F[h+56>>2]=a;ra(a)}a=F[h+40>>2];if(a){F[h+44>>2]=a;ra(a)}a=F[h+28>>2];if(a){F[h+32>>2]=a;ra(a)}a=F[h+16>>2];if(a){F[h+20>>2]=a;ra(a)}ea=h- -64|0;return r|0}va();V()}function Fj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=a;a:{b:{c:{d:{e:{f:{g:{h:{k=F[a+8>>2];switch(F[k+28>>2]-1|0){case 4:break c;case 5:break d;case 2:break e;case 3:break f;case 0:break g;case 1:break h;default:break a}}c=D[k+24|0];d=sa((c|0)>=0?c:-1);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;D[a+d|0]=F[j>>2];D[(a|1)+d|0]=F[j+4>>2];D[(a|2)+d|0]=F[j+8>>2];D[(a|3)+d|0]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[a+d|0]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}c=D[k+24|0];d=sa((c|0)>=0?c:-1);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;D[a+d|0]=F[j>>2];D[(a|1)+d|0]=F[j+4>>2];D[(a|2)+d|0]=F[j+8>>2];D[(a|3)+d|0]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[a+d|0]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];a=e+e|0;d=sa(a>>>0>>0?-1:a);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;E[l+d>>1]=F[j>>2];E[(l|2)+d>>1]=F[j+4>>2];E[(l|4)+d>>1]=F[j+8>>2];E[(l|6)+d>>1]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){E[(a<<1)+d>>1]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];a=e+e|0;d=sa(a>>>0>>0?-1:a);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;E[l+d>>1]=F[j>>2];E[(l|2)+d>>1]=F[j+4>>2];E[(l|4)+d>>1]=F[j+8>>2];E[(l|6)+d>>1]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){E[(a<<1)+d>>1]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];c=e<<2;d=sa((e|0)!=(e&1073741823)?-1:c);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;F[l+d>>2]=F[j>>2];F[(l|4)+d>>2]=F[j+4>>2];F[(l|8)+d>>2]=F[j+8>>2];F[(l|12)+d>>2]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){F[(a<<2)+d>>2]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];c=e<<2;d=sa((e|0)!=(e&1073741823)?-1:c);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;F[l+d>>2]=F[j>>2];F[(l|4)+d>>2]=F[j+4>>2];F[(l|8)+d>>2]=F[j+8>>2];F[(l|12)+d>>2]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){F[(a<<2)+d>>2]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}ta(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}ta(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;ta(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}ta(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c)}ra(d);d=1}return d|0}function ab(a,b){var c=0,d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=a+16|0;F[d>>2]=0;F[d+4>>2]=0;D[d+5|0]=0;D[d+6|0]=0;D[d+7|0]=0;D[d+8|0]=0;D[d+9|0]=0;D[d+10|0]=0;D[d+11|0]=0;D[d+12|0]=0;c=d+16|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+32|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+48|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d- -64|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+80|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+96|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+112|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+128|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+144|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+160|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+176|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+192|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+208|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+224|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+240|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+256|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+272|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+288|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+304|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+320|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+336|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+352|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+368|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+384|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+400|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+416|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+432|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+448|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+464|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+480|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;d=d+496|0;F[d>>2]=0;F[d+4>>2]=0;D[d+5|0]=0;D[d+6|0]=0;D[d+7|0]=0;D[d+8|0]=0;D[d+9|0]=0;D[d+10|0]=0;D[d+11|0]=0;D[d+12|0]=0;F[a+528>>2]=0;F[a+532>>2]=0;D[a+533|0]=0;D[a+534|0]=0;D[a+535|0]=0;D[a+536|0]=0;D[a+537|0]=0;D[a+538|0]=0;D[a+539|0]=0;D[a+540|0]=0;F[a+544>>2]=0;F[a+548>>2]=0;F[a+560>>2]=0;F[a+552>>2]=0;F[a+556>>2]=0;F[a+564>>2]=0;F[a+568>>2]=0;F[a+580>>2]=0;F[a+572>>2]=0;F[a+576>>2]=0;F[a+584>>2]=0;F[a+588>>2]=0;F[a+600>>2]=0;F[a+592>>2]=0;F[a+596>>2]=0;F[a+612>>2]=0;F[a+604>>2]=0;F[a+608>>2]=0;g=a+628|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+616>>2]=0;F[a+620>>2]=0;F[a+624>>2]=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;d=1;break a}d=b<<2;c=sa(d);F[a+604>>2]=c;f=c+d|0;F[a+612>>2]=f;ua(c,0,d);F[a+624>>2]=0;F[a+616>>2]=0;F[a+620>>2]=0;F[a+608>>2]=f;c=sa(d);F[a+616>>2]=c;f=c+d|0;F[a+624>>2]=f;ua(c,0,d);F[a+620>>2]=f;c=sa(d);F[e>>2]=c;f=c+d|0;F[e+8>>2]=f;ua(c,0,d);F[e+4>>2]=f;d=b<<5|1}wb(g,d,e);c=F[e>>2];if(c){F[e+4>>2]=c;ra(c)}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(b){b=b<<2;c=sa(b);F[e>>2]=c;f=b+c|0;F[e+8>>2]=f;ua(c,0,b);F[e+4>>2]=f}wb(a+640|0,d,e);b=F[e>>2];if(b){F[e+4>>2]=b;ra(b)}ea=e+16|0;return a}function oi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=F[a+32>>2];e=F[c+16>>2];d=F[c+12>>2];b=F[c+20>>2];if(I[c+8>>2]>e>>>0&(d|0)>=(b|0)|(b|0)<(d|0)){f=G[e+F[c>>2]|0];d=e+1|0;b=d?b:b+1|0;F[c+16>>2]=d;F[c+20>>2]=b;c=F[a+48>>2];F[a+48>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}a:{b:{c:{d:{switch(f|0){case 0:c=sa(384);F[c>>2]=11412;ua(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+376>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;break c;case 1:c=sa(424);F[c>>2]=11464;ua(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+392>>2]=0;F[c+396>>2]=0;F[c+384>>2]=0;F[c+388>>2]=0;F[c+376>>2]=0;F[c+380>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;b=c+400|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;F[c+416>>2]=-1;F[c+420>>2]=-1;break c;case 2:break d;default:break b}}c=sa(440);F[c>>2]=11512;ua(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+392>>2]=0;F[c+396>>2]=0;F[c+384>>2]=0;F[c+388>>2]=0;F[c+376>>2]=0;F[c+380>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;F[c+416>>2]=0;F[c+420>>2]=0;F[c+408>>2]=2;F[c+412>>2]=7;F[c+400>>2]=-1;F[c+404>>2]=-1;F[c+424>>2]=0;F[c+428>>2]=0;F[c+432>>2]=0;F[c+436>>2]=0}b=F[a+48>>2];F[a+48>>2]=c;if(!b){break a}ga[F[F[b>>2]+4>>2]](b)}c=F[a+48>>2];if(c){break a}return 0}a=ga[F[F[c>>2]+8>>2]](c,a)|0}else{a=0}return a|0}function qj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0,X=0;if((e|0)==2){F[a+8>>2]=2;F[a- -64>>2]=f;e=a+32|0;f=F[e>>2];d=F[a+36>>2]-f|0;a:{if(d>>>0<=7){Aa(e,2-(d>>>2|0)|0);break a}if((d|0)==8){break a}F[a+36>>2]=f+8}b:{d=F[a+56>>2];e=F[d+4>>2];d=F[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;J=f>>2;T=(J|0)>1?J:1;f=1;while(1){j=ea-80|0;ea=j;e=-1;d=F[(q<<2)+d>>2];g=-1;c:{if((d|0)==-1){break c}e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;g=d-1|0;if((d>>>0)%3|0){break c}g=d+2|0}i=F[m+36>>2];d=F[i>>2];d:{e:{f:{g:{h:{i=F[i+4>>2]-d>>2;h=e<<2;e=F[F[m+32>>2]+28>>2];k=F[h+e>>2];if(i>>>0<=k>>>0){break h}e=F[e+(g<<2)>>2];if(e>>>0>=i>>>0){break h}i:{j:{g=F[d+(e<<2)>>2];i=F[d+(k<<2)>>2];if((g|0)>=(q|0)|(i|0)>=(q|0)){break j}d=(g<<3)+c|0;v=F[d+4>>2];e=(i<<3)+c|0;s=F[e+4>>2];x=F[d>>2];C=F[e>>2];if(!((x|0)!=(C|0)|(s|0)!=(v|0))){F[m+8>>2]=C;F[m+12>>2]=s;break i}d=F[F[m+4>>2]+(q<<2)>>2];F[j+72>>2]=0;F[j+76>>2]=0;e=j- -64|0;F[e>>2]=0;F[e+4>>2]=0;F[j+56>>2]=0;F[j+60>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ta(e,d,D[e+24|0],j+56|0);d=F[F[m+4>>2]+(i<<2)>>2];F[j+48>>2]=0;F[j+52>>2]=0;F[j+40>>2]=0;F[j+44>>2]=0;F[j+32>>2]=0;F[j+36>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ta(e,d,D[e+24|0],j+32|0);d=F[F[m+4>>2]+(g<<2)>>2];F[j+24>>2]=0;F[j+28>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ta(e,d,D[e+24|0],j+8|0);K=F[j+44>>2];d=F[j+16>>2];E=F[j+40>>2];e=E;k=F[j+20>>2]-(K+(d>>>0>>0)|0)|0;o=d-e|0;d=Hj(o,k,o,k);e=fa;n=d;L=F[j+36>>2];d=F[j+8>>2];H=F[j+32>>2];g=H;h=F[j+12>>2]-(L+(d>>>0>>0)|0)|0;t=d-g|0;g=Hj(t,h,t,h);d=n+g|0;e=fa+e|0;e=d>>>0>>0?e+1|0:e;n=d;M=F[j+52>>2];d=F[j+24>>2];I=F[j+48>>2];g=I;l=F[j+28>>2]-(M+(d>>>0>>0)|0)|0;p=d-g|0;r=Hj(p,l,p,l);d=n+r|0;g=fa+e|0;u=d;r=d>>>0>>0?g+1|0:g;if(!(d|r)){break j}n=F[j+64>>2];d=n;O=F[j+68>>2];d=Hj(d-E|0,O-((d>>>0>>0)+K|0)|0,o,k);e=fa;g=d;P=F[j+56>>2];d=P;Q=F[j+60>>2];i=Hj(d-H|0,Q-((d>>>0>>0)+L|0)|0,t,h);d=g+i|0;g=fa+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=F[j+72>>2];d=R;S=F[j+76>>2];i=Hj(d-I|0,S-((d>>>0>>0)+M|0)|0,p,l);d=e+i|0;e=fa+g|0;y=d;w=d>>>0>>0?e+1|0:e;d=l>>31;e=d+p|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;e=e^d;d=d^g;i=d;d=k>>31;z=d+o|0;g=d+k|0;A=d^z;d=d^(d>>>0>z>>>0?g+1|0:g);z=d;N=0;d=h>>31;B=d+t|0;g=d+h|0;g=B>>>0>>0?g+1|0:g;U=e;B=B^d;d=d^g;g=(z|0)==(d|0)&A>>>0>B>>>0|d>>>0>>0;A=g?A:B;d=g?z:d;e=(i|0)==(d|0)&e>>>0>A>>>0|d>>>0>>0;e=Jj(-1,2147483647,e?U:A,e?i:d)>>>0>>0;d=fa;if(e&(d|0)<=(w|0)|(d|0)<(w|0)){break d}i=1;d=0;e=n;o=Ij(Hj(o,k,y,w),fa,u,r);k=o+E|0;g=fa+K|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=Hj(e,g,e,g);o=fa;e=P;n=g;h=Ij(Hj(t,h,y,w),fa,u,r);k=h+H|0;g=fa+L|0;g=h>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=Hj(e,g,e,g);g=n+k|0;e=fa+o|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;n=g;l=Ij(Hj(p,l,y,w),fa,u,r);h=l+I|0;g=fa+M|0;g=h>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-h|0;h=Hj(e,g,e,g);e=n+h|0;g=fa+k|0;k=Hj(e,e>>>0>>0?g+1|0:g,u,r);e=fa;h=e;if(!e&k>>>0<=1){break g}l=k;e=h;while(1){g=d<<1|i>>>31;i=i<<1;d=g;o=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(o){continue}break}break f}if((i|0)<(q|0)){d=i<<1}else{if((q|0)<=0){F[m+8>>2]=0;F[m+12>>2]=0;break i}d=(q<<1)-2|0}d=(d<<2)+c|0;F[m+8>>2]=F[d>>2];F[m+12>>2]=F[d+4>>2]}N=1;break d}Da();V()}d=h;i=k;if(i-1|0){break e}}while(1){e=Jj(k,h,i,d)+i|0;g=d+fa|0;g=e>>>0>>0?g+1|0:g;i=(g&1)<<31|e>>>1;d=g>>>1|0;e=Hj(i,d,i,d);g=fa;if((h|0)==(g|0)&e>>>0>k>>>0|g>>>0>h>>>0){continue}break}}k=F[m+20>>2];if(k){e=k-1|0;l=F[F[m+16>>2]+(e>>>3&536870908)>>2];F[m+20>>2]=e;g=s;o=v-g|0;h=g>>31;t=(v>>31)-(h+(g>>>0>v>>>0)|0)|0;g=Hj(y,w,o,t);p=fa;s=Hj(s,h,u,r);h=s+g|0;g=fa+p|0;g=h>>>0>>0?g+1|0:g;n=h;h=C;p=x-h|0;s=h>>31;v=(x>>31)-(s+(h>>>0>x>>>0)|0)|0;h=Hj(i,d,p,v);x=h;e=l>>>e&1;l=e?0-h|0:h;h=n+l|0;n=g;g=fa;g=n+(e?0-(g+((x|0)!=0)|0)|0:g)|0;W=m,X=Ij(h,h>>>0>>0?g+1|0:g,u,r),F[W+12>>2]=X;g=Hj(p,v,y,w);l=fa;p=Hj(u,r,C,s);h=p+g|0;g=fa+l|0;g=h>>>0

>>0?g+1|0:g;n=h;d=Hj(i,d,o,t);h=e?d:0-d|0;i=n+h|0;n=g;g=fa;e=n+(e?g:0-(((d|0)!=0)+g|0)|0)|0;W=m,X=Ij(i,i>>>0>>0?e+1|0:e,u,r),F[W+8>>2]=X}N=(k|0)!=0}ea=j+80|0;if(!N){break b}k:{if(F[a+8>>2]<=0){break k}g=F[a+32>>2];d=0;while(1){e=d<<2;f=F[(e+a|0)+68>>2];i=F[a+16>>2];l:{if((f|0)>(i|0)){F[e+g>>2]=i;break l}e=e+g|0;i=F[a+12>>2];if((i|0)>(f|0)){F[e>>2]=i;break l}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=q<<3;i=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+i|0;f=F[f+k>>2]+F[f+g>>2]|0;F[d>>2]=f;m:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break m}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}q=q+1|0;f=(J|0)>(q|0);if((q|0)==(T|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>q>>>0){continue}break}}Da();V()}a=f^1}else{a=0}return a&1}function bj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0;if((e|0)==2){F[a+8>>2]=2;F[a- -64>>2]=f;e=a+32|0;f=F[e>>2];d=F[a+36>>2]-f|0;a:{if(d>>>0<=7){Aa(e,2-(d>>>2|0)|0);break a}if((d|0)==8){break a}F[a+36>>2]=f+8}b:{d=F[a+56>>2];e=F[d+4>>2];d=F[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;I=f>>2;T=(I|0)>1?I:1;f=1;while(1){i=ea-80|0;ea=i;e=-1;c:{d:{g=F[(p<<2)+d>>2];if((g|0)==-1){break d}h=F[m+32>>2];d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)!=-1){e=F[F[h>>2]+(d<<2)>>2]}d=-1;g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){d=F[F[h>>2]+(g<<2)>>2]}h=F[m+36>>2];g=F[h>>2];h=F[h+4>>2]-g>>2;if(h>>>0<=e>>>0|d>>>0>=h>>>0){break d}h=F[g+(e<<2)>>2];e:{f:{g:{h:{i:{j:{g=F[g+(d<<2)>>2];if((g|0)>=(p|0)|(h|0)>=(p|0)){break j}d=(g<<3)+c|0;w=F[d+4>>2];e=(h<<3)+c|0;r=F[e+4>>2];t=F[d>>2];C=F[e>>2];if(!((t|0)!=(C|0)|(r|0)!=(w|0))){F[m+8>>2]=C;F[m+12>>2]=r;break i}d=F[F[m+4>>2]+(p<<2)>>2];F[i+72>>2]=0;F[i+76>>2]=0;e=i- -64|0;F[e>>2]=0;F[e+4>>2]=0;F[i+56>>2]=0;F[i+60>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ta(e,d,D[e+24|0],i+56|0);d=F[F[m+4>>2]+(h<<2)>>2];F[i+48>>2]=0;F[i+52>>2]=0;F[i+40>>2]=0;F[i+44>>2]=0;F[i+32>>2]=0;F[i+36>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Ta(e,d,D[e+24|0],i+32|0);e=F[F[m+4>>2]+(g<<2)>>2];F[i+24>>2]=0;F[i+28>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i+8>>2]=0;F[i+12>>2]=0;d=F[m>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}Ta(d,e,D[d+24|0],i+8|0);J=F[i+44>>2];d=F[i+16>>2];x=F[i+40>>2];e=x;k=F[i+20>>2]-(J+(d>>>0>>0)|0)|0;n=d-e|0;d=Hj(n,k,n,k);e=fa;o=d;K=F[i+36>>2];d=F[i+8>>2];E=F[i+32>>2];g=E;j=F[i+12>>2]-(K+(d>>>0>>0)|0)|0;u=d-g|0;g=Hj(u,j,u,j);d=o+g|0;e=fa+e|0;e=d>>>0>>0?e+1|0:e;o=d;L=F[i+52>>2];d=F[i+24>>2];H=F[i+48>>2];g=H;l=F[i+28>>2]-(L+(d>>>0>>0)|0)|0;s=d-g|0;q=Hj(s,l,s,l);d=o+q|0;g=fa+e|0;v=d;q=d>>>0>>0?g+1|0:g;if(!(d|q)){break j}N=F[i+64>>2];d=N;O=F[i+68>>2];d=Hj(d-x|0,O-((d>>>0>>0)+J|0)|0,n,k);e=fa;g=d;P=F[i+56>>2];d=P;Q=F[i+60>>2];h=Hj(d-E|0,Q-((d>>>0>>0)+K|0)|0,u,j);d=g+h|0;g=fa+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=F[i+72>>2];d=R;S=F[i+76>>2];h=Hj(d-H|0,S-((d>>>0>>0)+L|0)|0,s,l);d=e+h|0;e=fa+g|0;z=d;y=d>>>0>>0?e+1|0:e;d=l>>31;e=d+s|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;h=e^d;d=d^g;M=d;d=k>>31;g=d+n|0;e=d+k|0;A=g^d;d=d^(g>>>0>>0?e+1|0:e);o=d;e=0;d=j>>31;B=d+u|0;g=d+j|0;g=B>>>0>>0?g+1|0:g;B=B^d;d=d^g;g=(o|0)==(d|0)&A>>>0>B>>>0|d>>>0>>0;A=g?A:B;d=g?o:d;g=(M|0)==(d|0)&h>>>0>A>>>0|d>>>0>>0;g=Jj(-1,2147483647,g?h:A,g?M:d)>>>0>>0;d=fa;if(g&(d|0)<=(y|0)|(d|0)<(y|0)){break e}h=1;d=0;e=N;n=Ij(Hj(n,k,z,y),fa,v,q);k=n+x|0;g=fa+J|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=Hj(e,g,e,g);n=fa;e=P;o=g;j=Ij(Hj(u,j,z,y),fa,v,q);k=j+E|0;g=fa+K|0;g=j>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=Hj(e,g,e,g);g=o+k|0;e=fa+n|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;o=g;l=Ij(Hj(s,l,z,y),fa,v,q);j=l+H|0;g=fa+L|0;g=j>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-j|0;j=Hj(e,g,e,g);e=o+j|0;g=fa+k|0;k=Hj(e,e>>>0>>0?g+1|0:g,v,q);e=fa;j=e;if(!e&k>>>0<=1){break h}l=k;e=j;while(1){g=d<<1|h>>>31;h=h<<1;d=g;n=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(n){continue}break}break g}if((h|0)<(p|0)){d=h<<1}else{if((p|0)<=0){F[m+8>>2]=0;F[m+12>>2]=0;break i}d=(p<<1)-2|0}d=(d<<2)+c|0;F[m+8>>2]=F[d>>2];F[m+12>>2]=F[d+4>>2]}e=1;break e}d=j;h=k;if(h-1|0){break f}}while(1){g=Jj(k,j,h,d)+h|0;e=d+fa|0;e=g>>>0>>0?e+1|0:e;h=(e&1)<<31|g>>>1;d=e>>>1|0;e=Hj(h,d,h,d);g=fa;if((j|0)==(g|0)&e>>>0>k>>>0|g>>>0>j>>>0){continue}break}}k=F[m+20>>2];if(k){e=k-1|0;l=F[F[m+16>>2]+(e>>>3&536870908)>>2];F[m+20>>2]=e;g=r;n=w-g|0;j=g>>31;u=(w>>31)-(j+(g>>>0>w>>>0)|0)|0;g=Hj(z,y,n,u);s=fa;r=Hj(r,j,v,q);j=r+g|0;g=fa+s|0;g=j>>>0>>0?g+1|0:g;o=j;j=C;s=t-j|0;r=j>>31;w=(t>>31)-(r+(j>>>0>t>>>0)|0)|0;j=Hj(h,d,s,w);t=j;j=l>>>e&1;e=j;x=e?0-t|0:t;l=o+x|0;o=g;g=fa;e=o+(e?0-(g+((t|0)!=0)|0)|0:g)|0;U=m,W=Ij(l,l>>>0>>0?e+1|0:e,v,q),F[U+12>>2]=W;e=Hj(s,w,z,y);g=fa;l=Hj(v,q,C,r);e=l+e|0;g=fa+g|0;g=e>>>0>>0?g+1|0:g;d=Hj(h,d,n,u);l=j?d:0-d|0;h=l+e|0;e=fa;e=(j?e:0-(((d|0)!=0)+e|0)|0)+g|0;U=m,W=Ij(h,h>>>0>>0?e+1|0:e,v,q),F[U+8>>2]=W}e=(k|0)!=0}ea=i+80|0;break c}Da();V()}if(!e){break b}k:{if(F[a+8>>2]<=0){break k}g=F[a+32>>2];d=0;while(1){e=d<<2;f=F[(e+a|0)+68>>2];h=F[a+16>>2];l:{if((f|0)>(h|0)){F[e+g>>2]=h;break l}e=e+g|0;h=F[a+12>>2];if((h|0)>(f|0)){F[e>>2]=h;break l}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=p<<3;h=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+h|0;f=F[f+k>>2]+F[f+g>>2]|0;F[d>>2]=f;m:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break m}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}p=p+1|0;f=(I|0)>(p|0);if((p|0)==(T|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>p>>>0){continue}break}}Da();V()}a=f^1}else{a=0}return a&1}function wf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=M(0),x=0;k=ea-32|0;ea=k;a:{if(!(F[a+60>>2]!=F[a- -64>>2]|F[a+48>>2]!=F[a+52>>2])){j=1;break a}j=1;if((ga[F[F[a>>2]+24>>2]](a)|0)<=0){break a}b:{c:{while(1){d:{c=ga[F[F[a>>2]+20>>2]](a,x)|0;e:{f:{g:{f=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];switch(F[f+28>>2]-1|0){case 8:break f;case 0:case 2:case 4:break g;default:break e}}c=D[f+24|0];F[k+24>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;h:{if(!c){j=0;F[k>>2]=0;m=0;break h}if((c|0)<0){break d}c=c<<2;j=sa(c);F[k+16>>2]=j;b=c+j|0;F[k+24>>2]=b;m=0;ua(j,0,c);F[k+20>>2]=b;c=D[f+24|0];F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;if(!c){break h}if((c|0)<0){break c}c=c<<2;m=sa(c);F[k>>2]=m;ua(m,0,c)}i:{j:{switch(F[f+28>>2]-1|0){case 4:e=0;h=0;n=0;c=0;i=ea-16|0;ea=i;d=D[f+24|0];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;k:{l:{if(d){if((d|0)<0){break l}b=d<<2;h=sa(b);F[i>>2]=h;F[i+8>>2]=b+h;ua(h,0,b);e=sa(b);ua(e,0,b)}if(!F[f+80>>2]){break k}while(1){u=F[f>>2];r=F[u>>2];b=F[f+40>>2];l=F[f+48>>2]+Hj(b,F[f+44>>2],n,c)|0;l=ta(h,r+l|0,b);o=d<<24>>24;m:{if((o|0)<=0){break m}p=F[a+48>>2];g=0;if((d&255)!=1){v=o&-2;d=0;while(1){q=g<<2;F[q+e>>2]=F[p+(g+t<<2)>>2]+F[l+q>>2];q=g|1;r=q<<2;F[r+e>>2]=F[p+(t+q<<2)>>2]+F[l+r>>2];g=g+2|0;d=d+2|0;if((v|0)!=(d|0)){continue}break}}if(!(o&1)){break m}d=g<<2;F[d+e>>2]=F[p+(g+t<<2)>>2]+F[d+l>>2]}ta(F[u>>2]+L(b,n)|0,e,b);b=n+1|0;c=b?c:c+1|0;n=b;if(!c&I[f+80>>2]<=b>>>0|c){break k}d=G[f+24|0];continue}}va();V()}if(e){ra(e)}if(h){ra(h)}ea=i+16|0;break i;case 2:e=0;h=0;n=0;c=0;i=ea-16|0;ea=i;d=D[f+24|0];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;n:{o:{if(d){if((d|0)<0){break o}b=d<<1;h=sa(b);F[i>>2]=h;F[i+8>>2]=b+h;ua(h,0,b);e=sa(b);ua(e,0,b)}if(!F[f+80>>2]){break n}while(1){u=F[f>>2];r=F[u>>2];b=F[f+40>>2];l=F[f+48>>2]+Hj(b,F[f+44>>2],n,c)|0;l=ta(h,r+l|0,b);o=d<<24>>24;p:{if((o|0)<=0){break p}p=F[a+48>>2];g=0;if((d&255)!=1){v=o&-2;d=0;while(1){q=g<<1;E[q+e>>1]=H[l+q>>1]+H[p+(g+t<<2)>>1];q=g|1;r=q<<1;E[r+e>>1]=H[l+r>>1]+H[p+(t+q<<2)>>1];g=g+2|0;d=d+2|0;if((v|0)!=(d|0)){continue}break}}if(!(o&1)){break p}d=g<<1;E[d+e>>1]=H[d+l>>1]+H[p+(g+t<<2)>>1]}ta(F[u>>2]+L(b,n)|0,e,b);b=n+1|0;c=b?c:c+1|0;n=b;if(!c&I[f+80>>2]<=b>>>0|c){break n}d=G[f+24|0];continue}}va();V()}if(e){ra(e)}if(h){ra(h)}ea=i+16|0;break i;case 0:break j;default:break i}}e=0;g=0;n=0;c=0;h=ea-16|0;ea=h;b=D[f+24|0];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;q:{r:{if(b){if((b|0)<0){break r}g=sa(b);F[h>>2]=g;F[h+8>>2]=b+g;ua(g,0,b);e=sa(b);ua(e,0,b)}if(F[f+80>>2]){while(1){r=F[F[f>>2]>>2];i=F[f+40>>2];b=F[f+48>>2]+Hj(i,F[f+44>>2],n,c)|0;b=ta(g,r+b|0,i);l=D[f+24|0];s:{if((l|0)<=0){break s}p=F[a+48>>2];d=0;if((l|0)!=1){u=l&-2;i=0;while(1){D[d+e|0]=G[b+d|0]+G[p+(d+t<<2)|0];o=d|1;D[o+e|0]=G[b+o|0]+G[p+(o+t<<2)|0];d=d+2|0;i=i+2|0;if((u|0)!=(i|0)){continue}break}}if(!(l&1)){break s}D[d+e|0]=G[b+d|0]+G[p+(d+t<<2)|0]}b=F[f+40>>2];ta(F[F[f>>2]>>2]+L(b,n)|0,e,b);b=n+1|0;c=b?c:c+1|0;n=b;if(!c&I[f+80>>2]>b>>>0){continue}break}}if(e){ra(e)}if(g){ra(g)}ea=h+16|0;break q}va();V()}}t=D[f+24|0]+t|0;c=1;if(m){ra(m)}if(j){ra(j)}if(c){break e}j=0;break a}g=F[F[a+60>>2]+(s<<2)>>2];e=F[a+36>>2];j=F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2];F[k>>2]=F[f+56>>2];c=sa(32);F[k+16>>2]=c;F[k+20>>2]=24;F[k+24>>2]=-2147483616;D[c+24|0]=0;b=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);d=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[c+16|0]=d;D[c+17|0]=d>>>8;D[c+18|0]=d>>>16;D[c+19|0]=d>>>24;D[c+20|0]=b;D[c+21|0]=b>>>8;D[c+22|0]=b>>>16;D[c+23|0]=b>>>24;b=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[c+8|0]=d;D[c+9|0]=d>>>8;D[c+10|0]=d>>>16;D[c+11|0]=d>>>24;D[c+12|0]=b;D[c+13|0]=b>>>8;D[c+14|0]=b>>>16;D[c+15|0]=b>>>24;b=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;D[c+4|0]=b;D[c+5|0]=b>>>8;D[c+6|0]=b>>>16;D[c+7|0]=b>>>24;b=td(j,k,k+16|0);if(D[k+27|0]<0){ra(F[k+16>>2])}c=s+1|0;t:{if(b){me(f,g);break t}h=e+L(s,24)|0;e=F[h+4>>2];s=D[f+24|0];d=s<<2;b=sa((s|0)!=(s&1073741823)?-1:d);F[k+16>>2]=1065353216;w=J[h+20>>2];e=-1<0){J[k+16>>2]=w/M(e|0)}if((e|0)<=0){break b}u:{if(!F[g+80>>2]){break u}if((s|0)<=0){m=0;j=0;while(1){ta(F[F[f+64>>2]>>2]+j|0,b,d);j=d+j|0;m=m+1|0;if(m>>>0>2]){continue}break}break u}l=F[F[g>>2]>>2]+F[g+48>>2]|0;u=s&-2;v=s&1;i=0;e=0;j=0;while(1){n=F[h+8>>2];w=J[k+16>>2];m=0;p=0;if((s|0)!=1){while(1){o=m<<2;q=l+(j<<2)|0;J[o+b>>2]=M(w*M(F[q>>2]))+J[n+o>>2];o=o|4;J[o+b>>2]=M(w*M(F[q+4>>2]))+J[n+o>>2];m=m+2|0;j=j+2|0;p=p+2|0;if((u|0)!=(p|0)){continue}break}}if(v){m=m<<2;J[m+b>>2]=M(w*M(F[l+(j<<2)>>2]))+J[n+m>>2];j=j+1|0}ta(F[F[f+64>>2]>>2]+e|0,b,d);e=d+e|0;i=i+1|0;if(i>>>0>2]){continue}break}}ra(b)}s=c}j=1;x=x+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(x|0)){continue}break a}break}va();V()}va();V()}ra(b);j=0}ea=k+32|0;return j|0}function hd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=ea-96|0;ea=h;q=F[a+4>>2];e=F[q+32>>2];l=F[e+8>>2];g=l;n=F[e+12>>2];d=n;c=F[e+20>>2];o=F[e+16>>2];a:{if((d|0)<=(c|0)&o>>>0>=g>>>0|(c|0)>(d|0)){break a}f=F[e>>2];p=G[f+o|0];g=o+1|0;d=g?c:c+1|0;F[e+16>>2]=g;F[e+20>>2]=d;if((d|0)>=(n|0)&g>>>0>=l>>>0|(d|0)>(n|0)){break a}m=G[f+g|0];g=o+2|0;d=g>>>0<2?c+1|0:c;k=g;F[e+16>>2]=g;F[e+20>>2]=d;j=p<<24>>24;b:{if((j|0)>=0){g=F[a+216>>2];if(p>>>0>=(F[a+220>>2]-g|0)/144>>>0){break a}g=g+L(p,144)|0;if(F[g>>2]<0){break b}break a}if(F[a+212>>2]>=0){break a}g=a+212|0}F[g>>2]=b;c:{d:{g=H[q+36>>1];e:{if(((g<<8|g>>>8)&65535)>>>0>=258){if((d|0)>=(n|0)&k>>>0>=l>>>0|(d|0)>(n|0)){break a}g=G[f+k|0];d=o+3|0;c=d>>>0<3?c+1|0:c;F[e+16>>2]=d;F[e+20>>2]=c;c=g>>>0>1;if(c){break a}c=c?0:g;if(!m){break e}if(c){break a}break d}if(m){break d}c=0}if((j|0)<0){e=a+184|0}else{e=F[a+216>>2]+L(p,144)|0;D[e+100|0]=0;e=e+104|0}f:{if((c|0)==1){f=ea-112|0;ea=f;k=F[F[a+4>>2]+44>>2];c=sa(120);F[c>>2]=12204;F[c+4>>2]=0;F[c+116>>2]=0;F[c+112>>2]=e;F[c+108>>2]=k;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+8>>2]=12416;d=c- -64|0;F[d>>2]=0;F[d+4>>2]=0;F[c+72>>2]=0;F[c+76>>2]=0;F[c+80>>2]=0;F[c+84>>2]=0;F[c+88>>2]=0;F[c+104>>2]=0;F[c+96>>2]=0;F[c+100>>2]=0;m=F[a+8>>2];F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;j=f+32|0;d=j;F[d>>2]=0;F[d+4>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;d=f- -64|0;F[d>>2]=0;F[d+4>>2]=0;F[f+72>>2]=0;F[f+76>>2]=0;F[f+80>>2]=0;F[f+84>>2]=0;F[f+88>>2]=0;F[f+104>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;F[f+8>>2]=12416;F[f+96>>2]=0;F[f+100>>2]=0;F[f+12>>2]=m;g=F[m>>2];d=F[m+4>>2];D[f+111|0]=0;l=j;j=f+111|0;Na(l,(d-g>>2>>>0)/3|0,j);d=F[f+12>>2];g=F[d+28>>2];d=F[d+24>>2];D[f+111|0]=0;Na(f+44|0,g-d>>2,j);F[f+28>>2]=c;F[f+24>>2]=k;F[f+20>>2]=e;F[f+16>>2]=m;e=c+8|0;d=f+8|0;gd(e,d);g:{if((d|0)==(e|0)){F[c+92>>2]=F[d+84>>2];break g}Db(c+56|0,F[d+48>>2],F[d+52>>2]);Db(c+68|0,F[d+60>>2],F[d- -64>>2]);Db(c+80|0,F[d+72>>2],F[d+76>>2]);F[c+92>>2]=F[d+84>>2];Ca(c+96|0,F[d+88>>2],F[d+92>>2])}F[f+8>>2]=12416;e=F[f+96>>2];if(e){F[f+100>>2]=e;ra(e)}e=F[f+80>>2];if(e){F[f+84>>2]=e;ra(e)}e=F[f+68>>2];if(e){F[f+72>>2]=e;ra(e)}e=F[f+56>>2];if(e){F[f+60>>2]=e;ra(e)}F[f+8>>2]=12652;e=F[f+44>>2];if(e){ra(e)}e=F[f+32>>2];if(e){ra(e)}ea=f+112|0;break f}d=ea+-64|0;ea=d;f=F[F[a+4>>2]+44>>2];c=sa(80);F[c>>2]=12672;F[c+4>>2]=0;F[c+76>>2]=0;F[c+72>>2]=e;F[c+68>>2]=f;F[c+8>>2]=12836;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c- -64>>2]=0;m=c+56|0;g=m;F[g>>2]=0;F[g+4>>2]=0;l=F[a+8>>2];F[d+40>>2]=0;F[d+44>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;k=d+24|0;g=k;F[g>>2]=0;F[g+4>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[d+56>>2]=0;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=12836;F[d+4>>2]=l;j=F[l>>2];g=F[l+4>>2];D[d+63|0]=0;n=k;k=d+63|0;Na(n,(g-j>>2>>>0)/3|0,k);g=F[d+4>>2];j=F[g+28>>2];g=F[g+24>>2];D[d+63|0]=0;Na(d+36|0,j-g>>2,k);F[d+20>>2]=c;F[d+16>>2]=f;F[d+12>>2]=e;F[d+8>>2]=l;gd(c+8|0,d);Db(m,F[d+48>>2],F[d+52>>2]);F[d>>2]=12836;e=F[d+48>>2];if(e){F[d+52>>2]=e;ra(e)}F[d>>2]=12652;e=F[d+36>>2];if(e){ra(e)}e=F[d+24>>2];if(e){ra(e)}ea=d- -64|0}if(!c){break a}break c}if((j|0)<0){break a}g=F[q+44>>2];e=F[a+216>>2];c=sa(80);F[c+76>>2]=0;F[c+68>>2]=g;F[c+8>>2]=11900;F[c>>2]=12964;F[c+4>>2]=0;d=e+L(p,144)|0;i=d+104|0;F[c+72>>2]=i;F[c- -64>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+52>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+12>>2]=0;F[c+16>>2]=0;F[h+24>>2]=g;F[h+68>>2]=0;F[h+72>>2]=0;F[h+60>>2]=0;F[h+64>>2]=0;F[h+52>>2]=0;F[h+56>>2]=0;F[h+44>>2]=0;F[h+48>>2]=0;F[h+84>>2]=0;F[h+88>>2]=0;F[h+76>>2]=0;F[h+80>>2]=0;F[h+28>>2]=c;e=F[h+28>>2];F[h+8>>2]=F[h+24>>2];F[h+12>>2]=e;d=d+4|0;F[h+16>>2]=d;F[h+20>>2]=i;F[h+36>>2]=0;F[h+40>>2]=0;F[h+32>>2]=11900;e=F[h+20>>2];F[h>>2]=F[h+16>>2];F[h+4>>2]=e;i=h+32|0;Ee(i,d,h);e=c+8|0;gd(e,i);if((e|0)!=(i|0)){Db(c+56|0,F[i+48>>2],F[i+52>>2])}De(i)}c=pd(sa(64),c);j=F[a+4>>2];a=c;c=b;h:{i:{if((c|0)>=0){d=j+8|0;b=F[j+12>>2];e=F[j+8>>2];g=b-e>>2;j:{if((g|0)>(c|0)){break j}i=c+1|0;if(c>>>0>=g>>>0){Wb(d,i-g|0);break j}if(g>>>0<=i>>>0){break j}e=e+(i<<2)|0;if((e|0)!=(b|0)){while(1){b=b-4|0;i=F[b>>2];F[b>>2]=0;if(i){ga[F[F[i>>2]+4>>2]](i)}if((b|0)!=(e|0)){continue}break}}F[j+12>>2]=e}e=F[d>>2]+(c<<2)|0;b=F[e>>2];F[e>>2]=a;if(b){break i}break h}b=a;if(!a){break h}}ga[F[F[b>>2]+4>>2]](b)}i=(c^-1)>>>31|0}ea=h+96|0;return i|0}function Id(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[e+12>>2]=a;a:{if(a>>>0<=211){d=F[Hd(14288,14480,e+12|0)>>2];break a}if(a>>>0>=4294967292){$b();V()}f=(a>>>0)/210|0;d=L(f,210);F[e+8>>2]=a-d;g=Hd(14480,14672,e+8|0)-14480>>2;while(1){d=F[(g<<2)+14480>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0>>0){break b}if((L(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((L(b,c)|0)!=(d|0)){continue}break}break c}b=F[(a<<2)+14288>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((L(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=L(f,210);continue}break}F[e+12>>2]=d}ea=e+16|0;return d}function Ch(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=ea-32|0;ea=e;c=F[a+32>>2];d=H[a+36>>1];a:{b:{if(((d<<8|d>>>8)&65535)>>>0<=513){b=F[c+12>>2];d=F[c+20>>2];f=d;i=F[c+16>>2];g=i+4|0;d=g>>>0<4?d+1|0:d;j=F[c+8>>2];h=g;if(j>>>0>>0&(b|0)<=(d|0)|(b|0)<(d|0)){break a}n=F[c>>2];g=n+i|0;l=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[c+16>>2]=h;F[c+20>>2]=d;d=b;b=f;f=i+8|0;b=f>>>0<8?b+1|0:b;if(f>>>0>j>>>0&(b|0)>=(d|0)|(b|0)>(d|0)){break a}d=h+n|0;n=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[e+24>>2]=n;F[c+16>>2]=f;F[c+20>>2]=b;break b}if(!sb(1,e+28|0,c)){break a}if(!sb(1,e+24|0,F[a+32>>2])){break a}l=F[e+28>>2];n=F[e+24>>2]}if(l>>>0>1431655765){break a}f=F[a+32>>2];d=f;i=F[d+8>>2];b=i;c=F[d+16>>2];h=b-c|0;g=F[d+12>>2];o=b>>>0>>0;b=F[d+20>>2];d=Ij(h,g-(o+b|0)|0,3,0);if(!fa&d>>>0>>0){break a}d=Hj(l,0,3,0);if(!fa&d>>>0>>0|((b|0)>=(g|0)&c>>>0>=i>>>0|(b|0)>(g|0))){break a}g=G[c+F[f>>2]|0];i=c+1|0;d=i?b:b+1|0;F[f+16>>2]=i;F[f+20>>2]=d;c:{if(!g){f=0;b=ea-32|0;ea=b;F[b+24>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;d:{e:{d=L(l,3);if(d){if(d>>>0>=1073741824){break e}c=L(l,12);f=sa(c);F[b+16>>2]=f;ua(f,0,c)}d=ld(d,1,F[a+32>>2],f);f:{g:{if(!(!d|!l)){g=0;c=0;while(1){i=(c<<2)+f|0;h=F[i>>2];j=h>>>1|0;h=(h&1?0-j|0:j)+k|0;F[b>>2]=h;j=F[i+4>>2];k=j>>>1|0;h=h+(j&1?0-k|0:k)|0;F[b+4>>2]=h;i=F[i+8>>2];j=i>>>1|0;k=h+(i&1?0-j|0:j)|0;F[b+8>>2]=k;Sb(F[a+44>>2]+96|0,b);c=c+3|0;g=g+1|0;if((g|0)!=(l|0)){continue}break}break g}if(!f){break f}}ra(f)}ea=b+32|0;break d}va();V()}if(!d){break a}break c}h:{if(n>>>0<=255){if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;c=F[f+12>>2];b=c;h=F[f+8>>2];if((d|0)>=(b|0)&i>>>0>=h>>>0|(b|0)<(d|0)){break h}while(1){g=F[f>>2];k=G[g+i|0];b=d;j=i+1|0;b=j?b:b+1|0;F[f+16>>2]=j;F[f+20>>2]=b;F[e+8>>2]=k;if((b|0)>=(c|0)&j>>>0>=h>>>0|(b|0)>(c|0)){break h}k=G[g+j|0];b=d;j=i+2|0;b=j>>>0<2?b+1|0:b;F[f+16>>2]=j;F[f+20>>2]=b;F[e+12>>2]=k;if((b|0)>=(c|0)&j>>>0>=h>>>0|(b|0)>(c|0)){break h}b=G[g+j|0];c=i+3|0;d=c>>>0<3?d+1|0:d;F[f+16>>2]=c;F[f+20>>2]=d;F[e+16>>2]=b;Sb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;h=F[b+8>>2];c=F[b+12>>2];b=c;if(i>>>0>>0&(d|0)<=(b|0)|(b|0)>(d|0)){continue}break}break h}if(n>>>0<=65535){if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[f+12>>2];c=c+3|0;b=c>>>0<3?b+1|0:b;j=F[f+8>>2];h=c;c=b;if(j>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}while(1){k=F[f>>2];b=k+i|0;b=G[b|0]|G[b+1|0]<<8;F[f+16>>2]=h;F[f+20>>2]=c;F[e+8>>2]=b;b=d;c=i+4|0;b=c>>>0<4?b+1|0:b;if(c>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}h=h+k|0;h=G[h|0]|G[h+1|0]<<8;F[f+16>>2]=c;F[f+20>>2]=b;F[e+12>>2]=h;b=d;d=i+6|0;b=d>>>0<6?b+1|0:b;if(d>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}c=c+k|0;c=G[c|0]|G[c+1|0]<<8;F[f+16>>2]=d;F[f+20>>2]=b;F[e+16>>2]=c;Sb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[b+12>>2];j=F[b+8>>2];b=d;c=i+2|0;b=c>>>0<2?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&j>>>0>=h>>>0|(b|0)<(g|0)){continue}break}break h}i:{if(n>>>0>2097151){break i}g=H[a+36>>1];if(((g<<8|g>>>8)&65535)>>>0<514){break i}if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(!sb(1,e+4|0,f)){break h}while(1){F[e+8>>2]=F[e+4>>2];if(!sb(1,e+4|0,F[a+32>>2])){break h}F[e+12>>2]=F[e+4>>2];if(!sb(1,e+4|0,F[a+32>>2])){break h}F[e+16>>2]=F[e+4>>2];Sb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}d=F[a+32>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(sb(1,e+4|0,d)){continue}break}break h}if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[f+12>>2];c=c+5|0;b=c>>>0<5?b+1|0:b;j=F[f+8>>2];h=c;c=b;if(j>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}while(1){k=F[f>>2];b=k+i|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[f+16>>2]=h;F[f+20>>2]=c;F[e+8>>2]=b;b=d;c=i+8|0;b=c>>>0<8?b+1|0:b;o=c;if(c>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}c=h+k|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[f+16>>2]=o;F[f+20>>2]=b;F[e+12>>2]=c;b=i+12|0;d=b>>>0<12?d+1|0:d;c=b;if(b>>>0>j>>>0&(d|0)>=(g|0)|(d|0)>(g|0)){break h}b=k+o|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[f+16>>2]=c;F[f+20>>2]=d;F[e+16>>2]=b;Sb(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[b+12>>2];j=F[b+8>>2];b=d;c=i+4|0;b=c>>>0<4?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&j>>>0>=h>>>0|(b|0)<(g|0)){continue}break}}m=0;break a}F[F[a+4>>2]+80>>2]=n;m=1}ea=e+32|0;return m|0}function Hb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=ea-16|0;ea=m;a:{b:{c:{d:{if(G[F[a+4>>2]+36|0]<=1){j=-1;c=F[b+20>>2];e=F[b+16>>2];d=e+4|0;c=d>>>0<4?c+1|0:c;k=F[b+12>>2];if((k|0)<=(c|0)&d>>>0>I[b+8>>2]|(c|0)>(k|0)){break c}e=e+F[b>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[m+12>>2]=e;F[b+16>>2]=d;F[b+20>>2]=c;break d}j=-1;if(!Fa(1,m+12|0,b)){break c}e=F[m+12>>2]}e:{f:{g:{h:{i:{j:{if(!e){break j}c=F[a+8>>2];if((F[c+4>>2]-F[c>>2]>>2>>>0)/3>>>0>>0){break c}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0>=258){k=0;k:{l:{while(1){if(!Fa(1,m+8|0,b)){break c}c=F[m+8>>2];if(!Fa(1,m+8|0,b)){break c}f=c+f|0;c=F[m+8>>2];if(f>>>0>>0){break c}h=f-c|0;g=F[a+40>>2];m:{if((g|0)!=F[a+44>>2]){F[g+4>>2]=f;F[g>>2]=h;F[a+40>>2]=g+12;break m}c=F[a+36>>2];d=g-c|0;g=(d|0)/12|0;i=g+1|0;if(i>>>0>=357913942){break l}l=g<<1;i=g>>>0<178956970?i>>>0>l>>>0?i:l:357913941;if(i>>>0>=357913942){break k}i=L(i,12);l=sa(i);g=l+L(g,12)|0;F[g+4>>2]=f;F[g>>2]=h;h=g+L((d|0)/-12|0,12)|0;g=g+12|0;if((d|0)>0){ta(h,c,d)}F[a+44>>2]=i+l;F[a+40>>2]=g;F[a+36>>2]=h;if(!c){break m}ra(c)}k=k+1|0;if((k|0)!=(e|0)){continue}break}j=0;Eb(b,0,0);d=e>>>0>1?e:1;while(1){c=G[b+36|0];f=H[F[a+4>>2]+36>>1];n:{o:{if(((f<<8|f>>>8)&65535)>>>0<=513){if(!c){break n}g=0;c=F[b+32>>2];f=c>>>3|0;k=F[b+24>>2];e=f+k|0;h=F[b+28>>2];p:{if(e>>>0>=h>>>0){e=c;break p}g=G[e|0];e=c+1|0;F[b+32>>2]=e;f=e>>>3|0;g=g>>>(c&7)&1}if(h>>>0>f+k>>>0){break o}break n}if(!c){break n}g=0;e=F[b+32>>2];c=F[b+24>>2]+(e>>>3|0)|0;if(c>>>0>=I[b+28>>2]){break n}g=G[c|0]>>>(e&7)&1}F[b+32>>2]=e+1}c=F[a+36>>2]+L(j,12)|0;D[c+8|0]=G[c+8|0]&254|g&1;j=j+1|0;if((d|0)!=(j|0)){continue}break}D[b+36|0]=0;c=F[b+20>>2];f=0;e=F[b+32>>2]+7|0;f=e>>>0<7?1:f;d=f>>>3|0;e=(f&7)<<29|e>>>3;f=e+F[b+16>>2]|0;c=c+d|0;F[b+16>>2]=f;F[b+20>>2]=e>>>0>f>>>0?c+1|0:c;break j}va();V()}break a}k=0;while(1){d=F[b+12>>2];c=F[b+20>>2];f=c;h=F[b+16>>2];i=h+4|0;c=i>>>0<4?c+1|0:c;n=F[b+8>>2];l=i;if(n>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}o=F[b>>2];i=o+h|0;p=G[i|0]|G[i+1|0]<<8|(G[i+2|0]<<16|G[i+3|0]<<24);F[b+16>>2]=l;F[b+20>>2]=c;c=f;i=h+8|0;c=i>>>0<8?c+1|0:c;if(i>>>0>n>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}l=l+o|0;l=G[l|0]|G[l+1|0]<<8|(G[l+2|0]<<16|G[l+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;if((c|0)>=(d|0)&i>>>0>=n>>>0|(c|0)>(d|0)){break c}c=G[i+o|0];d=h+9|0;f=d>>>0<9?f+1|0:f;F[b+16>>2]=d;F[b+20>>2]=f;g=c&1|g&-2;c=F[a+40>>2];q:{if((c|0)!=F[a+44>>2]){D[c+8|0]=g;F[c+4>>2]=l;F[c>>2]=p;F[a+40>>2]=c+12;break q}f=F[a+36>>2];d=c-f|0;c=(d|0)/12|0;h=c+1|0;if(h>>>0>=357913942){break i}i=c<<1;h=c>>>0<178956970?h>>>0>i>>>0?h:i:357913941;if(h>>>0>=357913942){break a}i=L(h,12);n=sa(i);c=n+L(c,12)|0;D[c+8|0]=g;F[c+4>>2]=l;F[c>>2]=p;h=c+L((d|0)/-12|0,12)|0;if((d|0)>0){ta(h,f,d)}F[a+44>>2]=i+n;F[a+40>>2]=c+12;F[a+36>>2]=h;if(!f){break q}ra(f)}k=k+1|0;if((k|0)!=(e|0)){continue}break}}F[m+8>>2]=0;c=H[F[a+4>>2]+36>>1];c=(c<<8|c>>>8)&65535;r:{if(c>>>0<=511){j=-1;c=F[b+20>>2];f=F[b+16>>2];e=f+4|0;c=e>>>0<4?c+1|0:c;d=F[b+12>>2];if((d|0)<=(c|0)&e>>>0>I[b+8>>2]|(c|0)>(d|0)){break c}f=f+F[b>>2]|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=c;break r}if((c|0)!=512){break e}j=-1;if(!Fa(1,m+8|0,b)){break c}f=F[m+8>>2]}if(!f){break e}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0<258){break f}g=0;j=0;while(1){if(!Fa(1,m+4|0,b)){break g}j=F[m+4>>2]+j|0;c=F[a+52>>2];s:{if((c|0)!=F[a+56>>2]){F[c>>2]=j;F[a+52>>2]=c+4;break s}d=F[a+48>>2];e=c-d|0;h=e>>2;c=h+1|0;if(c>>>0>=1073741824){break h}k=e>>1;k=e>>>0<2147483644?c>>>0>k>>>0?c:k:1073741823;if(k){if(k>>>0>=1073741824){break a}c=sa(k<<2)}else{c=0}h=c+(h<<2)|0;F[h>>2]=j;if((e|0)>0){ta(c,d,e)}F[a+56>>2]=c+(k<<2);F[a+52>>2]=h+4;F[a+48>>2]=c;if(!d){break s}ra(d)}g=g+1|0;if((f|0)!=(g|0)){continue}break}break e}va();V()}va();V()}j=-1;break c}e=0;while(1){c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;j=F[b+12>>2];if((j|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(j|0)){j=-1;break c}d=d+F[b>>2]|0;k=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;c=F[a+52>>2];t:{if((c|0)!=F[a+56>>2]){F[c>>2]=k;F[a+52>>2]=c+4;break t}g=F[a+48>>2];d=c-g|0;h=d>>2;c=h+1|0;if(c>>>0>=1073741824){break b}j=d>>1;j=d>>>0<2147483644?c>>>0>j>>>0?c:j:1073741823;if(j){if(j>>>0>=1073741824){break a}c=sa(j<<2)}else{c=0}h=c+(h<<2)|0;F[h>>2]=k;if((d|0)>0){ta(c,g,d)}F[a+56>>2]=c+(j<<2);F[a+52>>2]=h+4;F[a+48>>2]=c;if(!g){break t}ra(g)}e=e+1|0;if((f|0)!=(e|0)){continue}break}}j=F[b+16>>2]}ea=m+16|0;return j}va();V()}wa(1336);V()}function jc(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:d:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f|0];if((e|0)<0){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if((e-128&65535)>>>0<65280){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>127){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e-128>>>0<4294967040){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>127){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=F[f>>2];e=F[f+4>>2]-(h>>>0<128)|0;if((e|0)==-1&h-128>>>0<4294967040|(e|0)!=-1){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>127|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=J[f>>2];m:{if(M(N(i))=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=K[f>>3];o:{if(N(j)<2147483648){e=~~j;break o}e=-2147483648}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}ua(d+e|0,0,c-e|0)}return g}function ic(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:d:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f|0];if((e|0)<0){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>255|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>255|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=J[f>>2];m:{if(i=M(0)){e=~~i>>>0;break m}e=0}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=K[f>>3];o:{if(j<4294967296&j>=0){e=~~j>>>0;break o}e=0}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}ua(d+e|0,0,c-e|0)}return g}function ve(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{if(F[a+92>>2]==F[a+88>>2]){break e}c=F[a+52>>2];f:{if((c|0)!=F[a+56>>2]){F[c>>2]=b;F[a+52>>2]=c+4;break f}d=F[a+48>>2];i=c-d|0;f=i>>2;e=f+1|0;if(e>>>0>=1073741824){break b}c=i>>1;e=i>>>0<2147483644?c>>>0>>0?e:c:1073741823;if(e){if(e>>>0>=1073741824){break a}c=sa(e<<2)}else{c=0}f=c+(f<<2)|0;F[f>>2]=b;if((i|0)>0){ta(c,d,i)}F[a+56>>2]=c+(e<<2);F[a+52>>2]=f+4;F[a+48>>2]=c;if(!d){break f}ra(d)}F[a+84>>2]=0;f=-1;c=-1;g:{if((b|0)==-1){break g}e=F[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=F[F[e>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=F[F[e>>2]+(d<<2)>>2]}h=c>>>3&536870908;e=F[a+36>>2];g=e+(f>>>3&536870908)|0;i=F[g>>2];d=1<>2]=d|i;g=a+8|0;if((b|0)!=-1){e=b+1|0;d=(e>>>0)%3|0?e:b-2|0}else{d=-1}Xa(g,f,d);e=F[a+36>>2]}d=e+h|0;e=F[d>>2];f=1<>2]=e|f;d=a+8|0;f=-1;i:{if((b|0)==-1){break i}f=b-1|0;if((b>>>0)%3|0){break i}f=b+2|0}Xa(d,c,f)}f=-1;f=(b|0)!=-1?F[F[F[a+4>>2]>>2]+(b<<2)>>2]:f;d=F[a+36>>2]+(f>>>3&536870908)|0;e=F[d>>2];c=1<>2]=c|e;Xa(a+8|0,f,b)}d=F[a+84>>2];if((d|0)>2){break e}while(1){f=L(d,12)+a|0;b=F[f+52>>2];if((b|0)==F[f+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=F[c>>2];F[f+52>>2]=c;F[a+84>>2]=d;if((b|0)==-1){break e}f=F[a+24>>2];c=(b>>>0)/3|0;j:{if(F[f+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){k=(b>>>0)/3|0;c=(k>>>3&268435452)+f|0;F[c>>2]=F[c>>2]|1<>2]>>2]+(b<<2)>>2]:f;d=F[a+36>>2]+(f>>>3&536870908)|0;e=F[d>>2];c=1<>2]=c|e;i=F[(F[F[a+16>>2]+96>>2]+L(k,12)|0)+((b>>>0)%3<<2)>>2];j=F[F[a+20>>2]+4>>2];c=F[j+4>>2];t:{if((c|0)!=F[j+8>>2]){F[c>>2]=i;F[j+4>>2]=c+4;break t}g=F[j>>2];h=c-g|0;e=h>>2;d=e+1|0;if(d>>>0>=1073741824){break s}c=h>>1;d=h>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=sa(d<<2)}else{c=0}e=c+(e<<2)|0;F[e>>2]=i;if((h|0)>0){ta(c,g,h)}F[j+8>>2]=c+(d<<2);F[j+4>>2]=e+4;F[j>>2]=c;if(!g){break t}ra(g)}h=F[a+12>>2];c=F[h+4>>2];u:{if((c|0)!=F[h+8>>2]){F[c>>2]=b;F[h+4>>2]=c+4;break u}i=F[h>>2];g=c-i|0;e=g>>2;d=e+1|0;if(d>>>0>=1073741824){break r}c=g>>1;d=g>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=sa(d<<2)}else{c=0}e=c+(e<<2)|0;F[e>>2]=b;if((g|0)>0){ta(c,i,g)}F[h+8>>2]=c+(d<<2);F[h+4>>2]=e+4;F[h>>2]=c;if(!i){break u}ra(i)}c=F[a+12>>2];F[F[c+12>>2]+(f<<2)>>2]=F[c+24>>2];F[c+24>>2]=F[c+24>>2]+1}if((b|0)==-1){break k}h=F[a+4>>2];f=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=F[F[h+12>>2]+(c<<2)>>2]}v:{w:{if((L(k,3)|0)!=(b|0)){e=b-1|0;break w}e=b+2|0;b=-1;if((e|0)==-1){break v}}b=F[F[h+12>>2]+(e<<2)>>2]}g=(b|0)==-1;i=(b>>>0)/3|0;e=(f>>>0)/3|0;c=(f|0)==-1;if(!c){c=c?-1:e;c=F[F[a+24>>2]+(c>>>3&536870908)>>2]&1<>2]+(c>>>3&536870908)>>2]>>>c&1){break x}e=0;c=F[F[h>>2]+(b<<2)>>2];if(!(F[F[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=F[a+88>>2]+(c<<2)|0;e=F[c>>2];F[c>>2]=e+1;e=(e|0)<=0?2:1}if(F[a+84>>2]>=(e|0)?d:0){break m}j=L(e,12)+a|0;c=F[j+52>>2];y:{if((c|0)!=F[j+56>>2]){F[c>>2]=b;F[j+52>>2]=c+4;break y}h=F[j+48>>2];k=c-h|0;i=k>>2;g=i+1|0;if(g>>>0>=1073741824){break d}c=k>>1;g=k>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=sa(g<<2)}else{c=0}i=c+(i<<2)|0;F[i>>2]=b;if((k|0)>0){ta(c,h,k)}F[j+48>>2]=c;F[j+52>>2]=i+4;F[j+56>>2]=c+(g<<2);if(!h){break y}ra(h)}if(F[a+84>>2]<=(e|0)){break x}F[a+84>>2]=e}if(d){break k}b=-1;if((f|0)==-1){break n}}b=F[F[F[a+4>>2]>>2]+(f<<2)>>2]}e=0;if(!(F[F[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=F[a+88>>2]+(b<<2)|0;c=F[b>>2];F[b>>2]=c+1;e=(c|0)<=0?2:1}if(F[a+84>>2]<(e|0)){break l}b=f}f=F[a+24>>2];continue}break}h=L(e,12)+a|0;b=F[h+52>>2];z:{if((b|0)!=F[h+56>>2]){F[b>>2]=f;F[h+52>>2]=b+4;break z}i=F[h+48>>2];g=b-i|0;c=g>>2;d=c+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=g>>>0<2147483644?b>>>0>>0?d:b:1073741823;if(d){if(d>>>0>=1073741824){break a}b=sa(d<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=f;if((g|0)>0){ta(b,i,g)}F[h+48>>2]=b;F[h+52>>2]=c+4;F[h+56>>2]=b+(d<<2);if(!i){break z}ra(i)}d=F[a+84>>2];if((e|0)>=(d|0)){break j}F[a+84>>2]=e;d=e;break j}d=F[a+84>>2]}if((d|0)<3){continue}break}}return 1}va();V()}va();V()}va();V()}wa(1336);V()}function ad(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=ea-48|0;ea=h;c=F[F[a+4>>2]+44>>2];d=F[a+8>>2];f=F[d>>2];d=F[d+4>>2];F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;d=(d-f>>2>>>0)/3|0;j=F[c+96>>2];f=(F[c+100>>2]-j|0)/12|0;a:{if(d>>>0>f>>>0){_c(c+96|0,d-f|0,h+32|0);break a}if(d>>>0>=f>>>0){break a}F[c+100>>2]=j+L(d,12)}b:{if(F[a+216>>2]==F[a+220>>2]){k=F[a+4>>2];i=F[k+44>>2];d=F[i+100>>2];if((d|0)!=F[i+96>>2]){c=0;while(1){g=F[a+8>>2];e=L(c,3);c:{d:{if((e|0)==-1){l=F[(F[g>>2]+(e<<2)|0)+4>>2];j=-1;e=1;break d}l=-1;j=F[F[g>>2]+(e<<2)>>2];f=e+1|0;if((f|0)==-1){e=0;break d}l=F[F[g>>2]+(f<<2)>>2];e=e+2|0;f=-1;if((e|0)==-1){break c}}f=F[F[g>>2]+(e<<2)>>2]}g=f;f=c+1|0;e=d;d=F[i+96>>2];e=(e-d|0)/12|0;if(e>>>0<=c>>>0){F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;_c(i+96|0,f-e|0,h+32|0);k=F[a+4>>2];d=F[i+96>>2]}c=L(c,12)+d|0;F[c+8>>2]=g;F[c+4>>2]=l;F[c>>2]=j;c=f;i=F[k+44>>2];d=F[i+100>>2];if(c>>>0<(d-F[i+96>>2]|0)/12>>>0){continue}break}}F[F[k+4>>2]+80>>2]=b;c=1;break b}F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;k=F[a+8>>2];b=F[k>>2];c=F[k+4>>2];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;e:{f:{g:{h:{i:{j:{k:{b=c-b|0;if(b){if((b|0)<0){break k}n=sa(b);F[h>>2]=n;b=b>>2<<2;c=b+n|0;F[h+8>>2]=c;ua(n,0,b);F[h+4>>2]=c}c=F[k+24>>2];if((F[k+28>>2]-c|0)<=0){d=0;b=0;break f}d=0;f=0;b=0;while(1){j=F[(o<<2)+c>>2];l:{if((j|0)==-1){break l}m:{if(F[F[a+120>>2]+(o>>>3&536870908)>>2]>>>o&1){break m}q=F[a+216>>2];c=F[a+220>>2]-q|0;if(!c){break m}c=(c|0)/144|0;r=c>>>0>1?c:1;l=0;c=(j>>>0)%3|0;g=j+2|0;s=(c|0)!=0|(g|0)!=-1;t=c?j-1|0:g;while(1){i=j<<2;e=q+L(l,144)|0;c=F[i+F[F[e+68>>2]>>2]>>2];n:{if(!(F[F[e+16>>2]+(c>>>3&536870908)>>2]>>>c&1)){break n}c=-1;o:{if(!s){break o}g=F[F[k+12>>2]+(t<<2)>>2];c=-1;if((g|0)==-1){break o}c=g-1|0;if((g>>>0)%3|0){break o}c=g+2|0}if((j|0)==(c|0)){break n}e=F[e+32>>2];g=F[e+i>>2];while(1){m=0;if((c|0)==-1){break e}if(F[e+(c<<2)>>2]!=(g|0)){j=c;break m}p:{q:{if((c>>>0)%3|0){i=c-1|0;break q}i=c+2|0;m=-1;if((i|0)==-1){break p}}c=F[F[k+12>>2]+(i<<2)>>2];m=-1;if((c|0)==-1){break p}m=c-1|0;if((c>>>0)%3|0){break p}m=c+2|0}c=m;if((j|0)!=(c|0)){continue}break}}l=l+1|0;if((r|0)!=(l|0)){continue}break}}c=b-f|0;g=c>>2;F[(j<<2)+n>>2]=g;r:{if(b>>>0

>>0){F[b>>2]=j;b=b+4|0;F[h+20>>2]=b;break r}b=g+1|0;if(b>>>0>=1073741824){break j}d=p-f|0;e=d>>1;b=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(b){if(b>>>0>=1073741824){break i}d=sa(b<<2)}else{d=0}g=d+(g<<2)|0;F[g>>2]=j;p=(b<<2)+d|0;b=g+4|0;if((c|0)>0){ta(d,f,c)}F[h+24>>2]=p;F[h+20>>2]=b;F[h+16>>2]=d;if(f){ra(f);k=F[a+8>>2]}f=d}if((j|0)==-1){break l}s:{if((j>>>0)%3|0){c=j-1|0;break s}c=j+2|0;if((c|0)==-1){break l}}c=F[F[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=j;if((c|0)==(e|0)){break l}while(1){g=c;t:{u:{i=F[a+216>>2];c=F[a+220>>2]-i|0;if(!c){break u}c=(c|0)/144|0;l=c>>>0>1?c:1;c=0;while(1){q=F[(i+L(c,144)|0)+32>>2];r=g<<2;if(F[q+r>>2]==F[q+(e<<2)>>2]){c=c+1|0;if((l|0)!=(c|0)){continue}break u}break}c=b-d|0;e=c>>2;F[n+r>>2]=e;if(b>>>0

>>0){F[b>>2]=g;b=b+4|0;F[h+20>>2]=b;f=d;break t}b=e+1|0;if(b>>>0>=1073741824){break h}f=p-d|0;i=f>>1;b=f>>>0<2147483644?b>>>0>i>>>0?b:i:1073741823;if(b){if(b>>>0>=1073741824){break g}f=sa(b<<2)}else{f=0}e=f+(e<<2)|0;F[e>>2]=g;p=(b<<2)+f|0;b=e+4|0;if((c|0)>0){ta(f,d,c)}F[h+24>>2]=p;F[h+20>>2]=b;F[h+16>>2]=f;if(!d){d=f;break t}ra(d);k=F[a+8>>2];d=f;break t}F[(g<<2)+n>>2]=F[(e<<2)+n>>2]}if((g|0)==-1){break l}v:{if((g>>>0)%3|0){c=g-1|0;break v}c=g+2|0;if((c|0)==-1){break l}}c=F[F[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=g;if((c|0)!=(j|0)){continue}break}}o=o+1|0;c=F[k+24>>2];if((o|0)>2]-c>>2){continue}break}break f}va();V()}va();V()}wa(1336);V()}va();V()}wa(1336);V()}o=F[a+4>>2];i=F[o+44>>2];l=F[i+100>>2];if((l|0)!=F[i+96>>2]){c=0;while(1){f=c+1|0;g=L(c,12);j=g+n|0;e=F[j+8>>2];k=F[j+4>>2];j=F[j>>2];m=c;c=F[i+96>>2];l=(l-c|0)/12|0;if(m>>>0>=l>>>0){F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;_c(i+96|0,f-l|0,h+32|0);o=F[a+4>>2];c=F[i+96>>2]}c=c+g|0;F[c+8>>2]=e;F[c+4>>2]=k;F[c>>2]=j;c=f;i=F[o+44>>2];l=F[i+100>>2];if(c>>>0<(l-F[i+96>>2]|0)/12>>>0){continue}break}}F[F[o+4>>2]+80>>2]=b-d>>2;m=1}c=m;if(n){ra(n)}if(!d){break b}F[h+20>>2]=d;ra(d)}ea=h+48|0;return c}function Ta(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=D[b|0];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 1:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=0;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=E[b>>1];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=H[b>>1];F[e+4>>2]=0;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 4:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=F[b>>2];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 5:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=0;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 6:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=F[b+4>>2];e=(f<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 7:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=F[b>>2];g=F[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;F[k>>2]=e;F[k+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 8:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;i=J[b>>2];d:{if(M(N(i))=M(1)?~~(i>M(0)?M(P(M(R(M(i*M(2.3283064365386963e-10)))),M(4294967296))):M(S(M(M(i-M(~~i>>>0>>>0))*M(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}F[e>>2]=h;F[e+4>>2]=g;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 9:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;j=K[b>>3];e:{if(N(j)<0x8000000000000000){g=N(j)>=1?~~(j>0?P(R(j*2.3283064365386963e-10),4294967295):S((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}F[e>>2]=h;F[e+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=0;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break a}}ua((e<<3)+d|0,0,c-e<<3)}}function Mb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=ea-96|0;ea=f;e=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=e;m=F[a+20>>2];d=F[m>>2];a:{b:{e=F[F[e+28>>2]+(b<<2)>>2];if(e>>>0>2]-d>>2>>>0){d=F[F[a+8>>2]+(F[d+(e<<2)>>2]<<2)>>2];e=F[a+4>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}F[f+72>>2]=0;F[f+76>>2]=0;m=f- -64|0;F[m>>2]=0;F[m+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Ta(e,d,D[e+24|0],f+56|0);e=b+1|0;d=(e>>>0)%3|0;if(b>>>0<=e>>>0){m=d?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;while(1){d=m;e=h;c:{if(!F[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}k=F[a+20>>2];b=F[k>>2];d=F[F[F[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=F[k+4>>2]-b>>2>>>0){break b}d=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){d=F[F[b+68>>2]+(d<<2)>>2]}F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;Ta(b,d,D[b+24|0],f+32|0);d=F[a+20>>2];b=F[d>>2];e=F[F[F[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=F[d+4>>2]-b>>2>>>0){break a}d=F[F[a+8>>2]+(F[b+(e<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){d=F[F[b+68>>2]+(d<<2)>>2]}F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;Ta(b,d,D[b+24|0],f+8|0);e=F[f+8>>2];b=F[f+56>>2];d=e-b|0;k=F[f+60>>2];n=F[f+12>>2]-(k+(b>>>0>e>>>0)|0)|0;i=F[f+40>>2];e=F[f+64>>2];s=i-e|0;t=F[f+68>>2];i=F[f+44>>2]-(t+(e>>>0>i>>>0)|0)|0;u=Hj(d,n,s,i);v=j-u|0;g=g-(fa+(j>>>0>>0)|0)|0;w=v;j=F[f+16>>2];u=j-e|0;t=F[f+20>>2]-((e>>>0>j>>>0)+t|0)|0;j=F[f+32>>2];v=j-b|0;k=F[f+36>>2]-((b>>>0>j>>>0)+k|0)|0;e=Hj(u,t,v,k);j=w+e|0;b=fa+g|0;b=e>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=F[f+48>>2];e=F[f+72>>2];n=b-e|0;o=F[f+76>>2];x=F[f+52>>2]-(o+(b>>>0>>0)|0)|0;p=Hj(d,p,n,x);d=w+p|0;b=fa+l|0;b=d>>>0

>>0?b+1|0:b;l=F[f+24>>2];p=l-e|0;e=F[f+28>>2]-((e>>>0>l>>>0)+o|0)|0;l=Hj(p,e,v,k);o=d-l|0;l=b-(fa+(d>>>0>>0)|0)|0;b=Hj(u,t,n,x);d=q-b|0;b=r-(fa+(b>>>0>q>>>0)|0)|0;r=Hj(p,e,s,i);q=r+d|0;b=fa+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=F[f+88>>2];e=F[f+80>>2];d:{if(G[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}F[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;F[f+88>>2]=b;if((b|0)!=-1){break e}}b=F[f+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}D[f+92|0]=0;F[f+88>>2]=d;break d}if((b|0)!=F[f+84>>2]){break d}F[f+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}F[f+88>>2]=d}b=F[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;d=b+q|0;e=b;b=b+r|0;k=d^e;h=e^(d>>>0>>0?b+1|0:b);n=-1;d=2147483647;b=l>>31;i=b;e=b+o|0;b=b+l|0;b=e>>>0>>0?b+1|0:b;e=e^i;b=b^i;i=b;s=e^-1;b=b^2147483647;m=g;m:{n:{if(!F[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break m}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=a;a=b;b=g>>31;d=b+j|0;h=g;g=b;b=h+b|0;b=d>>>0>>0?b+1|0:b;h=d^g;d=h+e|0;g=b^g;b=d;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break o}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(e|0)&(g^-1)>>>0>>0|e>>>0>h>>>0){break o}b=b+e|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;d=b;if(!b&a>>>0<536870913){break m}}b=d>>>29|0;a=(d&536870911)<<3|n>>>29}j=Ij(j,m,a,b);o=Ij(o,l,a,b);q=Ij(q,r,a,b)}F[c+8>>2]=j;F[c+4>>2]=o;F[c>>2]=q;ea=f+96|0;return}Da();V()}Da();V()}Da();V()}function He(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=ea+-64|0;ea=f;F[f+56>>2]=0;F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;g=f+8|0;d=H[b+38>>1];a:{b:{if(!d){break b}c:{if(d>>>0<=511){e=F[b+12>>2];d=F[b+20>>2];h=F[b+16>>2];i=h+4|0;d=i>>>0<4?d+1|0:d;if(i>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=h+F[b>>2]|0;k=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[g+12>>2]=k;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;break c}if(!jb(1,g+12|0,b)){break b}k=F[g+12>>2]}e=F[g>>2];d=F[g+4>>2]-e>>2;d:{if(d>>>0>>0){Aa(g,k-d|0);k=F[g+12>>2];break d}if(d>>>0<=k>>>0){break d}F[g+4>>2]=e+(k<<2)}d=1;if(!k){break a}q=F[b+8>>2];m=F[b+12>>2];p=F[g>>2];h=0;while(1){e=F[b+20>>2];i=F[b+16>>2];d=0;if((m|0)<=(e|0)&q>>>0<=i>>>0|(e|0)>(m|0)){break a}s=F[b>>2];n=G[s+i|0];d=e;e=i+1|0;d=e?d:d+1|0;i=e;F[b+16>>2]=e;F[b+20>>2]=d;e=n>>>2|0;j=0;e:{f:{g:{h:{t=n&3;switch(t|0){case 0:break f;case 3:break h;default:break g}}e=e+h|0;d=0;if(e>>>0>=k>>>0){break a}ua(p+(h<<2)|0,0,(n&252)+4|0);h=e;break e}while(1){if((d|0)>=(m|0)&i>>>0>=q>>>0|(d|0)>(m|0)){break b}k=G[i+s|0];i=i+1|0;d=i?d:d+1|0;F[b+16>>2]=i;F[b+20>>2]=d;e=k<<(j<<3|6)|e;j=j+1|0;if((t|0)!=(j|0)){continue}break}}F[p+(h<<2)>>2]=e}k=F[g+12>>2];h=h+1|0;if(k>>>0>h>>>0){continue}break}i=g+16|0;q=F[g>>2];e=F[g+16>>2];d=F[g+20>>2]-e|0;i:{if(d>>>0<=4194303){Aa(i,1048576-(d>>>2|0)|0);break i}if((d|0)==4194304){break i}F[g+20>>2]=e+4194304}d=g+28|0;h=F[d>>2];e=F[g+32>>2]-h>>3;j:{if(e>>>0>>0){tb(d,k-e|0);h=F[d>>2];break j}if(e>>>0>k>>>0){F[g+32>>2]=(k<<3)+h}if(!k){break b}}j=0;g=0;while(1){d=(j<<2)+q|0;m=F[d>>2];n=(j<<3)+h|0;e=g;F[n+4>>2]=e;F[n>>2]=m;d=F[d>>2];g=d+e|0;if(g>>>0>1048576){break b}k:{if(e>>>0>=g>>>0){break k}m=F[i>>2];n=0;p=d&7;if(p){while(1){F[m+(e<<2)>>2]=j;e=e+1|0;n=n+1|0;if((p|0)!=(n|0)){continue}break}}if(d-1>>>0<=6){break k}while(1){d=m+(e<<2)|0;F[d>>2]=j;F[d+28>>2]=j;F[d+24>>2]=j;F[d+20>>2]=j;F[d+16>>2]=j;F[d+12>>2]=j;F[d+8>>2]=j;F[d+4>>2]=j;e=e+8|0;if((g|0)!=(e|0)){continue}break}}j=j+1|0;if((k|0)!=(j|0)){continue}break}l=(g|0)==1048576}d=l}l:{if(!d|(F[f+20>>2]?0:a)){break l}g=0;j=ea-16|0;ea=j;m:{n:{if(H[b+38>>1]<=511){e=F[b+12>>2];k=e;d=F[b+20>>2];l=F[b+16>>2];i=l+8|0;d=i>>>0<8?d+1|0:d;h=F[b+8>>2];if(h>>>0>>0&(d|0)>=(e|0)|(d|0)>(e|0)){break m}l=l+F[b>>2]|0;e=G[l|0]|G[l+1|0]<<8|(G[l+2|0]<<16|G[l+3|0]<<24);l=G[l+4|0]|G[l+5|0]<<8|(G[l+6|0]<<16|G[l+7|0]<<24);F[b+16>>2]=i;F[b+20>>2]=d;break n}if(!ib(1,j+8|0,b)){break m}i=F[b+16>>2];d=F[b+20>>2];h=F[b+8>>2];k=F[b+12>>2];e=F[j+8>>2];l=F[j+12>>2]}m=h-i|0;h=k-(d+(i>>>0>h>>>0)|0)|0;if((h|0)==(l|0)&e>>>0>m>>>0|h>>>0>>0){break m}d=d+l|0;h=e+i|0;d=h>>>0>>0?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if((e|0)<=0){break m}b=i+F[b>>2]|0;F[f+48>>2]=b;d=e-1|0;h=d+b|0;i=G[h|0];o:{if(i>>>0<=63){F[f+52>>2]=d;b=G[h|0]&63;break o}p:{switch((i>>>6|0)-1|0){case 0:if(e>>>0<2){break m}F[f+52>>2]=e-2;b=(b+e|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break o;case 1:if(e>>>0<3){break m}F[f+52>>2]=e-3;b=(b+e|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break o;default:break p}}F[f+52>>2]=e-4;b=(b+e|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}b=b+4194304|0;F[f+56>>2]=b;g=b>>>0<1073741824}ea=j+16|0;if(!g){break l}if(!a){o=1;break l}d=F[f+36>>2];e=F[f+48>>2];h=F[f+24>>2];b=F[f+56>>2];while(1){q:{if(b>>>0>4194303){break q}o=F[f+52>>2];while(1){if((o|0)<=0){break q}o=o-1|0;F[f+52>>2]=o;b=G[e+o|0]|b<<8;F[f+56>>2]=b;if(b>>>0<4194304){continue}break}}i=b&1048575;g=F[h+(i<<2)>>2];l=d+(g<<3)|0;b=(L(F[l>>2],b>>>20|0)+i|0)-F[l+4>>2]|0;F[f+56>>2]=b;F[(r<<2)+c>>2]=g;o=1;r=r+1|0;if((r|0)!=(a|0)){continue}break}}a=F[f+36>>2];if(a){F[f+40>>2]=a;ra(a)}a=F[f+24>>2];if(a){F[f+28>>2]=a;ra(a)}a=F[f+8>>2];if(a){F[f+12>>2]=a;ra(a)}ea=f- -64|0;return o}function hc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=E[b>>1];if((e|0)<0){break b}E[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e-32768>>>0<4294901760){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>32767){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=F[b>>2];e=F[b+4>>2]-(i>>>0<32768)|0;if((e|0)==-1&i-32768>>>0<4294901760|(e|0)!=-1){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>32767|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=J[b>>2];e:{if(M(N(j))>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=K[b>>3];f:{if(N(k)<2147483648){e=~~k;break f}e=-2147483648}E[i>>1]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<1)+d|0,0,c-e<<1)}return h}return 0}function Aj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;F[a+8>>2]=e;d=a+32|0;i=F[d>>2];f=F[a+36>>2]-i>>2;a:{if(f>>>0>>0){Aa(d,e-f|0);i=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}d=e}f=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(f),0,f);p=ua(sa(f),0,f);b:{if((d|0)<=0){break b}while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){F[d+i>>2]=h;break c}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){h=f<<2;d=h+c|0;h=F[b+h>>2]+F[h+i>>2]|0;F[d>>2]=h;d:{if((h|0)>F[a+16>>2]){g=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}g=h+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];u=F[f>>2];f=F[f+4>>2]-u|0;if((f|0)>=5){y=F[a+52>>2];r=F[a+48>>2];f=f>>2;z=(f|0)>2?f:2;A=f>>>0>1?f:1;v=e&-2;w=e&1;B=e&-4;x=e&3;t=e-1|0;C=e<<2;o=1;while(1){e:{f:{g:{h:{if((o|0)!=(A|0)){h=F[(o<<2)+u>>2];s=(e|0)<=0;if(!s){ua(m,0,C)}if((h|0)==-1){j=L(e,o);break f}D=F[r>>2];n=0;f=h;while(1){i:{if(F[(f>>>3&536870908)+D>>2]>>>f&1){break i}g=F[F[F[r+64>>2]+12>>2]+(f<<2)>>2];if((g|0)==-1){break i}j=F[y>>2];i=F[r+28>>2];l=F[j+(F[i+(g<<2)>>2]<<2)>>2];if((l|0)>=(o|0)){break i}k=g+1|0;k=F[j+(F[i+(((k>>>0)%3|0?k:g-2|0)<<2)>>2]<<2)>>2];if((k|0)>=(o|0)){break i}g=F[j+(F[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(o|0)){break i}j:{if(s){break j}i=L(e,g);j=L(e,k);l=L(e,l);g=0;q=0;if(t){while(1){F[(g<<2)+p>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+l<<2)+c>>2];k=g|1;F[(k<<2)+p>>2]=(F[(i+k<<2)+c>>2]+F[(j+k<<2)+c>>2]|0)-F[(k+l<<2)+c>>2];g=g+2|0;q=q+2|0;if((v|0)!=(q|0)){continue}break}}if(w){F[(g<<2)+p>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+l<<2)+c>>2]}if(s){break j}i=0;g=0;j=0;if(t>>>0>2){while(1){l=g<<2;k=l+m|0;F[k>>2]=F[k>>2]+F[l+p>>2];k=l|4;q=k+m|0;F[q>>2]=F[q>>2]+F[k+p>>2];k=l|8;q=k+m|0;F[q>>2]=F[q>>2]+F[k+p>>2];l=l|12;k=l+m|0;F[k>>2]=F[k>>2]+F[l+p>>2];g=g+4|0;j=j+4|0;if((B|0)!=(j|0)){continue}break}}if(!x){break j}while(1){j=g<<2;l=j+m|0;F[l>>2]=F[l>>2]+F[j+p>>2];g=g+1|0;i=i+1|0;if((x|0)!=(i|0)){continue}break}}n=n+1|0}k:{l:{if((f>>>0)%3|0){f=f-1|0;break l}f=f+2|0;g=-1;if((f|0)==-1){break k}}g=-1;if(F[F[r>>2]+(f>>>3&536870908)>>2]>>>f&1){break k}f=F[F[F[r+64>>2]+12>>2]+(f<<2)>>2];g=-1;if((f|0)==-1){break k}g=f-1|0;if((f>>>0)%3|0){break k}g=f+2|0}f=(g|0)==(h|0)?-1:g;if((f|0)!=-1){continue}break}j=L(e,o);if(!n){break f}if(s){break g}g=0;f=0;if(!t){break h}while(1){h=g<<2;i=h+m|0;F[i>>2]=F[i>>2]/(n|0);h=(h|4)+m|0;F[h>>2]=F[h>>2]/(n|0);g=g+2|0;f=f+2|0;if((v|0)!=(f|0)){continue}break}break h}Da();V()}if(!w){break g}f=(g<<2)+m|0;F[f>>2]=F[f>>2]/(n|0)}if((d|0)<=0){break e}i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];m:{if((f|0)>(h|0)){F[d+i>>2]=h;break m}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break m}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=j<<2;g=d+c|0;j=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+j>>2]+F[h+i>>2]|0;F[d>>2]=h;n:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break n}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}if((d|0)<=0){break e}h=(L(o-1|0,e)<<2)+c|0;i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+h>>2];n=F[a+16>>2];o:{if((f|0)>(n|0)){F[d+i>>2]=n;break o}d=d+i|0;n=F[a+12>>2];if((n|0)>(f|0)){F[d>>2]=n;break o}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=j<<2;g=d+c|0;j=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+j>>2]+F[h+i>>2]|0;F[d>>2]=h;p:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break p}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}o=o+1|0;if((z|0)!=(o|0)){continue}break}}ra(p);ra(m);return 1}function gc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b|0];if((e|0)<0){break b}E[(g<<1)+d>>1]=e&255;b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=E[b>>1];if((e|0)<0){break b}E[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>65535){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>65535){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=J[b>>2];e:{if(j=M(0)){e=~~j>>>0;break e}e=0}E[i>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=K[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}E[i>>1]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<1)+d|0,0,c-e<<1)}return h}return 0}function oc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=ea-48|0;ea=e;d=H[6693]|H[6694]<<16;f=H[6691]|H[6692]<<16;E[e+38>>1]=f;E[e+40>>1]=f>>>16;E[e+42>>1]=d;E[e+44>>1]=d>>>16;d=F[3345];F[e+32>>2]=F[3344];F[e+36>>2]=d;d=F[3343];F[e+24>>2]=F[3342];F[e+28>>2]=d;d=F[3341];F[e+16>>2]=F[3340];F[e+20>>2]=d;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+5|0;d=h>>>0<5?d+1|0:d;a:{b:{if(h>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){b=La(e+16|0);if(b>>>0>=4294967280){break a}c:{d:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break d}D[e+11|0]=b;c=e;if(!b){break c}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}d=g+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);D[c|0]=f;D[c+1|0]=f>>>8;D[c+2|0]=f>>>16;D[c+3|0]=f>>>24;D[c+4|0]=G[d+4|0];d=F[b+20>>2];f=F[b+16>>2]+5|0;d=f>>>0<5?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(Ha(c,1404,5)){b=sa(32);D[b+16|0]=G[1640];c=G[1636]|G[1637]<<8|(G[1638]<<16|G[1639]<<24);d=G[1632]|G[1633]<<8|(G[1634]<<16|G[1635]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1628]|G[1629]<<8|(G[1630]<<16|G[1631]<<24);d=G[1624]|G[1625]<<8|(G[1626]<<16|G[1627]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+17|0]=0;F[a>>2]=-1;Ba(a+4|0,b,17);ra(b);break b}g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=La(e+16|0);if(b>>>0>=4294967280){break a}e:{f:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break f}D[e+11|0]=b;c=e;if(!b){break e}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+5|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=La(e+16|0);if(b>>>0>=4294967280){break a}g:{h:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break h}D[e+11|0]=b;c=e;if(!b){break g}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+6|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=La(e+16|0);if(b>>>0>=4294967280){break a}i:{j:{if(b>>>0>=11){d=b+16&-16;c=sa(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break j}D[e+11|0]=b;c=e;if(!b){break i}}ta(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];Ba(b,a,F[e+4>>2]);ra(a);break b}D[c+7|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=nc(e,e+16|0);F[a>>2]=-2;a=a+4|0;if(D[b+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}Ba(a,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break b}ra(F[b>>2]);break b}D[c+8|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=d;i=F[b+16>>2];g=i+1|0;d=g?d:d+1|0;F[b+16>>2]=g;F[b+20>>2]=d;h=F[b+12>>2];d=f;f=i+3|0;d=f>>>0<3?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){b=nc(e,e+16|0);F[a>>2]=-2;a=a+4|0;if(D[b+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}Ba(a,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break b}ra(F[b>>2]);break b}f=c;c=g+F[b>>2]|0;E[f+10>>1]=G[c|0]|G[c+1|0]<<8;d=F[b+20>>2];c=F[b+16>>2]+2|0;d=c>>>0<2?d+1|0:d;F[b+16>>2]=c;F[b+20>>2]=d;F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+4>>2]=0}ea=e+48|0;return}Ma();V()}function lj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;F[a+8>>2]=e;d=a+32|0;i=F[d>>2];f=F[a+36>>2]-i>>2;a:{if(f>>>0>>0){Aa(d,e-f|0);i=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}d=e}f=(e&1073741823)!=(e|0)?-1:e<<2;n=ua(sa(f),0,f);q=ua(sa(f),0,f);b:{if((d|0)<=0){break b}while(1){d=g<<2;f=F[d+n>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){F[d+i>>2]=h;break c}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){h=f<<2;d=h+c|0;h=F[b+h>>2]+F[h+i>>2]|0;F[d>>2]=h;d:{if((h|0)>F[a+16>>2]){g=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}g=h+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];t=F[f>>2];f=F[f+4>>2]-t|0;if((f|0)>=5){z=F[a+52>>2];u=F[a+48>>2];f=f>>2;A=(f|0)>2?f:2;B=f>>>0>1?f:1;v=e&-2;w=e&1;C=e&-4;x=e&3;s=e-1|0;D=e<<2;o=1;while(1){e:{f:{g:{h:{if((o|0)!=(B|0)){h=F[(o<<2)+t>>2];r=(e|0)<=0;if(!r){ua(n,0,D)}if((h|0)==-1){h=L(e,o);break f}y=F[u+12>>2];l=0;f=h;while(1){g=F[(f<<2)+y>>2];i:{if((g|0)==-1){break i}j=F[z>>2];i=F[u>>2];p=F[j+(F[i+(g<<2)>>2]<<2)>>2];k=g+1|0;k=(k>>>0)%3|0?k:g-2|0;if((k|0)!=-1){k=F[i+(k<<2)>>2]}else{k=-1}j:{k:{if((g>>>0)%3|0){g=g-1|0;break k}g=g+2|0;m=-1;if((g|0)==-1){break j}}m=F[i+(g<<2)>>2]}if((o|0)<=(p|0)){break i}g=F[(k<<2)+j>>2];if((g|0)>=(o|0)){break i}i=F[j+(m<<2)>>2];if((i|0)>=(o|0)){break i}l:{if(r){break l}i=L(e,i);j=L(e,g);p=L(e,p);g=0;m=0;if(s){while(1){F[(g<<2)+q>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+p<<2)+c>>2];k=g|1;F[(k<<2)+q>>2]=(F[(i+k<<2)+c>>2]+F[(j+k<<2)+c>>2]|0)-F[(k+p<<2)+c>>2];g=g+2|0;m=m+2|0;if((v|0)!=(m|0)){continue}break}}if(w){F[(g<<2)+q>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+p<<2)+c>>2]}if(r){break l}p=0;g=0;i=0;if(s>>>0>2){while(1){j=g<<2;k=j+n|0;F[k>>2]=F[k>>2]+F[j+q>>2];k=j|4;m=k+n|0;F[m>>2]=F[m>>2]+F[k+q>>2];k=j|8;m=k+n|0;F[m>>2]=F[m>>2]+F[k+q>>2];j=j|12;k=j+n|0;F[k>>2]=F[k>>2]+F[j+q>>2];g=g+4|0;i=i+4|0;if((C|0)!=(i|0)){continue}break}}if(!x){break l}while(1){i=g<<2;j=i+n|0;F[j>>2]=F[j>>2]+F[i+q>>2];g=g+1|0;p=p+1|0;if((x|0)!=(p|0)){continue}break}}l=l+1|0}m:{n:{if((f>>>0)%3|0){f=f-1|0;break n}f=f+2|0;g=-1;if((f|0)==-1){break m}}f=F[(f<<2)+y>>2];g=-1;if((f|0)==-1){break m}g=f-1|0;if((f>>>0)%3|0){break m}g=f+2|0}f=(g|0)==(h|0)?-1:g;if((f|0)!=-1){continue}break}h=L(e,o);if(!l){break f}if(r){break g}g=0;f=0;if(!s){break h}while(1){i=g<<2;j=i+n|0;F[j>>2]=F[j>>2]/(l|0);i=(i|4)+n|0;F[i>>2]=F[i>>2]/(l|0);g=g+2|0;f=f+2|0;if((v|0)!=(f|0)){continue}break}break h}Da();V()}if(!w){break g}f=(g<<2)+n|0;F[f>>2]=F[f>>2]/(l|0)}if((d|0)<=0){break e}i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+n>>2];l=F[a+16>>2];o:{if((f|0)>(l|0)){F[d+i>>2]=l;break o}d=d+i|0;l=F[a+12>>2];if((l|0)>(f|0)){F[d>>2]=l;break o}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=h<<2;g=d+c|0;l=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+l>>2]+F[h+i>>2]|0;F[d>>2]=h;p:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break p}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}if((d|0)<=0){break e}l=(L(o-1|0,e)<<2)+c|0;i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+l>>2];j=F[a+16>>2];q:{if((f|0)>(j|0)){F[d+i>>2]=j;break q}d=d+i|0;j=F[a+12>>2];if((j|0)>(f|0)){F[d>>2]=j;break q}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=h<<2;g=d+c|0;l=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+l>>2]+F[h+i>>2]|0;F[d>>2]=h;r:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break r}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}o=o+1|0;if((A|0)!=(o|0)){continue}break}}ra(q);ra(n);return 1}function fc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=E[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if((e|0)<0){break b}F[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if((F[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>2147483647|e){break a}F[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=J[b>>2];e:{if(M(N(j))>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=K[b>>3];f:{if(N(k)<2147483648){e=~~k;break f}e=-2147483648}F[i>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<2)+d|0,0,c-e<<2)}return h}return 0}function ec(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=E[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(F[b+4>>2]){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(F[b+4>>2]){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=J[b>>2];e:{if(j=M(0)){e=~~j>>>0;break e}e=0}F[i>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=K[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}F[i>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Hj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ua((e<<2)+d|0,0,c-e<<2)}return h}return 0}function Ui(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=ea-32|0;ea=e;a:{b:{switch(c-2|0){case 0:c=F[a+4>>2];f=F[a+12>>2];F[e+24>>2]=-1;F[e+16>>2]=-1;F[e+20>>2]=1065353216;F[e+8>>2]=-1;F[e+12>>2]=-1;if((b|0)==-2){break a}j=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[c>>2]+8>>2]](c)|0)==1){i=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];c:{if((ga[F[F[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break c}h=ga[F[F[c>>2]+36>>2]](c)|0;a=ga[F[F[c>>2]+44>>2]](c,f)|0;if(!h|!a){break c}g=a+12|0;f=ga[F[F[c>>2]+40>>2]](c,f)|0;c=F[c+44>>2];if(f){if((b|0)!=6){break c}d=sa(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=f;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=f;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=7172;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=7696;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0;break c}if((b|0)!=6){break c}d=sa(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=h;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=h;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=8108;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=8500;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0}if(d){break a}}d=sa(28);F[d+4>>2]=j;a=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=a;a=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=a;F[d+24>>2]=F[e+24>>2];F[d>>2]=8888;break a;case 1:break b;default:break a}}c=F[a+4>>2];f=F[a+12>>2];F[e+24>>2]=-1;F[e+16>>2]=-1;F[e+20>>2]=1065353216;F[e+8>>2]=-1;F[e+12>>2]=-1;if((b|0)==-2){break a}j=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];if((ga[F[F[c>>2]+8>>2]](c)|0)==1){i=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];d:{if((ga[F[F[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break d}h=ga[F[F[c>>2]+36>>2]](c)|0;a=ga[F[F[c>>2]+44>>2]](c,f)|0;if(!h|!a){break d}g=a+12|0;f=ga[F[F[c>>2]+40>>2]](c,f)|0;c=F[c+44>>2];if(f){if((b|0)!=6){break d}d=sa(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=f;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=f;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=9056;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=9620;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0;break d}if((b|0)!=6){break d}d=sa(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=h;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=h;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=10060;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=10480;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0}if(d){break a}}d=sa(28);F[d+4>>2]=j;a=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=a;a=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=a;F[d+24>>2]=F[e+24>>2];F[d>>2]=10892}ea=e+32|0;return d|0}function uj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=M(0),j=M(0),k=0,l=0,m=0,n=M(0),o=M(0),p=M(0),q=M(0),r=0,s=M(0),t=M(0),u=M(0),v=M(0),w=M(0),x=M(0),y=M(0),z=M(0),A=M(0),B=0,C=M(0);F[a+64>>2]=f;F[a+72>>2]=e;f=sa((e&1073741823)!=(e|0)?-1:e<<2);d=F[a+68>>2];F[a+68>>2]=f;if(d){ra(d)}F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{if(d>>>0>>0){Aa(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}b:{d=F[a+56>>2];g=F[d+4>>2];f=F[d>>2];d=g-f|0;if((d|0)<=0){break b}if((f|0)!=(g|0)){d=d>>>2|0;B=d>>>0>1?d:1;while(1){h=F[(m<<2)+f>>2];j=M(0);g=ea-48|0;ea=g;f=-1;d=-1;c:{if((h|0)==-1){break c}d=h+1|0;f=(d>>>0)%3|0?d:h-2|0;d=h-1|0;if((h>>>0)%3|0){break c}d=h+2|0}k=F[a+52>>2];h=F[k>>2];d:{e:{k=F[k+4>>2]-h>>2;l=f<<2;f=F[F[a+48>>2]+28>>2];l=F[l+f>>2];if(k>>>0<=l>>>0){break e}f=F[f+(d<<2)>>2];if(f>>>0>=k>>>0){break e}k=F[h+(f<<2)>>2];d=F[h+(l<<2)>>2];f:{if(!((k|0)>=(m|0)|(d|0)>=(m|0))){f=F[a+72>>2];h=(L(f,k)<<2)+c|0;n=M(F[h+4>>2]);f=(L(d,f)<<2)+c|0;q=M(F[f+4>>2]);s=M(F[h>>2]);x=M(F[f>>2]);if(!(s!=x|n!=q)){d=F[a+68>>2];if(M(N(n))>2]=f;if(M(N(s))>2]=~~s;break f}F[d>>2]=-2147483648;break f}f=F[F[a+64>>2]+(m<<2)>>2];F[g+40>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;h=F[a+60>>2];if(!G[h+84|0]){f=F[F[h+68>>2]+(f<<2)>>2]}Ya(h,f,D[h+24|0],g+32|0);f=F[F[a+64>>2]+(d<<2)>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Ya(d,f,D[d+24|0],g+16|0);f=F[F[a+64>>2]+(k<<2)>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Ya(d,f,D[d+24|0],g);t=J[g+40>>2];u=J[g+36>>2];C=J[g+32>>2];o=J[g+24>>2];i=M(J[g+8>>2]-o);z=J[g+20>>2];v=M(J[g+4>>2]-z);A=J[g+16>>2];w=M(J[g>>2]-A);y=M(M(i*i)+M(M(v*v)+M(M(w*w)+M(0))));g:{if(!(y>M(0))){p=M(0);if(F[a+88>>2]>257){break g}}o=M(t-o);t=M(u-z);u=M(C-A);j=M(M(M(i*o)+M(M(v*t)+M(M(w*u)+M(0))))/y);i=M(o-M(i*j));o=M(i*i);i=M(t-M(v*j));p=M(i*i);i=M(u-M(w*j));p=M(U(M(M(o+M(p+M(M(i*i)+M(0))))/y)))}o=p;d=F[a+80>>2]-1|0;f=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;i=M(n-q);p=M(M(i*j)+q);q=M(s-x);n=M(q*o);d=f>>>d&1;n=M(p+(d?n:M(-n)));p=M(M(q*j)+x);j=M(i*o);j=M(p+(d?M(-j):j));h:{if(j!=j){f=F[a+68>>2];F[f>>2]=-2147483648;break h}f=F[a+68>>2];r=R(+j+.5);i:{if(N(r)<2147483648){d=~~r;break i}d=-2147483648}F[f>>2]=d}r=R(+n+.5);j:{if(N(r)<2147483648){d=~~r;break j}d=-2147483648}F[f+4>>2]=n!=n?-2147483648:d;break f}k:{if((d|0)<(m|0)){f=F[a+72>>2];d=L(d,f);break k}f=0;if((m|0)<=0){if(F[a+72>>2]<=0){break f}d=F[a+68>>2];while(1){F[d+(f<<2)>>2]=0;f=f+1|0;if((f|0)>2]){continue}break}break f}f=F[a+72>>2];d=L(f,m-1|0)}if((f|0)<=0){break f}h=F[a+68>>2];f=0;while(1){F[h+(f<<2)>>2]=F[(d+f<<2)+c>>2];f=f+1|0;if((f|0)>2]){continue}break}}ea=g+48|0;break d}Da();V()}l:{if(F[a+8>>2]<=0){break l}h=F[a+32>>2];k=F[a+68>>2];f=0;while(1){d=f<<2;g=F[d+k>>2];l=F[a+16>>2];m:{if((g|0)>(l|0)){F[d+h>>2]=l;break m}d=d+h|0;l=F[a+12>>2];if((l|0)>(g|0)){F[d>>2]=l;break m}F[d>>2]=g}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break l}f=L(e,m)<<2;k=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+k|0;g=F[g+l>>2]+F[g+h>>2]|0;F[f>>2]=g;n:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break n}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}m=m+1|0;if((B|0)==(m|0)){break b}d=F[a+56>>2];f=F[d>>2];if(F[d+4>>2]-f>>2>>>0>m>>>0){continue}break}}Da();V()}return 1}function ej(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=M(0),j=0,k=M(0),l=0,m=M(0),n=M(0),o=M(0),p=0,q=M(0),r=0,s=M(0),t=M(0),u=M(0),v=M(0),w=M(0),x=M(0),y=M(0),z=M(0),A=M(0),B=0,C=M(0);F[a+64>>2]=f;F[a+72>>2]=e;f=sa((e&1073741823)!=(e|0)?-1:e<<2);d=F[a+68>>2];F[a+68>>2]=f;if(d){ra(d)}F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{if(d>>>0>>0){Aa(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}b:{d=F[a+56>>2];g=F[d+4>>2];f=F[d>>2];d=g-f|0;if((d|0)<=0){break b}if((f|0)!=(g|0)){d=d>>>2|0;B=d>>>0>1?d:1;while(1){k=M(0);g=ea-48|0;ea=g;h=-1;c:{d:{d=F[(l<<2)+f>>2];if((d|0)==-1){break d}j=F[a+48>>2];f=d+1|0;f=(f>>>0)%3|0?f:d-2|0;if((f|0)!=-1){h=F[F[j>>2]+(f<<2)>>2]}f=-1;d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)!=-1){f=F[F[j>>2]+(d<<2)>>2]}d=F[a+52>>2];j=F[d>>2];d=F[d+4>>2]-j>>2;if(d>>>0<=h>>>0|d>>>0<=f>>>0){break d}d=F[j+(h<<2)>>2];j=F[j+(f<<2)>>2];e:{if(!((j|0)>=(l|0)|(d|0)>=(l|0))){f=F[a+72>>2];h=(L(f,j)<<2)+c|0;m=M(F[h+4>>2]);f=(L(d,f)<<2)+c|0;q=M(F[f+4>>2]);s=M(F[h>>2]);x=M(F[f>>2]);if(!(s!=x|m!=q)){d=F[a+68>>2];if(M(N(m))>2]=f;if(M(N(s))>2]=~~s;break e}F[d>>2]=-2147483648;break e}f=F[F[a+64>>2]+(l<<2)>>2];F[g+40>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;h=F[a+60>>2];if(!G[h+84|0]){f=F[F[h+68>>2]+(f<<2)>>2]}Ya(h,f,D[h+24|0],g+32|0);f=F[F[a+64>>2]+(d<<2)>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Ya(d,f,D[d+24|0],g+16|0);f=F[F[a+64>>2]+(j<<2)>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Ya(d,f,D[d+24|0],g);t=J[g+40>>2];u=J[g+36>>2];C=J[g+32>>2];n=J[g+24>>2];i=M(J[g+8>>2]-n);z=J[g+20>>2];v=M(J[g+4>>2]-z);A=J[g+16>>2];w=M(J[g>>2]-A);y=M(M(i*i)+M(M(v*v)+M(M(w*w)+M(0))));f:{if(!(y>M(0))){o=M(0);if(F[a+88>>2]>257){break f}}n=M(t-n);t=M(u-z);u=M(C-A);k=M(M(M(i*n)+M(M(v*t)+M(M(w*u)+M(0))))/y);i=M(n-M(i*k));n=M(i*i);i=M(t-M(v*k));o=M(i*i);i=M(u-M(w*k));o=M(U(M(M(n+M(o+M(M(i*i)+M(0))))/y)))}n=o;d=F[a+80>>2]-1|0;f=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;i=M(m-q);o=M(M(i*k)+q);q=M(s-x);m=M(q*n);d=f>>>d&1;m=M(o+(d?m:M(-m)));o=M(M(q*k)+x);k=M(i*n);k=M(o+(d?M(-k):k));g:{if(k!=k){f=F[a+68>>2];F[f>>2]=-2147483648;break g}f=F[a+68>>2];r=R(+k+.5);h:{if(N(r)<2147483648){d=~~r;break h}d=-2147483648}F[f>>2]=d}r=R(+m+.5);i:{if(N(r)<2147483648){d=~~r;break i}d=-2147483648}F[f+4>>2]=m!=m?-2147483648:d;break e}j:{if((d|0)<(l|0)){f=F[a+72>>2];d=L(d,f);break j}f=0;if((l|0)<=0){if(F[a+72>>2]<=0){break e}d=F[a+68>>2];while(1){F[d+(f<<2)>>2]=0;f=f+1|0;if((f|0)>2]){continue}break}break e}f=F[a+72>>2];d=L(f,l-1|0)}if((f|0)<=0){break e}h=F[a+68>>2];f=0;while(1){F[h+(f<<2)>>2]=F[(d+f<<2)+c>>2];f=f+1|0;if((f|0)>2]){continue}break}}ea=g+48|0;break c}Da();V()}k:{if(F[a+8>>2]<=0){break k}h=F[a+32>>2];j=F[a+68>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];p=F[a+16>>2];l:{if((g|0)>(p|0)){F[d+h>>2]=p;break l}d=d+h|0;p=F[a+12>>2];if((p|0)>(g|0)){F[d>>2]=p;break l}F[d>>2]=g}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=L(e,l)<<2;j=f+c|0;p=b+f|0;while(1){g=d<<2;f=g+j|0;g=F[g+p>>2]+F[g+h>>2]|0;F[f>>2]=g;m:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break m}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}l=l+1|0;if((B|0)==(l|0)){break b}d=F[a+56>>2];f=F[d>>2];if(F[d+4>>2]-f>>2>>>0>l>>>0){continue}break}}Da();V()}return 1}function Ki(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=M(0),f=0,g=0,h=0,i=0,j=0,k=M(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;if(F[c>>2]==F[c+4>>2]){g=F[d+80>>2];v=ea-16|0;ea=v;j=F[a+4>>2];h=F[d+48>>2];d=F[F[d>>2]>>2];i=D[b+24|0];c=v+8|0;F[c>>2]=1065353216;u=c;J[c>>2]=M(-1<>2];w=sa((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!g|(i|0)<=0){break a}s=d+h|0;y=F[b>>2];c=F[b+48>>2];z=F[b+44>>2];x=F[b+40>>2];if(!G[b+84|0]){n=F[b+68>>2];t=i&-2;j=i&1;b=0;while(1){f=F[y>>2];d=Hj(x,z,F[n+(o<<2)>>2],0)+c|0;p=ta(w,f+d|0,x);k=J[u>>2];l=F[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){f=s+(b<<2)|0;q=d<<2;e=M(R(M(M(k*M(J[q+p>>2]-J[l+q>>2]))+M(.5))));b:{if(M(N(e))>2]=h;h=q|4;e=M(R(M(M(k*M(J[h+p>>2]-J[l+h>>2]))+M(.5))));c:{if(M(N(e))>2]=h;d=d+2|0;b=b+2|0;m=m+2|0;if((t|0)!=(m|0)){continue}break}}if(j){f=s+(b<<2)|0;d=d<<2;e=M(R(M(M(k*M(J[d+p>>2]-J[d+l>>2]))+M(.5))));d:{if(M(N(e))>2]=d;b=b+1|0}o=o+1|0;if((g|0)!=(o|0)){continue}break}break a}n=i&-2;t=i&1;b=0;while(1){h=F[y>>2];d=Hj(x,z,o,f)+c|0;p=ta(w,h+d|0,x);k=J[u>>2];l=F[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){h=s+(b<<2)|0;q=d<<2;e=M(R(M(M(k*M(J[q+p>>2]-J[l+q>>2]))+M(.5))));e:{if(M(N(e))>2]=j;j=q|4;e=M(R(M(M(k*M(J[j+p>>2]-J[l+j>>2]))+M(.5))));f:{if(M(N(e))>2]=j;d=d+2|0;b=b+2|0;m=m+2|0;if((n|0)!=(m|0)){continue}break}}if(t){h=s+(b<<2)|0;d=d<<2;e=M(R(M(M(k*M(J[d+p>>2]-J[d+l>>2]))+M(.5))));g:{if(M(N(e))>2]=d;b=b+1|0}d=o+1|0;f=d?f:f+1|0;o=d;if((g|0)!=(d|0)|f){continue}break}}ra(w);ea=v+16|0;return 1}v=ea-16|0;ea=v;u=F[a+4>>2];g=F[d+48>>2];f=F[F[d>>2]>>2];r=D[b+24|0];d=v+8|0;F[d>>2]=1065353216;h=d;J[d>>2]=M(-1<>2];w=sa((r|0)!=(r&1073741823)?-1:r<<2);y=F[c>>2];c=F[c+4>>2]-y|0;h:{if(!c|(r|0)<=0){break h}s=f+g|0;z=F[b>>2];d=F[b+48>>2];x=F[b+44>>2];o=F[b+40>>2];c=c>>2;q=c>>>0>1?c:1;if(G[b+84|0]){j=r&-2;u=r&1;b=0;while(1){f=F[z>>2];c=Hj(o,x,F[y+(m<<2)>>2],0)+d|0;l=ta(w,f+c|0,o);k=J[h>>2];n=F[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;t=c<<2;e=M(R(M(M(k*M(J[t+l>>2]-J[n+t>>2]))+M(.5))));i:{if(M(N(e))>2]=g;g=t|4;e=M(R(M(M(k*M(J[g+l>>2]-J[n+g>>2]))+M(.5))));j:{if(M(N(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=M(R(M(M(k*M(J[c+l>>2]-J[c+n>>2]))+M(.5))));k:{if(M(N(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}break h}t=F[b+68>>2];j=r&-2;u=r&1;b=0;while(1){f=F[z>>2];c=Hj(o,x,F[t+(F[y+(m<<2)>>2]<<2)>>2],0)+d|0;p=ta(w,f+c|0,o);k=J[h>>2];l=F[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;n=c<<2;e=M(R(M(M(k*M(J[n+p>>2]-J[l+n>>2]))+M(.5))));l:{if(M(N(e))>2]=g;g=n|4;e=M(R(M(M(k*M(J[g+p>>2]-J[l+g>>2]))+M(.5))));m:{if(M(N(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=M(R(M(M(k*M(J[c+p>>2]-J[c+l>>2]))+M(.5))));n:{if(M(N(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}}ra(w);ea=v+16|0;return 1}function Jf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=ea-704|0;ea=f;m=1;a:{b:{c:{d:{if(H[b+38>>1]<515){break d}m=0;c=F[b+20>>2];e=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(e|0)&d>>>0>=I[b+8>>2]|(c|0)>(e|0)){break d}o=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;n=F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+80>>2];c=ga[F[F[a>>2]+24>>2]](a)|0;F[f+696>>2]=0;F[f+688>>2]=0;F[f+692>>2]=0;if(c){if(c>>>0>=214748365){break c}c=L(c,20);d=sa(c);F[f+688>>2]=d;F[f+696>>2]=c+d;c=L((c-20>>>0)/20|0,20)+20|0;q=f,r=ua(d,0,c)+c|0,F[q+692>>2]=r}e:{if((ga[F[F[a>>2]+24>>2]](a)|0)>0){while(1){c=ga[F[F[a>>2]+20>>2]](a,l)|0;e=F[F[F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];qb(e,n);D[e+84|0]=1;F[e+72>>2]=F[e+68>>2];c=F[e+28>>2];if(c>>>0>9){break e}f:{g:{h:{d=1<>2],g,6,0,c,c>>31);e=sa(96);c=kc(e,d);F[f+656>>2]=e;D[c+84|0]=1;F[c+72>>2]=F[c+68>>2];qb(c,n);c=F[a+64>>2];if(c>>>0>=I[a+68>>2]){break h}d=F[f+656>>2];F[f+656>>2]=0;F[c>>2]=d;d=c+4|0;F[a+64>>2]=d;break g}d=0;if(D[e+24|0]<=0){break f}while(1){c=F[a+52>>2];g=F[a+56>>2];i:{if(c>>>0>>0){F[c>>2]=0;F[a+52>>2]=c+4;break i}h=F[a+48>>2];k=c-h|0;j=k>>2;c=j+1|0;if(c>>>0>=1073741824){break b}p=j<<2;g=g-h|0;j=g>>1;g=g>>>0<2147483644?c>>>0>j>>>0?c:j:1073741823;if(g){if(g>>>0>=1073741824){break a}c=sa(g<<2)}else{c=0}j=p+c|0;F[j>>2]=0;if((k|0)>0){ta(c,h,k)}F[a+56>>2]=c+(g<<2);F[a+52>>2]=j+4;F[a+48>>2]=c;if(!h){break i}ra(h)}d=d+1|0;if((d|0)>2];h=F[a+64>>2]-e>>2;c=h+1|0;if(c>>>0<1073741824){e=F[a+68>>2]-e|0;g=e>>1;e=e>>>0<2147483644?c>>>0>g>>>0?c:g:1073741823;if(e){if(e>>>0>=1073741824){break l}d=sa(e<<2)}g=F[f+656>>2];F[f+656>>2]=0;c=(h<<2)+d|0;F[c>>2]=g;h=(e<<2)+d|0;g=c+4|0;d=F[a+64>>2];e=F[a+60>>2];if((d|0)==(e|0)){break k}while(1){d=d-4|0;k=F[d>>2];F[d>>2]=0;c=c-4|0;F[c>>2]=k;if((d|0)!=(e|0)){continue}break}F[a+68>>2]=h;d=F[a+64>>2];F[a+64>>2]=g;e=F[a+60>>2];F[a+60>>2]=c;if((d|0)==(e|0)){break j}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){Ja(c)}if((d|0)!=(e|0)){continue}break}break j}va();V()}wa(1336);V()}F[a+68>>2]=h;F[a+64>>2]=g;F[a+60>>2]=c}if(e){ra(e)}d=F[a+64>>2]}e=F[d-4>>2];c=F[f+656>>2];F[f+656>>2]=0;if(!c){break f}Ja(c)}h=F[e+28>>2];c=h-1|0;if(c>>>0<=10){d=F[(c<<2)+13616>>2]}else{d=-1}c=F[f+688>>2]+L(l,20)|0;g=D[e+24|0];F[c+16>>2]=g;F[c+12>>2]=(d|0)>0?d:0;F[c+8>>2]=h;F[c+4>>2]=i;F[c>>2]=e;i=g+i|0;l=l+1|0;if((ga[F[F[a>>2]+24>>2]](a)|0)>(l|0)){continue}break}}a=Bc(f+656|0,f+688|0);m:{n:{o:{switch(o|0){case 0:c=zb(f,i);b=Bd(c,b,a);Ab(c);if(b){break n}break m;case 1:c=zb(f,i);b=Ad(c,b,a);Ab(c);if(b){break n}break m;case 2:c=xb(f,i);b=zd(c,b,a);yb(c);if(b){break n}break m;case 3:c=xb(f,i);b=yd(c,b,a);yb(c);if(b){break n}break m;case 4:c=ab(f,i);b=xd(c,b,a);bb(c);if(b){break n}break m;case 5:c=ab(f,i);b=wd(c,b,a);bb(c);if(b){break n}break m;case 6:break o;default:break m}}c=ab(f,i);b=vd(c,b,a);bb(c);if(!b){break m}}m=1}b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a>>2];if(!b){break e}F[a+4>>2]=b;ra(b)}a=F[f+688>>2];if(!a){break d}F[f+692>>2]=a;ra(a)}ea=f+704|0;return m|0}va();V()}va();V()}wa(1336);V()}function Me(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ea-80|0;ea=f;e=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=e;g=F[c+28>>2];e=f- -64|0;F[e>>2]=F[c+24>>2];F[e+4>>2]=g;e=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=e;e=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=e;e=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=e;oc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<0){ra(F[j>>2])}if(G[f+31|0]){b=sa(32);c=G[1665]|G[1666]<<8|(G[1667]<<16|G[1668]<<24);D[b+23|0]=c;D[b+24|0]=c>>>8;D[b+25|0]=c>>>16;D[b+26|0]=c>>>24;c=G[1662]|G[1663]<<8|(G[1664]<<16|G[1665]<<24);d=G[1658]|G[1659]<<8|(G[1660]<<16|G[1661]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1654]|G[1655]<<8|(G[1656]<<16|G[1657]<<24);d=G[1650]|G[1651]<<8|(G[1652]<<16|G[1653]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1646]|G[1647]<<8|(G[1648]<<16|G[1649]<<24);d=G[1642]|G[1643]<<8|(G[1644]<<16|G[1645]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+27|0]=0;F[a>>2]=-1;Ba(j,b,27);ra(b);break a}i=ea-16|0;ea=i;b:{c:{switch(D[f+32|0]){case 0:e=sa(44);F[e>>2]=0;F[e+4>>2]=0;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=Uc(e);F[e>>2]=13528;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=g;break b;case 1:e=sa(44);F[e>>2]=0;F[e+4>>2]=0;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=Uc(e);F[e>>2]=13436;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=g;break b;default:break c}}g=sa(32);e=G[1694]|G[1695]<<8|(G[1696]<<16|G[1697]<<24);D[g+24|0]=e;D[g+25|0]=e>>>8;D[g+26|0]=e>>>16;D[g+27|0]=e>>>24;e=G[1690]|G[1691]<<8|(G[1692]<<16|G[1693]<<24);h=G[1686]|G[1687]<<8|(G[1688]<<16|G[1689]<<24);D[g+16|0]=h;D[g+17|0]=h>>>8;D[g+18|0]=h>>>16;D[g+19|0]=h>>>24;D[g+20|0]=e;D[g+21|0]=e>>>8;D[g+22|0]=e>>>16;D[g+23|0]=e>>>24;e=G[1682]|G[1683]<<8|(G[1684]<<16|G[1685]<<24);h=G[1678]|G[1679]<<8|(G[1680]<<16|G[1681]<<24);D[g+8|0]=h;D[g+9|0]=h>>>8;D[g+10|0]=h>>>16;D[g+11|0]=h>>>24;D[g+12|0]=e;D[g+13|0]=e>>>8;D[g+14|0]=e>>>16;D[g+15|0]=e>>>24;e=G[1674]|G[1675]<<8|(G[1676]<<16|G[1677]<<24);h=G[1670]|G[1671]<<8|(G[1672]<<16|G[1673]<<24);D[g|0]=h;D[g+1|0]=h>>>8;D[g+2|0]=h>>>16;D[g+3|0]=h>>>24;D[g+4|0]=e;D[g+5|0]=e>>>8;D[g+6|0]=e>>>16;D[g+7|0]=e>>>24;D[g+28|0]=0;F[i>>2]=-1;e=i|4;Ba(e,g,28);k=D[i+15|0];F[f>>2]=F[i>>2];h=f+4|0;d:{if((k|0)>=0){k=F[e+4>>2];F[h>>2]=F[e>>2];F[h+4>>2]=k;F[h+8>>2]=F[e+8>>2];break d}Ba(h,F[i+4>>2],F[i+8>>2])}F[f+16>>2]=0;if(D[i+15|0]<0){ra(F[i+4>>2])}ra(g)}ea=i+16|0;e=F[f>>2];e:{if(e){F[a>>2]=e;if(D[f+15|0]>=0){a=f|4;b=F[a+4>>2];F[j>>2]=F[a>>2];F[j+4>>2]=b;F[j+8>>2]=F[a+8>>2];break e}Ba(j,F[f+4>>2],F[f+8>>2]);break e}e=F[f+16>>2];F[f+16>>2]=0;re(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<0){ra(F[j>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ga[F[F[e>>2]+4>>2]](e)}a=F[f+16>>2];F[f+16>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>=0){break a}ra(F[f+4>>2])}ea=f+80|0}function ed(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=F[a+4>>2];d=F[a>>2];f=(c-d|0)/144|0;if(f>>>0>>0){d=a;g=b-f|0;c=F[a+8>>2];a=F[a+4>>2];a:{if(g>>>0<=(c-a|0)/144>>>0){if(g){b=L(g,144)+a|0;while(1){F[a>>2]=-1;be(a+4|0);F[a+104>>2]=0;F[a+108>>2]=0;D[a+100|0]=1;F[a+112>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;F[a+124>>2]=0;F[a+128>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;F[a+140>>2]=0;a=a+144|0;if((b|0)!=(a|0)){continue}break}a=b}F[d+4>>2]=a;break a}b:{c:{d:{b=a;a=F[d>>2];f=(b-a|0)/144|0;h=f+g|0;if(h>>>0<29826162){b=(c-a|0)/144|0;a=b<<1;e=b>>>0<14913080?a>>>0>>0?h:a:29826161;if(e){if(e>>>0>=29826162){break d}c=sa(L(e,144))}else{c=0}b=c+L(f,144)|0;h=b+L(g,144)|0;a=b;while(1){F[a>>2]=-1;be(a+4|0);F[a+104>>2]=0;F[a+108>>2]=0;D[a+100|0]=1;F[a+112>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;F[a+124>>2]=0;F[a+128>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;F[a+140>>2]=0;a=a+144|0;if((h|0)!=(a|0)){continue}break}f=c+L(e,144)|0;a=F[d+4>>2];e=F[d>>2];if((a|0)==(e|0)){break c}while(1){b=b-144|0;a=a-144|0;F[b>>2]=F[a>>2];F[b+4>>2]=F[a+4>>2];F[b+8>>2]=F[a+8>>2];F[b+12>>2]=F[a+12>>2];F[a+12>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[b+16>>2]=F[a+16>>2];F[b+20>>2]=F[a+20>>2];F[b+24>>2]=F[a+24>>2];F[a+24>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;c=G[a+28|0];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;D[b+28|0]=c;F[b+32>>2]=F[a+32>>2];F[b+36>>2]=F[a+36>>2];F[b+40>>2]=F[a+40>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[b+52>>2]=0;F[b+44>>2]=0;F[b+48>>2]=0;F[b+44>>2]=F[a+44>>2];F[b+48>>2]=F[a+48>>2];F[b+52>>2]=F[a+52>>2];F[a+52>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;c=b- -64|0;F[c>>2]=0;F[b+56>>2]=0;F[b+60>>2]=0;F[b+56>>2]=F[a+56>>2];F[b+60>>2]=F[a+60>>2];g=c;c=a- -64|0;F[g>>2]=F[c>>2];F[c>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[b+68>>2]=F[a+68>>2];c=F[a+72>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+72>>2]=c;F[b+76>>2]=F[a+76>>2];F[b+80>>2]=F[a+80>>2];F[b+84>>2]=F[a+84>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[b+96>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+88>>2]=F[a+88>>2];F[b+92>>2]=F[a+92>>2];F[b+96>>2]=F[a+96>>2];F[a+96>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;c=G[a+100|0];F[b+112>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;D[b+100|0]=c;F[b+104>>2]=F[a+104>>2];F[b+108>>2]=F[a+108>>2];F[b+112>>2]=F[a+112>>2];F[a+112>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;F[b+124>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+116>>2]=F[a+116>>2];F[b+120>>2]=F[a+120>>2];F[b+124>>2]=F[a+124>>2];F[a+124>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;c=F[a+128>>2];F[b+140>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+128>>2]=c;F[b+132>>2]=F[a+132>>2];F[b+136>>2]=F[a+136>>2];F[b+140>>2]=F[a+140>>2];F[a+140>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;if((a|0)!=(e|0)){continue}break}F[d+8>>2]=f;a=F[d+4>>2];F[d+4>>2]=h;e=F[d>>2];F[d>>2]=b;if((a|0)==(e|0)){break b}while(1){b=F[a-12>>2];if(b){F[a-8>>2]=b;ra(b)}b=F[a-28>>2];if(b){F[a-24>>2]=b;ra(b)}b=F[a-40>>2];if(b){F[a-36>>2]=b;ra(b)}pc(a-140|0);a=a-144|0;if((e|0)!=(a|0)){continue}break}break b}va();V()}wa(1336);V()}F[d+8>>2]=f;F[d+4>>2]=h;F[d>>2]=b}if(e){ra(e)}}return}if(b>>>0>>0){d=d+L(b,144)|0;if((d|0)!=(c|0)){while(1){b=F[c-12>>2];if(b){F[c-8>>2]=b;ra(b)}b=F[c-28>>2];if(b){F[c-24>>2]=b;ra(b)}b=F[c-40>>2];if(b){F[c-36>>2]=b;ra(b)}pc(c-140|0);c=c-144|0;if((d|0)!=(c|0)){continue}break}}F[a+4>>2]=d}}function Kb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=ea-96|0;ea=e;d=F[a+16>>2];D[e+92|0]=1;F[e+88>>2]=b;F[e+84>>2]=b;F[e+80>>2]=d;a:{if((b|0)==-1){break a}m=F[a+20>>2];f=F[m>>2];d=F[F[d>>2]+(b<<2)>>2];if(d>>>0>=F[m+4>>2]-f>>2>>>0){break a}d=F[F[a+8>>2]+(F[f+(d<<2)>>2]<<2)>>2];f=F[a+4>>2];if(!G[f+84|0]){d=F[F[f+68>>2]+(d<<2)>>2]}F[e+72>>2]=0;F[e+76>>2]=0;m=e- -64|0;F[m>>2]=0;F[m+4>>2]=0;F[e+56>>2]=0;F[e+60>>2]=0;Ta(f,d,D[f+24|0],e+56|0);d=b+1|0;m=(d>>>0)%3|0?d:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){f=m;d=h;d:{if(!F[a+28>>2]){break d}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((f|0)==-1){break b}k=F[a+20>>2];b=F[k>>2];f=F[F[F[a+16>>2]>>2]+(f<<2)>>2];if(f>>>0>=F[k+4>>2]-b>>2>>>0){break b}f=F[F[a+8>>2]+(F[(f<<2)+b>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}F[e+48>>2]=0;F[e+52>>2]=0;F[e+40>>2]=0;F[e+44>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;Ta(b,f,D[b+24|0],e+32|0);if((d|0)==-1){break c}f=F[a+20>>2];b=F[f>>2];d=F[F[F[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=F[f+4>>2]-b>>2>>>0){break c}f=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Ta(b,f,D[b+24|0],e+8|0);d=F[e+8>>2];b=F[e+56>>2];f=d-b|0;k=F[e+60>>2];n=F[e+12>>2]-(k+(b>>>0>d>>>0)|0)|0;i=F[e+40>>2];d=F[e+64>>2];s=i-d|0;t=F[e+68>>2];i=F[e+44>>2]-(t+(d>>>0>i>>>0)|0)|0;u=Hj(f,n,s,i);v=j-u|0;g=g-(fa+(j>>>0>>0)|0)|0;w=v;j=F[e+16>>2];u=j-d|0;t=F[e+20>>2]-((d>>>0>j>>>0)+t|0)|0;j=F[e+32>>2];v=j-b|0;k=F[e+36>>2]-((b>>>0>j>>>0)+k|0)|0;d=Hj(u,t,v,k);j=w+d|0;b=fa+g|0;b=d>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=F[e+48>>2];d=F[e+72>>2];n=b-d|0;o=F[e+76>>2];x=F[e+52>>2]-(o+(b>>>0>>0)|0)|0;p=Hj(f,p,n,x);f=w+p|0;b=fa+l|0;b=f>>>0

>>0?b+1|0:b;l=F[e+24>>2];p=l-d|0;d=F[e+28>>2]-((d>>>0>l>>>0)+o|0)|0;l=Hj(p,d,v,k);o=f-l|0;l=b-(fa+(f>>>0>>0)|0)|0;b=Hj(u,t,n,x);f=q-b|0;b=r-(fa+(b>>>0>q>>>0)|0)|0;r=Hj(p,d,s,i);q=r+f|0;b=fa+b|0;b=q>>>0>>0?b+1|0:b;r=b;vc(e+80|0);b=F[e+88>>2];if((b|0)!=-1){continue}break}b=r>>31;f=b+q|0;d=b;b=b+r|0;k=f^d;h=d^(f>>>0>>0?b+1|0:b);n=-1;f=2147483647;b=l>>31;i=b;d=b+o|0;b=b+l|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^i;i=b;s=d^-1;b=b^2147483647;m=g;e:{f:{if(!F[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break e}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=a;a=b;b=g>>31;f=b+j|0;h=g;g=b;b=h+b|0;b=f>>>0>>0?b+1|0:b;h=f^g;f=h+d|0;g=b^g;b=f;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break e}b=0;a=a>>>29|0;break f}g:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break g}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(d|0)&(g^-1)>>>0>>0|d>>>0>h>>>0){break g}b=b+d|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;f=b;if(!b&a>>>0<536870913){break e}}b=f>>>29|0;a=(f&536870911)<<3|n>>>29}j=Ij(j,m,a,b);o=Ij(o,l,a,b);q=Ij(q,r,a,b)}F[c+8>>2]=j;F[c+4>>2]=o;F[c>>2]=q;ea=e+96|0;return}Da();V()}Da();V()}Da();V()}function Ud(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}d=F[a+12>>2];c=F[a+8>>2];if(d-c>>2>>>0<=b>>>0){break a}e=c+(b<<2)|0;f=F[e>>2];i=F[f+60>>2];g=F[f+56>>2];c=e+4|0;b:{if((c|0)!=(d|0)){while(1){h=F[c>>2];F[c>>2]=0;F[e>>2]=h;if(f){Ja(f)}e=e+4|0;c=c+4|0;if((c|0)!=(d|0)){f=F[e>>2];continue}break}d=F[a+12>>2];if((e|0)==(d|0)){break b}}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){Ja(c)}if((d|0)!=(e|0)){continue}break}}F[a+12>>2]=e;f=F[a+4>>2];c:{if(!f|(i|0)<0){break c}d=F[f+24>>2];c=F[f+28>>2];if((d|0)==(c|0)){break c}while(1){if((i|0)==F[F[d>>2]+24>>2]){e=d+4|0;i=F[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=F[e>>2];F[e>>2]=0;c=F[d>>2];F[d>>2]=h;if(c){Qa(c+12|0,F[c+16>>2]);Pa(c,F[c+4>>2]);ra(c)}d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=F[f+28>>2];if((e|0)==(d|0)){break d}}while(1){e=e-4|0;c=F[e>>2];F[e>>2]=0;if(c){Qa(c+12|0,F[c+16>>2]);Pa(c,F[c+4>>2]);ra(c)}if((d|0)!=(e|0)){continue}break}}F[f+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=L(g,12)+a|0;d=F[e+20>>2];c=F[e+24>>2];if((d|0)==(c|0)){break f}while(1){if(F[d>>2]==(b|0)){break f}d=d+4|0;if((c|0)!=(d|0)){continue}break}break e}if((d|0)==(c|0)){break e}f=d+4|0;c=c-f|0;if(c){Wa(d,f,c)}F[e+24>>2]=d+c}e=F[a+20>>2];c=F[a+24>>2]-e|0;g:{if(!c){break g}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break g}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break g}F[d>>2]=c-1}e=F[a+32>>2];c=F[a+36>>2]-e|0;h:{if(!c){break h}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break h}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break h}F[d>>2]=c-1}e=F[a+44>>2];c=F[a+48>>2]-e|0;i:{if(!c){break i}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break i}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break i}F[d>>2]=c-1}e=F[a+56>>2];c=F[a+60>>2]-e|0;j:{if(!c){break j}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break j}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break j}F[d>>2]=c-1}c=F[a+72>>2];a=F[a+68>>2];c=c-a|0;if(!c){break a}d=c>>2;e=d>>>0>1?d:1;f=e&1;d=0;if(c>>>0>=8){e=e&-2;c=0;while(1){i=d<<2;g=i+a|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}i=a+(i|4)|0;g=F[i>>2];if((g|0)>(b|0)){F[i>>2]=g-1}d=d+2|0;c=c+2|0;if((e|0)!=(c|0)){continue}break}}if(!f){break a}c=b;a=a+(d<<2)|0;b=F[a>>2];if((c|0)>=(b|0)){break a}F[a>>2]=b-1}}function ra(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=F[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=F[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=F[d+8>>2];b=b>>>3|0;c=F[d+12>>2];if((c|0)==(e|0)){i=16932,j=F[4233]&Lj(b),F[i>>2]=j;break b}F[e+12>>2]=c;F[c+8>>2]=e;break b}h=F[d+24>>2];b=F[d+12>>2];c:{if((d|0)!=(b|0)){c=F[d+8>>2];F[c+12>>2]=b;F[b+8>>2]=c;break c}d:{e=d+20|0;c=F[e>>2];if(c){break d}e=d+16|0;c=F[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=F[e>>2];if(c){continue}e=b+16|0;c=F[b+16>>2];if(c){continue}break}F[g>>2]=0}if(!h){break b}e=F[d+28>>2];c=(e<<2)+17236|0;e:{if(F[c>>2]==(d|0)){F[c>>2]=b;if(b){break e}i=16936,j=F[4234]&Lj(e),F[i>>2]=j;break b}F[h+(F[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}F[b+24>>2]=h;c=F[d+16>>2];if(c){F[b+16>>2]=c;F[c+24>>2]=b}c=F[d+20>>2];if(!c){break b}F[b+20>>2]=c;F[c+24>>2]=b;break b}b=F[f+4>>2];if((b&3)!=3){break b}F[4235]=a;F[f+4>>2]=b&-2;F[d+4>>2]=a|1;F[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=F[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(F[4239]==(f|0)){F[4239]=d;a=F[4236]+a|0;F[4236]=a;F[d+4>>2]=a|1;if(F[4238]!=(d|0)){break a}F[4235]=0;F[4238]=0;return}if(F[4238]==(f|0)){F[4238]=d;a=F[4235]+a|0;F[4235]=a;F[d+4>>2]=a|1;F[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=F[f+8>>2];b=b>>>3|0;c=F[f+12>>2];if((c|0)==(e|0)){i=16932,j=F[4233]&Lj(b),F[i>>2]=j;break g}F[e+12>>2]=c;F[c+8>>2]=e;break g}h=F[f+24>>2];b=F[f+12>>2];h:{if((f|0)!=(b|0)){c=F[f+8>>2];F[c+12>>2]=b;F[b+8>>2]=c;break h}i:{e=f+20|0;c=F[e>>2];if(c){break i}e=f+16|0;c=F[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=F[e>>2];if(c){continue}e=b+16|0;c=F[b+16>>2];if(c){continue}break}F[g>>2]=0}if(!h){break g}e=F[f+28>>2];c=(e<<2)+17236|0;j:{if(F[c>>2]==(f|0)){F[c>>2]=b;if(b){break j}i=16936,j=F[4234]&Lj(e),F[i>>2]=j;break g}F[h+(F[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}F[b+24>>2]=h;c=F[f+16>>2];if(c){F[b+16>>2]=c;F[c+24>>2]=b}c=F[f+20>>2];if(!c){break g}F[b+20>>2]=c;F[c+24>>2]=b}F[d+4>>2]=a|1;F[a+d>>2]=a;if(F[4238]!=(d|0)){break f}F[4235]=a;return}F[f+4>>2]=b&-2;F[d+4>>2]=a|1;F[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+16972|0;c=F[4233];a=1<>2]}F[b+8>>2]=d;F[a+12>>2]=d;F[d+12>>2]=b;F[d+8>>2]=a;return}e=31;F[d+16>>2]=0;F[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}F[d+28>>2]=e;g=(e<<2)+17236|0;l:{m:{c=F[4234];b=1<>2]=d;F[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=F[g>>2];while(1){c=b;if((F[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=F[g+16>>2];if(b){continue}break}F[g+16>>2]=d;F[d+24>>2]=c}F[d+12>>2]=d;F[d+8>>2]=d;break l}a=F[c+8>>2];F[a+12>>2]=d;F[c+8>>2]=d;F[d+24>>2]=0;F[d+12>>2]=c;F[d+8>>2]=a}a=F[4241]-1|0;F[4241]=a?a:-1}}function $c(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=M(0),l=0,m=0,n=M(0);j=F[c>>2];a:{b:{f=F[b+4>>2];if(!f){break b}g=Kj(f);c:{if(g>>>0>=2){e=j;if(e>>>0>=f>>>0){e=(j>>>0)%(f>>>0)|0}c=F[F[b>>2]+(e<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=F[c>>2];if(!c){break b}g=F[c+4>>2];if((g|0)!=(j|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if(F[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&j;c=F[F[b>>2]+(e<<2)>>2];if(!c){break b}}g=f-1|0;while(1){c=F[c>>2];if(!c){break b}h=F[c+4>>2];if((h|0)!=(j|0)&(g&h)!=(e|0)){break b}if(F[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=sa(16);d=F[F[d>>2]>>2];F[c+12>>2]=0;F[c+8>>2]=d;F[c+4>>2]=j;F[c>>2]=0;n=M(F[b+12>>2]+1>>>0);k=J[b+16>>2];d:{if(n>M(k*M(f>>>0))?0:f){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;e=2;k=M(S(M(n/k)));e:{if(k=M(0)){d=~~k>>>0;break e}d=0}d=d>>>0>g>>>0?d:g;f:{if((d|0)==1){break f}if(!(d&d-1)){e=d;break f}e=Id(d);f=F[b+4>>2]}g:{if(e>>>0<=f>>>0){if(e>>>0>=f>>>0){break g}g=f>>>0<3;k=M(S(M(M(I[b+12>>2])/J[b+16>>2])));h:{if(k=M(0)){d=~~k>>>0;break h}d=0}i:{j:{if(g){break j}if(Kj(f)>>>0>1){break j}d=d>>>0<2?d:1<<32-O(d-1|0);break i}d=Id(d)}e=d>>>0>e>>>0?d:e;if(e>>>0>=f>>>0){break g}}f=0;h=e;k:{l:{m:{n:{if(e){if(h>>>0>=1073741824){break n}e=sa(h<<2);d=F[b>>2];F[b>>2]=e;if(d){ra(d)}F[b+4>>2]=h;e=0;if(h-1>>>0>=3){g=h&-4;while(1){d=e<<2;F[d+F[b>>2]>>2]=0;F[F[b>>2]+(d|4)>>2]=0;F[F[b>>2]+(d|8)>>2]=0;F[F[b>>2]+(d|12)>>2]=0;e=e+4|0;f=f+4|0;if((g|0)!=(f|0)){continue}break}}d=h&3;if(d){while(1){F[F[b>>2]+(e<<2)>>2]=0;e=e+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}f=F[b+8>>2];if(!f){break k}d=b+8|0;g=F[f+4>>2];e=Kj(h);if(e>>>0<2){break m}g=g>>>0>=h>>>0?(g>>>0)%(h>>>0)|0:g;F[F[b>>2]+(g<<2)>>2]=d;d=F[f>>2];if(!d){break k}if(e>>>0<=1){break l}while(1){i=F[d+4>>2];if(h>>>0<=i>>>0){i=(i>>>0)%(h>>>0)|0}o:{if((g|0)==(i|0)){f=d;break o}e=d;l=i<<2;m=l+F[b>>2]|0;if(!F[m>>2]){F[m>>2]=f;f=d;g=i;break o}while(1){i=e;e=F[e>>2];if(F[d+8>>2]==F[e+8>>2]?e:0){continue}break}F[f>>2]=e;F[i>>2]=F[F[l+F[b>>2]>>2]>>2];F[F[l+F[b>>2]>>2]>>2]=d}d=F[f>>2];if(d){continue}break}break k}d=F[b>>2];F[b>>2]=0;if(d){ra(d)}F[b+4>>2]=0;break k}wa(1336);V()}g=h-1&g;F[F[b>>2]+(g<<2)>>2]=d;d=F[f>>2];if(!d){break k}}l=h-1|0;while(1){h=l&F[d+4>>2];p:{if((h|0)==(g|0)){f=d;break p}e=d;i=h<<2;m=i+F[b>>2]|0;if(F[m>>2]){while(1){h=e;e=F[e>>2];if(F[d+8>>2]==F[e+8>>2]?e:0){continue}break}F[f>>2]=e;F[h>>2]=F[F[i+F[b>>2]>>2]>>2];F[F[i+F[b>>2]>>2]>>2]=d;break p}F[m>>2]=f;f=d;g=h}d=F[f>>2];if(d){continue}break}}}f=F[b+4>>2];d=f-1|0;if(!(d&f)){e=d&j;break d}if(f>>>0>j>>>0){e=j;break d}e=(j>>>0)%(f>>>0)|0}e=F[b>>2]+(e<<2)|0;d=F[e>>2];q:{if(!d){F[c>>2]=F[b+8>>2];F[b+8>>2]=c;F[e>>2]=b+8;d=F[c>>2];if(!d){break q}d=F[d+4>>2];e=f-1|0;r:{if(!(e&f)){d=d&e;break r}if(d>>>0>>0){break r}d=(d>>>0)%(f>>>0)|0}F[F[b>>2]+(d<<2)>>2]=c;break q}F[c>>2]=F[d>>2];F[d>>2]=c}F[b+12>>2]=F[b+12>>2]+1;b=1}D[a+4|0]=b;F[a>>2]=c}function mj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;F[a+8>>2]=e;d=a+32|0;k=F[d>>2];f=F[a+36>>2]-k>>2;a:{if(f>>>0>>0){Aa(d,e-f|0);k=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+k}d=e}q=F[a+52>>2];n=F[a+48>>2];f=0;m=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(m),0,m);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=F[d+m>>2];i=F[a+16>>2];c:{if((g|0)>(i|0)){F[d+k>>2]=i;break c}d=d+k|0;i=F[a+12>>2];if((i|0)>(g|0)){F[d>>2]=i;break c}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[d>>2]=g;d:{if((g|0)>F[a+16>>2]){h=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}h=g+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];o=F[f>>2];f=F[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=L(e,k);f=F[(k<<2)+o>>2];if((f|0)==-1){break f}f=F[F[n+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}i=F[q>>2];g=F[n>>2];j=F[i+(F[g+(f<<2)>>2]<<2)>>2];h=f+1|0;h=(h>>>0)%3|0?h:f-2|0;if((h|0)!=-1){h=F[g+(h<<2)>>2]}else{h=-1}g:{h:{if((f>>>0)%3|0){f=f-1|0;break h}f=f+2|0;l=-1;if((f|0)==-1){break g}}l=F[g+(f<<2)>>2]}if((j|0)>=(k|0)){break f}f=F[(h<<2)+i>>2];if((f|0)>=(k|0)){break f}g=F[i+(l<<2)>>2];if((g|0)>=(k|0)){break f}i:{if((e|0)<=0){break i}g=L(e,g);i=L(e,f);j=L(e,j);f=0;l=0;if((e|0)!=1){while(1){F[m+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+i<<2)+c>>2]|0)-F[(f+j<<2)+c>>2];h=f|1;F[m+(h<<2)>>2]=(F[(g+h<<2)+c>>2]+F[(i+h<<2)+c>>2]|0)-F[(h+j<<2)+c>>2];f=f+2|0;l=l+2|0;if((t|0)!=(l|0)){continue}break}}if(!u){break i}F[m+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+i<<2)+c>>2]|0)-F[(f+j<<2)+c>>2]}if((d|0)<=0){break e}i=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+m>>2];j=F[a+16>>2];j:{if((g|0)>(j|0)){F[d+i>>2]=j;break j}d=d+i|0;j=F[a+12>>2];if((j|0)>(g|0)){F[d>>2]=j;break j}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+h>>2]+F[g+i>>2]|0;F[d>>2]=g;k:{if((g|0)>F[a+16>>2]){l=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break k}l=g+F[a+20>>2]|0}F[d>>2]=l}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}Da();V()}if((d|0)<=0){break e}j=(L(k-1|0,e)<<2)+c|0;i=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];h=F[a+16>>2];l:{if((g|0)>(h|0)){F[d+i>>2]=h;break l}d=d+i|0;h=F[a+12>>2];if((h|0)>(g|0)){F[d>>2]=h;break l}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+h>>2]+F[g+i>>2]|0;F[d>>2]=g;m:{if((g|0)>F[a+16>>2]){l=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break m}l=g+F[a+20>>2]|0}F[d>>2]=l}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}ra(m);return 1}function Hc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;F[a+56>>2]=F[a+52>>2];F[a+44>>2]=F[a+40>>2];a:{b:{c:{e=F[a+64>>2];c=F[e+24>>2];if((c|0)!=F[e+28>>2]){while(1){d=b;i=F[(j<<2)+c>>2];d:{if((i|0)==-1){break d}b=F[a+56>>2];e:{if((b|0)!=F[a+60>>2]){F[b>>2]=d;F[a+56>>2]=b+4;break e}e=F[a+52>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break c}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=d;if((c|0)>0){ta(b,e,c)}F[a+60>>2]=b+(f<<2);F[a+56>>2]=g+4;F[a+52>>2]=b;if(!e){break e}ra(e)}f:{if(!(F[F[a+12>>2]+(j>>>3&536870908)>>2]>>>j&1)){break f}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1){break f}e=F[a>>2];if(F[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[F[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break f}f=F[a+64>>2];while(1){i=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|F[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[f+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}F[F[a+28>>2]+(i<<2)>>2]=d;b=F[a+44>>2];g:{if((b|0)!=F[a+48>>2]){F[b>>2]=i;F[a+44>>2]=b+4;break g}e=F[a+40>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=i;if((c|0)>0){ta(b,e,c)}F[a+48>>2]=b+(f<<2);F[a+44>>2]=g+4;F[a+40>>2]=b;if(!e){break g}ra(e)}b=d+1|0;e=F[a+64>>2];h:{if((i>>>0)%3|0){c=i-1|0;break h}c=i+2|0;if((c|0)==-1){break d}}c=F[F[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(i|0)){break d}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(F[F[a>>2]+(e>>>3&536870908)>>2]>>>e&1){d=F[a+56>>2];i:{if((d|0)!=F[a+60>>2]){F[d>>2]=b;F[a+56>>2]=d+4;break i}f=F[a+52>>2];e=d-f|0;h=e>>2;d=h+1|0;if(d>>>0>=1073741824){break c}g=e>>1;g=e>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break a}d=sa(g<<2)}else{d=0}h=d+(h<<2)|0;F[h>>2]=b;if((e|0)>0){ta(d,f,e)}F[a+60>>2]=d+(g<<2);F[a+56>>2]=h+4;F[a+52>>2]=d;if(!f){break i}ra(f)}e=b+1|0;d=F[a+44>>2];j:{if((d|0)!=F[a+48>>2]){F[d>>2]=c;F[a+44>>2]=d+4;break j}g=F[a+40>>2];f=d-g|0;k=f>>2;d=k+1|0;if(d>>>0>=1073741824){break b}h=f>>1;h=f>>>0<2147483644?d>>>0>h>>>0?d:h:1073741823;if(h){if(h>>>0>=1073741824){break a}d=sa(h<<2)}else{d=0}k=d+(k<<2)|0;F[k>>2]=c;if((f|0)>0){ta(d,g,f)}F[a+48>>2]=d+(h<<2);F[a+44>>2]=k+4;F[a+40>>2]=d;if(!g){break j}ra(g)}d=b;b=e}F[F[a+28>>2]+(c<<2)>>2]=d;e=F[a+64>>2];k:{if((c>>>0)%3|0){c=c-1|0;break k}c=c+2|0;if((c|0)==-1){break d}}c=F[F[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break d}if((c|0)!=(i|0)){continue}break}}j=j+1|0;c=F[e+24>>2];if(j>>>0>2]-c>>2>>>0){continue}break}}return}va();V()}va();V()}wa(1336);V()}function Cj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;F[a+8>>2]=e;d=a+32|0;k=F[d>>2];f=F[a+36>>2]-k>>2;a:{if(f>>>0>>0){Aa(d,e-f|0);k=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+k}d=e}q=F[a+52>>2];m=F[a+48>>2];f=0;l=(e&1073741823)!=(e|0)?-1:e<<2;l=ua(sa(l),0,l);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=F[d+l>>2];h=F[a+16>>2];c:{if((g|0)>(h|0)){F[d+k>>2]=h;break c}d=d+k|0;h=F[a+12>>2];if((h|0)>(g|0)){F[d>>2]=h;break c}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[d>>2]=g;d:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];o=F[f>>2];f=F[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=L(e,k);f=F[(k<<2)+o>>2];if((f|0)==-1|F[F[m>>2]+(f>>>3&536870908)>>2]>>>f&1){break f}f=F[F[F[m+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}h=F[q>>2];g=F[m+28>>2];j=F[h+(F[g+(f<<2)>>2]<<2)>>2];if((j|0)>=(k|0)){break f}i=f+1|0;i=F[h+(F[g+(((i>>>0)%3|0?i:f-2|0)<<2)>>2]<<2)>>2];if((i|0)>=(k|0)){break f}f=F[h+(F[g+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(k|0)){break f}g:{if((e|0)<=0){break g}g=L(e,f);h=L(e,i);j=L(e,j);f=0;n=0;if((e|0)!=1){while(1){F[l+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+h<<2)+c>>2]|0)-F[(f+j<<2)+c>>2];i=f|1;F[l+(i<<2)>>2]=(F[(g+i<<2)+c>>2]+F[(h+i<<2)+c>>2]|0)-F[(j+i<<2)+c>>2];f=f+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(!u){break g}F[l+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+h<<2)+c>>2]|0)-F[(f+j<<2)+c>>2]}if((d|0)<=0){break e}h=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+l>>2];j=F[a+16>>2];h:{if((g|0)>(j|0)){F[d+h>>2]=j;break h}d=d+h|0;j=F[a+12>>2];if((j|0)>(g|0)){F[d>>2]=j;break h}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+i>>2]+F[g+h>>2]|0;F[d>>2]=g;i:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break i}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}Da();V()}if((d|0)<=0){break e}j=(L(k-1|0,e)<<2)+c|0;h=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];i=F[a+16>>2];j:{if((g|0)>(i|0)){F[d+h>>2]=i;break j}d=d+h|0;i=F[a+12>>2];if((i|0)>(g|0)){F[d>>2]=i;break j}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+i>>2]+F[g+h>>2]|0;F[d>>2]=g;k:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break k}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}ra(l);return 1}function te(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}c=(b>>>0)/3|0;if(!(F[F[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=F[a+48>>2];F[a+52>>2]=d;a:{if((d|0)!=F[a+56>>2]){F[d>>2]=b;F[a+52>>2]=d+4;break a}e=sa(4);F[e>>2]=b;f=e+4|0;F[a+56>>2]=f;F[a+52>>2]=f;F[a+48>>2]=e;if(!d){break a}ra(d)}f=F[F[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=F[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-L(c,3)|0?-1:2)+b|0;c=F[f+(g<<2)>>2];if((c|0)==-1){return 0}b=F[a+36>>2];f=b+(d>>>3&536870908)|0;h=F[f>>2];i=1<>2]=h|i;Xa(a+8|0,d,e);b=F[a+36>>2]}b=(c>>>3&536870908)+b|0;d=F[b>>2];e=1<>2]=d|e;Xa(a+8|0,c,g)}c=F[a+52>>2];if((c|0)==F[a+48>>2]){return 1}k=a+8|0;while(1){c=c-4|0;b=F[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=F[a+24>>2]+(d>>>3&268435452)|0;f=F[e>>2];d=1<>2]=d|f;e=F[a+4>>2];d=F[F[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=F[a+36>>2]+(d>>>3&536870908)|0;g=F[f>>2];h=1<>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}F[f>>2]=g|h;Xa(k,d,c);break e}F[f>>2]=g|h;Xa(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=F[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|F[F[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=F[F[F[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<>2];i=d>>>5|0;f=F[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=F[a+4>>2];if(!((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(F[F[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=F[F[F[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;f=(d>>>0)/3|0;h=(d|0)==-1;if(!h){c=F[a+24>>2];h=h?-1:f;i=h>>>5|0;f=F[c+(i<<2)>>2];h=1<>2];i=g>>>5|0;f=F[c+(i<<2)>>2];if(!(h&f)){break d}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break b}if(j){b=d;break d}if(F[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=F[a+52>>2];F[c-4>>2]=b;if((c|0)!=F[a+56>>2]){F[c>>2]=d;c=c+4|0;break c}m:{f=F[a+48>>2];e=c-f|0;c=e>>2;b=c+1|0;if(b>>>0<1073741824){g=e>>1;g=e>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break m}b=sa(g<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=d;c=c+4|0;if((e|0)>0){ta(b,f,e)}F[a+56>>2]=b+(g<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!f){break b}ra(f);c=F[a+52>>2];break b}va();V()}wa(1336);V()}F[(i<<2)+c>>2]=f|h;d=F[F[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}function Le(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ea-80|0;ea=f;e=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=e;g=F[c+28>>2];e=f- -64|0;F[e>>2]=F[c+24>>2];F[e+4>>2]=g;e=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=e;e=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=e;e=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=e;oc(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<0){ra(F[j>>2])}if(G[f+31|0]!=1){b=sa(32);c=G[1592]|G[1593]<<8|(G[1594]<<16|G[1595]<<24);D[b+16|0]=c;D[b+17|0]=c>>>8;D[b+18|0]=c>>>16;D[b+19|0]=c>>>24;c=G[1588]|G[1589]<<8|(G[1590]<<16|G[1591]<<24);d=G[1584]|G[1585]<<8|(G[1586]<<16|G[1587]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1580]|G[1581]<<8|(G[1582]<<16|G[1583]<<24);d=G[1576]|G[1577]<<8|(G[1578]<<16|G[1579]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+20|0]=0;F[a>>2]=-1;Ba(j,b,20);ra(b);break a}i=ea-16|0;ea=i;b:{c:{switch(G[f+32|0]){case 0:e=sa(48);Ge(e);F[e>>2]=13144;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;case 1:e=sa(52);Ge(e);F[e+48>>2]=0;F[e>>2]=11304;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;default:break c}}g=sa(32);e=G[1694]|G[1695]<<8|(G[1696]<<16|G[1697]<<24);D[g+24|0]=e;D[g+25|0]=e>>>8;D[g+26|0]=e>>>16;D[g+27|0]=e>>>24;e=G[1690]|G[1691]<<8|(G[1692]<<16|G[1693]<<24);h=G[1686]|G[1687]<<8|(G[1688]<<16|G[1689]<<24);D[g+16|0]=h;D[g+17|0]=h>>>8;D[g+18|0]=h>>>16;D[g+19|0]=h>>>24;D[g+20|0]=e;D[g+21|0]=e>>>8;D[g+22|0]=e>>>16;D[g+23|0]=e>>>24;e=G[1682]|G[1683]<<8|(G[1684]<<16|G[1685]<<24);h=G[1678]|G[1679]<<8|(G[1680]<<16|G[1681]<<24);D[g+8|0]=h;D[g+9|0]=h>>>8;D[g+10|0]=h>>>16;D[g+11|0]=h>>>24;D[g+12|0]=e;D[g+13|0]=e>>>8;D[g+14|0]=e>>>16;D[g+15|0]=e>>>24;e=G[1674]|G[1675]<<8|(G[1676]<<16|G[1677]<<24);h=G[1670]|G[1671]<<8|(G[1672]<<16|G[1673]<<24);D[g|0]=h;D[g+1|0]=h>>>8;D[g+2|0]=h>>>16;D[g+3|0]=h>>>24;D[g+4|0]=e;D[g+5|0]=e>>>8;D[g+6|0]=e>>>16;D[g+7|0]=e>>>24;D[g+28|0]=0;F[i>>2]=-1;e=i|4;Ba(e,g,28);k=D[i+15|0];F[f>>2]=F[i>>2];h=f+4|0;d:{if((k|0)>=0){k=F[e+4>>2];F[h>>2]=F[e>>2];F[h+4>>2]=k;F[h+8>>2]=F[e+8>>2];break d}Ba(h,F[i+4>>2],F[i+8>>2])}F[f+16>>2]=0;if(D[i+15|0]<0){ra(F[i+4>>2])}ra(g)}ea=i+16|0;e=F[f>>2];e:{if(e){F[a>>2]=e;if(D[f+15|0]>=0){a=f|4;b=F[a+4>>2];F[j>>2]=F[a>>2];F[j+4>>2]=b;F[j+8>>2]=F[a+8>>2];break e}Ba(j,F[f+4>>2],F[f+8>>2]);break e}e=F[f+16>>2];F[f+16>>2]=0;F[e+44>>2]=d;re(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<0){ra(F[j>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ga[F[F[e>>2]+4>>2]](e)}a=F[f+16>>2];F[f+16>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>=0){break a}ra(F[f+4>>2])}ea=f+80|0}function Fc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=L(b,12)+a|0;F[i+12>>2]=F[i+8>>2];k=(c|0)==-1?-1:(c>>>0)/3|0;n=1;j=c;a:{b:{c:{while(1){d:{o=e&1;if(o){if((j|0)==-1){break d}if((ae(a,((j>>>0)%3|0?-1:2)+j|0)|0)==-1){break a}c=j+1|0;d=(c>>>0)%3|0?c:j-2|0;if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}d=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}k=(c>>>0)/3|0}g=1<>2]+(k>>>3&536870908)|0;l=F[m>>2];e:{if(g&l){break e}e=0;while(1){F[m>>2]=g|l;d=F[i+12>>2];f:{if((d|0)!=F[i+16>>2]){F[d>>2]=k;F[i+12>>2]=d+4;break f}l=F[i+8>>2];g=d-l|0;h=g>>2;f=h+1|0;if(f>>>0>=1073741824){break c}d=g>>1;f=g>>>0<2147483644?d>>>0>>0?f:d:1073741823;if(f){if(f>>>0>=1073741824){break b}d=sa(f<<2)}else{d=0}h=d+(h<<2)|0;F[h>>2]=k;if((g|0)>0){ta(d,l,g)}F[i+8>>2]=d;F[i+12>>2]=h+4;F[i+16>>2]=d+(f<<2);if(!l){break f}ra(l)}h=e+1|0;g:{h:{i:{if(!e){break i}if(h&1){if((c|0)==-1){c=-1;break g}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;break i}j=o?c:j;if((c|0)==-1){c=-1;break g}if((c>>>0)%3|0){e=c-1|0;break h}c=c+2|0}d=c;c=-1;e=d;if((d|0)==-1){break g}}c=F[F[F[a+4>>2]+12>>2]+(e<<2)>>2];m=-1;l=-1;d=e+1|0;f=(d>>>0)%3|0?d:e-2|0;if((f|0)>=0){d=(f>>>0)/3|0;l=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(f-L(d,3)<<2)>>2]}j:{if((c|0)==-1){g=1;break j}g=0;f=((c>>>0)%3|0?-1:2)+c|0;if((f|0)<0){break j}d=(f>>>0)/3|0;m=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(f-L(d,3)<<2)>>2]}if((l|0)!=(m|0)){c=-1;break g}k:{l:{e=((e>>>0)%3|0?-1:2)+e|0;m:{n:{if((e|0)>=0){d=(e>>>0)/3|0;m=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2];e=-1;if(!g){break n}break m}m=-1;if(g){break l}}d=c+1|0;e=(d>>>0)%3|0?d:c-2|0;if((e|0)<0){e=-1;break m}d=(e>>>0)/3|0;e=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2]}if((e|0)!=(m|0)){c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}e=h;k=(c>>>0)/3|0;m=F[a+56>>2]+(k>>>3&268435452)|0;l=F[m>>2];g=1<>2]-4|0;h=F[f>>2];e=F[a+56>>2]+(h>>>3&536870908)|0;d=F[e>>2];p=e,q=Lj(h)&d,F[p>>2]=q;F[i+12>>2]=f}e=1;d=n;n=0;if(d){continue}break a}break}j=-1;ae(a,-1);break a}va();V()}wa(1336);V()}F[((b<<2)+a|0)+44>>2]=j;f=F[i+8>>2];b=F[i+12>>2]-f|0;o:{if(!b){break o}j=F[a+56>>2];a=b>>2;a=a>>>0>1?a:1;h=a&1;c=0;if(b>>>0>=8){n=a&-2;k=0;while(1){e=c<<2;d=F[e+f>>2];b=j+(d>>>3&536870908)|0;a=F[b>>2];p=b,q=Lj(d)&a,F[p>>2]=q;d=F[f+(e|4)>>2];b=j+(d>>>3&536870908)|0;a=F[b>>2];p=b,q=Lj(d)&a,F[p>>2]=q;c=c+2|0;k=k+2|0;if((n|0)!=(k|0)){continue}break}}if(!h){break o}c=F[f+(c<<2)>>2];b=j+(c>>>3&536870908)|0;a=F[b>>2];p=b,q=Lj(c)&a,F[p>>2]=q}}function ue(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(F[F[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=F[a+48>>2];F[a+52>>2]=c;a:{if((c|0)!=F[a+56>>2]){F[c>>2]=b;F[a+52>>2]=c+4;break a}e=sa(4);F[e>>2]=b;f=e+4|0;F[a+56>>2]=f;F[a+52>>2]=f;F[a+48>>2]=e;if(!c){break a}ra(c)}e=-1;f=F[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=F[F[f>>2]+(g<<2)>>2]}b:{h=b-L(d,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}d=F[F[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=F[a+36>>2];f=c+(e>>>3&536870908)|0;i=F[f>>2];j=1<>2]=i|j;Xa(a+8|0,e,g);c=F[a+36>>2]}c=(d>>>3&536870908)+c|0;e=F[c>>2];f=1<>2]=e|f;Xa(a+8|0,d,(h?-1:2)+b|0)}c=F[a+52>>2];if((c|0)==F[a+48>>2]){return 1}j=a+8|0;while(1){c=c-4|0;b=F[c>>2];d=(b>>>0)/3|0;c:{d:{if((b|0)==-1){break d}e=F[a+24>>2]+(d>>>3&268435452)|0;f=F[e>>2];d=1<>2]=d|f;while(1){d=F[a+4>>2];c=F[F[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=F[a+36>>2]+(c>>>3&536870908)|0;f=F[e>>2];g=1<>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=F[F[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}F[e>>2]=f|g;Xa(j,c,b);break f}F[e>>2]=f|g;Xa(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];h=c>>>5|0;d=F[e+(h<<2)>>2];break e}c=-1;f=F[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=F[F[f+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=F[F[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;d=(c>>>0)/3|0;k:{g=(c|0)==-1;if(!g){e=F[a+24>>2];g=g?-1:d;h=g>>>5|0;d=F[e+(h<<2)>>2];g=1<>2];h=f>>>5|0;d=F[e+(h<<2)>>2];if(!(g&d)){break e}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break c}if(i){b=c;break e}if(F[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=F[a+52>>2];F[d-4>>2]=b;if((d|0)!=F[a+56>>2]){F[d>>2]=c;c=d+4|0;break d}l:{e=F[a+48>>2];d=d-e|0;g=d>>2;b=g+1|0;if(b>>>0<1073741824){f=d>>1;f=d>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break l}b=sa(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=c;c=g+4|0;if((d|0)>0){ta(b,e,d)}F[a+56>>2]=b+(f<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!e){break c}ra(e);c=F[a+52>>2];break c}va();V()}wa(1336);V()}F[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}function Ye(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ea-32|0;ea=i;a:{if(H[b+38>>1]<=513){c=F[b+20>>2];h=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(h|0)&d>>>0>=I[b+8>>2]|(c|0)>(h|0)){break a}h=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;if(h){break a}}b:{if(!Pb(1,i+28|0,b)){break b}c:{d=F[i+28>>2];if(d){Ob(a+60|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!xa(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Pb(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Ob(a+72|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!xa(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Pb(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Ob(a+84|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!xa(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Pb(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Ob(a+96|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!xa(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;d=F[b+12>>2];h=d;c=F[b+20>>2];g=c;f=F[b+16>>2];j=f+4|0;c=j>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=c;c=g;g=f+8|0;c=g>>>0<8?c+1|0:c;f=g;g=c;if(f>>>0>k>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=j+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=g;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}e=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1;break a}}e=0}ea=i+32|0;return e|0}function od(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{n=ga[F[F[a>>2]+44>>2]](a)|0;if((n|0)<=0){break a}e=F[b+4>>2]-F[b>>2]>>2;g=ea+-64|0;ea=g;d=Fb(g);f=L(F[3408],n);mc(d,F[F[a+8>>2]+56>>2],n<<24>>24,5,0,f,f>>31);f=sa(96);d=kc(f,d);D[d+84|0]=1;F[d+72>>2]=F[d+68>>2];qb(d,e);F[d+60>>2]=F[F[a+8>>2]+60>>2];d=F[a+16>>2];F[a+16>>2]=f;if(d){Ja(d)}ea=g- -64|0;g=F[a+16>>2];if(!F[g+80>>2]){break a}i=F[F[g>>2]>>2];if(!i){break a}h=F[c+12>>2];d=F[c+20>>2];j=F[c+8>>2];f=F[c+16>>2];if((h|0)<=(d|0)&j>>>0<=f>>>0|(d|0)>(h|0)){break a}k=L(e,n);i=i+F[g+48>>2]|0;l=F[c>>2];m=G[l+f|0];g=f+1|0;e=g?d:d+1|0;F[c+16>>2]=g;F[c+20>>2]=e;b:{c:{d:{if(m){if(ld(k,n,c,i)){break d}break a}if((e|0)>=(h|0)&g>>>0>=j>>>0|(e|0)>(h|0)){break a}g=G[g+l|0];e=f+2|0;d=e>>>0<2?d+1|0:d;F[c+16>>2]=e;F[c+20>>2]=d;d=F[F[a+16>>2]+64>>2];d=F[d+4>>2]-F[d>>2]|0;e:{if((g|0)==F[3408]){e=d;d=k<<2;if(e>>>0>>0){break a}h=F[c+8>>2];g=F[c+12>>2];e=F[c+20>>2];j=F[c+16>>2];f=d+j|0;e=f>>>0>>0?e+1|0:e;if((e|0)<=(g|0)&f>>>0<=h>>>0|(e|0)<(g|0)){break e}break a}if(d>>>0>>0){break a}h=F[c+12>>2];e=F[c+20>>2];l=F[c+8>>2];f=l;j=F[c+16>>2];d=g;p=f-j>>>0>>0;f=h-(e+(f>>>0>>0)|0)|0;m=fa;if(p&(f|0)<=(m|0)|(f|0)<(m|0)){break a}f=1;if(!k){break c}f=0;m=l;l=d+j|0;e=l>>>0>>0?e+1|0:e;if(m>>>0>>0&(e|0)>=(h|0)|(e|0)>(h|0)){break b}while(1){ta(i+(o<<2)|0,j+F[c>>2]|0,g);e=F[c+20>>2];h=d+F[c+16>>2]|0;e=h>>>0>>0?e+1|0:e;j=h;F[c+16>>2]=h;F[c+20>>2]=e;o=o+1|0;if((k|0)==(o|0)){break d}m=F[c+8>>2];h=F[c+12>>2];l=d+j|0;e=l>>>0>>0?e+1|0:e;if((e|0)<=(h|0)&l>>>0<=m>>>0|(e|0)<(h|0)){continue}break}break b}ta(i,j+F[c>>2]|0,d);e=d;g=d+F[c+16>>2]|0;d=F[c+20>>2];F[c+16>>2]=g;F[c+20>>2]=e>>>0>g>>>0?d+1|0:d}f=1;if(!k){break c}d=F[a+20>>2];if(d){f=0;if(ga[F[F[d>>2]+32>>2]](d)|0){break c}}d=0;f=0;f:{if((k|0)<=0){break f}if((k|0)!=1){h=k&-2;while(1){e=d<<2;g=F[e+i>>2];F[e+i>>2]=0-(g&1)^g>>>1;g=e|4;e=F[g+i>>2];F[g+i>>2]=0-(e&1)^e>>>1;d=d+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(!(k&1)){break f}e=d<<2;d=F[e+i>>2];F[e+i>>2]=0-(d&1)^d>>>1}f=0}d=F[a+20>>2];g:{if(!d){break g}if(!(ga[F[F[d>>2]+40>>2]](d,c)|0)){break a}if(f){break g}f=0;a=F[a+20>>2];if(!(ga[F[F[a>>2]+44>>2]](a,i,i,k,n,F[b>>2])|0)){break b}}f=1}return f|0}return 0}function db(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=ea-32|0;ea=g;a:{b:{if(F[a+8>>2]<<5>>>0>=b>>>0){break b}F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;if((b|0)<0){break a}b=(b-1>>>5|0)+1|0;c=sa(b<<2);F[g+24>>2]=b;F[g+20>>2]=0;F[g+16>>2]=c;b=F[a>>2];F[g+12>>2]=0;F[g+8>>2]=b;c=F[a+4>>2];F[g+4>>2]=c&31;F[g>>2]=b+(c>>>3&536870908);f=ea-32|0;ea=f;j=F[g+4>>2];e=F[g+12>>2];k=F[g>>2];i=F[g+8>>2];b=(j-e|0)+(k-i<<3)|0;d=F[g+20>>2];h=b+d|0;F[g+20>>2]=h;c:{if(!(!d|(h-1^d-1)>>>0>31)){c=F[g+16>>2];break c}c=F[g+16>>2];if(h>>>0<=32){F[c>>2]=0;break c}F[(h-1>>>3&536870908)+c>>2]=0}c=(d>>>3&536870908)+c|0;d=d&31;d:{if((d|0)==(e|0)){if((b|0)<=0){break d}if(e){h=32-e|0;d=(b|0)<(h|0)?b:h;h=-1<>>h-d;F[c>>2]=F[c>>2]&(h^-1)|h&F[i>>2];b=b-d|0;i=i+4|0;c=c+(d+e>>>3&536870908)|0}j=c;e=(b|0)/32|0;c=e<<2;d=Wa(j,i,c);b=b-(e<<5)|0;if((b|0)<=0){break d}e=c+d|0;b=-1>>>32-b|0;F[e>>2]=F[e>>2]&(b^-1)|b&F[c+i>>2];break d}F[f+28>>2]=e;F[f+24>>2]=i;F[f+20>>2]=j;F[f+16>>2]=k;F[f+12>>2]=d;F[f+8>>2]=c;b=F[f+28>>2];c=F[f+24>>2];i=(F[f+20>>2]-b|0)+(F[f+16>>2]-c<<3)|0;e:{if((i|0)<=0){b=F[f+12>>2];break e}f:{if(!b){b=F[f+12>>2];break f}e=F[f+12>>2];j=32-e|0;k=32-b|0;d=(i|0)<(k|0)?i:k;h=d>>>0>j>>>0?j:d;l=F[f+8>>2];m=F[l>>2]&(-1<>>j-h^-1);j=F[c>>2]&(-1<>>k-d);F[l>>2]=m|(b>>>0>>0?j<>>b-e|0);c=e+h|0;b=c&31;F[f+12>>2]=b;e=l+(c>>>3&536870908)|0;F[f+8>>2]=e;c=d-h|0;if((c|0)>0){F[e>>2]=F[e>>2]&(-1>>>32-c^-1)|j>>>h+F[f+28>>2];F[f+12>>2]=c;b=c}i=i-d|0;c=F[f+24>>2]+4|0;F[f+24>>2]=c}e=32-b|0;h=-1<=32){j=h^-1;while(1){d=F[f+8>>2];c=F[c>>2];F[d>>2]=j&F[d>>2]|c<>2]=d+4;F[d+4>>2]=h&F[d+4>>2]|c>>>e;c=F[f+24>>2]+4|0;F[f+24>>2]=c;d=i>>>0>63;i=i-32|0;if(d){continue}break}}if((i|0)<=0){break e}d=F[f+8>>2];j=e;e=(e|0)<(i|0)?e:i;j=F[d>>2]&(h&-1>>>j-e^-1);h=F[c>>2]&-1>>>32-i;F[d>>2]=j|h<>2]=b;d=d+(c>>>3&536870908)|0;F[f+8>>2]=d;c=i-e|0;if((c|0)<=0){break e}F[d>>2]=F[d>>2]&(-1>>>32-c^-1)|h>>>e;F[f+12>>2]=c;b=c}c=F[f+8>>2];F[f+4>>2]=b;F[f>>2]=c}ea=f+32|0;b=F[a>>2];F[a>>2]=F[g+16>>2];F[g+16>>2]=b;c=F[a+4>>2];F[a+4>>2]=F[g+20>>2];F[g+20>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[g+24>>2];F[g+24>>2]=c;if(!b){break b}ra(b)}ea=g+32|0;return}Oa();V()}function nj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=ea-32|0;ea=g;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){Mb(n,F[(k<<2)+d>>2],g+16|0);e=F[g+20>>2];d=e>>31;f=F[g+16>>2];h=f>>31;j=F[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+16>>2]=F[a+108>>2];break b}i=F[a+108>>2];l=i>>31;f=Ij(Hj(i,l,f,f>>31),fa,h,d);F[g+16>>2]=f;d=Ij(Hj(i,l,e,e>>31),fa,h,d);F[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){F[g+24>>2]=i-d;break b}F[g+24>>2]=d-i}d=Ga(m);f=F[g+16>>2];c:{if(d){F[g+24>>2]=0-F[g+24>>2];e=0-F[g+20>>2]|0;F[g+20>>2]=e;f=0-f|0;F[g+16>>2]=f;break c}e=F[g+20>>2]}d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=F[g+24>>2];d=f>>31;d=d^d+f;break e}f=F[g+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=F[a+100>>2]-(f+e^e)|0}e=F[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}g:{if(d){break g}h=F[a+108>>2];if((h|0)>=(f|0)){break g}f=(h<<1)-f|0;d=0;break f}h:{if((d|0)!=(e|0)){break h}h=F[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=F[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}F[g+12>>2]=f;F[g+8>>2]=d;j:{if(F[a+8>>2]<=0){break j}h=F[a+32>>2];f=0;while(1){e=F[a+16>>2];k:{if((e|0)<(d|0)){F[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[e>>2]=j;break k}F[e>>2]=d}f=f+1|0;e=F[a+8>>2];if((f|0)<(e|0)){d=F[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=F[f+i>>2]+F[f+h>>2]|0;F[e>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}Da();V()}ea=g+32|0;return 1}function _i(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=ea-32|0;ea=g;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){Kb(n,F[(k<<2)+d>>2],g+16|0);e=F[g+20>>2];d=e>>31;f=F[g+16>>2];h=f>>31;j=F[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+16>>2]=F[a+108>>2];break b}i=F[a+108>>2];l=i>>31;f=Ij(Hj(i,l,f,f>>31),fa,h,d);F[g+16>>2]=f;d=Ij(Hj(i,l,e,e>>31),fa,h,d);F[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){F[g+24>>2]=i-d;break b}F[g+24>>2]=d-i}d=Ga(m);f=F[g+16>>2];c:{if(d){F[g+24>>2]=0-F[g+24>>2];e=0-F[g+20>>2]|0;F[g+20>>2]=e;f=0-f|0;F[g+16>>2]=f;break c}e=F[g+20>>2]}d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=F[g+24>>2];d=f>>31;d=d^d+f;break e}f=F[g+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=F[a+100>>2]-(f+e^e)|0}e=F[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}g:{if(d){break g}h=F[a+108>>2];if((h|0)>=(f|0)){break g}f=(h<<1)-f|0;d=0;break f}h:{if((d|0)!=(e|0)){break h}h=F[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=F[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}F[g+12>>2]=f;F[g+8>>2]=d;j:{if(F[a+8>>2]<=0){break j}h=F[a+32>>2];f=0;while(1){e=F[a+16>>2];k:{if((e|0)<(d|0)){F[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[e>>2]=j;break k}F[e>>2]=d}f=f+1|0;e=F[a+8>>2];if((f|0)<(e|0)){d=F[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=F[f+i>>2]+F[f+h>>2]|0;F[e>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}Da();V()}ea=g+32|0;return 1}function ge(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=ea-80|0;ea=h;a:{b:{if(G[F[a+28>>2]+36|0]<=1){d=F[b+20>>2];c=F[b+16>>2];e=c+4|0;d=e>>>0<4?d+1|0:d;k=F[b+12>>2];if((k|0)<=(d|0)&e>>>0>I[b+8>>2]|(d|0)>(k|0)){break a}c=c+F[b>>2]|0;i=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;break b}if(!Oc(1,h+76|0,b)){break a}i=F[h+76>>2]}if(!i){break a}d=F[b+8>>2];c=F[b+16>>2];d=Hj(d-c|0,F[b+12>>2]-(F[b+20>>2]+(c>>>0>d>>>0)|0)|0,5,0);c=fa;if(d>>>0>>0&(c|0)<=0|(c|0)<0){break a}c=F[a+4>>2];d=F[a+8>>2]-c>>2;c:{if(d>>>0>>0){Aa(a+4|0,i-d|0);break c}if(d>>>0<=i>>>0){break c}F[a+8>>2]=c+(i<<2)}r=a+16|0;m=F[a+32>>2];f=1;while(1){d:{g=F[b+12>>2];c=g;d=F[b+20>>2];o=F[b+8>>2];j=F[b+16>>2];if((c|0)<=(d|0)&o>>>0<=j>>>0|(c|0)<(d|0)){break d}p=F[b>>2];k=G[p+j|0];c=d;e=j+1|0;c=e?c:c+1|0;F[b+16>>2]=e;F[b+20>>2]=c;if((c|0)>=(g|0)&e>>>0>=o>>>0|(c|0)>(g|0)){break d}e=G[e+p|0];c=d;l=j+2|0;c=l>>>0<2?c+1|0:c;F[b+16>>2]=l;F[b+20>>2]=c;if((c|0)>=(g|0)&l>>>0>=o>>>0|(c|0)>(g|0)){break d}l=G[l+p|0];c=d;q=j+3|0;c=q>>>0<3?c+1|0:c;F[b+16>>2]=q;F[b+20>>2]=c;if((c|0)>=(g|0)&q>>>0>=o>>>0|(c|0)>(g|0)){break d}g=G[q+p|0];c=d;d=j+4|0;c=d>>>0<4?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;if(!l|((e-12&255)>>>0<245|k>>>0>4)){break d}j=Fb(h+8|0);o=l<<24>>24;g=(g|0)!=0;d=e-1|0;if(d>>>0<=10){c=F[(d<<2)+13616>>2]}else{c=-1}d=L(c,l);mc(j,k,o,e,g,d,d>>31);d=H[F[a+28>>2]+36>>1];e:{if(((d<<8|d>>>8)&65535)>>>0<=258){c=F[b+20>>2];d=F[b+16>>2];e=d+2|0;c=e>>>0<2?c+1|0:c;k=F[b+12>>2];if((k|0)<=(c|0)&e>>>0>I[b+8>>2]|(c|0)>(k|0)){break d}d=d+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8;F[b+16>>2]=e;F[b+20>>2]=c;break e}if(!Oc(1,h+4|0,b)){break d}f=F[h+4>>2]}F[h+68>>2]=f;d=kc(sa(96),j);ga[F[F[m>>2]+8>>2]](m,F[m+12>>2]-F[m+8>>2]>>2,d);d=(F[m+12>>2]-F[m+8>>2]>>2)-1|0;e=d<<2;F[F[e+F[m+8>>2]>>2]+60>>2]=f;F[F[a+4>>2]+(n<<2)>>2]=d;f=F[a+16>>2];c=F[a+20>>2]-f>>2;f:{if((c|0)>(d|0)){break f}F[h>>2]=-1;d=d+1|0;if(d>>>0>c>>>0){Ia(r,d-c|0,h);f=F[r>>2];break f}if(c>>>0<=d>>>0){break f}F[a+20>>2]=(d<<2)+f}F[e+f>>2]=n;n=n+1|0;f=n>>>0>>0;if((i|0)!=(n|0)){continue}}break}n=!f}ea=h+80|0;return n&1}function Je(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c=H[b+38>>1];a:{if(!c){break a}b:{if(c>>>0<=511){d=F[b+12>>2];c=F[b+20>>2];g=F[b+16>>2];e=g+4|0;c=e>>>0<4?c+1|0:c;if(e>>>0>I[b+8>>2]&(c|0)>=(d|0)|(c|0)>(d|0)){break a}c=g+F[b>>2]|0;f=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[a+12>>2]=f;c=F[b+20>>2];d=F[b+16>>2]+4|0;c=d>>>0<4?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;break b}if(!jb(1,a+12|0,b)){break a}f=F[a+12>>2]}d=F[a>>2];c=F[a+4>>2]-d>>2;c:{if(c>>>0>>0){Aa(a,f-c|0);f=F[a+12>>2];break c}if(c>>>0<=f>>>0){break c}F[a+4>>2]=d+(f<<2)}if(!f){return 1}j=F[b+8>>2];i=F[b+12>>2];l=F[a>>2];g=0;while(1){c=F[b+20>>2];d=F[b+16>>2];if((i|0)<=(c|0)&j>>>0<=d>>>0|(c|0)>(i|0)){return 0}m=F[b>>2];k=G[m+d|0];d=d+1|0;c=d?c:c+1|0;h=d;F[b+16>>2]=d;F[b+20>>2]=c;d=k>>>2|0;e=0;d:{e:{f:{g:{n=k&3;switch(n|0){case 0:break e;case 3:break g;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}ua(l+(g<<2)|0,0,(k&252)+4|0);g=c;break d}while(1){if((c|0)>=(i|0)&h>>>0>=j>>>0|(c|0)>(i|0)){break a}f=G[h+m|0];h=h+1|0;c=h?c:c+1|0;F[b+16>>2]=h;F[b+20>>2]=c;d=f<<(e<<3|6)|d;e=e+1|0;if((n|0)!=(e|0)){continue}break}}F[l+(g<<2)>>2]=d}f=F[a+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}c=a+16|0;k=F[a>>2];d=F[a+16>>2];b=F[a+20>>2]-d|0;h:{if(b>>>0<=16383){Aa(c,4096-(b>>>2|0)|0);break h}if((b|0)==16384){break h}F[a+20>>2]=d+16384}b=a+28|0;g=F[b>>2];d=F[a+32>>2]-g>>3;i:{if(d>>>0>>0){tb(b,f-d|0);g=F[b>>2];break i}if(d>>>0>f>>>0){F[a+32>>2]=(f<<3)+g}if(!f){break a}}e=0;a=0;while(1){b=k+(e<<2)|0;i=F[b>>2];d=a;h=(e<<3)+g|0;F[h+4>>2]=d;F[h>>2]=i;i=F[b>>2];a=i+d|0;if(a>>>0>4096){break a}j:{if(a>>>0<=d>>>0){break j}h=F[c>>2];b=0;j=i&7;if(j){while(1){F[h+(d<<2)>>2]=e;d=d+1|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}if(i-1>>>0<=6){break j}while(1){b=h+(d<<2)|0;F[b>>2]=e;F[b+28>>2]=e;F[b+24>>2]=e;F[b+20>>2]=e;F[b+16>>2]=e;F[b+12>>2]=e;F[b+8>>2]=e;F[b+4>>2]=e;d=d+8|0;if((d|0)!=(a|0)){continue}break}}e=e+1|0;if((e|0)!=(f|0)){continue}break}o=(a|0)==4096}return o}function Hi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];f=F[e+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){Mb(o,F[(j<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Ij(Hj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=f;d=Ij(Hj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=Ga(n);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=f^d+f;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=F[a+84>>2]-(d+e^d)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];h=F[h>>2];F[g+36>>2]=d;F[g+32>>2]=f;F[g+24>>2]=h;F[g+28>>2]=k;rc(g+40|0,m,g+32|0,g+24|0);d=c+e|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}Da();V()}ea=g+48|0;return 1}function Di(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];f=F[e+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){Kb(o,F[(j<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Ij(Hj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=f;d=Ij(Hj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=Ga(n);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=f^d+f;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=F[a+84>>2]-(d+e^d)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];h=F[h>>2];F[g+36>>2]=d;F[g+32>>2]=f;F[g+24>>2]=h;F[g+28>>2]=k;rc(g+40|0,m,g+32|0,g+24|0);d=c+e|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}Da();V()}ea=g+48|0;return 1}function Qi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];f=F[e+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){Mb(o,F[(j<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Ij(Hj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=f;d=Ij(Hj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=Ga(n);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=f^d+f;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=F[a+84>>2]-(d+e^d)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];F[g+40>>2]=F[h>>2];F[g+44>>2]=k;F[g+28>>2]=d;F[g+24>>2]=f;sc(g+32|0,m,g+24|0,g+40|0);d=c+e|0;F[d>>2]=F[g+32>>2];F[d+4>>2]=F[g+36>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}Da();V()}ea=g+48|0;return 1}function Mi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=ea-48|0;ea=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];f=F[e+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){Kb(o,F[(j<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Ij(Hj(i,l,f,f>>31),fa,h,d);F[g+8>>2]=f;d=Ij(Hj(i,l,e,e>>31),fa,h,d);F[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=Ga(n);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=f^d+f;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=F[a+84>>2]-(d+e^d)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];F[g+40>>2]=F[h>>2];F[g+44>>2]=k;F[g+28>>2]=d;F[g+24>>2]=f;sc(g+32|0,m,g+24|0,g+40|0);d=c+e|0;F[d>>2]=F[g+32>>2];F[d+4>>2]=F[g+36>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}Da();V()}ea=g+48|0;return 1}function Ce(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=ea-16|0;ea=f;c=F[a+4>>2];F[a+40>>2]=F[a>>2];F[a+44>>2]=c;c=F[a+36>>2];F[a+72>>2]=F[a+32>>2];F[a+76>>2]=c;d=F[a+28>>2];c=a- -64|0;F[c>>2]=F[a+24>>2];F[c+4>>2]=d;c=F[a+20>>2];F[a+56>>2]=F[a+16>>2];F[a+60>>2]=c;c=F[a+12>>2];F[a+48>>2]=F[a+8>>2];F[a+52>>2]=c;a:{b:{if(Eb(a+40|0,1,f+8|0)){c=F[a+44>>2];F[a>>2]=F[a+40>>2];F[a+4>>2]=c;c=F[a+76>>2];F[a+32>>2]=F[a+72>>2];F[a+36>>2]=c;c=F[a+68>>2];F[a+24>>2]=F[a+64>>2];F[a+28>>2]=c;d=F[a+60>>2];h=d;c=F[a+56>>2];F[a+16>>2]=c;F[a+20>>2]=d;e=F[a+52>>2];d=F[a+48>>2];F[a+8>>2]=d;F[a+12>>2]=e;i=d-c|0;g=F[f+12>>2];e=e-((c>>>0>d>>>0)+h|0)|0;d=F[f+8>>2];if((g|0)==(e|0)&i>>>0>=d>>>0|e>>>0>g>>>0){break b}}c=0;break a}e=c+d|0;c=h+g|0;F[a+16>>2]=e;F[a+20>>2]=d>>>0>e>>>0?c+1|0:c;c:{if(H[a+38>>1]<=513){c=F[a+4>>2];F[a+96>>2]=F[a>>2];F[a+100>>2]=c;c=F[a+36>>2];F[a+128>>2]=F[a+32>>2];F[a+132>>2]=c;c=F[a+28>>2];F[a+120>>2]=F[a+24>>2];F[a+124>>2]=c;c=F[a+20>>2];F[a+112>>2]=F[a+16>>2];F[a+116>>2]=c;c=F[a+12>>2];F[a+104>>2]=F[a+8>>2];F[a+108>>2]=c;d:{if(Eb(a+96|0,1,f+8|0)){c=F[a+100>>2];F[a>>2]=F[a+96>>2];F[a+4>>2]=c;c=F[a+132>>2];F[a+32>>2]=F[a+128>>2];F[a+36>>2]=c;c=F[a+124>>2];F[a+24>>2]=F[a+120>>2];F[a+28>>2]=c;d=F[a+116>>2];h=d;c=F[a+112>>2];F[a+16>>2]=c;F[a+20>>2]=d;e=F[a+108>>2];d=F[a+104>>2];F[a+8>>2]=d;F[a+12>>2]=e;i=d-c|0;g=F[f+12>>2];e=e-((c>>>0>d>>>0)+h|0)|0;d=F[f+8>>2];if((g|0)==(e|0)&i>>>0>=d>>>0|e>>>0>g>>>0){break d}}c=0;break a}e=c+d|0;c=h+g|0;F[a+16>>2]=e;F[a+20>>2]=d>>>0>e>>>0?c+1|0:c;break c}c=0;if(!xa(a+80|0,a)){break a}}c=0;if(!Be(a)){break a}c=F[a+4>>2];F[b>>2]=F[a>>2];F[b+4>>2]=c;c=F[a+36>>2];F[b+32>>2]=F[a+32>>2];F[b+36>>2]=c;c=F[a+28>>2];F[b+24>>2]=F[a+24>>2];F[b+28>>2]=c;c=F[a+20>>2];F[b+16>>2]=F[a+16>>2];F[b+20>>2]=c;c=F[a+12>>2];F[b+8>>2]=F[a+8>>2];F[b+12>>2]=c;c=1}ea=f+16|0;return c}function jg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=ea-32|0;ea=f;e=f+8|0;c=ea-80|0;ea=c;a=F[b+36>>2];F[c+72>>2]=F[b+32>>2];F[c+76>>2]=a;d=F[b+28>>2];a=c- -64|0;F[a>>2]=F[b+24>>2];F[a+4>>2]=d;a=F[b+20>>2];F[c+56>>2]=F[b+16>>2];F[c+60>>2]=a;a=F[b+12>>2];F[c+48>>2]=F[b+8>>2];F[c+52>>2]=a;a=F[b+4>>2];F[c+40>>2]=F[b>>2];F[c+44>>2]=a;oc(c+8|0,c+40|0,c+24|0);a=F[c+8>>2];a:{if(a){F[e>>2]=a;a=e+4|0;if(D[c+23|0]>=0){b=c+8|4;e=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=e;F[a+8>>2]=F[b+8>>2];break a}Ba(a,F[c+12>>2],F[c+16>>2]);if(D[c+23|0]>=0){break a}ra(F[c+12>>2]);break a}if(D[c+23|0]<0){ra(F[c+12>>2])}a=G[c+31|0];if(a>>>0>=2){a=sa(32);b=G[1621]|G[1622]<<8;D[a+24|0]=b;D[a+25|0]=b>>>8;b=G[1617]|G[1618]<<8|(G[1619]<<16|G[1620]<<24);d=G[1613]|G[1614]<<8|(G[1615]<<16|G[1616]<<24);D[a+16|0]=d;D[a+17|0]=d>>>8;D[a+18|0]=d>>>16;D[a+19|0]=d>>>24;D[a+20|0]=b;D[a+21|0]=b>>>8;D[a+22|0]=b>>>16;D[a+23|0]=b>>>24;b=G[1609]|G[1610]<<8|(G[1611]<<16|G[1612]<<24);d=G[1605]|G[1606]<<8|(G[1607]<<16|G[1608]<<24);D[a+8|0]=d;D[a+9|0]=d>>>8;D[a+10|0]=d>>>16;D[a+11|0]=d>>>24;D[a+12|0]=b;D[a+13|0]=b>>>8;D[a+14|0]=b>>>16;D[a+15|0]=b>>>24;b=G[1601]|G[1602]<<8|(G[1603]<<16|G[1604]<<24);d=G[1597]|G[1598]<<8|(G[1599]<<16|G[1600]<<24);D[a|0]=d;D[a+1|0]=d>>>8;D[a+2|0]=d>>>16;D[a+3|0]=d>>>24;D[a+4|0]=b;D[a+5|0]=b>>>8;D[a+6|0]=b>>>16;D[a+7|0]=b>>>24;D[a+26|0]=0;F[c+8>>2]=-1;b=c+8|4;Ba(b,a,26);d=D[c+23|0];F[e>>2]=F[c+8>>2];e=e+4|0;b:{if((d|0)>=0){d=F[b+4>>2];F[e>>2]=F[b>>2];F[e+4>>2]=d;F[e+8>>2]=F[b+8>>2];break b}Ba(e,F[c+12>>2],F[c+16>>2])}if(D[c+23|0]<0){ra(F[c+12>>2])}ra(a);break a}F[e>>2]=0;F[e+4>>2]=0;F[e+16>>2]=a;F[e+8>>2]=0;F[e+12>>2]=0}ea=c+80|0;a=F[f+24>>2];if(D[f+23|0]<0){ra(F[f+12>>2])}ea=f+32|0;return a|0}function Jg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c;a:{d=a;if(F[d+12>>2]==(b|0)){break a}a=b;b=F[d+4>>2];c=F[d>>2];if((b|0)!=(c|0)){while(1){e=b-12|0;if(D[b-1|0]<0){ra(F[e>>2])}b=e;if((c|0)!=(b|0)){continue}break}}F[d+12>>2]=a;F[d+4>>2]=c;b=F[a>>2];j=a+4|0;if((b|0)==(j|0)){break a}while(1){b:{if(F[d+8>>2]!=(c|0)){c:{if(D[b+27|0]>=0){a=F[b+20>>2];F[c>>2]=F[b+16>>2];F[c+4>>2]=a;F[c+8>>2]=F[b+24>>2];break c}Ba(c,F[b+16>>2],F[b+20>>2])}F[d+4>>2]=c+12;break b}g=0;d:{e:{f:{e=F[d+4>>2];a=F[d>>2];f=(e-a|0)/12|0;c=f+1|0;if(c>>>0<357913942){h=(F[d+8>>2]-a|0)/12|0;k=h<<1;c=h>>>0<178956970?c>>>0>k>>>0?c:k:357913941;if(c){if(c>>>0>=357913942){break f}g=sa(L(c,12))}h=L(c,12);c=L(f,12)+g|0;g:{if(D[b+27|0]>=0){f=F[b+20>>2];F[c>>2]=F[b+16>>2];F[c+4>>2]=f;F[c+8>>2]=F[b+24>>2];break g}Ba(c,F[b+16>>2],F[b+20>>2]);e=F[d+4>>2];a=F[d>>2]}g=g+h|0;f=c+12|0;if((a|0)==(e|0)){break e}while(1){e=e-12|0;h=F[e+4>>2];c=c-12|0;F[c>>2]=F[e>>2];F[c+4>>2]=h;F[c+8>>2]=F[e+8>>2];F[e>>2]=0;F[e+4>>2]=0;F[e+8>>2]=0;if((a|0)!=(e|0)){continue}break}F[d+8>>2]=g;a=F[d+4>>2];F[d+4>>2]=f;e=F[d>>2];F[d>>2]=c;if((a|0)==(e|0)){break d}while(1){c=a-12|0;if(D[a-1|0]<0){ra(F[c>>2])}a=c;if((c|0)!=(e|0)){continue}break}break d}va();V()}wa(1336);V()}F[d+8>>2]=g;F[d+4>>2]=f;F[d>>2]=c}if(e){ra(e)}}c=F[b+4>>2];h:{if(!c){a=F[b+8>>2];if(F[a>>2]==(b|0)){break h}b=b+8|0;while(1){c=F[b>>2];b=c+8|0;a=F[c+8>>2];if((c|0)!=F[a>>2]){continue}break}break h}while(1){a=c;c=F[c>>2];if(c){continue}break}}if((a|0)==(j|0)){break a}c=F[d+4>>2];b=a;continue}}c=0;i:{if((i|0)<0){break i}a=F[d>>2];if((F[d+4>>2]-a|0)/12>>>0<=i>>>0){break i}a=a+L(i,12)|0;c=D[a+11|0]<0?F[a>>2]:a}return c|0}function Vd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=ea-16|0;ea=k;F[k+8>>2]=c;e=F[a+12>>2];d=F[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=F[a+16>>2];d=F[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=ua(e,0,d)+d|0}F[a+12>>2]=d;break a}b:{c:{d:{h=F[a+8>>2];i=d-h>>2;e=i+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>>0<2147483644?e>>>0>l>>>0?e:l:1073741823;if(g){if(g>>>0>=1073741824){break d}j=sa(g<<2)}e=(i<<2)+j|0;i=f<<2;f=ua(e,0,i);i=f+i|0;g=(g<<2)+j|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=F[d>>2];F[d>>2]=0;e=e-4|0;F[e>>2]=f;if((d|0)!=(h|0)){continue}break}F[a+16>>2]=g;f=F[a+12>>2];F[a+12>>2]=i;d=F[a+8>>2];F[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=F[f>>2];F[f>>2]=0;if(e){Ja(e)}if((d|0)!=(f|0)){continue}break}break b}va();V()}wa(1336);V()}F[a+16>>2]=g;F[a+12>>2]=i;F[a+8>>2]=f}if(d){ra(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=F[e>>2];F[e>>2]=0;if(c){Ja(c)}if((d|0)!=(e|0)){continue}break}c=F[k+8>>2]}F[a+12>>2]=d}e:{f:{d=F[c+56>>2];g:{if((d|0)>4){break g}e=L(d,12)+a|0;d=F[e+24>>2];if((d|0)!=F[e+28>>2]){F[d>>2]=b;F[e+24>>2]=d+4;break g}h=F[e+20>>2];f=d-h|0;j=f>>2;d=j+1|0;if(d>>>0>=1073741824){break f}g=f>>1;g=f>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break e}d=sa(g<<2)}else{d=0}j=d+(j<<2)|0;F[j>>2]=b;if((f|0)>0){ta(d,h,f)}F[e+20>>2]=d;F[e+24>>2]=j+4;F[e+28>>2]=d+(g<<2);if(!h){break g}ra(h)}F[c+60>>2]=b;a=F[a+8>>2];F[k+8>>2]=0;b=a+(b<<2)|0;a=F[b>>2];F[b>>2]=c;if(a){Ja(a)}a=F[k+8>>2];F[k+8>>2]=0;if(a){Ja(a)}ea=k+16|0;return}va();V()}wa(1336);V()}function cd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=ea-16|0;ea=i;F[i>>2]=b;g=-1;a:{if((b|0)==-1){F[i+4>>2]=-1;break a}c=b+1|0;F[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}F[i+8>>2]=g;m=(b|0)==-1?-1:(b>>>0)/3|0;b:{c:{d:{e:{while(1){f:{g:{if((b|0)!=-1){c=F[F[F[a+8>>2]+12>>2]+(b<<2)>>2];if((c|0)!=-1){break g}}g=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break f}while(1){f=L(g,144)+c|0;c=F[f+136>>2];d=F[f+140>>2];h:{if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break h}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break e}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break d}c=sa(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break h}ra(h)}g=g+1|0;c=F[a+216>>2];if(g>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}g=0;if(F[a+220>>2]==F[a+216>>2]){break f}while(1){i:{if(!Ga(F[a+368>>2]+(g<<4)|0)){break i}f=F[a+216>>2]+L(g,144)|0;c=F[f+136>>2];d=F[f+140>>2];if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break i}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break c}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break b}c=sa(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break i}ra(h)}g=g+1|0;if(g>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){b=F[(l<<2)+i>>2];continue}break}ea=i+16|0;return 1}va();V()}wa(1336);V()}va();V()}wa(1336);V()}function dd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ea-16|0;ea=i;F[i>>2]=b;g=-1;a:{if((b|0)==-1){F[i+4>>2]=-1;break a}c=b+1|0;F[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}F[i+8>>2]=g;b:{c:{while(1){d:{if(!((b|0)==-1|F[F[F[a+8>>2]+12>>2]+(b<<2)>>2]==-1)){g=0;if(F[a+220>>2]==F[a+216>>2]){break d}e:{while(1){f:{g:{if(!Ga(F[a+368>>2]+(g<<4)|0)){break g}f=F[a+216>>2]+L(g,144)|0;c=F[f+136>>2];d=F[f+140>>2];if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break g}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break f}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break e}c=sa(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break g}ra(h)}g=g+1|0;if(g>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break d}break}va();V()}wa(1336);V()}g=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break d}while(1){f=L(g,144)+c|0;c=F[f+136>>2];d=F[f+140>>2];h:{if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break h}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break c}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break b}c=sa(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){ta(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break h}ra(h)}g=g+1|0;c=F[a+216>>2];if(g>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){b=F[(l<<2)+i>>2];continue}break}ea=i+16|0;return 1}va();V()}wa(1336);V()}function _c(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=F[a+8>>2];g=F[a+4>>2];if((e-g|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=g;e=L(b,12)-12|0;f=((e>>>0)/12|0)+1&3;if(f){while(1){j=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=j;F[d+8>>2]=F[c+8>>2];d=d+12|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}g=L(b,12)+g|0;if(e>>>0<36){break a}while(1){b=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=b;F[d+8>>2]=F[c+8>>2];F[d+20>>2]=F[c+8>>2];b=F[c+4>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=b;F[d+32>>2]=F[c+8>>2];b=F[c+4>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=b;b=F[c+4>>2];F[d+36>>2]=F[c>>2];F[d+40>>2]=b;F[d+44>>2]=F[c+8>>2];d=d+48|0;if((g|0)!=(d|0)){continue}break}}F[a+4>>2]=g;return}b:{f=F[a>>2];i=(g-f|0)/12|0;d=i+b|0;if(d>>>0<357913942){e=(e-f|0)/12|0;f=e<<1;f=e>>>0<178956970?d>>>0>f>>>0?d:f:357913941;if(f){if(f>>>0>=357913942){break b}j=sa(L(f,12))}e=L(i,12)+j|0;d=e;b=L(b,12);i=b-12|0;k=((i>>>0)/12|0)+1&3;if(k){d=e;while(1){l=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=l;F[d+8>>2]=F[c+8>>2];d=d+12|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}h=b+e|0;if(i>>>0>=36){while(1){b=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=b;F[d+8>>2]=F[c+8>>2];F[d+20>>2]=F[c+8>>2];b=F[c+4>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=b;F[d+32>>2]=F[c+8>>2];b=F[c+4>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=b;b=F[c+4>>2];F[d+36>>2]=F[c>>2];F[d+40>>2]=b;F[d+44>>2]=F[c+8>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}b=F[a>>2];c=g-b|0;d=e+L((c|0)/-12|0,12)|0;if((c|0)>0){ta(d,b,c)}F[a+8>>2]=L(f,12)+j;F[a+4>>2]=h;F[a>>2]=d;if(b){ra(b)}return}va();V()}wa(1336);V()}function sg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=0;h=ea-16|0;ea=h;j=F[b+80>>2];e=D[c+24|0];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;a:{b:{if(e){if((e|0)<0){break b}b=e<<2;a=sa(b);F[h>>2]=a;g=a+b|0;F[h+8>>2]=g;k=e-1&1073741823;l=e&7;c:{if(!l){b=a;break c}b=a;while(1){F[b>>2]=-1073741824;b=b+4|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}if(k>>>0>=7){while(1){F[b+24>>2]=-1073741824;F[b+28>>2]=-1073741824;F[b+16>>2]=-1073741824;F[b+20>>2]=-1073741824;F[b+8>>2]=-1073741824;F[b+12>>2]=-1073741824;F[b>>2]=-1073741824;F[b+4>>2]=-1073741824;b=b+32|0;if((g|0)!=(b|0)){continue}break}}F[h+4>>2]=g}b=L(e,j);g=F[d>>2];f=F[d+4>>2]-g>>2;d:{if(b>>>0>f>>>0){Aa(d,b-f|0);break d}if(b>>>0>=f>>>0){break d}F[d+4>>2]=g+(b<<2)}e:{if(!j){break e}i=1;if((e|0)<=0){b=0;while(1){if(!Ya(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],a)){break e}b=b+1|0;i=j>>>0>b>>>0;if((b|0)!=(j|0)){continue}break}break e}p=e&-4;l=e&3;f=0;q=e-1>>>0<3;while(1){if(Ya(c,G[c+84|0]?m:F[F[c+68>>2]+(m<<2)>>2],D[c+24|0],a)){o=F[d>>2];n=0;e=F[h>>2];b=0;i=0;if(!q){while(1){g=o+(f<<2)|0;k=b<<2;J[g>>2]=J[k+e>>2];J[g+4>>2]=J[(k|4)+e>>2];J[g+8>>2]=J[(k|8)+e>>2];J[g+12>>2]=J[(k|12)+e>>2];b=b+4|0;f=f+4|0;i=i+4|0;if((p|0)!=(i|0)){continue}break}}if(l){while(1){J[o+(f<<2)>>2]=J[(b<<2)+e>>2];b=b+1|0;f=f+1|0;n=n+1|0;if((l|0)!=(n|0)){continue}break}}m=m+1|0;i=m>>>0>>0;if((j|0)!=(m|0)){continue}}break}a=F[h>>2]}if(a){ra(a)}ea=h+16|0;a=(i^-1)&1;break a}va();V()}return a|0}function rc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=F[b+16>>2];g=F[c+4>>2]-k|0;e=g;f=F[c>>2]-k|0;F[c>>2]=f;F[c+4>>2]=e;j=F[b+16>>2];e=e>>31;h=e+g^e;e=f>>31;l=(j|0)>=(h+(e+f^e)|0);a:{if(l){e=g;break a}b:{c:{if((f|0)>=0){i=1;h=1;if((g|0)>=0){break b}e=1;i=-1;h=-1;if(f){break c}break b}e=-1;i=-1;h=-1;if((g|0)<=0){break b}}i=(g|0)<=0?-1:1;h=e}e=f<<1;f=L(h,j);e=e-f|0;h=(L(i,h)|0)>=0;i=L(i,j);e=((h?0-e|0:e)+i|0)/2|0;F[c+4>>2]=e;j=f;f=(g<<1)-i|0;f=(j+(h?0-f|0:f)|0)/2|0;F[c>>2]=f}d:{e:{f:{g:{h:{i:{j:{if(f){if((f|0)<0){break j}if((e|0)>=0){break i}break f}if(e){break h}i=1;g=0;e=0;h=0;break d}i=1;if((e|0)>0){break g}h=(e|0)>0?253:0;g=e;e=f;break d}g=0-e|0;e=0-f|0;h=254;break e}if((e|0)<=0){break f}}e=0-e|0;g=f;h=253;break e}g=0-f|0;h=255}F[c>>2]=e;F[c+4>>2]=g;i=0}c=F[d+4>>2]+g|0;f=F[d>>2]+e|0;g=F[b+16>>2];k:{if((f|0)>(g|0)){f=f-F[b+4>>2]|0;break k}if((0-g|0)<=(f|0)){break k}f=F[b+4>>2]+f|0}l:{if((c|0)>(g|0)){c=c-F[b+4>>2]|0;break l}if((0-g|0)<=(c|0)){break l}c=F[b+4>>2]+c|0}m:{if(i){b=c;break m}b=c;n:{switch((h&3)-1|0){case 0:b=0-f|0;f=c;break m;case 1:b=0-c|0;f=0-f|0;break m;case 2:break n;default:break m}}b=f;f=0-c|0}o:{if(l){c=b;break o}p:{q:{if((f|0)>=0){c=1;e=1;if((b|0)>=0){break p}d=1;c=-1;e=-1;if(f){break q}break p}d=-1;c=-1;e=-1;if((b|0)<=0){break p}}c=(b|0)<=0?-1:1;e=d}d=f<<1;f=L(e,g);d=d-f|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(c,e)|0)>=0;e=L(c,g);c=((d?j:h)+e|0)/2|0;b=(b<<1)-e|0;f=(f+(d?0-b|0:b)|0)/2|0}F[a>>2]=f+k;F[a+4>>2]=c+k}function me(a,b){var c=0,d=0,e=0,f=0;if(!F[a+64>>2]){c=sa(32);F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=F[a+64>>2];F[a+64>>2]=c;if(d){c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}ra(d);c=F[a+64>>2]}F[a>>2]=c;d=F[c+20>>2];F[a+8>>2]=F[c+16>>2];F[a+12>>2]=d;d=F[c+24>>2];c=F[c+28>>2];F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+16>>2]=d;F[a+20>>2]=c}a:{D[a+24|0]=G[b+24|0];F[a+28>>2]=F[b+28>>2];D[a+32|0]=G[b+32|0];c=F[b+44>>2];F[a+40>>2]=F[b+40>>2];F[a+44>>2]=c;c=F[b+52>>2];F[a+48>>2]=F[b+48>>2];F[a+52>>2]=c;F[a+56>>2]=F[b+56>>2];c=F[b+12>>2];F[a+8>>2]=F[b+8>>2];F[a+12>>2]=c;c=F[b+20>>2];F[a+16>>2]=F[b+16>>2];F[a+20>>2]=c;F[a+60>>2]=F[b+60>>2];d=F[b>>2];b:{if(!d){F[a>>2]=0;c=1;break b}e=F[a>>2];c=0;if(!e){break b}c=F[d>>2];qe(e,c,F[d+4>>2]-c|0,0);c=1}c:{if(!c){break c}D[a+84|0]=G[b+84|0];F[a+80>>2]=F[b+80>>2];if((a|0)!=(b|0)){Db(a+68|0,F[b+68>>2],F[b+72>>2])}d=F[b+88>>2];d:{if(d){b=sa(40);c=F[d>>2];F[b+16>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b>>2]=c;e=F[d+12>>2]-F[d+8>>2]|0;if(e){if((e|0)<0){break a}c=sa(e);F[b+8>>2]=c;F[b+12>>2]=c;F[b+16>>2]=c+e;f=F[d+8>>2];e=F[d+12>>2]-f|0;if((e|0)>0){c=ta(c,f,e)+e|0}F[b+12>>2]=c}c=F[d+36>>2];F[b+32>>2]=F[d+32>>2];F[b+36>>2]=c;c=F[d+28>>2];F[b+24>>2]=F[d+24>>2];F[b+28>>2]=c;c=F[a+88>>2];F[a+88>>2]=b;if(c){break d}break c}c=F[a+88>>2];F[a+88>>2]=0;if(!c){break c}}a=F[c+8>>2];if(a){F[c+12>>2]=a;ra(a)}ra(c)}return}va();V()}function Yb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=d-c|0;if((h|0)<=0){return}a:{f=F[a+8>>2];i=F[a+4>>2];if((h|0)<=(f-i|0)){j=i-b|0;if((j|0)>=(h|0)){g=i;f=d;break a}g=i;f=c+j|0;if((f|0)!=(d|0)){e=f;while(1){D[g|0]=G[e|0];g=g+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=g;if((j|0)>0){break a}return}e=F[a>>2];d=h+(i-e|0)|0;if((d|0)>=0){g=b-e|0;f=f-e|0;j=f<<1;f=f>>>0<1073741823?d>>>0>j>>>0?d:j:2147483647;if(f){d=sa(f)}else{d=0}c=ta(g+d|0,c,h);if((g|0)>0){ta(d,e,g)}c=c+h|0;if((b|0)!=(i|0)){g=(b^-1)+i|0;h=i-b&7;if(h){e=0;while(1){D[c|0]=G[b|0];c=c+1|0;b=b+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if(g>>>0>=7){while(1){D[c|0]=G[b|0];D[c+1|0]=G[b+1|0];D[c+2|0]=G[b+2|0];D[c+3|0]=G[b+3|0];D[c+4|0]=G[b+4|0];D[c+5|0]=G[b+5|0];D[c+6|0]=G[b+6|0];D[c+7|0]=G[b+7|0];c=c+8|0;b=b+8|0;if((i|0)!=(b|0)){continue}break}}e=F[a>>2]}F[a+8>>2]=d+f;F[a+4>>2]=c;F[a>>2]=d;if(e){ra(e)}return}va();V()}e=g;d=e-h|0;if(i>>>0>d>>>0){while(1){D[e|0]=G[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}F[a+4>>2]=e;a=g-(b+h|0)|0;if(a){Wa(g-a|0,b,a)}if((c|0)==(f|0)){return}a=(c^-1)+f|0;g=f-c&7;b:{if(!g){e=b;break b}d=0;e=b;while(1){D[e|0]=G[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){D[e|0]=G[c|0];D[e+1|0]=G[c+1|0];D[e+2|0]=G[c+2|0];D[e+3|0]=G[c+3|0];D[e+4|0]=G[c+4|0];D[e+5|0]=G[c+5|0];D[e+6|0]=G[c+6|0];D[e+7|0]=G[c+7|0];e=e+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}function mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=ea-16|0;ea=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!G[c+84|0]|(b|0)!=5&(b|0)!=6)){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=sa(a);b=ta(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=sa(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;ua(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>2;d:{if(b>>>0>>0){Aa(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!ec(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(ec(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;F[k>>2]=F[g+l>>2];F[k+4>>2]=F[g+(l|4)>>2];F[k+8>>2]=F[g+(l|8)>>2];F[k+12>>2]=F[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){F[(j<<2)+o>>2]=F[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){ra(h)}a=b^1}ea=e+16|0;a=a&1;break a}va();V()}return a|0}function fe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=ea-16|0;ea=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!G[c+84|0]|(b|0)!=5&(b|0)!=6)){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=sa(a);b=ta(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=sa(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;ua(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>2;d:{if(b>>>0>>0){Aa(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!fc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(fc(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;F[k>>2]=F[g+l>>2];F[k+4>>2]=F[g+(l|4)>>2];F[k+8>>2]=F[g+(l|8)>>2];F[k+12>>2]=F[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){F[(j<<2)+o>>2]=F[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){ra(h)}a=b^1}ea=e+16|0;a=a&1;break a}va();V()}return a|0}function pg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=ea-16|0;ea=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!G[c+84|0]|(b|0)!=3&(b|0)!=4)){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=sa(a);b=ta(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=sa(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;ua(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>1;d:{if(b>>>0>>0){oe(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!hc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(hc(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;E[k>>1]=H[g+l>>1];E[k+2>>1]=H[g+(l|2)>>1];E[k+4>>1]=H[g+(l|4)>>1];E[k+6>>1]=H[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){E[(j<<1)+o>>1]=H[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){ra(h)}a=b^1}ea=e+16|0;a=a&1;break a}va();V()}return a|0}function og(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=ea-16|0;ea=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!G[c+84|0]|(b|0)!=3&(b|0)!=4)){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=sa(a);b=ta(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=F[d>>2];if(a){F[d+4>>2]=a;ra(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=sa(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;ua(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>1;d:{if(b>>>0>>0){oe(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!gc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(gc(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;E[k>>1]=H[g+l>>1];E[k+2>>1]=H[g+(l|2)>>1];E[k+4>>1]=H[g+(l|4)>>1];E[k+6>>1]=H[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){E[(j<<1)+o>>1]=H[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){ra(h)}a=b^1}ea=e+16|0;a=a&1;break a}va();V()}return a|0}function Zi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;F[a+8>>2]=e;f=a+32|0;i=F[f>>2];h=F[a+36>>2]-i>>2;a:{if(h>>>0>>0){Aa(f,e-h|0);i=F[f>>2];f=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}f=e}h=0;g=(e&1073741823)!=(e|0)?-1:e<<2;m=ua(sa(g),0,g);b:{if((f|0)<=0){break b}while(1){f=h<<2;g=F[f+m>>2];j=F[a+16>>2];c:{if((g|0)>(j|0)){F[f+i>>2]=j;break c}f=f+i|0;j=F[a+12>>2];if((j|0)>(g|0)){F[f>>2]=j;break c}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}if((f|0)<=0){break b}h=0;while(1){g=h<<2;f=g+c|0;g=F[b+g>>2]+F[g+i>>2]|0;F[f>>2]=g;d:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}g=g+F[a+20>>2]|0}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}if(!((d|0)<=(e|0)|(f|0)<=0)){o=0-e<<2;i=e;while(1){e:{if((f|0)<=0){break e}l=i<<2;n=l+c|0;p=n+o|0;j=F[a+32>>2];h=0;while(1){f=h<<2;g=F[f+p>>2];k=F[a+16>>2];f:{if((g|0)>(k|0)){F[f+j>>2]=k;break f}f=f+j|0;k=F[a+12>>2];if((k|0)>(g|0)){F[f>>2]=k;break f}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}h=0;if((f|0)<=0){break e}l=b+l|0;while(1){g=h<<2;f=g+n|0;g=F[g+l>>2]+F[g+j>>2]|0;F[f>>2]=g;g:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break g}g=g+F[a+20>>2]|0}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}i=e+i|0;if((i|0)<(d|0)){continue}break}}ra(m);return 1}function We(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ea-32|0;ea=i;F[i+28>>2]=0;a:{b:{if(H[b+38>>1]<=513){c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=F[b+12>>2];if((e|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(e|0)){break a}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;break b}if(!Pb(1,i+28|0,b)){break a}d=F[i+28>>2]}if(!d){break a}Ob(a+76|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c:{if(!xa(c,b)){break c}e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^j;if(e&1){f=F[g>>2]&(f^-1)}else{f=f|F[g>>2]}e=e^1;F[g>>2]=f;h=h+1|0;if((h|0)!=(d|0)){continue}break}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;f=F[b+16>>2];j=f+4|0;c=j>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break c}c=j+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break c}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break c}h=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break c}F[a+24>>2]=c-1}}ea=i+32|0;return h|0}function Yc(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;a:{if((b|0)==-1){break a}c=b+1|0;d=(c>>>0)%3|0?c:b-2|0;f=b-1|0;if((b>>>0)%3|0){break a}f=b+2|0}b:{c:{d:{e:{f:{g:{e=F[a+184>>2];switch(e|0){case 7:break d;case 3:break e;case 5:break f;case 0:case 1:break g;default:break b}}g=F[a+148>>2];c=-1;e=1;d=((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:c)<<2;c=F[a+156>>2];d=d+c|0;F[d>>2]=F[d>>2]+1;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+1;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+1;e=2;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+1;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+2;e=1;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+2;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+2;e=2;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0}F[c>>2]=F[c>>2]+e;e=F[a+184>>2]}h:{switch(e|0){case 0:case 5:f=F[a+156>>2];c=-1;i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;c=-1;if((b|0)==-1){break i}c=F[F[F[a+148>>2]>>2]+(b<<2)>>2]}if(F[f+(c<<2)>>2]<=5){F[a+188>>2]=5;return}F[a+188>>2]=0;return;default:break h}}F[a+188>>2]=-1}function jf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=ea-16|0;ea=e;h=1;i=ga[F[F[a>>2]+24>>2]](a)|0;a:{if((i|0)<=0){h=0;break a}l=a+48|0;while(1){b:{c:{if(!F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2]){break c}j=f<<2;g=F[j+F[a+36>>2]>>2];b=F[g+8>>2];k=ub(g);if(!k){break c}g=F[(ga[F[F[a>>2]+28>>2]](a)|0)+40>>2];F[e+12>>2]=F[b+56>>2];b=sa(32);F[e>>2]=b;F[e+4>>2]=24;F[e+8>>2]=-2147483616;D[b+24|0]=0;c=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);d=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;b=td(g,e+12|0,e);if(D[e+11|0]<0){ra(F[e>>2])}if(!b){break c}me(F[F[F[a+36>>2]+j>>2]+8>>2],k);break b}b=F[F[a+36>>2]+(f<<2)>>2];if(!(ga[F[F[b>>2]+24>>2]](b,l)|0)){break a}}f=f+1|0;h=(i|0)>(f|0);if((f|0)!=(i|0)){continue}break}}ea=e+16|0;return(h^-1)&1}function Ue(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=ea-16|0;ea=j;c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=F[b+12>>2];a:{if((e|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(e|0)){break a}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;if((d|0)<0){break a}Ob(a+76|0,d);c=j;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;b:{if(!xa(c,b)){break b}if(d){e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^i;if(e&1){f=F[g>>2]&(f^-1)}else{f=f|F[g>>2]}e=e^1;F[g>>2]=f;h=h+1|0;if((d|0)!=(h|0)){continue}break}}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;f=F[b+16>>2];i=f+4|0;c=i>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break b}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break b}c=i+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break b}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break b}h=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break b}F[a+24>>2]=c-1}}ea=j+16|0;return h|0}function rg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=ea-16|0;ea=g;h=F[b+80>>2];i=G[c+24|0];e=i<<24>>24;b=L(h,e);a:{b:{a=F[c+28>>2];c:{if(!(!G[c+84|0]|(a|0)!=1&(a|0)!=2)){e=F[c+48>>2];c=F[F[c>>2]>>2];a=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<0){break b}f=sa(b);a=ta(f,c+e|0,b)+b|0}b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d+8>>2]=a;F[d+4>>2]=a;F[d>>2]=f;b=1;break c}a=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d:{e:{if(e){if((e|0)<0){break b}f=sa(e);F[g>>2]=f;ua(f,0,e);Va(d,b);if(h){break e}b=1;break d}Va(d,b);b=1;if(!h){break c}while(1){if(jc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],0)){a=a+1|0;b=h>>>0>a>>>0;if((a|0)!=(h|0)){continue}}break}b=b^1;break c}b=e-1|0;j=b&-2;k=b&1;b=1;e=0;f:{while(1){f=F[g>>2];if(!jc(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],f)){break f}D[F[d>>2]+a|0]=G[f|0];b=1;a=a+1|0;f=0;g:{h:{switch(i-1|0){default:while(1){D[F[d>>2]+a|0]=G[F[g>>2]+b|0];D[(F[d>>2]+a|0)+1|0]=G[(F[g>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break};break;case 0:break g;case 1:break h}}if(!k){break g}D[F[d>>2]+a|0]=G[F[g>>2]+b|0];a=a+1|0}e=e+1|0;b=h>>>0>e>>>0;if((e|0)!=(h|0)){continue}break}f=F[g>>2]}b=!b;if(!f){break c}}ra(f)}ea=g+16|0;a=b&1;break a}va();V()}return a|0}function qg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=ea-16|0;ea=g;h=F[b+80>>2];i=G[c+24|0];e=i<<24>>24;b=L(h,e);a:{b:{a=F[c+28>>2];c:{if(!(!G[c+84|0]|(a|0)!=1&(a|0)!=2)){e=F[c+48>>2];c=F[F[c>>2]>>2];a=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<0){break b}f=sa(b);a=ta(f,c+e|0,b)+b|0}b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d+8>>2]=a;F[d+4>>2]=a;F[d>>2]=f;b=1;break c}a=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d:{e:{if(e){if((e|0)<0){break b}f=sa(e);F[g>>2]=f;ua(f,0,e);Va(d,b);if(h){break e}b=1;break d}Va(d,b);b=1;if(!h){break c}while(1){if(ic(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],0)){a=a+1|0;b=h>>>0>a>>>0;if((a|0)!=(h|0)){continue}}break}b=b^1;break c}b=e-1|0;j=b&-2;k=b&1;b=1;e=0;f:{while(1){f=F[g>>2];if(!ic(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],f)){break f}D[F[d>>2]+a|0]=G[f|0];b=1;a=a+1|0;f=0;g:{h:{switch(i-1|0){default:while(1){D[F[d>>2]+a|0]=G[F[g>>2]+b|0];D[(F[d>>2]+a|0)+1|0]=G[(F[g>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break};break;case 0:break g;case 1:break h}}if(!k){break g}D[F[d>>2]+a|0]=G[F[g>>2]+b|0];a=a+1|0}e=e+1|0;b=h>>>0>e>>>0;if((e|0)!=(h|0)){continue}break}f=F[g>>2]}b=!b;if(!f){break c}}ra(f)}ea=g+16|0;a=b&1;break a}va();V()}return a|0}function ze(a,b){var c=0,d=0,e=0,f=0,g=0;f=-1;d=-1;a:{if((b|0)==-1){break a}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}b:{c:{d:{switch(F[a+168>>2]){case 0:case 1:e=F[a+148>>2];c=1;b=F[a+156>>2];g=b+(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)|0;F[g>>2]=F[g>>2]+1;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+1;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+1;c=2;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 3:e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+1;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+2;c=1;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 7:break d;default:break b}}e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+2;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+2;c=2;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0}F[b>>2]=F[b>>2]+c}c=a;d=F[a+180>>2];b=F[F[a+156>>2]+(((f|0)!=-1?F[F[F[a+148>>2]>>2]+(f<<2)>>2]:-1)<<2)>>2];a=F[a+176>>2];F[c+172>>2]=(a|0)>(b|0)?0:((b|0)>(d|0)?d:b)-a|0}function Jc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=F[a+8>>2];e=F[a>>2];if(d-e>>2>>>0>=b>>>0){g=F[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){F[d>>2]=F[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){d=a;a=b-h|0;if(a){a=(a<<2)+g|0;while(1){F[g>>2]=F[c>>2];g=g+4|0;if((a|0)!=(g|0)){continue}break}}else{a=g}F[d+4>>2]=a;return}F[a+4>>2]=e+(b<<2);return}if(e){F[a+4>>2]=e;ra(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=sa(d);F[a>>2]=e;F[a+8>>2]=d+e;c=F[c>>2];d=e;g=b&7;if(g){while(1){F[d>>2]=c;d=d+4|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){F[d+28>>2]=c;F[d+24>>2]=c;F[d+20>>2]=c;F[d+16>>2]=c;F[d+12>>2]=c;F[d+8>>2]=c;F[d+4>>2]=c;F[d>>2]=c;d=d+32|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=e;return}va();V()}function yh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=F[a+32>>2];e=F[c+8>>2];f=F[c+12>>2];d=F[c+20>>2];g=e;e=F[c+16>>2];b=0;b:{if((f|0)<=(d|0)&g>>>0<=e>>>0|(d|0)>(f|0)){break b}g=G[e+F[c>>2]|0];f=e+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;c:{if(!g){break c}while(1){if(ga[F[F[a>>2]+16>>2]](a,b)|0){b=b+1|0;if((g|0)!=(b|0)){continue}break c}break}return 0}b=F[a+8>>2];d=F[a+12>>2];if((b|0)!=(d|0)){while(1){c=F[b>>2];if(!(ga[F[F[c>>2]+8>>2]](c,a,F[a+4>>2])|0)){break a}b=b+4|0;if((d|0)!=(b|0)){continue}break}}d:{if(!g){break d}b=0;while(1){c=F[F[a+8>>2]+(b<<2)>>2];if(!(ga[F[F[c>>2]+12>>2]](c,F[a+32>>2])|0)){break a}b=b+1|0;if((g|0)!=(b|0)){continue}break}if(!g){break d}e=a+20|0;while(1){b=0;f=h<<2;c=F[f+F[a+8>>2]>>2];d=ga[F[F[c>>2]+24>>2]](c)|0;if((d|0)>0){while(1){c=F[F[a+8>>2]+f>>2];k=ga[F[F[c>>2]+20>>2]](c,b)|0;i=F[a+20>>2];j=F[a+24>>2]-i>>2;e:{if(k>>>0>>0){break e}c=k+1|0;if(c>>>0>j>>>0){Aa(e,c-j|0);i=F[e>>2];break e}if(c>>>0>=j>>>0){break e}F[a+24>>2]=(c<<2)+i}F[(k<<2)+i>>2]=h;b=b+1|0;if((d|0)!=(b|0)){continue}break}}h=h+1|0;if((g|0)!=(h|0)){continue}break}}b=0;if(!(ga[F[F[a>>2]+28>>2]](a)|0)){break b}b=ga[F[F[a>>2]+32>>2]](a)|0}return b|0}return 0}function Rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;Vd(a,b,c);c=F[a+84>>2];d=F[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=F[a+92>>2];c=F[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=d&7;if(f){while(1){F[b>>2]=1;b=b+4|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}c=(d<<2)+c|0;if((d-1&1073741823)>>>0<7){break c}while(1){F[b+24>>2]=1;F[b+28>>2]=1;F[b+16>>2]=1;F[b+20>>2]=1;F[b+8>>2]=1;F[b+12>>2]=1;F[b>>2]=1;F[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}F[a+88>>2]=c;break b}d:{f=F[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;h=e>>1;e=e>>>0<2147483644?b>>>0>h>>>0?b:h:1073741823;if(e){if(e>>>0>=1073741824){break d}i=sa(e<<2)}c=(c<<2)+i|0;b=c;h=d&7;if(h){b=c;while(1){F[b>>2]=1;b=b+4|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}c=c+(d<<2)|0;if((d-1&1073741823)>>>0>=7){while(1){F[b+24>>2]=1;F[b+28>>2]=1;F[b+16>>2]=1;F[b+20>>2]=1;F[b+8>>2]=1;F[b+12>>2]=1;F[b>>2]=1;F[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){ta(i,f,j)}F[a+92>>2]=(e<<2)+i;F[a+88>>2]=c;F[a+84>>2]=i;if(f){ra(f)}break b}va();V()}wa(1336);V()}return}if(b>>>0>=d>>>0){break a}F[a+88>>2]=c+(b<<2)}}function xa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=ea-16|0;ea=i;e=F[b+20>>2];c=F[b+12>>2];f=F[b+16>>2];a:{if((e|0)>=(c|0)&f>>>0>=I[b+8>>2]|(c|0)<(e|0)){break a}D[a+12|0]=G[f+F[b>>2]|0];e=F[b+20>>2];c=e;f=F[b+16>>2];d=f+1|0;e=d?c:c+1|0;h=d;F[b+16>>2]=d;F[b+20>>2]=e;b:{if(H[b+38>>1]<=513){g=F[b+12>>2];e=c;c=f+5|0;e=c>>>0<5?e+1|0:e;d=F[b+8>>2];f=c;if(d>>>0>>0&(e|0)>=(g|0)|(e|0)>(g|0)){break a}c=h+F[b>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;break b}if(!Ne(1,i+12|0,b)){break a}f=F[b+16>>2];e=F[b+20>>2];d=F[b+8>>2];g=F[b+12>>2];c=F[i+12>>2]}h=d-f|0;d=g-(e+(d>>>0>>0)|0)|0;if((d|0)<=0&c>>>0>h>>>0|(d|0)<0|(c|0)<=0){break a}d=f+F[b>>2]|0;F[a>>2]=d;k=a;g=c-1|0;h=g+d|0;j=G[h|0];c:{if(j>>>0<=63){F[a+4>>2]=g;a=G[h|0]&63;break c}d:{switch((j>>>6|0)-1|0){case 0:if(c>>>0<2){break a}F[a+4>>2]=c-2;d=(c+d|0)-2|0;a=G[d+1|0]<<8&16128|G[d|0];break c;case 1:break d;default:break a}}if(c>>>0<3){break a}F[a+4>>2]=c-3;d=(c+d|0)-3|0;a=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0]}a=a+4096|0;F[k+8>>2]=a;if(a>>>0>1048575){break a}a=c+f|0;e=a>>>0>>0?e+1|0:e;F[b+16>>2]=a;F[b+20>>2]=e;l=1}ea=i+16|0;return l}function Ie(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=ea-16|0;ea=h;a:{b:{if(H[b+38>>1]<=511){g=F[b+12>>2];i=g;c=F[b+20>>2];d=F[b+16>>2];f=d+8|0;c=f>>>0<8?c+1|0:c;e=F[b+8>>2];if(e>>>0>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break a}d=d+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=G[d+4|0]|G[d+5|0]<<8|(G[d+6|0]<<16|G[d+7|0]<<24);F[b+16>>2]=f;F[b+20>>2]=c;break b}if(!ib(1,h+8|0,b)){break a}f=F[b+16>>2];c=F[b+20>>2];e=F[b+8>>2];i=F[b+12>>2];g=F[h+8>>2];d=F[h+12>>2]}j=e-f|0;e=i-(c+(f>>>0>e>>>0)|0)|0;if((e|0)==(d|0)&g>>>0>j>>>0|d>>>0>e>>>0){break a}c=c+d|0;e=f+g|0;c=e>>>0>>0?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;c=g;if((c|0)<=0){break a}b=f+F[b>>2]|0;F[a+40>>2]=b;i=a;f=c-1|0;g=b+f|0;e=G[g|0];c:{if(e>>>0<=63){F[a+44>>2]=f;a=G[g|0]&63;break c}d:{switch((e>>>6|0)-1|0){case 0:if(c>>>0<2){break a}F[a+44>>2]=c-2;b=(b+c|0)-2|0;a=G[b+1|0]<<8&16128|G[b|0];break c;case 1:if(c>>>0<3){break a}F[a+44>>2]=c-3;b=(b+c|0)-3|0;a=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break c;default:break d}}F[a+44>>2]=c-4;b=(b+c|0)-4|0;a=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}a=a+16384|0;F[i+48>>2]=a;k=a>>>0<4194304}ea=h+16|0;return k}function ta(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){ba(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){D[c|0]=G[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){F[c>>2]=F[b>>2];F[c+4>>2]=F[b+4>>2];F[c+8>>2]=F[b+8>>2];F[c+12>>2]=F[b+12>>2];F[c+16>>2]=F[b+16>>2];F[c+20>>2]=F[b+20>>2];F[c+24>>2]=F[b+24>>2];F[c+28>>2]=F[b+28>>2];F[c+32>>2]=F[b+32>>2];F[c+36>>2]=F[b+36>>2];F[c+40>>2]=F[b+40>>2];F[c+44>>2]=F[b+44>>2];F[c+48>>2]=F[b+48>>2];F[c+52>>2]=F[b+52>>2];F[c+56>>2]=F[b+56>>2];F[c+60>>2]=F[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){F[c>>2]=F[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){D[c|0]=G[b|0];D[c+1|0]=G[b+1|0];D[c+2|0]=G[b+2|0];D[c+3|0]=G[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){D[c|0]=G[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function Ia(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=F[a+8>>2];e=F[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=b&7;if(g){while(1){F[d>>2]=F[c>>2];d=d+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}e=(b<<2)+e|0;if((b-1&1073741823)>>>0<7){break a}while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=e;return}b:{g=F[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;i=f>>1;f=f>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(f){if(f>>>0>=1073741824){break b}j=sa(f<<2)}e=(e<<2)+j|0;d=e;i=b&7;if(i){d=e;while(1){F[d>>2]=F[c>>2];d=d+4|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}if((k|0)>0){ta(j,g,k)}F[a+8>>2]=(f<<2)+j;F[a+4>>2]=e;F[a>>2]=j;if(g){ra(g)}return}va();V()}wa(1336);V()}function we(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;F[a>>2]=11512;d=a+232|0;b=F[d+196>>2];if(b){F[d+200>>2]=b;ra(b)}c=F[d+184>>2];if(c){b=F[d+188>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;f=F[e>>2];if(f){F[b-8>>2]=f;ra(f)}b=e;if((c|0)!=(b|0)){continue}break}b=F[d+184>>2]}F[d+188>>2]=c;ra(b)}b=F[d+156>>2];if(b){F[d+160>>2]=b;ra(b)}c=F[d+136>>2];F[d+136>>2]=0;if(c){e=c-4|0;b=F[e>>2];if(b){b=c+(b<<4)|0;while(1){b=b-16|0;if((c|0)!=(b|0)){continue}break}}ra(e)}Xc(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}b=F[a+144>>2];if(b){while(1){c=F[b>>2];ra(b);b=c;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){cb(b)}return a|0}function xb(a,b){var c=0,d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;c=a+16|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+48>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+68>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+88>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+100>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;g=a+116|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+104>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=1;break a}c=b<<2;e=sa(c);F[a+92>>2]=e;f=c+e|0;F[a+100>>2]=f;ua(e,0,c);F[a+112>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;F[a+96>>2]=f;e=sa(c);F[a+104>>2]=e;f=c+e|0;F[a+112>>2]=f;ua(e,0,c);F[a+108>>2]=f;e=sa(c);F[d>>2]=e;f=c+e|0;F[d+8>>2]=f;ua(e,0,c);F[d+4>>2]=f;c=b<<5|1}wb(g,c,d);e=F[d>>2];if(e){F[d+4>>2]=e;ra(e)}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(b){b=b<<2;e=sa(b);F[d>>2]=e;f=b+e|0;F[d+8>>2]=f;ua(e,0,b);F[d+4>>2]=f}wb(a+128|0,c,d);b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}ea=d+16|0;return a}function Jj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=O(d)-O(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;fa=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>Mj(d)|0;fa=0;break a}if(!(g-1&g)){break f}h=(O(g)+33|0)-O(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;fa=0;break a}c=O(d)-O(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=Mj(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<>>d}fa=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;i=b>>>f|0}else{c=b>>>f|0;i=((1<>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<>>32-e|b<>>31;f=f<<1|i>>>31;j=m-(f+(c>>>0>e>>>0)|0)>>31;k=g&j;i=c-k|0;f=f-((d&j)+(c>>>0>>0)|0)|0;b=b<<1|a>>>31;a=l|a<<1;l=j&1;h=h-1|0;if(h){continue}break}}fa=b<<1|a>>>31;a=l|a<<1;break a}a=0;b=0}fa=b}return a}function zb(a,b){var c=0,d=0,e=0,f=0,g=0;c=ea-16|0;ea=c;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a+52>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[a+72>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+92>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+104>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;g=a+120|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();V()}F[a+108>>2]=0;F[a+112>>2]=0;F[a+116>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;e=1;break a}e=b<<2;d=sa(e);F[a+96>>2]=d;f=d+e|0;F[a+104>>2]=f;ua(d,0,e);F[a+116>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;F[a+100>>2]=f;d=sa(e);F[a+108>>2]=d;f=d+e|0;F[a+116>>2]=f;ua(d,0,e);F[a+112>>2]=f;d=sa(e);F[c>>2]=d;f=d+e|0;F[c+8>>2]=f;ua(d,0,e);F[c+4>>2]=f;e=b<<5|1}wb(g,e,c);d=F[c>>2];if(d){F[c+4>>2]=d;ra(d)}F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;if(b){b=b<<2;d=sa(b);F[c>>2]=d;f=b+d|0;F[c+8>>2]=f;ua(d,0,b);F[c+4>>2]=f}wb(a+132|0,e,c);b=F[c>>2];if(b){F[c+4>>2]=b;ra(b)}ea=c+16|0;return a}function Tb(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);D[b+12|0]=c;a:{if(c){break a}while(1){d=F[b+8>>2];if(G[d+12|0]){break a}b:{c=F[d+8>>2];e=F[c>>2];c:{if((d|0)==(e|0)){e=F[c+4>>2];if(!(!e|G[e+12|0])){break b}d:{if(F[d>>2]==(b|0)){b=d;break d}b=F[d+4>>2];a=F[b>>2];F[d+4>>2]=a;if(a){F[a+8>>2]=d;c=F[d+8>>2]}F[b+8>>2]=c;a=F[d+8>>2];F[(((d|0)!=F[a>>2])<<2)+a>>2]=b;F[b>>2]=d;F[d+8>>2]=b;c=F[b+8>>2]}D[b+12|0]=1;D[c+12|0]=0;a=F[c>>2];b=F[a+4>>2];F[c>>2]=b;if(b){F[b+8>>2]=c}F[a+8>>2]=F[c+8>>2];b=F[c+8>>2];F[((F[b>>2]!=(c|0))<<2)+b>>2]=a;F[a+4>>2]=c;b=c+8|0;break c}if(!(G[e+12|0]|!e)){break b}e:{if(F[d>>2]!=(b|0)){b=d;break e}a=F[b+4>>2];F[d>>2]=a;if(a){F[a+8>>2]=d;c=F[d+8>>2]}F[b+8>>2]=c;a=F[d+8>>2];F[(((d|0)!=F[a>>2])<<2)+a>>2]=b;F[b+4>>2]=d;F[d+8>>2]=b;c=F[b+8>>2]}D[b+12|0]=1;D[c+12|0]=0;a=F[c+4>>2];b=F[a>>2];F[c+4>>2]=b;if(b){F[b+8>>2]=c}F[a+8>>2]=F[c+8>>2];b=F[c+8>>2];F[((F[b>>2]!=(c|0))<<2)+b>>2]=a;F[a>>2]=c;b=c+8|0}F[b>>2]=a;break a}D[d+12|0]=1;d=(a|0)==(c|0);D[c+12|0]=d;D[e+12|0]=1;b=c;if(!d){continue}break}}}function sc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=F[b+16>>2];i=F[c+4>>2]-k|0;e=i;f=F[c>>2]-k|0;F[c>>2]=f;F[c+4>>2]=e;g=F[b+16>>2];e=e>>31;h=e+i^e;e=f>>31;l=(g|0)>=(h+(e+f^e)|0);a:{if(l){e=i;break a}b:{c:{if((f|0)>=0){e=1;h=1;if((i|0)>=0){break b}j=1;e=-1;h=-1;if(f){break c}break b}j=-1;e=-1;h=-1;if((i|0)<=0){break b}}e=(i|0)<=0?-1:1;h=j}j=L(g,h);f=(f<<1)-j|0;h=(L(e,h)|0)>=0;g=L(e,g);e=((h?0-f|0:f)+g|0)/2|0;F[c+4>>2]=e;m=c;c=(i<<1)-g|0;f=(j+(h?0-c|0:c)|0)/2|0;F[m>>2]=f;g=F[b+16>>2]}c=F[d+4>>2]+e|0;f=F[d>>2]+f|0;d:{if((g|0)<(f|0)){f=f-F[b+4>>2]|0;break d}if((0-g|0)<=(f|0)){break d}f=F[b+4>>2]+f|0}e:{if((c|0)>(g|0)){c=c-F[b+4>>2]|0;break e}if((0-g|0)<=(c|0)){break e}c=F[b+4>>2]+c|0}f:{if(l){g=c;break f}g:{h:{if((f|0)>=0){b=1;e=1;if((c|0)>=0){break g}d=1;b=-1;e=-1;if(f){break h}break g}d=-1;b=-1;e=-1;if((c|0)<=0){break g}}b=(c|0)<=0?-1:1;e=d}i=L(e,g);d=(f<<1)-i|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(b,e)|0)>=0;b=L(b,g);g=((d?j:h)+b|0)/2|0;b=(c<<1)-b|0;f=(i+(d?0-b|0:b)|0)/2|0}F[a>>2]=f+k;F[a+4>>2]=g+k}function za(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=ea-32|0;ea=b;c=F[a+16>>2];a:{if(c>>>0>=341){F[a+16>>2]=c-341;c=F[a+4>>2];F[b+8>>2]=F[c>>2];F[a+4>>2]=c+4;Xb(a,b+8|0);break a}b:{c:{d:{e:{e=F[a+8>>2];f=e-F[a+4>>2]>>2;d=F[a+12>>2];c=d-F[a>>2]|0;if(f>>>0>2>>>0){if((d|0)==(e|0)){break e}g=b,h=sa(4092),F[g+8>>2]=h;Xb(a,b+8|0);break a}F[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=sa(d);F[b+8>>2]=c;e=c+(f<<2)|0;F[b+16>>2]=e;F[b+20>>2]=c+d;F[b+12>>2]=e;g=b,h=sa(4092),F[g+4>>2]=h;Xb(b+8|0,b+4|0);d=F[a+8>>2];if((d|0)==F[a+4>>2]){c=d;break b}while(1){d=d-4|0;rd(b+8|0,d);if(F[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=sa(4092),F[g+8>>2]=h;c=b+8|0;rd(a,c);d=F[a+4>>2];F[b+8>>2]=F[d>>2];F[a+4>>2]=d+4;Xb(a,c);break a}wa(1336);V()}c=F[a+8>>2]}e=F[a>>2];F[a>>2]=F[b+8>>2];F[b+8>>2]=e;F[a+4>>2]=F[b+12>>2];F[b+12>>2]=d;F[a+8>>2]=F[b+16>>2];F[b+16>>2]=c;f=F[a+12>>2];F[a+12>>2]=F[b+20>>2];F[b+20>>2]=f;if((c|0)!=(d|0)){F[b+16>>2]=c+(((c-d|0)-4>>>2^-1)<<2)}if(!e){break a}ra(e)}ea=b+32|0}function Oe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=M(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=ea-16|0;ea=k;if(F[c+28>>2]==9){d=F[a+4>>2];g=D[c+24|0];e=g<<2;f=sa((g&1073741823)!=(g|0)?-1:e);l=k+8|0;F[l>>2]=1065353216;i=J[a+20>>2];d=-1<0){J[l>>2]=i/M(d|0)}o=(d|0)>0;a:{if(!o){break a}j=F[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){ta(F[F[c+64>>2]>>2]+d|0,f,e);d=d+e|0;ta(d+F[F[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}ta(F[F[c+64>>2]>>2]+d|0,f,e);break a}p=F[F[b>>2]>>2]+F[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=F[a+8>>2];i=J[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;J[h+f>>2]=M(i*M(F[q>>2]))+J[h+m>>2];h=h|4;J[h+f>>2]=M(i*M(F[q+4>>2]))+J[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;J[b+f>>2]=M(i*M(F[(d<<2)+p>>2]))+J[b+m>>2];d=d+1|0}ta(F[F[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}ra(f)}ea=k+16|0;return o|0}function nf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(ge(a,b)){i=a+36|0;g=ga[F[F[a>>2]+24>>2]](a)|0;d=F[a+40>>2];e=F[a+36>>2];c=d-e>>2;a:{if(g>>>0>c>>>0){Wb(i,g-c|0);break a}if(c>>>0<=g>>>0){break a}e=e+(g<<2)|0;if((e|0)!=(d|0)){while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){ga[F[F[c>>2]+4>>2]](c)}if((d|0)!=(e|0)){continue}break}}F[a+40>>2]=e}b:{if((g|0)<=0){e=0;break b}e=1;c=F[b+20>>2];d=F[b+12>>2];f=F[b+16>>2];if((c|0)>=(d|0)&f>>>0>=I[b+8>>2]|(c|0)>(d|0)){break b}d=0;while(1){h=G[f+F[b>>2]|0];f=f+1|0;c=f?c:c+1|0;F[b+16>>2]=f;F[b+20>>2]=c;f=ga[F[F[a>>2]+48>>2]](a,h)|0;h=d<<2;j=h+F[a+36>>2]|0;c=F[j>>2];F[j>>2]=f;if(c){ga[F[F[c>>2]+4>>2]](c)}c=F[F[i>>2]+h>>2];if(!c){break b}if(!(l=c,m=ga[F[F[a>>2]+28>>2]](a)|0,n=ga[F[F[a>>2]+20>>2]](a,d)|0,k=F[F[c>>2]+8>>2],ga[k](l|0,m|0,n|0)|0)){break b}d=d+1|0;e=(g|0)>(d|0);if((d|0)==(g|0)){break b}f=F[b+16>>2];c=F[b+20>>2];h=F[b+12>>2];if(f>>>0>2]&(c|0)<=(h|0)|(c|0)<(h|0)){continue}break}}a=!e}else{a=0}return a|0}function ij(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=F[b+88>>2];if(!(!c|F[c>>2]!=1)){d=F[c+8>>2];F[a+4>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=D[b+24|0];e=F[a+8>>2];f=F[a+12>>2]-e>>2;a:{if(d>>>0>f>>>0){Aa(a+8|0,d-f|0);d=D[b+24|0];e=F[a+8>>2];break a}if(d>>>0>=f>>>0){break a}F[a+12>>2]=(d<<2)+e}k=1;f=F[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){g=d<<2;c=b+f|0;F[g+e>>2]=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[(g|4)+e>>2]=G[c+4|0]|G[c+5|0]<<8|(G[c+6|0]<<16|G[c+7|0]<<24);F[(g|8)+e>>2]=G[c+8|0]|G[c+9|0]<<8|(G[c+10|0]<<16|G[c+11|0]<<24);F[(g|12)+e>>2]=G[c+12|0]|G[c+13|0]<<8|(G[c+14|0]<<16|G[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+f|0;F[(d<<2)+e>>2]=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+f|0;F[c+20>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)}return k|0}function Xa(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;i=F[(F[F[a+8>>2]+96>>2]+L(d,12)|0)+(c-L(d,3)<<2)>>2];e=F[F[a+12>>2]+4>>2];d=F[e+4>>2];a:{if((d|0)!=F[e+8>>2]){F[d>>2]=i;F[e+4>>2]=d+4;break a}b:{h=F[e>>2];g=d-h|0;j=g>>2;d=j+1|0;if(d>>>0<1073741824){f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break b}d=sa(f<<2)}else{d=0}j=d+(j<<2)|0;F[j>>2]=i;if((g|0)>0){ta(d,h,g)}F[e+8>>2]=d+(f<<2);F[e+4>>2]=j+4;F[e>>2]=d;if(h){ra(h)}break a}va();V()}wa(1336);V()}e=F[a+4>>2];d=F[e+4>>2];c:{d:{e:{if((d|0)!=F[e+8>>2]){F[d>>2]=c;F[e+4>>2]=d+4;break e}h=F[e>>2];g=d-h|0;i=g>>2;d=i+1|0;if(d>>>0>=1073741824){break d}f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break c}d=sa(f<<2)}else{d=0}i=d+(i<<2)|0;F[i>>2]=c;if((g|0)>0){ta(d,h,g)}F[e+8>>2]=d+(f<<2);F[e+4>>2]=i+4;F[e>>2]=d;if(!h){break e}ra(h)}a=F[a+4>>2];F[F[a+12>>2]+(b<<2)>>2]=F[a+24>>2];F[a+24>>2]=F[a+24>>2]+1;return}va();V()}wa(1336);V()}function Ah(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=F[d+80>>2];e=ea-48|0;ea=e;a=F[a+4>>2];a:{if(a-31>>>0<4294967267){break a}i=F[F[d>>2]>>2]+F[d+48>>2]|0;F[e+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;F[e+24>>2]=a;F[e+32>>2]=(a|0)/2;J[e+28>>2]=M(2)/M(a|0);g=F[c>>2];if((g|0)!=F[c+4>>2]){a=0;d=0;while(1){f=F[(d<<2)+g>>2];h=e+36|0;j=F[F[b>>2]>>2];l=F[b+48>>2];g=F[b+44>>2];k=F[b+40>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}f=Hj(k,g,f,0)+l|0;ta(h,f+j|0,k);ee(e+16|0,h,e+12|0,e+8|0);g=a<<2;F[g+i>>2]=F[e+12>>2];F[(g|4)+i>>2]=F[e+8>>2];f=1;a=a+2|0;d=d+1|0;g=F[c>>2];if(d>>>0>2]-g>>2>>>0){continue}break}break a}if(!h){f=1;break a}d=0;a=0;while(1){j=e+36|0;c=F[F[b>>2]>>2];f=F[b+40>>2];g=F[b+48>>2]+Hj(f,F[b+44>>2],G[b+84|0]?a:F[F[b+68>>2]+(a<<2)>>2],0)|0;ta(j,c+g|0,f);ee(e+16|0,j,e+12|0,e+8|0);c=d<<2;F[c+i>>2]=F[e+12>>2];F[(c|4)+i>>2]=F[e+8>>2];d=d+2|0;f=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}ea=e+48|0;return f|0}function Cc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=G[a+11|0]>>>7|0?F[a+4>>2]:G[a+11|0];if(d>>>0>>0){h=ea-16|0;ea=h;f=b-d|0;if(f){b=G[a+11|0]>>>7|0;g=b?F[a+4>>2]:G[a+11|0];i=g+f|0;b=b?(F[a+8>>2]&2147483647)-1|0:10;if(b-g>>>0>>0){a:{d=ea-16|0;ea=d;c=i-b|0;if(c>>>0<=-17-b>>>0){j=G[a+11|0]>>>7|0?F[a>>2]:a;b:{if(b>>>0<2147483623){F[d+8>>2]=b<<1;F[d+12>>2]=b+c;c=ea-16|0;ea=c;ea=c+16|0;c=d+8|0;e=d+12|0;c=F[(I[e>>2]>2]?c:e)>>2];if(c>>>0>=11){e=c+16&-16;c=e-1|0;c=(c|0)==11?e:c}else{c=10}break b}c=-18}e=c+1|0;c=sa(e);if(g){kb(c,j,g)}if((b|0)!=10){ra(j)}F[a>>2]=c;F[a+8>>2]=e|-2147483648;ea=d+16|0;break a}Ma();V()}}b=G[a+11|0]>>>7|0?F[a>>2]:a;d=g+b|0;if(f){ua(d,0,f)}c:{if(G[a+11|0]>>>7|0){F[a+4>>2]=i;break c}D[a+11|0]=i}D[h+15|0]=0;D[b+i|0]=G[h+15|0]}ea=h+16|0;return}d=ea-16|0;ea=d;d:{if(G[a+11|0]>>>7|0){f=F[a>>2];D[d+15|0]=0;D[b+f|0]=G[d+15|0];F[a+4>>2]=b;break d}D[d+14|0]=0;D[a+b|0]=G[d+14|0];D[a+11|0]=b}ea=d+16|0}function Re(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=F[b+12>>2];c=f;d=F[b+20>>2];g=d;i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;j=F[b+8>>2];a:{if(j>>>0>>0&(c|0)<=(d|0)|(c|0)<(d|0)){break a}k=F[b>>2];c=i+k|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;d=g;h=i+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>j>>>0&(d|0)>=(f|0)|(d|0)>(f|0)){break a}e=e+k|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=h;F[b+20>>2]=d;if((c|0)>(e|0)){break a}F[a+16>>2]=e;F[a+12>>2]=c;m=(e>>31)-((c>>31)+(c>>>0>e>>>0)|0)|0;c=e-c|0;if(!m&c>>>0>2147483646|m){break a}c=c+1|0;F[a+20>>2]=c;e=c>>>1|0;F[a+24>>2]=e;F[a+28>>2]=0-e;if(!(c&1)){F[a+24>>2]=e-1}if(H[b+38>>1]<=513){if((d|0)>=(f|0)&h>>>0>=j>>>0|(d|0)>(f|0)){break a}c=G[h+k|0];d=g;g=i+9|0;d=g>>>0<9?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;b:{switch(c|0){case 1:l=1;break;case 0:break b;default:break a}}F[a+88>>2]=l}l=xa(a+112|0,b)}return l|0}function Ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=ea-16|0;ea=d;a:{e=F[a+4>>2];b:{if(e>>>0>>0){f=b-e|0;h=F[a+8>>2];c=h<<5;c:{if(!(f>>>0>c>>>0|e>>>0>c-f>>>0)){F[a+4>>2]=b;g=e&31;b=F[a>>2]+(e>>>3&536870908)|0;break c}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if((b|0)<0){break a}if(c>>>0<=1073741822){c=b+31&-32;b=h<<6;b=b>>>0>>0?c:b}else{b=2147483647}db(d,b);e=F[a+4>>2];F[d+4>>2]=e+f;i=F[a>>2];b=F[d>>2];d:{if((e|0)<=0){break d}c=e>>>5|0;h=c<<2;b=Wa(b,i,h)+h|0;g=e-(c<<5)|0;e:{if((g|0)<=0){g=0;break e}c=-1>>>32-g|0;F[b>>2]=F[b>>2]&(c^-1)|c&F[i+h>>2]}i=F[a>>2]}F[a>>2]=F[d>>2];F[d>>2]=i;c=F[a+4>>2];F[a+4>>2]=F[d+4>>2];F[d+4>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[d+8>>2];F[d+8>>2]=c;if(!i){break c}ra(i)}if(!f){break b}if(g){c=32-g|0;a=c>>>0>f>>>0?f:c;F[b>>2]=F[b>>2]&(-1<>>c-a^-1);f=f-a|0;b=b+4|0}c=f>>>5<<2;a=ua(b,0,c);b=f&31;if(!b){break b}a=a+c|0;F[a>>2]=F[a>>2]&(-1>>>32-b^-1);break b}F[a+4>>2]=b}ea=d+16|0;return}Oa();V()}function Rh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=ea-16|0;ea=g;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+28>>2]-F[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=h;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}b=F[a+12>>2];d=F[b+28>>2];b=F[b+24>>2];F[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=F[c>>2];d=F[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){Ia(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}F[a+100>>2]=e+(b<<2)}e=a+8|0;b=F[a+116>>2];d:{if(b){c=F[b>>2];if((c|0)==F[b+4>>2]){d=1;break d}b=0;while(1){d=ve(e,F[(b<<2)+c>>2]);if(!d){break d}f=F[a+116>>2];c=F[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=F[a+12>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break d}a=(a>>2>>>0)/3|0;b=0;while(1){d=ve(e,L(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}ea=g+16|0;return d|0}wa(1336);V()}function Sh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=F[a+12>>2];c=F[a+108>>2];e=F[c+80>>2];D[b+84|0]=0;f=F[b+68>>2];d=F[b+72>>2]-f>>2;a:{if(d>>>0>>0){Ia(b+68|0,e-d|0,12404);c=F[a+108>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=f+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break b}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break b}j=F[F[a+112>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break b}i=F[f+4>>2];if(i>>>0>=e>>>0){break b}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break b}f=F[f+8>>2];if(f>>>0>=e>>>0){break b}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}F[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Kh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=F[a+12>>2];c=F[a+68>>2];e=F[c+80>>2];D[b+84|0]=0;f=F[b+68>>2];d=F[b+72>>2]-f>>2;a:{if(d>>>0>>0){Ia(b+68|0,e-d|0,12404);c=F[a+68>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=f+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break b}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break b}j=F[F[a+72>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break b}i=F[f+4>>2];if(i>>>0>=e>>>0){break b}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break b}f=F[f+8>>2];if(f>>>0>=e>>>0){break b}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}F[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=F[a+12>>2];h=F[a+8>>2];d=f-h>>2;b=D[b+24|0];a:{if(d>>>0>>0){Aa(a+8|0,b-d|0);h=F[a+8>>2];f=F[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;F[a+12>>2]=f}b=0;i=F[c+20>>2];e=F[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=F[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>I[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}ta(h,e+F[c>>2]|0,d);d=F[c+20>>2];e=f+F[c+16>>2]|0;d=e>>>0>>0?d+1|0:d;g=e;F[c+16>>2]=e;F[c+20>>2]=d;e=F[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>I[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+F[c>>2]|0;F[a+20>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[c+20>>2];g=F[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;F[c+16>>2]=e;F[c+20>>2]=f;e=F[c+12>>2];if((f|0)>=(e|0)&j>>>0>=I[c+8>>2]|(f|0)>(e|0)){break b}e=G[j+F[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;if(e-1>>>0>29){break b}F[a+4>>2]=e;b=1}return b|0}function vb(a,b){var c=0;a:{if(!xa(a,b)){break a}if(!xa(a+16|0,b)){break a}if(!xa(a+32|0,b)){break a}if(!xa(a+48|0,b)){break a}if(!xa(a- -64|0,b)){break a}if(!xa(a+80|0,b)){break a}if(!xa(a+96|0,b)){break a}if(!xa(a+112|0,b)){break a}if(!xa(a+128|0,b)){break a}if(!xa(a+144|0,b)){break a}if(!xa(a+160|0,b)){break a}if(!xa(a+176|0,b)){break a}if(!xa(a+192|0,b)){break a}if(!xa(a+208|0,b)){break a}if(!xa(a+224|0,b)){break a}if(!xa(a+240|0,b)){break a}if(!xa(a+256|0,b)){break a}if(!xa(a+272|0,b)){break a}if(!xa(a+288|0,b)){break a}if(!xa(a+304|0,b)){break a}if(!xa(a+320|0,b)){break a}if(!xa(a+336|0,b)){break a}if(!xa(a+352|0,b)){break a}if(!xa(a+368|0,b)){break a}if(!xa(a+384|0,b)){break a}if(!xa(a+400|0,b)){break a}if(!xa(a+416|0,b)){break a}if(!xa(a+432|0,b)){break a}if(!xa(a+448|0,b)){break a}if(!xa(a+464|0,b)){break a}if(!xa(a+480|0,b)){break a}if(!xa(a+496|0,b)){break a}c=xa(a+512|0,b)}return c}function Xb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{e=F[a+8>>2];b:{if((e|0)!=F[a+12>>2]){break b}d=F[a+4>>2];g=F[a>>2];if(d>>>0>g>>>0){g=((d-g>>2)+1|0)/-2<<2;c=g+d|0;f=e-d|0;if(f){Wa(c,d,f);d=F[a+4>>2]}e=c+f|0;F[a+8>>2]=e;F[a+4>>2]=d+g;break b}c=e-g|0;f=c?c>>1:1;if(f>>>0>=1073741824){break a}c=f<<2;h=sa(c);k=h+c|0;c=e-d|0;f=(f&-4)+h|0;e=f;c:{if(!c){break c}l=c&-4;i=c-4|0;j=(i>>>2|0)+1&7;d:{if(!j){c=f;break d}e=0;c=f;while(1){F[c>>2]=F[d>>2];d=d+4|0;c=c+4|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}e=f+l|0;if(i>>>0<28){break c}while(1){F[c>>2]=F[d>>2];F[c+4>>2]=F[d+4>>2];F[c+8>>2]=F[d+8>>2];F[c+12>>2]=F[d+12>>2];F[c+16>>2]=F[d+16>>2];F[c+20>>2]=F[d+20>>2];F[c+24>>2]=F[d+24>>2];F[c+28>>2]=F[d+28>>2];d=d+32|0;c=c+32|0;if((e|0)!=(c|0)){continue}break}}F[a+12>>2]=k;F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=h;if(!g){break b}ra(g);e=F[a+8>>2]}F[e>>2]=F[b>>2];F[a+8>>2]=F[a+8>>2]+4;return}wa(1336);V()}function Ic(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=ea-16|0;ea=g;a:{b:{if(b){F[a+88>>2]=0;F[a+92>>2]=0;c=F[a+84>>2];F[a+84>>2]=0;if(c){ra(c)}F[a+76>>2]=0;F[a+80>>2]=0;c=F[a+72>>2];F[a+72>>2]=0;if(c){ra(c)}c=F[b>>2];d=F[b+4>>2];D[g+15|0]=0;Na(a,d-c>>2,g+15|0);c=F[b+28>>2];d=F[b+24>>2];D[g+14|0]=0;Na(a+12|0,c-d>>2,g+14|0);Jc(a+28|0,F[b+4>>2]-F[b>>2]>>2,13740);d=F[b+28>>2]-F[b+24>>2]|0;e=d>>2;c=F[a+52>>2];c:{if(e>>>0<=F[a+60>>2]-c>>2>>>0){break c}if((d|0)<0){break b}f=F[a+56>>2];d=sa(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){ta(d,c,e)}F[a+60>>2]=h;F[a+56>>2]=f;F[a+52>>2]=d;if(!c){break c}ra(c)}d=F[b+28>>2]-F[b+24>>2]|0;e=d>>2;c=F[a+40>>2];d:{if(e>>>0<=F[a+48>>2]-c>>2>>>0){break d}if((d|0)<0){break a}f=F[a+44>>2];d=sa(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){ta(d,c,e)}F[a+48>>2]=h;F[a+44>>2]=f;F[a+40>>2]=d;if(!c){break d}ra(c)}D[a+24|0]=1;F[a+64>>2]=b}ea=g+16|0;return}wa(1336);V()}wa(1336);V()}function rd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{g=F[a+4>>2];b:{if((g|0)!=F[a>>2]){c=g;break b}d=F[a+8>>2];c=F[a+12>>2];if(d>>>0>>0){f=((c-d>>2)+1|0)/2<<2;c=f+d|0;e=d-g|0;if(e){c=c-e|0;Wa(c,g,e);d=F[a+8>>2]}F[a+4>>2]=c;F[a+8>>2]=d+f;break b}c=c-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}e=c<<2;h=sa(e);l=h+e|0;c=(c+3&-4)+h|0;f=c;i=d-g|0;c:{if(!i){break c}d=c;e=g;j=i-4|0;k=(j>>>2|0)+1&7;if(k){f=0;while(1){F[d>>2]=F[e>>2];e=e+4|0;d=d+4|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}f=(i&-4)+c|0;if(j>>>0<28){break c}while(1){F[d>>2]=F[e>>2];F[d+4>>2]=F[e+4>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=F[e+12>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=F[e+20>>2];F[d+24>>2]=F[e+24>>2];F[d+28>>2]=F[e+28>>2];e=e+32|0;d=d+32|0;if((f|0)!=(d|0)){continue}break}}F[a+12>>2]=l;F[a+8>>2]=f;F[a+4>>2]=c;F[a>>2]=h;if(!g){break b}ra(g);c=F[a+4>>2]}F[c-4>>2]=F[b>>2];F[a+4>>2]=F[a+4>>2]-4;return}wa(1336);V()}function Eh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=F[a+12>>2];c=F[a+68>>2];e=F[c+80>>2];D[b+84|0]=0;g=F[b+68>>2];d=F[b+72>>2]-g>>2;a:{if(d>>>0>>0){Ia(b+68|0,e-d|0,12404);c=F[a+68>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=g+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;l=c>>>0>1?c:1;m=F[h+28>>2];c=0;b:{while(1){d=(L(c,3)<<2)+m|0;g=F[d>>2];if((g|0)==-1){break b}h=L(c,12)+k|0;i=F[h>>2];if(i>>>0>=e>>>0){break b}f=g<<2;g=F[F[a+72>>2]+12>>2];f=F[f+g>>2];if(f>>>0>=e>>>0){break b}j=i<<2;i=F[b+68>>2];F[j+i>>2]=f;f=F[d+4>>2];if((f|0)==-1){break b}j=F[h+4>>2];if(j>>>0>=e>>>0){break b}f=F[g+(f<<2)>>2];if(f>>>0>=e>>>0){break b}F[i+(j<<2)>>2]=f;d=F[d+8>>2];if((d|0)==-1){break b}h=F[h+8>>2];if(h>>>0>=e>>>0){break b}d=F[g+(d<<2)>>2];if(d>>>0>=e>>>0){break b}F[i+(h<<2)>>2]=d;c=c+1|0;if((l|0)!=(c|0)){continue}break}return 1}return 0}function ee(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+J[b>>2];k=+J[b+4>>2];l=+J[b+8>>2];g=N(j)+N(k)+N(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=F[a+16>>2];l=+(h|0);g=R(j*l+.5);b:{if(N(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=f+m^f;g=R(k*l+.5);c:{if(N(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+(f+b^b)|0)|0;i=(b|0)<0?0:b;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=F[a+8>>2];e=h+f|0;break d}b=f>>31;b=b+f^b;a=F[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}if(!((a|0)!=(e|0)|b)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((a|0)!=(e|0)|(b|0)>=(h|0))){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}F[c>>2]=a;F[d>>2]=b}function Cd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=M(0),f=M(0),g=M(0),h=M(0),i=M(0),j=0,k=M(0),l=M(0),m=M(0),n=M(0),o=0;a:{if(F[c+28>>2]!=9|G[c+24|0]!=3){break a}a=F[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=F[c+80>>2];if(!j){break a}k=M(M(2)/M((1<>2]>>2]+F[c+48>>2]|0;a=F[F[b>>2]>>2]+F[b+48>>2]|0;b=0;while(1){g=M(0);l=M(0);m=M(0);e=M(M(M(F[a>>2])*k)+M(-1));f=M(M(M(F[a+4>>2])*k)+M(-1));i=M(M(M(1)-M(N(e)))-M(N(f)));h=M(Q(M(-i),M(0)));n=M(-h);f=M(f+(f>>8;D[c+10|0]=d>>>16;D[c+11|0]=d>>>24;d=(v(l),x(2));D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;d=(v(g),x(2));D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function Gc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=F[a>>2];c=g+(b>>>3&536870908)|0;F[c>>2]=F[c>>2]|1<>2];e=(b|0)==-1;d=-1;a:{if(e){break a}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;d=-1;if((c|0)==-1){break a}d=F[F[f>>2]+(c<<2)>>2]}c=F[a+12>>2];h=(d>>>3&536870908)+c|0;F[h>>2]=F[h>>2]|1<>>0)%3|0){e=b-1|0;break e}e=b+2|0;d=-1;if((e|0)==-1){break d}}d=F[F[f>>2]+(e<<2)>>2]}e=(d>>>3&536870908)+c|0;F[e>>2]=F[e>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}D[a+24|0]=0;a=(b>>>3&536870908)+g|0;F[a>>2]=F[a>>2]|1<>>0)%3|0?a:b-2|0;if((a|0)!=-1){d=F[F[f>>2]+(a<<2)>>2]}a=c+(d>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>>0)%3|0){b=b-1|0;break g}b=b+2|0;a=-1;if((b|0)==-1){break f}}a=F[F[f>>2]+(b<<2)>>2]}b=1<>>3&536870908)|0;c=F[a>>2];break c}a=c+536870908|0;b=F[c+536870908>>2];c=-2147483648}F[a>>2]=b|c}}function Td(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(b>>>0<=63){b=0;a=F[a+12>>2];if(a>>>0<2){break a}d=F[c>>2];b=a-1|0;e=b&3;c=0;b:{if(a-2>>>0<3){a=1;b=0;break b}f=b&-4;b=0;a=1;while(1){g=a+3|0;h=a+2|0;i=a+1|0;b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a:b;b=I[d+(b<<2)>>2]>I[d+(i<<2)>>2]?i:b;b=I[d+(b<<2)>>2]>I[d+(h<<2)>>2]?h:b;b=I[d+(b<<2)>>2]>I[d+(g<<2)>>2]?g:b;a=a+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}if(!e){break a}while(1){b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a:b;a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}break a}b=F[a+580>>2];d=32-b|0;if((d|0)>=4){c=F[a+576>>2];if((c|0)==F[a+568>>2]){return 0}d=F[c>>2];e=b+4|0;F[a+580>>2]=e;b=d<>>28|0;if((e|0)!=32){break a}F[a+580>>2]=0;F[a+576>>2]=c+4;return b}c=F[a+576>>2];e=c+4|0;if((e|0)==F[a+568>>2]){return 0}f=F[c>>2];F[a+576>>2]=e;F[a+580>>2]=b-28;a=60-b|0;b=F[c+4>>2]>>>a|f<>>a-d}return b}function xe(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11464;b=F[a+388>>2];if(b){F[a+392>>2]=b;ra(b)}d=F[a+368>>2];F[a+368>>2]=0;if(d){e=d-4|0;b=F[e>>2];if(b){c=(b<<4)+d|0;while(1){c=c-16|0;if((d|0)!=(c|0)){continue}break}}ra(e)}Xc(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}c=F[a+144>>2];if(c){while(1){b=F[c>>2];ra(c);c=b;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){cb(b)}return a|0}function gd(a,b){var c=0,d=0;c=F[b+8>>2];F[a+4>>2]=F[b+4>>2];F[a+8>>2]=c;F[a+20>>2]=F[b+20>>2];c=F[b+16>>2];F[a+12>>2]=F[b+12>>2];F[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=F[b+28>>2];if(c){c:{if(F[a+32>>2]<<5>>>0>=c>>>0){d=F[a+24>>2];break c}d=F[a+24>>2];if(d){ra(d);F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;c=F[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=sa(c<<2);F[a+32>>2]=c;F[a+28>>2]=0;F[a+24>>2]=d;c=F[b+28>>2]}Wa(d,F[b+24>>2],(c-1>>>3&536870908)+4|0);c=F[b+28>>2]}else{c=0}F[a+28>>2]=c;c=F[b+40>>2];if(c){d:{if(F[a+44>>2]<<5>>>0>=c>>>0){d=F[a+36>>2];break d}d=F[a+36>>2];if(d){ra(d);F[a+44>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;c=F[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=sa(c<<2);F[a+44>>2]=c;F[a+40>>2]=0;F[a+36>>2]=d;c=F[b+40>>2]}Wa(d,F[b+36>>2],(c-1>>>3&536870908)+4|0);b=F[b+40>>2]}else{b=0}F[a+40>>2]=b}return}Oa();V()}Oa();V()}function If(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=ea+-64|0;ea=f;d=1;a:{if(Za(a,b,0)){break a}d=0;if(!b){break a}d=ea+-64|0;ea=d;e=F[b>>2];g=F[e-4>>2];h=F[e-8>>2];F[d+20>>2]=0;F[d+16>>2]=14956;F[d+12>>2]=b;F[d+8>>2]=15004;e=0;ua(d+24|0,0,39);b=b+h|0;b:{if(Za(g,15004,0)){F[d+56>>2]=1;ga[F[F[g>>2]+20>>2]](g,d+8|0,b,b,1,0);e=F[d+32>>2]==1?b:0;break b}ga[F[F[g>>2]+24>>2]](g,d+8|0,b,1,0);c:{switch(F[d+44>>2]){case 0:e=F[d+48>>2]==1?F[d+36>>2]==1?F[d+40>>2]==1?F[d+28>>2]:0:0:0;break b;case 1:break c;default:break b}}if(F[d+32>>2]!=1){if(F[d+48>>2]|F[d+36>>2]!=1|F[d+40>>2]!=1){break b}}e=F[d+24>>2]}ea=d- -64|0;d=0;if(!e){break a}b=f+8|0;ua(b|4,0,52);F[f+56>>2]=1;F[f+20>>2]=-1;F[f+16>>2]=a;F[f+8>>2]=e;ga[F[F[e>>2]+28>>2]](e,b,F[c>>2],1);a=F[f+32>>2];if((a|0)==1){F[c>>2]=F[f+24>>2]}d=(a|0)==1}ea=f- -64|0;return d|0}function Qe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=F[b+12>>2];c=F[b+20>>2];d=c;i=F[b+16>>2];e=i+4|0;c=e>>>0<4?c+1|0:c;j=F[b+8>>2];g=e;a:{if(j>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}l=F[b>>2];e=i+l|0;h=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;e=H[b+38>>1];if(e>>>0<=513){c=d;d=i+8|0;c=d>>>0<8?c+1|0:c;g=d;if(d>>>0>j>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=g;F[b+20>>2]=c}if(!(h&1)){break a}d=O(h)^31;if(d-30>>>0<4294967267){break a}F[a+8>>2]=d+1;d=-2<>2]=h;F[a+12>>2]=d^-1;F[a+24>>2]=(h|0)/2;J[a+20>>2]=M(2)/M(h|0);if(e>>>0<=513){if((c|0)>=(f|0)&g>>>0>=j>>>0|(c|0)>(f|0)){break a}f=G[g+l|0];d=g+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;b:{switch(f|0){case 1:k=1;break;case 0:break b;default:break a}}F[a+72>>2]=k}k=xa(a+96|0,b)}return k|0}function Pe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=F[b+12>>2];c=F[b+20>>2];g=c;h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}l=F[b>>2];e=h+l|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;c=g;d=h+8|0;c=d>>>0<8?c+1|0:c;j=d;if(d>>>0>i>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=j;F[b+20>>2]=c;if(!(e&1)){break a}d=O(e)^31;if(d-30>>>0<4294967267){break a}F[a+8>>2]=d+1;d=-2<>2]=e;F[a+12>>2]=d^-1;F[a+24>>2]=(e|0)/2;J[a+20>>2]=M(2)/M(e|0);if(H[b+38>>1]<=513){if((c|0)>=(f|0)&j>>>0>=i>>>0|(c|0)>(f|0)){break a}f=G[j+l|0];c=h+9|0;g=c>>>0<9?g+1|0:g;F[b+16>>2]=c;F[b+20>>2]=g;b:{switch(f|0){case 1:k=1;break;case 0:break b;default:break a}}F[a+72>>2]=k}k=xa(a+96|0,b)}return k|0}function ye(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11412;d=F[a+368>>2];F[a+368>>2]=0;if(d){e=d-4|0;b=F[e>>2];if(b){c=(b<<4)+d|0;while(1){c=c-16|0;if((d|0)!=(c|0)){continue}break}}ra(e)}Xc(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;ra(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;ra(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;ra(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;ra(b)}c=F[a+144>>2];if(c){while(1){b=F[c>>2];ra(c);c=b;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){ra(b)}b=F[a+120>>2];if(b){ra(b)}b=F[a+108>>2];if(b){ra(b)}b=F[a+96>>2];if(b){ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){cb(b)}return a|0}function Ng(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{a=ea-32|0;ea=a;e=La(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=sa(g);F[a+24>>2]=g|-2147483648;F[a+16>>2]=f;F[a+20>>2]=e;break c}D[a+27|0]=e;f=a+16|0;if(!e){break b}}ta(f,c,e)}D[e+f|0]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d:{c=rb(b,a+16|0);if((c|0)==(b+4|0)){break d}b=F[c+28>>2];f=F[c+32>>2];if((b|0)==(f|0)){break d}b=f-b|0;if(b&3){break d}e=b>>>2|0;f=F[a+4>>2];b=F[a>>2];g=f-b>>2;e:{if(e>>>0>g>>>0){Aa(a,e-g|0);b=F[a>>2];f=F[a+4>>2];break e}if(e>>>0>=g>>>0){break e}f=(e<<2)+b|0;F[a+4>>2]=f}if((b|0)!=(f|0)){e=b;b=F[c+28>>2];ta(e,b,F[c+32>>2]-b|0);break d}Da();V()}b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d>>2]=F[a>>2];F[d+4>>2]=F[a+4>>2];F[d+8>>2]=F[a+8>>2];if(D[a+27|0]<0){ra(F[a+16>>2])}ea=a+32|0;break a}Ma();V()}}function vc(a){var b=0,c=0,d=0;b=F[a+8>>2];d=F[a>>2];a:{if(G[a+12|0]){b:{c:{d:{e:{if((b|0)==-1){break e}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break e}b=F[F[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}F[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;F[a+8>>2]=b;if((b|0)!=-1){break b}}c=F[a+4>>2];b=-1;f:{if((c|0)==-1){break f}g:{if((c>>>0)%3|0){c=c-1|0;break g}c=c+2|0;b=-1;if((c|0)==-1){break f}}c=F[F[d+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break f}b=c-1|0;if((c>>>0)%3|0){break f}b=c+2|0}D[a+12|0]=0;F[a+8>>2]=b;return}if((b|0)!=F[a+4>>2]){break a}F[a+8>>2]=-1;return}c=-1;h:{if((b|0)==-1){break h}i:{if((b>>>0)%3|0){b=b-1|0;break i}b=b+2|0;c=-1;if((b|0)==-1){break h}}b=F[F[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break h}c=b-1|0;if((b>>>0)%3|0){break h}c=b+2|0}F[a+8>>2]=c}}function Mf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=ea-32|0;ea=e;f=F[a+28>>2];F[e+16>>2]=f;d=F[a+20>>2];F[e+28>>2]=c;F[e+24>>2]=b;b=d-f|0;F[e+20>>2]=b;f=b+c|0;j=2;a:{b:{b=e+16|0;d=Z(F[a+60>>2],b|0,2,e+12|0)|0;if(d){F[4190]=d;d=-1}else{d=0}c:{if(!d){while(1){d=F[e+12>>2];if((d|0)==(f|0)){break c}if((d|0)<0){break b}g=F[b+4>>2];h=g>>>0>>0;i=(h<<3)+b|0;g=d-(h?g:0)|0;F[i>>2]=g+F[i>>2];i=(h?12:4)+b|0;F[i>>2]=F[i>>2]-g;f=f-d|0;b=h?b+8|0:b;j=j-h|0;d=Z(F[a+60>>2],b|0,j|0,e+12|0)|0;if(d){F[4190]=d;d=-1}else{d=0}if(!d){continue}break}}if((f|0)!=-1){break b}}b=F[a+44>>2];F[a+28>>2]=b;F[a+20>>2]=b;F[a+16>>2]=b+F[a+48>>2];a=c;break a}F[a+28>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a>>2]=F[a>>2]|32;a=0;if((j|0)==2){break a}a=c-F[b+4>>2]|0}ea=e+32|0;return a|0}function Pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=ea-16|0;ea=d;a:{e=La(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=sa(f);F[d+8>>2]=f|-2147483648;F[d>>2]=a;F[d+4>>2]=e;break c}D[d+11|0]=e;a=d;if(!e){break b}}ta(a,c,e)}D[a+e|0]=0;c=G[d+11|0];e=c<<24>>24;f=F[d>>2];b=F[b+4>>2];a=0;d:{if(!b){break d}a=c;c=(e|0)<0;a=c?F[d+4>>2]:a;j=c?f:d;while(1){c=G[b+27|0];g=c<<24>>24<0;c=g?F[b+20>>2]:c;k=c>>>0>>0;e:{f:{i=k?c:a;g:{if(i){h=b+16|0;g=g?F[h>>2]:h;h=Ha(j,g,i);h:{if(!h){if(a>>>0>=c>>>0){break h}break e}if((h|0)<0){break e}}c=Ha(g,j,i);if(!c){break g}if((c|0)<0){break f}a=1;break d}if(a>>>0>>0){break e}}if(k){break f}a=1;break d}b=b+4|0}b=F[b>>2];if(b){continue}break}a=0}if((e|0)<0){ra(f)}ea=d+16|0;break a}Ma();V()}return a|0}function Bc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;f=F[b+4>>2]-F[b>>2]|0;i=(f|0)/20|0;a:{b:{c:{if(f){if(i>>>0>=214748365){break c}d=sa(f);F[a+16>>2]=d;F[a+20>>2]=d;F[a+24>>2]=L(i,20)+d;c=F[b>>2];b=F[b+4>>2]-c|0;if((b|0)<=0){b=d}else{b=ta(d,c,b)+L((b>>>0)/20|0,20)|0}c=b;F[a+20>>2]=c}F[a+28>>2]=0;b=c-d|0;if(!b){break a}b=(b|0)/20|0;c=b>>>0>1?b:1;f=c&1;if(b>>>0<2){b=0;break b}i=c&-2;b=0;c=0;while(1){g=L(b|1,20)+d|0;g=L(F[g+16>>2],F[g+12>>2]);h=L(b,20)+d|0;h=L(F[h+16>>2],F[h+12>>2]);e=e>>>0>>0?h:e;e=e>>>0>>0?g:e;b=b+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}break b}va();V()}if(!f){break a}b=L(b,20)+d|0;b=L(F[b+16>>2],F[b+12>>2]);e=b>>>0>e>>>0?b:e}Va(a,e);F[a+12>>2]=F[a>>2];return a}function Wa(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return ta(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}D[d|0]=G[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;D[d|0]=G[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;F[c+a>>2]=F[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;D[c+a|0]=G[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){F[d>>2]=F[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){D[d|0]=G[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=F[c+12>>2];d=h;e=F[c+20>>2];i=F[c+8>>2];f=F[c+16>>2];a:{if((d|0)<=(e|0)&i>>>0<=f>>>0|(d|0)<(e|0)){break a}j=F[c>>2];k=D[j+f|0];d=e;g=f+1|0;d=g?d:d+1|0;F[c+16>>2]=g;F[c+20>>2]=d;b:{if((k|0)==-2){break b}if((d|0)>=(h|0)&g>>>0>=i>>>0|(d|0)>(h|0)){break a}d=D[g+j|0];f=f+2|0;e=f>>>0<2?e+1|0:e;F[c+16>>2]=f;F[c+20>>2]=e;if((d-4&255)>>>0<251){break a}e=ga[F[F[a>>2]+40>>2]](a,k,d)|0;d=F[a+20>>2];F[a+20>>2]=e;if(!d){break b}ga[F[F[d>>2]+4>>2]](d)}d=F[a+20>>2];if(d){if(!(ga[F[F[a>>2]+28>>2]](a,d)|0)){break a}}if(!(ga[F[F[a>>2]+36>>2]](a,b,c)|0)){break a}c=F[a+4>>2];if(!(!c|G[c+36|0]>1)){if(!(ga[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0)){break a}}l=1}return l|0}function _d(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=ea-16|0;ea=d;g=F[a+24>>2];l=F[a+28>>2];a:{if((g|0)!=(l|0)){while(1){F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;e=Zd(F[g>>2],b,d);a=G[d+11|0];i=a<<24>>24;j=3;b:{c:{d:{e:{if(!e){break e}j=0;e=G[c+11|0];f=e<<24>>24;k=(i|0)<0?F[d+4>>2]:a;if((k|0)!=(((f|0)<0?F[c+4>>2]:e)|0)){break e}h=(f|0)<0?F[c>>2]:c;f=F[d>>2];e=(i|0)<0;f:{if(!e){if(!i){break f}e=d;if(G[h|0]!=(f&255)){break b}while(1){a=a-1|0;if(!a){break f}f=G[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==G[e|0]){continue}break}break e}if(!k){break f}if(Ha(e?f:d,h,k)){break d}}m=F[g>>2];j=1}if((i|0)>=0){break c}}ra(F[d>>2])}switch(j|0){case 0:case 3:break b;default:break a}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}m=0}ea=d+16|0;return m}function Kd(a,b,c){a:{switch(b-9|0){case 0:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];return;case 6:b=F[c>>2];F[c>>2]=b+4;b=E[b>>1];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 7:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=H[b>>1];F[a+4>>2]=0;return;case 8:b=F[c>>2];F[c>>2]=b+4;b=D[b|0];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 9:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=G[b|0];F[a+4>>2]=0;return;case 16:b=F[c>>2]+7&-8;F[c>>2]=b+8;K[a>>3]=K[b>>3];return;case 17:ga[0](a,c);default:return;case 1:case 4:case 14:b=F[c>>2];F[c>>2]=b+4;b=F[b>>2];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];F[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=F[c>>2]+7&-8;F[c>>2]=b+8;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c}function Wb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=F[a+8>>2];c=F[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{b:{c:{g=F[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>>0<2147483644?e>>>0>h>>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}i=sa(e<<2)}d=(f<<2)+i|0;f=b<<2;b=ua(d,0,f);f=b+f|0;e=(e<<2)+i|0;if((c|0)==(g|0)){break b}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;d=d-4|0;F[d>>2]=b;if((c|0)!=(g|0)){continue}break}F[a+8>>2]=e;b=F[a+4>>2];F[a+4>>2]=f;c=F[a>>2];F[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b-4|0;a=F[b>>2];F[b>>2]=0;if(a){ga[F[F[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}va();V()}wa(1336);V()}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b}if(c){ra(c)}}function ya(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;F[a+16>>2]=0;c=F[a>>2];F[a+4>>2]=c;F[a+12>>2]=c;g=F[b+12>>2];c=g;d=F[b+20>>2];f=F[b+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;h=F[b+8>>2];a:{if(h>>>0>>0&(c|0)<=(d|0)|(c|0)<(d|0)){break a}c=f+F[b>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;if(!c|c&3){break a}f=g-(d+(e>>>0>h>>>0)|0)|0;if(h-e>>>0>>0&(f|0)<=0|(f|0)<0){break a}if(c>>>0>=4){Aa(a,c>>>2|0);h=F[b+8>>2];g=F[b+12>>2];e=F[b+16>>2];d=F[b+20>>2]}f=c+e|0;d=c>>>0>f>>>0?d+1|0:d;if(f>>>0>h>>>0&(d|0)>=(g|0)|(d|0)>(g|0)){break a}ta(F[a>>2],e+F[b>>2]|0,c);d=F[b+20>>2];e=c+F[b+16>>2]|0;d=e>>>0>>0?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;F[a+16>>2]=0;F[a+12>>2]=F[a>>2];i=1}return i}function vh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=sa(72);F[c+4>>2]=0;F[c+8>>2]=0;F[c>>2]=2012;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c>>2]=2156;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+64>>2]=0;F[c+68>>2]=0;h=c;a:{if((b|0)>=0){g=a+8|0;c=F[a+12>>2];e=F[a+8>>2];f=c-e>>2;b:{if((f|0)>(b|0)){break b}d=b+1|0;if(b>>>0>=f>>>0){Wb(g,d-f|0);break b}if(d>>>0>=f>>>0){break b}e=(d<<2)+e|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ga[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}a=F[g>>2]+(b<<2)|0;c=F[a>>2];F[a>>2]=h;if(!c){break a}}ga[F[F[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function ua(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}D[a|0]=b;e=a+c|0;D[e-1|0]=b;if(c>>>0<3){break a}D[a+2|0]=b;D[a+1|0]=b;D[e-3|0]=b;D[e-2|0]=b;if(c>>>0<7){break a}D[a+3|0]=b;D[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=L(b&255,16843009);F[f>>2]=d;b=c-e&-4;c=b+f|0;F[c-4>>2]=d;if(b>>>0<9){break a}F[f+8>>2]=d;F[f+4>>2]=d;F[c-8>>2]=d;F[c-12>>2]=d;if(b>>>0<25){break a}F[f+24>>2]=d;F[f+20>>2]=d;F[f+16>>2]=d;F[f+12>>2]=d;F[c-16>>2]=d;F[c-20>>2]=d;F[c-24>>2]=d;F[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=Hj(d,0,1,1);e=fa;b=b+f|0;while(1){F[b+24>>2]=d;F[b+28>>2]=e;F[b+16>>2]=d;F[b+20>>2]=e;F[b+8>>2]=d;F[b+12>>2]=e;F[b>>2]=d;F[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function ae(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;e=-1;a:{b:{if((b|0)==-1){break b}g=1;f=F[F[F[a+4>>2]+12>>2]+(b<<2)>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)>=0){e=(c>>>0)/3|0;e=F[(F[F[a>>2]+96>>2]+L(e,12)|0)+(c-L(e,3)<<2)>>2]}c:{if((f|0)==-1){break c}g=0;c=((f>>>0)%3|0?-1:2)+f|0;if((c|0)<0){break c}d=(c>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(c-L(d,3)<<2)>>2]}c=-1;if((d|0)!=(e|0)){break a}e=-1;d:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){d=(b>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(b-L(d,3)<<2)>>2];if(g){break b}break d}d=-1;if(!g){break d}break b}b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)<0){break b}c=F[F[a>>2]+96>>2];a=(b>>>0)/3|0;e=F[(c+L(a,12)|0)+(b-L(a,3)<<2)>>2]}c=(d|0)==(e|0)?f:-1}return c}function Dh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+56>>2]-F[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}e=a+8|0;b=F[a+76>>2];c:{if(b){d=F[b>>2];if((d|0)==F[b+4>>2]){return 1}b=0;while(1){c=te(e,F[(b<<2)+d>>2]);if(!c){break c}f=F[a+76>>2];d=F[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=F[F[a+12>>2]+64>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=te(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(1336);V()}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=F[b+12>>2];h=d;c=F[b+20>>2];e=c;f=F[b+16>>2];g=f+4|0;c=g>>>0<4?c+1|0:c;i=F[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}j=F[b>>2];d=j+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>i>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=g+j|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}k=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1}return k|0}function Gg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=ea+-64|0;ea=f;e=f+8|0;E[e+38>>1]=0;F[e>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;D[e+29|0]=0;D[e+30|0]=0;D[e+31|0]=0;D[e+32|0]=0;D[e+33|0]=0;D[e+34|0]=0;D[e+35|0]=0;D[e+36|0]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e>>2]=b;F[e+8>>2]=c;F[e+12>>2]=0;b=f+48|0;Me(b,a,e,d);F[a+24>>2]=F[f+48>>2];c=a+24|0;a:{if((c|0)==(b|0)){break a}e=f+48|4;b=G[f+63|0];d=b<<24>>24;g=a+28|0;if(D[g+11|0]>=0){if((d|0)>=0){a=F[e+4>>2];F[g>>2]=F[e>>2];F[g+4>>2]=a;F[g+8>>2]=F[e+8>>2];break a}Zb(g,F[f+52>>2],F[f+56>>2]);break a}a=(d|0)<0;_b(g,a?F[f+52>>2]:e,a?F[f+56>>2]:b)}if(D[f+63|0]<0){ra(F[f+52>>2])}ea=f- -64|0;return c|0}function Fg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=ea+-64|0;ea=f;e=f+8|0;E[e+38>>1]=0;F[e>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;D[e+29|0]=0;D[e+30|0]=0;D[e+31|0]=0;D[e+32|0]=0;D[e+33|0]=0;D[e+34|0]=0;D[e+35|0]=0;D[e+36|0]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e>>2]=b;F[e+8>>2]=c;F[e+12>>2]=0;b=f+48|0;Le(b,a,e,d);F[a+24>>2]=F[f+48>>2];c=a+24|0;a:{if((c|0)==(b|0)){break a}e=f+48|4;b=G[f+63|0];d=b<<24>>24;g=a+28|0;if(D[g+11|0]>=0){if((d|0)>=0){a=F[e+4>>2];F[g>>2]=F[e>>2];F[g+4>>2]=a;F[g+8>>2]=F[e+8>>2];break a}Zb(g,F[f+52>>2],F[f+56>>2]);break a}a=(d|0)<0;_b(g,a?F[f+52>>2]:e,a?F[f+56>>2]:b)}if(D[f+63|0]<0){ra(F[f+52>>2])}ea=f- -64|0;return c|0}function Jh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+28>>2]-F[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=sa(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ta(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}ra(d)}e=a+8|0;b=F[a+76>>2];c:{if(b){d=F[b>>2];if((d|0)==F[b+4>>2]){return 1}b=0;while(1){c=ue(e,F[(b<<2)+d>>2]);if(!c){break c}f=F[a+76>>2];d=F[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=F[a+12>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=ue(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(1336);V()}function td(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=a+16|0;d=F[e>>2];a:{if(!d){break a}g=F[b>>2];b=e;while(1){f=(g|0)>F[d+16>>2];b=f?b:d;d=F[(f<<2)+d>>2];if(d){continue}break}if((b|0)==(e|0)|(g|0)>2]){break a}d=F[b+24>>2];if(!d){break a}e=G[c+11|0];f=e<<24>>24<0;g=f?F[c>>2]:c;e=f?F[c+4>>2]:e;f=b+20|0;while(1){b=G[d+27|0];h=b<<24>>24<0;b=h?F[d+20>>2]:b;k=b>>>0>>0;b:{c:{j=k?b:e;d:{if(j){i=d+16|0;h=h?F[i>>2]:i;i=Ha(g,h,j);e:{if(!i){if(b>>>0<=e>>>0){break e}break b}if((i|0)<0){break b}}b=Ha(h,g,j);if(!b){break d}if((b|0)<0){break c}return Sc(f,c)}if(b>>>0>e>>>0){break b}}if(k){break c}return Sc(f,c)}d=d+4|0}d=F[d>>2];if(d){continue}break}}return Sc(a,c)}function qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=F[b>>2];b=F[b+4>>2];f=F[F[a+8>>2]+40>>2];m=sa((f|0)>=0?f:-1);g=1;h=b-d|0;a:{if((h|0)<=0){break a}b=0;g=0;d=0+F[c+20>>2]|0;i=F[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;e=F[c+12>>2];if(j>>>0>I[c+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break a}k=h>>2;g=(k|0)>1?k:1;while(1){b:{e=ta(m,i+F[c>>2]|0,f);F[c+16>>2]=j;F[c+20>>2]=d;ta(F[F[F[a+8>>2]+64>>2]>>2]+b|0,e,f);l=l+1|0;if((g|0)==(l|0)){break b}b=b+f|0;d=n+F[c+20>>2]|0;i=F[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;h=e;e=F[c+12>>2];if((e|0)>=(d|0)&I[c+8>>2]>=h>>>0|(d|0)<(e|0)){continue}}break}g=(l|0)>=(k|0)}ra(m);return g|0}function hf(a,b){a=a|0;b=b|0;a=0;a:{switch(b|0){case 0:a=sa(20);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;return a|0;case 1:a=sa(24);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;return a|0;case 2:a=sa(48);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;F[a+32>>2]=0;F[a+36>>2]=0;F[a+28>>2]=-1;F[a+24>>2]=1140;F[a>>2]=11076;F[a+40>>2]=0;F[a+44>>2]=0;return a|0;case 3:a=sa(32);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;F[a+28>>2]=-1;F[a+24>>2]=1032;F[a>>2]=7056;break;default:break a}}return a|0}function Cg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=ea-32|0;ea=e;a:{b:{f=La(c);if(f>>>0<4294967280){c:{d:{if(f>>>0>=11){g=f+16&-16;a=sa(g);F[e+24>>2]=g|-2147483648;F[e+16>>2]=a;F[e+20>>2]=f;break d}D[e+27|0]=f;a=e+16|0;if(!f){break c}}ta(a,c,f)}D[a+f|0]=0;c=La(d);if(c>>>0>=4294967280){break b}e:{f:{if(c>>>0>=11){f=c+16&-16;a=sa(f);F[e+8>>2]=f|-2147483648;F[e>>2]=a;F[e+4>>2]=c;break f}D[e+11|0]=c;a=e;if(!c){break e}}ta(a,d,c)}D[a+c|0]=0;c=F[b+4>>2];a=-1;g:{if(!c){break g}c=_d(c,e+16|0,e);a=-1;if(!c){break g}a=Wd(b,F[c+24>>2])}if(D[e+11|0]<0){ra(F[e>>2])}if(D[e+27|0]<0){ra(F[e+16>>2])}ea=e+32|0;break a}Ma();V()}Ma();V()}return a|0}function Ri(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;F[b>>2]=1;f=b+8|0;c=F[b+8>>2];d=F[b+12>>2]-c|0;if(d>>>0<=4294967291){lc(f,d+4|0);c=F[f>>2]}c=c+d|0;d=F[a+4>>2];D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;c=F[a+8>>2];if((c|0)!=F[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=F[b+8>>2];e=F[b+12>>2]-c|0;if(e>>>0<=4294967291){lc(f,e+4|0);c=F[f>>2]}c=c+e|0;e=F[g>>2];D[c|0]=e;D[c+1|0]=e>>>8;D[c+2|0]=e>>>16;D[c+3|0]=e>>>24;d=d+1|0;c=F[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=F[b+12>>2];b=F[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){lc(f,c+4|0);b=F[f>>2]}b=b+c|0;a=F[a+20>>2];D[b|0]=a;D[b+1|0]=a>>>8;D[b+2|0]=a>>>16;D[b+3|0]=a>>>24}function Na(a,b,c){var d=0,e=0,f=0,g=0;e=ea-16|0;ea=e;F[a+4>>2]=0;a:{b:{if(!b){break b}g=F[a+8>>2];d=g<<5;c:{if(d>>>0>=b>>>0){F[a+4>>2]=b;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=b+31&-32;d=g<<6;d=d>>>0>>0?f:d}else{d=2147483647}db(e,d);f=F[a>>2];F[a>>2]=F[e>>2];F[e>>2]=f;d=F[a+4>>2];F[a+4>>2]=b;F[e+4>>2]=d;d=F[a+8>>2];F[a+8>>2]=F[e+8>>2];F[e+8>>2]=d;if(!f){break c}ra(f)}f=b>>>5|0;d=f<<2;a=F[a>>2];if(G[c|0]){a=ua(a,255,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;F[a>>2]=F[a>>2]|-1>>>32-b;break b}a=ua(a,0,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;F[a>>2]=F[a>>2]&(-1>>>32-b^-1)}ea=e+16|0;return}Oa();V()}function nb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+4>>2];e=F[a+8>>2];if(d>>>0>>0){F[d>>2]=F[b>>2];F[d+4>>2]=F[b+4>>2];F[d+8>>2]=F[b+8>>2];F[a+4>>2]=d+12;return}a:{f=F[a>>2];g=(d-f|0)/12|0;c=g+1|0;if(c>>>0<357913942){e=(e-f|0)/12|0;h=e<<1;c=e>>>0<178956970?c>>>0>h>>>0?c:h:357913941;if(c>>>0>=357913942){break a}h=L(g,12);e=L(c,12);g=sa(e);c=h+g|0;F[c>>2]=F[b>>2];F[c+4>>2]=F[b+4>>2];F[c+8>>2]=F[b+8>>2];b=c+12|0;if((d|0)!=(f|0)){while(1){c=c-12|0;d=d-12|0;F[c>>2]=F[d>>2];F[c+4>>2]=F[d+4>>2];F[c+8>>2]=F[d+8>>2];if((d|0)!=(f|0)){continue}break}}F[a+8>>2]=e+g;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}wa(1336);V()}function Li(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=ea-32|0;ea=f;g=(e&1073741823)!=(e|0)?-1:e<<2;l=ua(sa(g),0,g);g=l;i=F[g>>2];g=F[g+4>>2];k=F[b+4>>2];F[f+24>>2]=F[b>>2];F[f+28>>2]=k;F[f+8>>2]=i;F[f+12>>2]=g;i=a+8|0;sc(f+16|0,i,f+8|0,f+24|0);F[c>>2]=F[f+16>>2];F[c+4>>2]=F[f+20>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){h=a<<2;g=h+c|0;j=g+k|0;m=F[j>>2];j=F[j+4>>2];h=b+h|0;n=F[h+4>>2];F[f+24>>2]=F[h>>2];F[f+28>>2]=n;F[f+8>>2]=m;F[f+12>>2]=j;sc(f+16|0,i,f+8|0,f+24|0);F[g>>2]=F[f+16>>2];F[g+4>>2]=F[f+20>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}ra(l);ea=f+32|0;return 1}function Ci(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=ea-32|0;ea=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=ua(sa(h),0,h);g=F[b>>2];i=F[b+4>>2];k=F[h+4>>2];F[f+16>>2]=F[h>>2];F[f+20>>2]=k;F[f+8>>2]=g;F[f+12>>2]=i;i=a+8|0;rc(f+24|0,i,f+16|0,f+8|0);F[c>>2]=F[f+24>>2];F[c+4>>2]=F[f+28>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){g=a<<2;j=g+b|0;m=F[j>>2];j=F[j+4>>2];g=c+g|0;l=g+k|0;n=F[l+4>>2];F[f+16>>2]=F[l>>2];F[f+20>>2]=n;F[f+8>>2]=m;F[f+12>>2]=j;rc(f+24|0,i,f+16|0,f+8|0);F[g>>2]=F[f+24>>2];F[g+4>>2]=F[f+28>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}ra(h);ea=f+32|0;return 1}function Pi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=F[b+12>>2];c=F[b+20>>2];f=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=F[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}d=g+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;if(H[b+38>>1]<=513){c=f;f=g+8|0;c=f>>>0<8?c+1|0:c;if(f>>>0>h>>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}F[b+16>>2]=f;F[b+20>>2]=c}if(!(d&1)){break a}b=O(d)^31;c=b-30|0;if(c>>>0>=4294967267){F[a+8>>2]=b+1;e=-2<>2]=b;F[a+12>>2]=e^-1;F[a+24>>2]=(b|0)/2;J[a+20>>2]=M(2)/M(b|0)}j=c>>>0>4294967266}return j|0}function Db(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=F[a+8>>2];e=F[a>>2];if(g>>>0<=d-e>>2>>>0){f=F[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){F[e>>2]=F[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>0){f=ta(f,d,b)+b|0}F[a+4>>2]=f;return}F[a+4>>2]=e;return}if(e){F[a+4>>2]=e;ra(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=sa(e);F[a>>2]=c;F[a+4>>2]=c;F[a+8>>2]=c+e;if(f){c=ta(c,b,f)+f|0}F[a+4>>2]=c;return}va();V()}function rf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=1;a:{if((ga[F[F[b>>2]+20>>2]](b)|0)<=0){break a}while(1){f=0;c=Xd(F[F[a+4>>2]+4>>2],ga[F[F[b>>2]+24>>2]](b,g)|0);if((c|0)==-1){break a}e=F[a+4>>2];b:{if(G[e+36|0]<=1){if(ga[F[F[b>>2]+28>>2]](b,F[F[F[e+4>>2]+8>>2]+(c<<2)>>2])|0){break b}break a}d=0;c:{if((c|0)<0){break c}h=F[e+4>>2];if(F[h+12>>2]-F[h+8>>2]>>2<=(c|0)){break c}d=F[F[e+8>>2]+(F[F[e+20>>2]+(c<<2)>>2]<<2)>>2];d=ga[F[F[d>>2]+32>>2]](d,c)|0}if(!d){break a}if(!(ga[F[F[b>>2]+28>>2]](b,d)|0)){break a}}f=1;g=g+1|0;if((ga[F[F[b>>2]+20>>2]](b)|0)>(g|0)){continue}break}}return f|0}function Mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a=ea-32|0;ea=a;F[a+24>>2]=0;F[a+28>>2]=0;a:{d=La(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=sa(f);F[a+16>>2]=f|-2147483648;F[a+8>>2]=e;F[a+12>>2]=d;break c}D[a+19|0]=d;e=a+8|0;if(!d){break b}}ta(e,c,d)}D[d+e|0]=0;c=b+4|0;b=rb(b,a+8|0);d:{if((c|0)==(b|0)){break d}c=F[b+32>>2];b=F[b+28>>2];if((c-b|0)!=8){break d}c=G[b+4|0]|G[b+5|0]<<8|(G[b+6|0]<<16|G[b+7|0]<<24);F[a+24>>2]=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[a+28>>2]=c}g=K[a+24>>3];if(D[a+19|0]<0){ra(F[a+8>>2])}ea=a+32|0;break a}Ma();V()}return+g}function Be(a){var b=0,c=0,d=0,e=0;c=1;d=F[a+140>>2];a:{if((d|0)<=0){break a}b=d<<4;c=sa((d|0)!=(d&268435455)?-1:b|4);F[c>>2]=d;c=c+4|0;d=c+b|0;b=c;while(1){F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=b+16|0;if((d|0)!=(b|0)){continue}break}e=F[a+136>>2];F[a+136>>2]=c;if(e){d=e-4|0;c=F[d>>2];if(c){b=(c<<4)+e|0;while(1){b=b-16|0;if((e|0)!=(b|0)){continue}break}}ra(d)}c=1;if(F[a+140>>2]<=0){break a}b=0;while(1){c=xa(F[a+136>>2]+(b<<4)|0,a);if(!c){break a}b=b+1|0;if((b|0)>2]){continue}break}}return c}function qb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(F[a+64>>2]){break a}c=sa(32);F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=F[a+64>>2];F[a+64>>2]=c;if(!d){break a}c=F[d>>2];if(c){F[d+4>>2]=c;ra(c)}ra(d)}e=F[a+64>>2];c=F[a+28>>2]-1|0;if(c>>>0<=10){d=F[(c<<2)+13616>>2]}else{d=-1}c=L(d,D[a+24|0]);d=c;g=c>>31;e=qe(e,0,Hj(c,g,b,0),fa);if(e){c=F[a+64>>2];F[a>>2]=c;f=F[c+20>>2];F[a+8>>2]=F[c+16>>2];F[a+12>>2]=f;f=F[c+24>>2];c=F[c+28>>2];F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=d;F[a+44>>2]=g;F[a+16>>2]=f;F[a+20>>2]=c;F[a+80>>2]=b}return e}function Gi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=F[b+12>>2];c=F[b+20>>2];e=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=F[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}d=g+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;e=g+8|0;c=e>>>0<8?c+1|0:c;if(e>>>0>h>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=e;F[b+20>>2]=c;if(!(d&1)){break a}b=O(d)^31;if(b-30>>>0<4294967267){break a}j=1;F[a+8>>2]=b+1;c=-2<>2]=b;F[a+12>>2]=c^-1;F[a+24>>2]=(b|0)/2;J[a+20>>2]=M(2)/M(b|0)}return j|0}function Ke(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+4|0;a:{a=F[a+4>>2];if(a){e=G[c+11|0];d=e<<24>>24<0;i=d?F[c>>2]:c;e=d?F[c+4>>2]:e;while(1){c=G[a+27|0];d=c<<24>>24<0;c=d?F[a+20>>2]:c;j=c>>>0>>0;b:{c:{d:{e:{f:{h=j?c:e;g:{if(h){g=a+16|0;d=d?F[g>>2]:g;g=Ha(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>=0){break f}break g}if(c>>>0<=e>>>0){break e}}c=F[a>>2];if(c){break b}F[b>>2]=a;return a}c=Ha(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>=0){break a}}f=a+4|0;c=F[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}F[b>>2]=f;return f}F[b>>2]=a;return f}function kc(a,b){var c=0;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;c=F[b+60>>2];F[a+56>>2]=F[b+56>>2];F[a+60>>2]=c;c=F[b+52>>2];F[a+48>>2]=F[b+48>>2];F[a+52>>2]=c;c=F[b+44>>2];F[a+40>>2]=F[b+40>>2];F[a+44>>2]=c;c=F[b+36>>2];F[a+32>>2]=F[b+32>>2];F[a+36>>2]=c;c=F[b+28>>2];F[a+24>>2]=F[b+24>>2];F[a+28>>2]=c;c=F[b+20>>2];F[a+16>>2]=F[b+16>>2];F[a+20>>2]=c;c=F[b+12>>2];F[a+8>>2]=F[b+8>>2];F[a+12>>2]=c;F[a+88>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;D[a+77|0]=0;D[a+78|0]=0;D[a+79|0]=0;D[a+80|0]=0;D[a+81|0]=0;D[a+82|0]=0;D[a+83|0]=0;D[a+84|0]=0;return a}function rb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;a=F[a+4>>2];a:{b:{if(!a){break b}d=G[b+11|0];c=d<<24>>24<0;i=c?F[b>>2]:b;e=c?F[b+4>>2]:d;c=g;while(1){b=G[a+27|0];j=b<<24>>24<0;h=j?F[a+20>>2]:b;f=h>>>0>e>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Ha(j?F[b>>2]:b,i,d);if(b){break c}}b=e>>>0>h>>>0?-1:f}c=(b|0)<0?c:a;a=F[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=G[c+27|0];f=a<<24>>24<0;d:{d=f?F[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=Ha(i,f?F[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>=0){break a}}c=g}return c}function Ff(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Za(a,F[b+8>>2],e)){if(!(F[b+28>>2]==1|F[b+4>>2]!=(c|0))){F[b+28>>2]=d}return}a:{if(Za(a,F[b>>2],e)){if(!(F[b+16>>2]!=(c|0)&F[b+20>>2]!=(c|0))){if((d|0)!=1){break a}F[b+32>>2]=1;return}F[b+32>>2]=d;b:{if(F[b+44>>2]==4){break b}E[b+52>>1]=0;a=F[a+8>>2];ga[F[F[a>>2]+20>>2]](a,b,c,c,1,e);if(G[b+53|0]){F[b+44>>2]=3;if(!G[b+52|0]){break b}break a}F[b+44>>2]=4}F[b+20>>2]=c;F[b+40>>2]=F[b+40>>2]+1;if(F[b+36>>2]!=1|F[b+24>>2]!=2){break a}D[b+54|0]=1;return}a=F[a+8>>2];ga[F[F[a>>2]+24>>2]](a,b,c,d,e)}}function Eb(a,b,c){var d=0,e=0,f=0,g=0;a:{b:{if(!b){break b}if(H[a+38>>1]<=513){e=F[a+12>>2];b=F[a+20>>2];f=F[a+16>>2];g=f+8|0;b=g>>>0<8?b+1|0:b;if(g>>>0>I[a+8>>2]&(b|0)>=(e|0)|(b|0)>(e|0)){break a}b=f+F[a>>2]|0;d=G[b+4|0]|G[b+5|0]<<8|(G[b+6|0]<<16|G[b+7|0]<<24);F[c>>2]=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[c+4>>2]=d;b=F[a+20>>2];c=F[a+16>>2]+8|0;b=c>>>0<8?b+1|0:b;F[a+16>>2]=c;F[a+20>>2]=b;break b}if(!pe(1,c,a)){break a}}D[a+36|0]=1;F[a+32>>2]=0;b=F[a+16>>2];c=b+F[a>>2]|0;F[a+24>>2]=c;d=a;a=F[a+8>>2];F[d+28>>2]=c+(a-b|0);d=1}return d}function wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}d=L(b,12);b=sa(d);F[a>>2]=b;F[a+4>>2]=b;e=b+d|0;F[a+8>>2]=e;f=F[c>>2];c=F[c+4>>2]-f|0;c:{if(!c){c=b;b=d-12|0;ua(c,0,(b-((b>>>0)%12|0)|0)+12|0);break c}if((c|0)<0){break a}g=c>>2<<2;h=c>>>2<<2;while(1){F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;d=sa(c);F[b>>2]=d;F[b+4>>2]=d;F[b+8>>2]=d+g;i=b,j=ta(d,f,c)+h|0,F[i+4>>2]=j;b=b+12|0;if((e|0)!=(b|0)){continue}break}}F[a+4>>2]=e}return}va();V()}F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;va();V()}function se(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=sa(64);c=sa(12);F[c+8>>2]=F[F[a+4>>2]+80>>2];F[c>>2]=13248;F[c+4>>2]=0;f=pd(f,c);a:{b:{if((b|0)<0){c=f;break b}h=a+8|0;c=F[a+12>>2];e=F[a+8>>2];g=c-e>>2;c:{if((g|0)>(b|0)){break c}d=b+1|0;if(b>>>0>=g>>>0){Wb(h,d-g|0);break c}if(d>>>0>=g>>>0){break c}e=e+(d<<2)|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ga[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}a=F[h>>2]+(b<<2)|0;c=F[a>>2];F[a>>2]=f;if(!c){break a}}ga[F[F[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function Od(a,b){var c=0,d=0,e=0,f=0;d=ea-16|0;ea=d;F[d+12>>2]=b;c=ea-208|0;ea=c;F[c+204>>2]=b;b=c+160|0;ua(b,0,40);F[c+200>>2]=F[c+204>>2];a:{if((Nd(0,a,c+200|0,c+80|0,b)|0)<0){break a}f=F[3885]>=0;b=F[3866];if(F[3884]<=0){F[3866]=b&-33}b:{c:{d:{if(!F[3878]){F[3878]=80;F[3873]=0;F[3870]=0;F[3871]=0;e=F[3877];F[3877]=c;break d}if(F[3870]){break c}}if(Qd(15464)){break b}}Nd(15464,a,c+200|0,c+80|0,c+160|0)}if(e){ga[F[3875]](15464,0,0)|0;F[3878]=0;F[3877]=e;F[3873]=0;F[3870]=0;F[3871]=0}F[3866]=F[3866]|b&32;if(!f){break a}}ea=c+208|0;ea=d+16|0}function Ca(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=F[a+8>>2];e=F[a>>2];if(g>>>0<=d-e>>2>>>0){d=F[a+4>>2]-e|0;f=d>>2;d=f>>>0>>0?b+d|0:c;h=d-b|0;if(h){Wa(e,b,h)}if(f>>>0>>0){b=F[a+4>>2];c=c-d|0;if((c|0)>0){b=ta(b,d,c)+c|0}F[a+4>>2]=b;return}F[a+4>>2]=e+h;return}if(e){F[a+4>>2]=e;ra(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=sa(e);F[a>>2]=c;F[a+4>>2]=c;F[a+8>>2]=c+e;if(f){c=ta(c,b,f)+f|0}F[a+4>>2]=c;return}va();V()}function Kc(a,b,c){var d=0,e=0,f=0,g=0;a:{if((b|c)>=0){b:{if(b>>>0>1431655765){break b}d=L(b,3);Jc(a,d,13680);Jc(a+12|0,d,13684);d=F[a+24>>2];c:{if(F[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=F[a+28>>2];f=c<<2;c=sa(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>0){ta(c,d,e)}F[a+32>>2]=f;F[a+28>>2]=g;F[a+24>>2]=c;if(!d){break c}ra(d)}F[a+80>>2]=0;F[a+84>>2]=0;c=F[a+76>>2];F[a+76>>2]=0;if(c){ra(c)}F[a+68>>2]=0;F[a+72>>2]=0;c=a- -64|0;a=F[c>>2];F[c>>2]=0;if(!a){break b}ra(a)}a=b>>>0<1431655766}else{a=0}return a}wa(1336);V()}function ub(a){var b=0,c=0,d=0,e=0,f=0;d=F[a+8>>2];a:{if(G[d+84|0]){break a}b=F[a+16>>2];if(!b|!G[b+84|0]){break a}c=F[d+72>>2];e=F[d+68>>2];D[b+84|0]=0;c=c-e>>2;f=F[b+68>>2];e=F[b+72>>2]-f>>2;b:{if(c>>>0>e>>>0){Ia(b+68|0,c-e|0,2344);d=F[a+8>>2];break b}if(c>>>0>=e>>>0){break b}F[b+72>>2]=f+(c<<2)}b=G[d+84|0];if(b){break a}c=F[d+68>>2];if((c|0)==F[d+72>>2]){break a}e=F[F[a+16>>2]+68>>2];if(!b){b=0;while(1){f=b<<2;F[f+e>>2]=F[c+f>>2];b=b+1|0;c=F[d+68>>2];if(b>>>0>2]-c>>2>>>0){continue}break}break a}F[e>>2]=0}return F[a+16>>2]}function jd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{c=F[a+216>>2];if((c|0)==F[a+220>>2]){break a}while(1){b:{c=F[L(e,144)+c>>2];if((c|0)<0){break b}d=F[a+4>>2];f=F[d+8>>2];if((c|0)>=F[d+12>>2]-f>>2){break b}d=0;c=F[(c<<2)+f>>2];if((ga[F[F[c>>2]+24>>2]](c)|0)<=0){break b}while(1){if((ga[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ga[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break b}break}a=F[a+216>>2]+L(e,144)|0;e=G[a+100|0]?a+4|0:0;break a}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}return 0}return e|0}function Sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=F[a+4>>2];if((c|0)!=F[a+8>>2]){d=F[b+4>>2];F[c>>2]=F[b>>2];F[c+4>>2]=d;F[c+8>>2]=F[b+8>>2];F[a+4>>2]=c+12;return}a:{f=F[a>>2];g=c-f|0;d=(g|0)/12|0;c=d+1|0;if(c>>>0<357913942){e=d<<1;e=d>>>0<178956970?c>>>0>e>>>0?c:e:357913941;if(e){if(e>>>0>=357913942){break a}c=sa(L(e,12))}else{c=0}d=c+L(d,12)|0;h=F[b+4>>2];F[d>>2]=F[b>>2];F[d+4>>2]=h;F[d+8>>2]=F[b+8>>2];b=d+L((g|0)/-12|0,12)|0;if((g|0)>0){ta(b,f,g)}F[a+8>>2]=c+L(e,12);F[a+4>>2]=d+12;F[a>>2]=b;if(f){ra(f)}return}va();V()}wa(1336);V()}function mf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=F[a+60>>2];a:{if(!c){break a}F[c+4>>2]=a+48;if(!(ga[F[F[c>>2]+12>>2]](c)|0)){break a}b:{c=ga[F[F[a>>2]+24>>2]](a)|0;if((c|0)<=0){break b}while(1){c:{f=F[(ga[F[F[a>>2]+28>>2]](a)|0)+4>>2];g=ga[F[F[a>>2]+20>>2]](a,d)|0;e=F[a+60>>2];if(!(ga[F[F[e>>2]+8>>2]](e,F[F[f+8>>2]+(g<<2)>>2])|0)){break c}d=d+1|0;if((c|0)!=(d|0)){continue}break b}break}return 0}d=0;if(!(ga[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(ga[F[F[a>>2]+40>>2]](a,b)|0)){break a}d=ga[F[F[a>>2]+44>>2]](a)|0}return d|0}function sd(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2156;b=F[a+60>>2];if(b){c=F[a- -64>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){Ja(d)}if((b|0)!=(c|0)){continue}break}c=F[a+60>>2]}F[a+64>>2]=b;ra(c)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+36>>2];if(b){c=F[a+40>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-24|0;ga[F[F[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}c=F[a+36>>2]}F[a+40>>2]=b;ra(c)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function Ab(a){var b=0,c=0,d=0,e=0;c=F[a+132>>2];if(c){b=F[a+136>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+132>>2]}F[a+136>>2]=c;ra(b)}c=F[a+120>>2];if(c){b=F[a+124>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+120>>2]}F[a+124>>2]=c;ra(b)}b=F[a+108>>2];if(b){F[a+112>>2]=b;ra(b)}b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}_a(a+76|0);_a(a+56|0);_a(a+36|0);_a(a+16|0)}function Fd(a,b,c,d,e,f,g){var h=0,i=0,j=0;h=ea-16|0;ea=h;if((b^-1)-17>>>0>=c>>>0){if(G[a+11|0]>>>7|0){j=F[a>>2]}else{j=a}a:{if(b>>>0<2147483623){F[h+8>>2]=b<<1;F[h+12>>2]=b+c;c=ea-16|0;ea=c;ea=c+16|0;c=h+8|0;i=h+12|0;c=F[(I[i>>2]>2]?c:i)>>2];if(c>>>0>=11){i=c+16&-16;c=i-1|0;c=(c|0)==11?i:c}else{c=10}break a}c=-18}i=c+1|0;c=sa(i);if(f){kb(c,g,f)}d=d-e|0;if(d){kb(c+f|0,e+j|0,d)}if((b|0)!=10){ra(j)}F[a>>2]=c;F[a+8>>2]=i|-2147483648;b=a;a=d+f|0;F[b+4>>2]=a;D[h+7|0]=0;D[a+c|0]=G[h+7|0];ea=h+16|0;return}Ma();V()}function bb(a){var b=0,c=0,d=0,e=0;c=F[a+640>>2];if(c){b=F[a+644>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+640>>2]}F[a+644>>2]=c;ra(b)}c=F[a+628>>2];if(c){b=F[a+632>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+628>>2]}F[a+632>>2]=c;ra(b)}b=F[a+616>>2];if(b){F[a+620>>2]=b;ra(b)}b=F[a+604>>2];if(b){F[a+608>>2]=b;ra(b)}_a(a+584|0);_a(a+564|0);_a(a+544|0)}function yb(a){var b=0,c=0,d=0,e=0;c=F[a+128>>2];if(c){b=F[a+132>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+128>>2]}F[a+132>>2]=c;ra(b)}c=F[a+116>>2];if(c){b=F[a+120>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;ra(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+116>>2]}F[a+120>>2]=c;ra(b)}b=F[a+104>>2];if(b){F[a+108>>2]=b;ra(b)}b=F[a+92>>2];if(b){F[a+96>>2]=b;ra(b)}_a(a+72|0);_a(a+52|0);_a(a+32|0)}function id(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F[a+216>>2];if((c|0)!=F[a+220>>2]){while(1){a:{c=F[L(e,144)+c>>2];if((c|0)<0){break a}d=F[a+4>>2];f=F[d+8>>2];if((c|0)>=F[d+12>>2]-f>>2){break a}d=0;c=F[(c<<2)+f>>2];if((ga[F[F[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((ga[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ga[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break a}break}return(F[a+216>>2]+L(e,144)|0)+104|0}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function Dg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a=ea-32|0;ea=a;a:{d=La(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=sa(f);F[a+24>>2]=f|-2147483648;F[a+16>>2]=e;F[a+20>>2]=d;break c}D[a+27|0]=d;e=a+16|0;if(!d){break b}}ta(e,c,d)}D[d+e|0]=0;D[a+4|0]=0;F[a>>2]=1701667182;D[a+11|0]=4;d=F[b+4>>2];c=-1;d:{if(!d){break d}d=_d(d,a,a+16|0);c=-1;if(!d){break d}c=Wd(b,F[d+24>>2])}b=c;if(D[a+11|0]<0){ra(F[a>>2])}if(D[a+27|0]<0){ra(F[a+16>>2])}ea=a+32|0;break a}Ma();V()}return b|0}function Og(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ea-16|0;ea=d;F[d+12>>2]=0;a:{e=La(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=sa(f);F[d+8>>2]=f|-2147483648;F[d>>2]=a;F[d+4>>2]=e;break c}D[d+11|0]=e;a=d;if(!e){break b}}ta(a,c,e)}D[a+e|0]=0;a=rb(b,d);d:{if((a|0)==(b+4|0)){break d}b=F[a+32>>2];a=F[a+28>>2];if((b-a|0)!=4){break d}F[d+12>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)}a=F[d+12>>2];if(D[d+11|0]<0){ra(F[d>>2])}ea=d+16|0;break a}Ma();V()}return a|0}function Jd(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!F[F[4227]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){D[a+1|0]=b&63|128;D[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){D[a+2|0]=b&63|128;D[a|0]=b>>>12|224;D[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){D[a+3|0]=b&63|128;D[a|0]=b>>>18|240;D[a+2|0]=b>>>6&63|128;D[a+1|0]=b>>>12&63|128;a=4;break a}}F[4190]=25;a=-1}else{a=1}break a}D[a|0]=b;a=1}return a}function ac(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13756;b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}b=F[a+44>>2];if(b){F[a+48>>2]=b;ra(b)}b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){Ja(b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}b=F[a+4>>2];F[a+4>>2]=0;if(b){Tc(b)}return a|0}function Aa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(d){if(d>>>0>=1073741824){break a}c=sa(d<<2)}b=b<<2;b=ua((h<<2)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<2)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}wa(1336);V()}function tb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>>0<2147483640?d>>>0>i>>>0?d:i:536870911;if(d){if(d>>>0>=536870912){break a}c=sa(d<<3)}b=b<<3;b=ua((h<<3)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<3)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}wa(1336);V()}function hb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a>>2];a=F[e+4>>2];c=F[e+8>>2];if(a>>>0>>0){F[a>>2]=F[b>>2];F[e+4>>2]=a+4;return}a:{f=F[e>>2];g=a-f|0;d=g>>2;a=d+1|0;if(a>>>0<1073741824){h=d<<2;c=c-f|0;d=c>>1;c=c>>>0<2147483644?a>>>0>d>>>0?a:d:1073741823;if(c){if(c>>>0>=1073741824){break a}a=sa(c<<2)}else{a=0}d=h+a|0;F[d>>2]=F[b>>2];if((g|0)>0){ta(a,f,g)}F[e+8>>2]=a+(c<<2);F[e+4>>2]=d+4;F[e>>2]=a;if(f){ra(f)}return}va();V()}wa(1336);V()}function Sc(a,b){var c=0,d=0,e=0,f=0;c=a+4|0;a=rb(a,b);a:{if((c|0)==(a|0)){break a}b=D[a+39|0]<0?F[a+28>>2]:a+28|0;while(1){a=b;b=a+1|0;c=D[a|0];if((c|0)==32|c-9>>>0<5){continue}break}b:{c:{d:{c=D[a|0];switch(c-43|0){case 0:break c;case 2:break d;default:break b}}e=1}c=D[b|0];a=b}if(c-48>>>0<10){while(1){d=(L(d,10)-D[a|0]|0)+48|0;b=D[a+1|0];a=a+1|0;if(b-48>>>0<10){continue}break}}a=e?d:0-d|0;if((a|0)==-1){break a}f=(a|0)!=0}return f}function gf(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2356;b=F[a+60>>2];F[a+60>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}d=F[a+36>>2];if(d){c=F[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;ra(b)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function ff(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2356;b=F[a+60>>2];F[a+60>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}d=F[a+36>>2];if(d){c=F[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;ra(b)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}ra(a)}function oe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=ua(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>=0){c=0;e=e-f|0;d=e>>>0<2147483646?d>>>0>e>>>0?d:e:2147483647;if(d){if((d|0)<0){break a}c=sa(d<<1)}b=b<<1;b=ua((h<<1)+c|0,0,b)+b|0;if((g|0)>0){ta(c,f,g)}F[a+8>>2]=(d<<1)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){ra(f)}return}va();V()}wa(1336);V()}function Va(a,b){var c=0,d=0,e=0,f=0,g=0;a:{c=F[a+4>>2];e=F[a>>2];f=c-e|0;b:{if(f>>>0>>0){g=b-f|0;d=F[a+8>>2];if(g>>>0<=d-c>>>0){if(g){c=ua(c,0,g)+g|0}F[a+4>>2]=c;return}if((b|0)<0){break a}c=d-e|0;d=c<<1;d=c>>>0<1073741823?b>>>0>d>>>0?b:d:2147483647;c=sa(d);ua(c+f|0,0,g);if((f|0)>0){ta(c,e,f)}F[a+8>>2]=c+d;F[a+4>>2]=b+c;F[a>>2]=c;if(!e){break b}ra(e);return}if(b>>>0>=f>>>0){break b}F[a+4>>2]=b+e}return}va();V()}function si(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=ea-16|0;ea=d;e=F[a+4>>2];a:{if((e|0)==-1){break a}c=F[b+20>>2];if(!!F[b+16>>2]&(c|0)>=0|(c|0)>0){break a}Yb(b,F[b+4>>2],F[a+8>>2],F[a+12>>2]);c=F[b+20>>2];if(!!F[b+16>>2]&(c|0)>=0|(c|0)>0){break a}c=a+20|0;Yb(b,F[b+4>>2],c,c+4|0);c=F[b+20>>2];f=F[b+16>>2];D[d+15|0]=F[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}Yb(b,F[b+4>>2],d+15|0,d+16|0)}ea=d+16|0;return(e|0)!=-1|0}function zh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=F[a+8>>2];b:{if((b|0)<0){break b}c=F[a+4>>2];e=F[c>>2];d=F[c+4>>2]-e>>2;c:{if(d>>>0>>0){Aa(c,b-d|0);f=F[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}F[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=F[a+4>>2];c=F[a>>2];e=F[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}F[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}Da();V()}function ig(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;Me(d,a,b,c);F[a+24>>2]=F[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=G[d+15|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}Zb(a,F[d+4>>2],F[d+8>>2]);break a}g=a;a=(c|0)<0;_b(g,a?F[d+4>>2]:b,a?F[d+8>>2]:f)}if(D[d+15|0]<0){ra(F[d+4>>2])}ea=d+16|0;return e|0}function hg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;Le(d,a,b,c);F[a+24>>2]=F[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=G[d+15|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}Zb(a,F[d+4>>2],F[d+8>>2]);break a}g=a;a=(c|0)<0;_b(g,a?F[d+4>>2]:b,a?F[d+8>>2]:f)}if(D[d+15|0]<0){ra(F[d+4>>2])}ea=d+16|0;return e|0}function Sa(a){var b=0,c=0,d=0,e=0,f=0;b=F[a+4>>2];if((b|0)!=F[a+8>>2]){F[b>>2]=F[2863];F[a+4>>2]=b+4;return}a:{f=F[a>>2];d=b-f|0;e=d>>2;b=e+1|0;if(b>>>0<1073741824){c=d>>1;c=d>>>0<2147483644?b>>>0>c>>>0?b:c:1073741823;if(c){if(c>>>0>=1073741824){break a}b=sa(c<<2)}else{b=0}e=b+(e<<2)|0;F[e>>2]=F[2863];if((d|0)>0){ta(b,f,d)}F[a+8>>2]=b+(c<<2);F[a+4>>2]=e+4;F[a>>2]=b;if(f){ra(f)}return}va();V()}wa(1336);V()}function tg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a=ea-32|0;ea=a;e=D[b+24|0];f=F[3419];F[a+24>>2]=F[3418];F[a+28>>2]=f;f=F[3417];F[a+16>>2]=F[3416];F[a+20>>2]=f;a:{b:{c=Ya(b,c,e,a+16|0);if(c){F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;b=0;if(e){if((e|0)<0){break b}e=e<<2;b=sa(e);g=ta(b,a+16|0,e)+e|0}e=F[d>>2];if(e){F[d+4>>2]=e;ra(e)}F[d+8>>2]=g;F[d+4>>2]=g;F[d>>2]=b}ea=a+32|0;break a}va();V()}return c|0}function Gb(a,b){var c=0,d=0,e=0,f=0;d=F[a+12>>2];c=F[a+16>>2]-d>>2;a:{if(c>>>0>>0){Aa(a+12|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}F[a+16>>2]=d+(b<<2)}b:{c=F[a>>2];c:{if(F[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=F[a+4>>2];e=b<<2;b=sa(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){ta(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break c}ra(c)}return}wa(1336);V()}function Ec(a,b,c){var d=0,e=0,f=0;d=F[c+16>>2];a:{if(!d){if(Qd(c)){break a}d=F[c+16>>2]}f=F[c+20>>2];if(d-f>>>0>>0){return ga[F[c+36>>2]](c,a,b)|0}b:{if(F[c+80>>2]<0){d=0;break b}e=b;while(1){d=e;if(!d){d=0;break b}e=d-1|0;if(G[e+a|0]!=10){continue}break}e=ga[F[c+36>>2]](c,a,d)|0;if(e>>>0>>0){break a}a=a+d|0;b=b-d|0;f=F[c+20>>2]}ta(f,a,b);F[c+20>>2]=F[c+20>>2]+b;e=b+d|0}return e}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=ea-16|0;ea=d;a:{e=La(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=sa(g);F[d+8>>2]=g|-2147483648;F[d>>2]=f;F[d+4>>2]=e;break c}D[d+11|0]=e;f=d;if(!e){break b}}ta(f,c,e)}D[e+f|0]=0;f=a+16|0;c=Zd(b,d,f);b=D[a+27|0];a=F[a+16>>2];if(D[d+11|0]<0){ra(F[d>>2])}ea=d+16|0;a=c?(b|0)<0?a:f:0;break a}Ma();V()}return a|0}function bd(a){var b=0,c=0,d=0,e=0;if(G[a+76|0]){D[a+76|0]=0;d=F[a+60>>2];c=F[a+72>>2]+7|0;b=c>>>0<7?1:b;e=b>>>3|0;c=b<<29|c>>>3;b=c+F[a+56>>2]|0;d=d+e|0;F[a+56>>2]=b;F[a+60>>2]=b>>>0>>0?d+1|0:d}if(H[a+38>>1]<=513){D[a+132|0]=0;d=F[a+116>>2];b=0;c=F[a+128>>2]+7|0;b=c>>>0<7?1:b;e=b>>>3|0;c=b<<29|c>>>3;b=c+F[a+112>>2]|0;d=d+e|0;F[a+112>>2]=b;F[a+116>>2]=b>>>0>>0?d+1|0:d}}function Gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=ea+-64|0;ea=d;e=ga[F[F[a>>2]+44>>2]](a,b)|0;a=ga[F[F[a>>2]+40>>2]](a,b)|0;f=Fb(d);g=F[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=F[(a<<2)+13616>>2]}else{a=-1}a=L(a,e);mc(f,g,h,i,0,a,a>>31);a=kc(sa(96),f);qb(a,c);D[a+84|0]=1;F[a+72>>2]=F[a+68>>2];F[a+60>>2]=F[b+60>>2];ea=d- -64|0;return a|0}function pe(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=F[c+20>>2];e=F[c+12>>2];f=F[c+16>>2];if((d|0)>=(e|0)&f>>>0>=I[c+8>>2]|(d|0)>(e|0)){break a}e=D[f+F[c>>2]|0];f=f+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;b:{if((e|0)<0){if(!pe(a+1|0,b,c)){break a}c=F[b>>2];a=F[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}F[b>>2]=c;F[b+4>>2]=a;g=1}return g}function ib(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=F[c+20>>2];e=F[c+12>>2];f=F[c+16>>2];if((d|0)>=(e|0)&f>>>0>=I[c+8>>2]|(d|0)>(e|0)){break a}e=D[f+F[c>>2]|0];f=f+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;b:{if((e|0)<0){if(!ib(a+1|0,b,c)){break a}c=F[b>>2];a=F[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}F[b>>2]=c;F[b+4>>2]=a;g=1}return g}function Ae(a,b){var c=0,d=0,e=0,f=0,g=0;F[a+144>>2]=b;c=F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2];e=F[c>>2]+F[c+16>>2]|0;d=F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2];c=F[d+8>>2];d=F[d+16>>2];c=c-d|0;f=a,g=H[F[(ga[F[F[b>>2]+32>>2]](b)|0)+32>>2]+38>>1],E[f+38>>1]=g;F[a>>2]=e;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=c;F[a+12>>2]=0;f=a,g=ga[F[F[b>>2]+36>>2]](b)|0,F[f+148>>2]=g}function Ef(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Za(a,F[b+8>>2],e)){if(!(F[b+28>>2]==1|F[b+4>>2]!=(c|0))){F[b+28>>2]=d}return}a:{if(!Za(a,F[b>>2],e)){break a}if(!(F[b+16>>2]!=(c|0)&F[b+20>>2]!=(c|0))){if((d|0)!=1){break a}F[b+32>>2]=1;return}F[b+20>>2]=c;F[b+32>>2]=d;F[b+40>>2]=F[b+40>>2]+1;if(!(F[b+36>>2]!=1|F[b+24>>2]!=2)){D[b+54|0]=1}F[b+44>>2]=4}}function vg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{if(I[b+80>>2]>65535){break a}f=F[b+96>>2];b=F[b+100>>2]-f|0;a=(b|0)/12|0;e=L(a,6);g=(e|0)==(c|0);if(!b|(c|0)!=(e|0)){break a}g=1;e=a>>>0>1?a:1;a=0;while(1){b=L(a,6)+d|0;c=L(a,12)+f|0;E[b>>1]=F[c>>2];E[b+2>>1]=F[c+4>>2];E[b+4>>1]=F[c+8>>2];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return g|0}function li(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=11304;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}return a|0}function ki(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=11304;b=F[a+48>>2];F[a+48>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}ra(a)}function wh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=F[a+32>>2];f=F[b+8>>2];e=F[b+12>>2];d=F[b+20>>2];h=f;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;a:{if(h>>>0>>0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}c=f+F[b>>2]|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=d;c=0;if((e|0)<0){break a}F[F[a+4>>2]+80>>2]=e;c=1}return c|0}function Dd(a,b,c,d){D[a+53|0]=1;a:{if(F[a+4>>2]!=(c|0)){break a}D[a+52|0]=1;c=F[a+16>>2];b:{if(!c){F[a+36>>2]=1;F[a+24>>2]=d;F[a+16>>2]=b;if((d|0)!=1){break a}if(F[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=F[a+24>>2];if((c|0)==2){F[a+24>>2]=d;c=d}if(F[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}F[a+36>>2]=F[a+36>>2]+1}D[a+54|0]=1}}function uh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+32>>2];e=F[d+12>>2];g=F[d+8>>2];b=g;c=F[d+20>>2];h=F[d+16>>2];f=h+4|0;c=f>>>0<4?c+1|0:c;if((c|0)<=(e|0)&b>>>0>=f>>>0|(c|0)<(e|0)){b=h+F[d>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[d+16>>2]=f;F[d+20>>2]=c;F[F[a+4>>2]+80>>2]=b}return(c|0)<=(e|0)&f>>>0<=g>>>0|(c|0)<(e|0)}function Ee(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ea-16|0;ea=d;F[a+4>>2]=b;b=F[b+64>>2];e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Na(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=F[a+4>>2];e=F[b+56>>2];b=F[b+52>>2];D[d+14|0]=0;Na(a+36|0,e-b>>2,d+14|0);b=F[c+12>>2];F[a+16>>2]=F[c+8>>2];F[a+20>>2]=b;b=F[c+4>>2];F[a+8>>2]=F[c>>2];F[a+12>>2]=b;ea=d+16|0}function lf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ga[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=F[F[a+36>>2]>>2];f=a+48|0;c=0;if(!(ga[F[F[d>>2]+16>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=F[F[a+36>>2]+(c<<2)>>2];if(ga[F[F[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function kf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ga[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=F[F[a+36>>2]>>2];f=a+48|0;c=0;if(!(ga[F[F[d>>2]+20>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=F[F[a+36>>2]+(c<<2)>>2];if(ga[F[F[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function qc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(b){g=0-G[a+12|0]&255;h=F[a>>2];e=F[a+8>>2];while(1){i=d<<1;a:{if(e>>>0>4095){break a}d=F[a+4>>2];if((d|0)<=0){break a}d=d-1|0;F[a+4>>2]=d;e=G[d+h|0]|e<<8}f=e&255;d=f>>>0>>0;j=f;f=L(e>>>8|0,g);e=d?j+f|0:e-(g+f|0)|0;F[a+8>>2]=e;d=d|i;b=b-1|0;if(b){continue}break}}F[c>>2]=d}function be(a){F[a>>2]=0;F[a+4>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;D[a+24|0]=1;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+68>>2]=a}function Wh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ea-16|0;ea=d;F[a+4>>2]=b;e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Na(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=F[a+4>>2];e=F[b+28>>2];b=F[b+24>>2];D[d+14|0]=0;Na(a+36|0,e-b>>2,d+14|0);b=F[c+12>>2];F[a+16>>2]=F[c+8>>2];F[a+20>>2]=b;b=F[c+4>>2];F[a+8>>2]=F[c>>2];F[a+12>>2]=b;ea=d+16|0}function Lc(a){var b=0;F[a>>2]=0;F[a+4>>2]=0;F[a+56>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+60>>2]=a}function ud(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!ud(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function sb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!sb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function jb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!jb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Pb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Pb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Oc(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Oc(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Ne(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Ne(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Fa(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Fa(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Cb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Cb(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function ug(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;g=F[b+96>>2];b=F[b+100>>2]-g|0;if(!((b|0)!=(c|0)|!b)){a=(c|0)/12|0;h=a>>>0>1?a:1;a=0;while(1){e=L(a,12);f=e+d|0;e=e+g|0;F[f>>2]=F[e>>2];F[f+4>>2]=F[e+4>>2];F[f+8>>2]=F[e+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}return(b|0)==(c|0)|0}function Ha(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(F[a>>2]!=F[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=G[a|0];e=G[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function yg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[b+4>>2];a:{if(!d){break a}b=F[F[F[b+8>>2]+(c<<2)>>2]+60>>2];if((b|0)<0){break a}a=F[d+24>>2];c=F[d+28>>2];if((a|0)==(c|0)){break a}b:{while(1){e=F[a>>2];if((b|0)==F[e+24>>2]){break b}a=a+4|0;if((c|0)!=(a|0)){continue}break}e=0}}return e|0}function Tc(a){var b=0,c=0,d=0;if(a){d=F[a+24>>2];if(d){c=F[a+28>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){Qa(b+12|0,F[b+16>>2]);Pa(b,F[b+4>>2]);ra(b)}if((d|0)!=(c|0)){continue}break}b=F[a+24>>2]}F[a+28>>2]=d;ra(b)}Qa(a+12|0,F[a+16>>2]);Pa(a,F[a+4>>2]);ra(a)}}function Xc(a){var b=0,c=0,d=0;d=F[a>>2];if(d){b=F[a+4>>2];if((d|0)==(b|0)){b=d}else{while(1){c=F[b-12>>2];if(c){F[b-8>>2]=c;ra(c)}c=F[b-28>>2];if(c){F[b-24>>2]=c;ra(c)}c=F[b-40>>2];if(c){F[b-36>>2]=c;ra(c)}pc(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}b=F[a>>2]}F[a+4>>2]=d;ra(b)}}function Uh(a){a=a|0;var b=0;F[a+8>>2]=12416;F[a>>2]=12204;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function qi(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}return a|0}function Th(a){a=a|0;var b=0;F[a+8>>2]=12416;F[a>>2]=12204;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function La(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!G[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=F[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=G[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function Vc(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;ra(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;ra(b)}ra(a)}function yc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=F[c+8>>2];e=F[c+16>>2];g=F[c+12>>2];f=g;d=F[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=G[e+F[c>>2]|0];i=e+1|0;f=i?d:d+1|0;F[c+16>>2]=i;F[c+20>>2]=f;F[a+4>>2]=b}return e>>>0>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function Za(a,b,c){var d=0;if(!c){return F[a+4>>2]==F[b+4>>2]}if((a|0)==(b|0)){return 1}d=F[a+4>>2];a=G[d|0];c=F[b+4>>2];b=G[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=G[c+1|0];a=G[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function Vh(a){a=a|0;var b=0;F[a>>2]=12416;b=F[a+88>>2];if(b){F[a+92>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Ib(a,b){var c=0,d=0,e=0,f=0;a:{c=F[a>>2];b:{if(F[a+8>>2]-c>>2>>>0>=b>>>0){break b}if(b>>>0>=1073741824){break a}d=F[a+4>>2];e=b<<2;b=sa(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){ta(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break b}ra(c)}return}wa(1336);V()}function Qh(a){a=a|0;var b=0;F[a>>2]=12416;b=F[a+88>>2];if(b){F[a+92>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Ag(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=F[b+12>>2];b=F[b+8>>2];d=a-b|0;a=0;a:{if(!d){break a}a=d>>2;d=a>>>0>1?a:1;a=0;b:{while(1){e=F[b+(a<<2)>>2];if(F[e+60>>2]==(c|0)){break b}a=a+1|0;if((d|0)!=(a|0)){continue}break}a=0;break a}a=(a|0)==-1?0:e}return a|0}function cb(a){var b=0;if(a){b=F[a+76>>2];if(b){F[a+80>>2]=b;ra(b)}b=F[a- -64>>2];if(b){F[a+68>>2]=b;ra(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;ra(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;ra(b)}b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}ra(a)}}function pc(a){var b=0;b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;ra(b)}b=F[a+52>>2];if(b){F[a+56>>2]=b;ra(b)}b=F[a+40>>2];if(b){F[a+44>>2]=b;ra(b)}b=F[a+28>>2];if(b){F[a+32>>2]=b;ra(b)}b=F[a+12>>2];if(b){ra(b)}a=F[a>>2];if(a){ra(a)}}function Hd(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=ea-16|0;ea=f;d=ea-16|0;ea=d;b=b-a>>2;while(1){if(b){F[d+12>>2]=a;e=b>>>1|0;F[d+12>>2]=F[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=F[d+12>>2];g=I[e>>2]>2];b=g?h:b;a=g?e+4|0:a;continue}break}ea=d+16|0;ea=f+16|0;return a}function fd(a){var b=0,c=0,d=0;b=F[a+4>>2];d=F[a>>2];if((b|0)!=(d|0)){while(1){c=F[b-12>>2];if(c){F[b-8>>2]=c;ra(c)}c=F[b-28>>2];if(c){F[b-24>>2]=c;ra(c)}c=F[b-40>>2];if(c){F[b-36>>2]=c;ra(c)}pc(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}}F[a+4>>2]=d}function Ba(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<=10){d=a;D[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=sa(e);F[a>>2]=d;F[a+8>>2]=e|-2147483648;F[a+4>>2]=c}kb(d,b,c+1|0);return}Ma();V()}function Wc(a,b){var c=0,d=0;d=sa(40);F[d>>2]=-1;c=d+8|0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;ga[F[F[a>>2]+16>>2]](a,d);a=F[b+88>>2];F[b+88>>2]=d;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)}return 1}function xg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a=ea-16|0;ea=a;b=F[b+96>>2];F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;e=sa(12);c=ta(e,b+L(c,12)|0,12);f=c+12|0;b=F[d>>2];if(b){F[d+4>>2]=b;ra(b)}F[d+8>>2]=c+12;F[d+4>>2]=f;F[d>>2]=e;ea=a+16|0;return 1}function Ga(a){var b=0,c=0,d=0,e=0,f=0;d=G[a+12|0];c=F[a+8>>2];a:{if(c>>>0>4095){break a}b=F[a+4>>2];if((b|0)<=0){break a}b=b-1|0;F[a+4>>2]=b;c=G[b+F[a>>2]|0]|c<<8}d=0-d&255;b=L(d,c>>>8|0);e=c&255;f=e>>>0>>0;F[a+8>>2]=f?b+e|0:c-(b+d|0)|0;return f}function pd(a,b){F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2012;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a>>2]=2356;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+60>>2]=b;return a}function qe(a,b,c,d){a:{if(!b){if((d|0)<0){return 0}Va(a,c);break a}if((d|0)<0){return 0}if(!(!d&F[a+4>>2]-F[a>>2]>>>0>=c>>>0)){Va(a,c)}if(!c){break a}Wa(F[a>>2],b,c)}b=F[a+28>>2];c=F[a+24>>2]+1|0;b=c?b:b+1|0;F[a+24>>2]=c;F[a+28>>2]=b;return 1}function Ig(a){a=a|0;var b=0,c=0,d=0;if(a){if(D[a+27|0]<0){ra(F[a+16>>2])}b=F[a>>2];if(b){c=F[a+4>>2];if((c|0)==(b|0)){d=b}else{while(1){d=c-12|0;if(D[c-1|0]<0){ra(F[d>>2])}c=d;if((c|0)!=(b|0)){continue}break}d=F[a>>2]}F[a+4>>2]=b;ra(d)}ra(a)}}function th(){var a=0;a=sa(40);E[a+38>>1]=0;F[a>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;D[a+29|0]=0;D[a+30|0]=0;D[a+31|0]=0;D[a+32|0]=0;D[a+33|0]=0;D[a+34|0]=0;D[a+35|0]=0;D[a+36|0]=0;return a|0}function Ld(a){var b=0,c=0,d=0;if(D[F[a>>2]]-48>>>0>=10){return 0}while(1){d=F[a>>2];c=-1;if(b>>>0<=214748364){c=D[d|0]-48|0;b=L(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}F[a>>2]=d+1;b=c;if(D[d+1|0]-48>>>0<10){continue}break}return b}function Ja(a){a=a|0;var b=0,c=0;if(a){b=F[a+88>>2];F[a+88>>2]=0;if(b){c=F[b+8>>2];if(c){F[b+12>>2]=c;ra(c)}ra(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;ra(b)}b=F[a+64>>2];F[a+64>>2]=0;if(b){c=F[b>>2];if(c){F[b+4>>2]=c;ra(c)}ra(b)}ra(a)}}function vi(a){a=a|0;var b=0;F[a+24>>2]=1140;F[a>>2]=11076;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function nc(a,b){var c=0,d=0,e=0;c=La(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=sa(e);F[a+8>>2]=e|-2147483648;F[a>>2]=d;F[a+4>>2]=c;break b}D[a+11|0]=c;d=a;if(!c){break a}}ta(d,b,c)}D[c+d|0]=0;return a}Ma();V()}function Ij(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=Jj(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;fa=(g^fa)-((a>>>0>>0)+g|0)|0;return b}function ui(a){a=a|0;var b=0;F[a+24>>2]=1140;F[a>>2]=11076;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function _b(a,b,c){var d=0,e=0,f=0;e=ea-16|0;ea=e;d=F[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=F[a>>2];F[a+4>>2]=c;kb(d,b,c);D[e+15|0]=0;D[c+d|0]=G[e+15|0];break a}f=a;a=F[a+4>>2];Fd(f,d-1|0,(c-d|0)+1|0,a,a,c,b)}ea=e+16|0}function yf(a,b){a=a|0;b=b|0;var c=0,d=0;c=ea-16|0;ea=c;a=F[a+4>>2];a:{if((a|0)==-1){break a}D[c+15|0]=a;d=F[b+20>>2];if(!!F[b+16>>2]&(d|0)>=0|(d|0)>0){break a}Yb(b,F[b+4>>2],c+15|0,c+16|0)}ea=c+16|0;return(a|0)!=-1|0}function Hj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=L(e,f);g=c&65535;h=a&65535;i=L(g,h);f=(i>>>16|0)+L(f,g)|0;e=(f&65535)+L(e,h)|0;fa=(L(b,c)+j|0)+L(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function oh(){var a=0;a=sa(96);Fb(a);F[a+64>>2]=0;F[a+68>>2]=0;F[a+88>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;D[a+77|0]=0;D[a+78|0]=0;D[a+79|0]=0;D[a+80|0]=0;D[a+81|0]=0;D[a+82|0]=0;D[a+83|0]=0;D[a+84|0]=0;return a|0}function Ed(a,b,c){var d=0;d=F[a+16>>2];if(!d){F[a+36>>2]=1;F[a+24>>2]=c;F[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(F[a+24>>2]!=2){break a}F[a+24>>2]=c;return}D[a+54|0]=1;F[a+24>>2]=2;F[a+36>>2]=F[a+36>>2]+1}}function ti(a,b){a=a|0;b=b|0;var c=0,d=0;F[b>>2]=2;c=F[b+8>>2];d=F[b+12>>2]-c|0;if(d>>>0<=4294967291){lc(b+8|0,d+4|0);c=F[b+8>>2]}b=c+d|0;a=F[a+4>>2];D[b|0]=a;D[b+1|0]=a>>>8;D[b+2|0]=a>>>16;D[b+3|0]=a>>>24}function zj(a){a=a|0;var b=0;F[a>>2]=3592;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function xh(a){a=a|0;var b=0,c=0,d=0;b=F[a+8>>2];d=F[a+12>>2];if((b|0)==(d|0)){return 1}while(1){c=F[b>>2];c=ga[F[F[c>>2]+16>>2]](c,F[a+32>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function wa(a){var b=0,c=0,d=0,e=0,f=0;b=da(8)|0;F[b>>2]=15156;F[b>>2]=15200;c=La(a);d=sa(c+13|0);F[d+8>>2]=0;F[d+4>>2]=c;F[d>>2]=c;e=b,f=ta(d+12|0,a,c+1|0),F[e+4>>2]=f;F[b>>2]=15248;ca(b|0,15280,13);V()}function mb(a,b,c,d,e){var f=0;f=ea-256|0;ea=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;ua(f,b&255,d?c:256);if(!d){while(1){Bb(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}Bb(a,f,c)}ea=f+256|0}function kj(a){a=a|0;var b=0;F[a>>2]=5608;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function yj(a){a=a|0;var b=0;F[a>>2]=3592;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function jj(a){a=a|0;var b=0;F[a>>2]=5608;b=F[a+96>>2];if(b){ra(b)}b=F[a+84>>2];if(b){ra(b)}b=F[a+72>>2];if(b){ra(b)}b=F[a+60>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Zd(a,b,c){var d=0,e=0;d=a+4|0;a=rb(a,b);if((d|0)==(a|0)){return 0}b=F[a+32>>2];d=F[a+28>>2];if((b|0)!=(d|0)){Cc(c,b-d|0);e=Dc(c);c=F[a+28>>2];ta(e,c,F[a+32>>2]-c|0)}return(b|0)!=(d|0)}function Wd(a,b){var c=0,d=0;c=F[a+8>>2];a=F[a+12>>2]-c|0;if(a){a=a>>2;d=a>>>0>1?a:1;a=0;while(1){if(F[F[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return-1}function Lf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=ea-16|0;ea=e;a=_(F[a+60>>2],b|0,c|0,d&255,e+8|0)|0;if(a){F[4190]=a;a=-1}else{a=0}ea=e+16|0;fa=a?-1:F[e+12>>2];return(a?-1:F[e+8>>2])|0}function Qd(a){var b=0;b=F[a+72>>2];F[a+72>>2]=b-1|b;b=F[a>>2];if(b&8){F[a>>2]=b|32;return-1}F[a+4>>2]=0;F[a+8>>2]=0;b=F[a+44>>2];F[a+28>>2]=b;F[a+20>>2]=b;F[a+16>>2]=b+F[a+48>>2];return 0}function Fb(a){F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+28>>2]=9;D[a+24|0]=1;F[a+56>>2]=-1;F[a+60>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;return a}function Qf(a,b){a=a|0;b=b|0;var c=0,d=0;Ud(a,b);a:{if((b|0)<0){break a}c=F[a+88>>2];d=F[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){Wa(b,d,c)}F[a+88>>2]=b+c}}function ef(a,b){a=a|0;b=b|0;var c=0,d=0;d=F[a+16>>2];c=0;a:{if(F[a+20>>2]-d>>2<=(b|0)){break a}b=F[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=ub(F[F[a+36>>2]+(b<<2)>>2])}return c|0}function Hg(){var a=0,b=0;a=sa(40);F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=a+4;b=a+16|0;F[b>>2]=0;F[b+4>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+12>>2]=b;F[a+32>>2]=0;F[a+36>>2]=0;return a|0}function Zb(a,b,c){var d=0,e=0;d=ea-16|0;ea=d;a:{if(c>>>0<=10){D[a+11|0]=c;kb(a,b,c);D[d+15|0]=0;D[a+c|0]=G[d+15|0];break a}e=a;a=G[a+11|0];Fd(e,10,c-10|0,a,a,c,b)}ea=d+16|0}function Mh(a){a=a|0;var b=0;F[a+8>>2]=12836;F[a>>2]=12672;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function Hh(a){a=a|0;var b=0;F[a+8>>2]=11900;F[a>>2]=12964;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12152;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}return a|0}function lb(a){var b=0,c=0;b=F[3902];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ha()<<16>>>0){if(!($(a|0)|0)){break a}}F[3902]=a;return b}F[4190]=48;return-1}function tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[a+8>>2];a:{if(D[d+24|0]<=0){break a}if(!qb(d,F[b+4>>2]-F[b>>2]>>2)){break a}e=ga[F[F[a>>2]+32>>2]](a,b,c)|0}return e|0}function Yi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;F[a+4>>2]=b;b=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=b;a=F[a+8>>2];if(G[a+24|0]==3){d=F[a+28>>2]==9}return d|0}function Lh(a){a=a|0;var b=0;F[a+8>>2]=12836;F[a>>2]=12672;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function Fh(a){a=a|0;var b=0;F[a+8>>2]=11900;F[a>>2]=12964;b=F[a+56>>2];if(b){F[a+60>>2]=b;ra(b)}F[a+8>>2]=12152;b=F[a+44>>2];if(b){ra(b)}b=F[a+32>>2];if(b){ra(b)}ra(a)}function wj(a){a=a|0;var b=0;F[a>>2]=3840;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function gj(a){a=a|0;var b=0;F[a>>2]=5844;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Qa(a,b){if(b){Qa(a,F[b>>2]);Qa(a,F[b+4>>2]);a=F[b+28>>2];F[b+28>>2]=0;if(a){Qa(a+12|0,F[a+16>>2]);Pa(a,F[a+4>>2]);ra(a)}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Bi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;F[a+4>>2]=b;d=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=d;return F[F[F[F[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9|0}function Uc(a){F[a+40>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=13312;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;E[a+36>>1]=0;return a}function $f(a,b){a=a|0;b=b|0;var c=0;a:{if(!(ga[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(ga[F[F[a>>2]+40>>2]](a,b)|0)){break a}c=ga[F[F[a>>2]+44>>2]](a)|0}return c|0}function vj(a){a=a|0;var b=0;F[a>>2]=3840;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function fj(a){a=a|0;var b=0;F[a>>2]=5844;b=F[a+76>>2];if(b){ra(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Te(a){a=a|0;var b=0;a:{if(!F[a- -64>>2]|!F[a+68>>2]|(!F[a+44>>2]|!F[a+48>>2])){break a}if(!F[a+52>>2]|!F[a+56>>2]){break a}b=F[a+92>>2]!=-1}return b|0}function Gj(a,b){a=a|0;b=b|0;var c=0;b=F[b+88>>2];if(!(!b|F[b>>2]!=2)){c=a;a=F[b+8>>2];F[c+4>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);c=1}return c|0}function $e(a){a=a|0;var b=0;F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function uc(a){a=a|0;var b=0;a:{if(!F[a+48>>2]|!F[a+52>>2]|(!F[a+28>>2]|!F[a+32>>2])){break a}if(!F[a+36>>2]|!F[a+40>>2]){break a}b=F[a+76>>2]!=-1}return b|0}function Nh(a){a=a|0;var b=0;F[a>>2]=12836;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function De(a){a=a|0;var b=0;F[a>>2]=11900;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12152;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function _e(a){a=a|0;var b=0;F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ga[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function rh(){var a=0,b=0;b=sa(40);F[b>>2]=-1;a=b+8|0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;return b|0}function df(a,b){a=a|0;b=b|0;var c=0,d=0;d=F[a+4>>2];a:{if(d){c=1;if(G[d+36|0]<2){break a}}c=ga[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0}return c|0}function Zh(a){a=a|0;var b=0;F[a>>2]=11900;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12152;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Ih(a){a=a|0;var b=0;F[a>>2]=12836;b=F[a+48>>2];if(b){F[a+52>>2]=b;ra(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Df(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Za(a,F[b+8>>2],f)){Dd(b,c,d,e);return}a=F[a+8>>2];ga[F[F[a>>2]+20>>2]](a,b,c,d,e,f)}function zi(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(G[F[a+4>>2]+36|0]>=2){b=0;if(!(ga[F[F[a>>2]+52>>2]](a)|0)){break a}}b=Wc(a+24|0,F[a+16>>2])}return b|0}function bh(){var a=0;a=sa(108);Yd(a);F[a+84>>2]=0;F[a+88>>2]=0;F[a>>2]=13696;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;return a|0}function Ai(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(G[F[a+4>>2]+36|0]<=1){d=0;if(!(ga[F[F[a>>2]+52>>2]](a)|0)){break a}}d=od(a,b,c)}return d|0}function Xd(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=L(b,12)+a|0;a=F[b+20>>2];if((F[b+24>>2]-a|0)<=0){break a}c=F[a>>2]}return c}function mc(a,b,c,d,e,f,g){F[a>>2]=0;F[a+56>>2]=b;F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=f;F[a+44>>2]=g;D[a+32|0]=e;F[a+28>>2]=d;D[a+24|0]=c}function Xi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(G[F[a+4>>2]+36|0]<=1){d=0;if(!yc(a+24|0,F[a+8>>2],c)){break a}}d=od(a,b,c)}return d|0}function Wi(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(G[F[a+4>>2]+36|0]>=2){b=0;if(!yc(a+24|0,ub(a),c)){break a}}b=Wc(a+24|0,F[a+16>>2])}return b|0}function Uf(a){a=a|0;var b=0;F[a>>2]=13696;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}ac(a);return a|0}function Sf(a){a=a|0;var b=0;F[a>>2]=13696;b=F[a+96>>2];if(b){F[a+100>>2]=b;ra(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;ra(b)}ac(a);ra(a)}function sj(a){a=a|0;var b=0;F[a>>2]=4068;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function dj(a){a=a|0;var b=0;F[a>>2]=6060;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Pa(a,b){if(b){Pa(a,F[b>>2]);Pa(a,F[b+4>>2]);a=F[b+28>>2];if(a){F[b+32>>2]=a;ra(a)}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Qg(){var a=0;a=sa(28);F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;return a|0}function ng(a){a=a|0;var b=0;F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;ra(b)}return a|0}function Dc(a){var b=0;if(G[a+11|0]>>>7|0){b=F[a+4>>2]}else{b=G[a+11|0]}if(!b){$b();V()}if(G[a+11|0]>>>7|0){a=F[a>>2]}return a}function Gf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Za(a,F[b+8>>2],0)){Ed(b,c,d);return}a=F[a+8>>2];ga[F[F[a>>2]+28>>2]](a,b,c,d)}function $g(){var a=0,b=0;a=sa(24);F[a+4>>2]=0;F[a+8>>2]=0;b=a+16|0;F[b>>2]=0;F[b+4>>2]=0;F[a>>2]=a+4;F[a+12>>2]=b;return a|0}function rj(a){a=a|0;var b=0;F[a>>2]=4068;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function cj(a){a=a|0;var b=0;F[a>>2]=6060;b=F[a+76>>2];if(b){ra(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function sa(a){var b=0;a=a?a:1;a:{while(1){b=Gd(a);if(b){break a}b=F[4357];if(b){ga[b|0]();continue}break}Y();V()}return b}function Jb(a,b){if(b){Jb(a,F[b>>2]);Jb(a,F[b+4>>2]);if(D[b+39|0]<0){ra(F[b+28>>2])}if(D[b+27|0]<0){ra(F[b+16>>2])}ra(b)}}function Lb(a,b){a=a|0;b=b|0;var c=0;a:{switch(b|0){case 1:b=1;case 0:F[a+28>>2]=b;c=1;break;default:break a}}return c|0}function Ac(a){a=a|0;var b=0,c=0;F[a>>2]=15200;b=F[a+4>>2]-12|0;c=F[b+8>>2]-1|0;F[b+8>>2]=c;if((c|0)<0){ra(b)}return a|0}function gh(){var a=0;a=sa(24);F[a+8>>2]=0;F[a+12>>2]=0;F[a+4>>2]=-1;F[a>>2]=1140;F[a+16>>2]=0;F[a+20>>2]=0;return a|0}function qd(a,b,c){a=a|0;b=b|0;c=c|0;F[a+4>>2]=b;b=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=b;return 1}function xc(a){a=a|0;var b=0;if(!(!F[a+60>>2]|!F[a+44>>2]|(!F[a+48>>2]|!F[a+52>>2]))){b=F[a+56>>2]!=0}return b|0}function lc(a,b){var c=0,d=0;Va(a,b);b=F[a+28>>2];c=b;d=b+1|0;b=F[a+24>>2]+1|0;F[a+24>>2]=b;F[a+28>>2]=b?c:d}function pj(a){a=a|0;var b=0;F[a>>2]=4304;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function aj(a){a=a|0;var b=0;F[a>>2]=6284;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function Yh(a){a=a|0;var b=0;F[a>>2]=12152;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function Ph(a){a=a|0;var b=0;F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}return a|0}function gg(a){a=a|0;if(a){if(D[a+39|0]<0){ra(F[a+28>>2])}Nc(a+12|0,F[a+16>>2]);Jb(a,F[a+4>>2]);ra(a)}}function Qb(a){a=a|0;var b=0;if(!(!F[a+52>>2]|(!F[a+44>>2]|!F[a+48>>2]))){b=F[a+56>>2]!=0}return b|0}function wc(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|!b|G[b+24|0]!=3)){F[a+60>>2]=b;c=1}return c|0}function oj(a){a=a|0;var b=0;F[a>>2]=4304;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function Xh(a){a=a|0;var b=0;F[a>>2]=12152;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function Oh(a){a=a|0;var b=0;F[a>>2]=12652;b=F[a+36>>2];if(b){ra(b)}b=F[a+24>>2];if(b){ra(b)}ra(a)}function $i(a){a=a|0;var b=0;F[a>>2]=6284;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function sh(a,b,c){a=a|0;b=b|0;c=c|0;F[a+16>>2]=0;F[a+20>>2]=0;F[a>>2]=b;F[a+8>>2]=c;F[a+12>>2]=0}function Se(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|G[b+24|0]!=3)){F[a- -64>>2]=b;c=1}return c|0}function zc(a){var b=0;b=F[a+16>>2];if(b){F[a+20>>2]=b;ra(b)}b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}}function tc(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|G[b+24|0]!=3)){F[a+48>>2]=b;c=1}return c|0}function Cf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Za(a,F[b+8>>2],f)){Dd(b,c,d,e)}}function pf(a){a=a|0;var b=0;F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}return a|0}function Bj(a){a=a|0;var b=0;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}return a|0}function xi(a){a=a|0;var b=0;b=ub(a);return Fe(a+24|0,b?b:F[a+8>>2],F[F[a+4>>2]+32>>2])|0}function gi(a){a=a|0;var b=0;F[a>>2]=1140;b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}return a|0}function of(a){a=a|0;var b=0;F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){Ja(b)}ra(a)}function ei(a){a=a|0;var b=0;F[a>>2]=1140;b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)} +function Vb(a){a=a|0;var b=0;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;ra(b)}ra(a)}function _a(a){var b=0;F[a+16>>2]=0;b=F[a>>2];F[a+4>>2]=b;F[a+12>>2]=b;if(b){ra(b)}}function Nc(a,b){if(b){Nc(a,F[b>>2]);Nc(a,F[b+4>>2]);Jb(b+20|0,F[b+24>>2]);ra(b)}}function ri(a){a=a|0;if(!F[a+44>>2]){return 0}return ga[F[F[a>>2]+48>>2]](a)|0}function qh(a){a=a|0;var b=0;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;ra(b)}ra(a)}}function Kj(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function Hf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Za(a,F[b+8>>2],0)){Ed(b,c,d)}}function pi(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+20>>2]](a,b)|0}function ii(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+12>>2]](a,b)|0}function hi(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ga[F[F[a>>2]+16>>2]](a,b)|0}function pb(){var a=0;a=sa(12);F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;return a|0}function ob(a){a=a|0;var b=0;if(a){b=F[a>>2];if(b){F[a+4>>2]=b;ra(b)}ra(a)}}function Lj(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function _g(a){a=a|0;if(a){Qa(a+12|0,F[a+16>>2]);Pa(a,F[a+4>>2]);ra(a)}}function Wg(a,b,c){a=a|0;b=b|0;c=c|0;F[a+32>>2]=c;F[a+28>>2]=b;return 1}function Pd(a,b,c){a:{if(F[c+76>>2]<0){a=Ec(a,b,c);break a}a=Ec(a,b,c)}}function Bh(a,b){a=a|0;b=b|0;D[b+84|0]=1;F[b+72>>2]=F[b+68>>2];return 1}function ni(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+24>>2]](a)|0}function mi(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+28>>2]](a)|0}function ji(a){a=a|0;a=F[a+48>>2];return ga[F[F[a>>2]+36>>2]](a)|0}function dh(){var a=0;a=sa(8);F[a+4>>2]=-1;F[a>>2]=1032;return a|0}function Bg(a,b,c){a=a|0;b=b|0;c=c|0;return F[F[b+8>>2]+(c<<2)>>2]}function wi(a,b){a=a|0;b=b|0;return Oe(a+24|0,ub(a),F[a+8>>2])|0}function Vi(a,b){a=a|0;b=b|0;return Cd(a+24|0,ub(a),F[a+8>>2])|0}function yi(a,b){a=a|0;b=b|0;return ga[F[F[a>>2]+56>>2]](a,b)|0}function uf(a,b){a=a|0;b=b|0;F[a+12>>2]=-1;F[a+8>>2]=b;return 1}function le(a,b){a=a|0;b=b|0;return ga[F[F[a>>2]+12>>2]](a,b)|0}function Xg(a){a=a|0;if(a){if(D[a+15|0]<0){ra(F[a+4>>2])}ra(a)}}function fh(a,b){a=a|0;b=b|0;return M(J[F[a+8>>2]+(b<<2)>>2])}function Vg(a,b){a=a|0;b=b|0;return M(J[F[a>>2]+(b<<2)>>2])}function ah(a){a=a|0;return(F[a+100>>2]-F[a+96>>2]|0)/12|0}function Yg(a){a=a|0;return(D[a+15|0]<0?F[a+4>>2]:a+4|0)|0}function Tf(a,b){a=a|0;b=b|0;return F[F[a+4>>2]+(b<<2)>>2]}function Kf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fa=0;return 0}function he(a,b){a=a|0;b=b|0;return F[F[a>>2]+(b<<2)>>2]}function Sg(a,b){a=a|0;b=b|0;return E[F[a>>2]+(b<<1)>>1]}function Rg(a,b){a=a|0;b=b|0;return H[F[a>>2]+(b<<1)>>1]}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;return Xd(b,c)|0}function Yd(a){F[a>>2]=13756;ua(a+4|0,0,80);return a}function Mj(a){if(a){return 31-O(a-1^a)|0}return 32} +function ke(a){a=a|0;return F[a+12>>2]-F[a+8>>2]>>2}function dc(a){a=a|0;if(a){ga[F[F[a>>2]+4>>2]](a)}}function Ug(a,b){a=a|0;b=b|0;return D[F[a>>2]+b|0]}function Tg(a,b){a=a|0;b=b|0;return G[F[a>>2]+b|0]}function Pf(a){a=a|0;return F[a+8>>2]-F[a+4>>2]>>2}function kd(a,b){a=a|0;b=b|0;F[a+4>>2]=b;return 1}function ie(a){a=a|0;return F[a+4>>2]-F[a>>2]>>1}function Pc(a){a=a|0;return F[a+4>>2]-F[a>>2]>>2}function je(a){a=a|0;return F[a+4>>2]-F[a>>2]|0}function Ge(a){Uc(a);F[a+44>>2]=0;F[a>>2]=11208}function Bb(a,b,c){if(!(G[a|0]&32)){Ec(b,c,a)}}function zg(a,b){a=a|0;b=b|0;return F[b+4>>2]}function sf(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function bi(a,b){a=a|0;b=b|0;return D[b+24|0]}function Kg(a,b){a=a|0;b=b|0;return F[b+8>>2]}function Fi(a){a=a|0;F[a>>2]=10060;return a|0}function Ej(a){a=a|0;return D[F[a+8>>2]+24|0]}function Ti(a){a=a|0;F[a>>2]=7172;return a|0}function Oi(a){a=a|0;F[a>>2]=8108;return a|0}function Nf(a){a=a|0;return aa(F[a+60>>2])|0}function Ji(a){a=a|0;F[a>>2]=9056;return a|0}function eh(a){a=a|0;return M(J[a+20>>2])}function Ei(a){a=a|0;F[a>>2]=10060;ra(a)}function af(){F[4227]=16796;F[4209]=42} +function Si(a){a=a|0;F[a>>2]=7172;ra(a)}function Ni(a){a=a|0;F[a>>2]=8108;ra(a)}function Ii(a){a=a|0;F[a>>2]=9056;ra(a)}function nh(a){a=a|0;return F[a+88>>2]}function mh(a){a=a|0;return F[a+56>>2]}function jh(a){a=a|0;return F[a+40>>2]}function ih(a){a=a|0;return F[a+48>>2]}function hh(a){a=a|0;return F[a+60>>2]}function fb(a){a=a|0;return F[a+28>>2]}function Qc(a){a=a|0;return F[a+80>>2]}function tj(a,b){a=a|0;b=b|0;return 2}function nd(a,b){a=a|0;b=b|0;return-1}function lh(a){a=a|0;return D[a+24|0]}function kh(a){a=a|0;return G[a+32|0]}function eb(a){a=a|0;return F[a+4>>2]}function Zg(a){a=a|0;return!F[a>>2]|0}function Zc(a){a=a|0;return F[a+8>>2]}function Xe(a,b){a=a|0;b=b|0;return 6}function Md(a,b){a=a|0;b=b|0;return 1}function Ka(a,b){a=a|0;b=b|0;return 0}function ne(a){a=a|0;return F[a>>2]}function kb(a,b,c){if(c){ta(a,b,c)}}function ph(){return Fb(sa(64))|0}function ch(){return Yd(sa(84))|0}function Rc(a){a=a|0;if(a){ra(a)}}function zf(a){a=a|0;Ac(a);ra(a)}function Bf(a){a=a|0;return 1283}function Ua(a){a=a|0;return a|0}function vf(a){a=a|0;ra(sd(a))}function ai(a){a=a|0;ra(ye(a))}function _h(a){a=a|0;ra(we(a))}function Of(a){a=a|0;ra(ac(a))}function Af(a){a=a|0;ra(Ac(a))}function $h(a){a=a|0;ra(xe(a))}function md(a){a=a|0;return 3}function Ze(a){a=a|0;return 4}function Ve(a){a=a|0;return 5}function Ub(a){a=a|0;return 2}function Nb(a){a=a|0;return 6}function Ea(a){a=a|0;return 1}function $a(a){a=a|0;return 0}function Ra(a){a=a|0;ra(a)}function Oa(){wa(1276);V()}function Ma(){wa(1323);V()}function gb(a){a=a|0;V()}function ag(){return 10}function _f(){return 11}function Zf(){return 12}function va(){Oa();V()}function fg(){return 5}function eg(){return 6}function dg(){return 7}function de(){return 3}function cg(){return 8}function ce(){return 4}function cc(){return-1}function bg(){return 9}function bc(){return 1}function Yf(){return-2}function Xf(){return-3}function Wf(){return-4}function Vf(){return-5}function Rb(){return 0}function Mc(){return 2}function Da(){$b();V()}function $b(){Y();V()}function Rd(a){a=a|0} // EMSCRIPTEN_END_FUNCS -e=G;p(pa);var ga=c([null,Ta,Qa,Ub,Ej,si,yh,Cd,wf,xc,Kh,Ue,qj,Bc,li,ei,Ea,mj,Xi,Pi,Le,ri,Fe,Ue,ci,qg,fb,Zg,he,dg,Uf,Of,eb,Ka,If,Ld,Ea,sd,tf,Jf,vf,uf,nf,mf,qd,sf,rf,qf,Ld,pf,of,ef,df,lf,kf,cf,jf,hf,gf,ff,Ye,Xe,qd,bf,af,wc,$e,Dj,_e,Aj,Vb,Ea,db,Qb,Za,od,Ka,Za,Ea,Cj,Bj,fb,fb,Vb,Ub,Qb,zj,yj,xj,We,Qb,Ve,wj,vj,uj,nd,vc,Ea,Ka,uc,Te,tj,sj,rj,Se,vc,Ea,Ka,uc,Re,pj,oj,nj,Nb,Qe,Ea,Ka,Pe,Oe,lj,Ta,Qa,Lb,eb,Mb,fb,Vb,Ea,Qb,kj,fb,Vb,Ub,Qb,jj,ij,hj,We,Qb,Ve,gj,fj,ej,nd,vc,Ea,Ka,uc,Te,dj,cj,bj,Se,vc,Ea,Ka,uc,Re,aj,$i,_i,Nb,Qe,Ea,Ka,Pe,Oe,Zi,Ta,Qa,Lb,eb,Kb,fb,Vb,Za,Ea,Yi,Ye,Xe,Wi,Ui,Vi,Si,Ub,Ti,Ri,Qi,Nb,db,sc,Ea,Ka,rc,Ea,Ub,Ne,Oi,Ta,Qa,Lb,eb,Mb,Mi,Li,Nb,sc,Ea,Ka,rc,Ne,Ki,Ta,Qa,Lb,eb,Kb,Ta,Qa,Za,Ea,Za,od,Ka,Ni,Ji,Ii,Hi,Nb,db,sc,Ea,Ka,rc,Ea,nd,Me,Gi,Ta,Qa,Lb,eb,Mb,Ei,Di,Nb,sc,Ea,Ka,rc,Me,Ci,Ta,Qa,Lb,eb,Kb,Qa,Za,Ea,Za,od,Ka,Fi,Bi,ui,ti,Ai,yi,zi,xi,wi,vi,pi,fb,Ea,Ea,qi,xh,wh,Ea,Za,Ka,Ka,ji,ii,ni,oi,ki,hi,gi,fi,mi,ye,$h,kd,jd,id,hd,di,Ea,db,Yc,xe,_h,kd,jd,id,hd,bi,Ea,db,Yc,we,Zh,kd,jd,id,hd,ai,Ea,db,Yc,Be,Yh,Ce,Xh,Wh,Th,Sh,Rh,Qh,Uh,Ph,Vh,Oh,Nh,Lh,Jh,Ih,Hh,Mh,Gh,Fh,Eh,Dh,Ch,Uc,se,Bh,Ta,Qa,Ah,zh,fb,Za,Ea,Uc,uh,vh,Uc,se,th,Sf,Rf,Qf,Pf,$b,Nf,Ud,Td,Mf,Kf,Lf,Ta,Qa,Hf,Gf,db,Ff,Ta,Qa,Id,Id,Ef,yf,Af,Df,Qa,zf,Bf,Cf,Za,xf]);function ha(){return C.byteLength/65536|0}function ma(na){na=na|0;var ia=ha()|0;var ja=ia+na|0;if(ia=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="draco_decoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["k"];addOnInit(Module["asm"]["j"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function _abort(){abort("")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream,curr){var buffer=SYSCALLS.buffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},get64:function(low,high){return low}};function _fd_close(fd){return 0}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i>2];var len=HEAP32[iov+4>>2];iov+=8;for(var j=0;j>2]=num;return 0}var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="draco_decoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["k"];addOnInit(Module["asm"]["j"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function _abort(){abort("")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream,curr){var buffer=SYSCALLS.buffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},get64:function(low,high){return low}};function _fd_close(fd){return 0}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i>2];var len=HEAP32[iov+4>>2];iov+=8;for(var j=0;j>2]=num;return 0}var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i { var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; return ( function(DracoDecoderModule) { DracoDecoderModule = DracoDecoderModule || {}; -var Module=typeof DracoDecoderModule!=="undefined"?DracoDecoderModule:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;var toLog=e;err("exiting due to exception: "+toLog)}var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status,toThrow){if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=( +var Module=typeof DracoDecoderModule!=="undefined"?DracoDecoderModule:{};var objAssign=Object.assign;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides=objAssign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=(()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}});read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?null:"utf8")};readBinary=(filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret});readAsync=((filename,onload,onerror)=>{var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})});if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}});if(ENVIRONMENT_IS_WORKER){readBinary=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}})}readAsync=((url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=(()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()});xhr.onerror=onerror;xhr.send(null)})}setWindowTitle=(title=>document.title=title)}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);objAssign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=( // EMSCRIPTEN_START_ASM -function instantiate(la){function c(d){d.set=function(a,b){this[a]=b};d.get=function(a){return this[a]};return d}var e;var f=new Uint8Array(123);for(var a=25;a>=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a>4;if(i>2;if(i=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a>4;if(i>2;if(i>2];l=D[c+12>>2];e=D[c+16>>2];a:{if((g|0)>=(l|0)&e>>>0>=G[c+8>>2]|(g|0)>(l|0)){break a}l=E[e+D[c>>2]|0];e=e+1|0;g=e?g:g+1|0;D[c+16>>2]=e;D[c+20>>2]=g;b:{switch(l|0){case 0:j=a;g=b;n=d;a=0;d=0;l=$+-64|0;$=l;D[l+56>>2]=0;D[l+48>>2]=0;D[l+52>>2]=0;D[l+40>>2]=0;D[l+44>>2]=0;D[l+32>>2]=0;D[l+36>>2]=0;D[l+24>>2]=0;D[l+28>>2]=0;D[l+16>>2]=0;D[l+20>>2]=0;D[l+8>>2]=0;D[l+12>>2]=0;c:{if(!ic(l+8|0,c)){break c}if(!Hd(l+8|0,c)|(D[l+20>>2]?0:j)){break c}cc(c,0,0);if(j){r=g<<2;s=D[l+36>>2];u=D[l+48>>2];v=D[l+24>>2];while(1){i=D[l+56>>2];d:{if(i>>>0>16383){break d}a=D[l+52>>2];while(1){if((a|0)<=0){break d}a=a-1|0;D[l+52>>2]=a;i=E[a+u|0]|i<<8;D[l+56>>2]=i;if(i>>>0<16384){continue}break}}a=i&4095;k=D[v+(a<<2)>>2];b=s+(k<<3)|0;D[l+56>>2]=(J(D[b>>2],i>>>12|0)+a|0)-D[b+4>>2];e:{if((g|0)<=0){break e}a=0;if(!E[c+36|0]|k>>>0>32){break c}if(k){w=k&-2;x=k&1;e=d+g|0;b=D[c+32>>2];while(1){m=D[c+28>>2];q=D[c+24>>2];i=0;a=b;f=0;p=0;if((k|0)!=1){while(1){h=(a>>>3|0)+q|0;f:{if(h>>>0>=m>>>0){h=0;break f}h=E[h|0];b=a+1|0;D[c+32>>2]=b;h=h>>>(a&7)&1;a=b}h=h<>>3|0)+q|0;if(t>>>0>>0){f=E[t|0];b=a+1|0;D[c+32>>2]=b;f=f>>>(a&7)&1;a=b}t=i|1;i=i+2|0;f=h|f<>>3|0)+q|0;if(p>>>0>m>>>0){m=E[m|0];b=a+1|0;D[c+32>>2]=b;a=m>>>(a&7)&1}else{a=0}f=a<>2]=f;d=d+1|0;if((e|0)!=(d|0)){continue}break}d=e;break e}pa(n+(d<<2)|0,0,r);d=d+g|0}o=g+o|0;if(j>>>0>o>>>0){continue}break}}B[c+36|0]=0;d=D[c+20>>2];a=0;b=D[c+32>>2]+7|0;a=b>>>0<7?1:a;g=a<<29|b>>>3;b=g+D[c+16>>2]|0;a=(a>>>3|0)+d|0;D[c+16>>2]=b;D[c+20>>2]=b>>>0>>0?a+1|0:a;a=1}b=D[l+36>>2];if(b){D[l+40>>2]=b;ma(b)}b=D[l+24>>2];if(b){D[l+28>>2]=b;ma(b)}b=D[l+8>>2];if(b){D[l+12>>2]=b;ma(b)}$=l- -64|0;return a;case 1:break b;default:break a}}b=0;g=D[c+20>>2];e=D[c+12>>2];f=D[c+16>>2];g:{if((g|0)>=(e|0)&f>>>0>=G[c+8>>2]|(e|0)<(g|0)){break g}e=E[f+D[c>>2]|0];f=f+1|0;g=f?g:g+1|0;D[c+16>>2]=f;D[c+20>>2]=g;h:{switch(e-1|0){case 4:f=$+-64|0;$=f;D[f+56>>2]=0;D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;i:{if(!ic(f+8|0,c)|(D[f+20>>2]?0:a)){break i}if(!Hd(f+8|0,c)){break i}if(!a){b=1;break i}c=D[f+36>>2];g=D[f+48>>2];j=D[f+24>>2];h=D[f+56>>2];while(1){j:{if(h>>>0>16383){break j}b=D[f+52>>2];while(1){if((b|0)<=0){break j}b=b-1|0;D[f+52>>2]=b;h=E[b+g|0]|h<<8;D[f+56>>2]=h;if(h>>>0<16384){continue}break}}b=h&4095;n=D[j+(b<<2)>>2];e=c+(n<<3)|0;h=(J(D[e>>2],h>>>12|0)+b|0)-D[e+4>>2]|0;D[f+56>>2]=h;D[(o<<2)+d>>2]=n;b=1;o=o+1|0;if((o|0)!=(a|0)){continue}break}}a=D[f+36>>2];if(a){D[f+40>>2]=a;ma(a)}a=D[f+24>>2];if(a){D[f+28>>2]=a;ma(a)}a=D[f+8>>2];if(a){D[f+12>>2]=a;ma(a)}$=f- -64|0;break g;case 8:l=a;e=$+-64|0;$=e;D[e+48>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e>>2]=0;D[e+4>>2]=0;k:{l:{if(!F[c+38>>1]){break l}if(!Sa(1,e+12|0,c)){break l}i=D[e+12>>2];b=D[e>>2];a=D[e+4>>2]-b>>2;m:{if(i>>>0>a>>>0){sa(e,i-a|0);i=D[e+12>>2];break m}if(a>>>0<=i>>>0){break m}D[e+4>>2]=b+(i<<2)}a=1;if(!i){break k}q=D[c+8>>2];o=D[c+12>>2];p=D[e>>2];f=0;while(1){g=D[c+20>>2];b=D[c+16>>2];a=0;if((o|0)<=(g|0)&q>>>0<=b>>>0|(g|0)>(o|0)){break k}r=D[c>>2];m=E[r+b|0];a=b+1|0;g=a?g:g+1|0;k=a;D[c+16>>2]=a;a=g;D[c+20>>2]=a;b=m>>>2|0;h=0;n:{o:{p:{q:{g=m&3;switch(g|0){case 0:break o;case 3:break q;default:break p}}b=b+f|0;a=0;if(b>>>0>=i>>>0){break k}pa(p+(f<<2)|0,0,(m&252)+4|0);f=b;break n}while(1){if((a|0)>=(o|0)&k>>>0>=q>>>0|(a|0)>(o|0)){break l}i=E[k+r|0];k=k+1|0;a=k?a:a+1|0;D[c+16>>2]=k;D[c+20>>2]=a;b=i<<(h<<3|6)|b;h=h+1|0;if((g|0)!=(h|0)){continue}break}}D[p+(f<<2)>>2]=b}f=f+1|0;i=D[e+12>>2];if(f>>>0>>0){continue}break}o=e+16|0;q=D[e>>2];a=D[e+16>>2];b=D[e+20>>2]-a|0;f=b>>2;r:{if(f>>>0<=8191){sa(o,8192-f|0);break r}if((b|0)==32768){break r}D[e+20>>2]=a+32768}a=e+28|0;f=D[a>>2];b=D[e+32>>2]-f>>3;s:{if(b>>>0>>0){bb(a,i-b|0);f=D[a>>2];break s}if(b>>>0>i>>>0){D[e+32>>2]=(i<<3)+f}if(!i){break l}}h=0;a=0;while(1){g=q+(h<<2)|0;k=D[g>>2];b=a;m=(h<<3)+f|0;D[m+4>>2]=a;D[m>>2]=k;g=D[g>>2];a=g+a|0;if(a>>>0>8192){break l}t:{if(a>>>0<=b>>>0){break t}m=D[o>>2];k=0;p=g&7;if(p){while(1){D[m+(b<<2)>>2]=h;b=b+1|0;k=k+1|0;if((p|0)!=(k|0)){continue}break}}if(g-1>>>0<=6){break t}while(1){g=m+(b<<2)|0;D[g>>2]=h;D[g+28>>2]=h;D[g+24>>2]=h;D[g+20>>2]=h;D[g+16>>2]=h;D[g+12>>2]=h;D[g+8>>2]=h;D[g+4>>2]=h;b=b+8|0;if((b|0)!=(a|0)){continue}break}}h=h+1|0;if((i|0)!=(h|0)){continue}break}n=(a|0)==8192}a=n}u:{if(!a|(D[e+12>>2]?0:l)){break u}if(!Oa(1,e+56|0,c)){break u}a=D[c+8>>2];b=D[c+16>>2];f=a-b|0;g=D[e+60>>2];n=D[c+20>>2];h=D[c+12>>2]-(n+(a>>>0>>0)|0)|0;a=D[e+56>>2];if((g|0)==(h|0)&f>>>0>>0|g>>>0>h>>>0){break u}g=g+n|0;f=a+b|0;g=f>>>0>>0?g+1|0:g;D[c+16>>2]=f;D[c+20>>2]=g;if((a|0)<=0){break u}c=b+D[c>>2]|0;D[e+40>>2]=c;b=a-1|0;f=c+b|0;g=E[f|0];v:{if(g>>>0<=63){D[e+44>>2]=b;a=E[f|0]&63;break v}w:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break u}b=a-2|0;D[e+44>>2]=b;a=(a+c|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break v;case 1:if(a>>>0<3){break u}b=a-3|0;D[e+44>>2]=b;a=(a+c|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break v;default:break w}}b=a-4|0;D[e+44>>2]=b;a=(a+c|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}f=a+32768|0;D[e+48>>2]=f;if(f>>>0>8388607){break u}if(!l){j=1;break u}g=D[e+28>>2];a=0;n=D[e+16>>2];while(1){x:{if(f>>>0>32767){break x}while(1){if((b|0)<=0){break x}b=b-1|0;D[e+44>>2]=b;f=E[b+c|0]|f<<8;D[e+48>>2]=f;if(f>>>0<32768){continue}break}}j=f&8191;h=D[n+(j<<2)>>2];i=g+(h<<3)|0;f=(J(D[i>>2],f>>>13|0)+j|0)-D[i+4>>2]|0;D[e+48>>2]=f;D[(a<<2)+d>>2]=h;j=1;a=a+1|0;if((l|0)!=(a|0)){continue}break}}a=D[e+28>>2];if(a){D[e+32>>2]=a;ma(a)}a=D[e+16>>2];if(a){D[e+20>>2]=a;ma(a)}a=D[e>>2];if(a){D[e+4>>2]=a;ma(a)}$=e- -64|0;b=j;break g;case 9:l=a;e=$+-64|0;$=e;D[e+48>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e>>2]=0;D[e+4>>2]=0;y:{z:{if(!F[c+38>>1]){break z}if(!Sa(1,e+12|0,c)){break z}i=D[e+12>>2];b=D[e>>2];a=D[e+4>>2]-b>>2;A:{if(i>>>0>a>>>0){sa(e,i-a|0);i=D[e+12>>2];break A}if(a>>>0<=i>>>0){break A}D[e+4>>2]=b+(i<<2)}a=1;if(!i){break y}m=D[c+8>>2];o=D[c+12>>2];q=D[e>>2];f=0;while(1){b=D[c+20>>2];h=D[c+16>>2];a=0;if((o|0)<=(b|0)&m>>>0<=h>>>0|(b|0)>(o|0)){break y}p=D[c>>2];g=E[p+h|0];a=b;b=h+1|0;a=b?a:a+1|0;k=b;D[c+16>>2]=b;D[c+20>>2]=a;b=g>>>2|0;h=0;B:{C:{D:{E:{r=g&3;switch(r|0){case 0:break C;case 3:break E;default:break D}}b=b+f|0;a=0;if(b>>>0>=i>>>0){break y}pa(q+(f<<2)|0,0,(g&252)+4|0);f=b;break B}while(1){if((a|0)>=(o|0)&k>>>0>=m>>>0|(a|0)>(o|0)){break z}i=E[k+p|0];g=a;a=k+1|0;g=a?g:g+1|0;k=a;D[c+16>>2]=a;a=g;D[c+20>>2]=a;b=i<<(h<<3|6)|b;h=h+1|0;if((r|0)!=(h|0)){continue}break}}D[q+(f<<2)>>2]=b}f=f+1|0;i=D[e+12>>2];if(f>>>0>>0){continue}break}o=e+16|0;q=D[e>>2];a=D[e+16>>2];b=D[e+20>>2]-a|0;f=b>>2;F:{if(f>>>0<=32767){sa(o,32768-f|0);break F}if((b|0)==131072){break F}D[e+20>>2]=a+131072}a=e+28|0;f=D[a>>2];b=D[e+32>>2]-f>>3;G:{if(b>>>0>>0){bb(a,i-b|0);f=D[a>>2];break G}if(b>>>0>i>>>0){D[e+32>>2]=(i<<3)+f}if(!i){break z}}h=0;a=0;while(1){g=q+(h<<2)|0;k=D[g>>2];b=a;m=(h<<3)+f|0;D[m+4>>2]=a;D[m>>2]=k;g=D[g>>2];a=g+a|0;if(a>>>0>32768){break z}H:{if(a>>>0<=b>>>0){break H}m=D[o>>2];k=0;p=g&7;if(p){while(1){D[m+(b<<2)>>2]=h;b=b+1|0;k=k+1|0;if((p|0)!=(k|0)){continue}break}}if(g-1>>>0<=6){break H}while(1){g=m+(b<<2)|0;D[g>>2]=h;D[g+28>>2]=h;D[g+24>>2]=h;D[g+20>>2]=h;D[g+16>>2]=h;D[g+12>>2]=h;D[g+8>>2]=h;D[g+4>>2]=h;b=b+8|0;if((b|0)!=(a|0)){continue}break}}h=h+1|0;if((i|0)!=(h|0)){continue}break}n=(a|0)==32768}a=n}I:{if(!a|(D[e+12>>2]?0:l)){break I}if(!Oa(1,e+56|0,c)){break I}a=D[c+8>>2];f=D[c+16>>2];b=f;g=a-b|0;n=D[e+60>>2];h=D[c+20>>2];a=D[c+12>>2]-(h+(a>>>0>>0)|0)|0;b=D[e+56>>2];if((n|0)==(a|0)&g>>>0>>0|a>>>0>>0){break I}a=h+n|0;g=b+f|0;a=g>>>0>>0?a+1|0:a;D[c+16>>2]=g;D[c+20>>2]=a;a=b;if((a|0)<=0){break I}c=f+D[c>>2]|0;D[e+40>>2]=c;b=a-1|0;f=c+b|0;g=E[f|0];J:{if(g>>>0<=63){D[e+44>>2]=b;a=E[f|0]&63;break J}K:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break I}b=a-2|0;D[e+44>>2]=b;a=(a+c|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break J;case 1:if(a>>>0<3){break I}b=a-3|0;D[e+44>>2]=b;a=(a+c|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break J;default:break K}}b=a-4|0;D[e+44>>2]=b;a=(a+c|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}f=a+131072|0;D[e+48>>2]=f;if(f>>>0>33554431){break I}if(!l){j=1;break I}g=D[e+28>>2];a=0;n=D[e+16>>2];while(1){L:{if(f>>>0>131071){break L}while(1){if((b|0)<=0){break L}b=b-1|0;D[e+44>>2]=b;f=E[b+c|0]|f<<8;D[e+48>>2]=f;if(f>>>0<131072){continue}break}}j=f&32767;h=D[n+(j<<2)>>2];i=g+(h<<3)|0;f=(J(D[i>>2],f>>>15|0)+j|0)-D[i+4>>2]|0;D[e+48>>2]=f;D[(a<<2)+d>>2]=h;j=1;a=a+1|0;if((l|0)!=(a|0)){continue}break}}a=D[e+28>>2];if(a){D[e+32>>2]=a;ma(a)}a=D[e+16>>2];if(a){D[e+20>>2]=a;ma(a)}a=D[e>>2];if(a){D[e+4>>2]=a;ma(a)}$=e- -64|0;b=j;break g;case 10:l=a;e=$+-64|0;$=e;D[e+48>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e>>2]=0;D[e+4>>2]=0;M:{N:{if(!F[c+38>>1]){break N}if(!Sa(1,e+12|0,c)){break N}i=D[e+12>>2];b=D[e>>2];a=D[e+4>>2]-b>>2;O:{if(i>>>0>a>>>0){sa(e,i-a|0);i=D[e+12>>2];break O}if(a>>>0<=i>>>0){break O}D[e+4>>2]=b+(i<<2)}a=1;if(!i){break M}q=D[c+8>>2];o=D[c+12>>2];p=D[e>>2];f=0;while(1){g=D[c+20>>2];b=D[c+16>>2];a=0;if((o|0)<=(g|0)&q>>>0<=b>>>0|(g|0)>(o|0)){break M}r=D[c>>2];m=E[r+b|0];a=b+1|0;g=a?g:g+1|0;k=a;D[c+16>>2]=a;a=g;D[c+20>>2]=a;b=m>>>2|0;h=0;P:{Q:{R:{S:{s=m&3;switch(s|0){case 0:break Q;case 3:break S;default:break R}}b=b+f|0;a=0;if(b>>>0>=i>>>0){break M}pa(p+(f<<2)|0,0,(m&252)+4|0);f=b;break P}while(1){if((a|0)>=(o|0)&k>>>0>=q>>>0|(a|0)>(o|0)){break N}i=E[k+r|0];g=a;a=k+1|0;g=a?g:g+1|0;k=a;D[c+16>>2]=a;a=g;D[c+20>>2]=a;b=i<<(h<<3|6)|b;h=h+1|0;if((s|0)!=(h|0)){continue}break}}D[p+(f<<2)>>2]=b}f=f+1|0;i=D[e+12>>2];if(f>>>0>>0){continue}break}o=e+16|0;q=D[e>>2];a=D[e+16>>2];b=D[e+20>>2]-a|0;f=b>>2;T:{if(f>>>0<=65535){sa(o,65536-f|0);break T}if((b|0)==262144){break T}D[e+20>>2]=a+262144}a=e+28|0;f=D[a>>2];b=D[e+32>>2]-f>>3;U:{if(b>>>0>>0){bb(a,i-b|0);f=D[a>>2];break U}if(b>>>0>i>>>0){D[e+32>>2]=(i<<3)+f}if(!i){break N}}h=0;a=0;while(1){g=q+(h<<2)|0;k=D[g>>2];b=a;m=(h<<3)+f|0;D[m+4>>2]=a;D[m>>2]=k;g=D[g>>2];a=g+a|0;if(a>>>0>65536){break N}V:{if(a>>>0<=b>>>0){break V}m=D[o>>2];k=0;p=g&7;if(p){while(1){D[m+(b<<2)>>2]=h;b=b+1|0;k=k+1|0;if((p|0)!=(k|0)){continue}break}}if(g-1>>>0<=6){break V}while(1){g=m+(b<<2)|0;D[g>>2]=h;D[g+28>>2]=h;D[g+24>>2]=h;D[g+20>>2]=h;D[g+16>>2]=h;D[g+12>>2]=h;D[g+8>>2]=h;D[g+4>>2]=h;b=b+8|0;if((b|0)!=(a|0)){continue}break}}h=h+1|0;if((i|0)!=(h|0)){continue}break}n=(a|0)==65536}a=n}W:{if(!a|(D[e+12>>2]?0:l)){break W}if(!Oa(1,e+56|0,c)){break W}a=D[c+8>>2];b=D[c+16>>2];f=a-b|0;g=D[e+60>>2];n=D[c+20>>2];h=D[c+12>>2]-(n+(a>>>0>>0)|0)|0;a=D[e+56>>2];if((g|0)==(h|0)&f>>>0>>0|g>>>0>h>>>0){break W}g=g+n|0;f=a+b|0;g=f>>>0>>0?g+1|0:g;D[c+16>>2]=f;D[c+20>>2]=g;if((a|0)<=0){break W}c=b+D[c>>2]|0;D[e+40>>2]=c;b=a-1|0;f=c+b|0;g=E[f|0];X:{if(g>>>0<=63){D[e+44>>2]=b;a=E[f|0]&63;break X}Y:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break W}b=a-2|0;D[e+44>>2]=b;a=(a+c|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break X;case 1:if(a>>>0<3){break W}b=a-3|0;D[e+44>>2]=b;a=(a+c|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break X;default:break Y}}b=a-4|0;D[e+44>>2]=b;a=(a+c|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}f=a+262144|0;D[e+48>>2]=f;if(f>>>0>67108863){break W}if(!l){j=1;break W}g=D[e+28>>2];a=0;n=D[e+16>>2];while(1){Z:{if(f>>>0>262143){break Z}while(1){if((b|0)<=0){break Z}b=b-1|0;D[e+44>>2]=b;f=E[b+c|0]|f<<8;D[e+48>>2]=f;if(f>>>0<262144){continue}break}}j=f&65535;h=D[n+(j<<2)>>2];i=g+(h<<3)|0;f=(J(D[i>>2],f>>>16|0)+j|0)-D[i+4>>2]|0;D[e+48>>2]=f;D[(a<<2)+d>>2]=h;j=1;a=a+1|0;if((l|0)!=(a|0)){continue}break}}a=D[e+28>>2];if(a){D[e+32>>2]=a;ma(a)}a=D[e+16>>2];if(a){D[e+20>>2]=a;ma(a)}a=D[e>>2];if(a){D[e+4>>2]=a;ma(a)}$=e- -64|0;b=j;break g;case 11:l=a;e=$+-64|0;$=e;D[e+48>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e>>2]=0;D[e+4>>2]=0;_:{$:{if(!F[c+38>>1]){break $}if(!Sa(1,e+12|0,c)){break $}i=D[e+12>>2];b=D[e>>2];a=D[e+4>>2]-b>>2;aa:{if(i>>>0>a>>>0){sa(e,i-a|0);i=D[e+12>>2];break aa}if(a>>>0<=i>>>0){break aa}D[e+4>>2]=b+(i<<2)}a=1;if(!i){break _}q=D[c+8>>2];o=D[c+12>>2];p=D[e>>2];f=0;while(1){g=D[c+20>>2];b=D[c+16>>2];a=0;if((o|0)<=(g|0)&q>>>0<=b>>>0|(g|0)>(o|0)){break _}r=D[c>>2];m=E[r+b|0];a=b+1|0;g=a?g:g+1|0;k=a;D[c+16>>2]=a;a=g;D[c+20>>2]=a;b=m>>>2|0;h=0;ba:{ca:{da:{ea:{g=m&3;switch(g|0){case 0:break ca;case 3:break ea;default:break da}}b=b+f|0;a=0;if(b>>>0>=i>>>0){break _}pa(p+(f<<2)|0,0,(m&252)+4|0);f=b;break ba}while(1){if((a|0)>=(o|0)&k>>>0>=q>>>0|(a|0)>(o|0)){break $}i=E[k+r|0];k=k+1|0;a=k?a:a+1|0;D[c+16>>2]=k;D[c+20>>2]=a;b=i<<(h<<3|6)|b;h=h+1|0;if((g|0)!=(h|0)){continue}break}}D[p+(f<<2)>>2]=b}f=f+1|0;i=D[e+12>>2];if(f>>>0>>0){continue}break}o=e+16|0;q=D[e>>2];a=D[e+16>>2];b=D[e+20>>2]-a|0;f=b>>2;fa:{if(f>>>0<=262143){sa(o,262144-f|0);break fa}if((b|0)==1048576){break fa}D[e+20>>2]=a- -1048576}a=e+28|0;f=D[a>>2];b=D[e+32>>2]-f>>3;ga:{if(b>>>0>>0){bb(a,i-b|0);f=D[a>>2];break ga}if(b>>>0>i>>>0){D[e+32>>2]=(i<<3)+f}if(!i){break $}}h=0;a=0;while(1){g=q+(h<<2)|0;k=D[g>>2];b=a;m=(h<<3)+f|0;D[m+4>>2]=a;D[m>>2]=k;g=D[g>>2];a=g+a|0;if(a>>>0>262144){break $}ha:{if(a>>>0<=b>>>0){break ha}m=D[o>>2];k=0;p=g&7;if(p){while(1){D[m+(b<<2)>>2]=h;b=b+1|0;k=k+1|0;if((p|0)!=(k|0)){continue}break}}if(g-1>>>0<=6){break ha}while(1){g=m+(b<<2)|0;D[g>>2]=h;D[g+28>>2]=h;D[g+24>>2]=h;D[g+20>>2]=h;D[g+16>>2]=h;D[g+12>>2]=h;D[g+8>>2]=h;D[g+4>>2]=h;b=b+8|0;if((b|0)!=(a|0)){continue}break}}h=h+1|0;if((i|0)!=(h|0)){continue}break}n=(a|0)==262144}a=n}ia:{if(!a|(D[e+12>>2]?0:l)){break ia}if(!Oa(1,e+56|0,c)){break ia}a=D[c+8>>2];b=D[c+16>>2];f=a-b|0;g=D[e+60>>2];n=D[c+20>>2];h=D[c+12>>2]-(n+(a>>>0>>0)|0)|0;a=D[e+56>>2];if((g|0)==(h|0)&f>>>0>>0|g>>>0>h>>>0){break ia}g=g+n|0;f=a+b|0;g=f>>>0>>0?g+1|0:g;D[c+16>>2]=f;D[c+20>>2]=g;if((a|0)<=0){break ia}c=b+D[c>>2]|0;D[e+40>>2]=c;b=a-1|0;f=c+b|0;g=E[f|0];ja:{if(g>>>0<=63){D[e+44>>2]=b;a=E[f|0]&63;break ja}ka:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break ia}b=a-2|0;D[e+44>>2]=b;a=(a+c|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break ja;case 1:if(a>>>0<3){break ia}b=a-3|0;D[e+44>>2]=b;a=(a+c|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break ja;default:break ka}}b=a-4|0;D[e+44>>2]=b;a=(a+c|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}f=a- -1048576|0;D[e+48>>2]=f;if(f>>>0>268435455){break ia}if(!l){j=1;break ia}g=D[e+28>>2];a=0;n=D[e+16>>2];while(1){la:{if(f>>>0>1048575){break la}while(1){if((b|0)<=0){break la}b=b-1|0;D[e+44>>2]=b;f=E[b+c|0]|f<<8;D[e+48>>2]=f;if(f>>>0<1048576){continue}break}}j=f&262143;h=D[n+(j<<2)>>2];i=g+(h<<3)|0;f=(J(D[i>>2],f>>>18|0)+j|0)-D[i+4>>2]|0;D[e+48>>2]=f;D[(a<<2)+d>>2]=h;j=1;a=a+1|0;if((l|0)!=(a|0)){continue}break}}a=D[e+28>>2];if(a){D[e+32>>2]=a;ma(a)}a=D[e+16>>2];if(a){D[e+20>>2]=a;ma(a)}a=D[e>>2];if(a){D[e+4>>2]=a;ma(a)}$=e- -64|0;b=j;break g;case 12:l=a;e=$+-64|0;$=e;D[e+48>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e>>2]=0;D[e+4>>2]=0;ma:{na:{if(!F[c+38>>1]){break na}if(!Sa(1,e+12|0,c)){break na}i=D[e+12>>2];b=D[e>>2];a=D[e+4>>2]-b>>2;oa:{if(i>>>0>a>>>0){sa(e,i-a|0);i=D[e+12>>2];break oa}if(a>>>0<=i>>>0){break oa}D[e+4>>2]=b+(i<<2)}a=1;if(!i){break ma}m=D[c+8>>2];o=D[c+12>>2];q=D[e>>2];f=0;while(1){b=D[c+20>>2];h=D[c+16>>2];a=0;if((o|0)<=(b|0)&m>>>0<=h>>>0|(b|0)>(o|0)){break ma}p=D[c>>2];g=E[p+h|0];a=b;b=h+1|0;a=b?a:a+1|0;k=b;D[c+16>>2]=b;D[c+20>>2]=a;b=g>>>2|0;h=0;pa:{qa:{ra:{sa:{r=g&3;switch(r|0){case 0:break qa;case 3:break sa;default:break ra}}b=b+f|0;a=0;if(b>>>0>=i>>>0){break ma}pa(q+(f<<2)|0,0,(g&252)+4|0);f=b;break pa}while(1){if((a|0)>=(o|0)&k>>>0>=m>>>0|(a|0)>(o|0)){break na}i=E[k+p|0];g=a;a=k+1|0;g=a?g:g+1|0;k=a;D[c+16>>2]=a;a=g;D[c+20>>2]=a;b=i<<(h<<3|6)|b;h=h+1|0;if((r|0)!=(h|0)){continue}break}}D[q+(f<<2)>>2]=b}f=f+1|0;i=D[e+12>>2];if(f>>>0>>0){continue}break}o=e+16|0;q=D[e>>2];a=D[e+16>>2];b=D[e+20>>2]-a|0;f=b>>2;ta:{if(f>>>0<=524287){sa(o,524288-f|0);break ta}if((b|0)==2097152){break ta}D[e+20>>2]=a+2097152}a=e+28|0;f=D[a>>2];b=D[e+32>>2]-f>>3;ua:{if(b>>>0>>0){bb(a,i-b|0);f=D[a>>2];break ua}if(b>>>0>i>>>0){D[e+32>>2]=(i<<3)+f}if(!i){break na}}h=0;a=0;while(1){g=q+(h<<2)|0;k=D[g>>2];b=a;m=(h<<3)+f|0;D[m+4>>2]=a;D[m>>2]=k;g=D[g>>2];a=g+a|0;if(a>>>0>524288){break na}va:{if(a>>>0<=b>>>0){break va}m=D[o>>2];k=0;p=g&7;if(p){while(1){D[m+(b<<2)>>2]=h;b=b+1|0;k=k+1|0;if((p|0)!=(k|0)){continue}break}}if(g-1>>>0<=6){break va}while(1){g=m+(b<<2)|0;D[g>>2]=h;D[g+28>>2]=h;D[g+24>>2]=h;D[g+20>>2]=h;D[g+16>>2]=h;D[g+12>>2]=h;D[g+8>>2]=h;D[g+4>>2]=h;b=b+8|0;if((b|0)!=(a|0)){continue}break}}h=h+1|0;if((i|0)!=(h|0)){continue}break}n=(a|0)==524288}a=n}wa:{if(!a|(D[e+12>>2]?0:l)){break wa}if(!Oa(1,e+56|0,c)){break wa}a=D[c+8>>2];f=D[c+16>>2];b=f;g=a-b|0;n=D[e+60>>2];h=D[c+20>>2];a=D[c+12>>2]-(h+(a>>>0>>0)|0)|0;b=D[e+56>>2];if((n|0)==(a|0)&g>>>0>>0|a>>>0>>0){break wa}a=h+n|0;g=b+f|0;a=g>>>0>>0?a+1|0:a;D[c+16>>2]=g;D[c+20>>2]=a;a=b;if((a|0)<=0){break wa}c=f+D[c>>2]|0;D[e+40>>2]=c;b=a-1|0;f=c+b|0;g=E[f|0];xa:{if(g>>>0<=63){D[e+44>>2]=b;a=E[f|0]&63;break xa}ya:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break wa}b=a-2|0;D[e+44>>2]=b;a=(a+c|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break xa;case 1:if(a>>>0<3){break wa}b=a-3|0;D[e+44>>2]=b;a=(a+c|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break xa;default:break ya}}b=a-4|0;D[e+44>>2]=b;a=(a+c|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}f=a+2097152|0;D[e+48>>2]=f;if(f>>>0>536870911){break wa}if(!l){j=1;break wa}g=D[e+28>>2];a=0;n=D[e+16>>2];while(1){za:{if(f>>>0>2097151){break za}while(1){if((b|0)<=0){break za}b=b-1|0;D[e+44>>2]=b;f=E[b+c|0]|f<<8;D[e+48>>2]=f;if(f>>>0<2097152){continue}break}}j=f&524287;h=D[n+(j<<2)>>2];i=g+(h<<3)|0;f=(J(D[i>>2],f>>>19|0)+j|0)-D[i+4>>2]|0;D[e+48>>2]=f;D[(a<<2)+d>>2]=h;j=1;a=a+1|0;if((l|0)!=(a|0)){continue}break}}a=D[e+28>>2];if(a){D[e+32>>2]=a;ma(a)}a=D[e+16>>2];if(a){D[e+20>>2]=a;ma(a)}a=D[e>>2];if(a){D[e+4>>2]=a;ma(a)}$=e- -64|0;b=j;break g;case 17:b=Gd(a,c,d);break g;case 0:case 1:case 2:case 3:case 5:case 6:case 7:f=0;j=$+-64|0;$=j;D[j+48>>2]=0;D[j+40>>2]=0;D[j+44>>2]=0;D[j+32>>2]=0;D[j+36>>2]=0;D[j+24>>2]=0;D[j+28>>2]=0;D[j+16>>2]=0;D[j+20>>2]=0;D[j+8>>2]=0;D[j+12>>2]=0;D[j>>2]=0;D[j+4>>2]=0;Aa:{if(!ic(j,c)|(D[j+12>>2]?0:a)){break Aa}if(!Oa(1,j+56|0,c)){break Aa}b=D[c+8>>2];n=D[c+16>>2];g=n;e=b-g|0;l=D[j+60>>2];h=D[c+20>>2];g=D[c+12>>2]-(h+(b>>>0>>0)|0)|0;b=D[j+56>>2];if((l|0)==(g|0)&e>>>0>>0|g>>>0>>0){break Aa}g=h+l|0;e=b+n|0;g=e>>>0>>0?g+1|0:g;D[c+16>>2]=e;D[c+20>>2]=g;if((b|0)<=0){break Aa}g=n+D[c>>2]|0;D[j+40>>2]=g;c=b-1|0;n=g+c|0;e=E[n|0];Ba:{if(e>>>0<=63){D[j+44>>2]=c;b=E[n|0]&63;break Ba}Ca:{switch((e>>>6|0)-1|0){case 0:if(b>>>0<2){break Aa}c=b-2|0;D[j+44>>2]=c;b=(b+g|0)-2|0;b=E[b+1|0]<<8&16128|E[b|0];break Ba;case 1:if(b>>>0<3){break Aa}c=b-3|0;D[j+44>>2]=c;b=(b+g|0)-3|0;b=E[b+2|0]<<16&4128768|E[b+1|0]<<8|E[b|0];break Ba;default:break Ca}}c=b-4|0;D[j+44>>2]=c;b=(b+g|0)-4|0;b=E[b+2|0]<<16|E[b+3|0]<<24&1056964608|E[b+1|0]<<8|E[b|0]}h=b+16384|0;D[j+48>>2]=h;if(h>>>0>4194303){break Aa}if(!a){f=1;break Aa}b=D[j+28>>2];n=D[j+16>>2];while(1){Da:{if(h>>>0>16383){break Da}while(1){if((c|0)<=0){break Da}c=c-1|0;D[j+44>>2]=c;h=E[c+g|0]|h<<8;D[j+48>>2]=h;if(h>>>0<16384){continue}break}}f=h&4095;e=D[n+(f<<2)>>2];l=b+(e<<3)|0;h=(J(D[l>>2],h>>>12|0)+f|0)-D[l+4>>2]|0;D[j+48>>2]=h;D[(k<<2)+d>>2]=e;f=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=D[j+28>>2];if(a){D[j+32>>2]=a;ma(a)}a=D[j+16>>2];if(a){D[j+20>>2]=a;ma(a)}a=D[j>>2];if(a){D[j+4>>2]=a;ma(a)}$=j- -64|0;b=f;break g;case 13:case 14:case 15:case 16:break h;default:break g}}b=Gd(a,c,d)}f=b}return f}function ch(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,H=0,I=0,K=0,L=0,M=0,N=0;u=$+-64|0;$=u;D[a+132>>2]=0;if(D[a+148>>2]){b=D[a+144>>2];if(b){while(1){h=D[b>>2];ma(b);b=h;if(b){continue}break}}b=0;D[a+144>>2]=0;h=D[a+140>>2];a:{if(!h){break a}if(h-1>>>0>=3){o=h&-4;while(1){g=b<<2;D[g+D[a+136>>2]>>2]=0;D[D[a+136>>2]+(g|4)>>2]=0;D[D[a+136>>2]+(g|8)>>2]=0;D[D[a+136>>2]+(g|12)>>2]=0;b=b+4|0;k=k+4|0;if((o|0)!=(k|0)){continue}break}}h=h&3;if(!h){break a}while(1){D[D[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}}D[a+148>>2]=0}b:{c:{if(!Da(1,u+60|0,D[D[a+4>>2]+32>>2])){break c}D[a+156>>2]=D[u+60>>2];if(!Da(1,u+56|0,D[D[a+4>>2]+32>>2])){break c}c=D[u+56>>2];if(c>>>0>1431655765|G[a+156>>2]>J(c,3)>>>0){break c}h=D[D[a+4>>2]+32>>2];g=D[h+8>>2];o=D[h+12>>2];b=D[h+20>>2];d=g;g=D[h+16>>2];if((o|0)<=(b|0)&d>>>0<=g>>>0|(b|0)>(o|0)){break c}o=E[g+D[h>>2]|0];g=g+1|0;b=g?b:b+1|0;D[h+16>>2]=g;D[h+20>>2]=b;if(!Da(1,u+52|0,h)){break c}s=D[u+52>>2];if(s>>>0>c>>>0|c>>>0>s+((s>>>0)/3|0)>>>0){break c}if(!Da(1,u+48|0,D[D[a+4>>2]+32>>2])){break c}b=D[u+48>>2];if(b>>>0>s>>>0){break c}D[a+28>>2]=D[a+24>>2];g=na(88);Wc(g);h=D[a+8>>2];D[a+8>>2]=g;if(h){ab(h);if(!D[a+8>>2]){break c}}D[a+164>>2]=D[a+160>>2];Hb(a+160|0,c);D[a+176>>2]=D[a+172>>2];Hb(a+172|0,c);D[a- -64>>2]=0;D[a+92>>2]=-1;D[a+84>>2]=-1;D[a+88>>2]=-1;D[a+40>>2]=D[a+36>>2];D[a+52>>2]=D[a+48>>2];D[a+76>>2]=D[a+72>>2];I=a+216|0;xd(I);wd(I,o);if(!Vc(D[a+8>>2],c,b+D[a+156>>2]|0)){break c}h=D[a+156>>2];B[u+8|0]=1;Ea(a+120|0,b+h|0,u+8|0);if((vd(a,D[D[a+4>>2]+32>>2])|0)==-1){break c}f=a+232|0;ud(f,a);M=a,N=ba[D[D[a>>2]+36>>2]](a)|0,D[M+380>>2]=N;D[a+372>>2]=o;D[a+384>>2]=b+D[a+156>>2];b=u+8|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;K=b;o=b;g=0;e=$-16|0;$=e;d:{if(!Ka(f+80|0,f)){break d}if(!rd(f)){break d}b=D[f+4>>2];D[o>>2]=D[f>>2];D[o+4>>2]=b;b=D[f+36>>2];D[o+32>>2]=D[f+32>>2];D[o+36>>2]=b;b=D[f+28>>2];D[o+24>>2]=D[f+24>>2];D[o+28>>2]=b;b=D[f+20>>2];D[o+16>>2]=D[f+16>>2];D[o+20>>2]=b;b=D[f+12>>2];D[o+8>>2]=D[f+8>>2];D[o+12>>2]=b;D[f+176>>2]=2;D[f+180>>2]=7;b=D[f+152>>2];if((b|0)<0){break d}D[e+12>>2]=0;g=2;k=D[f+156>>2];h=D[f+160>>2]-k>>2;e:{if(h>>>0>>0){xa(f+156|0,b-h|0,e+12|0);g=D[f+176>>2];c=D[f+180>>2];break e}c=7;if(b>>>0>=h>>>0){break e}D[f+160>>2]=k+(b<<2)}h=f+184|0;c=(c-g|0)+1|0;b=D[f+188>>2];g=D[f+184>>2];k=(b-g|0)/12|0;f:{if(c>>>0>k>>>0){b=c-k|0;d=D[h+8>>2];g=D[h+4>>2];g:{if(b>>>0<=(d-g|0)/12>>>0){if(b){b=J((J(b,12)-12>>>0)/12|0,12)+12|0;g=pa(g,0,b)+b|0}D[h+4>>2]=g;break g}h:{i:{j:{k=D[h>>2];p=(g-k|0)/12|0;c=p+b|0;if(c>>>0<357913942){d=(d-k|0)/12|0;q=d<<1;d=d>>>0<178956970?c>>>0>q>>>0?c:q:357913941;if(d){if(d>>>0>=357913942){break j}i=na(J(d,12))}c=J(p,12)+i|0;p=J((J(b,12)-12>>>0)/12|0,12)+12|0;b=pa(c,0,p);p=b+p|0;i=J(d,12)+i|0;if((g|0)==(k|0)){break i}while(1){c=c-12|0;g=g-12|0;D[c>>2]=D[g>>2];D[c+4>>2]=D[g+4>>2];D[c+8>>2]=D[g+8>>2];D[g+8>>2]=0;D[g>>2]=0;D[g+4>>2]=0;if((g|0)!=(k|0)){continue}break}D[h+8>>2]=i;b=D[h+4>>2];D[h+4>>2]=p;g=D[h>>2];D[h>>2]=c;if((b|0)==(g|0)){break h}while(1){c=b-12|0;k=D[c>>2];if(k){D[b-8>>2]=k;ma(k)}b=c;if((b|0)!=(g|0)){continue}break}break h}break b}ra(1326);T()}D[h+8>>2]=i;D[h+4>>2]=p;D[h>>2]=b}if(g){ma(g)}}c=D[f+188>>2];break f}if(c>>>0>=k>>>0){c=b;break f}c=g+J(c,12)|0;if((b|0)!=(c|0)){while(1){g=b-12|0;k=D[g>>2];if(k){D[b-8>>2]=k;ma(k)}b=g;if((b|0)!=(c|0)){continue}break}}D[f+188>>2]=c}i=f+196|0;g=D[f+184>>2];b=(c-g|0)/12|0;d=D[f+196>>2];k=D[f+200>>2]-d>>2;k:{if(b>>>0>k>>>0){sa(i,b-k|0);g=D[f+184>>2];c=D[f+188>>2];break k}if(b>>>0>=k>>>0){break k}D[f+200>>2]=d+(b<<2)}if((c|0)==(g|0)){g=1;break d}b=0;while(1){l:{if(!Da(1,e+8|0,o)){break l}g=D[e+8>>2];c=D[f+148>>2];if(g>>>0>(D[c+4>>2]-D[c>>2]>>2>>>0)/3>>>0){break l}if(g){c=D[h>>2];q=J(b,12);k=c+q|0;d=D[k>>2];p=D[k+4>>2]-d>>2;m:{if(p>>>0>>0){sa(k,g-p|0);c=D[h>>2];break m}if(g>>>0>=p>>>0){break m}D[k+4>>2]=d+(g<<2)}jc(g,1,o,D[c+q>>2]);D[D[i>>2]+(b<<2)>>2]=g}g=1;b=b+1|0;if(b>>>0<(D[f+188>>2]-D[f+184>>2]|0)/12>>>0){continue}break d}break}g=0}$=e+16|0;n:{if(!g){break n}c=0;b=0;g=0;q=0;h=0;o=0;k=0;p=0;m=$-96|0;$=m;D[m+72>>2]=0;D[m+64>>2]=0;D[m+68>>2]=0;D[m+48>>2]=0;D[m+52>>2]=0;D[m+40>>2]=0;D[m+44>>2]=0;D[m+56>>2]=1065353216;D[m+32>>2]=0;D[m+24>>2]=0;D[m+28>>2]=0;i=1;f=a;x=D[a+124>>2];o:{p:{q:{r:{if((s|0)<=0){break r}z=f+232|0;L=D[f+216>>2]!=D[f+220>>2];s:{while(1){a=k;k=a+1|0;t:{u:{v:{d=D[f+404>>2];if((d|0)==-1){D[f+400>>2]=7;break v}e=-1;j=D[f+428>>2]+(d<<2)|0;l=D[j>>2];d=l-1|0;D[j>>2]=d;if((l|0)<=0){break q}j=D[D[D[f+416>>2]+J(D[f+404>>2],12)>>2]+(d<<2)>>2];d=D[(j<<2)+8928>>2];D[f+400>>2]=d;if(!j){if((c|0)==(h|0)){break q}d=-1;i=D[f+8>>2];r=D[i+24>>2];t=c-4|0;e=D[t>>2];b=-1;w:{if((e|0)==-1){break w}l=e+1|0;l=(l>>>0)%3|0?l:e-2|0;b=-1;if((l|0)==-1){break w}b=D[D[i>>2]+(l<<2)>>2]}j=D[r+(b<<2)>>2];if((j|0)!=-1){d=j+1|0;d=(d>>>0)%3|0?d:j-2|0}l=D[i+12>>2];j=J(a,3);a=j+1|0;D[l+(e<<2)>>2]=a;w=a<<2;D[w+l>>2]=e;n=j+2|0;D[l+(d<<2)>>2]=n;y=n<<2;D[y+l>>2]=d;l=-1;a=-1;x:{if((e|0)==-1){break x}y:{if((e>>>0)%3|0){e=e-1|0;break y}e=e+2|0;a=-1;if((e|0)==-1){break x}}a=D[D[i>>2]+(e<<2)>>2]}z:{if((d|0)==-1){break z}e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)==-1){break z}l=D[D[i>>2]+(e<<2)>>2]}e=-1;if((a|0)==(b|0)|(b|0)==(l|0)){break q}e=D[i>>2];D[e+(j<<2)>>2]=b;D[e+w>>2]=l;D[e+y>>2]=a;if((a|0)!=-1){D[r+(a<<2)>>2]=n}a=D[f+120>>2]+(b>>>3&536870908)|0;e=D[a>>2];M=a,N=di(b)&e,D[M>>2]=N;D[t>>2]=j;b=h;fc(z,j);break t}A:{switch(d-1|0){case 2:case 4:if((c|0)==(h|0)){break q}d=D[f+8>>2];e=D[d+12>>2];n=(j|0)==3;j=J(a,3);r=(n?2:1)+j|0;t=r<<2;w=c-4|0;b=D[w>>2];D[e+t>>2]=b;D[e+(b<<2)>>2]=r;Ra(d+24|0);e=-1;c=D[f+8>>2];l=D[c+24>>2];if((x|0)>2]-l>>2){break q}c=D[c>>2];e=D[d+28>>2]-D[d+24>>2]|0;d=(e>>2)-1|0;D[c+t>>2]=d;if(e){D[l+(d<<2)>>2]=r}e=n?j:j+2|0;r=c+(j+n<<2)|0;B:{if((b|0)==-1){D[c+(e<<2)>>2]=-1;d=-1;break B}C:{D:{E:{if((b>>>0)%3|0){d=b-1|0;break E}d=b+2|0;if((d|0)==-1){break D}}d=D[c+(d<<2)>>2];D[c+(e<<2)>>2]=d;if((d|0)==-1){break C}D[l+(d<<2)>>2]=e;break C}D[c+(e<<2)>>2]=-1}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;d=-1;if((b|0)==-1){break B}d=D[c+(b<<2)>>2]}D[r>>2]=d;D[w>>2]=j;b=h;break u;case 6:break v;case 0:break A;default:break q}}if((b|0)==(c|0)){break q}g=c-4|0;l=D[g>>2];D[m+68>>2]=g;n=D[m+44>>2];F:{if(!n){break F}e=D[m+40>>2];r=ci(n)>>>0>1;d=a&n+2147483647;G:{if(!r){break G}d=a;if(a>>>0>>0){break G}d=(a>>>0)%(n>>>0)|0}j=d;e=D[e+(j<<2)>>2];if(!e){break F}e=D[e>>2];if(!e){break F}H:{if(!r){d=n-1|0;while(1){n=D[e+4>>2];I:{if((n|0)!=(a|0)){if((j|0)==(d&n)){break I}break F}if((a|0)==D[e+8>>2]){break H}}e=D[e>>2];if(e){continue}break}break F}while(1){d=D[e+4>>2];J:{if((d|0)!=(a|0)){if(d>>>0>=n>>>0){d=(d>>>0)%(n>>>0)|0}if((d|0)==(j|0)){break J}break F}if((a|0)==D[e+8>>2]){break H}}e=D[e>>2];if(e){continue}break}break F}if((g|0)!=(v|0)){D[g>>2]=D[e+12>>2];D[m+68>>2]=c;g=c;break F}c=v-b|0;d=c>>2;h=d+1|0;if(h>>>0>=1073741824){break b}g=c>>1;g=d>>>0<536870911?g>>>0>>0?h:g:1073741823;if(g){if(g>>>0>=1073741824){break p}h=na(g<<2)}else{h=0}d=h+(d<<2)|0;D[d>>2]=D[e+12>>2];v=(g<<2)+h|0;g=d+4|0;if((c|0)>0){oa(h,b,c)}D[m+72>>2]=v;D[m+68>>2]=g;D[m+64>>2]=h;if(b){ma(b)}b=h}if((b|0)==(g|0)){break s}w=g-4|0;c=D[w>>2];e=(c|0)==-1;j=D[f+8>>2];if(!e&D[D[j+12>>2]+(c<<2)>>2]!=-1){break s}n=D[j+12>>2];if((l|0)!=-1&D[n+(l<<2)>>2]!=-1){break s}r=J(a,3);t=r+2|0;D[n+(c<<2)>>2]=t;a=t<<2;D[a+n>>2]=c;i=r+1|0;D[n+(l<<2)>>2]=i;y=i<<2;D[n+y>>2]=l;K:{L:{M:{if(!e){if((c>>>0)%3|0){d=c-1|0;break M}d=c+2|0;if((d|0)!=-1){break M}i=D[j>>2];d=-1;break L}d=-1;i=D[j>>2];D[i+(r<<2)>>2]=-1;e=-1;break K}i=D[j>>2];d=D[i+(d<<2)>>2]}D[(r<<2)+i>>2]=d;e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;e=-1;if((c|0)==-1){break K}e=D[(c<<2)+i>>2]}D[i+y>>2]=e;N:{if((l|0)==-1){D[a+i>>2]=-1;e=-1;c=-1;break N}O:{P:{Q:{if((l>>>0)%3|0){e=l-1|0;break Q}e=l+2|0;if((e|0)==-1){break P}}c=a+i|0;a=D[(e<<2)+i>>2];D[c>>2]=a;if((a|0)==-1){break O}D[D[j+24>>2]+(a<<2)>>2]=t;break O}D[a+i>>2]=-1}e=-1;a=l+1|0;a=(a>>>0)%3|0?a:l-2|0;c=-1;if((a|0)==-1){break N}e=a;c=D[(a<<2)+i>>2]}a=D[f+388>>2];l=d<<2;t=a+l|0;y=a;a=c<<2;D[t>>2]=D[t>>2]+D[y+a>>2];j=D[j+24>>2];a=j+a|0;if((d|0)!=-1){D[j+l>>2]=D[a>>2]}R:{if((e|0)==-1){break R}while(1){D[(e<<2)+i>>2]=d;j=e+1|0;e=(j>>>0)%3|0?j:e-2|0;if((e|0)==-1){break R}e=D[n+(e<<2)>>2];if((e|0)==-1){break R}j=e+1|0;e=(j>>>0)%3|0?j:e-2|0;if((e|0)!=-1){continue}break}}D[a>>2]=-1;S:{if(L){break S}if((p|0)!=(A|0)){D[p>>2]=c;p=p+4|0;D[m+28>>2]=p;break S}T:{a=A-q|0;i=a>>2;o=i+1|0;if(o>>>0<1073741824){e=a>>1;e=i>>>0<536870911?e>>>0>>0?o:e:1073741823;if(e){if(e>>>0>=1073741824){break T}o=na(e<<2)}else{o=0}i=o+(i<<2)|0;D[i>>2]=c;A=(e<<2)+o|0;p=i+4|0;if((a|0)>0){oa(o,q,a)}D[m+32>>2]=A;D[m+28>>2]=p;D[m+24>>2]=o;if(q){ma(q)}q=o;break S}break b}break p}D[w>>2]=r;c=g;fc(z,r);break t}j=D[f+8>>2];Ra(j+24|0);e=-1;d=D[f+8>>2];g=J(a,3);l=D[j+28>>2]-D[j+24>>2]|0;j=l>>2;r=j-1|0;D[D[d>>2]+(g<<2)>>2]=r;Ra(d+24|0);n=g+1|0;D[D[d>>2]+(n<<2)>>2]=(D[d+28>>2]-D[d+24>>2]>>2)-1;d=D[f+8>>2];Ra(d+24|0);t=g+2|0;D[D[d>>2]+(t<<2)>>2]=(D[d+28>>2]-D[d+24>>2]>>2)-1;w=D[f+8>>2];d=D[w+24>>2];if((x|0)>2]-d>>2){break q}U:{V:{if(!l){D[d+(j<<2)>>2]=n;e=1;break V}D[d+(r<<2)>>2]=g;e=0;if((l|0)==-4){break V}D[d+(j<<2)>>2]=n;e=j+1|0;if((e|0)==-1){break U}}D[d+(e<<2)>>2]=t}if((c|0)!=(v|0)){D[c>>2]=g;g=c+4|0;D[m+68>>2]=g;break u}c=v-h|0;d=c>>2;b=d+1|0;if(b>>>0>=1073741824){break b}e=c>>1;e=d>>>0<536870911?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>=1073741824){break p}b=na(e<<2)}else{b=0}d=b+(d<<2)|0;D[d>>2]=g;v=(e<<2)+b|0;g=d+4|0;if((c|0)>0){oa(b,h,c)}D[m+72>>2]=v;D[m+68>>2]=g;D[m+64>>2]=b;if(h){ma(h)}h=b}fc(z,D[g-4>>2]);e=D[f+40>>2];W:{if((e|0)==D[f+36>>2]){break W}d=s+(a^-1)|0;j=g-4|0;while(1){a=D[e-8>>2];if(a>>>0>d>>>0){break s}if((a|0)!=(d|0)){break W}l=E[e-4|0];a=e-12|0;c=D[a>>2];D[f+40>>2]=a;if((c|0)<0){break s}a=D[j>>2];D[m+20>>2]=s+(c^-1);c=m+20|0;D[m+88>>2]=c;qd(m,m+40|0,c,m+88|0);e=D[m>>2];X:{if(l&1){c=-1;if((a|0)==-1){break X}c=a+1|0;c=(c>>>0)%3|0?c:a-2|0;break X}c=-1;if((a|0)==-1){break X}c=a-1|0;if((a>>>0)%3|0){break X}c=a+2|0}D[e+12>>2]=c;e=D[f+40>>2];if((e|0)!=D[f+36>>2]){continue}break}}c=g}i=(k|0)<(s|0);if((k|0)!=(s|0)){continue}break}k=s;break r}e=-1;if(i&1){break q}}e=-1;c=D[f+8>>2];if((x|0)>2]-D[c+24>>2]>>2){break q}if((g|0)!=(h|0)){s=f+60|0;r=f+312|0;while(1){g=g-4|0;j=D[g>>2];D[m+68>>2]=g;Y:{if(Ga(r)){n=D[f+8>>2];l=D[n>>2];if(((D[n+4>>2]-l>>2>>>0)/3|0)<=(k|0)){break q}b=-1;a=-1;d=D[n+24>>2];c=-1;Z:{if((j|0)==-1){break Z}q=j+1|0;q=(q>>>0)%3|0?q:j-2|0;c=-1;if((q|0)==-1){break Z}c=D[l+(q<<2)>>2]}q=c;c=D[d+(q<<2)>>2];_:{if((c|0)==-1){break _}i=c+1|0;c=(i>>>0)%3|0?i:c-2|0;if((c|0)==-1){break _}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){a=D[l+(b<<2)>>2]}b=c}v=-1;i=-1;d=D[d+(a<<2)>>2];c=-1;$:{if((d|0)==-1){break $}x=d+1|0;d=(x>>>0)%3|0?x:d-2|0;c=-1;if((d|0)==-1){break $}c=d+1|0;i=d;c=(c>>>0)%3|0?c:d-2|0;if((c|0)!=-1){c=D[l+(c<<2)>>2]}else{c=-1}}d=D[n+12>>2];n=J(k,3);x=n<<2;D[d+x>>2]=j;D[d+(j<<2)>>2]=n;j=n+1|0;z=j<<2;D[z+d>>2]=b;D[d+(b<<2)>>2]=j;b=n+2|0;A=b<<2;D[A+d>>2]=i;D[d+(i<<2)>>2]=b;D[l+x>>2]=a;i=l+z|0;D[i>>2]=c;c=l+A|0;D[c>>2]=q;d=j>>>0>>0?-1:a;a=D[f+120>>2];q=(d>>>3&536870908)+a|0;l=D[q>>2];M=q,N=di(d)&l,D[M>>2]=N;v=(j|0)!=-1?D[i>>2]:v;i=a+(v>>>3&536870908)|0;d=D[i>>2];M=i,N=di(v)&d,D[M>>2]=N;d=-1;d=(b|0)!=-1?D[c>>2]:d;a=a+(d>>>3&536870908)|0;b=D[a>>2];M=a,N=di(d)&b,D[M>>2]=N;d=D[f+64>>2];a=D[f+68>>2];if((d|0)==a<<5){if((d+1|0)<0){break b}if(d>>>0<=1073741822){b=d+32&-32;a=a<<6;a=a>>>0>>0?b:a}else{a=2147483647}Ta(s,a);d=D[f+64>>2]}k=k+1|0;D[f+64>>2]=d+1;a=D[f+60>>2]+(d>>>3&536870908)|0;D[a>>2]=D[a>>2]|1<>2];if((a|0)!=D[f+80>>2]){D[a>>2]=n;D[f+76>>2]=a+4;break Y}b=D[f+72>>2];c=a-b|0;d=c>>2;a=d+1|0;if(a>>>0>=1073741824){break b}i=c>>1;i=d>>>0<536870911?a>>>0>i>>>0?a:i:1073741823;if(i){if(i>>>0>=1073741824){break p}a=na(i<<2)}else{a=0}d=a+(d<<2)|0;D[d>>2]=n;if((c|0)>0){oa(a,b,c)}D[f+80>>2]=a+(i<<2);D[f+76>>2]=d+4;D[f+72>>2]=a;if(!b){break Y}ma(b);break Y}c=D[f+64>>2];a=D[f+68>>2];if((c|0)==a<<5){if((c+1|0)<0){break b}if(c>>>0<=1073741822){b=c+32&-32;a=a<<6;a=a>>>0>>0?b:a}else{a=2147483647}Ta(s,a);c=D[f+64>>2]}D[f+64>>2]=c+1;a=D[f+60>>2]+(c>>>3&536870908)|0;b=D[a>>2];M=a,N=di(c)&b,D[M>>2]=N;a=D[f+76>>2];if((a|0)!=D[f+80>>2]){D[a>>2]=j;D[f+76>>2]=a+4;break Y}b=D[f+72>>2];c=a-b|0;d=c>>2;a=d+1|0;if(a>>>0>=1073741824){break b}i=c>>1;i=d>>>0<536870911?a>>>0>i>>>0?a:i:1073741823;if(i){if(i>>>0>=1073741824){break p}a=na(i<<2)}else{a=0}d=a+(d<<2)|0;D[d>>2]=j;if((c|0)>0){oa(a,b,c)}D[f+80>>2]=a+(i<<2);D[f+76>>2]=d+4;D[f+72>>2]=a;if(!b){break Y}ma(b)}if((g|0)!=(h|0)){continue}break}c=D[f+8>>2]}if(((D[c+4>>2]-D[c>>2]>>2>>>0)/3|0)!=(k|0)){break q}d=D[c+24>>2];e=D[c+28>>2]-d>>2;if((o|0)==(p|0)){o=p;break q}a=o;while(1){b=D[a>>2];g=e-1|0;i=(g<<2)+d|0;if(D[i>>2]==-1){while(1){g=e-2|0;e=e-1|0;i=(g<<2)+d|0;if(D[i>>2]==-1){continue}break}}if(b>>>0<=g>>>0){D[m>>2]=c;d=D[i>>2];B[m+12|0]=1;D[m+8>>2]=d;D[m+4>>2]=d;if((d|0)!=-1){while(1){D[D[c>>2]+(d<<2)>>2]=b;kc(m);c=D[f+8>>2];d=D[m+8>>2];if((d|0)!=-1){continue}break}}d=D[c+24>>2];k=d+(g<<2)|0;if((b|0)!=-1){D[(b<<2)+d>>2]=D[k>>2]}D[k>>2]=-1;k=1<>2];b=s+(b>>>3&536870908)|0;s=s+(g>>>3&536870908)|0;g=1<>2]&g){k=k|D[b>>2]}else{k=D[b>>2]&(k^-1)}D[b>>2]=k;D[s>>2]=D[s>>2]&(g^-1);e=e-1|0}a=a+4|0;if((p|0)!=(a|0)){continue}break}}if(o){ma(o)}a=D[m+48>>2];if(a){while(1){b=D[a>>2];ma(a);a=b;if(a){continue}break}}a=D[m+40>>2];D[m+40>>2]=0;if(a){ma(a)}if(h){D[m+68>>2]=h;ma(h)}$=m+96|0;break o}ra(1326);T()}if((e|0)==-1){break n}a=D[K+16>>2];b=a+D[K>>2]|0;h=D[K+8>>2];h=h-a|0;a=D[D[f+4>>2]+32>>2];C[a+38>>1]=F[a+38>>1];D[a>>2]=b;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=h;D[a+12>>2]=0;aa:{if(D[f+216>>2]==D[f+220>>2]){break aa}a=D[f+8>>2];if(D[a+4>>2]==D[a>>2]){break aa}b=0;while(1){if(td(f,b)){b=b+3|0;a=D[f+8>>2];if(b>>>0>2]-D[a>>2]>>2>>>0){continue}break aa}break}break n}if(E[f+308|0]){B[f+308|0]=0;b=D[f+292>>2];a=0;h=D[f+304>>2]+7|0;a=h>>>0<7?1:a;c=a>>>3|0;h=a<<29|h>>>3;a=h+D[f+288>>2]|0;b=b+c|0;D[f+288>>2]=a;D[f+292>>2]=a>>>0>>0?b+1|0:b}b=D[f+216>>2];if((b|0)!=D[f+220>>2]){while(1){a=J(H,144);Tc((a+b|0)+4|0,D[f+8>>2]);c=D[I>>2];h=a+c|0;b=D[h+132>>2];h=D[h+136>>2];if((b|0)!=(h|0)){while(1){Rc((a+c|0)+4|0,D[b>>2]);c=D[I>>2];b=b+4|0;if((h|0)!=(b|0)){continue}break}}Sc((a+c|0)+4|0);H=H+1|0;b=D[f+216>>2];if(H>>>0<(D[f+220>>2]-b|0)/144>>>0){continue}break}}a=D[f+8>>2];Gb(f+184|0,D[a+28>>2]-D[a+24>>2]>>2);c=D[f+216>>2];if((c|0)!=D[f+220>>2]){b=0;while(1){a=J(b,144)+c|0;h=D[a+60>>2]-D[a+56>>2]>>2;c=a+104|0;a=D[f+8>>2];a=D[a+28>>2]-D[a+24>>2]>>2;Gb(c,(a|0)>(h|0)?a:h);b=b+1|0;c=D[f+216>>2];if(b>>>0<(D[f+220>>2]-c|0)/144>>>0){continue}break}}H=sd(f,e)}}$=u- -64|0;return H|0}qa();T()}function eh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,H=0,I=0,K=0,L=0;v=$+-64|0;$=v;D[a+132>>2]=0;if(D[a+148>>2]){b=D[a+144>>2];if(b){while(1){e=D[b>>2];ma(b);b=e;if(e){continue}break}}b=0;D[a+144>>2]=0;e=D[a+140>>2];a:{if(!e){break a}if(e-1>>>0>=3){h=e&-4;while(1){c=b<<2;D[c+D[a+136>>2]>>2]=0;D[D[a+136>>2]+(c|4)>>2]=0;D[D[a+136>>2]+(c|8)>>2]=0;D[D[a+136>>2]+(c|12)>>2]=0;b=b+4|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}e=e&3;if(!e){break a}while(1){D[D[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}}D[a+148>>2]=0}b:{if(!Da(1,v+60|0,D[D[a+4>>2]+32>>2])){break b}D[a+156>>2]=D[v+60>>2];if(!Da(1,v+56|0,D[D[a+4>>2]+32>>2])){break b}d=D[v+56>>2];if(d>>>0>1431655765|G[a+156>>2]>J(d,3)>>>0){break b}e=D[D[a+4>>2]+32>>2];c=D[e+8>>2];n=D[e+12>>2];b=D[e+20>>2];f=c;c=D[e+16>>2];if((n|0)<=(b|0)&f>>>0<=c>>>0|(b|0)>(n|0)){break b}n=E[c+D[e>>2]|0];c=c+1|0;b=c?b:b+1|0;D[e+16>>2]=c;D[e+20>>2]=b;if(!Da(1,v+52|0,e)){break b}m=D[v+52>>2];if(m>>>0>d>>>0|d>>>0>m+((m>>>0)/3|0)>>>0){break b}if(!Da(1,v+48|0,D[D[a+4>>2]+32>>2])){break b}e=D[v+48>>2];if(e>>>0>m>>>0){break b}D[a+28>>2]=D[a+24>>2];c=na(88);Wc(c);b=D[a+8>>2];D[a+8>>2]=c;if(b){ab(b);if(!D[a+8>>2]){break b}}D[a+164>>2]=D[a+160>>2];Hb(a+160|0,d);D[a+176>>2]=D[a+172>>2];Hb(a+172|0,d);D[a- -64>>2]=0;D[a+92>>2]=-1;D[a+84>>2]=-1;D[a+88>>2]=-1;D[a+40>>2]=D[a+36>>2];D[a+52>>2]=D[a+48>>2];D[a+76>>2]=D[a+72>>2];H=a+216|0;xd(H);wd(H,n);if(!Vc(D[a+8>>2],d,e+D[a+156>>2]|0)){break b}b=D[a+156>>2];B[v+8|0]=1;Ea(a+120|0,b+e|0,v+8|0);if((vd(a,D[D[a+4>>2]+32>>2])|0)==-1){break b}e=a+232|0;ud(e,a);D[a+372>>2]=n;o=v+8|0;C[o+38>>1]=0;D[o>>2]=0;D[o+8>>2]=0;D[o+12>>2]=0;D[o+16>>2]=0;D[o+20>>2]=0;D[o+24>>2]=0;D[o+28>>2]=0;B[o+29|0]=0;B[o+30|0]=0;B[o+31|0]=0;B[o+32|0]=0;B[o+33|0]=0;B[o+34|0]=0;B[o+35|0]=0;B[o+36|0]=0;b=0;n=$-16|0;$=n;d=D[e+4>>2];D[e+40>>2]=D[e>>2];D[e+44>>2]=d;d=D[e+36>>2];D[e+72>>2]=D[e+32>>2];D[e+76>>2]=d;c=D[e+28>>2];d=e- -64|0;D[d>>2]=D[e+24>>2];D[d+4>>2]=c;d=D[e+20>>2];D[e+56>>2]=D[e+16>>2];D[e+60>>2]=d;d=D[e+12>>2];D[e+48>>2]=D[e+8>>2];D[e+52>>2]=d;c:{d:{if(cc(e+40|0,1,n+8|0)){d=D[e+44>>2];D[e>>2]=D[e+40>>2];D[e+4>>2]=d;d=D[e+76>>2];D[e+32>>2]=D[e+72>>2];D[e+36>>2]=d;d=D[e+68>>2];D[e+24>>2]=D[e+64>>2];D[e+28>>2]=d;c=D[e+60>>2];h=c;d=D[e+56>>2];D[e+16>>2]=d;D[e+20>>2]=c;f=D[e+52>>2];c=D[e+48>>2];D[e+8>>2]=c;D[e+12>>2]=f;g=c-d|0;k=D[n+12>>2];f=f-((c>>>0>>0)+h|0)|0;c=D[n+8>>2];if((k|0)==(f|0)&g>>>0>=c>>>0|f>>>0>k>>>0){break d}}break c}f=c+d|0;d=h+k|0;D[e+16>>2]=f;D[e+20>>2]=c>>>0>f>>>0?d+1|0:d;if(!Ka(e+80|0,e)){break c}if(!rd(e)){break c}b=D[e+4>>2];D[o>>2]=D[e>>2];D[o+4>>2]=b;b=D[e+36>>2];D[o+32>>2]=D[e+32>>2];D[o+36>>2]=b;b=D[e+28>>2];D[o+24>>2]=D[e+24>>2];D[o+28>>2]=b;b=D[e+20>>2];D[o+16>>2]=D[e+16>>2];D[o+20>>2]=b;b=D[e+12>>2];D[o+8>>2]=D[e+8>>2];D[o+12>>2]=b;b=1}$=n+16|0;e:{if(!b){break e}d=0;e=0;b=0;n=0;k=$-96|0;$=k;D[k+72>>2]=0;D[k+64>>2]=0;D[k+68>>2]=0;D[k+48>>2]=0;D[k+52>>2]=0;D[k+40>>2]=0;D[k+44>>2]=0;D[k+56>>2]=1065353216;D[k+32>>2]=0;D[k+24>>2]=0;D[k+28>>2]=0;i=1;h=a;t=D[a+124>>2];f:{g:{h:{i:{j:{k:{l:{m:{if((m|0)<=0){break m}I=D[h+216>>2]!=D[h+220>>2];while(1){f=r;r=f+1|0;n:{o:{p:{q:{r:{s:{t:{u:{v:{w:{x:{if(!E[h+308|0]){break x}y:{z:{g=D[h+296>>2];c=D[h+304>>2];a=g+(c>>>3|0)|0;l=D[h+300>>2];if(a>>>0>=l>>>0){break z}j=E[a|0];a=c+1|0;D[h+304>>2]=a;if(!(j>>>(c&7)&1)){break z}j=a>>>3|0;p=g+j|0;A:{if(p>>>0>=l>>>0){c=a;a=0;break A}p=E[p|0];c=c+2|0;D[h+304>>2]=c;j=c>>>3|0;a=p>>>(a&7)&1}g=g+j|0;if(g>>>0>>0){g=E[g|0];D[h+304>>2]=c+1;c=g>>>(c&7)<<1&2}else{c=0}a=(a|c)<<1;switch(a-1|0){case 0:case 2:case 4:break h;case 5:break w;case 1:case 3:break y;default:break x}}if((b|0)==(e|0)){c=-1;break l}j=-1;g=D[h+8>>2];p=D[g+24>>2];s=e-4|0;c=D[s>>2];a=-1;B:{if((c|0)==-1){break B}i=c+1|0;i=(i>>>0)%3|0?i:c-2|0;a=-1;if((i|0)==-1){break B}a=D[D[g>>2]+(i<<2)>>2]}d=D[p+(a<<2)>>2];if((d|0)!=-1){i=d+1|0;j=(i>>>0)%3|0?i:d-2|0}d=D[g+12>>2];f=J(f,3);i=f+1|0;D[d+(c<<2)>>2]=i;w=i<<2;D[w+d>>2]=c;l=f+2|0;D[d+(j<<2)>>2]=l;x=l<<2;D[x+d>>2]=j;i=-1;d=-1;C:{if((c|0)==-1){break C}D:{if((c>>>0)%3|0){c=c-1|0;break D}c=c+2|0;d=-1;if((c|0)==-1){break C}}d=D[D[g>>2]+(c<<2)>>2]}E:{if((j|0)==-1){break E}c=j+1|0;c=(c>>>0)%3|0?c:j-2|0;if((c|0)==-1){break E}i=D[D[g>>2]+(c<<2)>>2]}c=-1;if((a|0)==(d|0)|(a|0)==(i|0)){break l}c=D[g>>2];D[c+(f<<2)>>2]=a;D[c+w>>2]=i;D[c+x>>2]=d;if((d|0)!=-1){D[p+(d<<2)>>2]=l}d=D[h+120>>2]+(a>>>3&536870908)|0;c=D[d>>2];K=d,L=di(a)&c,D[K>>2]=L;D[s>>2]=f;d=b;break n}if((b|0)==(e|0)){c=-1;break l}d=D[h+8>>2];c=D[d+12>>2];g=J(f,3);p=(a|1)==5;j=g+(p?2:1)|0;w=j<<2;x=e-4|0;a=D[x>>2];D[c+w>>2]=a;D[c+(a<<2)>>2]=j;Ra(d+24|0);c=-1;s=D[h+8>>2];l=D[s+24>>2];if((t|0)>2]-l>>2){break l}c=D[s>>2];d=D[d+28>>2]-D[d+24>>2]|0;s=(d>>2)-1|0;D[c+w>>2]=s;if(d){D[l+(s<<2)>>2]=j}j=p?g:g+2|0;p=c+(g+p<<2)|0;F:{if((a|0)==-1){D[c+(j<<2)>>2]=-1;d=-1;break F}G:{H:{I:{if((a>>>0)%3|0){d=a-1|0;break I}d=a+2|0;if((d|0)==-1){break H}}d=D[c+(d<<2)>>2];D[c+(j<<2)>>2]=d;if((d|0)==-1){break G}D[l+(d<<2)>>2]=j;break G}D[c+(j<<2)>>2]=-1}j=a+1|0;a=(j>>>0)%3|0?j:a-2|0;d=-1;if((a|0)==-1){break F}d=D[c+(a<<2)>>2]}D[p>>2]=d;D[x>>2]=g;d=b;break v}if((b|0)==(e|0)){c=-1;break l}a=e-4|0;l=D[a>>2];D[k+68>>2]=a;j=D[k+44>>2];J:{if(!j){e=a;break J}g=ci(j)>>>0>1;K:{if(!g){d=f&j+2147483647;break K}d=f;if(j>>>0>d>>>0){break K}d=(f>>>0)%(j>>>0)|0}c=D[D[k+40>>2]+(d<<2)>>2];if(!c){e=a;break J}c=D[c>>2];if(!c){e=a;break J}L:{if(!g){g=j-1|0;while(1){j=D[c+4>>2];M:{if((j|0)!=(f|0)){if((g&j)==(d|0)){break M}e=a;break J}if((f|0)==D[c+8>>2]){break L}}c=D[c>>2];if(c){continue}break}e=a;break J}while(1){g=D[c+4>>2];N:{if((g|0)!=(f|0)){if(g>>>0>=j>>>0){g=(g>>>0)%(j>>>0)|0}if((d|0)==(g|0)){break N}e=a;break J}if((f|0)==D[c+8>>2]){break L}}c=D[c>>2];if(c){continue}break}e=a;break J}if((a|0)!=(u|0)){D[a>>2]=D[c+12>>2];D[k+68>>2]=e;break J}a=u-b|0;d=a>>2;e=d+1|0;if(e>>>0>=1073741824){break t}q=a>>1;e=d>>>0<536870911?e>>>0>q>>>0?e:q:1073741823;if(e){if(e>>>0>=1073741824){break g}q=na(e<<2)}else{q=0}d=q+(d<<2)|0;D[d>>2]=D[c+12>>2];u=(e<<2)+q|0;e=d+4|0;if((a|0)>0){oa(q,b,a)}D[k+72>>2]=u;D[k+68>>2]=e;D[k+64>>2]=q;if(!b){break J}ma(b)}if((e|0)==(q|0)){break u}w=e-4|0;a=D[w>>2];d=(a|0)==-1;b=D[h+8>>2];if(!d&D[D[b+12>>2]+(a<<2)>>2]!=-1){break u}g=D[b+12>>2];if((l|0)!=-1&D[g+(l<<2)>>2]!=-1){break u}f=J(f,3);s=f+2|0;D[g+(a<<2)>>2]=s;p=s<<2;D[p+g>>2]=a;c=f+1|0;D[g+(l<<2)>>2]=c;x=c<<2;D[x+g>>2]=l;if(d){break s}if((a>>>0)%3|0){i=a-1|0;break q}i=a+2|0;if((i|0)!=-1){break q}j=D[b>>2];d=-1;break p}j=D[h+8>>2];Ra(j+24|0);c=-1;g=D[h+8>>2];a=J(f,3);l=D[j+28>>2]-D[j+24>>2]|0;j=l>>2;s=j-1|0;D[D[g>>2]+(a<<2)>>2]=s;Ra(g+24|0);p=a+1|0;D[D[g>>2]+(p<<2)>>2]=(D[g+28>>2]-D[g+24>>2]>>2)-1;g=D[h+8>>2];Ra(g+24|0);w=a+2|0;D[D[g>>2]+(w<<2)>>2]=(D[g+28>>2]-D[g+24>>2]>>2)-1;x=D[h+8>>2];g=D[x+24>>2];if((t|0)>2]-g>>2){break l}O:{P:{if(!l){D[g+(j<<2)>>2]=p;c=1;break P}D[g+(s<<2)>>2]=a;c=0;if((l|0)==-4){break P}D[g+(j<<2)>>2]=p;c=j+1|0;if((c|0)==-1){break O}}D[g+(c<<2)>>2]=w}if((e|0)!=(u|0)){D[e>>2]=a;e=e+4|0;D[k+68>>2]=e;break v}b=e-d|0;c=b>>2;e=c+1|0;if(e>>>0>=1073741824){break r}q=b>>1;e=c>>>0<536870911?e>>>0>q>>>0?e:q:1073741823;if(e){if(e>>>0>=1073741824){break g}q=na(e<<2)}else{q=0}c=q+(c<<2)|0;D[c>>2]=a;u=(e<<2)+q|0;e=c+4|0;if((b|0)>0){oa(q,d,b)}D[k+72>>2]=u;D[k+68>>2]=e;D[k+64>>2]=q;if(d){ma(d)}b=q;d=b}c=D[h+40>>2];if((c|0)==D[h+36>>2]){break n}f=m+(f^-1)|0;g=e-4|0;while(1){a=D[c-8>>2];if(a>>>0>f>>>0){break u}if((a|0)!=(f|0)){break n}j=E[c-4|0];a=c-12|0;c=D[a>>2];D[h+40>>2]=a;if((c|0)<0){break u}a=D[g>>2];D[k+20>>2]=m+(c^-1);c=k+20|0;D[k+88>>2]=c;qd(k,k+40|0,c,k+88|0);p=D[k>>2];Q:{if(j&1){c=-1;if((a|0)==-1){break Q}c=a+1|0;c=(c>>>0)%3|0?c:a-2|0;break Q}c=-1;if((a|0)==-1){break Q}c=a-1|0;if((a>>>0)%3|0){break Q}c=a+2|0}D[p+12>>2]=c;c=D[h+40>>2];if((c|0)!=D[h+36>>2]){continue}break}break n}c=-1;if(i&1){break l}break m}qa();T()}d=-1;j=D[b>>2];D[j+(f<<2)>>2]=-1;c=-1;break o}qa();T()}j=D[b>>2];d=D[j+(i<<2)>>2]}D[(f<<2)+j>>2]=d;i=a+1|0;a=(i>>>0)%3|0?i:a-2|0;c=-1;if((a|0)==-1){break o}c=D[(a<<2)+j>>2]}D[j+x>>2]=c;R:{if((l|0)==-1){D[j+p>>2]=-1;i=-1;c=-1;break R}S:{T:{U:{if((l>>>0)%3|0){c=l-1|0;break U}c=l+2|0;if((c|0)==-1){break T}}a=D[(c<<2)+j>>2];D[j+p>>2]=a;if((a|0)==-1){break S}D[D[b+24>>2]+(a<<2)>>2]=s;break S}D[j+p>>2]=-1}i=-1;a=l+1|0;a=(a>>>0)%3|0?a:l-2|0;c=-1;if((a|0)==-1){break R}i=D[(a<<2)+j>>2];c=a}b=D[b+24>>2];a=b+(i<<2)|0;if((d|0)!=-1){D[b+(d<<2)>>2]=D[a>>2]}V:{if((c|0)==-1){break V}while(1){D[(c<<2)+j>>2]=d;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1){break V}b=D[g+(b<<2)>>2];if((b|0)==-1){break V}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}D[a>>2]=-1;W:{if(I){break W}if((y|0)!=(z|0)){D[y>>2]=i;y=y+4|0;D[k+28>>2]=y;break W}X:{b=z-n|0;c=b>>2;a=c+1|0;if(a>>>0<1073741824){d=b>>1;d=c>>>0<536870911?a>>>0>d>>>0?a:d:1073741823;if(d){if(d>>>0>=1073741824){break X}a=na(d<<2)}else{a=0}c=a+(c<<2)|0;D[c>>2]=i;z=a+(d<<2)|0;y=c+4|0;if((b|0)>0){oa(a,n,b)}D[k+32>>2]=z;D[k+28>>2]=y;D[k+24>>2]=a;if(n){ma(n)}n=a;break W}qa();T()}break g}D[w>>2]=f;b=q;d=b}i=(m|0)>(r|0);if((m|0)!=(r|0)){continue}break}r=m}c=-1;i=D[h+8>>2];if((t|0)>2]-D[i+24>>2]>>2){break l}if((e|0)!=(q|0)){a=h+60|0;p=h+312|0;while(1){e=e-4|0;l=D[e>>2];D[k+68>>2]=e;Y:{if(Ga(p)){t=D[h+8>>2];u=D[t>>2];if(((D[t+4>>2]-u>>2>>>0)/3|0)<=(r|0)){break l}b=-1;d=-1;m=D[t+24>>2];f=-1;Z:{if((l|0)==-1){break Z}g=l+1|0;g=(g>>>0)%3|0?g:l-2|0;f=-1;if((g|0)==-1){break Z}f=D[u+(g<<2)>>2]}g=f;f=D[m+(g<<2)>>2];_:{if((f|0)==-1){break _}i=f+1|0;f=(i>>>0)%3|0?i:f-2|0;if((f|0)==-1){break _}b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)!=-1){d=D[u+(b<<2)>>2]}b=f}i=-1;j=-1;m=D[m+(d<<2)>>2];f=-1;$:{if((m|0)==-1){break $}z=m+1|0;m=(z>>>0)%3|0?z:m-2|0;f=-1;if((m|0)==-1){break $}f=m+1|0;f=(f>>>0)%3|0?f:m-2|0;if((f|0)!=-1){j=D[u+(f<<2)>>2]}f=m}t=D[t+12>>2];m=J(r,3);z=m<<2;D[t+z>>2]=l;D[t+(l<<2)>>2]=m;l=m+1|0;s=l<<2;D[s+t>>2]=b;D[t+(b<<2)>>2]=l;b=m+2|0;I=b<<2;D[I+t>>2]=f;D[t+(f<<2)>>2]=b;D[u+z>>2]=d;f=u+s|0;D[f>>2]=j;j=u+I|0;D[j>>2]=g;g=l>>>0>>0?-1:d;d=D[h+120>>2];u=(g>>>3&536870908)+d|0;t=D[u>>2];K=u,L=di(g)&t,D[K>>2]=L;i=(l|0)!=-1?D[f>>2]:i;f=d+(i>>>3&536870908)|0;g=D[f>>2];K=f,L=di(i)&g,D[K>>2]=L;i=-1;i=(b|0)!=-1?D[j>>2]:i;b=d+(i>>>3&536870908)|0;d=D[b>>2];K=b,L=di(i)&d,D[K>>2]=L;i=D[h+64>>2];b=D[h+68>>2];if((i|0)==b<<5){if((i+1|0)<0){break k}if(i>>>0<=1073741822){d=i+32&-32;b=b<<6;b=b>>>0>>0?d:b}else{b=2147483647}Ta(a,b);i=D[h+64>>2]}r=r+1|0;D[h+64>>2]=i+1;b=D[h+60>>2]+(i>>>3&536870908)|0;D[b>>2]=D[b>>2]|1<>2];if((b|0)!=D[h+80>>2]){D[b>>2]=m;D[h+76>>2]=b+4;break Y}d=D[h+72>>2];f=b-d|0;i=f>>2;b=i+1|0;if(b>>>0>=1073741824){break j}g=f>>1;g=i>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break g}b=na(g<<2)}else{b=0}i=b+(i<<2)|0;D[i>>2]=m;if((f|0)>0){oa(b,d,f)}D[h+80>>2]=b+(g<<2);D[h+76>>2]=i+4;D[h+72>>2]=b;if(!d){break Y}ma(d);break Y}b=D[h+64>>2];d=D[h+68>>2];if((b|0)==d<<5){if((b+1|0)<0){break k}if(b>>>0<=1073741822){b=b+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Ta(a,b);b=D[h+64>>2]}D[h+64>>2]=b+1;d=D[h+60>>2]+(b>>>3&536870908)|0;f=D[d>>2];K=d,L=di(b)&f,D[K>>2]=L;b=D[h+76>>2];if((b|0)!=D[h+80>>2]){D[b>>2]=l;D[h+76>>2]=b+4;break Y}d=D[h+72>>2];f=b-d|0;g=f>>2;b=g+1|0;if(b>>>0>=1073741824){break j}m=f>>1;m=g>>>0<536870911?b>>>0>m>>>0?b:m:1073741823;if(m){if(m>>>0>=1073741824){break i}b=na(m<<2)}else{b=0}g=b+(g<<2)|0;D[g>>2]=l;if((f|0)>0){oa(b,d,f)}D[h+80>>2]=b+(m<<2);D[h+76>>2]=g+4;D[h+72>>2]=b;if(!d){break Y}ma(d)}if((e|0)!=(q|0)){continue}break}i=D[h+8>>2]}if(((D[i+4>>2]-D[i>>2]>>2>>>0)/3|0)!=(r|0)){break l}r=D[i+24>>2];c=D[i+28>>2]-r>>2;if((n|0)==(y|0)){n=y;break l}d=n;while(1){a=D[d>>2];e=c-1|0;j=(e<<2)+r|0;if(D[j>>2]==-1){while(1){e=c-2|0;c=c-1|0;j=(e<<2)+r|0;if(D[j>>2]==-1){continue}break}}if(a>>>0<=e>>>0){D[k>>2]=i;r=D[j>>2];B[k+12|0]=1;D[k+8>>2]=r;D[k+4>>2]=r;if((r|0)!=-1){while(1){D[D[i>>2]+(r<<2)>>2]=a;kc(k);i=D[h+8>>2];r=D[k+8>>2];if((r|0)!=-1){continue}break}}r=D[i+24>>2];b=r+(e<<2)|0;if((a|0)!=-1){D[(a<<2)+r>>2]=D[b>>2]}D[b>>2]=-1;b=1<>2];a=f+(a>>>3&536870908)|0;f=f+(e>>>3&536870908)|0;e=1<>2]&e){b=b|D[a>>2]}else{b=D[a>>2]&(b^-1)}D[a>>2]=b;D[f>>2]=D[f>>2]&(e^-1);c=c-1|0}d=d+4|0;if((y|0)!=(d|0)){continue}break}}if(n){ma(n)}e=D[k+48>>2];if(e){while(1){a=D[e>>2];ma(e);e=a;if(a){continue}break}}a=D[k+40>>2];D[k+40>>2]=0;if(a){ma(a)}if(q){D[k+68>>2]=q;ma(q)}$=k+96|0;break f}qa();T()}qa();T()}ra(1326)}T()}ra(1326);T()}if((c|0)==-1){break e}a=D[o+16>>2];e=a+D[o>>2]|0;b=D[o+8>>2];b=b-a|0;a=D[D[h+4>>2]+32>>2];C[a+38>>1]=F[a+38>>1];D[a>>2]=e;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=b;D[a+12>>2]=0;aa:{if(D[h+216>>2]==D[h+220>>2]){break aa}a=D[h+8>>2];if(D[a+4>>2]==D[a>>2]){break aa}b=0;while(1){if(td(h,b)){b=b+3|0;a=D[h+8>>2];if(b>>>0>2]-D[a>>2]>>2>>>0){continue}break aa}break}break e}if(E[h+308|0]){B[h+308|0]=0;e=D[h+292>>2];a=0;b=D[h+304>>2]+7|0;a=b>>>0<7?1:a;d=a>>>3|0;b=a<<29|b>>>3;a=b+D[h+288>>2]|0;d=e+d|0;D[h+288>>2]=a;D[h+292>>2]=a>>>0>>0?d+1|0:d}b=D[h+216>>2];if((b|0)!=D[h+220>>2]){while(1){a=J(A,144);Tc((a+b|0)+4|0,D[h+8>>2]);n=D[H>>2];e=a+n|0;b=D[e+132>>2];e=D[e+136>>2];if((b|0)!=(e|0)){while(1){Rc((a+n|0)+4|0,D[b>>2]);n=D[H>>2];b=b+4|0;if((e|0)!=(b|0)){continue}break}}Sc((a+n|0)+4|0);A=A+1|0;b=D[h+216>>2];if(A>>>0<(D[h+220>>2]-b|0)/144>>>0){continue}break}}a=D[h+8>>2];Gb(h+184|0,D[a+28>>2]-D[a+24>>2]>>2);n=D[h+216>>2];if((n|0)!=D[h+220>>2]){b=0;while(1){a=J(b,144)+n|0;e=D[a+60>>2]-D[a+56>>2]>>2;d=a+104|0;a=D[h+8>>2];a=D[a+28>>2]-D[a+24>>2]>>2;Gb(d,(a|0)>(e|0)?a:e);b=b+1|0;n=D[h+216>>2];if(b>>>0<(D[h+220>>2]-n|0)/144>>>0){continue}break}}A=sd(h,c)}}$=v- -64|0;return A|0}function lf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;a:{b:{c:{d:{e:{switch(d-1|0){case 0:a=0;l=$-16|0;$=l;j=D[b+80>>2];g=B[c+24|0];f:{if((J(j,g)|0)!=(e|0)){break f}b=D[c+28>>2]!=1;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break f}d=0;D[l+8>>2]=0;D[l>>2]=0;D[l+4>>2]=0;if(g){if((g|0)<0){break d}h=na(g);D[l>>2]=h;pa(h,0,g)}g:{h:{if(!j){break h}if(!b){if(g){o=g&-4;k=g&3;b=0;s=g-1>>>0<3;while(1){e=D[D[c>>2]>>2];q=D[c+40>>2];a=D[c+48>>2]+$h(q,D[c+44>>2],a&255?d:D[D[c+68>>2]+(d<<2)>>2],0)|0;e=oa(h,e+a|0,q);m=0;a=0;i=0;if(!s){while(1){g=b+f|0;B[g|0]=E[a+e|0];B[g+1|0]=E[e+(a|1)|0];B[g+2|0]=E[e+(a|2)|0];B[g+3|0]=E[e+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((o|0)!=(i|0)){continue}break}}if(k){while(1){B[b+f|0]=E[a+e|0];a=a+1|0;b=b+1|0;m=m+1|0;if((k|0)!=(m|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break g}a=E[c+84|0];continue}}m=D[c>>2];e=D[c+48>>2];s=D[c+68>>2];f=D[c+44>>2];c=D[c+40>>2];q=c;b=0;if((j|0)!=1){p=j&-2;r=a&255;while(1){g=b|1;n=D[m>>2];k=$h(c,f,r?b:D[s+(b<<2)>>2],0)+e|0;k=oa(h,n+k|0,q);n=D[m>>2];if(!r){g=D[s+(g<<2)>>2]}g=$h(c,f,g,0)+e|0;oa(k,g+n|0,q);b=b+2|0;i=i+2|0;if((p|0)!=(i|0)){continue}break}}if(!(j&1)){break h}g=D[m>>2];if(!(a&255)){b=D[s+(b<<2)>>2]}a=$h(c,f,b,0)+e|0;oa(h,a+g|0,q);break h}if(!g){b=0;d=1;while(1){if(!Db(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break h}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break h}a=E[c+84|0];continue}}i=g&-4;k=g&3;b=0;o=g-1>>>0<3;d=1;e=0;while(1){if(!Db(c,a&255?e:D[D[c+68>>2]+(e<<2)>>2],B[c+24|0],h)){break h}d=0;a=0;m=0;if(!o){while(1){g=b+f|0;B[g|0]=E[a+h|0];B[g+1|0]=E[(a|1)+h|0];B[g+2|0]=E[(a|2)+h|0];B[g+3|0]=E[(a|3)+h|0];a=a+4|0;b=b+4|0;m=m+4|0;if((i|0)!=(m|0)){continue}break}}if(k){while(1){B[b+f|0]=E[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}e=e+1|0;if((j|0)!=(e|0)){d=e>>>0>>0;a=E[c+84|0];continue}break}a=e>>>0>=j>>>0;break g}a=d^1;if(!h){break f}}ma(h)}break c;case 2:a=0;m=$-16|0;$=m;d=B[c+24|0];g=d<<1;j=D[b+80>>2];i:{if((J(g,j)|0)!=(e|0)){break i}b=D[c+28>>2]!=3;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break i}D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(d){if((d|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,g)}j:{k:{if(!j){break k}if(!b){o=D[c>>2];g=D[c+48>>2];q=D[c+68>>2];k=D[c+44>>2];l=D[c+40>>2];r=l;if(d){u=d&-4;t=d&3;b=0;v=a&255;w=d-1>>>0<3;d=0;while(1){c=D[o>>2];a=$h(l,k,v?d:D[q+(d<<2)>>2],0)+g|0;i=oa(h,c+a|0,r);e=0;a=0;c=0;if(!w){while(1){p=(b<<1)+f|0;n=a<<1;C[p>>1]=F[n+i>>1];C[p+2>>1]=F[i+(n|2)>>1];C[p+4>>1]=F[i+(n|4)>>1];C[p+6>>1]=F[i+(n|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((u|0)!=(c|0)){continue}break}}if(t){while(1){C[(b<<1)+f>>1]=F[i+(a<<1)>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break j}b=0;if((j|0)!=1){p=j&-2;f=a&255;d=0;while(1){c=b|1;n=D[o>>2];e=$h(l,k,f?b:D[q+(b<<2)>>2],0)+g|0;e=oa(h,n+e|0,r);n=D[o>>2];if(!f){c=D[q+(c<<2)>>2]}c=$h(l,k,c,0)+g|0;oa(e,c+n|0,r);b=b+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(j&1)){break k}c=D[o>>2];if(!(a&255)){b=D[q+(b<<2)>>2]}a=$h(l,k,b,0)+g|0;oa(h,a+c|0,r);break k}if(!d){b=0;i=1;while(1){if(!Bb(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break k}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break k}a=E[c+84|0];continue}}o=d&-4;l=d&3;b=0;s=d-1>>>0<3;i=1;d=0;while(1){if(!Bb(c,a&255?d:D[D[c+68>>2]+(d<<2)>>2],B[c+24|0],h)){break k}i=0;a=0;e=0;if(!s){while(1){g=(b<<1)+f|0;k=a<<1;C[g>>1]=F[k+h>>1];C[g+2>>1]=F[(k|2)+h>>1];C[g+4>>1]=F[(k|4)+h>>1];C[g+6>>1]=F[(k|6)+h>>1];a=a+4|0;b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}if(l){while(1){C[(b<<1)+f>>1]=F[(a<<1)+h>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=E[c+84|0];continue}break}a=d>>>0>=j>>>0;break j}a=i^1;if(!h){break i}}ma(h)}break b;case 4:a=0;m=$-16|0;$=m;d=B[c+24|0];g=d<<2;j=D[b+80>>2];l:{if((J(g,j)|0)!=(e|0)){break l}b=D[c+28>>2]!=5;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break l}D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(d){if((d|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,g)}m:{n:{if(!j){break n}if(!b){o=D[c>>2];g=D[c+48>>2];q=D[c+68>>2];k=D[c+44>>2];l=D[c+40>>2];r=l;if(d){u=d&-4;t=d&3;b=0;v=a&255;w=d-1>>>0<3;d=0;while(1){c=D[o>>2];a=$h(l,k,v?d:D[q+(d<<2)>>2],0)+g|0;i=oa(h,c+a|0,r);e=0;a=0;c=0;if(!w){while(1){p=(b<<2)+f|0;n=a<<2;D[p>>2]=D[n+i>>2];D[p+4>>2]=D[i+(n|4)>>2];D[p+8>>2]=D[i+(n|8)>>2];D[p+12>>2]=D[i+(n|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((u|0)!=(c|0)){continue}break}}if(t){while(1){D[(b<<2)+f>>2]=D[i+(a<<2)>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break m}b=0;if((j|0)!=1){p=j&-2;f=a&255;d=0;while(1){c=b|1;n=D[o>>2];e=$h(l,k,f?b:D[q+(b<<2)>>2],0)+g|0;e=oa(h,n+e|0,r);n=D[o>>2];if(!f){c=D[q+(c<<2)>>2]}c=$h(l,k,c,0)+g|0;oa(e,c+n|0,r);b=b+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(j&1)){break n}c=D[o>>2];if(!(a&255)){b=D[q+(b<<2)>>2]}a=$h(l,k,b,0)+g|0;oa(h,a+c|0,r);break n}if(!d){b=0;i=1;while(1){if(!zb(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break n}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break n}a=E[c+84|0];continue}}o=d&-4;l=d&3;b=0;s=d-1>>>0<3;i=1;d=0;while(1){if(!zb(c,a&255?d:D[D[c+68>>2]+(d<<2)>>2],B[c+24|0],h)){break n}i=0;a=0;e=0;if(!s){while(1){g=(b<<2)+f|0;k=a<<2;D[g>>2]=D[k+h>>2];D[g+4>>2]=D[(k|4)+h>>2];D[g+8>>2]=D[(k|8)+h>>2];D[g+12>>2]=D[(k|12)+h>>2];a=a+4|0;b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}if(l){while(1){D[(b<<2)+f>>2]=D[(a<<2)+h>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=E[c+84|0];continue}break}a=d>>>0>=j>>>0;break m}a=i^1;if(!h){break l}}ma(h)}break b;case 1:a=0;l=$-16|0;$=l;j=D[b+80>>2];g=B[c+24|0];o:{if((J(j,g)|0)!=(e|0)){break o}b=D[c+28>>2]!=2;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break o}d=0;D[l+8>>2]=0;D[l>>2]=0;D[l+4>>2]=0;if(g){if((g|0)<0){break d}h=na(g);D[l>>2]=h;pa(h,0,g)}p:{q:{if(!j){break q}if(!b){if(g){o=g&-4;k=g&3;b=0;s=g-1>>>0<3;while(1){e=D[D[c>>2]>>2];q=D[c+40>>2];a=D[c+48>>2]+$h(q,D[c+44>>2],a&255?d:D[D[c+68>>2]+(d<<2)>>2],0)|0;e=oa(h,e+a|0,q);m=0;a=0;i=0;if(!s){while(1){g=b+f|0;B[g|0]=E[a+e|0];B[g+1|0]=E[e+(a|1)|0];B[g+2|0]=E[e+(a|2)|0];B[g+3|0]=E[e+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((o|0)!=(i|0)){continue}break}}if(k){while(1){B[b+f|0]=E[a+e|0];a=a+1|0;b=b+1|0;m=m+1|0;if((k|0)!=(m|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break p}a=E[c+84|0];continue}}m=D[c>>2];e=D[c+48>>2];s=D[c+68>>2];f=D[c+44>>2];c=D[c+40>>2];q=c;b=0;if((j|0)!=1){p=j&-2;r=a&255;while(1){g=b|1;n=D[m>>2];k=$h(c,f,r?b:D[s+(b<<2)>>2],0)+e|0;k=oa(h,n+k|0,q);n=D[m>>2];if(!r){g=D[s+(g<<2)>>2]}g=$h(c,f,g,0)+e|0;oa(k,g+n|0,q);b=b+2|0;i=i+2|0;if((p|0)!=(i|0)){continue}break}}if(!(j&1)){break q}g=D[m>>2];if(!(a&255)){b=D[s+(b<<2)>>2]}a=$h(c,f,b,0)+e|0;oa(h,a+g|0,q);break q}if(!g){b=0;d=1;while(1){if(!Cb(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break q}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break q}a=E[c+84|0];continue}}i=g&-4;k=g&3;b=0;o=g-1>>>0<3;d=1;e=0;while(1){if(!Cb(c,a&255?e:D[D[c+68>>2]+(e<<2)>>2],B[c+24|0],h)){break q}d=0;a=0;m=0;if(!o){while(1){g=b+f|0;B[g|0]=E[a+h|0];B[g+1|0]=E[(a|1)+h|0];B[g+2|0]=E[(a|2)+h|0];B[g+3|0]=E[(a|3)+h|0];a=a+4|0;b=b+4|0;m=m+4|0;if((i|0)!=(m|0)){continue}break}}if(k){while(1){B[b+f|0]=E[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}e=e+1|0;if((j|0)!=(e|0)){d=e>>>0>>0;a=E[c+84|0];continue}break}a=e>>>0>=j>>>0;break p}a=d^1;if(!h){break o}}ma(h)}break c;case 3:a=0;m=$-16|0;$=m;d=B[c+24|0];g=d<<1;j=D[b+80>>2];r:{if((J(g,j)|0)!=(e|0)){break r}b=D[c+28>>2]!=4;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break r}D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(d){if((d|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,g)}s:{t:{if(!j){break t}if(!b){o=D[c>>2];g=D[c+48>>2];q=D[c+68>>2];k=D[c+44>>2];l=D[c+40>>2];r=l;if(d){u=d&-4;t=d&3;b=0;v=a&255;w=d-1>>>0<3;d=0;while(1){c=D[o>>2];a=$h(l,k,v?d:D[q+(d<<2)>>2],0)+g|0;i=oa(h,c+a|0,r);e=0;a=0;c=0;if(!w){while(1){p=(b<<1)+f|0;n=a<<1;C[p>>1]=F[n+i>>1];C[p+2>>1]=F[i+(n|2)>>1];C[p+4>>1]=F[i+(n|4)>>1];C[p+6>>1]=F[i+(n|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((u|0)!=(c|0)){continue}break}}if(t){while(1){C[(b<<1)+f>>1]=F[i+(a<<1)>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break s}b=0;if((j|0)!=1){p=j&-2;f=a&255;d=0;while(1){c=b|1;n=D[o>>2];e=$h(l,k,f?b:D[q+(b<<2)>>2],0)+g|0;e=oa(h,n+e|0,r);n=D[o>>2];if(!f){c=D[q+(c<<2)>>2]}c=$h(l,k,c,0)+g|0;oa(e,c+n|0,r);b=b+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(j&1)){break t}c=D[o>>2];if(!(a&255)){b=D[q+(b<<2)>>2]}a=$h(l,k,b,0)+g|0;oa(h,a+c|0,r);break t}if(!d){b=0;i=1;while(1){if(!Ab(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break t}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break t}a=E[c+84|0];continue}}o=d&-4;l=d&3;b=0;s=d-1>>>0<3;i=1;d=0;while(1){if(!Ab(c,a&255?d:D[D[c+68>>2]+(d<<2)>>2],B[c+24|0],h)){break t}i=0;a=0;e=0;if(!s){while(1){g=(b<<1)+f|0;k=a<<1;C[g>>1]=F[k+h>>1];C[g+2>>1]=F[(k|2)+h>>1];C[g+4>>1]=F[(k|4)+h>>1];C[g+6>>1]=F[(k|6)+h>>1];a=a+4|0;b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}if(l){while(1){C[(b<<1)+f>>1]=F[(a<<1)+h>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=E[c+84|0];continue}break}a=d>>>0>=j>>>0;break s}a=i^1;if(!h){break r}}ma(h)}break b;case 5:a=0;m=$-16|0;$=m;d=B[c+24|0];g=d<<2;j=D[b+80>>2];u:{if((J(g,j)|0)!=(e|0)){break u}b=D[c+28>>2]!=6;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break u}D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(d){if((d|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,g)}v:{w:{if(!j){break w}if(!b){o=D[c>>2];g=D[c+48>>2];q=D[c+68>>2];k=D[c+44>>2];l=D[c+40>>2];r=l;if(d){u=d&-4;t=d&3;b=0;v=a&255;w=d-1>>>0<3;d=0;while(1){c=D[o>>2];a=$h(l,k,v?d:D[q+(d<<2)>>2],0)+g|0;i=oa(h,c+a|0,r);e=0;a=0;c=0;if(!w){while(1){p=(b<<2)+f|0;n=a<<2;D[p>>2]=D[n+i>>2];D[p+4>>2]=D[i+(n|4)>>2];D[p+8>>2]=D[i+(n|8)>>2];D[p+12>>2]=D[i+(n|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((u|0)!=(c|0)){continue}break}}if(t){while(1){D[(b<<2)+f>>2]=D[i+(a<<2)>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break v}b=0;if((j|0)!=1){p=j&-2;f=a&255;d=0;while(1){c=b|1;n=D[o>>2];e=$h(l,k,f?b:D[q+(b<<2)>>2],0)+g|0;e=oa(h,n+e|0,r);n=D[o>>2];if(!f){c=D[q+(c<<2)>>2]}c=$h(l,k,c,0)+g|0;oa(e,c+n|0,r);b=b+2|0;d=d+2|0;if((p|0)!=(d|0)){continue}break}}if(!(j&1)){break w}c=D[o>>2];if(!(a&255)){b=D[q+(b<<2)>>2]}a=$h(l,k,b,0)+g|0;oa(h,a+c|0,r);break w}if(!d){b=0;i=1;while(1){if(!yb(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break w}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break w}a=E[c+84|0];continue}}o=d&-4;l=d&3;b=0;s=d-1>>>0<3;i=1;d=0;while(1){if(!yb(c,a&255?d:D[D[c+68>>2]+(d<<2)>>2],B[c+24|0],h)){break w}i=0;a=0;e=0;if(!s){while(1){g=(b<<2)+f|0;k=a<<2;D[g>>2]=D[k+h>>2];D[g+4>>2]=D[(k|4)+h>>2];D[g+8>>2]=D[(k|8)+h>>2];D[g+12>>2]=D[(k|12)+h>>2];a=a+4|0;b=b+4|0;e=e+4|0;if((o|0)!=(e|0)){continue}break}}if(l){while(1){D[(b<<2)+f>>2]=D[(a<<2)+h>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=E[c+84|0];continue}break}a=d>>>0>=j>>>0;break v}a=i^1;if(!h){break u}}ma(h)}break b;case 8:break e;default:break a}}a=0;o=$-16|0;$=o;k=B[c+24|0];d=k<<2;j=D[b+80>>2];x:{if((J(d,j)|0)!=(e|0)){break x}e=D[c+28>>2];D[o+8>>2]=0;D[o>>2]=0;D[o+4>>2]=0;b=0;y:{z:{A:{B:{if(!k){break B}if((k|0)<0){break A}b=na(d);D[o>>2]=b;g=(k<<2)+b|0;D[o+8>>2]=g;d=d-4|0;l=(d>>>2|0)+1&7;C:{if(!l){a=b;break C}a=b;while(1){D[a>>2]=-1073741824;a=a+4|0;h=h+1|0;if((l|0)!=(h|0)){continue}break}}if(d>>>0<28){break B}while(1){D[a+24>>2]=-1073741824;D[a+28>>2]=-1073741824;D[a+16>>2]=-1073741824;D[a+20>>2]=-1073741824;D[a+8>>2]=-1073741824;D[a+12>>2]=-1073741824;D[a>>2]=-1073741824;D[a+4>>2]=-1073741824;a=a+32|0;if((g|0)!=(a|0)){continue}break}}if(!j){break z}if((e|0)==9){a=0;s=D[c>>2];d=D[c+48>>2];r=D[c+68>>2];p=E[c+84|0];e=D[c+44>>2];g=D[c+40>>2];n=g;if((k|0)<=0){if((j|0)!=1){k=j&-2;c=0;while(1){f=a|1;l=D[s>>2];h=$h(g,e,p?a:D[r+(a<<2)>>2],0)+d|0;h=oa(b,l+h|0,n);l=D[s>>2];if(!p){f=D[r+(f<<2)>>2]}f=$h(g,e,f,0)+d|0;oa(h,f+l|0,n);a=a+2|0;c=c+2|0;if((k|0)!=(c|0)){continue}break}}if(!(j&1)){break z}c=D[s>>2];if(!p){a=D[r+(a<<2)>>2]}a=$h(g,e,a,0)+d|0;oa(b,a+c|0,n);break z}v=k&-4;t=k&3;h=0;w=k-1>>>0<3;while(1){c=D[s>>2];a=$h(g,e,p?i:D[r+(i<<2)>>2],0)+d|0;c=oa(b,c+a|0,n);l=0;a=0;u=0;if(!w){while(1){k=(h<<2)+f|0;m=a<<2;H[k>>2]=H[m+c>>2];H[k+4>>2]=H[c+(m|4)>>2];H[k+8>>2]=H[c+(m|8)>>2];H[k+12>>2]=H[c+(m|12)>>2];a=a+4|0;h=h+4|0;u=u+4|0;if((v|0)!=(u|0)){continue}break}}if(t){while(1){H[(h<<2)+f>>2]=H[c+(a<<2)>>2];a=a+1|0;h=h+1|0;l=l+1|0;if((t|0)!=(l|0)){continue}break}}a=1;i=i+1|0;if((j|0)!=(i|0)){continue}break}break y}m=1;if((k|0)<=0){a=0;while(1){if(!mb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],b)){break z}a=a+1|0;m=j>>>0>a>>>0;if((a|0)!=(j|0)){continue}break}break z}s=k&-4;g=k&3;h=0;k=k-1>>>0<3;while(1){if(!mb(c,E[c+84|0]?i:D[D[c+68>>2]+(i<<2)>>2],B[c+24|0],b)){break z}m=0;a=0;l=0;if(!k){while(1){d=(h<<2)+f|0;e=a<<2;H[d>>2]=H[e+b>>2];H[d+4>>2]=H[(e|4)+b>>2];H[d+8>>2]=H[(e|8)+b>>2];H[d+12>>2]=H[(e|12)+b>>2];a=a+4|0;h=h+4|0;l=l+4|0;if((s|0)!=(l|0)){continue}break}}if(g){while(1){H[(h<<2)+f>>2]=H[(a<<2)+b>>2];a=a+1|0;h=h+1|0;m=m+1|0;if((g|0)!=(m|0)){continue}break}}i=i+1|0;m=j>>>0>i>>>0;if((i|0)!=(j|0)){continue}break}a=i>>>0>=j>>>0;break y}qa();T()}a=m^1;if(!b){break x}}ma(b)}$=o+16|0;h=a&1;break a}qa();T()}$=l+16|0;h=a&1;break a}$=m+16|0;h=a&1}return h|0}function wf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,F=0,G=0,H=0,I=0,K=0,L=0,M=0,N=0;z=c;c=0;m=$-96|0;$=m;k=m+16|0;pa(k,0,76);D[m+92>>2]=-1;D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;r=$-16|0;$=r;D[k+68>>2]=0;D[k+72>>2]=0;D[k>>2]=b;t=$-16|0;$=t;x=b;a=D[b+20>>2];a:{if((D[b+24>>2]-a|0)<=0){break a}a=D[a>>2];if((a|0)==-1){break a}c=D[D[b+8>>2]+(a<<2)>>2]}b:{c:{d:{if(!c){a=0;break d}a=D[x+100>>2];f=D[x+96>>2];D[t+8>>2]=0;D[t>>2]=0;D[t+4>>2]=0;h=a-f|0;b=(h|0)/12|0;e:{if(!h){break e}if(b>>>0>=357913942){break c}d=na(h);D[t>>2]=d;D[t+8>>2]=d+J(b,12);a=0;i=d;d=J((h-12>>>0)/12|0,12)+12|0;h=pa(i,0,d);D[t+4>>2]=d+h;if(E[c+84|0]){c=b>>>0>1?b:1;d=c&1;if(b>>>0>=2){i=c&-2;while(1){c=J(a,12);b=c+f|0;l=D[b+4>>2];n=D[b>>2];c=c+h|0;D[c+8>>2]=D[b+8>>2];D[c>>2]=n;D[c+4>>2]=l;c=J(a|1,12);b=c+f|0;l=D[b+8>>2];n=D[b+4>>2];c=c+h|0;D[c>>2]=D[b>>2];D[c+4>>2]=n;D[c+8>>2]=l;a=a+2|0;e=e+2|0;if((i|0)!=(e|0)){continue}break}}if(!d){break e}b=J(a,12);a=b+f|0;c=D[a+4>>2];e=D[a>>2];b=b+h|0;D[b+8>>2]=D[a+8>>2];D[b>>2]=e;D[b+4>>2]=c;break e}d=b>>>0>1?b:1;a=D[c+68>>2];while(1){c=J(e,12);b=c+f|0;i=D[a+(D[b>>2]<<2)>>2];l=D[a+(D[b+4>>2]<<2)>>2];c=c+h|0;D[c+8>>2]=D[a+(D[b+8>>2]<<2)>>2];D[c+4>>2]=l;D[c>>2]=i;e=e+1|0;if((d|0)!=(e|0)){continue}break}}F=$-16|0;$=F;d=na(88);D[d>>2]=0;D[d+4>>2]=0;D[d+56>>2]=0;D[d+48>>2]=0;D[d+52>>2]=0;D[d+40>>2]=0;D[d+44>>2]=0;D[d+32>>2]=0;D[d+36>>2]=0;D[d+24>>2]=0;D[d+28>>2]=0;D[d+16>>2]=0;D[d+20>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;a=d- -64|0;D[a>>2]=0;D[a+4>>2]=0;D[d+72>>2]=0;D[d+76>>2]=0;D[d+80>>2]=0;D[d+84>>2]=0;D[d+60>>2]=d;A=$-16|0;$=A;D[d+80>>2]=0;D[d+84>>2]=0;a=D[d+76>>2];D[d+76>>2]=0;if(a){ma(a)}D[d+68>>2]=0;D[d+72>>2]=0;b=d- -64|0;a=D[b>>2];D[b>>2]=0;if(a){ma(a)}e=D[t>>2];b=D[t+4>>2]-e|0;l=(b|0)/12|0;a=J(l,3);c=D[d>>2];f=D[d+4>>2]-c>>2;f:{if(a>>>0>f>>>0){sa(d,a-f|0);e=D[t>>2];b=D[t+4>>2]-e|0;l=(b|0)/12|0;c=D[d>>2];break f}if(a>>>0>=f>>>0){break f}D[d+4>>2]=(a<<2)+c}if(b){h=l>>>0>1?l:1;a=0;while(1){f=J(a,12);b=f+c|0;f=f+e|0;D[b>>2]=D[f>>2];D[b+4>>2]=D[f+4>>2];D[b+8>>2]=D[f+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}D[A+12>>2]=-1;f=$-48|0;$=f;g:{h:{i:{w=A+12|0;j:{if(!w){break j}i=D[d+4>>2];n=D[d>>2];b=i-n|0;p=b>>2;c=D[d+12>>2];a=D[d+16>>2]-c>>2;k:{if(p>>>0>a>>>0){xa(d+12|0,p-a|0,10260);i=D[d+4>>2];n=D[d>>2];b=i-n|0;p=b>>2;break k}if(a>>>0<=p>>>0){break k}D[d+16>>2]=c+(p<<2)}c=0;D[f+40>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;l:{if(!b){D[f+24>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;break l}m:{if((b|0)>=0){c=na(b);D[f+36>>2]=c;D[f+32>>2]=c;D[f+40>>2]=(p<<2)+c;a=c;b=0;while(1){h=D[(b<<2)+n>>2];a=a-c>>2;n:{if(h>>>0>>0){break n}D[f+16>>2]=0;e=h+1|0;if(e>>>0>a>>>0){xa(f+32|0,e-a|0,f+16|0);n=D[d>>2];i=D[d+4>>2];c=D[f+32>>2];break n}if(a>>>0<=e>>>0){break n}D[f+36>>2]=(e<<2)+c}a=(h<<2)+c|0;D[a>>2]=D[a>>2]+1;b=b+1|0;a=i-n|0;p=a>>2;if(b>>>0>=p>>>0){break m}a=D[f+36>>2];continue}}break i}D[f+24>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;if(!a){break l}if(p>>>0>=536870912){break h}b=a<<1;a=na(b);D[f+16>>2]=a;e=a+(p<<3)|0;D[f+24>>2]=e;pa(a,255,b);D[f+20>>2]=e}i=0;D[f+8>>2]=0;D[f>>2]=0;D[f+4>>2]=0;a=D[f+36>>2]-c|0;h=a>>2;o:{if(!a){break o}if((a|0)<0){break h}s=na(a);D[f>>2]=s;D[f+8>>2]=(h<<2)+s;b=a;a=pa(s,0,a);D[f+4>>2]=b+a;e=h>>>0>1?h:1;l=e&3;b=0;if(e-1>>>0>=3){q=e&-4;while(1){e=g<<2;D[e+a>>2]=b;y=e|4;b=D[c+e>>2]+b|0;D[y+a>>2]=b;v=e|8;b=b+D[c+y>>2]|0;D[v+a>>2]=b;e=e|12;b=b+D[c+v>>2]|0;D[e+a>>2]=b;b=b+D[c+e>>2]|0;g=g+4|0;j=j+4|0;if((q|0)!=(j|0)){continue}break}}if(!l){break o}while(1){e=g<<2;D[e+a>>2]=b;g=g+1|0;b=D[c+e>>2]+b|0;o=o+1|0;if((l|0)!=(o|0)){continue}break}}if(p){y=D[d+12>>2];while(1){G=i<<2;b=G+n|0;j=-1;e=i+1|0;a=(e>>>0)%3|0?e:i-2|0;if((a|0)!=-1){j=D[(a<<2)+n>>2]}a=D[b>>2];p:{q:{if(!((i>>>0)%3|0)){o=-1;b=i+2|0;if((b|0)!=-1){o=D[(b<<2)+n>>2]}if(!((a|0)==(j|0)|(a|0)==(o|0))&(j|0)!=(o|0)){break q}D[d+40>>2]=D[d+40>>2]+1;e=i+3|0;break p}o=D[b-4>>2]}b=o<<2;v=D[b+c>>2];r:{s:{if((v|0)<=0){break s}l=D[f+16>>2];b=D[b+s>>2];g=0;while(1){q=l+(b<<3)|0;u=D[q>>2];if((u|0)==-1){break s}t:{if((j|0)!=(u|0)){break t}q=D[q+4>>2];if((q|0)!=-1){u=D[(q<<2)+n>>2]}else{u=-1}if((u|0)==(a|0)){break t}while(1){u:{a=b;g=g+1|0;if((v|0)<=(g|0)){break u}u=l+(a<<3)|0;b=a+1|0;H=l+(b<<3)|0;I=D[H>>2];D[u>>2]=I;D[u+4>>2]=D[H+4>>2];if((I|0)!=-1){continue}}break}D[l+(a<<3)>>2]=-1;if((q|0)==-1){break s}D[y+G>>2]=q;D[y+(q<<2)>>2]=i;break r}b=b+1|0;g=g+1|0;if((v|0)!=(g|0)){continue}break}}a=j<<2;l=D[a+c>>2];if((l|0)<=0){break r}j=D[f+16>>2];b=D[a+s>>2];g=0;while(1){a=j+(b<<3)|0;if(D[a>>2]==-1){D[a>>2]=o;D[a+4>>2]=i;break r}b=b+1|0;g=g+1|0;if((l|0)!=(g|0)){continue}break}}}i=e;if(p>>>0>i>>>0){continue}break}}D[w>>2]=h;if(s){ma(s)}a=D[f+16>>2];if(a){D[f+20>>2]=a;ma(a)}a=D[f+32>>2];if(!a){break j}D[f+36>>2]=a;ma(a)}$=f+48|0;y=(w|0)!=0;if(y){j=$-32|0;$=j;o=D[d>>2];a=D[d+4>>2];D[j+24>>2]=0;D[j+16>>2]=0;D[j+20>>2]=0;b=a-o|0;v:{if(!b){break v}if((b|0)<0){break h}b=b>>2;g=b-1>>>5|0;e=g+1|0;c=na(e<<2);D[j+24>>2]=e;D[j+16>>2]=c;D[j+20>>2]=b;D[c+((b>>>0<33?0:g)<<2)>>2]=0;g=c;c=b>>>5<<2;g=pa(g,0,c);b=b&31;if(!b){break v}c=c+g|0;D[c>>2]=D[c>>2]&(-1>>>32-b^-1)}D[j+8>>2]=0;D[j>>2]=0;while(1){w:{p=0;e=0;if((a|0)==(o|0)){break w}while(1){c=D[j+16>>2];x:{if(D[c+(e>>>3&536870908)>>2]>>>e&1){break x}g=D[j>>2];D[j+4>>2]=g;b=D[d+12>>2];a=e;while(1){y:{f=a+1|0;h=a;a=(f>>>0)%3|0?f:a-2|0;if((a|0)==-1){break y}a=D[b+(a<<2)>>2];if((a|0)==-1){break y}f=a+1|0;a=(f>>>0)%3|0?f:a-2|0;if((e|0)==(a|0)|(a|0)==-1){break y}if(!(D[(a>>>3&536870908)+c>>2]>>>a&1)){continue}}break}b=g;l=h;z:{A:{while(1){a=(l>>>3&536870908)+c|0;D[a>>2]=D[a>>2]|1<>>0)%3|0?a:l-2|0;v=(l>>>0)%3|0;n=(v?-1:2)+l|0;q=n<<2;B:{if((b|0)==(g|0)){break B}w=D[(f<<2)+o>>2];s=D[d+12>>2];a=b;if((n|0)!=-1){u=s+q|0;while(1){C:{if((w|0)!=D[a>>2]){break C}c=D[a+4>>2];i=D[u>>2];if((c|0)==(i|0)){break C}g=-1;a=-1;if((c|0)==-1){break z}break A}a=a+8|0;if((g|0)!=(a|0)){continue}break}break B}while(1){if((w|0)==D[a>>2]){i=-1;n=-1;c=D[a+4>>2];if((c|0)!=-1){break A}}a=a+8|0;if((g|0)!=(a|0)){continue}break}}n=D[o+q>>2];D:{if(D[j+8>>2]!=(g|0)){D[g>>2]=n;D[g+4>>2]=f;g=g+8|0;D[j+4>>2]=g;break D}c=g-b|0;g=c>>3;a=g+1|0;if(a>>>0>=536870912){break h}i=c>>2;i=g>>>0<268435455?a>>>0>i>>>0?a:i:536870911;if(i){if(i>>>0>=536870912){break i}a=na(i<<3)}else{a=0}g=a+(g<<3)|0;D[g>>2]=n;D[g+4>>2]=f;g=g+8|0;if((c|0)>0){oa(a,b,c)}D[j+8>>2]=a+(i<<3);D[j+4>>2]=g;D[j>>2]=a;if(!b){break D}ma(b)}E:{F:{if(v){a=l-1|0;break F}a=l+2|0;if((a|0)==-1){break E}}a=D[D[d+12>>2]+(a<<2)>>2];if((a|0)==-1){break E}l=a+((a>>>0)%3|0?-1:2)|0;if((h|0)==(l|0)|(l|0)==-1){break E}o=D[d>>2];b=D[j>>2];c=D[j+16>>2];continue}break}o=D[d>>2];break x}g=c;a=D[s+(c<<2)>>2]}if((i|0)!=-1){D[s+(i<<2)>>2]=-1}if((a|0)!=-1){D[D[d+12>>2]+(a<<2)>>2]=-1}a=D[d+12>>2];D[a+(n<<2)>>2]=-1;D[a+(g<<2)>>2]=-1;p=1}e=e+1|0;a=D[d+4>>2];if(e>>>0>2>>>0){continue}break}if(p){continue}}break}a=D[j>>2];if(a){ma(a)}a=D[j+16>>2];if(a){ma(a)}$=j+32|0;e=0;n=0;p=0;h=$-32|0;$=h;a=D[A+12>>2];D[d+36>>2]=a;o=d+24|0;c=D[d+24>>2];b=D[d+28>>2]-c>>2;G:{H:{if(b>>>0>>0){xa(o,a-b|0,10260);D[h+24>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;break H}if(a>>>0>>0){D[d+28>>2]=c+(a<<2)}D[h+24>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;if(!a){break G}}if((a|0)<0){break h}b=a-1>>>5|0;c=b+1|0;e=na(c<<2);D[h+24>>2]=c;D[h+16>>2]=e;D[h+20>>2]=a;D[((a>>>0<33?0:b)<<2)+e>>2]=0;b=a>>>5<<2;c=pa(e,0,b);g=a&31;if(!g){break G}b=b+c|0;D[b>>2]=D[b>>2]&(-1>>>32-g^-1)}i=D[d>>2];l=D[d+4>>2];D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;b=l-i|0;I:{if(!b){break I}if((b|0)<0){break h}b=b>>2;c=b-1>>>5|0;g=c+1|0;j=na(g<<2);D[h+8>>2]=g;D[h>>2]=j;D[h+4>>2]=b;D[((b>>>0<33?0:c)<<2)+j>>2]=0;c=b>>>5<<2;g=pa(j,0,c);f=b&31;if(f){c=c+g|0;D[c>>2]=D[c>>2]&(-1>>>32-f^-1)}if(b>>>0<3){break I}while(1){q=J(n,3);g=(q<<2)+i|0;b=D[g>>2];c=-1;f=q+1|0;if((f|0)!=-1){c=D[(f<<2)+i>>2]}J:{if((b|0)==(c|0)){break J}f=b;b=D[g+8>>2];if((f|0)==(b|0)){break J}s=0;if((b|0)==(c|0)){break J}while(1){g=s+q|0;if(!(D[(g>>>3&536870908)+j>>2]>>>g&1)){b=D[(g<<2)+i>>2];c=1<>>5|0;l=c&D[(j<<2)+e>>2];if(l){c=D[d+28>>2];K:{if((c|0)!=D[d+32>>2]){D[c>>2]=-1;D[d+28>>2]=c+4;break K}e=D[o>>2];f=c-e|0;j=f>>2;c=j+1|0;if(c>>>0>=1073741824){break h}i=f>>1;i=j>>>0<536870911?c>>>0>i>>>0?c:i:1073741823;if(i){if(i>>>0>=1073741824){break i}c=na(i<<2)}else{c=0}j=c+(j<<2)|0;D[j>>2]=-1;if((f|0)>0){oa(c,e,f)}D[d+32>>2]=c+(i<<2);D[d+28>>2]=j+4;D[d+24>>2]=c;if(!e){break K}ma(e)}c=D[d+52>>2];L:{if((c|0)!=D[d+56>>2]){D[c>>2]=b;D[d+52>>2]=c+4;break L}e=D[d+48>>2];f=c-e|0;j=f>>2;c=j+1|0;if(c>>>0>=1073741824){break h}i=f>>1;i=j>>>0<536870911?c>>>0>i>>>0?c:i:1073741823;if(i){if(i>>>0>=1073741824){break i}c=na(i<<2)}else{c=0}j=c+(j<<2)|0;D[j>>2]=b;if((f|0)>0){oa(c,e,f)}D[d+56>>2]=c+(i<<2);D[d+52>>2]=j+4;D[d+48>>2]=c;if(!e){break L}ma(e)}c=D[h+20>>2];b=D[h+24>>2];if((c|0)==b<<5){if((c+1|0)<0){break h}e=h+16|0;if(c>>>0<=1073741822){c=c+32&-32;b=b<<6;b=b>>>0>>0?c:b}else{b=2147483647}Ta(e,b);c=D[h+20>>2]}D[h+20>>2]=c+1;b=D[h+16>>2]+(c>>>3&536870908)|0;e=D[b>>2];M=b,N=di(c)&e,D[M>>2]=N;c=1<>>5|0;b=a;a=a+1|0}f=a;e=D[h+16>>2];a=e+(j<<2)|0;D[a>>2]=D[a>>2]|c;v=D[d+24>>2]+(b<<2)|0;w=D[d+12>>2];i=D[d>>2];j=D[h>>2];a=g;M:{N:{O:{P:{Q:{R:{while(1){if((a|0)==-1){break R}c=(a>>>3&536870908)+j|0;D[c>>2]=D[c>>2]|1<>2]=a;if(l){D[(a<<2)+i>>2]=b}u=a+1|0;a=(u>>>0)%3|0?u:a-2|0;c=-1;S:{if((a|0)==-1){break S}a=D[w+(a<<2)>>2];c=-1;if((a|0)==-1){break S}c=a+1|0;c=(c>>>0)%3|0?c:a-2|0}a=c;if((g|0)!=(a|0)){continue}break}if((g|0)!=-1){break M}a=1;break Q}if((g>>>0)%3|0){a=g-1|0;break Q}a=g+2|0;if((a|0)==-1){break P}}a=D[w+(a<<2)>>2];if((a|0)==-1){break P}if(!((a>>>0)%3|0)){break O}a=a-1|0;i=D[d>>2];j=D[h>>2];break N}i=D[d>>2];j=D[h>>2];break M}i=D[d>>2];j=D[h>>2];a=a+2|0;if((a|0)==-1){break M}}c=D[d+12>>2];while(1){g=(a>>>3&536870908)+j|0;D[g>>2]=D[g>>2]|1<>2]=b}T:{if((a>>>0)%3|0){a=a-1|0;break T}a=a+2|0;if((a|0)==-1){break M}}a=D[c+(a<<2)>>2];if((a|0)==-1){break M}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=f}s=s+1|0;if((s|0)!=3){continue}break}i=D[d>>2];l=D[d+4>>2]}n=n+1|0;if(n>>>0<(l-i>>2>>>0)/3>>>0){continue}break}e=D[h+16>>2]}D[d+44>>2]=0;a=D[h+20>>2];if(a){b=a&31;g=(a>>>3&536870908)+e|0;a=0;c=e;while(1){if(!(D[c>>2]>>>a&1)){p=p+1|0;D[d+44>>2]=p}f=(a|0)==31;a=f?0:a+1|0;c=(f<<2)+c|0;if((g|0)!=(c|0)|(a|0)!=(b|0)){continue}break}}a=D[h>>2];if(a){ma(a);e=D[h+16>>2]}if(e){ma(e)}$=h+32|0}$=A+16|0;if(!y){D[F+8>>2]=0;ab(d);d=0}$=F+16|0;a=d;break g}ra(1326);T()}qa();T()}b=D[t>>2];if(!b){break d}D[t+4>>2]=b;ma(b)}$=t+16|0;break b}qa();T()}b=D[k+4>>2];D[k+4>>2]=a;if(b){ab(b);a=D[k+4>>2]}U:{if(!a){break U}a=D[x+100>>2];b=D[x+96>>2];B[r+12|0]=0;Ea(k+56|0,(a-b|0)/12|0,r+12|0);a=D[x+100>>2];b=D[x+96>>2];if((a|0)==(b|0)){K=1;break U}while(1){if(!(D[D[k+56>>2]+(C>>>3&536870908)>>2]>>>C&1)){a=J(C,3);Tb(k,0,a);b=D[k+8>>2];c=D[k+12>>2];Tb(k,1,a+1|0);g=D[k+20>>2];e=D[k+24>>2];Tb(k,2,a+2|0);g=e-g>>2;b=c-b|0;c=b>>2;a=g>>>0>c>>>0;c=D[k+36>>2]-D[k+32>>2]>>2>>>0>(a?g:c)>>>0?2:a?1:b?0:-1;V:{if(D[k+68>>2]<=0){break V}D[r+12>>2]=D[k+76>>2];D[r+8>>2]=m;Qa(r+8|0,r+12|0);a=D[((c<<2)+k|0)+44>>2];if((a|0)<0){a=-1}else{b=(a>>>0)/3|0;a=D[(D[D[k>>2]+96>>2]+J(b,12)|0)+(a-J(b,3)<<2)>>2]}D[r+12>>2]=a;D[r+8>>2]=m;Qa(r+8|0,r+12|0);b=D[k+72>>2];D[k+72>>2]=b+2;if(!(b&1)){break V}D[r+12>>2]=a;D[r+8>>2]=m;Qa(r+8|0,r+12|0);D[k+72>>2]=D[k+72>>2]+1}b=$-16|0;$=b;D[k+68>>2]=D[k+68>>2]+1;a=J(c,12)+k|0;g=D[a+12>>2]-D[a+8>>2]|0;W:{if((g|0)<=0){break W}a=-1;c=D[((c<<2)+k|0)+44>>2];e=(c>>>0)/3|0;h=(c|0)==-1;f=h?-1:e;d=D[k+56>>2]+(f>>>3&536870908)|0;D[d>>2]=D[d>>2]|1<>2]=D[k+72>>2]+1;D[b+12>>2]=(c|0)>=0?D[(D[D[k>>2]+96>>2]+J(e,12)|0)+((c>>>0)%3<<2)>>2]:-1;D[b+8>>2]=m;Qa(b+8|0,b+12|0);X:{if(!h){f=c+1|0;f=(f>>>0)%3|0?f:c-2|0;if((f|0)>=0){h=(f>>>0)/3|0;d=D[(D[D[k>>2]+96>>2]+J(h,12)|0)+(f-J(h,3)<<2)>>2]}else{d=-1}D[b+12>>2]=d;D[b+8>>2]=m;Qa(b+8|0,b+12|0);e=c+(c-J(e,3)|0?-1:2)|0;if((e|0)<0){break X}a=(e>>>0)/3|0;a=D[(D[D[k>>2]+96>>2]+J(a,12)|0)+(e-J(a,3)<<2)>>2];break X}D[b+12>>2]=-1;D[b+8>>2]=m;Qa(b+8|0,b+12|0)}D[k+76>>2]=a;D[b+12>>2]=a;D[b+8>>2]=m;a=-1;Qa(b+8|0,b+12|0);a=(c|0)!=-1?D[D[D[k+4>>2]+12>>2]+(c<<2)>>2]:a;if(g>>>0<=7){break W}c=g>>>2|0;h=c>>>0>1?c:1;c=1;while(1){g=a;f=(a>>>0)/3|0;a=(a|0)==-1?-1:f;e=D[k+56>>2]+(a>>>3&536870908)|0;D[e>>2]=D[e>>2]|1<>2]=D[k+72>>2]+1;a=-1;a=(g|0)>=0?D[(D[D[k>>2]+96>>2]+J(f,12)|0)+((g>>>0)%3<<2)>>2]:a;D[k+76>>2]=a;D[b+12>>2]=a;D[b+8>>2]=m;Qa(b+8|0,b+12|0);Y:{Z:{_:{if(c&1){e=-1;if((g|0)==-1){break Y}if((g|0)!=(J(f,3)|0)){a=g-1|0;break Z}a=g+2|0;break _}e=-1;if((g|0)==-1){break Y}a=g+1|0;a=(a>>>0)%3|0?a:g-2|0}e=-1;if((a|0)==-1){break Y}}e=D[D[D[k+4>>2]+12>>2]+(a<<2)>>2]}a=e;c=c+1|0;if((h|0)!=(c|0)){continue}break}}$=b+16|0;b=D[x+96>>2];a=D[x+100>>2]}K=1;C=C+1|0;if(C>>>0<(a-b|0)/12>>>0){continue}break}}$=r+16|0;$:{if(K){a=D[z>>2];if(a){D[z+4>>2]=a;ma(a)}D[z>>2]=D[m>>2];D[z+4>>2]=D[m+4>>2];D[z+8>>2]=D[m+8>>2];L=D[m+84>>2];break $}a=D[m>>2];if(!a){break $}D[m+4>>2]=a;ma(a)}a=D[m+72>>2];if(a){ma(a)}a=D[m+48>>2];if(a){D[m+52>>2]=a;ma(a)}a=D[m+36>>2];if(a){D[m+40>>2]=a;ma(a)}a=D[m+24>>2];if(a){D[m+28>>2]=a;ma(a)}a=D[m+20>>2];D[m+20>>2]=0;if(a){ab(a)}$=m+96|0;return L|0}function Ac(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=$-16|0;$=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=D[2881];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=D[b+11572>>2];a=f+8|0;c=D[f+8>>2];b=b+11564|0;l:{if((c|0)==(b|0)){m=11524,n=di(d)&e,D[m>>2]=n;break l}D[c+12>>2]=b;D[b+8>>2]=c}b=d<<3;D[f+4>>2]=b|3;b=b+f|0;D[b+4>>2]=D[b+4>>2]|1;break a}k=D[2883];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=D[a+11572>>2];b=D[g+8>>2];a=a+11564|0;m:{if((b|0)==(a|0)){e=di(c)&e;D[2881]=e;break m}D[b+12>>2]=a;D[a+8>>2]=b}a=g+8|0;D[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;D[d+4>>2]=f|1;D[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+11564|0;g=D[2886];b=1<>2]}D[c+8>>2]=g;D[b+12>>2]=g;D[g+12>>2]=c;D[g+8>>2]=b}D[2886]=d;D[2883]=f;break a}j=D[2882];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=D[((c|a)+(b>>>a|0)<<2)+11828>>2];d=(D[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=D[c+16>>2];if(!a){a=D[c+20>>2];if(!a){break o}}c=(D[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=D[b+24>>2];f=D[b+12>>2];if((f|0)!=(b|0)){a=D[b+8>>2];D[a+12>>2]=f;D[f+8>>2]=a;break b}c=b+20|0;a=D[c>>2];if(!a){a=D[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=D[c>>2];if(a){continue}c=f+16|0;a=D[f+16>>2];if(a){continue}break}D[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=D[2882];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=D[(e<<2)+11828>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(D[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=D[c+20>>2];c=D[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=D[((c|a)+(b>>>a|0)<<2)+11828>>2]}if(!a){break q}}while(1){b=(D[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=D[a+16>>2];if(b){a=b}else{a=D[a+20>>2]}if(a){continue}break}}if(!f|D[2883]-h>>>0<=d>>>0){break k}e=D[f+24>>2];b=D[f+12>>2];if((f|0)!=(b|0)){a=D[f+8>>2];D[a+12>>2]=b;D[b+8>>2]=a;break c}c=f+20|0;a=D[c>>2];if(!a){a=D[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=D[c>>2];if(a){continue}c=b+16|0;a=D[b+16>>2];if(a){continue}break}D[g>>2]=0;break c}c=D[2883];if(c>>>0>=h>>>0){d=D[2886];b=c-h|0;u:{if(b>>>0>=16){D[2883]=b;a=d+h|0;D[2886]=a;D[a+4>>2]=b|1;D[c+d>>2]=b;D[d+4>>2]=h|3;break u}D[2886]=0;D[2883]=0;D[d+4>>2]=c|3;a=c+d|0;D[a+4>>2]=D[a+4>>2]|1}a=d+8|0;break a}i=D[2884];if(i>>>0>h>>>0){b=i-h|0;D[2884]=b;c=D[2887];a=c+h|0;D[2887]=a;D[a+4>>2]=b|1;D[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(D[2999]){c=D[3001]}else{D[3002]=-1;D[3003]=-1;D[3e3]=4096;D[3001]=4096;D[2999]=l+12&-16^1431655768;D[3004]=0;D[2992]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=D[2991];if(d){b=D[2989];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(E[11968]&4){break f}v:{w:{d=D[2887];if(d){a=11972;while(1){b=D[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=D[a+8>>2];if(a){continue}break}}b=Wa(0);if((b|0)==-1){break g}e=c;d=D[3e3];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=D[2991];if(d){a=D[2989];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=Wa(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=Wa(e);if((b|0)==(D[a>>2]+D[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=D[3001];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((Wa(b)|0)!=-1){e=b+e|0;b=a;break e}Wa(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}D[2992]=D[2992]|4}if(c>>>0>2147483646){break d}b=Wa(c);a=Wa(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=D[2989]+e|0;D[2989]=a;if(a>>>0>G[2990]){D[2990]=a}x:{y:{z:{g=D[2887];if(g){a=11972;while(1){d=D[a>>2];c=D[a+4>>2];if((d+c|0)==(b|0)){break z}a=D[a+8>>2];if(a){continue}break}break y}a=D[2885];if(!(a>>>0<=b>>>0?a:0)){D[2885]=b}a=0;D[2994]=e;D[2993]=b;D[2889]=-1;D[2890]=D[2999];D[2996]=0;while(1){d=a<<3;c=d+11564|0;D[d+11572>>2]=c;D[d+11576>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;D[2884]=c;a=a+b|0;D[2887]=a;D[a+4>>2]=c|1;D[(b+d|0)+4>>2]=40;D[2888]=D[3003];break x}if(E[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}D[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;D[2887]=c;b=D[2884]+e|0;a=b-a|0;D[2884]=a;D[c+4>>2]=a|1;D[(b+g|0)+4>>2]=40;D[2888]=D[3003];break x}if(G[2885]>b>>>0){D[2885]=b}c=b+e|0;a=11972;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=D[a>>2]){a=D[a+8>>2];if(a){continue}break F}break}if(!(E[a+12|0]&8)){break E}}a=11972;while(1){c=D[a>>2];if(c>>>0<=g>>>0){f=c+D[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=D[a+8>>2];continue}}D[a>>2]=b;D[a+4>>2]=D[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;D[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){D[2887]=i;a=D[2884]+c|0;D[2884]=a;D[i+4>>2]=a|1;break B}if(D[2886]==(e|0)){D[2886]=i;a=D[2883]+c|0;D[2883]=a;D[i+4>>2]=a|1;D[a+i>>2]=a;break B}a=D[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=D[e+8>>2];a=a>>>3|0;b=D[e+12>>2];if((b|0)==(d|0)){m=11524,n=D[2881]&di(a),D[m>>2]=n;break G}D[d+12>>2]=b;D[b+8>>2]=d;break G}h=D[e+24>>2];b=D[e+12>>2];H:{if((e|0)!=(b|0)){a=D[e+8>>2];D[a+12>>2]=b;D[b+8>>2]=a;break H}I:{a=e+20|0;d=D[a>>2];if(d){break I}a=e+16|0;d=D[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=D[a>>2];if(d){continue}a=b+16|0;d=D[b+16>>2];if(d){continue}break}D[f>>2]=0}if(!h){break G}d=D[e+28>>2];a=(d<<2)+11828|0;J:{if(D[a>>2]==(e|0)){D[a>>2]=b;if(b){break J}m=11528,n=D[2882]&di(d),D[m>>2]=n;break G}D[h+(D[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}D[b+24>>2]=h;a=D[e+16>>2];if(a){D[b+16>>2]=a;D[a+24>>2]=b}a=D[e+20>>2];if(!a){break G}D[b+20>>2]=a;D[a+24>>2]=b}e=e+g|0;c=c+g|0}D[e+4>>2]=D[e+4>>2]&-2;D[i+4>>2]=c|1;D[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+11564|0;c=D[2881];a=1<>2]}D[b+8>>2]=i;D[a+12>>2]=i;D[i+12>>2]=b;D[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}D[i+28>>2]=a;D[i+16>>2]=0;D[i+20>>2]=0;f=(a<<2)+11828|0;d=D[2882];b=1<>2]=i;D[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=D[f>>2];while(1){d=b;if((D[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=D[f+16>>2];if(b){continue}break}D[f+16>>2]=i;D[i+24>>2]=d}D[i+12>>2]=i;D[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;D[2884]=c;a=a+b|0;D[2887]=a;D[a+4>>2]=c|1;D[(b+d|0)+4>>2]=40;D[2888]=D[3003];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;D[c+4>>2]=27;a=D[2996];D[c+16>>2]=D[2995];D[c+20>>2]=a;a=D[2994];D[c+8>>2]=D[2993];D[c+12>>2]=a;D[2995]=c+8;D[2994]=e;D[2993]=b;D[2996]=0;a=c+24|0;while(1){D[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}D[c+4>>2]=D[c+4>>2]&-2;f=c-g|0;D[g+4>>2]=f|1;D[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+11564|0;c=D[2881];a=1<>2]}D[b+8>>2]=g;D[a+12>>2]=g;D[g+12>>2]=b;D[g+8>>2]=a;break x}a=31;D[g+16>>2]=0;D[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}D[g+28>>2]=a;d=(a<<2)+11828|0;c=D[2882];b=1<>2]=g;D[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=D[d>>2];while(1){c=b;if((f|0)==(D[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=D[d+16>>2];if(b){continue}break}D[d+16>>2]=g;D[g+24>>2]=c}D[g+12>>2]=g;D[g+8>>2]=g;break x}a=D[d+8>>2];D[a+12>>2]=i;D[d+8>>2]=i;D[i+24>>2]=0;D[i+12>>2]=d;D[i+8>>2]=a}a=j+8|0;break a}a=D[c+8>>2];D[a+12>>2]=g;D[c+8>>2]=g;D[g+24>>2]=0;D[g+12>>2]=c;D[g+8>>2]=a}a=D[2884];if(a>>>0<=h>>>0){break d}b=a-h|0;D[2884]=b;c=D[2887];a=c+h|0;D[2887]=a;D[a+4>>2]=b|1;D[c+4>>2]=h|3;a=c+8|0;break a}D[2879]=48;a=0;break a}O:{if(!e){break O}c=D[f+28>>2];a=(c<<2)+11828|0;P:{if(D[a>>2]==(f|0)){D[a>>2]=b;if(b){break P}j=di(c)&j;D[2882]=j;break O}D[e+(D[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}D[b+24>>2]=e;a=D[f+16>>2];if(a){D[b+16>>2]=a;D[a+24>>2]=b}a=D[f+20>>2];if(!a){break O}D[b+20>>2]=a;D[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;D[f+4>>2]=a|3;a=a+f|0;D[a+4>>2]=D[a+4>>2]|1;break Q}D[f+4>>2]=h|3;e=f+h|0;D[e+4>>2]=d|1;D[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+11564|0;c=D[2881];a=1<>2]}D[b+8>>2]=e;D[a+12>>2]=e;D[e+12>>2]=b;D[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}D[e+28>>2]=a;D[e+16>>2]=0;D[e+20>>2]=0;b=(a<<2)+11828|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=D[b>>2];while(1){b=h;if((D[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=D[c+16>>2];if(h){continue}break}D[c+16>>2]=e}D[e+24>>2]=b;D[e+12>>2]=e;D[e+8>>2]=e;break Q}a=D[b+8>>2];D[a+12>>2]=e;D[b+8>>2]=e;D[e+24>>2]=0;D[e+12>>2]=b;D[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=D[b+28>>2];a=(c<<2)+11828|0;V:{if(D[a>>2]==(b|0)){D[a>>2]=f;if(f){break V}m=11528,n=di(c)&j,D[m>>2]=n;break U}D[i+(D[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}D[f+24>>2]=i;a=D[b+16>>2];if(a){D[f+16>>2]=a;D[a+24>>2]=f}a=D[b+20>>2];if(!a){break U}D[f+20>>2]=a;D[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;D[b+4>>2]=a|3;a=a+b|0;D[a+4>>2]=D[a+4>>2]|1;break W}D[b+4>>2]=h|3;f=b+h|0;D[f+4>>2]=d|1;D[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+11564|0;g=D[2886];a=1<>2]}D[c+8>>2]=g;D[a+12>>2]=g;D[g+12>>2]=c;D[g+8>>2]=a}D[2886]=f;D[2883]=d}a=b+8|0}$=l+16|0;return a|0}function Kd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=$-80|0;$=h;e=D[c+36>>2];D[h+72>>2]=D[c+32>>2];D[h+76>>2]=e;f=D[c+28>>2];e=h- -64|0;D[e>>2]=D[c+24>>2];D[e+4>>2]=f;e=D[c+20>>2];D[h+56>>2]=D[c+16>>2];D[h+60>>2]=e;e=D[c+12>>2];D[h+48>>2]=D[c+8>>2];D[h+52>>2]=e;e=D[c+4>>2];D[h+40>>2]=D[c>>2];D[h+44>>2]=e;ec(a,h+40|0,h+24|0);a:{if(D[a>>2]){break a}l=a+4|0;if(B[a+15|0]<0){ma(D[l>>2])}if(E[h+31|0]!=1){b=na(32);c=E[1590]|E[1591]<<8|(E[1592]<<16|E[1593]<<24);B[b+16|0]=c;B[b+17|0]=c>>>8;B[b+18|0]=c>>>16;B[b+19|0]=c>>>24;c=E[1586]|E[1587]<<8|(E[1588]<<16|E[1589]<<24);d=E[1582]|E[1583]<<8|(E[1584]<<16|E[1585]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1578]|E[1579]<<8|(E[1580]<<16|E[1581]<<24);d=E[1574]|E[1575]<<8|(E[1576]<<16|E[1577]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+20|0]=0;D[a>>2]=-1;ta(l,b,20);ma(b);break a}i=$-16|0;$=i;b:{c:{switch(E[h+32|0]){case 0:e=na(48);Fd(e);D[e>>2]=9896;D[h+8>>2]=0;D[h+12>>2]=0;D[h>>2]=0;D[h+4>>2]=0;D[h+16>>2]=e;break b;case 1:e=na(52);Fd(e);D[e+48>>2]=0;D[e>>2]=8204;D[h+8>>2]=0;D[h+12>>2]=0;D[h>>2]=0;D[h+4>>2]=0;D[h+16>>2]=e;break b;default:break c}}f=na(32);e=E[1664]|E[1665]<<8|(E[1666]<<16|E[1667]<<24);B[f+24|0]=e;B[f+25|0]=e>>>8;B[f+26|0]=e>>>16;B[f+27|0]=e>>>24;e=E[1660]|E[1661]<<8|(E[1662]<<16|E[1663]<<24);g=E[1656]|E[1657]<<8|(E[1658]<<16|E[1659]<<24);B[f+16|0]=g;B[f+17|0]=g>>>8;B[f+18|0]=g>>>16;B[f+19|0]=g>>>24;B[f+20|0]=e;B[f+21|0]=e>>>8;B[f+22|0]=e>>>16;B[f+23|0]=e>>>24;e=E[1652]|E[1653]<<8|(E[1654]<<16|E[1655]<<24);g=E[1648]|E[1649]<<8|(E[1650]<<16|E[1651]<<24);B[f+8|0]=g;B[f+9|0]=g>>>8;B[f+10|0]=g>>>16;B[f+11|0]=g>>>24;B[f+12|0]=e;B[f+13|0]=e>>>8;B[f+14|0]=e>>>16;B[f+15|0]=e>>>24;e=E[1644]|E[1645]<<8|(E[1646]<<16|E[1647]<<24);g=E[1640]|E[1641]<<8|(E[1642]<<16|E[1643]<<24);B[f|0]=g;B[f+1|0]=g>>>8;B[f+2|0]=g>>>16;B[f+3|0]=g>>>24;B[f+4|0]=e;B[f+5|0]=e>>>8;B[f+6|0]=e>>>16;B[f+7|0]=e>>>24;B[f+28|0]=0;D[i>>2]=-1;e=i|4;ta(e,f,28);k=B[i+15|0];D[h>>2]=D[i>>2];g=h+4|0;d:{if((k|0)>=0){k=D[e+4>>2];D[g>>2]=D[e>>2];D[g+4>>2]=k;D[g+8>>2]=D[e+8>>2];break d}ta(g,D[i+4>>2],D[i+8>>2])}D[h+16>>2]=0;if(B[i+15|0]<0){ma(D[i+4>>2])}ma(f)}$=i+16|0;e=D[h>>2];e:{if(e){D[a>>2]=e;if(B[h+15|0]>=0){a=h|4;b=D[a+4>>2];D[l>>2]=D[a>>2];D[l+4>>2]=b;D[l+8>>2]=D[a+8>>2];break e}ta(l,D[h+4>>2],D[h+8>>2]);break e}e=D[h+16>>2];D[h+16>>2]=0;D[e+44>>2]=d;i=$-32|0;$=i;D[e+32>>2]=c;D[e+40>>2]=b;D[e+4>>2]=d;ec(a,c,i+16|0);f:{if(D[a>>2]){break f}f=a+4|0;if(B[a+15|0]<0){ma(D[f>>2])}b=E[i+23|0];if((ba[D[D[e>>2]+8>>2]](e)|0)!=(b|0)){b=na(64);c=E[1448]|E[1449]<<8;B[b+48|0]=c;B[b+49|0]=c>>>8;c=E[1444]|E[1445]<<8|(E[1446]<<16|E[1447]<<24);d=E[1440]|E[1441]<<8|(E[1442]<<16|E[1443]<<24);B[b+40|0]=d;B[b+41|0]=d>>>8;B[b+42|0]=d>>>16;B[b+43|0]=d>>>24;B[b+44|0]=c;B[b+45|0]=c>>>8;B[b+46|0]=c>>>16;B[b+47|0]=c>>>24;c=E[1436]|E[1437]<<8|(E[1438]<<16|E[1439]<<24);d=E[1432]|E[1433]<<8|(E[1434]<<16|E[1435]<<24);B[b+32|0]=d;B[b+33|0]=d>>>8;B[b+34|0]=d>>>16;B[b+35|0]=d>>>24;B[b+36|0]=c;B[b+37|0]=c>>>8;B[b+38|0]=c>>>16;B[b+39|0]=c>>>24;c=E[1428]|E[1429]<<8|(E[1430]<<16|E[1431]<<24);d=E[1424]|E[1425]<<8|(E[1426]<<16|E[1427]<<24);B[b+24|0]=d;B[b+25|0]=d>>>8;B[b+26|0]=d>>>16;B[b+27|0]=d>>>24;B[b+28|0]=c;B[b+29|0]=c>>>8;B[b+30|0]=c>>>16;B[b+31|0]=c>>>24;c=E[1420]|E[1421]<<8|(E[1422]<<16|E[1423]<<24);d=E[1416]|E[1417]<<8|(E[1418]<<16|E[1419]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1412]|E[1413]<<8|(E[1414]<<16|E[1415]<<24);d=E[1408]|E[1409]<<8|(E[1410]<<16|E[1411]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1404]|E[1405]<<8|(E[1406]<<16|E[1407]<<24);d=E[1400]|E[1401]<<8|(E[1402]<<16|E[1403]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+50|0]=0;D[a>>2]=-1;ta(f,b,50);ma(b);break f}c=E[i+21|0];B[e+36|0]=c;d=E[i+22|0];B[e+37|0]=d;if((c|0)!=2){b=na(32);c=E[1571]|E[1572]<<8;B[b+24|0]=c;B[b+25|0]=c>>>8;c=E[1567]|E[1568]<<8|(E[1569]<<16|E[1570]<<24);d=E[1563]|E[1564]<<8|(E[1565]<<16|E[1566]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1559]|E[1560]<<8|(E[1561]<<16|E[1562]<<24);d=E[1555]|E[1556]<<8|(E[1557]<<16|E[1558]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1551]|E[1552]<<8|(E[1553]<<16|E[1554]<<24);d=E[1547]|E[1548]<<8|(E[1549]<<16|E[1550]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+26|0]=0;D[a>>2]=-5;ta(f,b,26);ma(b);break f}b=b?2:3;if((b|0)!=(d|0)){b=na(32);c=E[1544]|E[1545]<<8;B[b+24|0]=c;B[b+25|0]=c>>>8;c=E[1540]|E[1541]<<8|(E[1542]<<16|E[1543]<<24);d=E[1536]|E[1537]<<8|(E[1538]<<16|E[1539]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1532]|E[1533]<<8|(E[1534]<<16|E[1535]<<24);d=E[1528]|E[1529]<<8|(E[1530]<<16|E[1531]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1524]|E[1525]<<8|(E[1526]<<16|E[1527]<<24);d=E[1520]|E[1521]<<8|(E[1522]<<16|E[1523]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+26|0]=0;D[a>>2]=-5;ta(f,b,26);ma(b);break f}C[D[e+32>>2]+38>>1]=b|512;g:{if(C[i+26>>1]>=0){break g}k=$-16|0;$=k;d=na(36);b=d;D[b+4>>2]=0;D[b+8>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;b=b+16|0;D[b>>2]=0;D[b+4>>2]=0;D[d>>2]=d+4;D[d+32>>2]=0;D[d+12>>2]=b;D[k>>2]=0;c=D[e+32>>2];m=$-16|0;$=m;b=0;h:{if(!d){break h}D[k>>2]=c;D[m+12>>2]=0;b=0;if(!eb(1,m+12|0,c)){break h}p=D[m+12>>2];if(p){while(1){i:{if(eb(1,m+8|0,D[k>>2])){b=na(28);D[b+4>>2]=0;D[b+8>>2]=0;c=b+16|0;D[c>>2]=0;D[c+4>>2]=0;D[b>>2]=b+4;D[b+12>>2]=c;D[b+24>>2]=D[m+8>>2];if(Pc(k,b)){break i}Ca(b+12|0,D[b+16>>2]);Ba(b,D[b+4>>2]);ma(b)}b=0;break h}g=$-16|0;$=g;D[g+8>>2]=b;j:{if(!b){D[g+8>>2]=0;break j}c=D[d+28>>2];k:{if(c>>>0>2]){D[g+8>>2]=0;D[c>>2]=b;D[d+28>>2]=c+4;break k}c=0;l:{m:{n:{j=D[d+24>>2];o=D[d+28>>2]-j>>2;b=o+1|0;if(b>>>0<1073741824){j=D[d+32>>2]-j|0;n=j>>1;b=j>>2>>>0<536870911?b>>>0>n>>>0?b:n:1073741823;if(b){if(b>>>0>=1073741824){break n}c=na(b<<2)}n=D[g+8>>2];D[g+8>>2]=0;j=(o<<2)+c|0;D[j>>2]=n;o=(b<<2)+c|0;n=j+4|0;c=D[d+28>>2];b=D[d+24>>2];if((c|0)==(b|0)){break m}while(1){c=c-4|0;r=D[c>>2];D[c>>2]=0;j=j-4|0;D[j>>2]=r;if((b|0)!=(c|0)){continue}break}D[d+32>>2]=o;c=D[d+28>>2];D[d+28>>2]=n;b=D[d+24>>2];D[d+24>>2]=j;if((b|0)==(c|0)){break l}while(1){c=c-4|0;j=D[c>>2];D[c>>2]=0;if(j){Ca(j+12|0,D[j+16>>2]);Ba(j,D[j+4>>2]);ma(j)}if((b|0)!=(c|0)){continue}break}break l}qa();T()}ra(1326);T()}D[d+32>>2]=o;D[d+28>>2]=n;D[d+24>>2]=j}if(b){ma(b)}}b=D[g+8>>2];D[g+8>>2]=0;if(!b){break j}Ca(b+12|0,D[b+16>>2]);Ba(b,D[b+4>>2]);ma(b)}$=g+16|0;q=q+1|0;if((q|0)!=(p|0)){continue}break}}b=Pc(k,d)}$=m+16|0;o:{if(b){c=D[e+4>>2];b=D[c+4>>2];D[c+4>>2]=d;if(b){dc(b)}D[a>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;break o}b=na(32);c=E[1693]|E[1694]<<8;B[b+24|0]=c;B[b+25|0]=c>>>8;c=E[1689]|E[1690]<<8|(E[1691]<<16|E[1692]<<24);g=E[1685]|E[1686]<<8|(E[1687]<<16|E[1688]<<24);B[b+16|0]=g;B[b+17|0]=g>>>8;B[b+18|0]=g>>>16;B[b+19|0]=g>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1681]|E[1682]<<8|(E[1683]<<16|E[1684]<<24);g=E[1677]|E[1678]<<8|(E[1679]<<16|E[1680]<<24);B[b+8|0]=g;B[b+9|0]=g>>>8;B[b+10|0]=g>>>16;B[b+11|0]=g>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1673]|E[1674]<<8|(E[1675]<<16|E[1676]<<24);g=E[1669]|E[1670]<<8|(E[1671]<<16|E[1672]<<24);B[b|0]=g;B[b+1|0]=g>>>8;B[b+2|0]=g>>>16;B[b+3|0]=g>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+26|0]=0;D[a>>2]=-1;ta(a+4|0,b,26);ma(b);D[k+8>>2]=0;dc(d)}$=k+16|0;if(D[a>>2]){break f}if(B[f+11|0]>=0){break g}ma(D[f>>2])}if(!(ba[D[D[e>>2]+12>>2]](e)|0)){b=na(48);B[b+32|0]=E[1518];c=E[1514]|E[1515]<<8|(E[1516]<<16|E[1517]<<24);d=E[1510]|E[1511]<<8|(E[1512]<<16|E[1513]<<24);B[b+24|0]=d;B[b+25|0]=d>>>8;B[b+26|0]=d>>>16;B[b+27|0]=d>>>24;B[b+28|0]=c;B[b+29|0]=c>>>8;B[b+30|0]=c>>>16;B[b+31|0]=c>>>24;c=E[1506]|E[1507]<<8|(E[1508]<<16|E[1509]<<24);d=E[1502]|E[1503]<<8|(E[1504]<<16|E[1505]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1498]|E[1499]<<8|(E[1500]<<16|E[1501]<<24);d=E[1494]|E[1495]<<8|(E[1496]<<16|E[1497]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1490]|E[1491]<<8|(E[1492]<<16|E[1493]<<24);d=E[1486]|E[1487]<<8|(E[1488]<<16|E[1489]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+33|0]=0;D[a>>2]=-1;ta(f,b,33);ma(b);break f}if(!(ba[D[D[e>>2]+20>>2]](e)|0)){b=Fb(i,1696);D[a>>2]=-1;if(B[b+11|0]>=0){b=D[i+4>>2];D[f>>2]=D[i>>2];D[f+4>>2]=b;D[f+8>>2]=D[i+8>>2];break f}ta(f,D[b>>2],D[b+4>>2]);if(B[b+11|0]>=0){break f}ma(D[b>>2]);break f}if(!(ba[D[D[e>>2]+24>>2]](e)|0)){b=Fb(i,1451);D[a>>2]=-1;if(B[b+11|0]>=0){b=D[i+4>>2];D[f>>2]=D[i>>2];D[f+4>>2]=b;D[f+8>>2]=D[i+8>>2];break f}ta(f,D[b>>2],D[b+4>>2]);if(B[b+11|0]>=0){break f}ma(D[b>>2]);break f}D[a>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0}$=i+32|0;if(!D[a>>2]){if(B[l+11|0]<0){ma(D[l>>2])}D[a>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0}ba[D[D[e>>2]+4>>2]](e)}a=D[h+16>>2];D[h+16>>2]=0;if(a){ba[D[D[a>>2]+4>>2]](a)}if(B[h+15|0]>=0){break a}ma(D[h+4>>2])}$=h+80|0}function Pc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=$-48|0;$=k;c=na(8);D[c+4>>2]=b;D[c>>2]=0;b=c+8|0;D[k+40>>2]=b;D[k+36>>2]=b;D[k+32>>2]=c;a:{b:{c:{d:{while(1){b=b-8|0;j=D[b+4>>2];g=D[b>>2];D[k+36>>2]=b;if(g){D[k+24>>2]=0;D[k+16>>2]=0;D[k+20>>2]=0;c=1;b=D[a>>2];e=D[b+8>>2];h=D[b+12>>2];d=D[b+20>>2];f=D[b+16>>2];e:{if((h|0)<=(d|0)&f>>>0>=e>>>0|(d|0)>(h|0)){break e}e=E[f+D[b>>2]|0];f=f+1|0;d=f?d:d+1|0;D[b+16>>2]=f;D[b+20>>2]=d;Qb(k+16|0,e);if(e){d=D[a>>2];m=Rb(k+16|0);f=D[d+20>>2];i=D[d+16>>2];b=e;n=i+e|0;h=D[d+12>>2];f=e>>>0>n>>>0?f+1|0:f;if(n>>>0>G[d+8>>2]&(h|0)<=(f|0)|(f|0)>(h|0)){break e}oa(m,i+D[d>>2]|0,e);c=D[d+20>>2];e=b+D[d+16>>2]|0;c=e>>>0>>0?c+1|0:c;D[d+16>>2]=e;D[d+20>>2]=c}j=na(24);b=j;D[b+4>>2]=0;D[b+8>>2]=0;b=b+16|0;D[b>>2]=0;D[b+4>>2]=0;D[j>>2]=j+4;D[j+12>>2]=b;e=$-32|0;$=e;f=g+12|0;c=k+16|0;l=_a(f,c);p=g+16|0;f:{if((l|0)==(p|0)){D[e+16>>2]=c;b=D[f+4>>2];g:{h:{if(b){d=E[c+11|0];g=d<<24>>24<0;h=g?D[c>>2]:c;g=g?D[c+4>>2]:d;c=f+4|0;while(1){d=E[b+27|0];n=d<<24>>24<0;d=n?D[b+20>>2]:d;m=d>>>0>>0;i:{j:{k:{l:{m:{i=m?d:g;n:{if(i){o=b+16|0;n=n?D[o>>2]:o;o=va(h,n,i);if(!o){if(d>>>0>g>>>0){break n}break m}if((o|0)>=0){break m}break n}if(d>>>0<=g>>>0){break l}}d=D[b>>2];if(d){break i}break h}d=va(n,h,i);if(d){break k}}if(m){break j}break g}if((d|0)>=0){break g}}c=b+4|0;d=D[b+4>>2];if(!d){break g}b=c}c=b;b=d;continue}}b=f+4|0}c=b}d=D[c>>2];if(d){b=0}else{d=na(32);h=d+16|0;g=D[e+16>>2];o:{if(B[g+11|0]>=0){n=D[g+4>>2];D[h>>2]=D[g>>2];D[h+4>>2]=n;D[h+8>>2]=D[g+8>>2];break o}ta(h,D[g>>2],D[g+4>>2])}D[d+8>>2]=b;D[d>>2]=0;D[d+4>>2]=0;D[d+28>>2]=0;D[c>>2]=d;b=D[D[f>>2]>>2];if(b){D[f>>2]=b;b=D[c>>2]}else{b=d}pb(D[f+4>>2],b);D[f+8>>2]=D[f+8>>2]+1;b=1}B[e+28|0]=b;D[e+24>>2]=d;c=D[e+24>>2];b=D[c+28>>2];D[c+28>>2]=j;if(!b){break f}Ca(b+12|0,D[b+16>>2]);Ba(b,D[b+4>>2]);ma(b);break f}if(!j){break f}Ca(j+12|0,D[j+16>>2]);Ba(j,D[j+4>>2]);ma(j)}$=e+32|0;c=(l|0)!=(p|0)}if(B[k+27|0]<0){ma(D[k+16>>2])}if(c){break b}}if(!j){break b}D[k+16>>2]=0;if(!eb(1,k+16|0,D[a>>2])){break b}b=0;r=D[k+16>>2];if(r){while(1){n=0;i=$-32|0;$=i;D[i+24>>2]=0;D[i+16>>2]=0;D[i+20>>2]=0;c=D[a>>2];e=D[c+8>>2];p:{q:{f=D[c+12>>2];d=D[c+20>>2];g=D[c+16>>2];r:{if((f|0)<=(d|0)&g>>>0>=e>>>0|(d|0)>(f|0)){break r}f=E[g+D[c>>2]|0];e=c;c=d;d=g+1|0;c=d?c:c+1|0;D[e+16>>2]=d;D[e+20>>2]=c;Qb(i+16|0,f);if(f){e=D[a>>2];m=Rb(i+16|0);d=D[e+20>>2];l=D[e+16>>2];c=f;h=l+c|0;g=D[e+12>>2];d=c>>>0>h>>>0?d+1|0:d;if(h>>>0>G[e+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break r}oa(m,l+D[e>>2]|0,f);d=D[e+20>>2];f=c+D[e+16>>2]|0;d=f>>>0>>0?d+1|0:d;D[e+16>>2]=f;D[e+20>>2]=d}D[i+12>>2]=0;if(!eb(1,i+12|0,D[a>>2])){break r}c=D[i+12>>2];if(!c){break r}D[i+8>>2]=0;D[i>>2]=0;D[i+4>>2]=0;if((c|0)<0){break q}d=na(c);D[i>>2]=d;e=c+d|0;D[i+8>>2]=e;m=pa(d,0,c);D[i+4>>2]=e;e=D[a>>2];n=D[e+8>>2];g=D[e+12>>2];f=D[e+20>>2];l=D[e+16>>2];h=c+l|0;f=h>>>0>>0?f+1|0:f;n=(f|0)<=(g|0)&h>>>0<=n>>>0|(f|0)<(g|0);if(n){oa(m,l+D[e>>2]|0,c);d=c;f=c+D[e+16>>2]|0;c=D[e+20>>2];D[e+16>>2]=f;D[e+20>>2]=d>>>0>f>>>0?c+1|0:c;g=$-48|0;$=g;d=_a(j,i+16|0);if((d|0)!=(j+4|0)){e=D[d+4>>2];s:{if(!e){f=D[d+8>>2];if(D[f>>2]==(d|0)){break s}c=d+8|0;while(1){e=D[c>>2];c=e+8|0;f=D[e+8>>2];if((e|0)!=D[f>>2]){continue}break}break s}while(1){f=e;e=D[e>>2];if(e){continue}break}}if(D[j>>2]==(d|0)){D[j>>2]=f}D[j+8>>2]=D[j+8>>2]-1;f=D[j+4>>2];h=d;t:{u:{e=D[d>>2];if(e){c=D[h+4>>2];if(!c){break u}while(1){d=c;c=D[c>>2];if(c){continue}break}}e=D[d+4>>2];if(e){break u}e=0;m=1;break t}D[e+8>>2]=D[d+8>>2];m=0}l=D[d+8>>2];c=D[l>>2];v:{if((d|0)==(c|0)){D[l>>2]=e;if((d|0)==(f|0)){c=0;f=e;break v}c=D[l+4>>2];break v}D[l+4>>2]=e}o=!E[d+12|0];if((d|0)!=(h|0)){l=D[h+8>>2];D[d+8>>2]=l;D[l+(((h|0)!=D[D[h+8>>2]>>2])<<2)>>2]=d;l=D[h>>2];D[d>>2]=l;D[l+8>>2]=d;l=D[h+4>>2];D[d+4>>2]=l;if(l){D[l+8>>2]=d}B[d+12|0]=E[h+12|0];f=(f|0)==(h|0)?d:f}w:{if(o|!f){break w}if(m){while(1){e=E[c+12|0];x:{d=D[c+8>>2];if(D[d>>2]!=(c|0)){if(!e){B[c+12|0]=1;B[d+12|0]=0;e=D[d+4>>2];m=D[e>>2];D[d+4>>2]=m;if(m){D[m+8>>2]=d}D[e+8>>2]=D[d+8>>2];m=D[d+8>>2];D[(((d|0)!=D[m>>2])<<2)+m>>2]=e;D[e>>2]=d;D[d+8>>2]=e;d=c;c=D[c>>2];f=(c|0)==(f|0)?d:f;c=D[c+4>>2]}y:{z:{d=D[c>>2];A:{if(!(E[d+12|0]?0:d)){e=D[c+4>>2];if(E[e+12|0]?0:e){break A}B[c+12|0]=0;c=D[c+8>>2];B:{if((f|0)==(c|0)){c=f;break B}if(E[c+12|0]){break x}}B[c+12|0]=1;break w}e=D[c+4>>2];if(!e){break z}}if(E[e+12|0]){break z}d=c;break y}B[d+12|0]=1;B[c+12|0]=0;e=D[d+4>>2];D[c>>2]=e;if(e){D[e+8>>2]=c}D[d+8>>2]=D[c+8>>2];e=D[c+8>>2];D[((D[e>>2]!=(c|0))<<2)+e>>2]=d;D[d+4>>2]=c;D[c+8>>2]=d;e=c}c=D[d+8>>2];B[d+12|0]=E[c+12|0];B[c+12|0]=1;B[e+12|0]=1;d=D[c+4>>2];e=D[d>>2];D[c+4>>2]=e;if(e){D[e+8>>2]=c}D[d+8>>2]=D[c+8>>2];e=D[c+8>>2];D[(((c|0)!=D[e>>2])<<2)+e>>2]=d;D[d>>2]=c;D[c+8>>2]=d;break w}if(!e){B[c+12|0]=1;B[d+12|0]=0;e=D[c+4>>2];D[d>>2]=e;if(e){D[e+8>>2]=d}D[c+8>>2]=D[d+8>>2];e=D[d+8>>2];D[(((d|0)!=D[e>>2])<<2)+e>>2]=c;D[c+4>>2]=d;D[d+8>>2]=c;f=(d|0)==(f|0)?c:f;c=D[d>>2]}e=D[c>>2];C:{if(!(!e|E[e+12|0])){d=c;break C}d=D[c+4>>2];if(!(E[d+12|0]?0:d)){B[c+12|0]=0;c=D[c+8>>2];if((c|0)!=(f|0)?E[c+12|0]:0){break x}B[c+12|0]=1;break w}if(e){if(!E[e+12|0]){d=c;break C}d=D[c+4>>2]}B[d+12|0]=1;B[c+12|0]=0;e=D[d>>2];D[c+4>>2]=e;if(e){D[e+8>>2]=c}D[d+8>>2]=D[c+8>>2];e=D[c+8>>2];D[((D[e>>2]!=(c|0))<<2)+e>>2]=d;D[d>>2]=c;D[c+8>>2]=d;e=c}c=D[d+8>>2];B[d+12|0]=E[c+12|0];B[c+12|0]=1;B[e+12|0]=1;d=D[c>>2];e=D[d+4>>2];D[c>>2]=e;if(e){D[e+8>>2]=c}D[d+8>>2]=D[c+8>>2];e=D[c+8>>2];D[(((c|0)!=D[e>>2])<<2)+e>>2]=d;D[d+4>>2]=c;D[c+8>>2]=d;break w}d=c;c=D[c+8>>2];c=D[(((d|0)==D[c>>2])<<2)+c>>2];continue}}B[e+12|0]=1}c=D[h+28>>2];if(c){D[h+32>>2]=c;ma(c)}if(B[h+27|0]<0){ma(D[h+16>>2])}ma(h)}D[g>>2]=0;D[g+4>>2]=0;D[g+8>>2]=0;c=D[i+4>>2]-D[i>>2]|0;gb(g,c);oa(D[g>>2],D[i>>2],c);D:{if(B[i+27|0]>=0){D[g+24>>2]=D[i+24>>2];c=D[i+20>>2];D[g+16>>2]=D[i+16>>2];D[g+20>>2]=c;break D}ta(g+16|0,D[i+16>>2],D[i+20>>2])}D[g+36>>2]=0;D[g+28>>2]=0;D[g+32>>2]=0;gb(g+28|0,D[g+4>>2]-D[g>>2]|0);c=D[g>>2];oa(D[g+28>>2],c,D[g+4>>2]-c|0);f=g+16|0;d=f;c=D[j+4>>2];E:{F:{if(c){e=E[d+11|0];h=e<<24>>24<0;m=h?D[d>>2]:d;h=h?D[d+4>>2]:e;d=j+4|0;while(1){e=E[c+27|0];l=e<<24>>24<0;e=l?D[c+20>>2]:e;p=e>>>0>>0;G:{H:{I:{J:{K:{o=p?e:h;L:{if(o){q=c+16|0;l=l?D[q>>2]:q;q=va(m,l,o);if(!q){if(e>>>0>h>>>0){break L}break K}if((q|0)>=0){break K}break L}if(e>>>0<=h>>>0){break J}}e=D[c>>2];if(e){break G}break F}e=va(l,m,o);if(e){break I}}if(p){break H}break E}if((e|0)>=0){break E}}d=c+4|0;e=D[c+4>>2];if(!e){break E}c=d}d=c;c=e;continue}}c=j+4|0}d=c}e=D[d>>2];if(e){c=0}else{e=na(40);D[e+24>>2]=D[f+8>>2];h=D[f+4>>2];D[e+16>>2]=D[f>>2];D[e+20>>2]=h;D[f>>2]=0;D[f+4>>2]=0;D[f+8>>2]=0;D[e+36>>2]=0;h=e+28|0;D[h>>2]=0;D[h+4>>2]=0;gb(h,D[f+16>>2]-D[f+12>>2]|0);m=D[h>>2];h=D[f+12>>2];oa(m,h,D[f+16>>2]-h|0);D[e+8>>2]=c;D[e>>2]=0;D[e+4>>2]=0;D[d>>2]=e;c=D[D[j>>2]>>2];if(c){D[j>>2]=c;c=D[d>>2]}else{c=e}pb(D[j+4>>2],c);D[j+8>>2]=D[j+8>>2]+1;c=1}B[g+44|0]=c;D[g+40>>2]=e;c=D[g+28>>2];if(c){D[g+32>>2]=c;ma(c)}if(B[g+27|0]<0){ma(D[g+16>>2])}c=D[g>>2];if(c){D[g+4>>2]=c;ma(c)}$=g+48|0;d=D[i>>2];if(!d){break r}}D[i+4>>2]=d;ma(d)}if(B[i+27|0]<0){ma(D[i+16>>2])}$=i+32|0;break p}qa();T()}if(!n){break b}b=b+1|0;if((r|0)!=(b|0)){continue}break}}D[k+12>>2]=0;if(!eb(1,k+12|0,D[a>>2])){break b}b=D[a>>2];c=D[b+8>>2];d=D[b+16>>2];e=c-d|0;f=D[k+12>>2];b=D[b+12>>2]-(D[b+20>>2]+(c>>>0>>0)|0)|0;if(e>>>0>>0&(b|0)<=0|(b|0)<0){break b}c=0;b=D[k+36>>2];if(f){while(1){e=D[k+40>>2];M:{if(e>>>0>b>>>0){D[b+4>>2]=0;D[b>>2]=j;b=b+8|0;D[k+36>>2]=b;break M}d=D[k+32>>2];g=b-d|0;h=g>>3;b=h+1|0;if(b>>>0>=536870912){break d}e=e-d|0;n=e>>2;b=e>>3>>>0<268435455?b>>>0>n>>>0?b:n:536870911;if(b>>>0>=536870912){break c}m=h<<3;h=b<<3;e=na(h);b=m+e|0;D[b+4>>2]=0;D[b>>2]=j;b=b+8|0;if((g|0)>0){oa(e,d,g)}D[k+40>>2]=e+h;D[k+36>>2]=b;D[k+32>>2]=e;if(!d){break M}ma(d)}c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(D[k+32>>2]!=(b|0)){continue}break}a=1;break a}qa();T()}ra(1326);T()}b=D[k+32>>2];a=0}if(b){ma(b)}$=k+48|0;return a}function he(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=$-48|0;$=j;a:{if((c|0)!=1){break a}f=D[a+4>>2];a=D[a+12>>2];D[j+40>>2]=0;D[j+32>>2]=0;D[j+36>>2]=0;D[j+24>>2]=0;D[j+28>>2]=0;D[j+16>>2]=0;D[j+20>>2]=0;D[j+8>>2]=0;D[j+12>>2]=0;e=j+8|0;b:{if((b|0)==-2){break b}l=D[D[D[f+4>>2]+8>>2]+(a<<2)>>2];if((ba[D[D[f>>2]+8>>2]](f)|0)==1){k=$-32|0;$=k;g=D[D[D[f+4>>2]+8>>2]+(a<<2)>>2];c:{d:{e:{if((ba[D[D[f>>2]+8>>2]](f)|0)!=1|b-1>>>0>5){break e}i=ba[D[D[f>>2]+36>>2]](f)|0;h=ba[D[D[f>>2]+44>>2]](f,a)|0;if(!i|!h){break e}c=ba[D[D[f>>2]+40>>2]](f,a)|0;if(c){a=D[f+44>>2];D[k+12>>2]=c;D[k+8>>2]=a;D[k+20>>2]=h;D[k+16>>2]=h+12;f=k+8|0;a=0;f:{g:{switch(b-1|0){case 0:a=na(60);D[a+4>>2]=g;D[a>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];d=D[e+20>>2];c=D[e>>2];b=D[e+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=i;D[a+28>>2]=d;D[a+16>>2]=g;D[a+20>>2]=h;D[a+8>>2]=c;D[a+12>>2]=b;b=D[e+24>>2];d=D[e+28>>2]-b|0;if(d){if((d|0)<0){break d}c=na(d);D[a+32>>2]=c;D[a+40>>2]=c+(d>>2<<2);m=a,n=oa(c,b,d)+d|0,D[m+36>>2]=n}b=D[f+4>>2];D[a+44>>2]=D[f>>2];D[a+48>>2]=b;b=D[f+12>>2];D[a+52>>2]=D[f+8>>2];D[a+56>>2]=b;D[a>>2]=2280;break f;case 3:a=na(112);D[a+4>>2]=g;D[a>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];d=D[e+20>>2];c=D[e>>2];b=D[e+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=i;D[a+28>>2]=d;D[a+16>>2]=g;D[a+20>>2]=h;D[a+8>>2]=c;D[a+12>>2]=b;b=D[e+24>>2];d=D[e+28>>2]-b|0;if(d){if((d|0)<0){break d}c=na(d);D[a+32>>2]=c;D[a+40>>2]=c+(d>>2<<2);m=a,n=oa(c,b,d)+d|0,D[m+36>>2]=n}b=D[f+4>>2];D[a+44>>2]=D[f>>2];D[a+48>>2]=b;b=D[f+12>>2];D[a+52>>2]=D[f+8>>2];D[a+56>>2]=b;D[a+60>>2]=0;D[a+64>>2]=0;D[a>>2]=3044;D[a+68>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+84>>2]=0;D[a+88>>2]=0;D[a+92>>2]=0;D[a+96>>2]=0;D[a+100>>2]=0;D[a+104>>2]=0;D[a+108>>2]=0;break f;case 4:a=na(104);D[a+4>>2]=g;D[a>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];d=D[e+20>>2];c=D[e>>2];b=D[e+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=i;D[a+28>>2]=d;D[a+16>>2]=g;D[a+20>>2]=h;D[a+8>>2]=c;D[a+12>>2]=b;b=D[e+24>>2];d=D[e+28>>2]-b|0;if(d){if((d|0)<0){break d}c=na(d);D[a+32>>2]=c;D[a+40>>2]=c+(d>>2<<2);m=a,n=oa(c,b,d)+d|0,D[m+36>>2]=n}b=D[f+4>>2];D[a+44>>2]=D[f>>2];D[a+48>>2]=b;c=D[f+8>>2];b=D[f+12>>2];D[a+84>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+60>>2]=0;D[a+64>>2]=0;D[a>>2]=3292;D[a+52>>2]=c;D[a+56>>2]=b;b=D[f+4>>2];D[a+88>>2]=D[f>>2];D[a+92>>2]=b;b=D[f+12>>2];D[a+96>>2]=D[f+8>>2];D[a+100>>2]=b;break f;case 5:break g;default:break f}}a=na(128);D[a+4>>2]=g;D[a>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];d=D[e+20>>2];c=D[e>>2];b=D[e+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=i;D[a+28>>2]=d;D[a+16>>2]=g;D[a+20>>2]=h;D[a+8>>2]=c;D[a+12>>2]=b;h:{i:{c=D[e+28>>2]-D[e+24>>2]|0;if(c){if((c|0)<0){break i}b=na(c);D[a+32>>2]=b;D[a+36>>2]=b;D[a+40>>2]=b+(c>>2<<2);c=D[e+24>>2];d=D[e+28>>2]-c|0;if((d|0)>0){b=oa(b,c,d)+d|0}D[a+36>>2]=b}D[a>>2]=2932;b=D[f+4>>2];D[a+44>>2]=D[f>>2];D[a+48>>2]=b;b=D[f+12>>2];D[a+52>>2]=D[f+8>>2];D[a+56>>2]=b;b=a- -64|0;D[b>>2]=0;D[b+4>>2]=0;D[a+60>>2]=4156;D[a>>2]=3528;b=D[f+4>>2];D[a+72>>2]=D[f>>2];D[a+76>>2]=b;b=D[f+12>>2];D[a+80>>2]=D[f+8>>2];D[a+84>>2]=b;D[a+104>>2]=1065353216;D[a+108>>2]=-1;D[a+96>>2]=-1;D[a+100>>2]=-1;D[a+88>>2]=1;D[a+92>>2]=-1;D[a+60>>2]=3764;D[a+112>>2]=0;D[a+116>>2]=0;B[a+117|0]=0;B[a+118|0]=0;B[a+119|0]=0;B[a+120|0]=0;B[a+121|0]=0;B[a+122|0]=0;B[a+123|0]=0;B[a+124|0]=0;break h}qa();T()}break f}d=a;break e}a=D[f+44>>2];D[k+12>>2]=i;D[k+8>>2]=a;D[k+20>>2]=h;D[k+16>>2]=h+12;f=k+8|0;a=0;j:{k:{switch(b-1|0){case 0:a=na(60);D[a+4>>2]=g;D[a>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];d=D[e+20>>2];c=D[e>>2];b=D[e+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=i;D[a+28>>2]=d;D[a+16>>2]=g;D[a+20>>2]=h;D[a+8>>2]=c;D[a+12>>2]=b;b=D[e+24>>2];d=D[e+28>>2]-b|0;if(d){if((d|0)<0){break d}c=na(d);D[a+32>>2]=c;D[a+40>>2]=c+(d>>2<<2);m=a,n=oa(c,b,d)+d|0,D[m+36>>2]=n}b=D[f+4>>2];D[a+44>>2]=D[f>>2];D[a+48>>2]=b;b=D[f+12>>2];D[a+52>>2]=D[f+8>>2];D[a+56>>2]=b;D[a>>2]=4184;break j;case 3:a=na(112);D[a+4>>2]=g;D[a>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];d=D[e+20>>2];c=D[e>>2];b=D[e+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=i;D[a+28>>2]=d;D[a+16>>2]=g;D[a+20>>2]=h;D[a+8>>2]=c;D[a+12>>2]=b;b=D[e+24>>2];d=D[e+28>>2]-b|0;if(d){if((d|0)<0){break d}c=na(d);D[a+32>>2]=c;D[a+40>>2]=c+(d>>2<<2);m=a,n=oa(c,b,d)+d|0,D[m+36>>2]=n}b=D[f+4>>2];D[a+44>>2]=D[f>>2];D[a+48>>2]=b;b=D[f+12>>2];D[a+52>>2]=D[f+8>>2];D[a+56>>2]=b;D[a+60>>2]=0;D[a+64>>2]=0;D[a>>2]=4608;D[a+68>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+84>>2]=0;D[a+88>>2]=0;D[a+92>>2]=0;D[a+96>>2]=0;D[a+100>>2]=0;D[a+104>>2]=0;D[a+108>>2]=0;break j;case 4:a=na(104);D[a+4>>2]=g;D[a>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];d=D[e+20>>2];c=D[e>>2];b=D[e+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=i;D[a+28>>2]=d;D[a+16>>2]=g;D[a+20>>2]=h;D[a+8>>2]=c;D[a+12>>2]=b;b=D[e+24>>2];d=D[e+28>>2]-b|0;if(d){if((d|0)<0){break d}c=na(d);D[a+32>>2]=c;D[a+40>>2]=c+(d>>2<<2);m=a,n=oa(c,b,d)+d|0,D[m+36>>2]=n}b=D[f+4>>2];D[a+44>>2]=D[f>>2];D[a+48>>2]=b;c=D[f+8>>2];b=D[f+12>>2];D[a+84>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+60>>2]=0;D[a+64>>2]=0;D[a>>2]=4844;D[a+52>>2]=c;D[a+56>>2]=b;b=D[f+4>>2];D[a+88>>2]=D[f>>2];D[a+92>>2]=b;b=D[f+12>>2];D[a+96>>2]=D[f+8>>2];D[a+100>>2]=b;break j;case 5:break k;default:break j}}a=na(128);D[a+4>>2]=g;D[a>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];d=D[e+20>>2];c=D[e>>2];b=D[e+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=i;D[a+28>>2]=d;D[a+16>>2]=g;D[a+20>>2]=h;D[a+8>>2]=c;D[a+12>>2]=b;l:{m:{c=D[e+28>>2]-D[e+24>>2]|0;if(c){if((c|0)<0){break m}b=na(c);D[a+32>>2]=b;D[a+36>>2]=b;D[a+40>>2]=b+(c>>2<<2);c=D[e+24>>2];d=D[e+28>>2]-c|0;if((d|0)>0){b=oa(b,c,d)+d|0}D[a+36>>2]=b}D[a>>2]=4552;b=D[f+4>>2];D[a+44>>2]=D[f>>2];D[a+48>>2]=b;b=D[f+12>>2];D[a+52>>2]=D[f+8>>2];D[a+56>>2]=b;b=a- -64|0;D[b>>2]=0;D[b+4>>2]=0;D[a+60>>2]=5652;D[a>>2]=5068;b=D[f+4>>2];D[a+72>>2]=D[f>>2];D[a+76>>2]=b;b=D[f+12>>2];D[a+80>>2]=D[f+8>>2];D[a+84>>2]=b;D[a+104>>2]=1065353216;D[a+108>>2]=-1;D[a+96>>2]=-1;D[a+100>>2]=-1;D[a+88>>2]=1;D[a+92>>2]=-1;D[a+60>>2]=5288;D[a+112>>2]=0;D[a+116>>2]=0;B[a+117|0]=0;B[a+118|0]=0;B[a+119|0]=0;B[a+120|0]=0;B[a+121|0]=0;B[a+122|0]=0;B[a+123|0]=0;B[a+124|0]=0;break l}qa();T()}break j}d=a}$=k+32|0;break c}qa();T()}if(d){break b}}d=na(44);D[d+4>>2]=l;D[d>>2]=2988;g=D[e+8>>2];h=D[e+12>>2];i=D[e+16>>2];c=D[e+20>>2];b=D[e>>2];a=D[e+4>>2];D[d+40>>2]=0;D[d+32>>2]=0;D[d+36>>2]=0;D[d+24>>2]=i;D[d+28>>2]=c;D[d+16>>2]=g;D[d+20>>2]=h;D[d+8>>2]=b;D[d+12>>2]=a;n:{a=D[e+24>>2];c=D[e+28>>2]-a|0;if(c){if((c|0)<0){break n}b=na(c);D[d+32>>2]=b;D[d+40>>2]=b+(c>>2<<2);m=d,n=oa(b,a,c)+c|0,D[m+36>>2]=n}D[d>>2]=5680;break b}qa();T()}a=D[j+32>>2];if(!a){break a}D[j+36>>2]=a;ma(a)}$=j+48|0;return d|0}function $d(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,K=0;h=$+-64|0;$=h;D[a+8>>2]=e;f=a+32|0;g=D[f>>2];d=D[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){sa(f,e-d|0);D[h+56>>2]=0;D[h+60>>2]=0;D[h+48>>2]=0;D[h+52>>2]=0;D[h+40>>2]=0;D[h+44>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;D[h+24>>2]=0;D[h+28>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;D[h>>2]=0;break b}if(d>>>0>e>>>0){D[a+36>>2]=g+(e<<2)}D[h+56>>2]=0;D[h+60>>2]=0;D[h+48>>2]=0;D[h+52>>2]=0;D[h+40>>2]=0;D[h+44>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;D[h+24>>2]=0;D[h+28>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;D[h>>2]=0;d=0;if(!e){break a}}xa(h+16|0,e,h);i=D[h+28>>2];d=D[h+32>>2]}D[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}D[h+32>>2]=(e<<2)+i;break c}xa(h+16|12,e-d|0,h)}D[h>>2]=0;f=D[h+40>>2];d=D[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}D[h+44>>2]=f+(e<<2);break d}xa(h+40|0,e-d|0,h)}D[h>>2]=0;f=D[h+52>>2];d=D[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}D[h+56>>2]=f+(e<<2);break e}xa(h+52|0,e-d|0,h)}i=0;f:{if(D[a+8>>2]<=0){break f}j=D[a+32>>2];g=D[h+16>>2];while(1){d=i<<2;f=D[d+g>>2];m=D[a+16>>2];g:{if((f|0)>(m|0)){D[d+j>>2]=m;break g}d=d+j|0;m=D[a+12>>2];if((m|0)>(f|0)){D[d>>2]=m;break g}D[d>>2]=f}i=i+1|0;d=D[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=D[b+g>>2]+D[g+j>>2]|0;D[f>>2]=g;h:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break h}g=g+D[a+20>>2]|0}D[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}E=D[a+52>>2];q=D[a+48>>2];w=na(16);d=w;D[d>>2]=0;D[d+4>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;v=na(d);D[h>>2]=v;D[h+8>>2]=d+v;pa(v,0,d)}p=1;d=D[a+56>>2];z=D[d>>2];d=D[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;F=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;x=e-1|0;I=e<<2;m=1;while(1){k:{l:{m:{n:{if((m|0)!=(G|0)){f=D[(m<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}j=0;g=f+2|0;y=(d|0)!=0|(g|0)!=-1;n=1;r=d?f-1|0:g;o=1<>>5|0;K=D[q>>2];d=f;q:{while(1){r:{if(D[(d>>>3&536870908)+K>>2]>>>d&1){break r}g=D[D[D[q+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break r}k=D[E>>2];i=D[q+28>>2];p=D[k+(D[i+(g<<2)>>2]<<2)>>2];if((p|0)>=(m|0)){break r}l=g+1|0;l=D[k+(D[i+(((l>>>0)%3|0?l:g-2|0)<<2)>>2]<<2)>>2];if((l|0)>=(m|0)){break r}i=D[k+(D[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((i|0)>=(m|0)){break r}s:{if(!e){break s}g=D[(h+16|0)+J(j,12)>>2];k=J(e,i);l=J(e,l);p=J(e,p);i=0;u=0;if(x){while(1){D[g+(i<<2)>>2]=(D[(i+k<<2)+c>>2]+D[(i+l<<2)+c>>2]|0)-D[(i+p<<2)+c>>2];t=i|1;D[g+(t<<2)>>2]=(D[(k+t<<2)+c>>2]+D[(l+t<<2)+c>>2]|0)-D[(p+t<<2)+c>>2];i=i+2|0;u=u+2|0;if((A|0)!=(u|0)){continue}break}}if(!B){break s}D[g+(i<<2)>>2]=(D[(i+k<<2)+c>>2]+D[(i+l<<2)+c>>2]|0)-D[(i+p<<2)+c>>2]}g=4;j=j+1|0;if((j|0)==4){break q}}t:{if(n&1){i=d-2|0;g=d+1|0;d=-1;g=(g>>>0)%3|0?g:i;if((g|0)==-1|D[D[q>>2]+(g>>>3&536870908)>>2]>>>g&1){break t}g=D[D[D[q+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break t}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;break t}u:{if((d>>>0)%3|0){i=d-1|0;break u}i=d+2|0;d=-1;if((i|0)==-1){break t}}d=-1;if(D[D[q>>2]+(i>>>3&536870908)>>2]>>>i&1){break t}g=D[D[D[q+64>>2]+12>>2]+(i<<2)>>2];if((g|0)==-1){break t}if((g>>>0)%3|0){d=g-1|0;break t}d=g+2|0}v:{if((d|0)==(f|0)){break v}if(!((n^1)&1|(d|0)!=-1)){if(!y|o&D[D[q>>2]+(s<<2)>>2]){break v}d=D[D[D[q+64>>2]+12>>2]+(r<<2)>>2];if((d|0)==-1){break v}n=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=j;if((g|0)<=0){break p}}if(e){pa(D[h>>2],0,I)}d=g-1|0;t=(d<<2)+w|0;d=J(d,12)+a|0;u=d;y=D[d- -64>>2];p=0;n=0;d=0;while(1){f=D[t>>2];D[t>>2]=f+1;if(f>>>0>=y>>>0){break j}w:{if(D[D[u+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break w}d=d+1|0;if(!e){break w}j=D[h>>2];k=D[(h+16|0)+J(n,12)>>2];r=0;i=0;f=0;if(x>>>0>=3){while(1){l=i<<2;o=l+j|0;D[o>>2]=D[o>>2]+D[k+l>>2];o=l|4;s=o+j|0;D[s>>2]=D[s>>2]+D[k+o>>2];o=l|8;s=o+j|0;D[s>>2]=D[s>>2]+D[k+o>>2];l=l|12;o=l+j|0;D[o>>2]=D[o>>2]+D[k+l>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break w}while(1){f=i<<2;l=f+j|0;D[l>>2]=D[l>>2]+D[f+k>>2];i=i+1|0;r=r+1|0;if((C|0)!=(r|0)){continue}break}}n=n+1|0;if((n|0)!=(g|0)){continue}break}n=J(e,m);f=n;if(!d){break o}if(!e){break l}f=D[h>>2];i=0;g=0;if(x){break n}break m}f=J(e,m)}if(D[a+8>>2]<=0){break k}n=(J(m-1|0,e)<<2)+c|0;j=D[a+32>>2];i=0;while(1){d=i<<2;g=D[d+n>>2];k=D[a+16>>2];x:{if((g|0)>(k|0)){D[d+j>>2]=k;break x}d=d+j|0;k=D[a+12>>2];if((k|0)>(g|0)){D[d>>2]=k;break x}D[d>>2]=g}i=i+1|0;g=D[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=D[g+n>>2]+D[g+j>>2]|0;D[f>>2]=g;y:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break y}g=g+D[a+20>>2]|0}D[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}break k}ua();T()}while(1){j=i<<2;k=j+f|0;D[k>>2]=D[k>>2]/(d|0);j=f+(j|4)|0;D[j>>2]=D[j>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;D[f>>2]=D[f>>2]/(d|0)}if(D[a+8>>2]<=0){break k}j=D[a+32>>2];i=0;while(1){d=i<<2;f=D[d+v>>2];g=D[a+16>>2];z:{if((f|0)>(g|0)){D[d+j>>2]=g;break z}d=d+j|0;g=D[a+12>>2];if((g|0)>(f|0)){D[d>>2]=g;break z}D[d>>2]=f}i=i+1|0;f=D[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=n<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=D[g+n>>2]+D[g+j>>2]|0;D[f>>2]=g;A:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break A}g=g+D[a+20>>2]|0}D[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}p=1;m=m+1|0;if((F|0)!=(m|0)){continue}break}}a=D[h>>2];if(a){ma(a)}ma(w);a=D[h+52>>2];if(a){D[h+56>>2]=a;ma(a)}a=D[h+40>>2];if(a){D[h+44>>2]=a;ma(a)}a=D[h+28>>2];if(a){D[h+32>>2]=a;ma(a)}a=D[h+16>>2];if(a){D[h+20>>2]=a;ma(a)}$=h- -64|0;return p|0}qa();T()}function mb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:i=1;e:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=B[b|0];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(B[b|0])/K(127);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 1:i=1;f:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=E[b|0];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(E[b|0])/K(255);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 2:i=1;g:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=C[b>>1];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(C[b>>1])/K(32767);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 3:i=1;h:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=F[b>>1];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(F[b>>1])/K(65535);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 4:i=1;i:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=D[b>>2];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(D[b>>2])*K(4.656612873077393e-10);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 5:i=1;j:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=G[b>>2];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(G[b>>2])*K(2.3283064365386963e-10);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 6:i=1;k:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=+G[b>>2]+ +D[b+4>>2]*4294967296;f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(+G[b>>2]+ +D[b+4>>2]*4294967296)*K(1.0842021724855044e-19);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 7:i=1;l:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=+G[b>>2]+ +G[b+4>>2]*4294967296;f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(+G[b>>2]+ +G[b+4>>2]*4294967296)*K(5.421010862427522e-20);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 8:i=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;g=D[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}H[(f<<2)+d>>2]=H[b>>2];b=b+4|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:i=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;g=D[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}H[(f<<2)+d>>2]=I[b>>3];b=b+8|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}i=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){g=D[a>>2];e=D[g>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=e+b|0;while(1){if(G[g+4>>2]<=b>>>0){break a}H[(f<<2)+d>>2]=E[b|0]?K(1):K(0);b=b+1|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<2)+d|0,0,c-e<<2)}return i}return 0}function Vh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0;h=$+-64|0;$=h;D[a+8>>2]=e;f=a+32|0;g=D[f>>2];d=D[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){sa(f,e-d|0);D[h+56>>2]=0;D[h+60>>2]=0;D[h+48>>2]=0;D[h+52>>2]=0;D[h+40>>2]=0;D[h+44>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;D[h+24>>2]=0;D[h+28>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;D[h>>2]=0;break b}if(d>>>0>e>>>0){D[a+36>>2]=g+(e<<2)}D[h+56>>2]=0;D[h+60>>2]=0;D[h+48>>2]=0;D[h+52>>2]=0;D[h+40>>2]=0;D[h+44>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;D[h+24>>2]=0;D[h+28>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;D[h>>2]=0;d=0;if(!e){break a}}xa(h+16|0,e,h);i=D[h+28>>2];d=D[h+32>>2]}D[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}D[h+32>>2]=(e<<2)+i;break c}xa(h+16|12,e-d|0,h)}D[h>>2]=0;f=D[h+40>>2];d=D[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}D[h+44>>2]=f+(e<<2);break d}xa(h+40|0,e-d|0,h)}D[h>>2]=0;f=D[h+52>>2];d=D[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}D[h+56>>2]=f+(e<<2);break e}xa(h+52|0,e-d|0,h)}i=0;f:{if(D[a+8>>2]<=0){break f}k=D[a+32>>2];g=D[h+16>>2];while(1){d=i<<2;f=D[d+g>>2];n=D[a+16>>2];g:{if((f|0)>(n|0)){D[d+k>>2]=n;break g}d=d+k|0;n=D[a+12>>2];if((n|0)>(f|0)){D[d>>2]=n;break g}D[d>>2]=f}i=i+1|0;d=D[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=D[b+g>>2]+D[g+k>>2]|0;D[f>>2]=g;h:{if((g|0)>D[a+16>>2]){j=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break h}j=g+D[a+20>>2]|0}D[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}E=D[a+52>>2];y=D[a+48>>2];v=na(16);d=v;D[d>>2]=0;D[d+4>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;u=na(d);D[h>>2]=u;D[h+8>>2]=d+u;pa(u,0,d)}r=1;d=D[a+56>>2];z=D[d>>2];d=D[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;F=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;w=e-1|0;I=e<<2;n=1;while(1){k:{l:{m:{n:{if((n|0)!=(G|0)){f=D[(n<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}k=0;g=f+2|0;x=(d|0)!=0|(g|0)!=-1;s=D[y+12>>2];q=s+((d?f-1|0:g)<<2)|0;o=1;d=f;q:{while(1){g=D[s+(d<<2)>>2];r:{if((g|0)==-1){break r}l=-1;r=D[E>>2];m=D[y>>2];i=r+(D[m+(g<<2)>>2]<<2)|0;p=g+1|0;p=(p>>>0)%3|0?p:g-2|0;if((p|0)!=-1){l=D[m+(p<<2)>>2]}p=D[i>>2];s:{t:{if((g>>>0)%3|0){i=g-1|0;break t}i=g+2|0;j=-1;if((i|0)==-1){break s}}j=D[m+(i<<2)>>2]}if((n|0)<=(p|0)){break r}i=D[r+(l<<2)>>2];if((i|0)>=(n|0)){break r}l=D[r+(j<<2)>>2];if((l|0)>=(n|0)){break r}g=D[(h+16|0)+J(k,12)>>2];u:{if(!e){break u}l=J(e,l);m=J(e,i);r=J(e,p);i=0;j=0;if(w){while(1){D[g+(i<<2)>>2]=(D[(i+l<<2)+c>>2]+D[(i+m<<2)+c>>2]|0)-D[(i+r<<2)+c>>2];p=i|1;D[g+(p<<2)>>2]=(D[(l+p<<2)+c>>2]+D[(m+p<<2)+c>>2]|0)-D[(p+r<<2)+c>>2];i=i+2|0;j=j+2|0;if((A|0)!=(j|0)){continue}break}}if(!B){break u}D[g+(i<<2)>>2]=(D[(i+l<<2)+c>>2]+D[(i+m<<2)+c>>2]|0)-D[(i+r<<2)+c>>2]}g=4;k=k+1|0;if((k|0)==4){break q}}v:{if(o&1){i=d+1|0;d=(i>>>0)%3|0?i:d-2|0;j=-1;if((d|0)==-1){break v}d=D[s+(d<<2)>>2];j=-1;if((d|0)==-1){break v}g=d+1|0;j=(g>>>0)%3|0?g:d-2|0;break v}w:{if((d>>>0)%3|0){i=d-1|0;break w}i=d+2|0;j=-1;if((i|0)==-1){break v}}d=D[s+(i<<2)>>2];j=-1;if((d|0)==-1){break v}j=d-1|0;if((d>>>0)%3|0){break v}j=d+2|0}d=j;x:{if((f|0)==(d|0)){break x}if(!((o^1)&1|(d|0)!=-1)){if(!x){break x}d=D[q>>2];if((d|0)==-1){break x}o=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=k;if((g|0)<=0){break p}}if(e){pa(D[h>>2],0,I)}d=g-1|0;p=(d<<2)+v|0;d=J(d,12)+a|0;j=d;x=D[d- -64>>2];r=0;o=0;d=0;while(1){f=D[p>>2];D[p>>2]=f+1;if(f>>>0>=x>>>0){break j}y:{if(D[D[j+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break y}d=d+1|0;if(!e){break y}k=D[h>>2];s=D[(h+16|0)+J(o,12)>>2];l=0;i=0;f=0;if(w>>>0>=3){while(1){m=i<<2;q=m+k|0;D[q>>2]=D[q>>2]+D[m+s>>2];q=m|4;t=q+k|0;D[t>>2]=D[t>>2]+D[s+q>>2];q=m|8;t=q+k|0;D[t>>2]=D[t>>2]+D[s+q>>2];m=m|12;q=m+k|0;D[q>>2]=D[q>>2]+D[m+s>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break y}while(1){f=i<<2;m=f+k|0;D[m>>2]=D[m>>2]+D[f+s>>2];i=i+1|0;l=l+1|0;if((C|0)!=(l|0)){continue}break}}o=o+1|0;if((o|0)!=(g|0)){continue}break}o=J(e,n);f=o;if(!d){break o}if(!e){break l}f=D[h>>2];i=0;g=0;if(w){break n}break m}f=J(e,n)}if(D[a+8>>2]<=0){break k}o=(J(n-1|0,e)<<2)+c|0;k=D[a+32>>2];i=0;while(1){d=i<<2;g=D[d+o>>2];l=D[a+16>>2];z:{if((g|0)>(l|0)){D[d+k>>2]=l;break z}d=d+k|0;l=D[a+12>>2];if((l|0)>(g|0)){D[d>>2]=l;break z}D[d>>2]=g}i=i+1|0;g=D[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=D[g+o>>2]+D[g+k>>2]|0;D[f>>2]=g;A:{if((g|0)>D[a+16>>2]){j=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break A}j=g+D[a+20>>2]|0}D[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}break k}ua();T()}while(1){k=i<<2;l=k+f|0;D[l>>2]=D[l>>2]/(d|0);k=f+(k|4)|0;D[k>>2]=D[k>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;D[f>>2]=D[f>>2]/(d|0)}if(D[a+8>>2]<=0){break k}k=D[a+32>>2];i=0;while(1){d=i<<2;f=D[d+u>>2];g=D[a+16>>2];B:{if((f|0)>(g|0)){D[d+k>>2]=g;break B}d=d+k|0;g=D[a+12>>2];if((g|0)>(f|0)){D[d>>2]=g;break B}D[d>>2]=f}i=i+1|0;f=D[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=o<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=D[g+o>>2]+D[g+k>>2]|0;D[f>>2]=g;C:{if((g|0)>D[a+16>>2]){j=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break C}j=g+D[a+20>>2]|0}D[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}r=1;n=n+1|0;if((F|0)!=(n|0)){continue}break}}a=D[h>>2];if(a){ma(a)}ma(v);a=D[h+52>>2];if(a){D[h+56>>2]=a;ma(a)}a=D[h+40>>2];if(a){D[h+44>>2]=a;ma(a)}a=D[h+28>>2];if(a){D[h+32>>2]=a;ma(a)}a=D[h+16>>2];if(a){D[h+20>>2]=a;ma(a)}$=h- -64|0;return r|0}qa();T()}function kf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=$-16|0;$=m;D[m+12>>2]=b;b=na(32);D[m>>2]=b;D[m+4>>2]=24;D[m+8>>2]=-2147483616;B[b+24|0]=0;d=E[1308]|E[1309]<<8|(E[1310]<<16|E[1311]<<24);c=E[1304]|E[1305]<<8|(E[1306]<<16|E[1307]<<24);B[b+16|0]=c;B[b+17|0]=c>>>8;B[b+18|0]=c>>>16;B[b+19|0]=c>>>24;B[b+20|0]=d;B[b+21|0]=d>>>8;B[b+22|0]=d>>>16;B[b+23|0]=d>>>24;d=E[1300]|E[1301]<<8|(E[1302]<<16|E[1303]<<24);c=E[1296]|E[1297]<<8|(E[1298]<<16|E[1299]<<24);B[b+8|0]=c;B[b+9|0]=c>>>8;B[b+10|0]=c>>>16;B[b+11|0]=c>>>24;B[b+12|0]=d;B[b+13|0]=d>>>8;B[b+14|0]=d>>>16;B[b+15|0]=d>>>24;d=E[1292]|E[1293]<<8|(E[1294]<<16|E[1295]<<24);c=E[1288]|E[1289]<<8|(E[1290]<<16|E[1291]<<24);B[b|0]=c;B[b+1|0]=c>>>8;B[b+2|0]=c>>>16;B[b+3|0]=c>>>24;B[b+4|0]=d;B[b+5|0]=d>>>8;B[b+6|0]=d>>>16;B[b+7|0]=d>>>24;h=$-48|0;$=h;k=a;d=a+16|0;a=D[d>>2];a:{b:{if(!a){break b}c=D[m+12>>2];b=d;while(1){f=(c|0)>D[a+16>>2];b=f?b:a;a=D[(f<<2)+a>>2];if(a){continue}break}if((b|0)==(d|0)){break b}if((c|0)>=D[b+16>>2]){break a}}t=h+24|0;a=t;D[a+4>>2]=0;D[a+8>>2]=0;u=a+4|0;D[a>>2]=u;a=D[m+12>>2];c=h+16|0;D[c>>2]=0;D[c+4>>2]=0;D[h+8>>2]=a;D[h+12>>2]=c;b=D[t>>2];if((u|0)!=(b|0)){l=h+8|4;while(1){f=b;g=b+16|0;q=$-16|0;$=q;i=q+12|0;a=q+8|0;c:{d:{e:{f:{g:{h:{r=l+4|0;i:{if((r|0)==(c|0)){break i}b=E[c+27|0];e=b<<24>>24<0;n=E[g+11|0];v=n<<24>>24;j=(v|0)<0;b=e?D[c+20>>2]:b;n=j?D[g+4>>2]:n;o=b>>>0>>0;p=o?b:n;if(p){j=j?D[g>>2]:g;s=c+16|0;e=e?D[s>>2]:s;s=va(j,e,p);if(!s){if(b>>>0>n>>>0){break i}break h}if((s|0)>=0){break h}break i}if(b>>>0<=n>>>0){break g}}e=D[c>>2];j:{a=c;k:{if((a|0)==D[l>>2]){break k}l:{if(e){b=e;while(1){a=b;b=D[b+4>>2];if(b){continue}break}break l}a=c+8|0;if((c|0)==D[D[c+8>>2]>>2]){while(1){b=D[a>>2];a=b+8|0;if((b|0)==D[D[b+8>>2]>>2]){continue}break}}a=D[a>>2]}j=E[g+11|0];b=j<<24>>24<0;o=E[a+27|0];n=o<<24>>24<0;m:{j=b?D[g+4>>2]:j;o=n?D[a+20>>2]:o;p=j>>>0>>0?j:o;if(p){r=a+16|0;b=va(n?D[r>>2]:r,b?D[g>>2]:g,p);if(b){break m}}if(j>>>0>o>>>0){break k}break j}if((b|0)>=0){break j}}if(!e){D[i>>2]=c;a=c;break c}D[i>>2]=a;a=a+4|0;break c}a=Id(l,i,g);break c}b=va(e,j,p);if(b){break f}}if(o){break e}break d}if((b|0)>=0){break d}}e=D[c+4>>2];n:{if(e){b=e;while(1){a=b;b=D[b>>2];if(b){continue}break}break n}a=D[c+8>>2];if((c|0)==D[a>>2]){break n}b=c+8|0;while(1){j=D[b>>2];b=j+8|0;a=D[j+8>>2];if((j|0)!=D[a>>2]){continue}break}}o:{p:{if((a|0)==(r|0)){break p}j=E[a+27|0];b=j<<24>>24<0;q:{j=b?D[a+20>>2]:j;o=j>>>0>>0?j:n;if(o){p=a+16|0;b=va((v|0)<0?D[g>>2]:g,b?D[p>>2]:p,o);if(b){break q}}if(j>>>0>n>>>0){break p}break o}if((b|0)>=0){break o}}if(!e){D[i>>2]=c;a=c+4|0;break c}D[i>>2]=a;break c}a=Id(l,i,g);break c}D[i>>2]=c;D[a>>2]=c}b=a;a=D[b>>2];if(a){b=0}else{a=na(40);e=a+16|0;r:{if(B[g+11|0]>=0){i=D[g+4>>2];D[e>>2]=D[g>>2];D[e+4>>2]=i;D[e+8>>2]=D[g+8>>2];break r}ta(e,D[g>>2],D[g+4>>2])}e=a+28|0;s:{if(B[g+23|0]>=0){i=D[g+16>>2];D[e>>2]=D[g+12>>2];D[e+4>>2]=i;D[e+8>>2]=D[g+20>>2];break s}ta(e,D[g+12>>2],D[g+16>>2])}D[a+8>>2]=D[q+12>>2];D[a>>2]=0;D[a+4>>2]=0;D[b>>2]=a;e=D[D[l>>2]>>2];if(e){D[l>>2]=e;b=D[b>>2]}else{b=a}pb(D[l+4>>2],b);D[l+8>>2]=D[l+8>>2]+1;b=1}B[h+44|0]=b;D[h+40>>2]=a;$=q+16|0;a=D[f+4>>2];t:{if(!a){b=D[f+8>>2];if((f|0)==D[b>>2]){break t}a=f+8|0;while(1){f=D[a>>2];a=f+8|0;b=D[f+8>>2];if((f|0)!=D[b>>2]){continue}break}break t}while(1){b=a;a=D[b>>2];if(a){continue}break}}if((b|0)!=(u|0)){continue}break}}a=D[d>>2];u:{if(a){d=k+16|0;f=D[h+8>>2];while(1){b=D[a+16>>2];v:{if((b|0)>(f|0)){b=D[a>>2];if(b){break v}d=a;break u}if((b|0)>=(f|0)){break u}d=a+4|0;b=D[a+4>>2];if(!b){break u}a=d}d=a;a=b;continue}}a=d}b=D[d>>2];if(!b){b=na(32);D[b+16>>2]=D[h+8>>2];D[b+20>>2]=D[h+12>>2];f=b+24|0;e=D[h+16>>2];D[f>>2]=e;g=D[h+20>>2];D[b+28>>2]=g;w:{if(!g){D[b+20>>2]=f;break w}D[e+8>>2]=f;D[h+16>>2]=0;D[h+20>>2]=0;D[h+12>>2]=c}D[b+8>>2]=a;D[b>>2]=0;D[b+4>>2]=0;D[d>>2]=b;a=D[D[k+12>>2]>>2];if(a){D[k+12>>2]=a;a=D[d>>2]}else{a=b}pb(D[k+16>>2],a);D[k+20>>2]=D[k+20>>2]+1}hb(h+8|4,D[h+16>>2]);hb(t,D[t+4>>2])}$=h+48|0;k=$-48|0;$=k;c=$-32|0;$=c;g=c+32|0;d=c+21|0;a=d;f=g-a|0;x:{if(!((f|0)<=9&(f|0)<(1-(G[2744]>1)|0))){B[a|0]=49;D[c+8>>2]=a+1;a=0;break x}D[c+8>>2]=g;a=61}D[c+12>>2]=a;h=$-16|0;$=h;a=k+8|0;e=$-16|0;$=e;y:{l=D[c+8>>2];f=l-d|0;if(f>>>0<=4294967279){z:{if(f>>>0<=10){B[a+11|0]=f;c=a;break z}if(f>>>0>=11){i=f+16&-16;c=i-1|0;c=(c|0)==11?i:c}else{c=10}i=c+1|0;c=na(i);D[a>>2]=c;D[a+8>>2]=i|-2147483648;D[a+4>>2]=f}while(1){if((d|0)!=(l|0)){B[c|0]=E[d|0];c=c+1|0;d=d+1|0;continue}break}B[e+15|0]=0;B[c|0]=E[e+15|0];$=e+16|0;break y}Aa();T()}$=h+16|0;$=g;D[k+32>>2]=m;c=b+20|0;a=D[c+4>>2];A:{B:{if(a){b=E[m+11|0];d=b<<24>>24<0;e=d?D[m>>2]:m;f=d?D[m+4>>2]:b;b=c+4|0;while(1){d=E[a+27|0];g=d<<24>>24<0;d=g?D[a+20>>2]:d;h=d>>>0>>0;C:{D:{E:{F:{G:{l=h?d:f;H:{if(l){i=a+16|0;g=g?D[i>>2]:i;i=va(e,g,l);if(!i){if(d>>>0>f>>>0){break H}break G}if((i|0)>=0){break G}break H}if(d>>>0<=f>>>0){break F}}d=D[a>>2];if(d){break C}break B}d=va(g,e,l);if(d){break E}}if(h){break D}break A}if((d|0)>=0){break A}}b=a+4|0;d=D[a+4>>2];if(!d){break A}a=b}b=a;a=d;continue}}a=c+4|0}b=a}d=D[b>>2];if(d){a=0}else{d=na(40);e=d+16|0;f=D[k+32>>2];I:{if(B[f+11|0]>=0){g=D[f+4>>2];D[e>>2]=D[f>>2];D[e+4>>2]=g;D[e+8>>2]=D[f+8>>2];break I}ta(e,D[f>>2],D[f+4>>2])}D[d+8>>2]=a;D[d>>2]=0;D[d+4>>2]=0;D[d+36>>2]=0;D[d+28>>2]=0;D[d+32>>2]=0;D[b>>2]=d;a=D[D[c>>2]>>2];if(a){D[c>>2]=a;a=D[b>>2]}else{a=d}pb(D[c+4>>2],a);D[c+8>>2]=D[c+8>>2]+1;a=1}B[k+44|0]=a;D[k+40>>2]=d;a=D[k+40>>2];if(B[a+39|0]<0){ma(D[a+28>>2])}b=D[k+12>>2];D[a+28>>2]=D[k+8>>2];D[a+32>>2]=b;D[a+36>>2]=D[k+16>>2];$=k+48|0;if(B[m+11|0]<0){ma(D[m>>2])}$=m+16|0}function ge(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=a;a:{b:{c:{d:{e:{f:{g:{h:{k=D[a+8>>2];switch(D[k+28>>2]-1|0){case 4:break c;case 5:break d;case 2:break e;case 3:break f;case 0:break g;case 1:break h;default:break a}}c=B[k+24|0];d=na((c|0)>=0?c:-1);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;B[a+d|0]=D[j>>2];B[(a|1)+d|0]=D[j+4>>2];B[(a|2)+d|0]=D[j+8>>2];B[(a|3)+d|0]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){B[a+d|0]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}c=B[k+24|0];d=na((c|0)>=0?c:-1);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;B[a+d|0]=D[j>>2];B[(a|1)+d|0]=D[j+4>>2];B[(a|2)+d|0]=D[j+8>>2];B[(a|3)+d|0]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){B[a+d|0]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=B[k+24|0];a=e+e|0;d=na(a>>>0>>0?-1:a);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;C[l+d>>1]=D[j>>2];C[(l|2)+d>>1]=D[j+4>>2];C[(l|4)+d>>1]=D[j+8>>2];C[(l|6)+d>>1]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){C[(a<<1)+d>>1]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=B[k+24|0];a=e+e|0;d=na(a>>>0>>0?-1:a);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;C[l+d>>1]=D[j>>2];C[(l|2)+d>>1]=D[j+4>>2];C[(l|4)+d>>1]=D[j+8>>2];C[(l|6)+d>>1]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){C[(a<<1)+d>>1]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=B[k+24|0];c=e<<2;d=na((e|0)!=(e&1073741823)?-1:c);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;D[l+d>>2]=D[j>>2];D[(l|4)+d>>2]=D[j+4>>2];D[(l|8)+d>>2]=D[j+8>>2];D[(l|12)+d>>2]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[(a<<2)+d>>2]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=B[k+24|0];c=e<<2;d=na((e|0)!=(e&1073741823)?-1:c);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;D[l+d>>2]=D[j>>2];D[(l|4)+d>>2]=D[j+4>>2];D[(l|8)+d>>2]=D[j+8>>2];D[(l|12)+d>>2]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[(a<<2)+d>>2]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c)}ma(d);d=1}return d|0}function Bd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=$-96|0;$=h;r=D[a+4>>2];d=D[r+32>>2];e=D[d+8>>2];n=D[d+12>>2];f=n;c=D[d+20>>2];p=D[d+16>>2];a:{if((f|0)<=(c|0)&p>>>0>=e>>>0|(c|0)>(f|0)){break a}k=D[d>>2];q=E[k+p|0];g=p+1|0;f=g?c:c+1|0;D[d+16>>2]=g;D[d+20>>2]=f;if(e>>>0<=g>>>0&(f|0)>=(n|0)|(f|0)>(n|0)){break a}l=E[g+k|0];g=p+2|0;f=g>>>0<2?c+1|0:c;m=g;D[d+16>>2]=g;D[d+20>>2]=f;i=q<<24>>24;b:{if((i|0)>=0){g=D[a+216>>2];if(q>>>0>=(D[a+220>>2]-g|0)/144>>>0){break a}o=g+J(q,144)|0;if(D[o>>2]<0){break b}break a}if(D[a+212>>2]>=0){break a}o=a+212|0}D[o>>2]=b;c:{d:{g=F[r+36>>1];e:{if(((g<<8|g>>>8)&65535)>>>0>=258){if(e>>>0<=m>>>0&(f|0)>=(n|0)|(f|0)>(n|0)){break a}g=E[k+m|0];f=p+3|0;c=f>>>0<3?c+1|0:c;D[d+16>>2]=f;D[d+20>>2]=c;c=g>>>0>1;if(c){break a}c=c?0:g;if(!l){break e}if(c){break a}break d}if(l){break d}c=0}if((i|0)<0){f=a+184|0}else{d=D[a+216>>2]+J(q,144)|0;B[d+100|0]=0;f=d+104|0}d=f;f:{if((c|0)==1){e=$-112|0;$=e;m=D[D[a+4>>2]+44>>2];c=na(120);D[c>>2]=8956;D[c+4>>2]=0;D[c+116>>2]=0;D[c+112>>2]=d;D[c+108>>2]=m;D[c+12>>2]=0;D[c+16>>2]=0;D[c+20>>2]=0;D[c+24>>2]=0;D[c+28>>2]=0;D[c+32>>2]=0;D[c+36>>2]=0;D[c+40>>2]=0;D[c+44>>2]=0;D[c+48>>2]=0;D[c+52>>2]=0;D[c+56>>2]=0;D[c+60>>2]=0;D[c+8>>2]=9168;f=c- -64|0;D[f>>2]=0;D[f+4>>2]=0;D[c+72>>2]=0;D[c+76>>2]=0;D[c+80>>2]=0;D[c+84>>2]=0;D[c+88>>2]=0;D[c+104>>2]=0;D[c+96>>2]=0;D[c+100>>2]=0;l=D[a+8>>2];D[e+48>>2]=0;D[e+52>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;i=e+32|0;f=i;D[f>>2]=0;D[f+4>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;f=e- -64|0;D[f>>2]=0;D[f+4>>2]=0;D[e+72>>2]=0;D[e+76>>2]=0;D[e+80>>2]=0;D[e+84>>2]=0;D[e+88>>2]=0;D[e+104>>2]=0;D[e+56>>2]=0;D[e+60>>2]=0;D[e+8>>2]=9168;D[e+96>>2]=0;D[e+100>>2]=0;D[e+12>>2]=l;g=D[l>>2];f=D[l+4>>2];B[e+111|0]=0;n=i;i=e+111|0;Ea(n,(f-g>>2>>>0)/3|0,i);f=D[e+12>>2];g=D[f+28>>2];f=D[f+24>>2];B[e+111|0]=0;Ea(e+44|0,g-f>>2,i);D[e+28>>2]=c;D[e+24>>2]=m;D[e+20>>2]=d;D[e+16>>2]=l;d=c+8|0;f=e+8|0;hc(d,f);g:{if((d|0)==(f|0)){D[c+92>>2]=D[f+84>>2];break g}fb(c+56|0,D[f+48>>2],D[f+52>>2]);fb(c+68|0,D[f+60>>2],D[f- -64>>2]);fb(c+80|0,D[f+72>>2],D[f+76>>2]);D[c+92>>2]=D[f+84>>2];h:{i=D[f+92>>2];l=D[f+88>>2];g=i-l|0;m=g>>2;o=D[c+104>>2];k=D[c+96>>2];if(m>>>0<=o-k>>2>>>0){d=D[c+100>>2]-k|0;f=d>>2;g=f>>>0>>0?d+l|0:i;d=g-l|0;if(d){Na(k,l,d)}if(f>>>0>>0){d=D[c+100>>2];f=i-g|0;if((f|0)>0){d=oa(d,g,f)+f|0}D[c+100>>2]=d;break h}D[c+100>>2]=d+k;break h}if(k){D[c+100>>2]=k;ma(k);D[c+104>>2]=0;D[c+96>>2]=0;D[c+100>>2]=0;o=0}i:{if((g|0)<0){break i}d=o>>1;d=o>>2>>>0<536870911?d>>>0>>0?m:d:1073741823;if(d>>>0>=1073741824){break i}f=d<<2;d=na(f);D[c+96>>2]=d;D[c+100>>2]=d;D[c+104>>2]=d+f;if(g){d=oa(d,l,g)+g|0}D[c+100>>2]=d;break h}qa();T()}}D[e+8>>2]=9168;d=D[e+96>>2];if(d){D[e+100>>2]=d;ma(d)}d=D[e+80>>2];if(d){D[e+84>>2]=d;ma(d)}d=D[e+68>>2];if(d){D[e+72>>2]=d;ma(d)}d=D[e+56>>2];if(d){D[e+60>>2]=d;ma(d)}D[e+8>>2]=9404;d=D[e+44>>2];if(d){ma(d)}d=D[e+32>>2];if(d){ma(d)}$=e+112|0;break f}e=$+-64|0;$=e;l=D[D[a+4>>2]+44>>2];c=na(80);D[c>>2]=9424;D[c+4>>2]=0;D[c+76>>2]=0;D[c+72>>2]=d;D[c+68>>2]=l;D[c+8>>2]=9588;D[c+12>>2]=0;D[c+16>>2]=0;D[c+20>>2]=0;D[c+24>>2]=0;D[c+28>>2]=0;D[c+32>>2]=0;D[c+36>>2]=0;D[c+40>>2]=0;D[c+44>>2]=0;D[c+48>>2]=0;D[c+52>>2]=0;D[c- -64>>2]=0;m=c+56|0;f=m;D[f>>2]=0;D[f+4>>2]=0;k=D[a+8>>2];D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;i=e+24|0;f=i;D[f>>2]=0;D[f+4>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e+56>>2]=0;D[e+48>>2]=0;D[e+52>>2]=0;D[e>>2]=9588;D[e+4>>2]=k;g=D[k>>2];f=D[k+4>>2];B[e+63|0]=0;n=i;i=e+63|0;Ea(n,(f-g>>2>>>0)/3|0,i);f=D[e+4>>2];g=D[f+28>>2];f=D[f+24>>2];B[e+63|0]=0;Ea(e+36|0,g-f>>2,i);D[e+20>>2]=c;D[e+16>>2]=l;D[e+12>>2]=d;D[e+8>>2]=k;hc(c+8|0,e);fb(m,D[e+48>>2],D[e+52>>2]);D[e>>2]=9588;d=D[e+48>>2];if(d){D[e+52>>2]=d;ma(d)}D[e>>2]=9404;d=D[e+36>>2];if(d){ma(d)}d=D[e+24>>2];if(d){ma(d)}$=e- -64|0}if(!c){break a}break c}if((i|0)<0){break a}g=D[r+44>>2];d=D[a+216>>2];c=na(80);D[c+76>>2]=0;D[c+68>>2]=g;D[c+8>>2]=8652;D[c>>2]=9716;D[c+4>>2]=0;f=d+J(q,144)|0;j=f+104|0;D[c+72>>2]=j;D[c- -64>>2]=0;D[c+56>>2]=0;D[c+60>>2]=0;D[c+52>>2]=0;D[c+44>>2]=0;D[c+48>>2]=0;D[c+36>>2]=0;D[c+40>>2]=0;D[c+28>>2]=0;D[c+32>>2]=0;D[c+20>>2]=0;D[c+24>>2]=0;D[c+12>>2]=0;D[c+16>>2]=0;D[h+24>>2]=g;D[h+68>>2]=0;D[h+72>>2]=0;D[h+60>>2]=0;D[h+64>>2]=0;D[h+52>>2]=0;D[h+56>>2]=0;D[h+44>>2]=0;D[h+48>>2]=0;D[h+84>>2]=0;D[h+88>>2]=0;D[h+76>>2]=0;D[h+80>>2]=0;D[h+28>>2]=c;d=D[h+28>>2];D[h+8>>2]=D[h+24>>2];D[h+12>>2]=d;f=f+4|0;D[h+16>>2]=f;D[h+20>>2]=j;D[h+36>>2]=0;D[h+40>>2]=0;D[h+32>>2]=8652;d=D[h+20>>2];D[h>>2]=D[h+16>>2];D[h+4>>2]=d;j=h+32|0;Ad(j,f,h);d=c+8|0;hc(d,j);if((d|0)!=(j|0)){fb(c+56|0,D[j+48>>2],D[j+52>>2])}zd(j)}c=wc(na(64),c);i=D[a+4>>2];a=c;c=b;j:{k:{if((c|0)>=0){f=i+8|0;b=D[i+12>>2];d=D[i+8>>2];g=b-d>>2;l:{if((g|0)>(c|0)){break l}j=c+1|0;if(c>>>0>=g>>>0){Ob(f,j-g|0);break l}if(g>>>0<=j>>>0){break l}d=d+(j<<2)|0;if((d|0)!=(b|0)){while(1){b=b-4|0;j=D[b>>2];D[b>>2]=0;if(j){ba[D[D[j>>2]+4>>2]](j)}if((b|0)!=(d|0)){continue}break}}D[i+12>>2]=d}d=D[f>>2]+(c<<2)|0;b=D[d>>2];D[d>>2]=a;if(b){break k}break j}b=a;if(!a){break j}}ba[D[D[b>>2]+4>>2]](b)}j=(c^-1)>>>31|0}$=h+96|0;return j|0}function Yd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,U=0,V=0,W=0,X=0;if((e|0)==2){D[a+8>>2]=2;D[a- -64>>2]=f;d=a+32|0;e=D[d>>2];f=D[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){sa(d,2-g|0);break a}if((f|0)==8){break a}D[a+36>>2]=e+8}b:{d=D[a+56>>2];e=D[d+4>>2];d=D[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;J=f>>2;U=(J|0)>1?J:1;f=1;while(1){j=$-80|0;$=j;e=-1;d=D[(q<<2)+d>>2];g=-1;c:{if((d|0)==-1){break c}e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;g=d-1|0;if((d>>>0)%3|0){break c}g=d+2|0}i=D[m+36>>2];d=D[i>>2];d:{e:{f:{g:{h:{i=D[i+4>>2]-d>>2;h=e<<2;e=D[D[m+32>>2]+28>>2];k=D[h+e>>2];if(i>>>0<=k>>>0){break h}e=D[e+(g<<2)>>2];if(e>>>0>=i>>>0){break h}i:{j:{g=D[d+(e<<2)>>2];i=D[d+(k<<2)>>2];if((g|0)>=(q|0)|(i|0)>=(q|0)){break j}d=(g<<3)+c|0;v=D[d+4>>2];e=(i<<3)+c|0;s=D[e+4>>2];x=D[d>>2];F=D[e>>2];if(!((x|0)!=(F|0)|(s|0)!=(v|0))){D[m+8>>2]=F;D[m+12>>2]=s;break i}d=D[D[m+4>>2]+(q<<2)>>2];D[j+72>>2]=0;D[j+76>>2]=0;e=j- -64|0;D[e>>2]=0;D[e+4>>2]=0;D[j+56>>2]=0;D[j+60>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Fa(e,d,B[e+24|0],j+56|0);d=D[D[m+4>>2]+(i<<2)>>2];D[j+48>>2]=0;D[j+52>>2]=0;D[j+40>>2]=0;D[j+44>>2]=0;D[j+32>>2]=0;D[j+36>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Fa(e,d,B[e+24|0],j+32|0);d=D[D[m+4>>2]+(g<<2)>>2];D[j+24>>2]=0;D[j+28>>2]=0;D[j+16>>2]=0;D[j+20>>2]=0;D[j+8>>2]=0;D[j+12>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Fa(e,d,B[e+24|0],j+8|0);K=D[j+44>>2];d=D[j+16>>2];G=D[j+40>>2];e=G;k=D[j+20>>2]-(K+(d>>>0>>0)|0)|0;o=d-e|0;d=$h(o,k,o,k);e=aa;n=d;L=D[j+36>>2];d=D[j+8>>2];H=D[j+32>>2];g=H;h=D[j+12>>2]-(L+(d>>>0>>0)|0)|0;t=d-g|0;g=$h(t,h,t,h);d=n+g|0;e=aa+e|0;e=d>>>0>>0?e+1|0:e;n=d;M=D[j+52>>2];d=D[j+24>>2];I=D[j+48>>2];g=I;l=D[j+28>>2]-(M+(d>>>0>>0)|0)|0;p=d-g|0;r=$h(p,l,p,l);d=n+r|0;g=aa+e|0;u=d;r=d>>>0>>0?g+1|0:g;if(!(d|r)){break j}n=D[j+64>>2];d=n;O=D[j+68>>2];d=$h(d-G|0,O-((d>>>0>>0)+K|0)|0,o,k);e=aa;g=d;P=D[j+56>>2];d=P;Q=D[j+60>>2];i=$h(d-H|0,Q-((d>>>0>>0)+L|0)|0,t,h);d=g+i|0;g=aa+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=D[j+72>>2];d=R;S=D[j+76>>2];i=$h(d-I|0,S-((d>>>0>>0)+M|0)|0,p,l);d=e+i|0;e=aa+g|0;y=d;w=d>>>0>>0?e+1|0:e;d=l>>31;e=d+p|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;e=e^d;d=d^g;i=d;d=k>>31;z=d+o|0;g=d+k|0;A=d^z;d=d^(d>>>0>z>>>0?g+1|0:g);z=d;N=0;d=h>>31;C=d+t|0;g=d+h|0;g=C>>>0>>0?g+1|0:g;V=e;C=C^d;d=d^g;g=(z|0)==(d|0)&A>>>0>C>>>0|d>>>0>>0;A=g?A:C;d=g?z:d;e=(i|0)==(d|0)&e>>>0>A>>>0|d>>>0>>0;e=bi(-1,2147483647,e?V:A,e?i:d)>>>0>>0;d=aa;if(e&(d|0)<=(w|0)|(d|0)<(w|0)){break d}i=1;d=0;e=n;o=ai($h(o,k,y,w),aa,u,r);k=o+G|0;g=aa+K|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=$h(e,g,e,g);o=aa;e=P;n=g;h=ai($h(t,h,y,w),aa,u,r);k=h+H|0;g=aa+L|0;g=h>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=$h(e,g,e,g);g=n+k|0;e=aa+o|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;n=g;l=ai($h(p,l,y,w),aa,u,r);h=l+I|0;g=aa+M|0;g=h>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-h|0;h=$h(e,g,e,g);e=n+h|0;g=aa+k|0;k=$h(e,e>>>0>>0?g+1|0:g,u,r);e=aa;h=e;if(!e&k>>>0<=1){break g}l=k;e=h;while(1){g=d<<1|i>>>31;i=i<<1;d=g;o=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(o){continue}break}break f}if((i|0)<(q|0)){d=i<<1}else{if((q|0)<=0){D[m+8>>2]=0;D[m+12>>2]=0;break i}d=(q<<1)-2|0}d=(d<<2)+c|0;D[m+8>>2]=D[d>>2];D[m+12>>2]=D[d+4>>2]}N=1;break d}ua();T()}d=h;i=k;if(i-1|0){break e}}while(1){e=bi(k,h,i,d)+i|0;g=d+aa|0;g=e>>>0>>0?g+1|0:g;i=(g&1)<<31|e>>>1;d=g>>>1|0;e=$h(i,d,i,d);g=aa;if((h|0)==(g|0)&e>>>0>k>>>0|g>>>0>h>>>0){continue}break}}k=D[m+20>>2];if(k){e=k-1|0;l=D[D[m+16>>2]+(e>>>3&536870908)>>2];D[m+20>>2]=e;g=s;o=v-g|0;h=g>>31;t=(v>>31)-(h+(g>>>0>v>>>0)|0)|0;g=$h(y,w,o,t);p=aa;s=$h(s,h,u,r);h=s+g|0;g=aa+p|0;g=h>>>0>>0?g+1|0:g;n=h;h=F;p=x-h|0;s=h>>31;v=(x>>31)-(s+(h>>>0>x>>>0)|0)|0;h=$h(i,d,p,v);x=h;e=l>>>e&1;l=e?0-h|0:h;h=n+l|0;n=g;g=aa;g=n+(e?0-(g+((x|0)!=0)|0)|0:g)|0;W=m,X=ai(h,h>>>0>>0?g+1|0:g,u,r),D[W+12>>2]=X;g=$h(p,v,y,w);l=aa;p=$h(u,r,F,s);h=p+g|0;g=aa+l|0;g=h>>>0

>>0?g+1|0:g;n=h;d=$h(i,d,o,t);h=e?d:0-d|0;i=n+h|0;n=g;g=aa;e=n+(e?g:0-(((d|0)!=0)+g|0)|0)|0;W=m,X=ai(i,i>>>0>>0?e+1|0:e,u,r),D[W+8>>2]=X}N=(k|0)!=0}$=j+80|0;if(!N){break b}k:{if(D[a+8>>2]<=0){break k}g=D[a+32>>2];d=0;while(1){e=d<<2;f=D[(e+a|0)+68>>2];i=D[a+16>>2];l:{if((f|0)>(i|0)){D[e+g>>2]=i;break l}e=e+g|0;i=D[a+12>>2];if((i|0)>(f|0)){D[e>>2]=i;break l}D[e>>2]=f}d=d+1|0;f=D[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=q<<3;i=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+i|0;f=D[f+k>>2]+D[f+g>>2]|0;D[d>>2]=f;m:{if((f|0)>D[a+16>>2]){f=f-D[a+20>>2]|0}else{if((f|0)>=D[a+12>>2]){break m}f=f+D[a+20>>2]|0}D[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}q=q+1|0;f=(J|0)>(q|0);if((q|0)==(U|0)){break b}e=D[a+56>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>q>>>0){continue}break}}ua();T()}a=f^1}else{a=0}return a&1}function Sh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,U=0,V=0,W=0;if((e|0)==2){D[a+8>>2]=2;D[a- -64>>2]=f;d=a+32|0;e=D[d>>2];f=D[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){sa(d,2-g|0);break a}if((f|0)==8){break a}D[a+36>>2]=e+8}b:{d=D[a+56>>2];e=D[d+4>>2];d=D[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;I=f>>2;U=(I|0)>1?I:1;f=1;while(1){i=$-80|0;$=i;e=-1;c:{d:{g=D[(p<<2)+d>>2];if((g|0)==-1){break d}h=D[m+32>>2];d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)!=-1){e=D[D[h>>2]+(d<<2)>>2]}d=-1;g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){d=D[D[h>>2]+(g<<2)>>2]}h=D[m+36>>2];g=D[h>>2];h=D[h+4>>2]-g>>2;if(h>>>0<=e>>>0|d>>>0>=h>>>0){break d}h=D[g+(e<<2)>>2];e:{f:{g:{h:{i:{j:{g=D[g+(d<<2)>>2];if((g|0)>=(p|0)|(h|0)>=(p|0)){break j}d=(g<<3)+c|0;w=D[d+4>>2];e=(h<<3)+c|0;r=D[e+4>>2];t=D[d>>2];F=D[e>>2];if(!((t|0)!=(F|0)|(r|0)!=(w|0))){D[m+8>>2]=F;D[m+12>>2]=r;break i}d=D[D[m+4>>2]+(p<<2)>>2];D[i+72>>2]=0;D[i+76>>2]=0;e=i- -64|0;D[e>>2]=0;D[e+4>>2]=0;D[i+56>>2]=0;D[i+60>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Fa(e,d,B[e+24|0],i+56|0);d=D[D[m+4>>2]+(h<<2)>>2];D[i+48>>2]=0;D[i+52>>2]=0;D[i+40>>2]=0;D[i+44>>2]=0;D[i+32>>2]=0;D[i+36>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Fa(e,d,B[e+24|0],i+32|0);e=D[D[m+4>>2]+(g<<2)>>2];D[i+24>>2]=0;D[i+28>>2]=0;D[i+16>>2]=0;D[i+20>>2]=0;D[i+8>>2]=0;D[i+12>>2]=0;d=D[m>>2];if(!E[d+84|0]){e=D[D[d+68>>2]+(e<<2)>>2]}Fa(d,e,B[d+24|0],i+8|0);J=D[i+44>>2];d=D[i+16>>2];x=D[i+40>>2];e=x;k=D[i+20>>2]-(J+(d>>>0>>0)|0)|0;n=d-e|0;d=$h(n,k,n,k);e=aa;o=d;K=D[i+36>>2];d=D[i+8>>2];G=D[i+32>>2];g=G;j=D[i+12>>2]-(K+(d>>>0>>0)|0)|0;u=d-g|0;g=$h(u,j,u,j);d=o+g|0;e=aa+e|0;e=d>>>0>>0?e+1|0:e;o=d;L=D[i+52>>2];d=D[i+24>>2];H=D[i+48>>2];g=H;l=D[i+28>>2]-(L+(d>>>0>>0)|0)|0;s=d-g|0;q=$h(s,l,s,l);d=o+q|0;g=aa+e|0;v=d;q=d>>>0>>0?g+1|0:g;if(!(d|q)){break j}N=D[i+64>>2];d=N;O=D[i+68>>2];d=$h(d-x|0,O-((d>>>0>>0)+J|0)|0,n,k);e=aa;g=d;P=D[i+56>>2];d=P;Q=D[i+60>>2];h=$h(d-G|0,Q-((d>>>0>>0)+K|0)|0,u,j);d=g+h|0;g=aa+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=D[i+72>>2];d=R;S=D[i+76>>2];h=$h(d-H|0,S-((d>>>0>>0)+L|0)|0,s,l);d=e+h|0;e=aa+g|0;z=d;y=d>>>0>>0?e+1|0:e;d=l>>31;e=d+s|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;h=e^d;d=d^g;M=d;d=k>>31;g=d+n|0;e=d+k|0;A=g^d;d=d^(g>>>0>>0?e+1|0:e);o=d;e=0;d=j>>31;C=d+u|0;g=d+j|0;g=C>>>0>>0?g+1|0:g;C=C^d;d=d^g;g=(o|0)==(d|0)&A>>>0>C>>>0|d>>>0>>0;A=g?A:C;d=g?o:d;g=(M|0)==(d|0)&h>>>0>A>>>0|d>>>0>>0;g=bi(-1,2147483647,g?h:A,g?M:d)>>>0>>0;d=aa;if(g&(d|0)<=(y|0)|(d|0)<(y|0)){break e}h=1;d=0;e=N;n=ai($h(n,k,z,y),aa,v,q);k=n+x|0;g=aa+J|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=$h(e,g,e,g);n=aa;e=P;o=g;j=ai($h(u,j,z,y),aa,v,q);k=j+G|0;g=aa+K|0;g=j>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=$h(e,g,e,g);g=o+k|0;e=aa+n|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;o=g;l=ai($h(s,l,z,y),aa,v,q);j=l+H|0;g=aa+L|0;g=j>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-j|0;j=$h(e,g,e,g);e=o+j|0;g=aa+k|0;k=$h(e,e>>>0>>0?g+1|0:g,v,q);e=aa;j=e;if(!e&k>>>0<=1){break h}l=k;e=j;while(1){g=d<<1|h>>>31;h=h<<1;d=g;n=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(n){continue}break}break g}if((h|0)<(p|0)){d=h<<1}else{if((p|0)<=0){D[m+8>>2]=0;D[m+12>>2]=0;break i}d=(p<<1)-2|0}d=(d<<2)+c|0;D[m+8>>2]=D[d>>2];D[m+12>>2]=D[d+4>>2]}e=1;break e}d=j;h=k;if(h-1|0){break f}}while(1){g=bi(k,j,h,d)+h|0;e=d+aa|0;e=g>>>0>>0?e+1|0:e;h=(e&1)<<31|g>>>1;d=e>>>1|0;e=$h(h,d,h,d);g=aa;if((j|0)==(g|0)&e>>>0>k>>>0|g>>>0>j>>>0){continue}break}}k=D[m+20>>2];if(k){e=k-1|0;l=D[D[m+16>>2]+(e>>>3&536870908)>>2];D[m+20>>2]=e;g=r;n=w-g|0;j=g>>31;u=(w>>31)-(j+(g>>>0>w>>>0)|0)|0;g=$h(z,y,n,u);s=aa;r=$h(r,j,v,q);j=r+g|0;g=aa+s|0;g=j>>>0>>0?g+1|0:g;o=j;j=F;s=t-j|0;r=j>>31;w=(t>>31)-(r+(j>>>0>t>>>0)|0)|0;j=$h(h,d,s,w);t=j;j=l>>>e&1;e=j;x=e?0-t|0:t;l=o+x|0;o=g;g=aa;e=o+(e?0-(g+((t|0)!=0)|0)|0:g)|0;V=m,W=ai(l,l>>>0>>0?e+1|0:e,v,q),D[V+12>>2]=W;e=$h(s,w,z,y);g=aa;l=$h(v,q,F,r);e=l+e|0;g=aa+g|0;g=e>>>0>>0?g+1|0:g;d=$h(h,d,n,u);l=j?d:0-d|0;h=l+e|0;e=aa;e=(j?e:0-(((d|0)!=0)+e|0)|0)+g|0;V=m,W=ai(h,h>>>0>>0?e+1|0:e,v,q),D[V+8>>2]=W}e=(k|0)!=0}$=i+80|0;break c}ua();T()}if(!e){break b}k:{if(D[a+8>>2]<=0){break k}g=D[a+32>>2];d=0;while(1){e=d<<2;f=D[(e+a|0)+68>>2];h=D[a+16>>2];l:{if((f|0)>(h|0)){D[e+g>>2]=h;break l}e=e+g|0;h=D[a+12>>2];if((h|0)>(f|0)){D[e>>2]=h;break l}D[e>>2]=f}d=d+1|0;f=D[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=p<<3;h=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+h|0;f=D[f+k>>2]+D[f+g>>2]|0;D[d>>2]=f;m:{if((f|0)>D[a+16>>2]){f=f-D[a+20>>2]|0}else{if((f|0)>=D[a+12>>2]){break m}f=f+D[a+20>>2]|0}D[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}p=p+1|0;f=(I|0)>(p|0);if((p|0)==(U|0)){break b}e=D[a+56>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>p>>>0){continue}break}}ua();T()}a=f^1}else{a=0}return a&1}function Hc(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=$-16|0;$=e;D[e+12>>2]=a;a:{if(a>>>0<=211){d=D[Gc(10384,10576,e+12|0)>>2];break a}if(a>>>0>=4294967292){Sb();T()}f=(a>>>0)/210|0;d=J(f,210);D[e+8>>2]=a-d;g=Gc(10576,10768,e+8|0)-10576>>2;while(1){d=D[(g<<2)+10576>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0>>0){break b}if((J(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((J(b,c)|0)!=(d|0)){continue}break}break c}b=D[(a<<2)+10384>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((J(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=J(f,210);continue}break}D[e+12>>2]=d}$=e+16|0;return d}function Db(a,b,c,d){var e=0,f=0,g=0,h=0,i=K(0),j=0;a:{if(!d){break a}b:{c:{switch(D[a+28>>2]-1|0){case 0:d:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){B[b+d|0]=E[f|0];b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=B[f|0];if((e|0)<0){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>1];if((e-128&65535)>>>0<65280){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>1];if(e>>>0>127){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f>>2];if(e-128>>>0<4294967040){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f>>2];if(e>>>0>127){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=D[f>>2];e=D[f+4>>2]-(h>>>0<128)|0;if((e|0)==-1&h-128>>>0<4294967040|(e|0)!=-1){break a}B[b+d|0]=h;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f+4>>2];h=D[f>>2];if(!e&h>>>0>127|e){break a}B[b+d|0]=h;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=H[f>>2];m:{if(K(L(i))=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=I[f>>3];o:{if(L(j)<2147483648){e=~~j;break o}e=-2147483648}B[h|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){B[b+d|0]=E[f|0];b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}pa(d+e|0,0,c-e|0)}return g}function Cb(a,b,c,d){var e=0,f=0,g=0,h=0,i=K(0),j=0;a:{if(!d){break a}b:{c:{switch(D[a+28>>2]-1|0){case 0:d:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=B[f|0];if((e|0)<0){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){B[b+d|0]=E[f|0];b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>1];if(e>>>0>255){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>1];if(e>>>0>255){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f>>2];if(e>>>0>255){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f>>2];if(e>>>0>255){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f+4>>2];h=D[f>>2];if(!e&h>>>0>255|e){break a}B[b+d|0]=h;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f+4>>2];h=D[f>>2];if(!e&h>>>0>255|e){break a}B[b+d|0]=h;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=H[f>>2];m:{if(i=K(0)){e=~~i>>>0;break m}e=0}B[h|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=I[f>>3];o:{if(j<4294967296&j>=0){e=~~j>>>0;break o}e=0}B[h|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){B[b+d|0]=E[f|0];b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}pa(d+e|0,0,c-e|0)}return g}function ld(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{b:{c:{d:{e:{if(D[a+92>>2]==D[a+88>>2]){break e}c=D[a+52>>2];f:{if((c|0)!=D[a+56>>2]){D[c>>2]=b;D[a+52>>2]=c+4;break f}g=D[a+48>>2];h=c-g|0;d=h>>2;e=d+1|0;if(e>>>0>=1073741824){break b}c=h>>1;f=d>>>0<536870911?c>>>0>>0?e:c:1073741823;if(f){if(f>>>0>=1073741824){break a}c=na(f<<2)}else{c=0}e=c+(d<<2)|0;D[e>>2]=b;if((h|0)>0){oa(c,g,h)}D[a+56>>2]=c+(f<<2);D[a+52>>2]=e+4;D[a+48>>2]=c;if(!g){break f}ma(g)}D[a+84>>2]=0;e=-1;c=-1;g:{if((b|0)==-1){break g}f=D[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){e=D[D[f>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=D[D[f>>2]+(d<<2)>>2]}j=c>>>3&536870908;d=D[a+36>>2];g=d+(e>>>3&536870908)|0;h=D[g>>2];f=1<>2]=f|h;f=a+8|0;if((b|0)!=-1){d=b+1|0;d=(d>>>0)%3|0?d:b-2|0}else{d=-1}Ia(f,e,d);d=D[a+36>>2]}f=d+j|0;d=D[f>>2];e=1<>2]=d|e;d=a+8|0;e=-1;i:{if((b|0)==-1){break i}e=b-1|0;if((b>>>0)%3|0){break i}e=b+2|0}Ia(d,c,e)}e=-1;e=(b|0)!=-1?D[D[D[a+4>>2]>>2]+(b<<2)>>2]:e;f=D[a+36>>2]+(e>>>3&536870908)|0;d=D[f>>2];c=1<>2]=c|d;Ia(a+8|0,e,b)}d=D[a+84>>2];if((d|0)>2){break e}while(1){e=J(d,12)+a|0;b=D[e+52>>2];if((b|0)==D[e+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=D[c>>2];D[e+52>>2]=c;D[a+84>>2]=d;if((b|0)==-1){break e}e=D[a+24>>2];c=(b>>>0)/3|0;j:{if(D[e+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){l=(b>>>0)/3|0;c=(l>>>3&268435452)+e|0;D[c>>2]=D[c>>2]|1<>2]>>2]+(b<<2)>>2]:e;f=D[a+36>>2]+(e>>>3&536870908)|0;d=D[f>>2];c=1<>2]=c|d;h=D[(D[D[a+16>>2]+96>>2]+J(l,12)|0)+((b>>>0)%3<<2)>>2];k=D[D[a+20>>2]+4>>2];c=D[k+4>>2];t:{if((c|0)!=D[k+8>>2]){D[c>>2]=h;D[k+4>>2]=c+4;break t}i=D[k>>2];j=c-i|0;f=j>>2;d=f+1|0;if(d>>>0>=1073741824){break s}c=j>>1;g=f>>>0<536870911?c>>>0>>0?d:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=na(g<<2)}else{c=0}d=c+(f<<2)|0;D[d>>2]=h;if((j|0)>0){oa(c,i,j)}D[k+8>>2]=c+(g<<2);D[k+4>>2]=d+4;D[k>>2]=c;if(!i){break t}ma(i)}i=D[a+12>>2];c=D[i+4>>2];u:{if((c|0)!=D[i+8>>2]){D[c>>2]=b;D[i+4>>2]=c+4;break u}j=D[i>>2];g=c-j|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break r}c=g>>1;h=f>>>0<536870911?c>>>0>>0?d:c:1073741823;if(h){if(h>>>0>=1073741824){break a}c=na(h<<2)}else{c=0}d=c+(f<<2)|0;D[d>>2]=b;if((g|0)>0){oa(c,j,g)}D[i+8>>2]=c+(h<<2);D[i+4>>2]=d+4;D[i>>2]=c;if(!j){break u}ma(j)}c=D[a+12>>2];D[D[c+12>>2]+(e<<2)>>2]=D[c+24>>2];D[c+24>>2]=D[c+24>>2]+1}if((b|0)==-1){break k}g=D[a+4>>2];e=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){e=D[D[g+12>>2]+(c<<2)>>2]}v:{w:{if((J(l,3)|0)!=(b|0)){f=b-1|0;break w}f=b+2|0;b=-1;if((f|0)==-1){break v}}b=D[D[g+12>>2]+(f<<2)>>2]}h=(b|0)==-1;f=(b>>>0)/3|0;d=(e>>>0)/3|0;c=(e|0)==-1;if(!c){c=c?-1:d;c=D[D[a+24>>2]+(c>>>3&536870908)>>2]&1<>2]+(c>>>3&536870908)>>2]>>>c&1){break x}f=0;c=D[D[g>>2]+(b<<2)>>2];if(!(D[D[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=D[a+88>>2]+(c<<2)|0;d=D[c>>2];D[c>>2]=d+1;f=(d|0)<=0?2:1}if(D[a+84>>2]>=(f|0)?l:0){break m}k=J(f,12)+a|0;c=D[k+52>>2];y:{if((c|0)!=D[k+56>>2]){D[c>>2]=b;D[k+52>>2]=c+4;break y}i=D[k+48>>2];j=c-i|0;h=j>>2;d=h+1|0;if(d>>>0>=1073741824){break d}c=j>>1;g=h>>>0<536870911?c>>>0>>0?d:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=na(g<<2)}else{c=0}d=c+(h<<2)|0;D[d>>2]=b;if((j|0)>0){oa(c,i,j)}D[k+48>>2]=c;D[k+52>>2]=d+4;D[k+56>>2]=c+(g<<2);if(!i){break y}ma(i)}if(D[a+84>>2]<=(f|0)){break x}D[a+84>>2]=f}if(l){break k}b=-1;if((e|0)==-1){break n}}b=D[D[D[a+4>>2]>>2]+(e<<2)>>2]}f=0;if(!(D[D[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=D[a+88>>2]+(b<<2)|0;c=D[b>>2];D[b>>2]=c+1;f=(c|0)<=0?2:1}if(D[a+84>>2]<(f|0)){break l}b=e}e=D[a+24>>2];continue}break}i=J(f,12)+a|0;b=D[i+52>>2];z:{if((b|0)!=D[i+56>>2]){D[b>>2]=e;D[i+52>>2]=b+4;break z}j=D[i+48>>2];g=b-j|0;d=g>>2;c=d+1|0;if(c>>>0>=1073741824){break c}b=g>>1;h=d>>>0<536870911?b>>>0>>0?c:b:1073741823;if(h){if(h>>>0>=1073741824){break a}b=na(h<<2)}else{b=0}c=b+(d<<2)|0;D[c>>2]=e;if((g|0)>0){oa(b,j,g)}D[i+48>>2]=b;D[i+52>>2]=c+4;D[i+56>>2]=b+(h<<2);if(!j){break z}ma(j)}d=D[a+84>>2];if((d|0)<=(f|0)){break j}D[a+84>>2]=f;d=f;break j}d=D[a+84>>2]}if((d|0)<3){continue}break}}return 1}qa();T()}qa();T()}qa();T()}ra(1326);T()}function sd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=$-48|0;$=h;c=D[D[a+4>>2]+44>>2];d=D[a+8>>2];f=D[d>>2];d=D[d+4>>2];D[h+40>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;d=(d-f>>2>>>0)/3|0;j=D[c+96>>2];f=(D[c+100>>2]-j|0)/12|0;a:{if(d>>>0>f>>>0){gc(c+96|0,d-f|0,h+32|0);break a}if(d>>>0>=f>>>0){break a}D[c+100>>2]=j+J(d,12)}b:{if(D[a+216>>2]==D[a+220>>2]){k=D[a+4>>2];i=D[k+44>>2];d=D[i+100>>2];if((d|0)!=D[i+96>>2]){c=0;while(1){g=D[a+8>>2];e=J(c,3);c:{d:{if((e|0)==-1){l=D[(D[g>>2]+(e<<2)|0)+4>>2];j=-1;e=1;break d}l=-1;j=D[D[g>>2]+(e<<2)>>2];f=e+1|0;if((f|0)==-1){e=0;break d}l=D[D[g>>2]+(f<<2)>>2];e=e+2|0;f=-1;if((e|0)==-1){break c}}f=D[D[g>>2]+(e<<2)>>2]}g=f;f=c+1|0;e=d;d=D[i+96>>2];e=(e-d|0)/12|0;if(e>>>0<=c>>>0){D[h+40>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;gc(i+96|0,f-e|0,h+32|0);k=D[a+4>>2];d=D[i+96>>2]}c=J(c,12)+d|0;D[c+8>>2]=g;D[c+4>>2]=l;D[c>>2]=j;c=f;i=D[k+44>>2];d=D[i+100>>2];if(c>>>0<(d-D[i+96>>2]|0)/12>>>0){continue}break}}D[D[k+4>>2]+80>>2]=b;c=1;break b}D[h+24>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;k=D[a+8>>2];b=D[k>>2];c=D[k+4>>2];D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;e:{f:{g:{h:{i:{j:{k:{b=c-b|0;if(b){if((b|0)<0){break k}n=na(b);D[h>>2]=n;D[h+8>>2]=(b>>2<<2)+n;u=h,v=pa(n,0,b)+b|0,D[u+4>>2]=v}c=D[k+24>>2];if((D[k+28>>2]-c|0)<=0){d=0;b=0;break f}d=0;f=0;b=0;while(1){j=D[(o<<2)+c>>2];l:{if((j|0)==-1){break l}m:{if(D[D[a+120>>2]+(o>>>3&536870908)>>2]>>>o&1){break m}q=D[a+216>>2];c=D[a+220>>2]-q|0;if(!c){break m}c=(c|0)/144|0;r=c>>>0>1?c:1;l=0;c=(j>>>0)%3|0;g=j+2|0;s=(c|0)!=0|(g|0)!=-1;t=c?j-1|0:g;while(1){i=j<<2;e=q+J(l,144)|0;c=D[i+D[D[e+68>>2]>>2]>>2];n:{if(!(D[D[e+16>>2]+(c>>>3&536870908)>>2]>>>c&1)){break n}c=-1;o:{if(!s){break o}g=D[D[k+12>>2]+(t<<2)>>2];c=-1;if((g|0)==-1){break o}c=g-1|0;if((g>>>0)%3|0){break o}c=g+2|0}if((j|0)==(c|0)){break n}e=D[e+32>>2];g=D[e+i>>2];while(1){m=0;if((c|0)==-1){break e}if(D[e+(c<<2)>>2]!=(g|0)){j=c;break m}p:{q:{if((c>>>0)%3|0){i=c-1|0;break q}i=c+2|0;m=-1;if((i|0)==-1){break p}}c=D[D[k+12>>2]+(i<<2)>>2];m=-1;if((c|0)==-1){break p}m=c-1|0;if((c>>>0)%3|0){break p}m=c+2|0}c=m;if((j|0)!=(c|0)){continue}break}}l=l+1|0;if((r|0)!=(l|0)){continue}break}}c=b-f|0;g=c>>2;D[(j<<2)+n>>2]=g;r:{if(b>>>0

>>0){D[b>>2]=j;b=b+4|0;D[h+20>>2]=b;break r}b=g+1|0;if(b>>>0>=1073741824){break j}d=p-f|0;e=d>>1;b=d>>2>>>0<536870911?b>>>0>e>>>0?b:e:1073741823;if(b){if(b>>>0>=1073741824){break i}d=na(b<<2)}else{d=0}g=d+(g<<2)|0;D[g>>2]=j;p=(b<<2)+d|0;b=g+4|0;if((c|0)>0){oa(d,f,c)}D[h+24>>2]=p;D[h+20>>2]=b;D[h+16>>2]=d;if(f){ma(f);k=D[a+8>>2]}f=d}if((j|0)==-1){break l}s:{if((j>>>0)%3|0){c=j-1|0;break s}c=j+2|0;if((c|0)==-1){break l}}c=D[D[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=j;if((c|0)==(e|0)){break l}while(1){g=c;t:{u:{i=D[a+216>>2];c=D[a+220>>2]-i|0;if(!c){break u}c=(c|0)/144|0;l=c>>>0>1?c:1;c=0;while(1){q=D[(i+J(c,144)|0)+32>>2];r=g<<2;if(D[q+r>>2]==D[q+(e<<2)>>2]){c=c+1|0;if((l|0)!=(c|0)){continue}break u}break}c=b-d|0;e=c>>2;D[n+r>>2]=e;if(b>>>0

>>0){D[b>>2]=g;b=b+4|0;D[h+20>>2]=b;f=d;break t}b=e+1|0;if(b>>>0>=1073741824){break h}f=p-d|0;i=f>>1;b=f>>2>>>0<536870911?b>>>0>i>>>0?b:i:1073741823;if(b){if(b>>>0>=1073741824){break g}f=na(b<<2)}else{f=0}e=f+(e<<2)|0;D[e>>2]=g;p=(b<<2)+f|0;b=e+4|0;if((c|0)>0){oa(f,d,c)}D[h+24>>2]=p;D[h+20>>2]=b;D[h+16>>2]=f;if(!d){d=f;break t}ma(d);k=D[a+8>>2];d=f;break t}D[(g<<2)+n>>2]=D[(e<<2)+n>>2]}if((g|0)==-1){break l}v:{if((g>>>0)%3|0){c=g-1|0;break v}c=g+2|0;if((c|0)==-1){break l}}c=D[D[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=g;if((c|0)!=(j|0)){continue}break}}o=o+1|0;c=D[k+24>>2];if((o|0)>2]-c>>2){continue}break}break f}qa();T()}qa();T()}ra(1326);T()}qa();T()}ra(1326);T()}o=D[a+4>>2];i=D[o+44>>2];l=D[i+100>>2];if((l|0)!=D[i+96>>2]){c=0;while(1){f=c+1|0;g=J(c,12);j=g+n|0;e=D[j+8>>2];k=D[j+4>>2];j=D[j>>2];m=c;c=D[i+96>>2];l=(l-c|0)/12|0;if(m>>>0>=l>>>0){D[h+40>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;gc(i+96|0,f-l|0,h+32|0);o=D[a+4>>2];c=D[i+96>>2]}c=c+g|0;D[c+8>>2]=e;D[c+4>>2]=k;D[c>>2]=j;c=f;i=D[o+44>>2];l=D[i+100>>2];if(c>>>0<(l-D[i+96>>2]|0)/12>>>0){continue}break}}D[D[o+4>>2]+80>>2]=b-d>>2;m=1}c=m;if(n){ma(n)}if(!d){break b}D[h+20>>2]=d;ma(d)}$=h+48|0;return c} -function Fa(a,b,c,d){var e=0,f=0,g=0,h=0,i=K(0),j=0,k=0;a:{if(!d){break a}b:{c:{switch(D[a+28>>2]-1|0){case 0:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=B[b|0];D[e>>2]=g;D[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 1:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;D[e>>2]=E[b|0];D[e+4>>2]=0;b=b+1|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 2:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=C[b>>1];D[e>>2]=g;D[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 3:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;D[e>>2]=F[b>>1];D[e+4>>2]=0;b=b+2|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 4:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=D[b>>2];D[e>>2]=g;D[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 5:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;D[e>>2]=D[b>>2];D[e+4>>2]=0;b=b+4|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 6:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=D[b+4>>2];e=(f<<3)+d|0;D[e>>2]=D[b>>2];D[e+4>>2]=g;b=b+8|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 7:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=D[b>>2];g=D[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;D[k>>2]=e;D[k+4>>2]=g;b=b+8|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 8:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;k=D[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;i=H[b>>2];d:{if(K(L(i))=K(1)?~~(i>K(0)?K(N(K(P(K(i*K(2.3283064365386963e-10)))),K(4294967296))):K(Q(K(K(i-K(~~i>>>0>>>0))*K(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}D[e>>2]=h;D[e+4>>2]=g;b=b+4|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 9:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;k=D[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;j=I[b>>3];e:{if(L(j)<0x8000000000000000){g=L(j)>=1?~~(j>0?N(P(j*2.3283064365386963e-10),4294967295):Q((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}D[e>>2]=h;D[e+4>>2]=g;b=b+8|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;D[e>>2]=E[b|0];D[e+4>>2]=0;b=b+1|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break a}}pa((e<<3)+d|0,0,c-e<<3)}}function Cg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=$-32|0;$=d;a:{if(!$a(1,d+28|0,D[a+32>>2])){break a}if(!$a(1,d+24|0,D[a+32>>2])){break a}k=D[d+28>>2];if(k>>>0>1431655765){break a}e=D[a+32>>2];j=D[e+8>>2];b=j;c=D[e+16>>2];f=b-c|0;g=D[e+12>>2];n=b>>>0>>0;b=D[e+20>>2];f=ai(f,g-(n+b|0)|0,3,0);if(!aa&f>>>0>>0){break a}o=D[d+24>>2];f=$h(k,0,3,0);if(!aa&f>>>0>>0|((b|0)>=(g|0)&c>>>0>=j>>>0|(b|0)>(g|0))){break a}g=E[c+D[e>>2]|0];j=c+1|0;f=j?b:b+1|0;D[e+16>>2]=j;D[e+20>>2]=f;b:{if(!g){e=0;b=$-32|0;$=b;D[b+24>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;c:{d:{f=J(k,3);if(f){if(f>>>0>=1073741824){break d}c=J(k,12);e=na(c);D[b+16>>2]=e;pa(e,0,c)}f=jc(f,1,D[a+32>>2],e);e:{f:{if(!(!f|!k)){g=0;c=0;while(1){n=h;j=(c<<2)+e|0;h=D[j>>2];i=h>>>1|0;h=n+(h&1?0-i|0:i)|0;D[b>>2]=h;i=D[j+4>>2];l=i>>>1|0;h=h+(i&1?0-l|0:l)|0;D[b+4>>2]=h;j=D[j+8>>2];i=j>>>1|0;h=h+(j&1?0-i|0:i)|0;D[b+8>>2]=h;nb(D[a+44>>2]+96|0,b);c=c+3|0;g=g+1|0;if((g|0)!=(k|0)){continue}break}break f}if(!e){break e}}ma(e)}$=b+32|0;break c}qa();T()}if(!f){break a}break b}g:{if(o>>>0<=255){if(!k){break b}D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;c=D[e+12>>2];b=c;h=D[e+8>>2];if((f|0)>=(b|0)&j>>>0>=h>>>0|(b|0)<(f|0)){break g}while(1){g=D[e>>2];l=E[g+j|0];b=f;i=j+1|0;b=i?b:b+1|0;D[e+16>>2]=i;D[e+20>>2]=b;D[d+8>>2]=l;if(h>>>0<=i>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break g}l=E[g+i|0];b=f;i=j+2|0;b=i>>>0<2?b+1|0:b;D[e+16>>2]=i;D[e+20>>2]=b;D[d+12>>2]=l;if(h>>>0<=i>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break g}b=E[g+i|0];c=j+3|0;f=c>>>0<3?f+1|0:f;D[e+16>>2]=c;D[e+20>>2]=f;D[d+16>>2]=b;nb(D[a+44>>2]+96|0,d+8|0);m=m+1|0;if((k|0)==(m|0)){break b}e=D[a+32>>2];b=e;j=D[b+16>>2];f=D[b+20>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;h=D[b+8>>2];c=D[b+12>>2];b=c;if(j>>>0>>0&(f|0)<=(b|0)|(b|0)>(f|0)){continue}break}break g}if(o>>>0<=65535){if(!k){break b}D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;g=D[e+12>>2];c=c+3|0;b=c>>>0<3?b+1|0:b;i=D[e+8>>2];h=c;c=b;if(i>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}while(1){l=D[e>>2];b=l+j|0;b=E[b|0]|E[b+1|0]<<8;D[e+16>>2]=h;D[e+20>>2]=c;D[d+8>>2]=b;b=f;c=j+4|0;b=c>>>0<4?b+1|0:b;if(c>>>0>i>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}h=h+l|0;h=E[h|0]|E[h+1|0]<<8;D[e+16>>2]=c;D[e+20>>2]=b;D[d+12>>2]=h;b=f;f=j+6|0;b=f>>>0<6?b+1|0:b;if(f>>>0>i>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}c=c+l|0;c=E[c|0]|E[c+1|0]<<8;D[e+16>>2]=f;D[e+20>>2]=b;D[d+16>>2]=c;nb(D[a+44>>2]+96|0,d+8|0);m=m+1|0;if((k|0)==(m|0)){break b}e=D[a+32>>2];b=e;j=D[b+16>>2];f=D[b+20>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;g=D[b+12>>2];i=D[b+8>>2];b=f;c=j+2|0;b=c>>>0<2?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&h>>>0<=i>>>0|(b|0)<(g|0)){continue}break}break g}h:{if(G[D[a+44>>2]+80>>2]>2097151){break h}g=F[a+36>>1];if(((g<<8|g>>>8)&65535)>>>0<514){break h}if(!k){break b}D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;if(!$a(1,d+4|0,e)){break g}while(1){D[d+8>>2]=D[d+4>>2];if(!$a(1,d+4|0,D[a+32>>2])){break g}D[d+12>>2]=D[d+4>>2];if(!$a(1,d+4|0,D[a+32>>2])){break g}D[d+16>>2]=D[d+4>>2];nb(D[a+44>>2]+96|0,d+8|0);m=m+1|0;if((k|0)==(m|0)){break b}f=D[a+32>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;if($a(1,d+4|0,f)){continue}break}break g}if(!k){break b}D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;g=D[e+12>>2];c=c+5|0;b=c>>>0<5?b+1|0:b;i=D[e+8>>2];h=c;c=b;if(i>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}while(1){l=D[e>>2];b=l+j|0;b=E[b|0]|E[b+1|0]<<8|(E[b+2|0]<<16|E[b+3|0]<<24);D[e+16>>2]=h;D[e+20>>2]=c;D[d+8>>2]=b;b=f;c=j+8|0;b=c>>>0<8?b+1|0:b;n=c;if(c>>>0>i>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}c=h+l|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[e+16>>2]=n;D[e+20>>2]=b;D[d+12>>2]=c;b=j+12|0;f=b>>>0<12?f+1|0:f;c=b;if(b>>>0>i>>>0&(f|0)>=(g|0)|(f|0)>(g|0)){break g}b=l+n|0;b=E[b|0]|E[b+1|0]<<8|(E[b+2|0]<<16|E[b+3|0]<<24);D[e+16>>2]=c;D[e+20>>2]=f;D[d+16>>2]=b;nb(D[a+44>>2]+96|0,d+8|0);m=m+1|0;if((k|0)==(m|0)){break b}e=D[a+32>>2];b=e;j=D[b+16>>2];f=D[b+20>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;g=D[b+12>>2];i=D[b+8>>2];b=f;c=j+4|0;b=c>>>0<4?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&h>>>0<=i>>>0|(b|0)<(g|0)){continue}break}}m=0;break a}D[D[a+4>>2]+80>>2]=o;m=1}$=d+32|0;return m|0}function Lb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=$-96|0;$=f;e=D[a+16>>2];B[f+92|0]=1;D[f+88>>2]=b;D[f+84>>2]=b;D[f+80>>2]=e;m=D[a+20>>2];d=D[m>>2];a:{b:{e=D[D[e+28>>2]+(b<<2)>>2];if(e>>>0>2]-d>>2>>>0){d=D[D[a+8>>2]+(D[d+(e<<2)>>2]<<2)>>2];e=D[a+4>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}D[f+72>>2]=0;D[f+76>>2]=0;m=f- -64|0;D[m>>2]=0;D[m+4>>2]=0;D[f+56>>2]=0;D[f+60>>2]=0;Fa(e,d,B[e+24|0],f+56|0);e=b+1|0;d=(e>>>0)%3|0;if(b>>>0<=e>>>0){m=d?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;while(1){d=m;e=h;c:{if(!D[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}k=D[a+20>>2];b=D[k>>2];d=D[D[D[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=D[k+4>>2]-b>>2>>>0){break b}d=D[D[a+8>>2]+(D[b+(d<<2)>>2]<<2)>>2];b=D[a+4>>2];if(!E[b+84|0]){d=D[D[b+68>>2]+(d<<2)>>2]}D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;Fa(b,d,B[b+24|0],f+32|0);d=D[a+20>>2];b=D[d>>2];e=D[D[D[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=D[d+4>>2]-b>>2>>>0){break a}d=D[D[a+8>>2]+(D[b+(e<<2)>>2]<<2)>>2];b=D[a+4>>2];if(!E[b+84|0]){d=D[D[b+68>>2]+(d<<2)>>2]}D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;Fa(b,d,B[b+24|0],f+8|0);e=D[f+8>>2];b=D[f+56>>2];d=e-b|0;k=D[f+60>>2];n=D[f+12>>2]-(k+(b>>>0>e>>>0)|0)|0;i=D[f+40>>2];e=D[f+64>>2];s=i-e|0;t=D[f+68>>2];i=D[f+44>>2]-(t+(e>>>0>i>>>0)|0)|0;u=$h(d,n,s,i);v=j-u|0;g=g-(aa+(j>>>0>>0)|0)|0;w=v;j=D[f+16>>2];u=j-e|0;t=D[f+20>>2]-((e>>>0>j>>>0)+t|0)|0;j=D[f+32>>2];v=j-b|0;k=D[f+36>>2]-((b>>>0>j>>>0)+k|0)|0;e=$h(u,t,v,k);j=w+e|0;b=aa+g|0;b=e>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=D[f+48>>2];e=D[f+72>>2];n=b-e|0;o=D[f+76>>2];x=D[f+52>>2]-(o+(b>>>0>>0)|0)|0;p=$h(d,p,n,x);d=w+p|0;b=aa+l|0;b=d>>>0

>>0?b+1|0:b;l=D[f+24>>2];p=l-e|0;e=D[f+28>>2]-((e>>>0>l>>>0)+o|0)|0;l=$h(p,e,v,k);o=d-l|0;l=b-(aa+(d>>>0>>0)|0)|0;b=$h(u,t,n,x);d=q-b|0;b=r-(aa+(b>>>0>q>>>0)|0)|0;r=$h(p,e,s,i);q=r+d|0;b=aa+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=D[f+88>>2];e=D[f+80>>2];d:{if(E[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}D[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;D[f+88>>2]=b;if((b|0)!=-1){break e}}b=D[f+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}B[f+92|0]=0;D[f+88>>2]=d;break d}if((b|0)!=D[f+84>>2]){break d}D[f+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}D[f+88>>2]=d}b=D[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;d=b+q|0;e=b;b=b+r|0;k=d^e;h=e^(d>>>0>>0?b+1|0:b);n=-1;d=2147483647;b=l>>31;i=b;e=b+o|0;b=b+l|0;b=e>>>0>>0?b+1|0:b;e=e^i;b=b^i;i=b;s=e^-1;b=b^2147483647;m=g;m:{n:{if(!D[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break m}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=a;a=b;b=g>>31;d=b+j|0;h=g;g=b;b=h+b|0;b=d>>>0>>0?b+1|0:b;h=d^g;d=h+e|0;g=b^g;b=d;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break o}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(e|0)&(g^-1)>>>0>>0|e>>>0>h>>>0){break o}b=b+e|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;d=b;if(!b&a>>>0<536870913){break m}}b=d>>>29|0;a=(d&536870911)<<3|n>>>29}j=ai(j,m,a,b);o=ai(o,l,a,b);q=ai(q,r,a,b)}D[c+8>>2]=j;D[c+4>>2]=o;D[c>>2]=q;$=f+96|0;return}ua();T()}ua();T()}ua();T()}function Bb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=K(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=B[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=F[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=C[b>>1];if((e|0)<0){break b}C[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 4:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(e-32768>>>0<4294901760){break a}C[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(e>>>0>32767){break a}C[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=D[b>>2];e=D[b+4>>2]-(i>>>0<32768)|0;if((e|0)==-1&i-32768>>>0<4294901760|(e|0)!=-1){break a}C[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b+4>>2];i=D[b>>2];if(!e&i>>>0>32767|e){break a}C[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=H[b>>2];e:{if(K(L(j))>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=I[b>>3];f:{if(L(k)<2147483648){e=~~k;break f}e=-2147483648}C[i>>1]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<1)+d|0,0,c-e<<1)}return h}return 0}function Ab(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=K(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=B[b|0];if((e|0)<0){break b}C[(g<<1)+d>>1]=e&255;b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 1:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=C[b>>1];if((e|0)<0){break b}C[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 3:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=F[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(e>>>0>65535){break a}C[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(e>>>0>65535){break a}C[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b+4>>2];i=D[b>>2];if(!e&i>>>0>65535|e){break a}C[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b+4>>2];i=D[b>>2];if(!e&i>>>0>65535|e){break a}C[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=H[b>>2];e:{if(j=K(0)){e=~~j>>>0;break e}e=0}C[i>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=I[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}C[i>>1]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<1)+d|0,0,c-e<<1)}return h}return 0}function ec(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=$-48|0;$=e;d=F[5069]|F[5070]<<16;f=F[5067]|F[5068]<<16;C[e+38>>1]=f;C[e+40>>1]=f>>>16;C[e+42>>1]=d;C[e+44>>1]=d>>>16;d=D[2533];D[e+32>>2]=D[2532];D[e+36>>2]=d;d=D[2531];D[e+24>>2]=D[2530];D[e+28>>2]=d;d=D[2529];D[e+16>>2]=D[2528];D[e+20>>2]=d;f=D[b+12>>2];d=D[b+20>>2];g=D[b+16>>2];h=g+5|0;d=h>>>0<5?d+1|0:d;a:{b:{if(h>>>0>G[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){b=za(e+16|0);if(b>>>0>=4294967280){break a}c:{d:{if(b>>>0>=11){d=b+16&-16;c=na(d);D[e+8>>2]=d|-2147483648;D[e>>2]=c;D[e+4>>2]=b;break d}B[e+11|0]=b;c=e;if(!b){break c}}oa(c,e+16|0,b)}B[b+c|0]=0;D[a>>2]=-2;a=a+4|0;if(B[e+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}b=a;a=D[e>>2];ta(b,a,D[e+4>>2]);ma(a);break b}d=g+D[b>>2]|0;f=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);B[c|0]=f;B[c+1|0]=f>>>8;B[c+2|0]=f>>>16;B[c+3|0]=f>>>24;B[c+4|0]=E[d+4|0];d=D[b+20>>2];f=D[b+16>>2]+5|0;d=f>>>0<5?d+1|0:d;D[b+16>>2]=f;D[b+20>>2]=d;if(va(c,1394,5)){b=na(32);B[b+16|0]=E[1638];c=E[1634]|E[1635]<<8|(E[1636]<<16|E[1637]<<24);d=E[1630]|E[1631]<<8|(E[1632]<<16|E[1633]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1626]|E[1627]<<8|(E[1628]<<16|E[1629]<<24);d=E[1622]|E[1623]<<8|(E[1624]<<16|E[1625]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+17|0]=0;D[a>>2]=-1;ta(a+4|0,b,17);ma(b);break b}g=D[b+12>>2];if((g|0)<=(d|0)&G[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=za(e+16|0);if(b>>>0>=4294967280){break a}e:{f:{if(b>>>0>=11){d=b+16&-16;c=na(d);D[e+8>>2]=d|-2147483648;D[e>>2]=c;D[e+4>>2]=b;break f}B[e+11|0]=b;c=e;if(!b){break e}}oa(c,e+16|0,b)}B[b+c|0]=0;D[a>>2]=-2;a=a+4|0;if(B[e+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}b=a;a=D[e>>2];ta(b,a,D[e+4>>2]);ma(a);break b}B[c+5|0]=E[f+D[b>>2]|0];d=D[b+20>>2];f=D[b+16>>2]+1|0;d=f?d:d+1|0;D[b+16>>2]=f;D[b+20>>2]=d;g=D[b+12>>2];if((g|0)<=(d|0)&G[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=za(e+16|0);if(b>>>0>=4294967280){break a}g:{h:{if(b>>>0>=11){d=b+16&-16;c=na(d);D[e+8>>2]=d|-2147483648;D[e>>2]=c;D[e+4>>2]=b;break h}B[e+11|0]=b;c=e;if(!b){break g}}oa(c,e+16|0,b)}B[b+c|0]=0;D[a>>2]=-2;a=a+4|0;if(B[e+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}b=a;a=D[e>>2];ta(b,a,D[e+4>>2]);ma(a);break b}B[c+6|0]=E[f+D[b>>2]|0];d=D[b+20>>2];f=D[b+16>>2]+1|0;d=f?d:d+1|0;D[b+16>>2]=f;D[b+20>>2]=d;g=D[b+12>>2];if((g|0)<=(d|0)&G[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=za(e+16|0);if(b>>>0>=4294967280){break a}i:{j:{if(b>>>0>=11){d=b+16&-16;c=na(d);D[e+8>>2]=d|-2147483648;D[e>>2]=c;D[e+4>>2]=b;break j}B[e+11|0]=b;c=e;if(!b){break i}}oa(c,e+16|0,b)}B[b+c|0]=0;D[a>>2]=-2;a=a+4|0;if(B[e+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}b=a;a=D[e>>2];ta(b,a,D[e+4>>2]);ma(a);break b}B[c+7|0]=E[f+D[b>>2]|0];d=D[b+20>>2];f=D[b+16>>2]+1|0;d=f?d:d+1|0;D[b+16>>2]=f;D[b+20>>2]=d;g=D[b+12>>2];if((g|0)<=(d|0)&G[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=Fb(e,e+16|0);D[a>>2]=-2;a=a+4|0;if(B[b+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}ta(a,D[b>>2],D[b+4>>2]);if(B[b+11|0]>=0){break b}ma(D[b>>2]);break b}B[c+8|0]=E[f+D[b>>2]|0];d=D[b+20>>2];f=d;i=D[b+16>>2];g=i+1|0;d=g?d:d+1|0;D[b+16>>2]=g;D[b+20>>2]=d;h=D[b+12>>2];d=f;f=i+3|0;d=f>>>0<3?d+1|0:d;if(f>>>0>G[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){b=Fb(e,e+16|0);D[a>>2]=-2;a=a+4|0;if(B[b+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}ta(a,D[b>>2],D[b+4>>2]);if(B[b+11|0]>=0){break b}ma(D[b>>2]);break b}f=c;c=g+D[b>>2]|0;C[f+10>>1]=E[c|0]|E[c+1|0]<<8;d=D[b+20>>2];c=D[b+16>>2]+2|0;d=c>>>0<2?d+1|0:d;D[b+16>>2]=c;D[b+20>>2]=d;D[a+8>>2]=0;D[a+12>>2]=0;D[a>>2]=0;D[a+4>>2]=0}$=e+48|0;return}Aa();T()}function zb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=K(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=B[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=C[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=F[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=D[b>>2];b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if((e|0)<0){break b}D[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 6:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if((D[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}D[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b+4>>2];i=D[b>>2];if(!e&i>>>0>2147483647|e){break a}D[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=H[b>>2];e:{if(K(L(j))>2]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=I[b>>3];f:{if(L(k)<2147483648){e=~~k;break f}e=-2147483648}D[i>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<2)+d|0,0,c-e<<2)}return h}return 0}function yb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=K(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=B[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=C[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=F[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=D[b>>2];b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=D[b>>2];b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(D[b+4>>2]){break a}D[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(D[b+4>>2]){break a}D[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=H[b>>2];e:{if(j=K(0)){e=~~j>>>0;break e}e=0}D[i>>2]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=I[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}D[i>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+$h(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<2)+d|0,0,c-e<<2)}return h}return 0}function oe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=$-16|0;$=k;n=1;o=ba[D[D[a>>2]+24>>2]](a)|0;a:{if((o|0)<=0){n=0;break a}q=a+48|0;while(1){b:{c:{if(!D[(ba[D[D[a>>2]+28>>2]](a)|0)+40>>2]){break c}e=l<<2;b=D[e+D[a+36>>2]>>2];d=D[b+8>>2];g=cb(b);if(!g){break c}b=D[(ba[D[D[a>>2]+28>>2]](a)|0)+40>>2];h=D[d+56>>2];c=na(32);D[k>>2]=c;D[k+4>>2]=24;D[k+8>>2]=-2147483616;B[c+24|0]=0;f=E[1308]|E[1309]<<8|(E[1310]<<16|E[1311]<<24);d=E[1304]|E[1305]<<8|(E[1306]<<16|E[1307]<<24);B[c+16|0]=d;B[c+17|0]=d>>>8;B[c+18|0]=d>>>16;B[c+19|0]=d>>>24;B[c+20|0]=f;B[c+21|0]=f>>>8;B[c+22|0]=f>>>16;B[c+23|0]=f>>>24;f=E[1300]|E[1301]<<8|(E[1302]<<16|E[1303]<<24);d=E[1296]|E[1297]<<8|(E[1298]<<16|E[1299]<<24);B[c+8|0]=d;B[c+9|0]=d>>>8;B[c+10|0]=d>>>16;B[c+11|0]=d>>>24;B[c+12|0]=f;B[c+13|0]=f>>>8;B[c+14|0]=f>>>16;B[c+15|0]=f>>>24;f=E[1292]|E[1293]<<8|(E[1294]<<16|E[1295]<<24);d=E[1288]|E[1289]<<8|(E[1290]<<16|E[1291]<<24);B[c|0]=d;B[c+1|0]=d>>>8;B[c+2|0]=d>>>16;B[c+3|0]=d>>>24;B[c+4|0]=f;B[c+5|0]=f>>>8;B[c+6|0]=f>>>16;B[c+7|0]=f>>>24;f=b+16|0;j=f;i=D[f>>2];d:{if(!i){break d}while(1){d=(h|0)>D[i+16>>2];j=d?j:i;i=D[(d<<2)+i>>2];if(i){continue}break}if((f|0)==(j|0)|(h|0)>2]){break d}i=D[j+24>>2];if(!i){break d}d=j+20|0;while(1){f=E[i+27|0];h=f<<24>>24<0;m=h?D[i+20>>2]:f;p=m>>>0<24;e:{f:{j=p?m:24;g:{if(j){f=i+16|0;h=h?D[f>>2]:f;f=va(c,h,j);h:{if(!f){if(m>>>0<=24){break h}break e}if((f|0)<0){break e}}f=va(h,c,j);if(!f){break g}if((f|0)<0){break f}b=d;break d}if(m>>>0>24){break e}}if(p){break f}b=d;break d}i=i+4|0}i=D[i>>2];if(i){continue}break}}i=0;d=b+4|0;b=_a(b,k);i:{if((d|0)==(b|0)){break i}d=B[b+39|0]<0?D[b+28>>2]:b+28|0;j=0;f=0;while(1){b=d;d=b+1|0;c=B[b|0];if((c|0)==32|c-9>>>0<5){continue}break}j:{k:{l:{c=B[b|0];switch(c-43|0){case 0:break k;case 2:break l;default:break j}}f=1}c=B[d|0];b=d}if(c-48>>>0<10){while(1){j=(J(j,10)-B[b|0]|0)+48|0;d=B[b+1|0];b=b+1|0;if(d-48>>>0<10){continue}break}}b=f?j:0-j|0;if((b|0)==-1){break i}i=(b|0)!=0}if(B[k+11|0]<0){ma(D[k>>2])}if(!i){break c}e=D[D[D[a+36>>2]+e>>2]+8>>2];if(!D[e+64>>2]){b=na(32);c=b;D[b+16>>2]=0;D[b+20>>2]=0;D[b+8>>2]=0;D[b>>2]=0;D[b+4>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;d=D[e+64>>2];D[e+64>>2]=b;if(d){b=D[d>>2];if(b){D[d+4>>2]=b;ma(b)}ma(d);c=D[e+64>>2]}D[e>>2]=c;b=D[c+20>>2];D[e+8>>2]=D[c+16>>2];D[e+12>>2]=b;d=D[c+24>>2];b=D[c+28>>2];D[e+48>>2]=0;D[e+52>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+16>>2]=d;D[e+20>>2]=b}m:{B[e+24|0]=E[g+24|0];D[e+28>>2]=D[g+28>>2];B[e+32|0]=E[g+32|0];b=D[g+44>>2];D[e+40>>2]=D[g+40>>2];D[e+44>>2]=b;b=D[g+52>>2];D[e+48>>2]=D[g+48>>2];D[e+52>>2]=b;D[e+56>>2]=D[g+56>>2];b=D[g+12>>2];D[e+8>>2]=D[g+8>>2];D[e+12>>2]=b;b=D[g+20>>2];D[e+16>>2]=D[g+16>>2];D[e+20>>2]=b;D[e+60>>2]=D[g+60>>2];d=D[g>>2];n:{if(!d){D[e>>2]=0;c=1;break n}b=D[e>>2];c=0;if(!b){break n}c=b;b=D[d>>2];id(c,b,D[d+4>>2]-b|0,0);c=1}if(!c){break m}B[e+84|0]=E[g+84|0];D[e+80>>2]=D[g+80>>2];if((e|0)!=(g|0)){fb(e+68|0,D[g+68>>2],D[g+72>>2])}o:{h=D[g+88>>2];p:{if(h){b=na(40);d=D[h>>2];D[b+16>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b>>2]=d;c=D[h+12>>2]-D[h+8>>2]|0;if(c){if((c|0)<0){break o}d=na(c);D[b+8>>2]=d;D[b+12>>2]=d;D[b+16>>2]=c+d;c=D[h+8>>2];f=D[h+12>>2]-c|0;if((f|0)>0){d=oa(d,c,f)+f|0}D[b+12>>2]=d}d=D[h+36>>2];D[b+32>>2]=D[h+32>>2];D[b+36>>2]=d;d=D[h+28>>2];D[b+24>>2]=D[h+24>>2];D[b+28>>2]=d;c=D[e+88>>2];D[e+88>>2]=b;if(c){break p}break m}c=D[e+88>>2];D[e+88>>2]=0;if(!c){break m}}b=D[c+8>>2];if(b){D[c+12>>2]=b;ma(b)}ma(c);break m}qa();T()}break b}b=D[D[a+36>>2]+(l<<2)>>2];if(!(ba[D[D[b>>2]+24>>2]](b,q)|0)){break a}}l=l+1|0;n=(o|0)>(l|0);if((l|0)!=(o|0)){continue}break}}$=k+16|0;return(n^-1)&1}function ih(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=K(0),f=0,g=0,h=0,i=0,j=0,k=K(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;if(D[c>>2]==D[c+4>>2]){g=D[d+80>>2];v=$-16|0;$=v;j=D[a+4>>2];h=D[d+48>>2];d=D[D[d>>2]>>2];i=B[b+24|0];c=v+8|0;D[c>>2]=1065353216;u=c;H[c>>2]=K(-1<>2];w=na((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!g|(i|0)<=0){break a}s=d+h|0;y=D[b>>2];c=D[b+48>>2];z=D[b+44>>2];x=D[b+40>>2];if(!E[b+84|0]){n=D[b+68>>2];t=i&-2;j=i&1;b=0;while(1){f=D[y>>2];d=$h(x,z,D[n+(o<<2)>>2],0)+c|0;p=oa(w,f+d|0,x);k=H[u>>2];l=D[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){f=s+(b<<2)|0;q=d<<2;e=K(P(K(K(k*K(H[q+p>>2]-H[l+q>>2]))+K(.5))));b:{if(K(L(e))>2]=h;h=q|4;e=K(P(K(K(k*K(H[h+p>>2]-H[l+h>>2]))+K(.5))));c:{if(K(L(e))>2]=h;d=d+2|0;b=b+2|0;m=m+2|0;if((t|0)!=(m|0)){continue}break}}if(j){f=s+(b<<2)|0;d=d<<2;e=K(P(K(K(k*K(H[d+p>>2]-H[d+l>>2]))+K(.5))));d:{if(K(L(e))>2]=d;b=b+1|0}o=o+1|0;if((g|0)!=(o|0)){continue}break}break a}n=i&-2;t=i&1;b=0;while(1){h=D[y>>2];d=$h(x,z,o,f)+c|0;p=oa(w,h+d|0,x);k=H[u>>2];l=D[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){h=s+(b<<2)|0;q=d<<2;e=K(P(K(K(k*K(H[q+p>>2]-H[l+q>>2]))+K(.5))));e:{if(K(L(e))>2]=j;j=q|4;e=K(P(K(K(k*K(H[j+p>>2]-H[l+j>>2]))+K(.5))));f:{if(K(L(e))>2]=j;d=d+2|0;b=b+2|0;m=m+2|0;if((n|0)!=(m|0)){continue}break}}if(t){h=s+(b<<2)|0;d=d<<2;e=K(P(K(K(k*K(H[d+p>>2]-H[d+l>>2]))+K(.5))));g:{if(K(L(e))>2]=d;b=b+1|0}d=o+1|0;f=d?f:f+1|0;o=d;if((g|0)!=(d|0)|f){continue}break}}ma(w);$=v+16|0;return 1}v=$-16|0;$=v;u=D[a+4>>2];g=D[d+48>>2];f=D[D[d>>2]>>2];r=B[b+24|0];d=v+8|0;D[d>>2]=1065353216;h=d;H[d>>2]=K(-1<>2];w=na((r|0)!=(r&1073741823)?-1:r<<2);y=D[c>>2];c=D[c+4>>2]-y|0;h:{if(!c|(r|0)<=0){break h}s=f+g|0;z=D[b>>2];d=D[b+48>>2];x=D[b+44>>2];o=D[b+40>>2];c=c>>2;q=c>>>0>1?c:1;if(E[b+84|0]){j=r&-2;u=r&1;b=0;while(1){f=D[z>>2];c=$h(o,x,D[y+(m<<2)>>2],0)+d|0;l=oa(w,f+c|0,o);k=H[h>>2];n=D[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;t=c<<2;e=K(P(K(K(k*K(H[t+l>>2]-H[n+t>>2]))+K(.5))));i:{if(K(L(e))>2]=g;g=t|4;e=K(P(K(K(k*K(H[g+l>>2]-H[n+g>>2]))+K(.5))));j:{if(K(L(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=K(P(K(K(k*K(H[c+l>>2]-H[c+n>>2]))+K(.5))));k:{if(K(L(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}break h}t=D[b+68>>2];j=r&-2;u=r&1;b=0;while(1){f=D[z>>2];c=$h(o,x,D[t+(D[y+(m<<2)>>2]<<2)>>2],0)+d|0;p=oa(w,f+c|0,o);k=H[h>>2];l=D[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;n=c<<2;e=K(P(K(K(k*K(H[n+p>>2]-H[l+n>>2]))+K(.5))));l:{if(K(L(e))>2]=g;g=n|4;e=K(P(K(K(k*K(H[g+p>>2]-H[l+g>>2]))+K(.5))));m:{if(K(L(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=K(P(K(K(k*K(H[c+p>>2]-H[c+l>>2]))+K(.5))));n:{if(K(L(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}}ma(w);$=v+16|0;return 1}function nh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=D[a+32>>2];e=D[c+16>>2];d=D[c+12>>2];b=D[c+20>>2];if(G[c+8>>2]>e>>>0&(d|0)>=(b|0)|(b|0)<(d|0)){f=E[e+D[c>>2]|0];d=e+1|0;b=d?b:b+1|0;D[c+16>>2]=d;D[c+20>>2]=b;c=D[a+48>>2];D[a+48>>2]=0;if(c){ba[D[D[c>>2]+4>>2]](c)}a:{b:{c:{d:{switch(f|0){case 0:c=na(384);D[c>>2]=8312;pa(c+4|0,0,80);D[c+96>>2]=0;D[c+100>>2]=0;D[c+92>>2]=-1;D[c+84>>2]=-1;D[c+88>>2]=-1;D[c+104>>2]=0;D[c+108>>2]=0;D[c+112>>2]=0;D[c+116>>2]=0;D[c+120>>2]=0;D[c+124>>2]=0;D[c+128>>2]=0;D[c+132>>2]=0;D[c+136>>2]=0;D[c+140>>2]=0;D[c+144>>2]=0;D[c+148>>2]=0;D[c+156>>2]=0;D[c+160>>2]=0;D[c+152>>2]=1065353216;D[c+164>>2]=0;D[c+168>>2]=0;D[c+172>>2]=0;D[c+176>>2]=0;D[c+180>>2]=0;D[c+184>>2]=0;D[c+188>>2]=0;D[c+192>>2]=0;D[c+196>>2]=0;D[c+200>>2]=0;D[c+204>>2]=0;D[c+208>>2]=0;D[c+212>>2]=-1;D[c+216>>2]=0;D[c+220>>2]=0;D[c+224>>2]=0;b=c+232|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;b=c+272|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;b=c+312|0;D[b>>2]=0;D[b+4>>2]=0;B[b+5|0]=0;B[b+6|0]=0;B[b+7|0]=0;B[b+8|0]=0;B[b+9|0]=0;B[b+10|0]=0;B[b+11|0]=0;B[b+12|0]=0;b=c+328|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;D[c+376>>2]=0;D[c+368>>2]=0;D[c+372>>2]=0;break c;case 2:break d;default:break b}}c=na(440);D[c>>2]=8364;pa(c+4|0,0,80);D[c+96>>2]=0;D[c+100>>2]=0;D[c+92>>2]=-1;D[c+84>>2]=-1;D[c+88>>2]=-1;D[c+104>>2]=0;D[c+108>>2]=0;D[c+112>>2]=0;D[c+116>>2]=0;D[c+120>>2]=0;D[c+124>>2]=0;D[c+128>>2]=0;D[c+132>>2]=0;D[c+136>>2]=0;D[c+140>>2]=0;D[c+144>>2]=0;D[c+148>>2]=0;D[c+156>>2]=0;D[c+160>>2]=0;D[c+152>>2]=1065353216;D[c+164>>2]=0;D[c+168>>2]=0;D[c+172>>2]=0;D[c+176>>2]=0;D[c+180>>2]=0;D[c+184>>2]=0;D[c+188>>2]=0;D[c+192>>2]=0;D[c+196>>2]=0;D[c+200>>2]=0;D[c+204>>2]=0;D[c+208>>2]=0;D[c+212>>2]=-1;D[c+216>>2]=0;D[c+220>>2]=0;D[c+224>>2]=0;b=c+232|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;b=c+272|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;b=c+312|0;D[b>>2]=0;D[b+4>>2]=0;B[b+5|0]=0;B[b+6|0]=0;B[b+7|0]=0;B[b+8|0]=0;B[b+9|0]=0;B[b+10|0]=0;B[b+11|0]=0;B[b+12|0]=0;b=c+328|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;D[c+392>>2]=0;D[c+396>>2]=0;D[c+384>>2]=0;D[c+388>>2]=0;D[c+376>>2]=0;D[c+380>>2]=0;D[c+368>>2]=0;D[c+372>>2]=0;D[c+416>>2]=0;D[c+420>>2]=0;D[c+408>>2]=2;D[c+412>>2]=7;D[c+400>>2]=-1;D[c+404>>2]=-1;D[c+424>>2]=0;D[c+428>>2]=0;D[c+432>>2]=0;D[c+436>>2]=0}b=D[a+48>>2];D[a+48>>2]=c;if(!b){break a}ba[D[D[b>>2]+4>>2]](b)}c=D[a+48>>2];if(c){break a}return 0}a=ba[D[D[c>>2]+8>>2]](c,a)|0}else{a=0}return a|0}function Gd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=$+-64|0;$=e;D[e+48>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e>>2]=0;D[e+4>>2]=0;h=b;a:{b:{if(!F[b+38>>1]){break b}if(!Sa(1,e+12|0,h)){break b}l=D[e+12>>2];b=D[e>>2];d=D[e+4>>2]-b>>2;c:{if(l>>>0>d>>>0){sa(e,l-d|0);l=D[e+12>>2];break c}if(d>>>0<=l>>>0){break c}D[e+4>>2]=b+(l<<2)}f=1;if(!l){break a}p=D[h+8>>2];q=D[h+12>>2];o=D[e>>2];while(1){d=D[h+20>>2];j=D[h+16>>2];f=0;if((q|0)<=(d|0)&p>>>0<=j>>>0|(d|0)>(q|0)){break a}m=D[h>>2];r=E[m+j|0];b=j+1|0;d=b?d:d+1|0;f=b;D[h+16>>2]=b;D[h+20>>2]=d;b=r>>>2|0;i=0;d:{e:{f:{g:{n=r&3;switch(n|0){case 3:break g;case 0:break e;default:break f}}b=b+g|0;f=0;if(b>>>0>=l>>>0){break a}pa(o+(g<<2)|0,0,(r&252)+4|0);g=b;break d}while(1){if((d|0)>=(q|0)&f>>>0>=p>>>0|(d|0)>(q|0)){break b}j=E[f+m|0];f=f+1|0;d=f?d:d+1|0;D[h+16>>2]=f;D[h+20>>2]=d;b=j<<(i<<3|6)|b;i=i+1|0;if((n|0)!=(i|0)){continue}break}}D[o+(g<<2)>>2]=b}g=g+1|0;l=D[e+12>>2];if(g>>>0>>0){continue}break}p=e+16|0;m=D[e>>2];f=D[e+16>>2];d=D[e+20>>2]-f|0;b=d>>2;h:{if(b>>>0<=1048575){sa(p,1048576-b|0);break h}if((d|0)==4194304){break h}D[e+20>>2]=f+4194304}d=e+28|0;g=D[d>>2];b=D[e+32>>2]-g>>3;i:{if(b>>>0>>0){bb(d,l-b|0);g=D[d>>2];break i}if(b>>>0>l>>>0){D[e+32>>2]=(l<<3)+g}if(!l){break b}}i=0;d=0;while(1){n=(i<<2)+m|0;j=D[n>>2];f=(i<<3)+g|0;b=d;D[f+4>>2]=d;D[f>>2]=j;o=D[n>>2];d=o+d|0;if(d>>>0>1048576){break b}j:{if(b>>>0>=d>>>0){break j}n=D[p>>2];j=0;f=o&7;if(f){while(1){D[n+(b<<2)>>2]=i;b=b+1|0;j=j+1|0;if((f|0)!=(j|0)){continue}break}}if(o-1>>>0<=6){break j}while(1){f=n+(b<<2)|0;D[f>>2]=i;D[f+28>>2]=i;D[f+24>>2]=i;D[f+20>>2]=i;D[f+16>>2]=i;D[f+12>>2]=i;D[f+8>>2]=i;D[f+4>>2]=i;b=b+8|0;if((d|0)!=(b|0)){continue}break}}i=i+1|0;if((l|0)!=(i|0)){continue}break}k=(d|0)==1048576}f=k}k:{if(!f|(D[e+12>>2]?0:a)){break k}if(!Oa(1,e+56|0,h)){break k}d=D[h+8>>2];b=D[h+16>>2];j=d-b|0;g=D[e+60>>2];f=D[h+20>>2];d=D[h+12>>2]-(f+(b>>>0>d>>>0)|0)|0;k=D[e+56>>2];if((g|0)==(d|0)&j>>>0>>0|d>>>0>>0){break k}d=f+g|0;j=b+k|0;d=j>>>0>>0?d+1|0:d;D[h+16>>2]=j;D[h+20>>2]=d;if((k|0)<=0){break k}m=b+D[h>>2]|0;D[e+40>>2]=m;b=k-1|0;f=m+b|0;d=E[f|0];l:{if(d>>>0<=63){D[e+44>>2]=b;d=E[f|0]&63;break l}m:{switch((d>>>6|0)-1|0){case 0:if(k>>>0<2){break k}b=k-2|0;D[e+44>>2]=b;d=(k+m|0)-2|0;d=E[d+1|0]<<8&16128|E[d|0];break l;case 1:if(k>>>0<3){break k}b=k-3|0;D[e+44>>2]=b;d=(k+m|0)-3|0;d=E[d+2|0]<<16&4128768|E[d+1|0]<<8|E[d|0];break l;default:break m}}b=k-4|0;D[e+44>>2]=b;d=(k+m|0)-4|0;d=E[d+2|0]<<16|E[d+3|0]<<24&1056964608|E[d+1|0]<<8|E[d|0]}g=d+4194304|0;D[e+48>>2]=g;if(g>>>0>1073741823){break k}if(!a){s=1;break k}n=D[e+28>>2];d=0;j=D[e+16>>2];while(1){n:{if(g>>>0>4194303){break n}while(1){if((b|0)<=0){break n}b=b-1|0;D[e+44>>2]=b;g=E[b+m|0]|g<<8;D[e+48>>2]=g;if(g>>>0<4194304){continue}break}}f=g&1048575;k=D[j+(f<<2)>>2];h=n+(k<<3)|0;g=(J(D[h>>2],g>>>20|0)+f|0)-D[h+4>>2]|0;D[e+48>>2]=g;D[(d<<2)+c>>2]=k;s=1;d=d+1|0;if((d|0)!=(a|0)){continue}break}}a=D[e+28>>2];if(a){D[e+32>>2]=a;ma(a)}a=D[e+16>>2];if(a){D[e+20>>2]=a;ma(a)}a=D[e>>2];if(a){D[e+4>>2]=a;ma(a)}$=e- -64|0;return s}function wd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=D[a+4>>2];d=D[a>>2];f=(c-d|0)/144|0;if(f>>>0>>0){d=a;g=b-f|0;c=D[a+8>>2];a=D[a+4>>2];a:{if(g>>>0<=(c-a|0)/144>>>0){if(g){b=J(g,144)+a|0;while(1){D[a>>2]=-1;Uc(a+4|0);D[a+104>>2]=0;D[a+108>>2]=0;B[a+100|0]=1;D[a+112>>2]=0;D[a+116>>2]=0;D[a+120>>2]=0;D[a+124>>2]=0;D[a+128>>2]=0;D[a+132>>2]=0;D[a+136>>2]=0;D[a+140>>2]=0;a=a+144|0;if((b|0)!=(a|0)){continue}break}a=b}D[d+4>>2]=a;break a}b:{c:{d:{b=a;a=D[d>>2];f=(b-a|0)/144|0;h=f+g|0;if(h>>>0<29826162){b=(c-a|0)/144|0;a=b<<1;e=b>>>0<14913080?a>>>0>>0?h:a:29826161;if(e){if(e>>>0>=29826162){break d}c=na(J(e,144))}else{c=0}b=c+J(f,144)|0;h=b+J(g,144)|0;a=b;while(1){D[a>>2]=-1;Uc(a+4|0);D[a+104>>2]=0;D[a+108>>2]=0;B[a+100|0]=1;D[a+112>>2]=0;D[a+116>>2]=0;D[a+120>>2]=0;D[a+124>>2]=0;D[a+128>>2]=0;D[a+132>>2]=0;D[a+136>>2]=0;D[a+140>>2]=0;a=a+144|0;if((h|0)!=(a|0)){continue}break}f=c+J(e,144)|0;a=D[d+4>>2];e=D[d>>2];if((a|0)==(e|0)){break c}while(1){b=b-144|0;a=a-144|0;D[b>>2]=D[a>>2];D[b+4>>2]=D[a+4>>2];D[b+8>>2]=D[a+8>>2];D[b+12>>2]=D[a+12>>2];D[a+12>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[b+16>>2]=D[a+16>>2];D[b+20>>2]=D[a+20>>2];D[b+24>>2]=D[a+24>>2];D[a+24>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;c=E[a+28|0];D[b+40>>2]=0;D[b+32>>2]=0;D[b+36>>2]=0;B[b+28|0]=c;D[b+32>>2]=D[a+32>>2];D[b+36>>2]=D[a+36>>2];D[b+40>>2]=D[a+40>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[b+52>>2]=0;D[b+44>>2]=0;D[b+48>>2]=0;D[b+44>>2]=D[a+44>>2];D[b+48>>2]=D[a+48>>2];D[b+52>>2]=D[a+52>>2];D[a+52>>2]=0;D[a+44>>2]=0;D[a+48>>2]=0;c=b- -64|0;D[c>>2]=0;D[b+56>>2]=0;D[b+60>>2]=0;D[b+56>>2]=D[a+56>>2];D[b+60>>2]=D[a+60>>2];g=c;c=a- -64|0;D[g>>2]=D[c>>2];D[c>>2]=0;D[a+56>>2]=0;D[a+60>>2]=0;D[b+68>>2]=D[a+68>>2];c=D[a+72>>2];D[b+84>>2]=0;D[b+76>>2]=0;D[b+80>>2]=0;D[b+72>>2]=c;D[b+76>>2]=D[a+76>>2];D[b+80>>2]=D[a+80>>2];D[b+84>>2]=D[a+84>>2];D[a+84>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[b+96>>2]=0;D[b+88>>2]=0;D[b+92>>2]=0;D[b+88>>2]=D[a+88>>2];D[b+92>>2]=D[a+92>>2];D[b+96>>2]=D[a+96>>2];D[a+96>>2]=0;D[a+88>>2]=0;D[a+92>>2]=0;c=E[a+100|0];D[b+112>>2]=0;D[b+104>>2]=0;D[b+108>>2]=0;B[b+100|0]=c;D[b+104>>2]=D[a+104>>2];D[b+108>>2]=D[a+108>>2];D[b+112>>2]=D[a+112>>2];D[a+112>>2]=0;D[a+104>>2]=0;D[a+108>>2]=0;D[b+124>>2]=0;D[b+116>>2]=0;D[b+120>>2]=0;D[b+116>>2]=D[a+116>>2];D[b+120>>2]=D[a+120>>2];D[b+124>>2]=D[a+124>>2];D[a+124>>2]=0;D[a+116>>2]=0;D[a+120>>2]=0;c=D[a+128>>2];D[b+140>>2]=0;D[b+132>>2]=0;D[b+136>>2]=0;D[b+128>>2]=c;D[b+132>>2]=D[a+132>>2];D[b+136>>2]=D[a+136>>2];D[b+140>>2]=D[a+140>>2];D[a+140>>2]=0;D[a+132>>2]=0;D[a+136>>2]=0;if((a|0)!=(e|0)){continue}break}D[d+8>>2]=f;a=D[d+4>>2];D[d+4>>2]=h;e=D[d>>2];D[d>>2]=b;if((a|0)==(e|0)){break b}while(1){b=D[a-12>>2];if(b){D[a-8>>2]=b;ma(b)}b=D[a-28>>2];if(b){D[a-24>>2]=b;ma(b)}b=D[a-40>>2];if(b){D[a-36>>2]=b;ma(b)}ob(a-140|0);a=a-144|0;if((e|0)!=(a|0)){continue}break}break b}qa();T()}ra(1326);T()}D[d+8>>2]=f;D[d+4>>2]=h;D[d>>2]=b}if(e){ma(e)}}return}if(b>>>0>>0){d=d+J(b,144)|0;if((d|0)!=(c|0)){while(1){b=D[c-12>>2];if(b){D[c-8>>2]=b;ma(b)}b=D[c-28>>2];if(b){D[c-24>>2]=b;ma(b)}b=D[c-40>>2];if(b){D[c-36>>2]=b;ma(b)}ob(c-140|0);c=c-144|0;if((d|0)!=(c|0)){continue}break}}D[a+4>>2]=d}}function Jb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=$-96|0;$=e;d=D[a+16>>2];B[e+92|0]=1;D[e+88>>2]=b;D[e+84>>2]=b;D[e+80>>2]=d;a:{if((b|0)==-1){break a}m=D[a+20>>2];f=D[m>>2];d=D[D[d>>2]+(b<<2)>>2];if(d>>>0>=D[m+4>>2]-f>>2>>>0){break a}d=D[D[a+8>>2]+(D[f+(d<<2)>>2]<<2)>>2];f=D[a+4>>2];if(!E[f+84|0]){d=D[D[f+68>>2]+(d<<2)>>2]}D[e+72>>2]=0;D[e+76>>2]=0;m=e- -64|0;D[m>>2]=0;D[m+4>>2]=0;D[e+56>>2]=0;D[e+60>>2]=0;Fa(f,d,B[f+24|0],e+56|0);d=b+1|0;m=(d>>>0)%3|0?d:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){f=m;d=h;d:{if(!D[a+28>>2]){break d}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((f|0)==-1){break b}k=D[a+20>>2];b=D[k>>2];f=D[D[D[a+16>>2]>>2]+(f<<2)>>2];if(f>>>0>=D[k+4>>2]-b>>2>>>0){break b}f=D[D[a+8>>2]+(D[(f<<2)+b>>2]<<2)>>2];b=D[a+4>>2];if(!E[b+84|0]){f=D[D[b+68>>2]+(f<<2)>>2]}D[e+48>>2]=0;D[e+52>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;Fa(b,f,B[b+24|0],e+32|0);if((d|0)==-1){break c}f=D[a+20>>2];b=D[f>>2];d=D[D[D[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=D[f+4>>2]-b>>2>>>0){break c}f=D[D[a+8>>2]+(D[b+(d<<2)>>2]<<2)>>2];b=D[a+4>>2];if(!E[b+84|0]){f=D[D[b+68>>2]+(f<<2)>>2]}D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;Fa(b,f,B[b+24|0],e+8|0);d=D[e+8>>2];b=D[e+56>>2];f=d-b|0;k=D[e+60>>2];n=D[e+12>>2]-(k+(b>>>0>d>>>0)|0)|0;i=D[e+40>>2];d=D[e+64>>2];s=i-d|0;t=D[e+68>>2];i=D[e+44>>2]-(t+(d>>>0>i>>>0)|0)|0;u=$h(f,n,s,i);v=j-u|0;g=g-(aa+(j>>>0>>0)|0)|0;w=v;j=D[e+16>>2];u=j-d|0;t=D[e+20>>2]-((d>>>0>j>>>0)+t|0)|0;j=D[e+32>>2];v=j-b|0;k=D[e+36>>2]-((b>>>0>j>>>0)+k|0)|0;d=$h(u,t,v,k);j=w+d|0;b=aa+g|0;b=d>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=D[e+48>>2];d=D[e+72>>2];n=b-d|0;o=D[e+76>>2];x=D[e+52>>2]-(o+(b>>>0>>0)|0)|0;p=$h(f,p,n,x);f=w+p|0;b=aa+l|0;b=f>>>0

>>0?b+1|0:b;l=D[e+24>>2];p=l-d|0;d=D[e+28>>2]-((d>>>0>l>>>0)+o|0)|0;l=$h(p,d,v,k);o=f-l|0;l=b-(aa+(f>>>0>>0)|0)|0;b=$h(u,t,n,x);f=q-b|0;b=r-(aa+(b>>>0>q>>>0)|0)|0;r=$h(p,d,s,i);q=r+f|0;b=aa+b|0;b=q>>>0>>0?b+1|0:b;r=b;kc(e+80|0);b=D[e+88>>2];if((b|0)!=-1){continue}break}b=r>>31;f=b+q|0;d=b;b=b+r|0;k=f^d;h=d^(f>>>0>>0?b+1|0:b);n=-1;f=2147483647;b=l>>31;i=b;d=b+o|0;b=b+l|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^i;i=b;s=d^-1;b=b^2147483647;m=g;e:{f:{if(!D[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break e}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=a;a=b;b=g>>31;f=b+j|0;h=g;g=b;b=h+b|0;b=f>>>0>>0?b+1|0:b;h=f^g;f=h+d|0;g=b^g;b=f;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break e}b=0;a=a>>>29|0;break f}g:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break g}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(d|0)&(g^-1)>>>0>>0|d>>>0>h>>>0){break g}b=b+d|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;f=b;if(!b&a>>>0<536870913){break e}}b=f>>>29|0;a=(f&536870911)<<3|n>>>29}j=ai(j,m,a,b);o=ai(o,l,a,b);q=ai(q,r,a,b)}D[c+8>>2]=j;D[c+4>>2]=o;D[c>>2]=q;$=e+96|0;return}ua();T()}ua();T()}ua();T()}function Ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}d=D[a+12>>2];c=D[a+8>>2];if(d-c>>2>>>0<=b>>>0){break a}e=c+(b<<2)|0;f=D[e>>2];i=D[f+60>>2];g=D[f+56>>2];c=e+4|0;b:{if((c|0)!=(d|0)){while(1){h=D[c>>2];D[c>>2]=0;D[e>>2]=h;if(f){ya(f)}e=e+4|0;c=c+4|0;if((c|0)!=(d|0)){f=D[e>>2];continue}break}d=D[a+12>>2];if((e|0)==(d|0)){break b}}while(1){d=d-4|0;c=D[d>>2];D[d>>2]=0;if(c){ya(c)}if((d|0)!=(e|0)){continue}break}}D[a+12>>2]=e;f=D[a+4>>2];c:{if(!f|(i|0)<0){break c}d=D[f+24>>2];c=D[f+28>>2];if((d|0)==(c|0)){break c}while(1){if((i|0)==D[D[d>>2]+24>>2]){e=d+4|0;i=D[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=D[e>>2];D[e>>2]=0;c=D[d>>2];D[d>>2]=h;if(c){Ca(c+12|0,D[c+16>>2]);Ba(c,D[c+4>>2]);ma(c)}d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=D[f+28>>2];if((e|0)==(d|0)){break d}}while(1){e=e-4|0;c=D[e>>2];D[e>>2]=0;if(c){Ca(c+12|0,D[c+16>>2]);Ba(c,D[c+4>>2]);ma(c)}if((d|0)!=(e|0)){continue}break}}D[f+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=J(g,12)+a|0;d=D[e+20>>2];c=D[e+24>>2];if((d|0)==(c|0)){break f}while(1){if(D[d>>2]==(b|0)){break f}d=d+4|0;if((c|0)!=(d|0)){continue}break}break e}if((d|0)==(c|0)){break e}f=d+4|0;c=c-f|0;if(c){Na(d,f,c)}D[e+24>>2]=d+c}e=D[a+20>>2];d=D[a+24>>2]-e|0;g:{if(!d){break g}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=D[h>>2];if((j|0)>(b|0)){D[h>>2]=j-1}g=e+(g|4)|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break g}d=e+(d<<2)|0;c=D[d>>2];if((c|0)<=(b|0)){break g}D[d>>2]=c-1}e=D[a+32>>2];d=D[a+36>>2]-e|0;h:{if(!d){break h}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=D[h>>2];if((j|0)>(b|0)){D[h>>2]=j-1}g=e+(g|4)|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break h}d=e+(d<<2)|0;c=D[d>>2];if((c|0)<=(b|0)){break h}D[d>>2]=c-1}e=D[a+44>>2];d=D[a+48>>2]-e|0;i:{if(!d){break i}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=D[h>>2];if((j|0)>(b|0)){D[h>>2]=j-1}g=e+(g|4)|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break i}d=e+(d<<2)|0;c=D[d>>2];if((c|0)<=(b|0)){break i}D[d>>2]=c-1}e=D[a+56>>2];d=D[a+60>>2]-e|0;j:{if(!d){break j}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=D[h>>2];if((j|0)>(b|0)){D[h>>2]=j-1}g=e+(g|4)|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break j}d=e+(d<<2)|0;c=D[d>>2];if((c|0)<=(b|0)){break j}D[d>>2]=c-1}c=D[a+72>>2];a=D[a+68>>2];d=c-a|0;if(!d){break a}c=d>>2;e=c>>>0>1?c:1;f=e&1;d=0;if(c>>>0>=2){e=e&-2;c=0;while(1){i=d<<2;g=i+a|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}i=a+(i|4)|0;g=D[i>>2];if((g|0)>(b|0)){D[i>>2]=g-1}d=d+2|0;c=c+2|0;if((e|0)!=(c|0)){continue}break}}if(!f){break a}c=b;a=a+(d<<2)|0;b=D[a>>2];if((c|0)>=(b|0)){break a}D[a>>2]=b-1}}function ma(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=D[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=D[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=D[d+8>>2];b=b>>>3|0;c=D[d+12>>2];if((c|0)==(e|0)){i=11524,j=D[2881]&di(b),D[i>>2]=j;break b}D[e+12>>2]=c;D[c+8>>2]=e;break b}h=D[d+24>>2];b=D[d+12>>2];c:{if((d|0)!=(b|0)){c=D[d+8>>2];D[c+12>>2]=b;D[b+8>>2]=c;break c}d:{e=d+20|0;c=D[e>>2];if(c){break d}e=d+16|0;c=D[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=D[e>>2];if(c){continue}e=b+16|0;c=D[b+16>>2];if(c){continue}break}D[g>>2]=0}if(!h){break b}e=D[d+28>>2];c=(e<<2)+11828|0;e:{if(D[c>>2]==(d|0)){D[c>>2]=b;if(b){break e}i=11528,j=D[2882]&di(e),D[i>>2]=j;break b}D[h+(D[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}D[b+24>>2]=h;c=D[d+16>>2];if(c){D[b+16>>2]=c;D[c+24>>2]=b}c=D[d+20>>2];if(!c){break b}D[b+20>>2]=c;D[c+24>>2]=b;break b}b=D[f+4>>2];if((b&3)!=3){break b}D[2883]=a;D[f+4>>2]=b&-2;D[d+4>>2]=a|1;D[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=D[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(D[2887]==(f|0)){D[2887]=d;a=D[2884]+a|0;D[2884]=a;D[d+4>>2]=a|1;if(D[2886]!=(d|0)){break a}D[2883]=0;D[2886]=0;return}if(D[2886]==(f|0)){D[2886]=d;a=D[2883]+a|0;D[2883]=a;D[d+4>>2]=a|1;D[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=D[f+8>>2];b=b>>>3|0;c=D[f+12>>2];if((c|0)==(e|0)){i=11524,j=D[2881]&di(b),D[i>>2]=j;break g}D[e+12>>2]=c;D[c+8>>2]=e;break g}h=D[f+24>>2];b=D[f+12>>2];h:{if((f|0)!=(b|0)){c=D[f+8>>2];D[c+12>>2]=b;D[b+8>>2]=c;break h}i:{e=f+20|0;c=D[e>>2];if(c){break i}e=f+16|0;c=D[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=D[e>>2];if(c){continue}e=b+16|0;c=D[b+16>>2];if(c){continue}break}D[g>>2]=0}if(!h){break g}e=D[f+28>>2];c=(e<<2)+11828|0;j:{if(D[c>>2]==(f|0)){D[c>>2]=b;if(b){break j}i=11528,j=D[2882]&di(e),D[i>>2]=j;break g}D[h+(D[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}D[b+24>>2]=h;c=D[f+16>>2];if(c){D[b+16>>2]=c;D[c+24>>2]=b}c=D[f+20>>2];if(!c){break g}D[b+20>>2]=c;D[c+24>>2]=b}D[d+4>>2]=a|1;D[a+d>>2]=a;if(D[2886]!=(d|0)){break f}D[2883]=a;return}D[f+4>>2]=b&-2;D[d+4>>2]=a|1;D[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+11564|0;c=D[2881];a=1<>2]}D[b+8>>2]=d;D[a+12>>2]=d;D[d+12>>2]=b;D[d+8>>2]=a;return}e=31;D[d+16>>2]=0;D[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}D[d+28>>2]=e;g=(e<<2)+11828|0;l:{m:{c=D[2882];b=1<>2]=d;D[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=D[g>>2];while(1){c=b;if((D[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=D[g+16>>2];if(b){continue}break}D[g+16>>2]=d;D[d+24>>2]=c}D[d+12>>2]=d;D[d+8>>2]=d;break l}a=D[c+8>>2];D[a+12>>2]=d;D[c+8>>2]=d;D[d+24>>2]=0;D[d+12>>2]=c;D[d+8>>2]=a}a=D[2889]-1|0;D[2889]=a?a:-1}}function qd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=K(0),l=0,m=0,n=K(0);j=D[c>>2];a:{b:{f=D[b+4>>2];if(!f){break b}g=ci(f);c:{if(g>>>0>=2){e=j;if(e>>>0>=f>>>0){e=(j>>>0)%(f>>>0)|0}c=D[D[b>>2]+(e<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=D[c>>2];if(!c){break b}g=D[c+4>>2];if((g|0)!=(j|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if(D[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&j;c=D[D[b>>2]+(e<<2)>>2];if(!c){break b}}g=f-1|0;while(1){c=D[c>>2];if(!c){break b}h=D[c+4>>2];if((h|0)!=(j|0)&(g&h)!=(e|0)){break b}if(D[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=na(16);d=D[D[d>>2]>>2];D[c+12>>2]=0;D[c+8>>2]=d;D[c+4>>2]=j;D[c>>2]=0;n=K(D[b+12>>2]+1>>>0);k=H[b+16>>2];d:{if(!(f?n>K(k*K(f>>>0)):1)){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;e=2;k=K(Q(K(n/k)));e:{if(k=K(0)){d=~~k>>>0;break e}d=0}d=d>>>0>g>>>0?d:g;f:{if((d|0)==1){break f}if(!(d&d-1)){e=d;break f}e=Hc(d);f=D[b+4>>2]}g:{if(e>>>0<=f>>>0){if(e>>>0>=f>>>0){break g}g=f>>>0<3;k=K(Q(K(K(G[b+12>>2])/H[b+16>>2])));h:{if(k=K(0)){d=~~k>>>0;break h}d=0}i:{j:{if(g){break j}if(ci(f)>>>0>1){break j}d=d>>>0<2?d:1<<32-M(d-1|0);break i}d=Hc(d)}e=d>>>0>e>>>0?d:e;if(e>>>0>=f>>>0){break g}}f=0;h=e;k:{l:{m:{n:{if(e){if(h>>>0>=1073741824){break n}e=na(h<<2);d=D[b>>2];D[b>>2]=e;if(d){ma(d)}D[b+4>>2]=h;e=0;if(h-1>>>0>=3){g=h&-4;while(1){d=e<<2;D[d+D[b>>2]>>2]=0;D[D[b>>2]+(d|4)>>2]=0;D[D[b>>2]+(d|8)>>2]=0;D[D[b>>2]+(d|12)>>2]=0;e=e+4|0;f=f+4|0;if((g|0)!=(f|0)){continue}break}}d=h&3;if(d){while(1){D[D[b>>2]+(e<<2)>>2]=0;e=e+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}f=D[b+8>>2];if(!f){break k}d=b+8|0;g=D[f+4>>2];e=ci(h);if(e>>>0<2){break m}g=g>>>0>=h>>>0?(g>>>0)%(h>>>0)|0:g;D[D[b>>2]+(g<<2)>>2]=d;d=D[f>>2];if(!d){break k}if(e>>>0<=1){break l}while(1){i=D[d+4>>2];if(h>>>0<=i>>>0){i=(i>>>0)%(h>>>0)|0}o:{if((g|0)==(i|0)){f=d;break o}e=d;l=i<<2;m=l+D[b>>2]|0;if(!D[m>>2]){D[m>>2]=f;f=d;g=i;break o}while(1){i=e;e=D[e>>2];if(D[d+8>>2]==D[e+8>>2]?e:0){continue}break}D[f>>2]=e;D[i>>2]=D[D[l+D[b>>2]>>2]>>2];D[D[l+D[b>>2]>>2]>>2]=d}d=D[f>>2];if(d){continue}break}break k}d=D[b>>2];D[b>>2]=0;if(d){ma(d)}D[b+4>>2]=0;break k}ra(1326);T()}g=h-1&g;D[D[b>>2]+(g<<2)>>2]=d;d=D[f>>2];if(!d){break k}}l=h-1|0;while(1){h=l&D[d+4>>2];p:{if((h|0)==(g|0)){f=d;break p}e=d;i=h<<2;m=i+D[b>>2]|0;if(D[m>>2]){while(1){h=e;e=D[e>>2];if(D[d+8>>2]==D[e+8>>2]?e:0){continue}break}D[f>>2]=e;D[h>>2]=D[D[i+D[b>>2]>>2]>>2];D[D[i+D[b>>2]>>2]>>2]=d;break p}D[m>>2]=f;f=d;g=h}d=D[f>>2];if(d){continue}break}}}f=D[b+4>>2];d=f-1|0;if(!(d&f)){e=d&j;break d}if(f>>>0>j>>>0){e=j;break d}e=(j>>>0)%(f>>>0)|0}e=D[b>>2]+(e<<2)|0;d=D[e>>2];q:{if(!d){D[c>>2]=D[b+8>>2];D[b+8>>2]=c;D[e>>2]=b+8;d=D[c>>2];if(!d){break q}d=D[d+4>>2];e=f-1|0;r:{if(!(e&f)){d=d&e;break r}if(d>>>0>>0){break r}d=(d>>>0)%(f>>>0)|0}D[D[b>>2]+(d<<2)>>2]=c;break q}D[c>>2]=D[d>>2];D[d>>2]=c}D[b+12>>2]=D[b+12>>2]+1;b=1}B[a+4|0]=b;D[a>>2]=c}function Yh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;D[a+8>>2]=e;d=a+32|0;k=D[d>>2];f=D[a+36>>2]-k>>2;a:{if(f>>>0>>0){sa(d,e-f|0);k=D[d>>2];d=D[a+8>>2];break a}if(e>>>0>>0){D[a+36>>2]=(e<<2)+k}d=e}q=D[a+52>>2];n=D[a+48>>2];f=0;m=(e&1073741823)!=(e|0)?-1:e<<2;m=pa(na(m),0,m);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=D[d+m>>2];i=D[a+16>>2];c:{if((g|0)>(i|0)){D[d+k>>2]=i;break c}d=d+k|0;i=D[a+12>>2];if((i|0)>(g|0)){D[d>>2]=i;break c}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=D[b+g>>2]+D[g+k>>2]|0;D[d>>2]=g;d:{if((g|0)>D[a+16>>2]){h=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break d}h=g+D[a+20>>2]|0}D[d>>2]=h}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=D[a+56>>2];o=D[f>>2];f=D[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=J(e,k);f=D[(k<<2)+o>>2];if((f|0)==-1){break f}f=D[D[n+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}i=D[q>>2];g=D[n>>2];j=D[i+(D[g+(f<<2)>>2]<<2)>>2];h=f+1|0;h=(h>>>0)%3|0?h:f-2|0;if((h|0)!=-1){h=D[g+(h<<2)>>2]}else{h=-1}g:{h:{if((f>>>0)%3|0){f=f-1|0;break h}f=f+2|0;l=-1;if((f|0)==-1){break g}}l=D[g+(f<<2)>>2]}if((j|0)>=(k|0)){break f}f=D[(h<<2)+i>>2];if((f|0)>=(k|0)){break f}g=D[i+(l<<2)>>2];if((g|0)>=(k|0)){break f}i:{if((e|0)<=0){break i}g=J(e,g);i=J(e,f);j=J(e,j);f=0;l=0;if((e|0)!=1){while(1){D[m+(f<<2)>>2]=(D[(f+g<<2)+c>>2]+D[(f+i<<2)+c>>2]|0)-D[(f+j<<2)+c>>2];h=f|1;D[m+(h<<2)>>2]=(D[(g+h<<2)+c>>2]+D[(i+h<<2)+c>>2]|0)-D[(h+j<<2)+c>>2];f=f+2|0;l=l+2|0;if((t|0)!=(l|0)){continue}break}}if(!u){break i}D[m+(f<<2)>>2]=(D[(f+g<<2)+c>>2]+D[(f+i<<2)+c>>2]|0)-D[(f+j<<2)+c>>2]}if((d|0)<=0){break e}i=D[a+32>>2];f=0;while(1){d=f<<2;g=D[d+m>>2];j=D[a+16>>2];j:{if((g|0)>(j|0)){D[d+i>>2]=j;break j}d=d+i|0;j=D[a+12>>2];if((j|0)>(g|0)){D[d>>2]=j;break j}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=D[g+h>>2]+D[g+i>>2]|0;D[d>>2]=g;k:{if((g|0)>D[a+16>>2]){l=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break k}l=g+D[a+20>>2]|0}D[d>>2]=l}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}ua();T()}if((d|0)<=0){break e}j=(J(k-1|0,e)<<2)+c|0;i=D[a+32>>2];f=0;while(1){d=f<<2;g=D[d+j>>2];h=D[a+16>>2];l:{if((g|0)>(h|0)){D[d+i>>2]=h;break l}d=d+i|0;h=D[a+12>>2];if((h|0)>(g|0)){D[d>>2]=h;break l}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=D[g+h>>2]+D[g+i>>2]|0;D[d>>2]=g;m:{if((g|0)>D[a+16>>2]){l=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break m}l=g+D[a+20>>2]|0}D[d>>2]=l}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}ma(m);return 1}function Sc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;D[a+56>>2]=D[a+52>>2];D[a+44>>2]=D[a+40>>2];a:{b:{c:{e=D[a+64>>2];c=D[e+24>>2];if((c|0)!=D[e+28>>2]){while(1){d=b;i=D[(k<<2)+c>>2];d:{if((i|0)==-1){break d}b=D[a+56>>2];e:{if((b|0)!=D[a+60>>2]){D[b>>2]=d;D[a+56>>2]=b+4;break e}c=D[a+52>>2];e=b-c|0;g=e>>2;b=g+1|0;if(b>>>0>=1073741824){break c}f=e>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=na(f<<2)}else{b=0}g=b+(g<<2)|0;D[g>>2]=d;if((e|0)>0){oa(b,c,e)}D[a+60>>2]=b+(f<<2);D[a+56>>2]=g+4;D[a+52>>2]=b;if(!c){break e}ma(c)}f:{if(!(D[D[a+12>>2]+(k>>>3&536870908)>>2]>>>k&1)){break f}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1){break f}e=D[a>>2];if(D[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=D[D[D[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break f}f=D[a+64>>2];while(1){i=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|D[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=D[D[f+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}D[D[a+28>>2]+(i<<2)>>2]=d;b=D[a+44>>2];g:{if((b|0)!=D[a+48>>2]){D[b>>2]=i;D[a+44>>2]=b+4;break g}c=D[a+40>>2];e=b-c|0;g=e>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=e>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=na(f<<2)}else{b=0}g=b+(g<<2)|0;D[g>>2]=i;if((e|0)>0){oa(b,c,e)}D[a+48>>2]=b+(f<<2);D[a+44>>2]=g+4;D[a+40>>2]=b;if(!c){break g}ma(c)}b=d+1|0;e=D[a+64>>2];h:{if((i>>>0)%3|0){c=i-1|0;break h}c=i+2|0;if((c|0)==-1){break d}}c=D[D[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(i|0)){break d}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(D[D[a>>2]+(e>>>3&536870908)>>2]>>>e&1){d=D[a+56>>2];i:{if((d|0)!=D[a+60>>2]){D[d>>2]=b;D[a+56>>2]=d+4;break i}e=D[a+52>>2];f=d-e|0;h=f>>2;d=h+1|0;if(d>>>0>=1073741824){break c}g=f>>1;g=h>>>0<536870911?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break a}d=na(g<<2)}else{d=0}h=d+(h<<2)|0;D[h>>2]=b;if((f|0)>0){oa(d,e,f)}D[a+60>>2]=d+(g<<2);D[a+56>>2]=h+4;D[a+52>>2]=d;if(!e){break i}ma(e)}e=b+1|0;d=D[a+44>>2];j:{if((d|0)!=D[a+48>>2]){D[d>>2]=c;D[a+44>>2]=d+4;break j}f=D[a+40>>2];g=d-f|0;j=g>>2;d=j+1|0;if(d>>>0>=1073741824){break b}h=g>>1;h=j>>>0<536870911?d>>>0>h>>>0?d:h:1073741823;if(h){if(h>>>0>=1073741824){break a}d=na(h<<2)}else{d=0}j=d+(j<<2)|0;D[j>>2]=c;if((g|0)>0){oa(d,f,g)}D[a+48>>2]=d+(h<<2);D[a+44>>2]=j+4;D[a+40>>2]=d;if(!f){break j}ma(f)}d=b;b=e}D[D[a+28>>2]+(c<<2)>>2]=d;e=D[a+64>>2];k:{if((c>>>0)%3|0){c=c-1|0;break k}c=c+2|0;if((c|0)==-1){break d}}c=D[D[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break d}if((c|0)!=(i|0)){continue}break}}k=k+1|0;c=D[e+24>>2];if(k>>>0>2]-c>>2>>>0){continue}break}}return}qa();T()}qa();T()}ra(1326);T()}function ce(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;D[a+8>>2]=e;d=a+32|0;k=D[d>>2];f=D[a+36>>2]-k>>2;a:{if(f>>>0>>0){sa(d,e-f|0);k=D[d>>2];d=D[a+8>>2];break a}if(e>>>0>>0){D[a+36>>2]=(e<<2)+k}d=e}q=D[a+52>>2];m=D[a+48>>2];f=0;l=(e&1073741823)!=(e|0)?-1:e<<2;l=pa(na(l),0,l);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=D[d+l>>2];h=D[a+16>>2];c:{if((g|0)>(h|0)){D[d+k>>2]=h;break c}d=d+k|0;h=D[a+12>>2];if((h|0)>(g|0)){D[d>>2]=h;break c}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=D[b+g>>2]+D[g+k>>2]|0;D[d>>2]=g;d:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break d}g=g+D[a+20>>2]|0}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=D[a+56>>2];o=D[f>>2];f=D[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=J(e,k);f=D[(k<<2)+o>>2];if((f|0)==-1|D[D[m>>2]+(f>>>3&536870908)>>2]>>>f&1){break f}f=D[D[D[m+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}h=D[q>>2];g=D[m+28>>2];j=D[h+(D[g+(f<<2)>>2]<<2)>>2];if((j|0)>=(k|0)){break f}i=f+1|0;i=D[h+(D[g+(((i>>>0)%3|0?i:f-2|0)<<2)>>2]<<2)>>2];if((i|0)>=(k|0)){break f}f=D[h+(D[g+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(k|0)){break f}g:{if((e|0)<=0){break g}g=J(e,f);h=J(e,i);j=J(e,j);f=0;n=0;if((e|0)!=1){while(1){D[l+(f<<2)>>2]=(D[(f+g<<2)+c>>2]+D[(f+h<<2)+c>>2]|0)-D[(f+j<<2)+c>>2];i=f|1;D[l+(i<<2)>>2]=(D[(g+i<<2)+c>>2]+D[(h+i<<2)+c>>2]|0)-D[(j+i<<2)+c>>2];f=f+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(!u){break g}D[l+(f<<2)>>2]=(D[(f+g<<2)+c>>2]+D[(f+h<<2)+c>>2]|0)-D[(f+j<<2)+c>>2]}if((d|0)<=0){break e}h=D[a+32>>2];f=0;while(1){d=f<<2;g=D[d+l>>2];j=D[a+16>>2];h:{if((g|0)>(j|0)){D[d+h>>2]=j;break h}d=d+h|0;j=D[a+12>>2];if((j|0)>(g|0)){D[d>>2]=j;break h}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=D[g+i>>2]+D[g+h>>2]|0;D[d>>2]=g;i:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break i}g=g+D[a+20>>2]|0}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}ua();T()}if((d|0)<=0){break e}j=(J(k-1|0,e)<<2)+c|0;h=D[a+32>>2];f=0;while(1){d=f<<2;g=D[d+j>>2];i=D[a+16>>2];j:{if((g|0)>(i|0)){D[d+h>>2]=i;break j}d=d+h|0;i=D[a+12>>2];if((i|0)>(g|0)){D[d>>2]=i;break j}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=D[g+i>>2]+D[g+h>>2]|0;D[d>>2]=g;k:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break k}g=g+D[a+20>>2]|0}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}ma(l);return 1}function jd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}c=(b>>>0)/3|0;if(!(D[D[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=D[a+48>>2];D[a+52>>2]=d;a:{if((d|0)!=D[a+56>>2]){D[d>>2]=b;D[a+52>>2]=d+4;break a}e=na(4);D[e>>2]=b;f=e+4|0;D[a+56>>2]=f;D[a+52>>2]=f;D[a+48>>2]=e;if(!d){break a}ma(d)}f=D[D[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=D[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-J(c,3)|0?-1:2)+b|0;c=D[f+(g<<2)>>2];if((c|0)==-1){return 0}b=D[a+36>>2];f=b+(d>>>3&536870908)|0;h=D[f>>2];i=1<>2]=h|i;Ia(a+8|0,d,e);b=D[a+36>>2]}b=(c>>>3&536870908)+b|0;d=D[b>>2];e=1<>2]=d|e;Ia(a+8|0,c,g)}c=D[a+52>>2];if((c|0)==D[a+48>>2]){return 1}k=a+8|0;while(1){c=c-4|0;b=D[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=D[a+24>>2]+(d>>>3&268435452)|0;f=D[e>>2];d=1<>2]=d|f;e=D[a+4>>2];d=D[D[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=D[a+36>>2]+(d>>>3&536870908)|0;g=D[f>>2];h=1<>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}D[f>>2]=g|h;Ia(k,d,c);break e}D[f>>2]=g|h;Ia(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=D[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|D[D[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=D[D[D[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<>2];i=d>>>5|0;f=D[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=D[a+4>>2];if(!((b|0)==-1|D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(D[D[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=D[D[D[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;f=(d>>>0)/3|0;h=(d|0)==-1;if(!h){c=D[a+24>>2];h=h?-1:f;i=h>>>5|0;f=D[c+(i<<2)>>2];h=1<>2];i=g>>>5|0;f=D[c+(i<<2)>>2];if(!(h&f)){break d}}c=D[a+52>>2]-4|0;D[a+52>>2]=c;break b}if(j){b=d;break d}if(D[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=D[a+52>>2];D[c-4>>2]=b;if((c|0)!=D[a+56>>2]){D[c>>2]=d;c=c+4|0;break c}m:{e=D[a+48>>2];f=c-e|0;c=f>>2;b=c+1|0;if(b>>>0<1073741824){g=f>>1;g=c>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break m}b=na(g<<2)}else{b=0}c=b+(c<<2)|0;D[c>>2]=d;c=c+4|0;if((f|0)>0){oa(b,e,f)}D[a+56>>2]=b+(g<<2);D[a+52>>2]=c;D[a+48>>2]=b;if(!e){break b}ma(e);c=D[a+52>>2];break b}qa();T()}ra(1326);T()}D[(i<<2)+c>>2]=f|h;d=D[D[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}D[a+52>>2]=c}if(D[a+48>>2]!=(c|0)){continue}break}}return 1}function Tb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=J(b,12)+a|0;D[i+12>>2]=D[i+8>>2];l=(c|0)==-1?-1:(c>>>0)/3|0;n=1;j=c;a:{b:{c:{while(1){d:{o=e&1;if(o){if((j|0)==-1){break d}if((Qc(a,((j>>>0)%3|0?-1:2)+j|0)|0)==-1){break a}c=j+1|0;d=(c>>>0)%3|0?c:j-2|0;if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}d=D[D[D[a+4>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}l=(c>>>0)/3|0}k=1<>2]+(l>>>3&536870908)|0;m=D[g>>2];e:{if(k&m){break e}e=0;while(1){D[g>>2]=m|k;d=D[i+12>>2];f:{if((d|0)!=D[i+16>>2]){D[d>>2]=l;D[i+12>>2]=d+4;break f}g=D[i+8>>2];k=d-g|0;f=k>>2;h=f+1|0;if(h>>>0>=1073741824){break c}d=k>>1;m=f>>>0<536870911?d>>>0>>0?h:d:1073741823;if(m){if(m>>>0>=1073741824){break b}d=na(m<<2)}else{d=0}h=d+(f<<2)|0;D[h>>2]=l;if((k|0)>0){oa(d,g,k)}D[i+8>>2]=d;D[i+12>>2]=h+4;D[i+16>>2]=d+(m<<2);if(!g){break f}ma(g)}h=e+1|0;g:{h:{i:{if(!e){break i}if(h&1){if((c|0)==-1){c=-1;break g}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;break i}j=o?c:j;if((c|0)==-1){c=-1;break g}if((c>>>0)%3|0){e=c-1|0;break h}c=c+2|0}d=c;c=-1;e=d;if((d|0)==-1){break g}}c=D[D[D[a+4>>2]+12>>2]+(e<<2)>>2];g=-1;m=-1;d=e+1|0;f=(d>>>0)%3|0?d:e-2|0;if((f|0)>=0){d=(f>>>0)/3|0;m=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(f-J(d,3)<<2)>>2]}j:{if((c|0)==-1){k=1;break j}k=0;f=((c>>>0)%3|0?-1:2)+c|0;if((f|0)<0){break j}d=(f>>>0)/3|0;g=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(f-J(d,3)<<2)>>2]}if((g|0)!=(m|0)){c=-1;break g}k:{l:{e=((e>>>0)%3|0?-1:2)+e|0;m:{n:{if((e|0)>=0){d=(e>>>0)/3|0;g=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(e-J(d,3)<<2)>>2];e=-1;if(!k){break n}break m}g=-1;if(k){break l}}d=c+1|0;e=(d>>>0)%3|0?d:c-2|0;if((e|0)<0){e=-1;break m}d=(e>>>0)/3|0;e=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(e-J(d,3)<<2)>>2]}if((e|0)!=(g|0)){c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}e=h;l=(c>>>0)/3|0;g=D[a+56>>2]+(l>>>3&268435452)|0;m=D[g>>2];k=1<>2]-4|0;h=D[f>>2];e=D[a+56>>2]+(h>>>3&536870908)|0;d=D[e>>2];p=e,q=di(h)&d,D[p>>2]=q;D[i+12>>2]=f}e=1;d=n;n=0;if(d){continue}break a}break}j=-1;Qc(a,-1);break a}qa();T()}ra(1326);T()}D[((b<<2)+a|0)+44>>2]=j;f=D[i+8>>2];b=D[i+12>>2]-f|0;o:{if(!b){break o}j=D[a+56>>2];b=b>>2;a=b>>>0>1?b:1;h=a&1;c=0;if(b>>>0>=2){n=a&-2;l=0;while(1){e=c<<2;d=D[e+f>>2];b=j+(d>>>3&536870908)|0;a=D[b>>2];p=b,q=di(d)&a,D[p>>2]=q;d=D[f+(e|4)>>2];b=j+(d>>>3&536870908)|0;a=D[b>>2];p=b,q=di(d)&a,D[p>>2]=q;c=c+2|0;l=l+2|0;if((n|0)!=(l|0)){continue}break}}if(!h){break o}c=D[f+(c<<2)>>2];b=j+(c>>>3&536870908)|0;a=D[b>>2];p=b,q=di(c)&a,D[p>>2]=q}}function kd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(D[D[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=D[a+48>>2];D[a+52>>2]=c;a:{if((c|0)!=D[a+56>>2]){D[c>>2]=b;D[a+52>>2]=c+4;break a}e=na(4);D[e>>2]=b;f=e+4|0;D[a+56>>2]=f;D[a+52>>2]=f;D[a+48>>2]=e;if(!c){break a}ma(c)}e=-1;f=D[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=D[D[f>>2]+(g<<2)>>2]}b:{h=b-J(d,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}d=D[D[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=D[a+36>>2];f=c+(e>>>3&536870908)|0;i=D[f>>2];j=1<>2]=i|j;Ia(a+8|0,e,g);c=D[a+36>>2]}c=(d>>>3&536870908)+c|0;e=D[c>>2];f=1<>2]=e|f;Ia(a+8|0,d,(h?-1:2)+b|0)}c=D[a+52>>2];if((c|0)==D[a+48>>2]){return 1}j=a+8|0;while(1){c=c-4|0;b=D[c>>2];d=(b>>>0)/3|0;c:{d:{if((b|0)==-1){break d}e=D[a+24>>2]+(d>>>3&268435452)|0;f=D[e>>2];d=1<>2]=d|f;while(1){d=D[a+4>>2];c=D[D[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=D[a+36>>2]+(c>>>3&536870908)|0;f=D[e>>2];g=1<>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=D[D[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}D[e>>2]=f|g;Ia(j,c,b);break f}D[e>>2]=f|g;Ia(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=D[D[D[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];h=c>>>5|0;d=D[e+(h<<2)>>2];break e}c=-1;f=D[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=D[D[f+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=D[D[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;d=(c>>>0)/3|0;k:{g=(c|0)==-1;if(!g){e=D[a+24>>2];g=g?-1:d;h=g>>>5|0;d=D[e+(h<<2)>>2];g=1<>2];h=f>>>5|0;d=D[e+(h<<2)>>2];if(!(g&d)){break e}}c=D[a+52>>2]-4|0;D[a+52>>2]=c;break c}if(i){b=c;break e}if(D[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=D[a+52>>2];D[d-4>>2]=b;if((d|0)!=D[a+56>>2]){D[d>>2]=c;c=d+4|0;break d}l:{b=d;d=D[a+48>>2];e=b-d|0;g=e>>2;b=g+1|0;if(b>>>0<1073741824){f=e>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break l}b=na(f<<2)}else{b=0}g=b+(g<<2)|0;D[g>>2]=c;c=g+4|0;if((e|0)>0){oa(b,d,e)}D[a+56>>2]=b+(f<<2);D[a+52>>2]=c;D[a+48>>2]=b;if(!d){break c}ma(d);c=D[a+52>>2];break c}qa();T()}ra(1326);T()}D[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}D[a+52>>2]=c}if(D[a+48>>2]!=(c|0)){continue}break}}return 1}function vc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{n=ba[D[D[a>>2]+44>>2]](a)|0;if((n|0)<=0){break a}e=D[b+4>>2]-D[b>>2]>>2;g=$+-64|0;$=g;d=lb(g);f=J(D[2549],n);$b(d,D[D[a+8>>2]+56>>2],n<<24>>24,5,0,f,f>>31);f=na(96);d=Zb(f,d);B[d+84|0]=1;D[d+72>>2]=D[d+68>>2];Yb(d,e);D[d+60>>2]=D[D[a+8>>2]+60>>2];d=D[a+16>>2];D[a+16>>2]=f;if(d){ya(d)}$=g- -64|0;g=D[a+16>>2];if(!D[g+80>>2]){break a}i=D[D[g>>2]>>2];if(!i){break a}h=D[c+12>>2];d=D[c+20>>2];j=D[c+8>>2];f=D[c+16>>2];if((h|0)<=(d|0)&j>>>0<=f>>>0|(d|0)>(h|0)){break a}k=J(e,n);i=i+D[g+48>>2]|0;l=D[c>>2];m=E[l+f|0];g=f+1|0;e=g?d:d+1|0;D[c+16>>2]=g;D[c+20>>2]=e;b:{c:{d:{if(m){if(jc(k,n,c,i)){break d}break a}if((e|0)>=(h|0)&g>>>0>=j>>>0|(e|0)>(h|0)){break a}g=E[g+l|0];e=f+2|0;d=e>>>0<2?d+1|0:d;D[c+16>>2]=e;D[c+20>>2]=d;d=D[D[a+16>>2]+64>>2];d=D[d+4>>2]-D[d>>2]|0;e:{if((g|0)==D[2549]){e=d;d=k<<2;if(e>>>0>>0){break a}h=D[c+8>>2];g=D[c+12>>2];e=D[c+20>>2];j=D[c+16>>2];f=d+j|0;e=f>>>0>>0?e+1|0:e;if((e|0)<=(g|0)&f>>>0<=h>>>0|(e|0)<(g|0)){break e}break a}if(d>>>0>>0){break a}h=D[c+12>>2];e=D[c+20>>2];l=D[c+8>>2];f=l;j=D[c+16>>2];d=g;p=f-j>>>0<$h(d,0,k,0)>>>0;f=h-(e+(f>>>0>>0)|0)|0;m=aa;if(p&(f|0)<=(m|0)|(f|0)<(m|0)){break a}f=1;if(!k){break c}f=0;m=l;l=d+j|0;e=l>>>0>>0?e+1|0:e;if(m>>>0>>0&(e|0)>=(h|0)|(e|0)>(h|0)){break b}while(1){oa(i+(o<<2)|0,j+D[c>>2]|0,g);e=D[c+20>>2];h=d+D[c+16>>2]|0;e=h>>>0>>0?e+1|0:e;j=h;D[c+16>>2]=h;D[c+20>>2]=e;o=o+1|0;if((k|0)==(o|0)){break d}m=D[c+8>>2];h=D[c+12>>2];l=d+j|0;e=l>>>0>>0?e+1|0:e;if((e|0)<=(h|0)&l>>>0<=m>>>0|(e|0)<(h|0)){continue}break}break b}oa(i,j+D[c>>2]|0,d);e=d;g=d+D[c+16>>2]|0;d=D[c+20>>2];D[c+16>>2]=g;D[c+20>>2]=e>>>0>g>>>0?d+1|0:d}f=1;if(!k){break c}d=D[a+20>>2];if(d){f=0;if(ba[D[D[d>>2]+32>>2]](d)|0){break c}}d=0;f=0;f:{if((k|0)<=0){break f}if((k|0)!=1){h=k&-2;while(1){e=d<<2;g=D[e+i>>2];D[e+i>>2]=0-(g&1)^g>>>1;g=e|4;e=D[g+i>>2];D[g+i>>2]=0-(e&1)^e>>>1;d=d+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(!(k&1)){break f}e=d<<2;d=D[e+i>>2];D[e+i>>2]=0-(d&1)^d>>>1}f=0}d=D[a+20>>2];g:{if(!d){break g}if(!(ba[D[D[d>>2]+40>>2]](d,c)|0)){break a}if(f){break g}f=0;a=D[a+20>>2];if(!(ba[D[D[a>>2]+44>>2]](a,i,i,k,n,D[b>>2])|0)){break b}}f=1}return f|0}return 0}function pc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=$-32|0;$=h;a:{b:{if(!jb(1,h+28|0,b)){break b}c:{d=D[h+28>>2];if(d){ib(a+60|0,d);c=h+8|0;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;if(!Ka(c,b)){break c}while(1){f=1<>2]+(e>>>3&536870908)|0;if(i){f=f|D[g>>2]}else{f=D[g>>2]&(f^-1)}D[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!jb(1,h+28|0,b)){break b}d=D[h+28>>2];if(d){e=0;ib(a+72|0,d);c=h+8|0;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;if(!Ka(c,b)){break c}while(1){f=1<>2]+(e>>>3&536870908)|0;if(i){f=f|D[g>>2]}else{f=D[g>>2]&(f^-1)}D[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!jb(1,h+28|0,b)){break b}d=D[h+28>>2];if(d){e=0;ib(a+84|0,d);c=h+8|0;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;if(!Ka(c,b)){break c}while(1){f=1<>2]+(e>>>3&536870908)|0;if(i){f=f|D[g>>2]}else{f=D[g>>2]&(f^-1)}D[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!jb(1,h+28|0,b)){break b}d=D[h+28>>2];if(d){e=0;ib(a+96|0,d);c=h+8|0;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;if(!Ka(c,b)){break c}while(1){f=1<>2]+(e>>>3&536870908)|0;if(i){f=f|D[g>>2]}else{f=D[g>>2]&(f^-1)}D[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;d=D[b+12>>2];f=d;c=D[b+20>>2];g=c;i=D[b+16>>2];j=i+4|0;c=j>>>0<4?c+1|0:c;k=D[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}l=D[b>>2];d=l+i|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=j;D[b+20>>2]=c;c=g;g=i+8|0;c=g>>>0<8?c+1|0:c;i=g;g=c;if(i>>>0>k>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}c=j+l|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[b+16>>2]=i;D[b+20>>2]=g;if((c|0)<(d|0)){break a}D[a+16>>2]=c;D[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}e=1;b=c+1|0;D[a+20>>2]=b;c=b>>>1|0;D[a+24>>2]=c;D[a+28>>2]=0-c;if(b&1){break a}D[a+24>>2]=c-1;break a}}e=0}$=h+32|0;return e|0}function Zh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=$-32|0;$=g;D[a+68>>2]=f;e=D[a+56>>2];d=D[e>>2];f=D[e+4>>2];D[g+24>>2]=0;D[g+16>>2]=0;D[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=D[e>>2];if((d|0)!=D[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){Lb(n,D[(k<<2)+d>>2],g+16|0);e=D[g+20>>2];d=e>>31;f=D[g+16>>2];h=f>>31;j=D[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){D[g+16>>2]=D[a+108>>2];break b}i=D[a+108>>2];l=i>>31;f=ai($h(i,l,f,f>>31),aa,h,d);D[g+16>>2]=f;d=ai($h(i,l,e,e>>31),aa,h,d);D[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){D[g+24>>2]=i-d;break b}D[g+24>>2]=d-i}d=Ga(m);f=D[g+16>>2];c:{if(d){D[g+24>>2]=0-D[g+24>>2];e=0-D[g+20>>2]|0;D[g+20>>2]=e;f=0-f|0;D[g+16>>2]=f;break c}e=D[g+20>>2]}d:{if((f|0)>=0){d=D[a+108>>2];f=d+D[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=D[g+24>>2];d=f>>31;d=d^d+f;break e}f=D[g+24>>2];d=f>>31;d=D[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=D[a+100>>2]-(f+e^e)|0}e=D[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}h=(d|0)!=(e|0);if(!(f|h)){f=d;break f}g:{if(d){break g}j=D[a+108>>2];if((j|0)>=(f|0)){break g}f=(j<<1)-f|0;d=0;break f}h:{if(h){break h}h=D[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=D[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=D[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}D[g+12>>2]=f;D[g+8>>2]=d;j:{if(D[a+8>>2]<=0){break j}h=D[a+32>>2];f=0;while(1){e=D[a+16>>2];k:{if((e|0)<(d|0)){D[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=D[a+12>>2];if((j|0)>(d|0)){D[e>>2]=j;break k}D[e>>2]=d}f=f+1|0;e=D[a+8>>2];if((f|0)<(e|0)){d=D[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=D[f+i>>2]+D[f+h>>2]|0;D[e>>2]=f;l:{if((f|0)>D[a+16>>2]){f=f-D[a+20>>2]|0}else{if((f|0)>=D[a+12>>2]){break l}f=f+D[a+20>>2]|0}D[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=D[a+56>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}ua();T()}$=g+32|0;return 1}function Ph(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=$-32|0;$=g;D[a+68>>2]=f;e=D[a+56>>2];d=D[e>>2];f=D[e+4>>2];D[g+24>>2]=0;D[g+16>>2]=0;D[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=D[e>>2];if((d|0)!=D[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){Jb(n,D[(k<<2)+d>>2],g+16|0);e=D[g+20>>2];d=e>>31;f=D[g+16>>2];h=f>>31;j=D[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){D[g+16>>2]=D[a+108>>2];break b}i=D[a+108>>2];l=i>>31;f=ai($h(i,l,f,f>>31),aa,h,d);D[g+16>>2]=f;d=ai($h(i,l,e,e>>31),aa,h,d);D[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){D[g+24>>2]=i-d;break b}D[g+24>>2]=d-i}d=Ga(m);f=D[g+16>>2];c:{if(d){D[g+24>>2]=0-D[g+24>>2];e=0-D[g+20>>2]|0;D[g+20>>2]=e;f=0-f|0;D[g+16>>2]=f;break c}e=D[g+20>>2]}d:{if((f|0)>=0){d=D[a+108>>2];f=d+D[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=D[g+24>>2];d=f>>31;d=d^d+f;break e}f=D[g+24>>2];d=f>>31;d=D[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=D[a+100>>2]-(f+e^e)|0}e=D[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}h=(d|0)!=(e|0);if(!(f|h)){f=d;break f}g:{if(d){break g}j=D[a+108>>2];if((j|0)>=(f|0)){break g}f=(j<<1)-f|0;d=0;break f}h:{if(h){break h}h=D[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=D[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=D[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}D[g+12>>2]=f;D[g+8>>2]=d;j:{if(D[a+8>>2]<=0){break j}h=D[a+32>>2];f=0;while(1){e=D[a+16>>2];k:{if((e|0)<(d|0)){D[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=D[a+12>>2];if((j|0)>(d|0)){D[e>>2]=j;break k}D[e>>2]=d}f=f+1|0;e=D[a+8>>2];if((f|0)<(e|0)){d=D[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=D[f+i>>2]+D[f+h>>2]|0;D[e>>2]=f;l:{if((f|0)>D[a+16>>2]){f=f-D[a+20>>2]|0}else{if((f|0)>=D[a+12>>2]){break l}f=f+D[a+20>>2]|0}D[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=D[a+56>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}ua();T()}$=g+32|0;return 1}function Fh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=$-48|0;$=h;d=D[a+8>>2];if(d-31>>>0>=4294967267){D[a+76>>2]=d;e=-1<>2]=d;D[a+80>>2]=e^-1;D[a+92>>2]=(d|0)/2;H[a+88>>2]=K(2)/K(d|0)}D[a+52>>2]=f;e=D[a+40>>2];d=D[e>>2];g=D[e+4>>2];f=0;D[h+16>>2]=0;D[h+8>>2]=0;D[h+12>>2]=0;a:{g=g-d|0;if((g|0)<=0){break a}d=D[e>>2];if((d|0)!=D[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=g>>>2|0;p=e>>>0>1?e:1;while(1){Lb(o,D[(f<<2)+d>>2],h+8|0);e=D[h+12>>2];d=e>>31;g=D[h+8>>2];i=g>>31;k=D[h+16>>2];j=k>>31;j=j^j+k;i=j+((d^d+e)+(i^g+i)|0)|0;d=0;d=i>>>0>>0?1:d;b:{if(!(d|i)){D[h+8>>2]=D[a+92>>2];break b}j=D[a+92>>2];l=j>>31;g=ai($h(j,l,g,g>>31),aa,i,d);D[h+8>>2]=g;d=ai($h(j,l,e,e>>31),aa,i,d);D[h+12>>2]=d;e=d;d=d>>31;e=e+d^d;d=g>>31;d=e+(d+g^d)|0;if((k|0)>=0){D[h+16>>2]=j-d;break b}D[h+16>>2]=d-j}d=Ga(n);e=D[h+8>>2];c:{if(d){D[h+16>>2]=0-D[h+16>>2];g=0-D[h+12>>2]|0;D[h+12>>2]=g;e=0-e|0;D[h+8>>2]=e;break c}g=D[h+12>>2]}d:{if((e|0)>=0){e=D[a+92>>2];d=e+D[h+16>>2]|0;e=e+g|0;break d}e:{if((g|0)<0){d=D[h+16>>2];e=d>>31;e=e^d+e;break e}d=D[h+16>>2];e=d>>31;e=D[a+84>>2]-(e^d+e)|0}if((d|0)<0){d=g>>31;d=d+g^d;break d}d=g>>31;d=D[a+84>>2]-(d+g^d)|0}g=D[a+84>>2];f:{if(!(d|e)){d=g;e=d;break f}if(!((d|0)!=(g|0)|e)){e=d;break f}i=(e|0)!=(g|0);if(!(d|i)){d=e;break f}g:{if(e){break g}k=D[a+92>>2];if((k|0)>=(d|0)){break g}d=(k<<1)-d|0;e=0;break f}h:{if(i){break h}i=D[a+92>>2];if((i|0)<=(d|0)){break h}d=(i<<1)-d|0;break f}i:{if((d|0)!=(g|0)){break i}g=D[a+92>>2];if((g|0)<=(e|0)){break i}e=(g<<1)-e|0;break f}if(d){break f}d=0;g=D[a+92>>2];if((g|0)>=(e|0)){break f}e=(g<<1)-e|0}g=f<<3;i=g+b|0;k=D[i+4>>2];i=D[i>>2];D[h+36>>2]=d;D[h+32>>2]=e;D[h+24>>2]=i;D[h+28>>2]=k;Ib(h+40|0,m,h+32|0,h+24|0);d=c+g|0;D[d>>2]=D[h+40>>2];D[d+4>>2]=D[h+44>>2];f=f+1|0;if((p|0)==(f|0)){break a}e=D[a+40>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>f>>>0){continue}break}}ua();T()}$=h+48|0;return 1}function Bh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=$-48|0;$=h;d=D[a+8>>2];if(d-31>>>0>=4294967267){D[a+76>>2]=d;e=-1<>2]=d;D[a+80>>2]=e^-1;D[a+92>>2]=(d|0)/2;H[a+88>>2]=K(2)/K(d|0)}D[a+52>>2]=f;e=D[a+40>>2];d=D[e>>2];g=D[e+4>>2];f=0;D[h+16>>2]=0;D[h+8>>2]=0;D[h+12>>2]=0;a:{g=g-d|0;if((g|0)<=0){break a}d=D[e>>2];if((d|0)!=D[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=g>>>2|0;p=e>>>0>1?e:1;while(1){Jb(o,D[(f<<2)+d>>2],h+8|0);e=D[h+12>>2];d=e>>31;g=D[h+8>>2];i=g>>31;k=D[h+16>>2];j=k>>31;j=j^j+k;i=j+((d^d+e)+(i^g+i)|0)|0;d=0;d=i>>>0>>0?1:d;b:{if(!(d|i)){D[h+8>>2]=D[a+92>>2];break b}j=D[a+92>>2];l=j>>31;g=ai($h(j,l,g,g>>31),aa,i,d);D[h+8>>2]=g;d=ai($h(j,l,e,e>>31),aa,i,d);D[h+12>>2]=d;e=d;d=d>>31;e=e+d^d;d=g>>31;d=e+(d+g^d)|0;if((k|0)>=0){D[h+16>>2]=j-d;break b}D[h+16>>2]=d-j}d=Ga(n);e=D[h+8>>2];c:{if(d){D[h+16>>2]=0-D[h+16>>2];g=0-D[h+12>>2]|0;D[h+12>>2]=g;e=0-e|0;D[h+8>>2]=e;break c}g=D[h+12>>2]}d:{if((e|0)>=0){e=D[a+92>>2];d=e+D[h+16>>2]|0;e=e+g|0;break d}e:{if((g|0)<0){d=D[h+16>>2];e=d>>31;e=e^d+e;break e}d=D[h+16>>2];e=d>>31;e=D[a+84>>2]-(e^d+e)|0}if((d|0)<0){d=g>>31;d=d+g^d;break d}d=g>>31;d=D[a+84>>2]-(d+g^d)|0}g=D[a+84>>2];f:{if(!(d|e)){d=g;e=d;break f}if(!((d|0)!=(g|0)|e)){e=d;break f}i=(e|0)!=(g|0);if(!(d|i)){d=e;break f}g:{if(e){break g}k=D[a+92>>2];if((k|0)>=(d|0)){break g}d=(k<<1)-d|0;e=0;break f}h:{if(i){break h}i=D[a+92>>2];if((i|0)<=(d|0)){break h}d=(i<<1)-d|0;break f}i:{if((d|0)!=(g|0)){break i}g=D[a+92>>2];if((g|0)<=(e|0)){break i}e=(g<<1)-e|0;break f}if(d){break f}d=0;g=D[a+92>>2];if((g|0)>=(e|0)){break f}e=(g<<1)-e|0}g=f<<3;i=g+b|0;k=D[i+4>>2];i=D[i>>2];D[h+36>>2]=d;D[h+32>>2]=e;D[h+24>>2]=i;D[h+28>>2]=k;Ib(h+40|0,m,h+32|0,h+24|0);d=c+g|0;D[d>>2]=D[h+40>>2];D[d+4>>2]=D[h+44>>2];f=f+1|0;if((p|0)==(f|0)){break a}e=D[a+40>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>f>>>0){continue}break}}ua();T()}$=h+48|0;return 1}function Kh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=$-32|0;$=e;a:{if((c|0)!=3){break a}c=D[a+4>>2];a=D[a+12>>2];D[e+24>>2]=-1;D[e+16>>2]=-1;D[e+20>>2]=1065353216;D[e+8>>2]=-1;D[e+12>>2]=-1;if((b|0)==-2){break a}k=D[D[D[c+4>>2]+8>>2]+(a<<2)>>2];if((ba[D[D[c>>2]+8>>2]](c)|0)==1){j=D[D[D[c+4>>2]+8>>2]+(a<<2)>>2];b:{c:{if((ba[D[D[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break c}h=ba[D[D[c>>2]+36>>2]](c)|0;f=ba[D[D[c>>2]+44>>2]](c,a)|0;if(!h|!f){break c}g=f+12|0;i=ba[D[D[c>>2]+40>>2]](c,a)|0;c=D[c+44>>2];if(i){if((b|0)!=6){break c}a=na(112);D[a+4>>2]=j;b=D[e+12>>2];D[a+8>>2]=D[e+8>>2];D[a+12>>2]=b;b=D[e+20>>2];D[a+16>>2]=D[e+16>>2];D[a+20>>2]=b;D[a+24>>2]=D[e+24>>2];D[a+40>>2]=f;D[a+36>>2]=g;D[a+32>>2]=i;D[a+28>>2]=c;D[a+68>>2]=f;D[a- -64>>2]=g;D[a+60>>2]=i;D[a+56>>2]=c;D[a+48>>2]=0;D[a+52>>2]=0;D[a>>2]=5956;D[a+88>>2]=1065353216;D[a+92>>2]=-1;D[a+80>>2]=-1;D[a+84>>2]=-1;D[a+72>>2]=1;D[a+76>>2]=-1;D[a+44>>2]=6520;b=a+96|0;D[b>>2]=0;D[b+4>>2]=0;B[b+5|0]=0;B[b+6|0]=0;B[b+7|0]=0;B[b+8|0]=0;B[b+9|0]=0;B[b+10|0]=0;B[b+11|0]=0;B[b+12|0]=0;break b}if((b|0)!=6){break c}d=na(112);D[d+4>>2]=j;a=D[e+12>>2];D[d+8>>2]=D[e+8>>2];D[d+12>>2]=a;a=D[e+20>>2];D[d+16>>2]=D[e+16>>2];D[d+20>>2]=a;D[d+24>>2]=D[e+24>>2];D[d+40>>2]=f;D[d+36>>2]=g;D[d+32>>2]=h;D[d+28>>2]=c;D[d+68>>2]=f;D[d- -64>>2]=g;D[d+60>>2]=h;D[d+56>>2]=c;D[d+48>>2]=0;D[d+52>>2]=0;D[d>>2]=6960;D[d+88>>2]=1065353216;D[d+92>>2]=-1;D[d+80>>2]=-1;D[d+84>>2]=-1;D[d+72>>2]=1;D[d+76>>2]=-1;D[d+44>>2]=7380;a=d+96|0;D[a>>2]=0;D[a+4>>2]=0;B[a+5|0]=0;B[a+6|0]=0;B[a+7|0]=0;B[a+8|0]=0;B[a+9|0]=0;B[a+10|0]=0;B[a+11|0]=0;B[a+12|0]=0}a=d}d=a;if(a){break a}}d=na(28);D[d+4>>2]=k;a=D[e+12>>2];D[d+8>>2]=D[e+8>>2];D[d+12>>2]=a;a=D[e+20>>2];D[d+16>>2]=D[e+16>>2];D[d+20>>2]=a;D[d+24>>2]=D[e+24>>2];D[d>>2]=7792}$=e+32|0;return d|0}function jf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=$-32|0;$=f;e=f+8|0;c=$-80|0;$=c;a=D[b+36>>2];D[c+72>>2]=D[b+32>>2];D[c+76>>2]=a;d=D[b+28>>2];a=c- -64|0;D[a>>2]=D[b+24>>2];D[a+4>>2]=d;a=D[b+20>>2];D[c+56>>2]=D[b+16>>2];D[c+60>>2]=a;a=D[b+12>>2];D[c+48>>2]=D[b+8>>2];D[c+52>>2]=a;a=D[b+4>>2];D[c+40>>2]=D[b>>2];D[c+44>>2]=a;ec(c+8|0,c+40|0,c+24|0);a=D[c+8>>2];a:{if(a){D[e>>2]=a;a=e+4|0;if(B[c+23|0]>=0){b=c+8|4;e=D[b+4>>2];D[a>>2]=D[b>>2];D[a+4>>2]=e;D[a+8>>2]=D[b+8>>2];break a}ta(a,D[c+12>>2],D[c+16>>2]);if(B[c+23|0]>=0){break a}ma(D[c+12>>2]);break a}if(B[c+23|0]<0){ma(D[c+12>>2])}a=E[c+31|0];if(a>>>0>=2){a=na(32);b=E[1619]|E[1620]<<8;B[a+24|0]=b;B[a+25|0]=b>>>8;b=E[1615]|E[1616]<<8|(E[1617]<<16|E[1618]<<24);d=E[1611]|E[1612]<<8|(E[1613]<<16|E[1614]<<24);B[a+16|0]=d;B[a+17|0]=d>>>8;B[a+18|0]=d>>>16;B[a+19|0]=d>>>24;B[a+20|0]=b;B[a+21|0]=b>>>8;B[a+22|0]=b>>>16;B[a+23|0]=b>>>24;b=E[1607]|E[1608]<<8|(E[1609]<<16|E[1610]<<24);d=E[1603]|E[1604]<<8|(E[1605]<<16|E[1606]<<24);B[a+8|0]=d;B[a+9|0]=d>>>8;B[a+10|0]=d>>>16;B[a+11|0]=d>>>24;B[a+12|0]=b;B[a+13|0]=b>>>8;B[a+14|0]=b>>>16;B[a+15|0]=b>>>24;b=E[1599]|E[1600]<<8|(E[1601]<<16|E[1602]<<24);d=E[1595]|E[1596]<<8|(E[1597]<<16|E[1598]<<24);B[a|0]=d;B[a+1|0]=d>>>8;B[a+2|0]=d>>>16;B[a+3|0]=d>>>24;B[a+4|0]=b;B[a+5|0]=b>>>8;B[a+6|0]=b>>>16;B[a+7|0]=b>>>24;B[a+26|0]=0;D[c+8>>2]=-1;b=c+8|4;ta(b,a,26);d=B[c+23|0];D[e>>2]=D[c+8>>2];e=e+4|0;b:{if((d|0)>=0){d=D[b+4>>2];D[e>>2]=D[b>>2];D[e+4>>2]=d;D[e+8>>2]=D[b+8>>2];break b}ta(e,D[c+12>>2],D[c+16>>2])}if(B[c+23|0]<0){ma(D[c+12>>2])}ma(a);break a}D[e>>2]=0;D[e+4>>2]=0;D[e+16>>2]=a;D[e+8>>2]=0;D[e+12>>2]=0}$=c+80|0;a=D[f+24>>2];if(B[f+23|0]<0){ma(D[f+12>>2])}$=f+32|0;return a|0}function Jf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c;a:{d=a;if(D[d+12>>2]==(b|0)){break a}a=b;b=D[d+4>>2];c=D[d>>2];if((b|0)!=(c|0)){while(1){e=b-12|0;if(B[b-1|0]<0){ma(D[e>>2])}b=e;if((c|0)!=(b|0)){continue}break}}D[d+12>>2]=a;D[d+4>>2]=c;b=D[a>>2];j=a+4|0;if((b|0)==(j|0)){break a}while(1){b:{if(D[d+8>>2]!=(c|0)){c:{if(B[b+27|0]>=0){a=D[b+20>>2];D[c>>2]=D[b+16>>2];D[c+4>>2]=a;D[c+8>>2]=D[b+24>>2];break c}ta(c,D[b+16>>2],D[b+20>>2])}D[d+4>>2]=c+12;break b}g=0;d:{e:{f:{e=D[d+4>>2];a=D[d>>2];f=(e-a|0)/12|0;c=f+1|0;if(c>>>0<357913942){h=(D[d+8>>2]-a|0)/12|0;k=h<<1;c=h>>>0<178956970?c>>>0>k>>>0?c:k:357913941;if(c){if(c>>>0>=357913942){break f}g=na(J(c,12))}h=J(c,12);c=J(f,12)+g|0;g:{if(B[b+27|0]>=0){f=D[b+20>>2];D[c>>2]=D[b+16>>2];D[c+4>>2]=f;D[c+8>>2]=D[b+24>>2];break g}ta(c,D[b+16>>2],D[b+20>>2]);e=D[d+4>>2];a=D[d>>2]}g=g+h|0;f=c+12|0;if((a|0)==(e|0)){break e}while(1){e=e-12|0;h=D[e+4>>2];c=c-12|0;D[c>>2]=D[e>>2];D[c+4>>2]=h;D[c+8>>2]=D[e+8>>2];D[e>>2]=0;D[e+4>>2]=0;D[e+8>>2]=0;if((a|0)!=(e|0)){continue}break}D[d+8>>2]=g;a=D[d+4>>2];D[d+4>>2]=f;e=D[d>>2];D[d>>2]=c;if((a|0)==(e|0)){break d}while(1){c=a-12|0;if(B[a-1|0]<0){ma(D[c>>2])}a=c;if((c|0)!=(e|0)){continue}break}break d}qa();T()}ra(1326);T()}D[d+8>>2]=g;D[d+4>>2]=f;D[d>>2]=c}if(e){ma(e)}}c=D[b+4>>2];h:{if(!c){a=D[b+8>>2];if(D[a>>2]==(b|0)){break h}b=b+8|0;while(1){c=D[b>>2];b=c+8|0;a=D[c+8>>2];if((c|0)!=D[a>>2]){continue}break}break h}while(1){a=c;c=D[c>>2];if(c){continue}break}}if((a|0)==(j|0)){break a}c=D[d+4>>2];b=a;continue}}c=0;i:{if((i|0)<0){break i}a=D[d>>2];if((D[d+4>>2]-a|0)/12>>>0<=i>>>0){break i}a=a+J(i,12)|0;c=B[a+11|0]<0?D[a>>2]:a}return c|0}function ic(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a:{if(!F[b+38>>1]){break a}if(!Sa(1,a+12|0,b)){break a}f=D[a+12>>2];c=D[a>>2];d=D[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){sa(a,f-d|0);f=D[a+12>>2];break b}if(d>>>0<=f>>>0){break b}D[a+4>>2]=c+(f<<2)}if(!f){return 1}j=D[b+8>>2];i=D[b+12>>2];l=D[a>>2];while(1){d=D[b+20>>2];c=D[b+16>>2];if((i|0)<=(d|0)&j>>>0<=c>>>0|(d|0)>(i|0)){return 0}m=D[b>>2];k=E[m+c|0];c=c+1|0;d=c?d:d+1|0;h=c;D[b+16>>2]=c;D[b+20>>2]=d;c=k>>>2|0;e=0;c:{d:{e:{f:{n=k&3;switch(n|0){case 3:break f;case 0:break d;default:break e}}d=c+g|0;if(d>>>0>=f>>>0){return 0}pa(l+(g<<2)|0,0,(k&252)+4|0);g=d;break c}while(1){if((d|0)>=(i|0)&h>>>0>=j>>>0|(d|0)>(i|0)){break a}f=E[h+m|0];h=h+1|0;d=h?d:d+1|0;D[b+16>>2]=h;D[b+20>>2]=d;c=f<<(e<<3|6)|c;e=e+1|0;if((n|0)!=(e|0)){continue}break}}D[l+(g<<2)>>2]=c}f=D[a+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}d=a+16|0;k=D[a>>2];b=D[a+16>>2];c=D[a+20>>2]-b|0;g=c>>2;g:{if(g>>>0<=4095){sa(d,4096-g|0);break g}if((c|0)==16384){break g}D[a+20>>2]=b+16384}b=a+28|0;g=D[b>>2];c=D[a+32>>2]-g>>3;h:{if(c>>>0>>0){bb(b,f-c|0);g=D[b>>2];break h}if(c>>>0>f>>>0){D[a+32>>2]=(f<<3)+g}if(!f){break a}}e=0;a=0;while(1){b=k+(e<<2)|0;i=D[b>>2];c=a;h=(e<<3)+g|0;D[h+4>>2]=a;D[h>>2]=i;i=D[b>>2];a=i+a|0;if(a>>>0>4096){break a}i:{if(a>>>0<=c>>>0){break i}h=D[d>>2];b=0;j=i&7;if(j){while(1){D[h+(c<<2)>>2]=e;c=c+1|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}if(i-1>>>0<=6){break i}while(1){b=h+(c<<2)|0;D[b>>2]=e;D[b+28>>2]=e;D[b+24>>2]=e;D[b+20>>2]=e;D[b+16>>2]=e;D[b+12>>2]=e;D[b+8>>2]=e;D[b+4>>2]=e;c=c+8|0;if((c|0)!=(a|0)){continue}break}}e=e+1|0;if((f|0)!=(e|0)){continue}break}o=(a|0)==4096}return o}function Jc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=$-16|0;$=k;D[k+8>>2]=c;e=D[a+12>>2];d=D[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=D[a+16>>2];d=D[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=pa(e,0,d)+d|0}D[a+12>>2]=d;break a}b:{c:{d:{h=D[a+8>>2];j=d-h>>2;e=j+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>2>>>0<536870911?e>>>0>l>>>0?e:l:1073741823;if(g){if(g>>>0>=1073741824){break d}i=na(g<<2)}e=(j<<2)+i|0;j=f<<2;f=pa(e,0,j);j=f+j|0;g=(g<<2)+i|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=D[d>>2];D[d>>2]=0;e=e-4|0;D[e>>2]=f;if((d|0)!=(h|0)){continue}break}D[a+16>>2]=g;f=D[a+12>>2];D[a+12>>2]=j;d=D[a+8>>2];D[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=D[f>>2];D[f>>2]=0;if(e){ya(e)}if((d|0)!=(f|0)){continue}break}break b}qa();T()}ra(1326);T()}D[a+16>>2]=g;D[a+12>>2]=j;D[a+8>>2]=f}if(d){ma(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=D[e>>2];D[e>>2]=0;if(c){ya(c)}if((d|0)!=(e|0)){continue}break}c=D[k+8>>2]}D[a+12>>2]=d}e:{f:{d=D[c+56>>2];g:{if((d|0)>4){break g}e=J(d,12)+a|0;d=D[e+24>>2];if((d|0)!=D[e+28>>2]){D[d>>2]=b;D[e+24>>2]=d+4;break g}f=D[e+20>>2];h=d-f|0;i=h>>2;d=i+1|0;if(d>>>0>=1073741824){break f}g=h>>1;g=i>>>0<536870911?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break e}d=na(g<<2)}else{d=0}i=d+(i<<2)|0;D[i>>2]=b;if((h|0)>0){oa(d,f,h)}D[e+20>>2]=d;D[e+24>>2]=i+4;D[e+28>>2]=d+(g<<2);if(!f){break g}ma(f)}D[c+60>>2]=b;a=D[a+8>>2];D[k+8>>2]=0;b=a+(b<<2)|0;a=D[b>>2];D[b>>2]=c;if(a){ya(a)}a=D[k+8>>2];D[k+8>>2]=0;if(a){ya(a)}$=k+16|0;return}qa();T()}ra(1326);T()}function rf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=$-16|0;$=e;k=D[b+80>>2];n=E[c+24|0];b=n<<24>>24;f=J(k,b);a:{b:{c:{a=D[c+28>>2];d:{if(!(!((a|0)==1|(a|0)==2)|!E[c+84|0])){a=D[c+48>>2];c=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(f){if((f|0)<0){break c}g=na(f);b=oa(g,a+c|0,f)+f|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=b;D[d>>2]=g;a=1;break d}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(b){if((b|0)<0){break c}g=na(b);D[e>>2]=g;a=b+g|0;D[e+8>>2]=a;pa(g,0,b);D[e+4>>2]=a}a=D[d+4>>2];i=D[d>>2];j=a-i|0;e:{if(j>>>0>>0){l=f-j|0;m=D[d+8>>2];if(l>>>0<=m-a>>>0){if(l){a=pa(a,0,l)+l|0}D[d+4>>2]=a;break e}if((f|0)<0){break b}a=m-i|0;m=a<<1;a=a>>>0<1073741823?f>>>0>m>>>0?f:m:2147483647;if(a){h=na(a)}pa(h+j|0,0,l);if((j|0)>0){oa(h,i,j)}D[d+8>>2]=a+h;D[d+4>>2]=f+h;D[d>>2]=h;if(!i){break e}ma(i);break e}if(f>>>0>=j>>>0){break e}D[d+4>>2]=f+i}f:{if(!k){b=0;break f}if(!b){a=0;b=1;while(1){if(!Db(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],g)){break f}a=a+1|0;b=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}break}break f}a=b-1|0;i=a&-2;j=a&1;a=0;b=1;h=0;while(1){f=D[e>>2];if(Db(c,E[c+84|0]?h:D[D[c+68>>2]+(h<<2)>>2],B[c+24|0],f)){B[D[d>>2]+a|0]=E[f|0];b=1;a=a+1|0;g=0;g:{h:{switch(n-1|0){default:while(1){B[D[d>>2]+a|0]=E[D[e>>2]+b|0];B[(D[d>>2]+a|0)+1|0]=E[(D[e>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;g=g+2|0;if((i|0)!=(g|0)){continue}break};break;case 0:break g;case 1:break h}}if(!j){break g}B[D[d>>2]+a|0]=E[D[e>>2]+b|0];a=a+1|0}h=h+1|0;b=k>>>0>h>>>0;if((h|0)!=(k|0)){continue}}break}g=D[e>>2]}if(g){ma(g)}a=!b}$=e+16|0;a=a&1;break a}qa();T()}qa();T()}return a|0}function qf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=$-16|0;$=e;k=D[b+80>>2];n=E[c+24|0];b=n<<24>>24;f=J(k,b);a:{b:{c:{a=D[c+28>>2];d:{if(!(!((a|0)==1|(a|0)==2)|!E[c+84|0])){a=D[c+48>>2];c=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(f){if((f|0)<0){break c}g=na(f);b=oa(g,a+c|0,f)+f|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=b;D[d>>2]=g;a=1;break d}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(b){if((b|0)<0){break c}g=na(b);D[e>>2]=g;a=b+g|0;D[e+8>>2]=a;pa(g,0,b);D[e+4>>2]=a}a=D[d+4>>2];i=D[d>>2];j=a-i|0;e:{if(j>>>0>>0){l=f-j|0;m=D[d+8>>2];if(l>>>0<=m-a>>>0){if(l){a=pa(a,0,l)+l|0}D[d+4>>2]=a;break e}if((f|0)<0){break b}a=m-i|0;m=a<<1;a=a>>>0<1073741823?f>>>0>m>>>0?f:m:2147483647;if(a){h=na(a)}pa(h+j|0,0,l);if((j|0)>0){oa(h,i,j)}D[d+8>>2]=a+h;D[d+4>>2]=f+h;D[d>>2]=h;if(!i){break e}ma(i);break e}if(f>>>0>=j>>>0){break e}D[d+4>>2]=f+i}f:{if(!k){b=0;break f}if(!b){a=0;b=1;while(1){if(!Cb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],g)){break f}a=a+1|0;b=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}break}break f}a=b-1|0;i=a&-2;j=a&1;a=0;b=1;h=0;while(1){f=D[e>>2];if(Cb(c,E[c+84|0]?h:D[D[c+68>>2]+(h<<2)>>2],B[c+24|0],f)){B[D[d>>2]+a|0]=E[f|0];b=1;a=a+1|0;g=0;g:{h:{switch(n-1|0){default:while(1){B[D[d>>2]+a|0]=E[D[e>>2]+b|0];B[(D[d>>2]+a|0)+1|0]=E[(D[e>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;g=g+2|0;if((i|0)!=(g|0)){continue}break};break;case 0:break g;case 1:break h}}if(!j){break g}B[D[d>>2]+a|0]=E[D[e>>2]+b|0];a=a+1|0}h=h+1|0;b=k>>>0>h>>>0;if((h|0)!=(k|0)){continue}}break}g=D[e>>2]}if(g){ma(g)}a=!b}$=e+16|0;a=a&1;break a}qa();T()}qa();T()}return a|0}function Zc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=$-80|0;$=g;a:{if(!Vb(1,g+76|0,b)){break a}h=D[g+76>>2];if(!h){break a}d=D[b+8>>2];c=D[b+16>>2];d=$h(d-c|0,D[b+12>>2]-(D[b+20>>2]+(c>>>0>d>>>0)|0)|0,5,0);c=aa;if(d>>>0>>0&(c|0)<=0|(c|0)<0){break a}c=D[a+4>>2];d=D[a+8>>2]-c>>2;b:{if(d>>>0>>0){sa(a+4|0,h-d|0);break b}if(d>>>0<=h>>>0){break b}D[a+8>>2]=c+(h<<2)}r=a+16|0;j=D[a+32>>2];k=1;while(1){c:{e=D[b+12>>2];c=e;d=D[b+20>>2];p=D[b+8>>2];m=D[b+16>>2];if((c|0)<=(d|0)&p>>>0<=m>>>0|(c|0)<(d|0)){break c}q=D[b>>2];o=E[q+m|0];c=d;f=m+1|0;c=f?c:c+1|0;D[b+16>>2]=f;D[b+20>>2]=c;if((c|0)>=(e|0)&f>>>0>=p>>>0|(c|0)>(e|0)){break c}f=E[f+q|0];c=d;i=m+2|0;c=i>>>0<2?c+1|0:c;D[b+16>>2]=i;D[b+20>>2]=c;if((c|0)>=(e|0)&i>>>0>=p>>>0|(c|0)>(e|0)){break c}i=E[i+q|0];c=d;n=m+3|0;c=n>>>0<3?c+1|0:c;D[b+16>>2]=n;D[b+20>>2]=c;if((c|0)>=(e|0)&n>>>0>=p>>>0|(c|0)>(e|0)){break c}e=E[n+q|0];c=d;d=m+4|0;c=d>>>0<4?c+1|0:c;D[b+16>>2]=d;D[b+20>>2]=c;if(!i|((f-12&255)>>>0<245|o>>>0>4)){break c}c=lb(g+8|0);n=i<<24>>24;e=(e|0)!=0;d=f-1|0;if(d>>>0<=10){d=D[(d<<2)+10180>>2]}else{d=-1}d=J(d,i);$b(c,o,n,f,e,d,d>>31);if(!Vb(1,g+4|0,b)){break c}f=D[g+4>>2];D[g+68>>2]=f;d=Zb(na(96),c);ba[D[D[j>>2]+8>>2]](j,D[j+12>>2]-D[j+8>>2]>>2,d);d=(D[j+12>>2]-D[j+8>>2]>>2)-1|0;o=d<<2;D[D[o+D[j+8>>2]>>2]+60>>2]=f;D[D[a+4>>2]+(l<<2)>>2]=d;k=D[a+16>>2];c=D[a+20>>2]-k>>2;d:{if((c|0)>(d|0)){break d}D[g>>2]=-1;d=d+1|0;if(d>>>0>c>>>0){xa(r,d-c|0,g);k=D[r>>2];break d}if(c>>>0<=d>>>0){break d}D[a+20>>2]=(d<<2)+k}D[k+o>>2]=l;l=l+1|0;k=l>>>0>>0;if((h|0)!=(l|0)){continue}}break}l=!k}$=g+80|0;return l&1}function td(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=$-16|0;$=i;D[i>>2]=b;g=-1;a:{if((b|0)==-1){D[i+4>>2]=-1;break a}c=b+1|0;D[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}D[i+8>>2]=g;m=(b|0)==-1?-1:(b>>>0)/3|0;b:{c:{d:{e:{while(1){f:{g:{if((b|0)!=-1){c=D[D[D[a+8>>2]+12>>2]+(b<<2)>>2];if((c|0)!=-1){break g}}g=0;c=D[a+216>>2];if((c|0)==D[a+220>>2]){break f}while(1){f=J(g,144)+c|0;c=D[f+136>>2];d=D[f+140>>2];h:{if(c>>>0>>0){D[c>>2]=b;D[f+136>>2]=c+4;break h}h=D[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break e}k=e<<2;d=d-h|0;e=d>>1;d=d>>2>>>0<536870911?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break d}c=na(d<<2)}else{c=0}e=k+c|0;D[e>>2]=b;if((j|0)>0){oa(c,h,j)}D[f+132>>2]=c;D[f+136>>2]=e+4;D[f+140>>2]=c+(d<<2);if(!h){break h}ma(h)}g=g+1|0;c=D[a+216>>2];if(g>>>0<(D[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}g=0;if(D[a+220>>2]==D[a+216>>2]){break f}while(1){i:{if(!Ga(D[a+368>>2]+(g<<4)|0)){break i}f=D[a+216>>2]+J(g,144)|0;c=D[f+136>>2];d=D[f+140>>2];if(c>>>0>>0){D[c>>2]=b;D[f+136>>2]=c+4;break i}h=D[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break c}k=e<<2;d=d-h|0;e=d>>1;d=d>>2>>>0<536870911?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break b}c=na(d<<2)}else{c=0}e=k+c|0;D[e>>2]=b;if((j|0)>0){oa(c,h,j)}D[f+132>>2]=c;D[f+136>>2]=e+4;D[f+140>>2]=c+(d<<2);if(!h){break i}ma(h)}g=g+1|0;if(g>>>0<(D[a+220>>2]-D[a+216>>2]|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){b=D[(l<<2)+i>>2];continue}break}$=i+16|0;return 1}qa();T()}ra(1326);T()}qa();T()}ra(1326);T()}function vd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=$-16|0;$=i;k=-1;a:{b:{c:{if(!Da(1,i+12|0,b)){break c}d=D[i+12>>2];if(d){c=D[a+8>>2];if(d>>>0>(D[c+4>>2]-D[c>>2]>>2>>>0)/3>>>0){break c}while(1){if(!Da(1,i+8|0,b)){break c}c=D[i+8>>2];if(!Da(1,i+8|0,b)){break c}f=c+f|0;c=D[i+8>>2];if(f>>>0>>0){break c}g=f-c|0;c=D[a+40>>2];d:{if((c|0)!=D[a+44>>2]){D[c+4>>2]=f;D[c>>2]=g;D[a+40>>2]=c+12;break d}e=c;c=D[a+36>>2];j=e-c|0;h=(j|0)/12|0;e=h+1|0;if(e>>>0>=357913942){break b}l=h<<1;e=h>>>0<178956970?e>>>0>l>>>0?e:l:357913941;if(e>>>0>=357913942){break a}e=J(e,12);l=na(e);h=l+J(h,12)|0;D[h+4>>2]=f;D[h>>2]=g;g=h+J((j|0)/-12|0,12)|0;if((j|0)>0){oa(g,c,j)}D[a+44>>2]=e+l;D[a+40>>2]=h+12;D[a+36>>2]=g;if(!c){break d}ma(c)}m=m+1|0;if((d|0)!=(m|0)){continue}break}f=0;cc(b,0,0);h=d>>>0>1?d:1;while(1){d=E[b+36|0];c=F[D[a+4>>2]+36>>1];e:{f:{if(((c<<8|c>>>8)&65535)>>>0<=513){if(!d){break e}g=0;c=D[b+32>>2];j=c>>>3|0;k=D[b+24>>2];d=j+k|0;e=D[b+28>>2];g:{if(d>>>0>=e>>>0){d=c;break g}g=E[d|0];d=c+1|0;D[b+32>>2]=d;j=d>>>3|0;g=g>>>(c&7)&1}if(e>>>0>j+k>>>0){break f}break e}if(!d){break e}g=0;d=D[b+32>>2];c=D[b+24>>2]+(d>>>3|0)|0;if(c>>>0>=G[b+28>>2]){break e}g=E[c|0]>>>(d&7)&1}D[b+32>>2]=d+1}d=D[a+36>>2]+J(f,12)|0;B[d+8|0]=E[d+8|0]&254|g&1;f=f+1|0;if((h|0)!=(f|0)){continue}break}B[b+36|0]=0;c=D[b+20>>2];a=0;d=D[b+32>>2]+7|0;a=d>>>0<7?1:a;f=a<<29|d>>>3;d=f+D[b+16>>2]|0;a=(a>>>3|0)+c|0;D[b+16>>2]=d;D[b+20>>2]=d>>>0>>0?a+1|0:a}k=D[b+16>>2]}$=i+16|0;return k}qa();T()}ra(1326);T()}function gc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=D[a+8>>2];g=D[a+4>>2];if((e-g|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=g;e=J(b,12)-12|0;f=((e>>>0)/12|0)+1&3;if(f){while(1){j=D[c+4>>2];D[d>>2]=D[c>>2];D[d+4>>2]=j;D[d+8>>2]=D[c+8>>2];d=d+12|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}g=J(b,12)+g|0;if(e>>>0<36){break a}while(1){b=D[c+4>>2];D[d>>2]=D[c>>2];D[d+4>>2]=b;D[d+8>>2]=D[c+8>>2];D[d+20>>2]=D[c+8>>2];b=D[c+4>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=b;D[d+32>>2]=D[c+8>>2];b=D[c+4>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=b;b=D[c+4>>2];D[d+36>>2]=D[c>>2];D[d+40>>2]=b;D[d+44>>2]=D[c+8>>2];d=d+48|0;if((g|0)!=(d|0)){continue}break}}D[a+4>>2]=g;return}b:{f=D[a>>2];i=(g-f|0)/12|0;d=i+b|0;if(d>>>0<357913942){e=(e-f|0)/12|0;f=e<<1;f=e>>>0<178956970?d>>>0>f>>>0?d:f:357913941;if(f){if(f>>>0>=357913942){break b}j=na(J(f,12))}e=J(i,12)+j|0;d=e;b=J(b,12);i=b-12|0;k=((i>>>0)/12|0)+1&3;if(k){d=e;while(1){l=D[c+4>>2];D[d>>2]=D[c>>2];D[d+4>>2]=l;D[d+8>>2]=D[c+8>>2];d=d+12|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}h=b+e|0;if(i>>>0>=36){while(1){b=D[c+4>>2];D[d>>2]=D[c>>2];D[d+4>>2]=b;D[d+8>>2]=D[c+8>>2];D[d+20>>2]=D[c+8>>2];b=D[c+4>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=b;D[d+32>>2]=D[c+8>>2];b=D[c+4>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=b;b=D[c+4>>2];D[d+36>>2]=D[c>>2];D[d+40>>2]=b;D[d+44>>2]=D[c+8>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}b=D[a>>2];c=g-b|0;d=e+J((c|0)/-12|0,12)|0;if((c|0)>0){oa(d,b,c)}D[a+8>>2]=J(f,12)+j;D[a+4>>2]=h;D[a>>2]=d;if(b){ma(b)}return}qa();T()}ra(1326);T()}function sf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=0;h=$-16|0;$=h;k=D[b+80>>2];e=B[c+24|0];D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;a:{b:{if(e){if((e|0)<0){break b}b=e<<2;a=na(b);D[h>>2]=a;g=a+b|0;D[h+8>>2]=g;i=b-4|0;l=(i>>>2|0)+1&7;c:{if(!l){b=a;break c}b=a;while(1){D[b>>2]=-1073741824;b=b+4|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}if(i>>>0>=28){while(1){D[b+24>>2]=-1073741824;D[b+28>>2]=-1073741824;D[b+16>>2]=-1073741824;D[b+20>>2]=-1073741824;D[b+8>>2]=-1073741824;D[b+12>>2]=-1073741824;D[b>>2]=-1073741824;D[b+4>>2]=-1073741824;b=b+32|0;if((g|0)!=(b|0)){continue}break}}D[h+4>>2]=g}b=J(e,k);g=D[d>>2];f=D[d+4>>2]-g>>2;d:{if(b>>>0>f>>>0){sa(d,b-f|0);break d}if(b>>>0>=f>>>0){break d}D[d+4>>2]=g+(b<<2)}e:{if(!k){break e}j=1;if((e|0)<=0){b=0;while(1){if(!mb(c,E[c+84|0]?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],a)){break e}b=b+1|0;j=k>>>0>b>>>0;if((b|0)!=(k|0)){continue}break}break e}p=e&-4;l=e&3;f=0;q=e-1>>>0<3;while(1){if(mb(c,E[c+84|0]?m:D[D[c+68>>2]+(m<<2)>>2],B[c+24|0],a)){o=D[d>>2];n=0;e=D[h>>2];b=0;j=0;if(!q){while(1){g=o+(f<<2)|0;i=b<<2;H[g>>2]=H[i+e>>2];H[g+4>>2]=H[(i|4)+e>>2];H[g+8>>2]=H[(i|8)+e>>2];H[g+12>>2]=H[(i|12)+e>>2];b=b+4|0;f=f+4|0;j=j+4|0;if((p|0)!=(j|0)){continue}break}}if(l){while(1){H[o+(f<<2)>>2]=H[(b<<2)+e>>2];b=b+1|0;f=f+1|0;n=n+1|0;if((l|0)!=(n|0)){continue}break}}m=m+1|0;j=m>>>0>>0;if((k|0)!=(m|0)){continue}}break}a=D[h>>2]}if(a){ma(a)}$=h+16|0;a=(j^-1)&1;break a}qa();T()}return a|0}function Ib(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=D[b+16>>2];g=D[c+4>>2]-k|0;e=g;f=D[c>>2]-k|0;D[c>>2]=f;D[c+4>>2]=e;j=D[b+16>>2];e=e>>31;h=e+g^e;e=f>>31;l=(j|0)>=(h+(e+f^e)|0);a:{if(l){e=g;break a}b:{c:{if((f|0)>=0){i=1;h=1;if((g|0)>=0){break b}e=1;i=-1;h=-1;if(f){break c}break b}e=-1;i=-1;h=-1;if((g|0)<=0){break b}}i=(g|0)<=0?-1:1;h=e}e=f<<1;f=J(h,j);e=e-f|0;h=(J(i,h)|0)>=0;i=J(i,j);e=((h?0-e|0:e)+i|0)/2|0;D[c+4>>2]=e;j=f;f=(g<<1)-i|0;f=(j+(h?0-f|0:f)|0)/2|0;D[c>>2]=f}d:{e:{f:{g:{h:{i:{j:{if(f){if((f|0)<0){break j}if((e|0)>=0){break i}break f}if(e){break h}i=1;g=0;e=0;h=0;break d}i=1;if((e|0)>0){break g}h=(e|0)>0?253:0;g=e;e=f;break d}g=0-e|0;e=0-f|0;h=254;break e}if((e|0)<=0){break f}}e=0-e|0;g=f;h=253;break e}g=0-f|0;h=255}D[c>>2]=e;D[c+4>>2]=g;i=0}c=D[d+4>>2]+g|0;f=D[d>>2]+e|0;g=D[b+16>>2];k:{if((f|0)>(g|0)){f=f-D[b+4>>2]|0;break k}if((0-g|0)<=(f|0)){break k}f=D[b+4>>2]+f|0}l:{if((c|0)>(g|0)){c=c-D[b+4>>2]|0;break l}if((0-g|0)<=(c|0)){break l}c=D[b+4>>2]+c|0}m:{if(i){b=c;break m}b=c;n:{switch((h&3)-1|0){case 0:b=0-f|0;f=c;break m;case 1:b=0-c|0;f=0-f|0;break m;case 2:break n;default:break m}}b=f;f=0-c|0}o:{if(l){c=b;break o}p:{q:{if((f|0)>=0){c=1;e=1;if((b|0)>=0){break p}d=1;c=-1;e=-1;if(f){break q}break p}d=-1;c=-1;e=-1;if((b|0)<=0){break p}}c=(b|0)<=0?-1:1;e=d}d=f<<1;f=J(e,g);d=d-f|0;D[a>>2]=d;j=0-d|0;h=d;d=(J(c,e)|0)>=0;e=J(c,g);c=((d?j:h)+e|0)/2|0;b=(b<<1)-e|0;f=(f+(d?0-b|0:b)|0)/2|0}D[a>>2]=f+k;D[a+4>>2]=c+k}function rb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=d-c|0;if((h|0)<=0){return}a:{f=D[a+8>>2];i=D[a+4>>2];if((h|0)<=(f-i|0)){j=i-b|0;if((j|0)>=(h|0)){g=i;f=d;break a}g=i;f=c+j|0;if((f|0)!=(d|0)){e=f;while(1){B[g|0]=E[e|0];g=g+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}D[a+4>>2]=g;if((j|0)>0){break a}return}e=D[a>>2];d=h+(i-e|0)|0;if((d|0)>=0){g=b-e|0;f=f-e|0;j=f<<1;f=f>>>0<1073741823?d>>>0>j>>>0?d:j:2147483647;if(f){d=na(f)}else{d=0}c=oa(g+d|0,c,h);if((g|0)>0){oa(d,e,g)}c=c+h|0;if((b|0)!=(i|0)){g=(b^-1)+i|0;h=i-b&7;if(h){e=0;while(1){B[c|0]=E[b|0];c=c+1|0;b=b+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if(g>>>0>=7){while(1){B[c|0]=E[b|0];B[c+1|0]=E[b+1|0];B[c+2|0]=E[b+2|0];B[c+3|0]=E[b+3|0];B[c+4|0]=E[b+4|0];B[c+5|0]=E[b+5|0];B[c+6|0]=E[b+6|0];B[c+7|0]=E[b+7|0];c=c+8|0;b=b+8|0;if((i|0)!=(b|0)){continue}break}}e=D[a>>2]}D[a+8>>2]=d+f;D[a+4>>2]=c;D[a>>2]=d;if(e){ma(e)}return}qa();T()}e=g;d=e-h|0;if(i>>>0>d>>>0){while(1){B[e|0]=E[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}D[a+4>>2]=e;a=g-(b+h|0)|0;if(a){Na(g-a|0,b,a)}if((c|0)==(f|0)){return}a=(c^-1)+f|0;g=f-c&7;b:{if(!g){e=b;break b}d=0;e=b;while(1){B[e|0]=E[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){B[e|0]=E[c|0];B[e+1|0]=E[c+1|0];B[e+2|0]=E[c+2|0];B[e+3|0]=E[c+3|0];B[e+4|0]=E[c+4|0];B[e+5|0]=E[c+5|0];B[e+6|0]=E[c+6|0];B[e+7|0]=E[c+7|0];e=e+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}function mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=$-16|0;$=e;i=D[b+80>>2];a=B[c+24|0];f=J(i,a);a:{b:{b=D[c+28>>2];c:{if(!(!((b|0)==5|(b|0)==6)|!E[c+84|0])){h=D[c+48>>2];i=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=na(a);b=oa(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=j;D[d>>2]=c;a=1;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=na(b);D[e>>2]=h;g=b+h|0;D[e+8>>2]=g;pa(h,0,b);D[e+4>>2]=g}g=D[d>>2];b=D[d+4>>2]-g>>2;d:{if(b>>>0>>0){sa(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}D[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!yb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(yb(c,E[c+84|0]?f:D[D[c+68>>2]+(f<<2)>>2],B[c+24|0],h)){o=D[d>>2];m=0;g=D[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;D[k>>2]=D[g+l>>2];D[k+4>>2]=D[g+(l|4)>>2];D[k+8>>2]=D[g+(l|8)>>2];D[k+12>>2]=D[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){D[(j<<2)+o>>2]=D[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=D[e>>2]}if(h){ma(h)}a=b^1}$=e+16|0;a=a&1;break a}qa();T()}return a|0}function _c(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=$-16|0;$=e;i=D[b+80>>2];a=B[c+24|0];f=J(i,a);a:{b:{b=D[c+28>>2];c:{if(!(!((b|0)==5|(b|0)==6)|!E[c+84|0])){h=D[c+48>>2];i=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=na(a);b=oa(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=j;D[d>>2]=c;a=1;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=na(b);D[e>>2]=h;g=b+h|0;D[e+8>>2]=g;pa(h,0,b);D[e+4>>2]=g}g=D[d>>2];b=D[d+4>>2]-g>>2;d:{if(b>>>0>>0){sa(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}D[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!zb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(zb(c,E[c+84|0]?f:D[D[c+68>>2]+(f<<2)>>2],B[c+24|0],h)){o=D[d>>2];m=0;g=D[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;D[k>>2]=D[g+l>>2];D[k+4>>2]=D[g+(l|4)>>2];D[k+8>>2]=D[g+(l|8)>>2];D[k+12>>2]=D[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){D[(j<<2)+o>>2]=D[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=D[e>>2]}if(h){ma(h)}a=b^1}$=e+16|0;a=a&1;break a}qa();T()}return a|0}function pf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=$-16|0;$=e;i=D[b+80>>2];a=B[c+24|0];f=J(i,a);a:{b:{b=D[c+28>>2];c:{if(!(!((b|0)==3|(b|0)==4)|!E[c+84|0])){h=D[c+48>>2];i=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=na(a);b=oa(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=j;D[d>>2]=c;a=1;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=na(b);D[e>>2]=h;g=b+h|0;D[e+8>>2]=g;pa(h,0,b);D[e+4>>2]=g}g=D[d>>2];b=D[d+4>>2]-g>>1;d:{if(b>>>0>>0){gd(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}D[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!Bb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(Bb(c,E[c+84|0]?f:D[D[c+68>>2]+(f<<2)>>2],B[c+24|0],h)){o=D[d>>2];m=0;g=D[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;C[k>>1]=F[g+l>>1];C[k+2>>1]=F[g+(l|2)>>1];C[k+4>>1]=F[g+(l|4)>>1];C[k+6>>1]=F[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){C[(j<<1)+o>>1]=F[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=D[e>>2]}if(h){ma(h)}a=b^1}$=e+16|0;a=a&1;break a}qa();T()}return a|0}function nf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=$-16|0;$=e;i=D[b+80>>2];a=B[c+24|0];f=J(i,a);a:{b:{b=D[c+28>>2];c:{if(!(!((b|0)==3|(b|0)==4)|!E[c+84|0])){h=D[c+48>>2];i=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=na(a);b=oa(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=j;D[d>>2]=c;a=1;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=na(b);D[e>>2]=h;g=b+h|0;D[e+8>>2]=g;pa(h,0,b);D[e+4>>2]=g}g=D[d>>2];b=D[d+4>>2]-g>>1;d:{if(b>>>0>>0){gd(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}D[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!Ab(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(Ab(c,E[c+84|0]?f:D[D[c+68>>2]+(f<<2)>>2],B[c+24|0],h)){o=D[d>>2];m=0;g=D[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;C[k>>1]=F[g+l>>1];C[k+2>>1]=F[g+(l|2)>>1];C[k+4>>1]=F[g+(l|4)>>1];C[k+6>>1]=F[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){C[(j<<1)+o>>1]=F[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=D[e>>2]}if(h){ma(h)}a=b^1}$=e+16|0;a=a&1;break a}qa();T()}return a|0}function Oh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;D[a+8>>2]=e;f=a+32|0;i=D[f>>2];h=D[a+36>>2]-i>>2;a:{if(h>>>0>>0){sa(f,e-h|0);i=D[f>>2];f=D[a+8>>2];break a}if(e>>>0>>0){D[a+36>>2]=(e<<2)+i}f=e}h=0;g=(e&1073741823)!=(e|0)?-1:e<<2;m=pa(na(g),0,g);b:{if((f|0)<=0){break b}while(1){f=h<<2;g=D[f+m>>2];j=D[a+16>>2];c:{if((g|0)>(j|0)){D[f+i>>2]=j;break c}f=f+i|0;j=D[a+12>>2];if((j|0)>(g|0)){D[f>>2]=j;break c}D[f>>2]=g}f=D[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}if((f|0)<=0){break b}h=0;while(1){g=h<<2;f=g+c|0;g=D[b+g>>2]+D[g+i>>2]|0;D[f>>2]=g;d:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break d}g=g+D[a+20>>2]|0}D[f>>2]=g}f=D[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}if(!((d|0)<=(e|0)|(f|0)<=0)){o=0-e<<2;i=e;while(1){e:{if((f|0)<=0){break e}l=i<<2;n=l+c|0;p=n+o|0;j=D[a+32>>2];h=0;while(1){f=h<<2;g=D[f+p>>2];k=D[a+16>>2];f:{if((g|0)>(k|0)){D[f+j>>2]=k;break f}f=f+j|0;k=D[a+12>>2];if((k|0)>(g|0)){D[f>>2]=k;break f}D[f>>2]=g}f=D[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}h=0;if((f|0)<=0){break e}l=b+l|0;while(1){g=h<<2;f=g+n|0;g=D[g+l>>2]+D[g+j>>2]|0;D[f>>2]=g;g:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break g}g=g+D[a+20>>2]|0}D[f>>2]=g}f=D[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}i=e+i|0;if((i|0)<(d|0)){continue}break}}ma(m);return 1}function md(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;D[a>>2]=8364;e=a+232|0;b=D[e+196>>2];if(b){D[e+200>>2]=b;ma(b)}c=D[e+184>>2];if(c){b=D[e+188>>2];if((c|0)==(b|0)){b=c}else{while(1){d=b-12|0;f=D[d>>2];if(f){D[b-8>>2]=f;ma(f)}b=d;if((c|0)!=(b|0)){continue}break}b=D[e+184>>2]}D[e+188>>2]=c;ma(b)}b=D[e+156>>2];if(b){D[e+160>>2]=b;ma(b)}c=D[e+136>>2];D[e+136>>2]=0;if(c){d=c-4|0;b=D[d>>2];if(b){b=c+(b<<4)|0;while(1){b=b-16|0;if((c|0)!=(b|0)){continue}break}}ma(d)}c=D[a+216>>2];if(c){b=D[a+220>>2];if((c|0)==(b|0)){b=c}else{while(1){d=D[b-12>>2];if(d){D[b-8>>2]=d;ma(d)}d=D[b-28>>2];if(d){D[b-24>>2]=d;ma(d)}d=D[b-40>>2];if(d){D[b-36>>2]=d;ma(d)}ob(b-140|0);b=b-144|0;if((c|0)!=(b|0)){continue}break}b=D[a+216>>2]}D[a+220>>2]=c;ma(b)}b=D[a+196>>2];if(b){D[a+200>>2]=b;ma(b)}b=D[a+184>>2];if(b){D[a+188>>2]=b;ma(b)}b=D[a+172>>2];if(b){D[a+176>>2]=b;ma(b)}b=D[a+160>>2];if(b){D[a+164>>2]=b;ma(b)}b=D[a+144>>2];if(b){while(1){c=D[b>>2];ma(b);b=c;if(b){continue}break}}b=D[a+136>>2];D[a+136>>2]=0;if(b){ma(b)}b=D[a+120>>2];if(b){ma(b)}b=D[a+108>>2];if(b){ma(b)}b=D[a+96>>2];if(b){ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+60>>2];if(b){ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}b=D[a+36>>2];if(b){D[a+40>>2]=b;ma(b)}b=D[a+24>>2];if(b){D[a+28>>2]=b;ma(b)}b=D[a+12>>2];if(b){D[a+16>>2]=b;ma(b)}b=D[a+8>>2];D[a+8>>2]=0;if(b){ab(b)}return a|0}function lc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=$-16|0;$=j;c=D[b+20>>2];d=D[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=D[b+12>>2];a:{if((e|0)<=(c|0)&g>>>0>G[b+8>>2]|(c|0)>(e|0)){break a}d=d+D[b>>2]|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=g;D[b+20>>2]=c;if((d|0)<0){break a}ib(a+76|0,d);c=j;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;b:{if(!Ka(c,b)){break b}if(d){e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^i;if(e&1){f=D[g>>2]&(f^-1)}else{f=f|D[g>>2]}e=e^1;D[g>>2]=f;h=h+1|0;if((d|0)!=(h|0)){continue}break}}h=0;d=D[b+12>>2];g=d;c=D[b+20>>2];e=c;f=D[b+16>>2];i=f+4|0;c=i>>>0<4?c+1|0:c;k=D[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break b}l=D[b>>2];d=l+f|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=i;D[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break b}c=i+l|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[b+16>>2]=f;D[b+20>>2]=e;if((c|0)<(d|0)){break b}D[a+16>>2]=c;D[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break b}h=1;b=c+1|0;D[a+20>>2]=b;c=b>>>1|0;D[a+24>>2]=c;D[a+28>>2]=0-c;if(b&1){break b}D[a+24>>2]=c-1}}$=j+16|0;return h|0}function fc(a,b){var c=0,d=0,e=0,f=0,g=0;f=-1;d=-1;a:{if((b|0)==-1){break a}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}b:{c:{d:{switch(D[a+168>>2]){case 0:case 1:e=D[a+148>>2];c=1;b=D[a+156>>2];g=b+(((f|0)!=-1?D[D[e>>2]+(f<<2)>>2]:-1)<<2)|0;D[g>>2]=D[g>>2]+1;b=(((d|0)!=-1?D[D[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=D[a+148>>2];c=-1;c=((b|0)!=-1?D[D[e>>2]+(b<<2)>>2]:c)<<2;b=D[a+156>>2];c=c+b|0;D[c>>2]=D[c>>2]+1;c=(((f|0)!=-1?D[D[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;D[c>>2]=D[c>>2]+1;c=2;b=(((d|0)!=-1?D[D[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 3:e=D[a+148>>2];c=-1;c=((b|0)!=-1?D[D[e>>2]+(b<<2)>>2]:c)<<2;b=D[a+156>>2];c=c+b|0;D[c>>2]=D[c>>2]+1;c=(((f|0)!=-1?D[D[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;D[c>>2]=D[c>>2]+2;c=1;b=(((d|0)!=-1?D[D[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 7:break d;default:break b}}e=D[a+148>>2];c=-1;c=((b|0)!=-1?D[D[e>>2]+(b<<2)>>2]:c)<<2;b=D[a+156>>2];c=c+b|0;D[c>>2]=D[c>>2]+2;c=(((f|0)!=-1?D[D[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;D[c>>2]=D[c>>2]+2;c=2;b=(((d|0)!=-1?D[D[e>>2]+(d<<2)>>2]:-1)<<2)+b|0}D[b>>2]=D[b>>2]+c}c=a;d=D[a+180>>2];b=D[D[a+156>>2]+(((f|0)!=-1?D[D[D[a+148>>2]>>2]+(f<<2)>>2]:-1)<<2)>>2];a=D[a+176>>2];D[c+172>>2]=(a|0)>(b|0)?0:((b|0)>(d|0)?d:b)-a|0}function Ub(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=D[a+8>>2];e=D[a>>2];if(d-e>>2>>>0>=b>>>0){g=D[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){D[d>>2]=D[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){D[d>>2]=D[c>>2];D[d+4>>2]=D[c>>2];D[d+8>>2]=D[c>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=D[c>>2];D[d+20>>2]=D[c>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=D[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){d=a;a=b-h|0;if(a){a=(a<<2)+g|0;while(1){D[g>>2]=D[c>>2];g=g+4|0;if((a|0)!=(g|0)){continue}break}}else{a=g}D[d+4>>2]=a;return}D[a+4>>2]=e+(b<<2);return}if(e){D[a+4>>2]=e;ma(e);D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>2>>>0<536870911?b>>>0>e>>>0?b:e:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=na(d);D[a>>2]=e;D[a+8>>2]=d+e;c=D[c>>2];d=e;b=b<<2;g=b-4|0;h=(g>>>2|0)+1&7;if(h){while(1){D[d>>2]=c;d=d+4|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}b=b+e|0;if(g>>>0>=28){while(1){D[d+28>>2]=c;D[d+24>>2]=c;D[d+20>>2]=c;D[d+16>>2]=c;D[d+12>>2]=c;D[d+8>>2]=c;D[d+4>>2]=c;D[d>>2]=c;d=d+32|0;if((b|0)!=(d|0)){continue}break}}D[a+4>>2]=b;return}qa();T()}function wg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b=D[a+32>>2];f=D[b+8>>2];g=D[b+12>>2];d=D[b+20>>2];h=f;f=D[b+16>>2];e=0;b:{if((g|0)<=(d|0)&h>>>0<=f>>>0|(d|0)>(g|0)){break b}h=E[f+D[b>>2]|0];g=f+1|0;d=g?d:d+1|0;D[b+16>>2]=g;D[b+20>>2]=d;c:{if(!h){break c}while(1){if(ba[D[D[a>>2]+16>>2]](a,c)|0){c=c+1|0;if((h|0)!=(c|0)){continue}break c}break}return 0}c=D[a+8>>2];d=D[a+12>>2];if((c|0)!=(d|0)){while(1){b=D[c>>2];if(!(ba[D[D[b>>2]+8>>2]](b,a,D[a+4>>2])|0)){break a}c=c+4|0;if((d|0)!=(c|0)){continue}break}}d:{if(!h){break d}c=0;while(1){b=D[D[a+8>>2]+(c<<2)>>2];if(!(ba[D[D[b>>2]+12>>2]](b,D[a+32>>2])|0)){break a}c=c+1|0;if((h|0)!=(c|0)){continue}break}if(!h){break d}f=a+20|0;while(1){c=0;g=i<<2;b=D[g+D[a+8>>2]>>2];d=ba[D[D[b>>2]+24>>2]](b)|0;if((d|0)>0){while(1){b=D[D[a+8>>2]+g>>2];k=ba[D[D[b>>2]+20>>2]](b,c)|0;e=D[a+20>>2];j=D[a+24>>2]-e>>2;e:{if(k>>>0>>0){break e}b=k+1|0;if(b>>>0>j>>>0){sa(f,b-j|0);e=D[f>>2];break e}if(b>>>0>=j>>>0){break e}D[a+24>>2]=(b<<2)+e}D[(k<<2)+e>>2]=i;c=c+1|0;if((d|0)!=(c|0)){continue}break}}i=i+1|0;if((h|0)!=(i|0)){continue}break}}e=0;if(!(ba[D[D[a>>2]+28>>2]](a)|0)){break b}e=ba[D[D[a>>2]+32>>2]](a)|0}return e|0}return 0}function Se(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;Jc(a,b,c);c=D[a+84>>2];d=D[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=D[a+92>>2];c=D[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=(d<<2)-4|0;g=(f>>>2|0)+1&7;if(g){while(1){D[b>>2]=1;b=b+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}c=(d<<2)+c|0;if(f>>>0<28){break c}while(1){D[b+24>>2]=1;D[b+28>>2]=1;D[b+16>>2]=1;D[b+20>>2]=1;D[b+8>>2]=1;D[b+12>>2]=1;D[b>>2]=1;D[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}D[a+88>>2]=c;break b}d:{f=D[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;i=e>>1;e=e>>2>>>0<536870911?b>>>0>i>>>0?b:i:1073741823;if(e){if(e>>>0>=1073741824){break d}g=na(e<<2)}c=(c<<2)+g|0;b=c;d=d<<2;i=d-4|0;k=(i>>>2|0)+1&7;if(k){b=c;while(1){D[b>>2]=1;b=b+4|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}c=c+d|0;if(i>>>0>=28){while(1){D[b+24>>2]=1;D[b+28>>2]=1;D[b+16>>2]=1;D[b+20>>2]=1;D[b+8>>2]=1;D[b+12>>2]=1;D[b>>2]=1;D[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){oa(g,f,j)}D[a+92>>2]=(e<<2)+g;D[a+88>>2]=c;D[a+84>>2]=g;if(f){ma(f)}break b}qa();T()}ra(1326);T()}return}if(b>>>0>=d>>>0){break a}D[a+88>>2]=c+(b<<2)}}function xa(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=D[a+8>>2];e=D[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=(b<<2)-4|0;h=(g>>>2|0)+1&7;if(h){while(1){D[d>>2]=D[c>>2];d=d+4|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}e=(b<<2)+e|0;if(g>>>0<28){break a}while(1){D[d>>2]=D[c>>2];D[d+4>>2]=D[c>>2];D[d+8>>2]=D[c>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=D[c>>2];D[d+20>>2]=D[c>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=D[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}D[a+4>>2]=e;return}b:{g=D[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;j=f>>1;f=f>>2>>>0<536870911?d>>>0>j>>>0?d:j:1073741823;if(f){if(f>>>0>=1073741824){break b}h=na(f<<2)}e=(e<<2)+h|0;d=e;b=b<<2;j=b-4|0;l=(j>>>2|0)+1&7;if(l){d=e;while(1){D[d>>2]=D[c>>2];d=d+4|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}b=b+e|0;if(j>>>0>=28){while(1){D[d>>2]=D[c>>2];D[d+4>>2]=D[c>>2];D[d+8>>2]=D[c>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=D[c>>2];D[d+20>>2]=D[c>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=D[c>>2];d=d+32|0;if((b|0)!=(d|0)){continue}break}}if((k|0)>0){oa(h,g,k)}D[a+8>>2]=(f<<2)+h;D[a+4>>2]=b;D[a>>2]=h;if(g){ma(g)}return}qa();T()}ra(1326);T()}function oa(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){X(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){B[c|0]=E[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){D[c>>2]=D[b>>2];D[c+4>>2]=D[b+4>>2];D[c+8>>2]=D[b+8>>2];D[c+12>>2]=D[b+12>>2];D[c+16>>2]=D[b+16>>2];D[c+20>>2]=D[b+20>>2];D[c+24>>2]=D[b+24>>2];D[c+28>>2]=D[b+28>>2];D[c+32>>2]=D[b+32>>2];D[c+36>>2]=D[b+36>>2];D[c+40>>2]=D[b+40>>2];D[c+44>>2]=D[b+44>>2];D[c+48>>2]=D[b+48>>2];D[c+52>>2]=D[b+52>>2];D[c+56>>2]=D[b+56>>2];D[c+60>>2]=D[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){D[c>>2]=D[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){B[c|0]=E[b|0];B[c+1|0]=E[b+1|0];B[c+2|0]=E[b+2|0];B[c+3|0]=E[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){B[c|0]=E[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function nd(a){a=a|0;var b=0,c=0,d=0,e=0;D[a>>2]=8312;e=D[a+368>>2];D[a+368>>2]=0;if(e){d=e-4|0;b=D[d>>2];if(b){c=(b<<4)+e|0;while(1){c=c-16|0;if((e|0)!=(c|0)){continue}break}}ma(d)}d=D[a+216>>2];if(d){c=D[a+220>>2];if((d|0)==(c|0)){b=d}else{while(1){b=D[c-12>>2];if(b){D[c-8>>2]=b;ma(b)}b=D[c-28>>2];if(b){D[c-24>>2]=b;ma(b)}b=D[c-40>>2];if(b){D[c-36>>2]=b;ma(b)}ob(c-140|0);c=c-144|0;if((d|0)!=(c|0)){continue}break}b=D[a+216>>2]}D[a+220>>2]=d;ma(b)}b=D[a+196>>2];if(b){D[a+200>>2]=b;ma(b)}b=D[a+184>>2];if(b){D[a+188>>2]=b;ma(b)}b=D[a+172>>2];if(b){D[a+176>>2]=b;ma(b)}b=D[a+160>>2];if(b){D[a+164>>2]=b;ma(b)}c=D[a+144>>2];if(c){while(1){b=D[c>>2];ma(c);c=b;if(b){continue}break}}b=D[a+136>>2];D[a+136>>2]=0;if(b){ma(b)}b=D[a+120>>2];if(b){ma(b)}b=D[a+108>>2];if(b){ma(b)}b=D[a+96>>2];if(b){ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+60>>2];if(b){ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}b=D[a+36>>2];if(b){D[a+40>>2]=b;ma(b)}b=D[a+24>>2];if(b){D[a+28>>2]=b;ma(b)}b=D[a+12>>2];if(b){D[a+16>>2]=b;ma(b)}b=D[a+8>>2];D[a+8>>2]=0;if(b){ab(b)}return a|0}function bi(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=M(d)-M(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;aa=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>ei(d)|0;aa=0;break a}if(!(g-1&g)){break f}h=(M(g)+33|0)-M(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;aa=0;break a}c=M(d)-M(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=ei(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<>>d}aa=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;j=b>>>f|0}else{c=b>>>f|0;j=((1<>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<>>32-e|b<>>31;f=f<<1|j>>>31;i=l-(f+(c>>>0>e>>>0)|0)>>31;k=g&i;j=c-k|0;f=f-((d&i)+(c>>>0>>0)|0)|0;b=b<<1|a>>>31;a=m|a<<1;i=i&1;m=i;h=h-1|0;if(h){continue}break}}aa=b<<1|a>>>31;a=i|a<<1;break a}a=0;b=0}aa=b}return a}function pb(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);B[b+12|0]=c;a:{if(c){break a}while(1){d=D[b+8>>2];if(E[d+12|0]){break a}b:{c=D[d+8>>2];e=D[c>>2];c:{if((d|0)==(e|0)){e=D[c+4>>2];if(!(!e|E[e+12|0])){break b}d:{if(D[d>>2]==(b|0)){b=d;break d}b=D[d+4>>2];a=D[b>>2];D[d+4>>2]=a;if(a){D[a+8>>2]=d;c=D[d+8>>2]}D[b+8>>2]=c;a=D[d+8>>2];D[(((d|0)!=D[a>>2])<<2)+a>>2]=b;D[b>>2]=d;D[d+8>>2]=b;c=D[b+8>>2]}B[b+12|0]=1;B[c+12|0]=0;a=D[c>>2];b=D[a+4>>2];D[c>>2]=b;if(b){D[b+8>>2]=c}D[a+8>>2]=D[c+8>>2];b=D[c+8>>2];D[((D[b>>2]!=(c|0))<<2)+b>>2]=a;D[a+4>>2]=c;b=c+8|0;break c}if(!(E[e+12|0]|!e)){break b}e:{if(D[d>>2]!=(b|0)){b=d;break e}a=D[b+4>>2];D[d>>2]=a;if(a){D[a+8>>2]=d;c=D[d+8>>2]}D[b+8>>2]=c;a=D[d+8>>2];D[(((d|0)!=D[a>>2])<<2)+a>>2]=b;D[b+4>>2]=d;D[d+8>>2]=b;c=D[b+8>>2]}B[b+12|0]=1;B[c+12|0]=0;a=D[c+4>>2];b=D[a>>2];D[c+4>>2]=b;if(b){D[b+8>>2]=c}D[a+8>>2]=D[c+8>>2];b=D[c+8>>2];D[((D[b>>2]!=(c|0))<<2)+b>>2]=a;D[a>>2]=c;b=c+8|0}D[b>>2]=a;break a}B[d+12|0]=1;d=(a|0)==(c|0);B[c+12|0]=d;B[e+12|0]=1;b=c;if(!d){continue}break}}}function yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=K(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=$-16|0;$=k;if(D[c+28>>2]==9){d=D[a+4>>2];g=B[c+24|0];e=g<<2;f=na((g&1073741823)!=(g|0)?-1:e);l=k+8|0;D[l>>2]=1065353216;i=H[a+20>>2];d=-1<0){H[l>>2]=i/K(d|0)}o=(d|0)>0;a:{if(!o){break a}j=D[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){oa(D[D[c+64>>2]>>2]+d|0,f,e);d=d+e|0;oa(d+D[D[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}oa(D[D[c+64>>2]>>2]+d|0,f,e);break a}p=D[D[b>>2]>>2]+D[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=D[a+8>>2];i=H[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;H[h+f>>2]=K(i*K(D[q>>2]))+H[h+m>>2];h=h|4;H[h+f>>2]=K(i*K(D[q+4>>2]))+H[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;H[b+f>>2]=K(i*K(D[(d<<2)+p>>2]))+H[b+m>>2];d=d+1|0}oa(D[D[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}ma(f)}$=k+16|0;return o|0}function te(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(Zc(a,b)){i=a+36|0;g=ba[D[D[a>>2]+24>>2]](a)|0;d=D[a+40>>2];e=D[a+36>>2];c=d-e>>2;a:{if(g>>>0>c>>>0){Ob(i,g-c|0);break a}if(c>>>0<=g>>>0){break a}e=e+(g<<2)|0;if((e|0)!=(d|0)){while(1){d=d-4|0;c=D[d>>2];D[d>>2]=0;if(c){ba[D[D[c>>2]+4>>2]](c)}if((d|0)!=(e|0)){continue}break}}D[a+40>>2]=e}b:{if((g|0)<=0){e=0;break b}e=1;c=D[b+20>>2];d=D[b+12>>2];f=D[b+16>>2];if((c|0)>=(d|0)&f>>>0>=G[b+8>>2]|(c|0)>(d|0)){break b}d=0;while(1){h=E[f+D[b>>2]|0];f=f+1|0;c=f?c:c+1|0;D[b+16>>2]=f;D[b+20>>2]=c;f=ba[D[D[a>>2]+48>>2]](a,h)|0;h=d<<2;j=h+D[a+36>>2]|0;c=D[j>>2];D[j>>2]=f;if(c){ba[D[D[c>>2]+4>>2]](c)}c=D[D[i>>2]+h>>2];if(!c){break b}if(!(l=c,m=ba[D[D[a>>2]+28>>2]](a)|0,n=ba[D[D[a>>2]+20>>2]](a,d)|0,k=D[D[c>>2]+8>>2],ba[k](l|0,m|0,n|0)|0)){break b}d=d+1|0;e=(g|0)>(d|0);if((d|0)==(g|0)){break b}f=D[b+16>>2];c=D[b+20>>2];h=D[b+12>>2];if(f>>>0>2]&(c|0)<=(h|0)|(c|0)<(h|0)){continue}break}}a=!e}else{a=0}return a|0}function xh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=D[b+88>>2];if(!(!c|D[c>>2]!=1)){d=D[c+8>>2];D[a+4>>2]=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);d=B[b+24|0];e=D[a+8>>2];f=D[a+12>>2]-e>>2;a:{if(d>>>0>f>>>0){sa(a+8|0,d-f|0);d=B[b+24|0];e=D[a+8>>2];break a}if(d>>>0>=f>>>0){break a}D[a+12>>2]=(d<<2)+e}k=1;f=D[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){g=d<<2;c=b+f|0;D[g+e>>2]=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[(g|4)+e>>2]=E[c+4|0]|E[c+5|0]<<8|(E[c+6|0]<<16|E[c+7|0]<<24);D[(g|8)+e>>2]=E[c+8|0]|E[c+9|0]<<8|(E[c+10|0]<<16|E[c+11|0]<<24);D[(g|12)+e>>2]=E[c+12|0]|E[c+13|0]<<8|(E[c+14|0]<<16|E[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+f|0;D[(d<<2)+e>>2]=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+f|0;D[c+20>>2]=E[a|0]|E[a+1|0]<<8|(E[a+2|0]<<16|E[a+3|0]<<24)}return k|0}function Ia(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;g=D[(D[D[a+8>>2]+96>>2]+J(d,12)|0)+(c-J(d,3)<<2)>>2];e=D[D[a+12>>2]+4>>2];d=D[e+4>>2];a:{if((d|0)!=D[e+8>>2]){D[d>>2]=g;D[e+4>>2]=d+4;break a}b:{h=D[e>>2];i=d-h|0;j=i>>2;d=j+1|0;if(d>>>0<1073741824){f=i>>1;f=j>>>0<536870911?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break b}d=na(f<<2)}else{d=0}j=d+(j<<2)|0;D[j>>2]=g;if((i|0)>0){oa(d,h,i)}D[e+8>>2]=d+(f<<2);D[e+4>>2]=j+4;D[e>>2]=d;if(h){ma(h)}break a}qa();T()}ra(1326);T()}e=D[a+4>>2];d=D[e+4>>2];c:{d:{e:{if((d|0)!=D[e+8>>2]){D[d>>2]=c;D[e+4>>2]=d+4;break e}h=D[e>>2];i=d-h|0;g=i>>2;d=g+1|0;if(d>>>0>=1073741824){break d}f=i>>1;f=g>>>0<536870911?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break c}d=na(f<<2)}else{d=0}g=d+(g<<2)|0;D[g>>2]=c;if((i|0)>0){oa(d,h,i)}D[e+8>>2]=d+(f<<2);D[e+4>>2]=g+4;D[e>>2]=d;if(!h){break e}ma(h)}a=D[a+4>>2];D[D[a+12>>2]+(b<<2)>>2]=D[a+24>>2];D[a+24>>2]=D[a+24>>2]+1;return}qa();T()}ra(1326);T()}function Rf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=D[d+80>>2];e=$-48|0;$=e;a=D[a+4>>2];a:{if(a-31>>>0<4294967267){break a}i=D[D[d>>2]>>2]+D[d+48>>2]|0;D[e+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;D[e+24>>2]=a;D[e+32>>2]=(a|0)/2;H[e+28>>2]=K(2)/K(a|0);g=D[c>>2];if((g|0)!=D[c+4>>2]){a=0;d=0;while(1){f=D[(d<<2)+g>>2];h=e+36|0;j=D[D[b>>2]>>2];l=D[b+48>>2];g=D[b+44>>2];k=D[b+40>>2];if(!E[b+84|0]){f=D[D[b+68>>2]+(f<<2)>>2]}f=$h(k,g,f,0)+l|0;oa(h,f+j|0,k);Dc(e+16|0,h,e+12|0,e+8|0);g=a<<2;D[g+i>>2]=D[e+12>>2];D[(g|4)+i>>2]=D[e+8>>2];f=1;a=a+2|0;d=d+1|0;g=D[c>>2];if(d>>>0>2]-g>>2>>>0){continue}break}break a}if(!h){f=1;break a}d=0;a=0;while(1){j=e+36|0;c=D[D[b>>2]>>2];f=D[b+40>>2];g=D[b+48>>2]+$h(f,D[b+44>>2],E[b+84|0]?a:D[D[b+68>>2]+(a<<2)>>2],0)|0;oa(j,c+g|0,f);Dc(e+16|0,j,e+12|0,e+8|0);c=d<<2;D[c+i>>2]=D[e+12>>2];D[(c|4)+i>>2]=D[e+8>>2];d=d+2|0;f=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}$=e+48|0;return f|0}function ib(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=$-16|0;$=d;a:{e=D[a+4>>2];b:{if(e>>>0>>0){f=b-e|0;h=D[a+8>>2];c=h<<5;c:{if(!(f>>>0>c>>>0|e>>>0>c-f>>>0)){D[a+4>>2]=b;g=e&31;b=D[a>>2]+(e>>>3&536870908)|0;break c}D[d+8>>2]=0;D[d>>2]=0;D[d+4>>2]=0;if((b|0)<0){break a}if(c>>>0<=1073741822){c=b+31&-32;b=h<<6;b=b>>>0>>0?c:b}else{b=2147483647}Ta(d,b);e=D[a+4>>2];D[d+4>>2]=e+f;i=D[a>>2];b=D[d>>2];d:{if((e|0)<=0){break d}c=e>>>5|0;h=c<<2;b=Na(b,i,h)+h|0;g=e-(c<<5)|0;e:{if((g|0)<=0){g=0;break e}c=-1>>>32-g|0;D[b>>2]=D[b>>2]&(c^-1)|c&D[i+h>>2]}i=D[a>>2]}D[a>>2]=D[d>>2];D[d>>2]=i;c=D[a+4>>2];D[a+4>>2]=D[d+4>>2];D[d+4>>2]=c;c=D[a+8>>2];D[a+8>>2]=D[d+8>>2];D[d+8>>2]=c;if(!i){break c}ma(i)}if(!f){break b}if(g){c=32-g|0;a=c>>>0>f>>>0?f:c;D[b>>2]=D[b>>2]&(-1<>>c-a^-1);f=f-a|0;b=b+4|0}c=f>>>5<<2;a=pa(b,0,c);b=f&31;if(!b){break b}a=a+c|0;D[a>>2]=D[a>>2]&(-1>>>32-b^-1);break b}D[a+4>>2]=b}$=d+16|0;return}qa();T()}function Qb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=E[a+11|0]>>>7|0?D[a+4>>2]:E[a+11|0];if(d>>>0>>0){h=$-16|0;$=h;f=b-d|0;if(f){b=E[a+11|0]>>>7|0;g=b?D[a+4>>2]:E[a+11|0];i=g+f|0;b=b?(D[a+8>>2]&2147483647)-1|0:10;if(b-g>>>0>>0){a:{d=$-16|0;$=d;c=i-b|0;if(c>>>0<=-17-b>>>0){j=E[a+11|0]>>>7|0?D[a>>2]:a;b:{if(b>>>0<2147483623){D[d+8>>2]=b<<1;D[d+12>>2]=b+c;c=$-16|0;$=c;$=c+16|0;c=d+8|0;e=d+12|0;c=D[(G[e>>2]>2]?c:e)>>2];if(c>>>0>=11){e=c+16&-16;c=e-1|0;c=(c|0)==11?e:c}else{c=10}break b}c=-18}e=c+1|0;c=na(e);if(g){Xa(c,j,g)}if((b|0)!=10){ma(j)}D[a>>2]=c;D[a+8>>2]=e|-2147483648;$=d+16|0;break a}Aa();T()}}b=E[a+11|0]>>>7|0?D[a>>2]:a;d=g+b|0;if(f){pa(d,0,f)}c:{if(E[a+11|0]>>>7|0){D[a+4>>2]=i;break c}B[a+11|0]=i}B[h+15|0]=0;B[b+i|0]=E[h+15|0]}$=h+16|0;return}d=$-16|0;$=d;d:{if(E[a+11|0]>>>7|0){f=D[a>>2];B[d+15|0]=0;B[b+f|0]=E[d+15|0];D[a+4>>2]=b;break d}B[d+14|0]=0;B[a+b|0]=E[d+14|0];B[a+11|0]=b}$=d+16|0}function Sg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=D[a+12>>2];c=D[a+108>>2];e=D[c+80>>2];B[b+84|0]=0;f=D[b+68>>2];d=D[b+72>>2]-f>>2;a:{if(d>>>0>>0){xa(b+68|0,e-d|0,9156);c=D[a+108>>2];e=D[c+80>>2];break a}if(e>>>0>=d>>>0){break a}D[b+72>>2]=f+(e<<2)}k=D[c+96>>2];c=D[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=D[l>>2]+(J(c,3)<<2)|0;h=D[d>>2];if((h|0)==-1){break b}f=J(c,12)+k|0;g=D[f>>2];if(g>>>0>=e>>>0){break b}j=D[D[a+112>>2]+12>>2];i=D[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=D[b+68>>2];D[h+(g<<2)>>2]=i;g=D[d+4>>2];if((g|0)==-1){break b}i=D[f+4>>2];if(i>>>0>=e>>>0){break b}g=D[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}D[h+(i<<2)>>2]=g;d=D[d+8>>2];if((d|0)==-1){break b}f=D[f+8>>2];if(f>>>0>=e>>>0){break b}d=D[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}D[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Jg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=D[a+12>>2];c=D[a+68>>2];e=D[c+80>>2];B[b+84|0]=0;f=D[b+68>>2];d=D[b+72>>2]-f>>2;a:{if(d>>>0>>0){xa(b+68|0,e-d|0,9156);c=D[a+68>>2];e=D[c+80>>2];break a}if(e>>>0>=d>>>0){break a}D[b+72>>2]=f+(e<<2)}k=D[c+96>>2];c=D[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=D[l>>2]+(J(c,3)<<2)|0;h=D[d>>2];if((h|0)==-1){break b}f=J(c,12)+k|0;g=D[f>>2];if(g>>>0>=e>>>0){break b}j=D[D[a+72>>2]+12>>2];i=D[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=D[b+68>>2];D[h+(g<<2)>>2]=i;g=D[d+4>>2];if((g|0)==-1){break b}i=D[f+4>>2];if(i>>>0>=e>>>0){break b}g=D[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}D[h+(i<<2)>>2]=g;d=D[d+8>>2];if((d|0)==-1){break b}f=D[f+8>>2];if(f>>>0>=e>>>0){break b}d=D[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}D[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Rg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=$-16|0;$=g;b=D[a+4>>2];d=D[b>>2];a:{c=D[a+12>>2];c=D[c+28>>2]-D[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=D[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=D[b+4>>2];c=na(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){oa(c,d,e)}D[b+8>>2]=h;D[b+4>>2]=f;D[b>>2]=c;if(!d){break b}ma(d)}b=D[a+12>>2];d=D[b+28>>2];b=D[b+24>>2];D[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=D[c>>2];d=D[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){xa(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}D[a+100>>2]=e+(b<<2)}e=a+8|0;b=D[a+116>>2];d:{if(b){c=D[b>>2];if((c|0)==D[b+4>>2]){d=1;break d}b=0;while(1){d=ld(e,D[(b<<2)+c>>2]);if(!d){break d}f=D[a+116>>2];c=D[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=D[a+12>>2];a=D[a+4>>2]-D[a>>2]>>2;if(a>>>0<3){break d}a=(a>>>0)/3|0;b=0;while(1){d=ld(e,J(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}$=g+16|0;return d|0}ra(1326);T()}function Ka(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=$-16|0;$=g;e=D[b+20>>2];c=D[b+12>>2];d=D[b+16>>2];a:{if((e|0)>=(c|0)&d>>>0>=G[b+8>>2]|(c|0)<(e|0)){break a}B[a+12|0]=E[d+D[b>>2]|0];e=D[b+20>>2];c=D[b+16>>2]+1|0;e=c?e:e+1|0;D[b+16>>2]=c;D[b+20>>2]=e;if(!Ld(1,g+12|0,b)){break a}e=D[b+8>>2];h=D[b+16>>2];c=h;d=e-c|0;c=c>>>0>e>>>0;e=D[b+20>>2];f=D[b+12>>2]-(c+e|0)|0;c=D[g+12>>2];if((f|0)<=0&d>>>0>>0|(f|0)<0|(c|0)<=0){break a}d=h+D[b>>2]|0;D[a>>2]=d;k=a;f=c-1|0;i=f+d|0;j=E[i|0];b:{if(j>>>0<=63){D[a+4>>2]=f;a=E[i|0]&63;break b}c:{switch((j>>>6|0)-1|0){case 0:if(c>>>0<2){break a}D[a+4>>2]=c-2;d=(c+d|0)-2|0;a=E[d+1|0]<<8&16128|E[d|0];break b;case 1:break c;default:break a}}if(c>>>0<3){break a}D[a+4>>2]=c-3;d=(c+d|0)-3|0;a=E[d+2|0]<<16&4128768|E[d+1|0]<<8|E[d|0]}a=a+4096|0;D[k+8>>2]=a;if(a>>>0>1048575){break a}a=e;d=c+h|0;a=d>>>0>>0?a+1|0:a;D[b+16>>2]=d;D[b+20>>2]=a;l=1}$=g+16|0;return l}function od(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=D[a+12>>2];h=D[a+8>>2];d=f-h>>2;b=B[b+24|0];a:{if(d>>>0>>0){sa(a+8|0,b-d|0);h=D[a+8>>2];f=D[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;D[a+12>>2]=f}b=0;i=D[c+20>>2];e=D[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=D[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>G[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}oa(h,e+D[c>>2]|0,d);d=D[c+20>>2];e=f+D[c+16>>2]|0;d=e>>>0>>0?d+1|0:d;g=e;D[c+16>>2]=e;D[c+20>>2]=d;e=D[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>G[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+D[c>>2]|0;D[a+20>>2]=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);d=D[c+20>>2];g=D[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;D[c+16>>2]=e;D[c+20>>2]=f;e=D[c+12>>2];if((f|0)>=(e|0)&j>>>0>=G[c+8>>2]|(f|0)>(e|0)){break b}e=E[j+D[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;D[c+16>>2]=f;D[c+20>>2]=d;if(e-1>>>0>29){break b}D[a+4>>2]=e;b=1}return b|0}function Tc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=$-16|0;$=g;a:{b:{if(b){D[a+88>>2]=0;D[a+92>>2]=0;c=D[a+84>>2];D[a+84>>2]=0;if(c){ma(c)}D[a+76>>2]=0;D[a+80>>2]=0;c=D[a+72>>2];D[a+72>>2]=0;if(c){ma(c)}c=D[b>>2];d=D[b+4>>2];B[g+15|0]=0;Ea(a,d-c>>2,g+15|0);c=D[b+28>>2];d=D[b+24>>2];B[g+14|0]=0;Ea(a+12|0,c-d>>2,g+14|0);Ub(a+28|0,D[b+4>>2]-D[b>>2]>>2,10316);d=D[b+28>>2]-D[b+24>>2]|0;e=d>>2;c=D[a+52>>2];c:{if(e>>>0<=D[a+60>>2]-c>>2>>>0){break c}if((d|0)<0){break b}f=D[a+56>>2];d=na(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){oa(d,c,e)}D[a+60>>2]=h;D[a+56>>2]=f;D[a+52>>2]=d;if(!c){break c}ma(c)}d=D[b+28>>2]-D[b+24>>2]|0;e=d>>2;c=D[a+40>>2];d:{if(e>>>0<=D[a+48>>2]-c>>2>>>0){break d}if((d|0)<0){break a}f=D[a+44>>2];d=na(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){oa(d,c,e)}D[a+48>>2]=h;D[a+44>>2]=f;D[a+40>>2]=d;if(!c){break d}ma(c)}B[a+24|0]=1;D[a+64>>2]=b}$=g+16|0;return}ra(1326);T()}ra(1326);T()}function Eg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=D[a+12>>2];c=D[a+68>>2];e=D[c+80>>2];B[b+84|0]=0;g=D[b+68>>2];d=D[b+72>>2]-g>>2;a:{if(d>>>0>>0){xa(b+68|0,e-d|0,9156);c=D[a+68>>2];e=D[c+80>>2];break a}if(e>>>0>=d>>>0){break a}D[b+72>>2]=g+(e<<2)}k=D[c+96>>2];c=D[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;l=c>>>0>1?c:1;m=D[h+28>>2];c=0;b:{while(1){d=(J(c,3)<<2)+m|0;g=D[d>>2];if((g|0)==-1){break b}h=J(c,12)+k|0;i=D[h>>2];if(i>>>0>=e>>>0){break b}f=g<<2;g=D[D[a+72>>2]+12>>2];f=D[f+g>>2];if(f>>>0>=e>>>0){break b}j=i<<2;i=D[b+68>>2];D[j+i>>2]=f;f=D[d+4>>2];if((f|0)==-1){break b}j=D[h+4>>2];if(j>>>0>=e>>>0){break b}f=D[g+(f<<2)>>2];if(f>>>0>=e>>>0){break b}D[i+(j<<2)>>2]=f;d=D[d+8>>2];if((d|0)==-1){break b}h=D[h+8>>2];if(h>>>0>=e>>>0){break b}d=D[g+(d<<2)>>2];if(d>>>0>=e>>>0){break b}D[i+(h<<2)>>2]=d;c=c+1|0;if((l|0)!=(c|0)){continue}break}return 1}return 0}function xc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=K(0),f=K(0),g=K(0),h=K(0),i=K(0),j=0,k=K(0),l=K(0),m=K(0),n=K(0),o=0;a:{if(D[c+28>>2]!=9|E[c+24|0]!=3){break a}a=D[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=D[c+80>>2];if(!j){break a}k=K(K(2)/K((1<>2]>>2]+D[c+48>>2]|0;a=D[D[b>>2]>>2]+D[b+48>>2]|0;b=0;while(1){g=K(0);l=K(0);m=K(0);e=K(K(K(D[a>>2])*k)+K(-1));f=K(K(K(D[a+4>>2])*k)+K(-1));i=K(K(K(1)-K(L(e)))-K(L(f)));h=K(O(K(-i),K(0)));n=K(-h);f=K(f+(f>>8;B[c+10|0]=d>>>16;B[c+11|0]=d>>>24;d=(v(l),x(2));B[c+4|0]=d;B[c+5|0]=d>>>8;B[c+6|0]=d>>>16;B[c+7|0]=d>>>24;d=(v(g),x(2));B[c|0]=d;B[c+1|0]=d>>>8;B[c+2|0]=d>>>16;B[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function Dc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+H[b>>2];k=+H[b+4>>2];l=+H[b+8>>2];g=L(j)+L(k)+L(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=D[a+16>>2];l=+(h|0);g=P(j*l+.5);b:{if(L(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=f+m^f;g=P(k*l+.5);c:{if(L(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+(f+b^b)|0)|0;i=(b|0)<0?0:b;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=D[a+8>>2];e=f+h|0;break d}b=f>>31;b=b+f^b;a=D[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}f=(a|0)!=(e|0);if(!(b|f)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((b|0)>=(h|0)|f)){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}D[c>>2]=a;D[d>>2]=b}function Rc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=D[a>>2];c=g+(b>>>3&536870908)|0;D[c>>2]=D[c>>2]|1<>2];e=(b|0)==-1;d=-1;a:{if(e){break a}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;d=-1;if((c|0)==-1){break a}d=D[D[f>>2]+(c<<2)>>2]}c=D[a+12>>2];h=(d>>>3&536870908)+c|0;D[h>>2]=D[h>>2]|1<>>0)%3|0){e=b-1|0;break e}e=b+2|0;d=-1;if((e|0)==-1){break d}}d=D[D[f>>2]+(e<<2)>>2]}e=(d>>>3&536870908)+c|0;D[e>>2]=D[e>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}B[a+24|0]=0;a=(b>>>3&536870908)+g|0;D[a>>2]=D[a>>2]|1<>>0)%3|0?a:b-2|0;if((a|0)!=-1){d=D[D[f>>2]+(a<<2)>>2]}a=c+(d>>>3&536870908)|0;D[a>>2]=D[a>>2]|1<>>0)%3|0){b=b-1|0;break g}b=b+2|0;a=-1;if((b|0)==-1){break f}}a=D[D[f>>2]+(b<<2)>>2]}b=1<>>3&536870908)|0;c=D[a>>2];break c}a=c+536870908|0;b=D[c+536870908>>2];c=-2147483648}D[a>>2]=b|c}}function hc(a,b){var c=0,d=0;c=D[b+8>>2];D[a+4>>2]=D[b+4>>2];D[a+8>>2]=c;D[a+20>>2]=D[b+20>>2];c=D[b+16>>2];D[a+12>>2]=D[b+12>>2];D[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=D[b+28>>2];if(c){c:{if(D[a+32>>2]<<5>>>0>=c>>>0){d=D[a+24>>2];break c}d=D[a+24>>2];if(d){ma(d);D[a+32>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;c=D[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=na(c<<2);D[a+32>>2]=c;D[a+28>>2]=0;D[a+24>>2]=d;c=D[b+28>>2]}Na(d,D[b+24>>2],(c-1>>>3&536870908)+4|0);c=D[b+28>>2]}else{c=0}D[a+28>>2]=c;c=D[b+40>>2];if(c){d:{if(D[a+44>>2]<<5>>>0>=c>>>0){d=D[a+36>>2];break d}d=D[a+36>>2];if(d){ma(d);D[a+44>>2]=0;D[a+36>>2]=0;D[a+40>>2]=0;c=D[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=na(c<<2);D[a+44>>2]=c;D[a+40>>2]=0;D[a+36>>2]=d;c=D[b+40>>2]}Na(d,D[b+36>>2],(c-1>>>3&536870908)+4|0);b=D[b+40>>2]}else{b=0}D[a+40>>2]=b}return}qa();T()}qa();T()}function Hd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=$-16|0;$=g;a:{if(!Oa(1,g+8|0,b)){break a}c=D[b+8>>2];e=D[b+16>>2];h=D[g+12>>2];d=D[b+20>>2];f=D[b+12>>2]-(d+(c>>>0>>0)|0)|0;i=c-e|0;c=D[g+8>>2];if((h|0)==(f|0)&i>>>0>>0|f>>>0>>0){break a}d=d+h|0;f=c+e|0;d=f>>>0>>0?d+1|0:d;D[b+16>>2]=f;D[b+20>>2]=d;if((c|0)<=0){break a}d=e+D[b>>2]|0;D[a+40>>2]=d;h=a;f=c-1|0;e=d+f|0;b=E[e|0];b:{if(b>>>0<=63){D[a+44>>2]=f;a=E[e|0]&63;break b}c:{switch((b>>>6|0)-1|0){case 0:if(c>>>0<2){break a}D[a+44>>2]=c-2;b=(c+d|0)-2|0;a=E[b+1|0]<<8&16128|E[b|0];break b;case 1:if(c>>>0<3){break a}D[a+44>>2]=c-3;b=(c+d|0)-3|0;a=E[b+2|0]<<16&4128768|E[b+1|0]<<8|E[b|0];break b;default:break c}}D[a+44>>2]=c-4;b=(c+d|0)-4|0;a=E[b+2|0]<<16|E[b+3|0]<<24&1056964608|E[b+1|0]<<8|E[b|0]}a=a+16384|0;D[h+48>>2]=a;j=a>>>0<4194304}$=g+16|0;return j}function Ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=$+-64|0;$=f;d=1;a:{if(Ja(a,b,0)){break a}d=0;if(!b){break a}d=$+-64|0;$=d;e=D[b>>2];g=D[e-4>>2];h=D[e-8>>2];D[d+20>>2]=0;D[d+16>>2]=11220;D[d+12>>2]=b;D[d+8>>2]=11268;e=0;pa(d+24|0,0,39);b=b+h|0;b:{if(Ja(g,11268,0)){D[d+56>>2]=1;ba[D[D[g>>2]+20>>2]](g,d+8|0,b,b,1,0);e=D[d+32>>2]==1?b:0;break b}ba[D[D[g>>2]+24>>2]](g,d+8|0,b,1,0);c:{switch(D[d+44>>2]){case 0:e=D[d+48>>2]==1?D[d+36>>2]==1?D[d+40>>2]==1?D[d+28>>2]:0:0:0;break b;case 1:break c;default:break b}}if(D[d+32>>2]!=1){if(D[d+48>>2]|D[d+36>>2]!=1|D[d+40>>2]!=1){break b}}e=D[d+24>>2]}$=d- -64|0;d=0;if(!e){break a}b=f+8|0;pa(b|4,0,52);D[f+56>>2]=1;D[f+20>>2]=-1;D[f+16>>2]=a;D[f+8>>2]=e;ba[D[D[e>>2]+28>>2]](e,b,D[c>>2],1);a=D[f+32>>2];if((a|0)==1){D[c>>2]=D[f+24>>2]}d=(a|0)==1}$=f- -64|0;return d|0}function Nf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{a=$-32|0;$=a;e=za(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=na(g);D[a+24>>2]=g|-2147483648;D[a+16>>2]=f;D[a+20>>2]=e;break c}B[a+27|0]=e;f=a+16|0;if(!e){break b}}oa(f,c,e)}B[e+f|0]=0;D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;d:{c=_a(b,a+16|0);if((c|0)==(b+4|0)){break d}b=D[c+28>>2];f=D[c+32>>2];if((b|0)==(f|0)){break d}b=f-b|0;if(b&3){break d}e=b>>>2|0;f=D[a+4>>2];b=D[a>>2];g=f-b>>2;e:{if(e>>>0>g>>>0){sa(a,e-g|0);b=D[a>>2];f=D[a+4>>2];break e}if(e>>>0>=g>>>0){break e}f=(e<<2)+b|0;D[a+4>>2]=f}if((b|0)!=(f|0)){e=b;b=D[c+28>>2];oa(e,b,D[c+32>>2]-b|0);break d}ua();T()}b=D[d>>2];if(b){D[d+4>>2]=b;ma(b)}D[d>>2]=D[a>>2];D[d+4>>2]=D[a+4>>2];D[d+8>>2]=D[a+8>>2];if(B[a+27|0]<0){ma(D[a+16>>2])}$=a+32|0;break a}Aa();T()}}function kc(a){var b=0,c=0,d=0;b=D[a+8>>2];d=D[a>>2];a:{if(E[a+12|0]){b:{c:{d:{e:{if((b|0)==-1){break e}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break e}b=D[D[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}D[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;D[a+8>>2]=b;if((b|0)!=-1){break b}}c=D[a+4>>2];b=-1;f:{if((c|0)==-1){break f}g:{if((c>>>0)%3|0){c=c-1|0;break g}c=c+2|0;b=-1;if((c|0)==-1){break f}}c=D[D[d+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break f}b=c-1|0;if((c>>>0)%3|0){break f}b=c+2|0}B[a+12|0]=0;D[a+8>>2]=b;return}if((b|0)!=D[a+4>>2]){break a}D[a+8>>2]=-1;return}c=-1;h:{if((b|0)==-1){break h}i:{if((b>>>0)%3|0){b=b-1|0;break i}b=b+2|0;c=-1;if((b|0)==-1){break h}}b=D[D[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break h}c=b-1|0;if((b>>>0)%3|0){break h}c=b+2|0}D[a+8>>2]=c}}function Jd(a){var b=0,c=0,d=0;b=na(32);c=E[1619]|E[1620]<<8;B[b+24|0]=c;B[b+25|0]=c>>>8;c=E[1615]|E[1616]<<8|(E[1617]<<16|E[1618]<<24);d=E[1611]|E[1612]<<8|(E[1613]<<16|E[1614]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1607]|E[1608]<<8|(E[1609]<<16|E[1610]<<24);d=E[1603]|E[1604]<<8|(E[1605]<<16|E[1606]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1599]|E[1600]<<8|(E[1601]<<16|E[1602]<<24);d=E[1595]|E[1596]<<8|(E[1597]<<16|E[1598]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+26|0]=0;D[a>>2]=-1;ta(a+4|0,b,26);ma(b)}function Pf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=$-16|0;$=d;a:{e=za(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=na(f);D[d+8>>2]=f|-2147483648;D[d>>2]=a;D[d+4>>2]=e;break c}B[d+11|0]=e;a=d;if(!e){break b}}oa(a,c,e)}B[a+e|0]=0;c=E[d+11|0];e=c<<24>>24;f=D[d>>2];b=D[b+4>>2];a=0;d:{if(!b){break d}a=c;c=(e|0)<0;a=c?D[d+4>>2]:a;j=c?f:d;while(1){c=E[b+27|0];g=c<<24>>24<0;c=g?D[b+20>>2]:c;k=c>>>0>>0;e:{f:{i=k?c:a;g:{if(i){h=b+16|0;g=g?D[h>>2]:h;h=va(j,g,i);h:{if(!h){if(a>>>0>=c>>>0){break h}break e}if((h|0)<0){break e}}c=va(g,j,i);if(!c){break g}if((c|0)<0){break f}a=1;break d}if(a>>>0>>0){break e}}if(k){break f}a=1;break d}b=b+4|0}b=D[b>>2];if(b){continue}break}a=0}if((e|0)<0){ma(f)}$=d+16|0;break a}Aa();T()}return a|0}function Na(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return oa(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}B[d|0]=E[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;B[d|0]=E[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;D[c+a>>2]=D[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;B[c+a|0]=E[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){D[d>>2]=D[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){B[d|0]=E[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function Oc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=$-16|0;$=d;g=D[a+24>>2];l=D[a+28>>2];a:{if((g|0)!=(l|0)){while(1){D[d+8>>2]=0;D[d>>2]=0;D[d+4>>2]=0;e=Nc(D[g>>2],b,d);a=E[d+11|0];i=a<<24>>24;j=3;b:{c:{d:{e:{if(!e){break e}j=0;e=E[c+11|0];f=e<<24>>24;k=(i|0)<0?D[d+4>>2]:a;if((k|0)!=(((f|0)<0?D[c+4>>2]:e)|0)){break e}h=(f|0)<0?D[c>>2]:c;f=D[d>>2];e=(i|0)<0;f:{if(!e){if(!i){break f}e=d;if(E[h|0]!=(f&255)){break b}while(1){a=a-1|0;if(!a){break f}f=E[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==E[e|0]){continue}break}break e}if(!k){break f}if(va(e?f:d,h,k)){break d}}m=D[g>>2];j=1}if((i|0)>=0){break c}}ma(D[d>>2])}switch(j|0){case 0:case 3:break b;default:break a}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}m=0}$=d+16|0;return m}function Ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=D[a+8>>2];c=D[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=pa(c,0,b)+b|0}D[a+4>>2]=c;return}a:{b:{c:{g=D[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>2>>>0<536870911?e>>>0>h>>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}i=na(e<<2)}d=(f<<2)+i|0;f=b<<2;b=pa(d,0,f);f=b+f|0;e=(e<<2)+i|0;if((c|0)==(g|0)){break b}while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;d=d-4|0;D[d>>2]=b;if((c|0)!=(g|0)){continue}break}D[a+8>>2]=e;b=D[a+4>>2];D[a+4>>2]=f;c=D[a>>2];D[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b-4|0;a=D[b>>2];D[b>>2]=0;if(a){ba[D[D[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}qa();T()}ra(1326);T()}D[a+8>>2]=e;D[a+4>>2]=f;D[a>>2]=b}if(c){ma(c)}}function Sd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=D[b+12>>2];g=d;c=D[b+20>>2];e=c;f=D[b+16>>2];h=f+4|0;c=h>>>0<4?c+1|0:c;i=D[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}j=D[b>>2];d=j+f|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=h;D[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>i>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break a}c=h+j|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[b+16>>2]=f;D[b+20>>2]=e;if((c|0)<(d|0)){break a}D[a+16>>2]=c;D[a+12>>2]=d;g=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!g&c>>>0>2147483646|g){break a}c=c+1|0;D[a+20>>2]=c;d=c>>>1|0;D[a+24>>2]=d;D[a+28>>2]=0-d;if(!(c&1)){D[a+24>>2]=d-1}k=Ka(a+112|0,b)}return k|0}function pa(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}B[a|0]=b;e=a+c|0;B[e-1|0]=b;if(c>>>0<3){break a}B[a+2|0]=b;B[a+1|0]=b;B[e-3|0]=b;B[e-2|0]=b;if(c>>>0<7){break a}B[a+3|0]=b;B[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=J(b&255,16843009);D[f>>2]=d;b=c-e&-4;c=b+f|0;D[c-4>>2]=d;if(b>>>0<9){break a}D[f+8>>2]=d;D[f+4>>2]=d;D[c-8>>2]=d;D[c-12>>2]=d;if(b>>>0<25){break a}D[f+24>>2]=d;D[f+20>>2]=d;D[f+16>>2]=d;D[f+12>>2]=d;D[c-16>>2]=d;D[c-20>>2]=d;D[c-24>>2]=d;D[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=$h(d,0,1,1);e=aa;b=b+f|0;while(1){D[b+24>>2]=d;D[b+28>>2]=e;D[b+16>>2]=d;D[b+20>>2]=e;D[b+8>>2]=d;D[b+12>>2]=e;D[b>>2]=d;D[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function Qc(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;e=-1;a:{b:{if((b|0)==-1){break b}g=1;f=D[D[D[a+4>>2]+12>>2]+(b<<2)>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)>=0){e=(c>>>0)/3|0;e=D[(D[D[a>>2]+96>>2]+J(e,12)|0)+(c-J(e,3)<<2)>>2]}c:{if((f|0)==-1){break c}g=0;c=((f>>>0)%3|0?-1:2)+f|0;if((c|0)<0){break c}d=(c>>>0)/3|0;d=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(c-J(d,3)<<2)>>2]}c=-1;if((d|0)!=(e|0)){break a}e=-1;d:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){d=(b>>>0)/3|0;d=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(b-J(d,3)<<2)>>2];if(g){break b}break d}d=-1;if(!g){break d}break b}b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)<0){break b}c=D[D[a>>2]+96>>2];a=(b>>>0)/3|0;e=D[(c+J(a,12)|0)+(b-J(a,3)<<2)>>2]}c=(d|0)==(e|0)?f:-1}return c}function de(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=D[b+12>>2];h=d;c=D[b+20>>2];e=c;f=D[b+16>>2];g=f+4|0;c=g>>>0<4?c+1|0:c;i=D[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}j=D[b>>2];d=j+f|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=g;D[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>i>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=g+j|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[b+16>>2]=f;D[b+20>>2]=e;if((c|0)<(d|0)){break a}D[a+16>>2]=c;D[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}k=1;b=c+1|0;D[a+20>>2]=b;c=b>>>1|0;D[a+24>>2]=c;D[a+28>>2]=0-c;if(b&1){break a}D[a+24>>2]=c-1}return k|0}function Dg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=D[a+4>>2];d=D[b>>2];a:{c=D[a+12>>2];c=D[c+56>>2]-D[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=D[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=D[b+4>>2];c=na(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){oa(c,d,e)}D[b+8>>2]=g;D[b+4>>2]=f;D[b>>2]=c;if(!d){break b}ma(d)}e=a+8|0;b=D[a+76>>2];c:{if(b){d=D[b>>2];if((d|0)==D[b+4>>2]){return 1}b=0;while(1){c=jd(e,D[(b<<2)+d>>2]);if(!c){break c}f=D[a+76>>2];d=D[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=D[D[a+12>>2]+64>>2];a=D[a+4>>2]-D[a>>2]>>2;if(a>>>0<3){break c}a=(a>>>0)/3|0;b=0;while(1){c=jd(e,J(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}ra(1326);T()}function Ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=$+-64|0;$=f;e=f+8|0;C[e+38>>1]=0;D[e>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;B[e+29|0]=0;B[e+30|0]=0;B[e+31|0]=0;B[e+32|0]=0;B[e+33|0]=0;B[e+34|0]=0;B[e+35|0]=0;B[e+36|0]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e>>2]=b;D[e+8>>2]=c;D[e+12>>2]=0;b=f+48|0;Kd(b,a,e,d);D[a+24>>2]=D[f+48>>2];c=a+24|0;a:{if((c|0)==(b|0)){break a}e=f+48|4;b=E[f+63|0];d=b<<24>>24;g=a+28|0;if(B[g+11|0]>=0){if((d|0)>=0){a=D[e+4>>2];D[g>>2]=D[e>>2];D[g+4>>2]=a;D[g+8>>2]=D[e+8>>2];break a}sb(g,D[f+52>>2],D[f+56>>2]);break a}a=(d|0)<0;tb(g,a?D[f+52>>2]:e,a?D[f+56>>2]:b)}if(B[f+63|0]<0){ma(D[f+52>>2])}$=f- -64|0;return c|0}function Ig(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=D[a+4>>2];d=D[b>>2];a:{c=D[a+12>>2];c=D[c+28>>2]-D[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=D[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=D[b+4>>2];c=na(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){oa(c,d,e)}D[b+8>>2]=g;D[b+4>>2]=f;D[b>>2]=c;if(!d){break b}ma(d)}e=a+8|0;b=D[a+76>>2];c:{if(b){d=D[b>>2];if((d|0)==D[b+4>>2]){return 1}b=0;while(1){c=kd(e,D[(b<<2)+d>>2]);if(!c){break c}f=D[a+76>>2];d=D[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=D[a+12>>2];a=D[a+4>>2]-D[a>>2]>>2;if(a>>>0<3){break c}a=(a>>>0)/3|0;b=0;while(1){c=kd(e,J(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}ra(1326);T()}function Gf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;d=$+-64|0;$=d;C[d+46>>1]=0;D[d+8>>2]=0;D[d+16>>2]=0;D[d+20>>2]=0;D[d+24>>2]=0;D[d+28>>2]=0;D[d+32>>2]=0;D[d+36>>2]=0;B[d+37|0]=0;B[d+38|0]=0;B[d+39|0]=0;B[d+40|0]=0;B[d+41|0]=0;B[d+42|0]=0;B[d+43|0]=0;B[d+44|0]=0;D[d+24>>2]=0;D[d+28>>2]=0;D[d+8>>2]=b;D[d+16>>2]=c;D[d+20>>2]=0;b=d+48|0;Jd(b);D[a+24>>2]=D[d+48>>2];e=a+24|0;a:{if((b|0)==(e|0)){break a}b=d+48|4;f=E[d+63|0];c=f<<24>>24;a=a+28|0;if(B[a+11|0]>=0){if((c|0)>=0){c=D[b+4>>2];D[a>>2]=D[b>>2];D[a+4>>2]=c;D[a+8>>2]=D[b+8>>2];break a}sb(a,D[d+52>>2],D[d+56>>2]);break a}g=a;a=(c|0)<0;tb(g,a?D[d+52>>2]:b,a?D[d+56>>2]:f)}if(B[d+63|0]<0){ma(D[d+52>>2])}$=d- -64|0;return e|0}function we(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=D[b>>2];b=D[b+4>>2];f=D[D[a+8>>2]+40>>2];m=na((f|0)>=0?f:-1);g=1;h=b-d|0;a:{if((h|0)<=0){break a}b=0;g=0;d=0+D[c+20>>2]|0;i=D[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;e=D[c+12>>2];if(j>>>0>G[c+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break a}k=h>>2;g=(k|0)>1?k:1;while(1){b:{e=oa(m,i+D[c>>2]|0,f);D[c+16>>2]=j;D[c+20>>2]=d;oa(D[D[D[a+8>>2]+64>>2]>>2]+b|0,e,f);l=l+1|0;if((g|0)==(l|0)){break b}b=b+f|0;d=n+D[c+20>>2]|0;i=D[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;h=e;e=D[c+12>>2];if((e|0)>=(d|0)&G[c+8>>2]>=h>>>0|(d|0)<(e|0)){continue}}break}g=(l|0)>=(k|0)}ma(m);return g|0}function ne(a,b){a=a|0;b=b|0;a=0;a:{switch(b|0){case 0:a=na(20);D[a+12>>2]=-1;D[a+16>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1948;return a|0;case 1:a=na(24);D[a+12>>2]=-1;D[a+16>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1948;D[a+20>>2]=0;D[a>>2]=2164;return a|0;case 2:a=na(48);D[a+12>>2]=-1;D[a+16>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1948;D[a+20>>2]=0;D[a>>2]=2164;D[a+32>>2]=0;D[a+36>>2]=0;D[a+28>>2]=-1;D[a+24>>2]=1140;D[a>>2]=7976;D[a+40>>2]=0;D[a+44>>2]=0;return a|0;case 3:a=na(32);D[a+12>>2]=-1;D[a+16>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1948;D[a+20>>2]=0;D[a>>2]=2164;D[a+28>>2]=-1;D[a+24>>2]=1032;D[a>>2]=5840;break;default:break a}}return a|0}function rh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;D[b>>2]=1;f=b+8|0;c=D[b+8>>2];d=D[b+12>>2]-c|0;if(d>>>0<=4294967291){Eb(f,d+4|0);c=D[f>>2]}c=c+d|0;d=D[a+4>>2];B[c|0]=d;B[c+1|0]=d>>>8;B[c+2|0]=d>>>16;B[c+3|0]=d>>>24;c=D[a+8>>2];if((c|0)!=D[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=D[b+8>>2];e=D[b+12>>2]-c|0;if(e>>>0<=4294967291){Eb(f,e+4|0);c=D[f>>2]}c=c+e|0;e=D[g>>2];B[c|0]=e;B[c+1|0]=e>>>8;B[c+2|0]=e>>>16;B[c+3|0]=e>>>24;d=d+1|0;c=D[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=D[b+12>>2];b=D[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){Eb(f,c+4|0);b=D[f>>2]}b=b+c|0;a=D[a+20>>2];B[b|0]=a;B[b+1|0]=a>>>8;B[b+2|0]=a>>>16;B[b+3|0]=a>>>24}function Cf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=$-32|0;$=e;a:{b:{f=za(c);if(f>>>0<4294967280){c:{d:{if(f>>>0>=11){g=f+16&-16;a=na(g);D[e+24>>2]=g|-2147483648;D[e+16>>2]=a;D[e+20>>2]=f;break d}B[e+27|0]=f;a=e+16|0;if(!f){break c}}oa(a,c,f)}B[a+f|0]=0;c=za(d);if(c>>>0>=4294967280){break b}e:{f:{if(c>>>0>=11){f=c+16&-16;a=na(f);D[e+8>>2]=f|-2147483648;D[e>>2]=a;D[e+4>>2]=c;break f}B[e+11|0]=c;a=e;if(!c){break e}}oa(a,d,c)}B[a+c|0]=0;c=D[b+4>>2];a=-1;g:{if(!c){break g}c=Oc(c,e+16|0,e);a=-1;if(!c){break g}a=Kc(b,D[c+24>>2])}if(B[e+11|0]<0){ma(D[e>>2])}if(B[e+27|0]<0){ma(D[e+16>>2])}$=e+32|0;break a}Aa();T()}Aa();T()}return a|0}function Ea(a,b,c){var d=0,e=0,f=0,g=0;e=$-16|0;$=e;D[a+4>>2]=0;a:{b:{if(!b){break b}g=D[a+8>>2];d=g<<5;c:{if(d>>>0>=b>>>0){D[a+4>>2]=b;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=b+31&-32;d=g<<6;d=d>>>0>>0?f:d}else{d=2147483647}Ta(e,d);f=D[a>>2];D[a>>2]=D[e>>2];D[e>>2]=f;d=D[a+4>>2];D[a+4>>2]=b;D[e+4>>2]=d;d=D[a+8>>2];D[a+8>>2]=D[e+8>>2];D[e+8>>2]=d;if(!f){break c}ma(f)}f=b>>>5|0;d=f<<2;a=D[a>>2];if(E[c|0]){a=pa(a,255,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;D[a>>2]=D[a>>2]|-1>>>32-b;break b}a=pa(a,0,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;D[a>>2]=D[a>>2]&(-1>>>32-b^-1)}$=e+16|0;return}qa();T()}function ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=D[c+12>>2];d=h;e=D[c+20>>2];i=D[c+8>>2];f=D[c+16>>2];a:{if((d|0)<=(e|0)&i>>>0<=f>>>0|(d|0)<(e|0)){break a}j=D[c>>2];k=B[j+f|0];d=e;g=f+1|0;d=g?d:d+1|0;D[c+16>>2]=g;D[c+20>>2]=d;b:{if((k|0)==-2){break b}if((d|0)>=(h|0)&g>>>0>=i>>>0|(d|0)>(h|0)){break a}d=B[g+j|0];f=f+2|0;e=f>>>0<2?e+1|0:e;D[c+16>>2]=f;D[c+20>>2]=e;if((d-4&255)>>>0<251){break a}e=ba[D[D[a>>2]+40>>2]](a,k,d)|0;d=D[a+20>>2];D[a+20>>2]=e;if(!d){break b}ba[D[D[d>>2]+4>>2]](d)}d=D[a+20>>2];if(d){if(!(ba[D[D[a>>2]+28>>2]](a,d)|0)){break a}}l=ba[D[D[a>>2]+36>>2]](a,b,c)|0}return l|0}function Ah(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=$-32|0;$=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=pa(na(h),0,h);g=D[b>>2];i=D[b+4>>2];k=D[h+4>>2];D[f+16>>2]=D[h>>2];D[f+20>>2]=k;D[f+8>>2]=g;D[f+12>>2]=i;i=a+8|0;Ib(f+24|0,i,f+16|0,f+8|0);D[c>>2]=D[f+24>>2];D[c+4>>2]=D[f+28>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){g=a<<2;j=g+b|0;m=D[j>>2];j=D[j+4>>2];g=c+g|0;l=g+k|0;n=D[l+4>>2];D[f+16>>2]=D[l>>2];D[f+20>>2]=n;D[f+8>>2]=m;D[f+12>>2]=j;Ib(f+24|0,i,f+16|0,f+8|0);D[g>>2]=D[f+24>>2];D[g+4>>2]=D[f+28>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}ma(h);$=f+32|0;return 1}function fb(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=D[a+8>>2];e=D[a>>2];if(g>>>0<=d-e>>2>>>0){f=D[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){D[e>>2]=D[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>0){f=oa(f,d,b)+b|0}D[a+4>>2]=f;return}D[a+4>>2]=e;return}if(e){D[a+4>>2]=e;ma(e);D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>2>>>0<536870911?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=na(e);D[a>>2]=c;D[a+4>>2]=c;D[a+8>>2]=c+e;if(f){c=oa(c,b,f)+f|0}D[a+4>>2]=c;return}qa();T()}function Md(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=D[b+12>>2];c=D[b+20>>2];f=c;g=D[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=D[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}d=g+D[b>>2]|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=i;D[b+20>>2]=c;c=f;f=g+8|0;c=f>>>0<8?c+1|0:c;if(f>>>0>h>>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}D[b+16>>2]=f;D[b+20>>2]=c;if(!(d&1)){break a}c=M(d)^31;if(c-30>>>0<4294967267){break a}D[a+8>>2]=c+1;e=-2<>2]=c;D[a+12>>2]=e^-1;D[a+24>>2]=(c|0)/2;H[a+20>>2]=K(2)/K(c|0);j=Ka(a+96|0,b)}return j|0}function rd(a){var b=0,c=0,d=0,e=0;c=1;d=D[a+140>>2];a:{if((d|0)<=0){break a}b=d<<4;c=na((d|0)!=(d&268435455)?-1:b|4);D[c>>2]=d;c=c+4|0;d=c+b|0;b=c;while(1){D[b>>2]=0;D[b+4>>2]=0;B[b+5|0]=0;B[b+6|0]=0;B[b+7|0]=0;B[b+8|0]=0;B[b+9|0]=0;B[b+10|0]=0;B[b+11|0]=0;B[b+12|0]=0;b=b+16|0;if((d|0)!=(b|0)){continue}break}e=D[a+136>>2];D[a+136>>2]=c;if(e){d=e-4|0;c=D[d>>2];if(c){b=(c<<4)+e|0;while(1){b=b-16|0;if((e|0)!=(b|0)){continue}break}}ma(d)}c=1;if(D[a+140>>2]<=0){break a}b=0;while(1){c=Ka(D[a+136>>2]+(b<<4)|0,a);if(!c){break a}b=b+1|0;if((b|0)>2]){continue}break}}return c}function Mf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a=$-32|0;$=a;D[a+24>>2]=0;D[a+28>>2]=0;a:{d=za(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=na(f);D[a+16>>2]=f|-2147483648;D[a+8>>2]=e;D[a+12>>2]=d;break c}B[a+19|0]=d;e=a+8|0;if(!d){break b}}oa(e,c,d)}B[d+e|0]=0;c=b+4|0;b=_a(b,a+8|0);d:{if((c|0)==(b|0)){break d}c=D[b+32>>2];b=D[b+28>>2];if((c-b|0)!=8){break d}c=E[b+4|0]|E[b+5|0]<<8|(E[b+6|0]<<16|E[b+7|0]<<24);D[a+24>>2]=E[b|0]|E[b+1|0]<<8|(E[b+2|0]<<16|E[b+3|0]<<24);D[a+28>>2]=c}g=I[a+24>>3];if(B[a+19|0]<0){ma(D[a+8>>2])}$=a+32|0;break a}Aa();T()}return+g}function Yb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(D[a+64>>2]){break a}c=na(32);D[c+16>>2]=0;D[c+20>>2]=0;D[c+8>>2]=0;D[c>>2]=0;D[c+4>>2]=0;D[c+24>>2]=0;D[c+28>>2]=0;d=D[a+64>>2];D[a+64>>2]=c;if(!d){break a}c=D[d>>2];if(c){D[d+4>>2]=c;ma(c)}ma(d)}e=D[a+64>>2];c=D[a+28>>2]-1|0;if(c>>>0<=10){d=D[(c<<2)+10180>>2]}else{d=-1}c=J(d,B[a+24|0]);d=c;g=c>>31;e=id(e,0,$h(c,g,b,0),aa);if(e){c=D[a+64>>2];D[a>>2]=c;f=D[c+20>>2];D[a+8>>2]=D[c+16>>2];D[a+12>>2]=f;f=D[c+24>>2];c=D[c+28>>2];D[a+48>>2]=0;D[a+52>>2]=0;D[a+40>>2]=d;D[a+44>>2]=g;D[a+16>>2]=f;D[a+20>>2]=c;D[a+80>>2]=b}return e}function Eh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=D[b+12>>2];c=D[b+20>>2];e=c;g=D[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=D[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}d=g+D[b>>2]|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=i;D[b+20>>2]=c;c=e;e=g+8|0;c=e>>>0<8?c+1|0:c;if(e>>>0>h>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}D[b+16>>2]=e;D[b+20>>2]=c;if(!(d&1)){break a}b=M(d)^31;if(b-30>>>0<4294967267){break a}j=1;D[a+8>>2]=b+1;c=-2<>2]=b;D[a+12>>2]=c^-1;D[a+24>>2]=(b|0)/2;H[a+20>>2]=K(2)/K(b|0)}return j|0}function Id(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+4|0;a:{a=D[a+4>>2];if(a){e=E[c+11|0];d=e<<24>>24<0;i=d?D[c>>2]:c;e=d?D[c+4>>2]:e;while(1){c=E[a+27|0];d=c<<24>>24<0;c=d?D[a+20>>2]:c;j=c>>>0>>0;b:{c:{d:{e:{f:{h=j?c:e;g:{if(h){g=a+16|0;d=d?D[g>>2]:g;g=va(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>=0){break f}break g}if(c>>>0<=e>>>0){break e}}c=D[a>>2];if(c){break b}D[b>>2]=a;return a}c=va(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>=0){break a}}f=a+4|0;c=D[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}D[b>>2]=f;return f}D[b>>2]=a;return f}function Zb(a,b){var c=0;c=D[b+4>>2];D[a>>2]=D[b>>2];D[a+4>>2]=c;c=D[b+60>>2];D[a+56>>2]=D[b+56>>2];D[a+60>>2]=c;c=D[b+52>>2];D[a+48>>2]=D[b+48>>2];D[a+52>>2]=c;c=D[b+44>>2];D[a+40>>2]=D[b+40>>2];D[a+44>>2]=c;c=D[b+36>>2];D[a+32>>2]=D[b+32>>2];D[a+36>>2]=c;c=D[b+28>>2];D[a+24>>2]=D[b+24>>2];D[a+28>>2]=c;c=D[b+20>>2];D[a+16>>2]=D[b+16>>2];D[a+20>>2]=c;c=D[b+12>>2];D[a+8>>2]=D[b+8>>2];D[a+12>>2]=c;D[a+88>>2]=0;D[a+64>>2]=0;D[a+68>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;B[a+77|0]=0;B[a+78|0]=0;B[a+79|0]=0;B[a+80|0]=0;B[a+81|0]=0;B[a+82|0]=0;B[a+83|0]=0;B[a+84|0]=0;return a}function _a(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;a=D[a+4>>2];a:{b:{if(!a){break b}d=E[b+11|0];c=d<<24>>24<0;i=c?D[b>>2]:b;e=c?D[b+4>>2]:d;c=g;while(1){b=E[a+27|0];j=b<<24>>24<0;h=j?D[a+20>>2]:b;f=h>>>0>e>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=va(j?D[b>>2]:b,i,d);if(b){break c}}b=e>>>0>h>>>0?-1:f}c=(b|0)<0?c:a;a=D[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=E[c+27|0];f=a<<24>>24<0;d:{d=f?D[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=va(i,f?D[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>=0){break a}}c=g}return c}function Ee(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Ja(a,D[b+8>>2],e)){if(!(D[b+28>>2]==1|D[b+4>>2]!=(c|0))){D[b+28>>2]=d}return}a:{if(Ja(a,D[b>>2],e)){if(!(D[b+16>>2]!=(c|0)&D[b+20>>2]!=(c|0))){if((d|0)!=1){break a}D[b+32>>2]=1;return}D[b+32>>2]=d;b:{if(D[b+44>>2]==4){break b}C[b+52>>1]=0;a=D[a+8>>2];ba[D[D[a>>2]+20>>2]](a,b,c,c,1,e);if(E[b+53|0]){D[b+44>>2]=3;if(!E[b+52|0]){break b}break a}D[b+44>>2]=4}D[b+20>>2]=c;D[b+40>>2]=D[b+40>>2]+1;if(D[b+36>>2]!=1|D[b+24>>2]!=2){break a}B[b+54|0]=1;return}a=D[a+8>>2];ba[D[D[a>>2]+24>>2]](a,b,c,d,e)}}function Bg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=na(64);c=na(12);D[c+8>>2]=D[D[a+4>>2]+80>>2];D[c>>2]=1e4;D[c+4>>2]=0;f=wc(f,c);a:{b:{if((b|0)<0){c=f;break b}h=a+8|0;c=D[a+12>>2];e=D[a+8>>2];g=c-e>>2;c:{if((g|0)>(b|0)){break c}d=b+1|0;if(b>>>0>=g>>>0){Ob(h,d-g|0);break c}if(d>>>0>=g>>>0){break c}e=e+(d<<2)|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=D[c>>2];D[c>>2]=0;if(d){ba[D[D[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}D[a+12>>2]=e}a=D[h>>2]+(b<<2)|0;c=D[a>>2];D[a>>2]=f;if(!c){break a}}ba[D[D[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function Vc(a,b,c){var d=0,e=0,f=0,g=0;a:{if(!((b|0)<0|(c|0)<0)){b:{if(b>>>0>1431655765){break b}d=J(b,3);Ub(a,d,10256);Ub(a+12|0,d,10260);d=D[a+24>>2];c:{if(D[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=D[a+28>>2];f=c<<2;c=na(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>0){oa(c,d,e)}D[a+32>>2]=f;D[a+28>>2]=g;D[a+24>>2]=c;if(!d){break c}ma(d)}D[a+80>>2]=0;D[a+84>>2]=0;c=D[a+76>>2];D[a+76>>2]=0;if(c){ma(c)}D[a+68>>2]=0;D[a+72>>2]=0;c=a- -64|0;a=D[c>>2];D[c>>2]=0;if(!a){break b}ma(a)}d=b>>>0<1431655766}return d}ra(1326);T()}function cb(a){var b=0,c=0,d=0,e=0,f=0;d=D[a+8>>2];a:{if(E[d+84|0]){break a}b=D[a+16>>2];if(!b|!E[b+84|0]){break a}c=D[d+72>>2];e=D[d+68>>2];B[b+84|0]=0;c=c-e>>2;f=D[b+68>>2];e=D[b+72>>2]-f>>2;b:{if(c>>>0>e>>>0){xa(b+68|0,c-e|0,2032);d=D[a+8>>2];break b}if(c>>>0>=e>>>0){break b}D[b+72>>2]=f+(c<<2)}b=E[d+84|0];if(b){break a}c=D[d+68>>2];if((c|0)==D[d+72>>2]){break a}e=D[D[a+16>>2]+68>>2];if(!b){b=0;while(1){f=b<<2;D[f+e>>2]=D[c+f>>2];b=b+1|0;c=D[d+68>>2];if(b>>>0>2]-c>>2>>>0){continue}break}break a}D[e>>2]=0}return D[a+16>>2]}function nb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=D[a+4>>2];if((c|0)!=D[a+8>>2]){d=D[b+4>>2];D[c>>2]=D[b>>2];D[c+4>>2]=d;D[c+8>>2]=D[b+8>>2];D[a+4>>2]=c+12;return}a:{f=D[a>>2];g=c-f|0;d=(g|0)/12|0;c=d+1|0;if(c>>>0<357913942){e=d<<1;e=d>>>0<178956970?c>>>0>e>>>0?c:e:357913941;if(e){if(e>>>0>=357913942){break a}c=na(J(e,12))}else{c=0}d=c+J(d,12)|0;h=D[b+4>>2];D[d>>2]=D[b>>2];D[d+4>>2]=h;D[d+8>>2]=D[b+8>>2];b=d+J((g|0)/-12|0,12)|0;if((g|0)>0){oa(b,f,g)}D[a+8>>2]=c+J(e,12);D[a+4>>2]=d+12;D[a>>2]=b;if(f){ma(f)}return}qa();T()}ra(1326);T()}function Dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{c=D[a+216>>2];if((c|0)==D[a+220>>2]){break a}while(1){b:{c=D[J(e,144)+c>>2];if((c|0)<0){break b}d=D[a+4>>2];f=D[d+8>>2];if((c|0)>=D[d+12>>2]-f>>2){break b}d=0;c=D[(c<<2)+f>>2];if((ba[D[D[c>>2]+24>>2]](c)|0)<=0){break b}while(1){if((ba[D[D[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ba[D[D[c>>2]+24>>2]](c)|0)>(d|0)){continue}break b}break}a=D[a+216>>2]+J(e,144)|0;e=E[a+100|0]?a+4|0:0;break a}e=e+1|0;c=D[a+216>>2];if(e>>>0<(D[a+220>>2]-c|0)/144>>>0){continue}break}return 0}return e|0}function se(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=D[a+60>>2];a:{if(!c){break a}D[c+4>>2]=a+48;if(!(ba[D[D[c>>2]+12>>2]](c)|0)){break a}b:{c=ba[D[D[a>>2]+24>>2]](a)|0;if((c|0)<=0){break b}while(1){c:{f=D[(ba[D[D[a>>2]+28>>2]](a)|0)+4>>2];g=ba[D[D[a>>2]+20>>2]](a,d)|0;e=D[a+60>>2];if(!(ba[D[D[e>>2]+8>>2]](e,D[D[f+8>>2]+(g<<2)>>2])|0)){break c}d=d+1|0;if((c|0)!=(d|0)){continue}break b}break}return 0}d=0;if(!(ba[D[D[a>>2]+36>>2]](a,b)|0)){break a}if(!(ba[D[D[a>>2]+40>>2]](a,b)|0)){break a}d=ba[D[D[a>>2]+44>>2]](a)|0}return d|0}function Fc(a,b,c,d,e,f,g){var h=0,i=0,j=0;h=$-16|0;$=h;if((b^-1)-17>>>0>=c>>>0){if(E[a+11|0]>>>7|0){j=D[a>>2]}else{j=a}a:{if(b>>>0<2147483623){D[h+8>>2]=b<<1;D[h+12>>2]=b+c;c=$-16|0;$=c;$=c+16|0;c=h+8|0;i=h+12|0;c=D[(G[i>>2]>2]?c:i)>>2];if(c>>>0>=11){i=c+16&-16;c=i-1|0;c=(c|0)==11?i:c}else{c=10}break a}c=-18}i=c+1|0;c=na(i);if(f){Xa(c,g,f)}d=d-e|0;if(d){Xa(c+f|0,e+j|0,d)}if((b|0)!=10){ma(j)}D[a>>2]=c;D[a+8>>2]=i|-2147483648;b=a;a=d+f|0;D[b+4>>2]=a;B[h+7|0]=0;B[a+c|0]=E[h+7|0];$=h+16|0;return}Aa();T()}function Cd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=D[a+216>>2];if((c|0)!=D[a+220>>2]){while(1){a:{c=D[J(e,144)+c>>2];if((c|0)<0){break a}d=D[a+4>>2];f=D[d+8>>2];if((c|0)>=D[d+12>>2]-f>>2){break a}d=0;c=D[(c<<2)+f>>2];if((ba[D[D[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((ba[D[D[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ba[D[D[c>>2]+24>>2]](c)|0)>(d|0)){continue}break a}break}return(D[a+216>>2]+J(e,144)|0)+104|0}e=e+1|0;c=D[a+216>>2];if(e>>>0<(D[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function Ta(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=$-16|0;$=c;a:{b:{if(D[a+8>>2]<<5>>>0>=b>>>0){break b}D[c+8>>2]=0;D[c>>2]=0;D[c+4>>2]=0;if((b|0)<0){break a}g=(b-1>>>5|0)+1|0;e=na(g<<2);D[c+8>>2]=g;D[c>>2]=e;f=D[a>>2];b=D[a+4>>2];D[c+4>>2]=b;D[((b>>>0<33?0:b-1>>>5|0)<<2)+e>>2]=0;c:{if((b|0)<=0){break c}h=b>>>5|0;d=h<<2;i=Na(e,f,d);b=b-(h<<5)|0;if((b|0)<=0){break c}d=d+i|0;b=-1>>>32-b|0;D[d>>2]=D[d>>2]&(b^-1)|b&D[(h<<2)+f>>2]}D[a+8>>2]=g;D[a>>2]=e;if(!f){break b}ma(f)}$=c+16|0;return}qa();T()}function xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((ba[D[D[b>>2]+20>>2]](b)|0)<=0){return 1}a:{while(1){d=Lc(D[D[a+4>>2]+4>>2],ba[D[D[b>>2]+24>>2]](b,e)|0);if((d|0)==-1){break a}f=D[a+4>>2];c=0;b:{if((d|0)<0){break b}g=D[f+4>>2];if((d|0)>=D[g+12>>2]-D[g+8>>2]>>2){break b}c=D[D[f+8>>2]+(D[D[f+20>>2]+(d<<2)>>2]<<2)>>2];c=ba[D[D[c>>2]+32>>2]](c,d)|0}if(!c){break a}if(!(ba[D[D[b>>2]+28>>2]](b,c)|0)){break a}e=e+1|0;if((ba[D[D[b>>2]+20>>2]](b)|0)>(e|0)){continue}break}return 1}return 0}function Df(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a=$-32|0;$=a;a:{d=za(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=na(f);D[a+24>>2]=f|-2147483648;D[a+16>>2]=e;D[a+20>>2]=d;break c}B[a+27|0]=d;e=a+16|0;if(!d){break b}}oa(e,c,d)}B[d+e|0]=0;B[a+4|0]=0;D[a>>2]=1701667182;B[a+11|0]=4;d=D[b+4>>2];c=-1;d:{if(!d){break d}d=Oc(d,a,a+16|0);c=-1;if(!d){break d}c=Kc(b,D[d+24>>2])}b=c;if(B[a+11|0]<0){ma(D[a>>2])}if(B[a+27|0]<0){ma(D[a+16>>2])}$=a+32|0;break a}Aa();T()}return b|0}function Of(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=$-16|0;$=d;D[d+12>>2]=0;a:{e=za(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=na(f);D[d+8>>2]=f|-2147483648;D[d>>2]=a;D[d+4>>2]=e;break c}B[d+11|0]=e;a=d;if(!e){break b}}oa(a,c,e)}B[a+e|0]=0;a=_a(b,d);d:{if((a|0)==(b+4|0)){break d}b=D[a+32>>2];a=D[a+28>>2];if((b-a|0)!=4){break d}D[d+12>>2]=E[a|0]|E[a+1|0]<<8|(E[a+2|0]<<16|E[a+3|0]<<24)}a=D[d+12>>2];if(B[d+11|0]<0){ma(D[d>>2])}$=d+16|0;break a}Aa();T()}return a|0}function ub(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=10332;b=D[a+68>>2];if(b){D[a+72>>2]=b;ma(b)}b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}b=D[a+44>>2];if(b){D[a+48>>2]=b;ma(b)}b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ya(b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}b=D[a+4>>2];D[a+4>>2]=0;if(b){dc(b)}return a|0}function sa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=D[a+8>>2];c=D[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=pa(c,0,b)+b|0}D[a+4>>2]=c;return}a:{f=D[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>2>>>0<536870911?d>>>0>i>>>0?d:i:1073741823;if(d){if(d>>>0>=1073741824){break a}c=na(d<<2)}b=b<<2;b=pa((h<<2)+c|0,0,b)+b|0;if((g|0)>0){oa(c,f,g)}D[a+8>>2]=(d<<2)+c;D[a+4>>2]=b;D[a>>2]=c;if(f){ma(f)}return}qa();T()}ra(1326);T()}function bb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=D[a+8>>2];c=D[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=pa(c,0,b)+b|0}D[a+4>>2]=c;return}a:{f=D[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>3>>>0<268435455?d>>>0>i>>>0?d:i:536870911;if(d){if(d>>>0>=536870912){break a}c=na(d<<3)}b=b<<3;b=pa((h<<3)+c|0,0,b)+b|0;if((g|0)>0){oa(c,f,g)}D[a+8>>2]=(d<<3)+c;D[a+4>>2]=b;D[a>>2]=c;if(f){ma(f)}return}qa();T()}ra(1326);T()}function Qa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=D[a>>2];a=D[e+4>>2];c=D[e+8>>2];if(a>>>0>>0){D[a>>2]=D[b>>2];D[e+4>>2]=a+4;return}a:{f=D[e>>2];g=a-f|0;d=g>>2;a=d+1|0;if(a>>>0<1073741824){h=d<<2;c=c-f|0;d=c>>1;c=c>>2>>>0<536870911?a>>>0>d>>>0?a:d:1073741823;if(c){if(c>>>0>=1073741824){break a}a=na(c<<2)}else{a=0}d=h+a|0;D[d>>2]=D[b>>2];if((g|0)>0){oa(a,f,g)}D[e+8>>2]=a+(c<<2);D[e+4>>2]=d+4;D[e>>2]=a;if(f){ma(f)}return}qa();T()}ra(1326);T()}function gb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{c=D[a+4>>2];e=D[a>>2];f=c-e|0;b:{if(f>>>0>>0){g=b-f|0;d=D[a+8>>2];if(g>>>0<=d-c>>>0){if(g){c=pa(c,0,g)+g|0}D[a+4>>2]=c;return}if((b|0)<0){break a}c=0;d=d-e|0;h=d<<1;d=d>>>0<1073741823?b>>>0>h>>>0?b:h:2147483647;if(d){c=na(d)}pa(c+f|0,0,g);if((f|0)>0){oa(c,e,f)}D[a+8>>2]=c+d;D[a+4>>2]=b+c;D[a>>2]=c;if(!e){break b}ma(e);return}if(b>>>0>=f>>>0){break b}D[a+4>>2]=b+e}return}qa();T()}function me(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=2044;b=D[a+60>>2];D[a+60>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}d=D[a+36>>2];if(d){c=D[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+36>>2]}D[a+40>>2]=d;ma(b)}D[a>>2]=1804;b=D[a+16>>2];if(b){D[a+20>>2]=b;ma(b)}b=D[a+4>>2];if(b){D[a+8>>2]=b;ma(b)}return a|0}function le(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=2044;b=D[a+60>>2];D[a+60>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}d=D[a+36>>2];if(d){c=D[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+36>>2]}D[a+40>>2]=d;ma(b)}D[a>>2]=1804;b=D[a+16>>2];if(b){D[a+20>>2]=b;ma(b)}b=D[a+4>>2];if(b){D[a+8>>2]=b;ma(b)}ma(a)}function gd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=D[a+8>>2];c=D[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=pa(c,0,b)+b|0}D[a+4>>2]=c;return}a:{f=D[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>=0){c=0;e=e-f|0;d=e>>1>>>0<1073741823?d>>>0>e>>>0?d:e:2147483647;if(d){if((d|0)<0){break a}c=na(d<<1)}b=b<<1;b=pa((h<<1)+c|0,0,b)+b|0;if((g|0)>0){oa(c,f,g)}D[a+8>>2]=(d<<1)+c;D[a+4>>2]=b;D[a>>2]=c;if(f){ma(f)}return}qa();T()}ra(1326);T()}function dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=$-16|0;$=d;e=D[a+4>>2];a:{if((e|0)==-1){break a}c=D[b+20>>2];if(!!D[b+16>>2]&(c|0)>=0|(c|0)>0){break a}rb(b,D[b+4>>2],D[a+8>>2],D[a+12>>2]);c=D[b+20>>2];if(!!D[b+16>>2]&(c|0)>=0|(c|0)>0){break a}c=a+20|0;rb(b,D[b+4>>2],c,c+4|0);c=D[b+20>>2];f=D[b+16>>2];B[d+15|0]=D[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}rb(b,D[b+4>>2],d+15|0,d+16|0)}$=d+16|0;return(e|0)!=-1|0} -function yg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=D[a+8>>2];b:{if((b|0)<0){break b}c=D[a+4>>2];e=D[c>>2];d=D[c+4>>2]-e>>2;c:{if(d>>>0>>0){sa(c,b-d|0);f=D[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}D[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=D[a+4>>2];c=D[a>>2];e=D[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}D[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}ua();T()}function Ra(a){var b=0,c=0,d=0,e=0,f=0;b=D[a+4>>2];if((b|0)!=D[a+8>>2]){D[b>>2]=D[2088];D[a+4>>2]=b+4;return}a:{e=D[a>>2];f=b-e|0;d=f>>2;b=d+1|0;if(b>>>0<1073741824){c=f>>1;c=d>>>0<536870911?b>>>0>c>>>0?b:c:1073741823;if(c){if(c>>>0>=1073741824){break a}b=na(c<<2)}else{b=0}d=b+(d<<2)|0;D[d>>2]=D[2088];if((f|0)>0){oa(b,e,f)}D[a+8>>2]=b+(c<<2);D[a+4>>2]=d+4;D[a>>2]=b;if(e){ma(e)}return}qa();T()}ra(1326);T()}function gf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=$-16|0;$=d;Kd(d,a,b,c);D[a+24>>2]=D[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=E[d+15|0];c=f<<24>>24;a=a+28|0;if(B[a+11|0]>=0){if((c|0)>=0){c=D[b+4>>2];D[a>>2]=D[b>>2];D[a+4>>2]=c;D[a+8>>2]=D[b+8>>2];break a}sb(a,D[d+4>>2],D[d+8>>2]);break a}g=a;a=(c|0)<0;tb(g,a?D[d+4>>2]:b,a?D[d+8>>2]:f)}if(B[d+15|0]<0){ma(D[d+4>>2])}$=d+16|0;return e|0}function tf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a=$-32|0;$=a;e=B[b+24|0];f=D[2563];D[a+24>>2]=D[2562];D[a+28>>2]=f;f=D[2561];D[a+16>>2]=D[2560];D[a+20>>2]=f;a:{b:{c=mb(b,c,e,a+16|0);if(c){D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;b=0;if(e){if((e|0)<0){break b}e=e<<2;b=na(e);g=oa(b,a+16|0,e)+e|0}e=D[d>>2];if(e){D[d+4>>2]=e;ma(e)}D[d+8>>2]=g;D[d+4>>2]=g;D[d>>2]=b}$=a+32|0;break a}qa();T()}return c|0}function hf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=$-16|0;$=b;Jd(b);D[a+24>>2]=D[b>>2];e=a+24|0;a:{if((e|0)==(b|0)){break a}c=b|4;f=E[b+15|0];d=f<<24>>24;a=a+28|0;if(B[a+11|0]>=0){if((d|0)>=0){d=D[c+4>>2];D[a>>2]=D[c>>2];D[a+4>>2]=d;D[a+8>>2]=D[c+8>>2];break a}sb(a,D[b+4>>2],D[b+8>>2]);break a}g=a;a=(d|0)<0;tb(g,a?D[b+4>>2]:c,a?D[b+8>>2]:f)}if(B[b+15|0]<0){ma(D[b+4>>2])}$=b+16|0;return e|0}function Gb(a,b){var c=0,d=0,e=0,f=0;d=D[a+12>>2];c=D[a+16>>2]-d>>2;a:{if(c>>>0>>0){sa(a+12|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}D[a+16>>2]=d+(b<<2)}b:{c=D[a>>2];c:{if(D[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=D[a+4>>2];e=b<<2;b=na(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){oa(b,c,d)}D[a+8>>2]=e;D[a+4>>2]=f;D[a>>2]=b;if(!c){break c}ma(c)}return}ra(1326);T()}function Lf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=$-16|0;$=d;a:{e=za(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=na(g);D[d+8>>2]=g|-2147483648;D[d>>2]=f;D[d+4>>2]=e;break c}B[d+11|0]=e;f=d;if(!e){break b}}oa(f,c,e)}B[e+f|0]=0;f=a+16|0;c=Nc(b,d,f);b=B[a+27|0];a=D[a+16>>2];if(B[d+11|0]<0){ma(D[d>>2])}$=d+16|0;a=c?(b|0)<0?a:f:0;break a}Aa();T()}return a|0}function mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=$+-64|0;$=d;e=ba[D[D[a>>2]+44>>2]](a,b)|0;a=ba[D[D[a>>2]+40>>2]](a,b)|0;f=lb(d);g=D[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=D[(a<<2)+10180>>2]}else{a=-1}a=J(a,e);$b(f,g,h,i,0,a,a>>31);a=Zb(na(96),f);Yb(a,c);B[a+84|0]=1;D[a+72>>2]=D[a+68>>2];D[a+60>>2]=D[b+60>>2];$=d- -64|0;return a|0}function hd(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=D[c+20>>2];e=D[c+12>>2];f=D[c+16>>2];if((d|0)>=(e|0)&f>>>0>=G[c+8>>2]|(d|0)>(e|0)){break a}e=B[f+D[c>>2]|0];f=f+1|0;d=f?d:d+1|0;D[c+16>>2]=f;D[c+20>>2]=d;b:{if((e|0)<0){if(!hd(a+1|0,b,c)){break a}c=D[b>>2];a=D[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}D[b>>2]=c;D[b+4>>2]=a;g=1}return g}function Oa(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=D[c+20>>2];e=D[c+12>>2];f=D[c+16>>2];if((d|0)>=(e|0)&f>>>0>=G[c+8>>2]|(d|0)>(e|0)){break a}e=B[f+D[c>>2]|0];f=f+1|0;d=f?d:d+1|0;D[c+16>>2]=f;D[c+20>>2]=d;b:{if((e|0)<0){if(!Oa(a+1|0,b,c)){break a}c=D[b>>2];a=D[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}D[b>>2]=c;D[b+4>>2]=a;g=1}return g}function De(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Ja(a,D[b+8>>2],e)){if(!(D[b+28>>2]==1|D[b+4>>2]!=(c|0))){D[b+28>>2]=d}return}a:{if(!Ja(a,D[b>>2],e)){break a}if(!(D[b+16>>2]!=(c|0)&D[b+20>>2]!=(c|0))){if((d|0)!=1){break a}D[b+32>>2]=1;return}D[b+20>>2]=c;D[b+32>>2]=d;D[b+40>>2]=D[b+40>>2]+1;if(!(D[b+36>>2]!=1|D[b+24>>2]!=2)){B[b+54|0]=1}D[b+44>>2]=4}}function vf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{if(G[b+80>>2]>65535){break a}f=D[b+96>>2];b=D[b+100>>2]-f|0;a=(b|0)/12|0;e=J(a,6);g=(e|0)==(c|0);if(!b|(c|0)!=(e|0)){break a}g=1;e=a>>>0>1?a:1;a=0;while(1){b=J(a,6)+d|0;c=J(a,12)+f|0;C[b>>1]=D[c>>2];C[b+2>>1]=D[c+4>>2];C[b+4>>1]=D[c+8>>2];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return g|0}function kh(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=8204;b=D[a+48>>2];D[a+48>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=10064;b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}return a|0}function jh(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=8204;b=D[a+48>>2];D[a+48>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=10064;b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}ma(a)}function Bc(a,b,c,d){B[a+53|0]=1;a:{if(D[a+4>>2]!=(c|0)){break a}B[a+52|0]=1;c=D[a+16>>2];b:{if(!c){D[a+36>>2]=1;D[a+24>>2]=d;D[a+16>>2]=b;if(D[a+48>>2]!=1){break a}if((d|0)==1){break b}break a}if((b|0)==(c|0)){c=D[a+24>>2];if((c|0)==2){D[a+24>>2]=d;c=d}if(D[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}D[a+36>>2]=D[a+36>>2]+1}B[a+54|0]=1}}function re(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ba[D[D[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=D[D[a+36>>2]>>2];f=a+48|0;c=0;if(!(ba[D[D[d>>2]+16>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=D[D[a+36>>2]+(c<<2)>>2];if(ba[D[D[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function pe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ba[D[D[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=D[D[a+36>>2]>>2];f=a+48|0;c=0;if(!(ba[D[D[d>>2]+20>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=D[D[a+36>>2]+(c<<2)>>2];if(ba[D[D[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function Ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=$-16|0;$=d;D[a+4>>2]=b;b=D[b+64>>2];e=D[b>>2];b=D[b+4>>2];B[d+15|0]=0;Ea(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=D[a+4>>2];e=D[b+56>>2];b=D[b+52>>2];B[d+14|0]=0;Ea(a+36|0,e-b>>2,d+14|0);b=D[c+12>>2];D[a+16>>2]=D[c+8>>2];D[a+20>>2]=b;b=D[c+4>>2];D[a+8>>2]=D[c>>2];D[a+12>>2]=b;$=d+16|0}function Uc(a){D[a>>2]=0;D[a+4>>2]=0;D[a+28>>2]=0;D[a+32>>2]=0;B[a+24|0]=1;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;D[a+36>>2]=0;D[a+40>>2]=0;D[a+44>>2]=0;D[a+48>>2]=0;D[a+52>>2]=0;D[a+56>>2]=0;D[a+60>>2]=0;D[a+64>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+84>>2]=0;D[a+88>>2]=0;D[a+92>>2]=0;D[a+68>>2]=a}function Xg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=$-16|0;$=d;D[a+4>>2]=b;e=D[b>>2];b=D[b+4>>2];B[d+15|0]=0;Ea(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=D[a+4>>2];e=D[b+28>>2];b=D[b+24>>2];B[d+14|0]=0;Ea(a+36|0,e-b>>2,d+14|0);b=D[c+12>>2];D[a+16>>2]=D[c+8>>2];D[a+20>>2]=b;b=D[c+4>>2];D[a+8>>2]=D[c>>2];D[a+12>>2]=b;$=d+16|0}function ud(a,b){var c=0,d=0,e=0,f=0,g=0;D[a+144>>2]=b;c=D[(ba[D[D[b>>2]+32>>2]](b)|0)+32>>2];e=D[c>>2]+D[c+16>>2]|0;d=D[(ba[D[D[b>>2]+32>>2]](b)|0)+32>>2];c=D[d+8>>2];d=D[d+16>>2];c=c-d|0;f=a,g=F[D[(ba[D[D[b>>2]+32>>2]](b)|0)+32>>2]+38>>1],C[f+38>>1]=g;D[a>>2]=e;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=c;D[a+12>>2]=0}function Wc(a){var b=0;D[a>>2]=0;D[a+4>>2]=0;D[a+56>>2]=0;D[a+48>>2]=0;D[a+52>>2]=0;D[a+40>>2]=0;D[a+44>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;b=a- -64|0;D[b>>2]=0;D[b+4>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+84>>2]=0;D[a+60>>2]=a}function jb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!jb(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function eb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!eb(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function Vb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!Vb(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function Sa(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!Sa(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function Ld(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!Ld(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function Da(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!Da(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function $a(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!$a(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;g=D[b+96>>2];b=D[b+100>>2]-g|0;if(!((b|0)!=(c|0)|!b)){a=(c|0)/12|0;h=a>>>0>1?a:1;a=0;while(1){e=J(a,12);f=e+d|0;e=e+g|0;D[f>>2]=D[e>>2];D[f+4>>2]=D[e+4>>2];D[f+8>>2]=D[e+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}return(b|0)==(c|0)|0}function va(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(D[a>>2]!=D[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=E[a|0];e=E[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function yf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=D[b+4>>2];a:{if(!d){break a}b=D[D[D[b+8>>2]+(c<<2)>>2]+60>>2];if((b|0)<0){break a}a=D[d+24>>2];c=D[d+28>>2];if((a|0)==(c|0)){break a}b:{while(1){e=D[a>>2];if((b|0)==D[e+24>>2]){break b}a=a+4|0;if((c|0)!=(a|0)){continue}break}e=0}}return e|0}function dc(a){var b=0,c=0,d=0;if(a){d=D[a+24>>2];if(d){c=D[a+28>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){Ca(b+12|0,D[b+16>>2]);Ba(b,D[b+4>>2]);ma(b)}if((d|0)!=(c|0)){continue}break}b=D[a+24>>2]}D[a+28>>2]=d;ma(b)}Ca(a+12|0,D[a+16>>2]);Ba(a,D[a+4>>2]);ma(a)}}function ph(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=10064;b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}return a|0}function Vg(a){a=a|0;var b=0;D[a+8>>2]=9168;D[a>>2]=8956;b=D[a+96>>2];if(b){D[a+100>>2]=b;ma(b)}b=D[a+80>>2];if(b){D[a+84>>2]=b;ma(b)}b=D[a+68>>2];if(b){D[a+72>>2]=b;ma(b)}b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=9404;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}return a|0}function za(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!E[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=D[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=E[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function Tg(a){a=a|0;var b=0;D[a+8>>2]=9168;D[a>>2]=8956;b=D[a+96>>2];if(b){D[a+100>>2]=b;ma(b)}b=D[a+80>>2];if(b){D[a+84>>2]=b;ma(b)}b=D[a+68>>2];if(b){D[a+72>>2]=b;ma(b)}b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=9404;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}ma(a)}function Ag(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=10064;b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}ma(a)}function rc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=D[c+8>>2];e=D[c+16>>2];g=D[c+12>>2];f=g;d=D[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=E[e+D[c>>2]|0];i=e+1|0;f=i?d:d+1|0;D[c+16>>2]=i;D[c+20>>2]=f;D[a+4>>2]=b}return e>>>0>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function Ja(a,b,c){var d=0;if(!c){return D[a+4>>2]==D[b+4>>2]}if((a|0)==(b|0)){return 1}d=D[a+4>>2];a=E[d|0];c=D[b+4>>2];b=E[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=E[c+1|0];a=E[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function Wg(a){a=a|0;var b=0;D[a>>2]=9168;b=D[a+88>>2];if(b){D[a+92>>2]=b;ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+60>>2];if(b){D[a- -64>>2]=b;ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function Hb(a,b){var c=0,d=0,e=0,f=0;a:{c=D[a>>2];b:{if(D[a+8>>2]-c>>2>>>0>=b>>>0){break b}if(b>>>0>=1073741824){break a}d=D[a+4>>2];e=b<<2;b=na(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){oa(b,c,d)}D[a+8>>2]=e;D[a+4>>2]=f;D[a>>2]=b;if(!c){break b}ma(c)}return}ra(1326);T()}function Af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=D[b+12>>2];b=D[b+8>>2];d=a-b|0;a=0;a:{if(!d){break a}a=d>>2;d=a>>>0>1?a:1;a=0;b:{while(1){e=D[b+(a<<2)>>2];if(D[e+60>>2]==(c|0)){break b}a=a+1|0;if((d|0)!=(a|0)){continue}break}a=0;break a}a=(a|0)==-1?0:e}return a|0}function Qg(a){a=a|0;var b=0;D[a>>2]=9168;b=D[a+88>>2];if(b){D[a+92>>2]=b;ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+60>>2];if(b){D[a- -64>>2]=b;ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function ab(a){var b=0;if(a){b=D[a+76>>2];if(b){D[a+80>>2]=b;ma(b)}b=D[a- -64>>2];if(b){D[a+68>>2]=b;ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}b=D[a+24>>2];if(b){D[a+28>>2]=b;ma(b)}b=D[a+12>>2];if(b){D[a+16>>2]=b;ma(b)}b=D[a>>2];if(b){D[a+4>>2]=b;ma(b)}ma(a)}}function ob(a){var b=0;b=D[a+84>>2];if(b){D[a+88>>2]=b;ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+52>>2];if(b){D[a+56>>2]=b;ma(b)}b=D[a+40>>2];if(b){D[a+44>>2]=b;ma(b)}b=D[a+28>>2];if(b){D[a+32>>2]=b;ma(b)}b=D[a+12>>2];if(b){ma(b)}a=D[a>>2];if(a){ma(a)}}function xd(a){var b=0,c=0,d=0;b=D[a+4>>2];d=D[a>>2];if((b|0)!=(d|0)){while(1){c=D[b-12>>2];if(c){D[b-8>>2]=c;ma(c)}c=D[b-28>>2];if(c){D[b-24>>2]=c;ma(c)}c=D[b-40>>2];if(c){D[b-36>>2]=c;ma(c)}ob(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}}D[a+4>>2]=d}function ta(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<=10){d=a;B[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=na(e);D[a>>2]=d;D[a+8>>2]=e|-2147483648;D[a+4>>2]=c}Xa(d,b,c+1|0);return}Aa();T()}function Gc(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=$-16|0;$=f;d=$-16|0;$=d;b=b-a>>2;while(1){if(b){D[d+12>>2]=a;e=b>>>1|0;D[d+12>>2]=D[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=D[d+12>>2];g=G[e>>2]>2];b=g?h:b;a=g?e+4|0:a;continue}break}$=d+16|0;$=f+16|0;return a}function fd(a,b){var c=0,d=0;d=na(40);D[d>>2]=-1;c=d+8|0;D[c+16>>2]=0;D[c+20>>2]=0;D[c+8>>2]=0;D[c>>2]=0;D[c+4>>2]=0;D[c+24>>2]=0;D[c+28>>2]=0;ba[D[D[a>>2]+16>>2]](a,d);a=D[b+88>>2];D[b+88>>2]=d;if(a){b=D[a+8>>2];if(b){D[a+12>>2]=b;ma(b)}ma(a)}return 1}function Ga(a){var b=0,c=0,d=0,e=0,f=0;d=E[a+12|0];c=D[a+8>>2];a:{if(c>>>0>4095){break a}b=D[a+4>>2];if((b|0)<=0){break a}b=b-1|0;D[a+4>>2]=b;c=E[b+D[a>>2]|0]|c<<8}d=0-d&255;b=J(d,c>>>8|0);e=c&255;f=e>>>0>>0;D[a+8>>2]=f?b+e|0:c-(b+d|0)|0;return f}function xf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a=$-16|0;$=a;b=D[b+96>>2];D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;e=na(12);c=oa(e,b+J(c,12)|0,12);f=c+12|0;b=D[d>>2];if(b){D[d+4>>2]=b;ma(b)}D[d+8>>2]=c+12;D[d+4>>2]=f;D[d>>2]=e;$=a+16|0;return 1}function wc(a,b){D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1804;D[a+12>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+40>>2]=0;D[a>>2]=2044;D[a+44>>2]=0;D[a+48>>2]=0;D[a+52>>2]=0;D[a+56>>2]=0;D[a+60>>2]=b;return a}function id(a,b,c,d){a:{if(!b){if((d|0)<0){return 0}gb(a,c);break a}if((d|0)<0){return 0}if(!(!d&D[a+4>>2]-D[a>>2]>>>0>=c>>>0)){gb(a,c)}if(!c){break a}Na(D[a>>2],b,c)}b=D[a+28>>2];c=D[a+24>>2]+1|0;b=c?b:b+1|0;D[a+24>>2]=c;D[a+28>>2]=b;return 1}function If(a){a=a|0;var b=0,c=0,d=0;if(a){if(B[a+27|0]<0){ma(D[a+16>>2])}b=D[a>>2];if(b){c=D[a+4>>2];if((c|0)==(b|0)){d=b}else{while(1){d=c-12|0;if(B[c-1|0]<0){ma(D[d>>2])}c=d;if((c|0)!=(b|0)){continue}break}d=D[a>>2]}D[a+4>>2]=b;ma(d)}ma(a)}}function ug(){var a=0;a=na(40);C[a+38>>1]=0;D[a>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;B[a+29|0]=0;B[a+30|0]=0;B[a+31|0]=0;B[a+32|0]=0;B[a+33|0]=0;B[a+34|0]=0;B[a+35|0]=0;B[a+36|0]=0;return a|0}function ya(a){a=a|0;var b=0,c=0;if(a){b=D[a+88>>2];D[a+88>>2]=0;if(b){c=D[b+8>>2];if(c){D[b+12>>2]=c;ma(c)}ma(b)}b=D[a+68>>2];if(b){D[a+72>>2]=b;ma(b)}b=D[a+64>>2];D[a+64>>2]=0;if(b){c=D[b>>2];if(c){D[b+4>>2]=c;ma(c)}ma(b)}ma(a)}}function th(a){a=a|0;var b=0;D[a+24>>2]=1140;D[a>>2]=7976;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}D[a>>2]=2164;b=D[a+20>>2];D[a+20>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}return a|0}function Fb(a,b){var c=0,d=0,e=0;c=za(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=na(e);D[a+8>>2]=e|-2147483648;D[a>>2]=d;D[a+4>>2]=c;break b}B[a+11|0]=c;d=a;if(!c){break a}}oa(d,b,c)}B[c+d|0]=0;return a}Aa();T()}function ai(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=bi(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;aa=(g^aa)-((a>>>0>>0)+g|0)|0;return b}function sh(a){a=a|0;var b=0;D[a+24>>2]=1140;D[a>>2]=7976;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}D[a>>2]=2164;b=D[a+20>>2];D[a+20>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}ma(a)}function tb(a,b,c){var d=0,e=0,f=0;e=$-16|0;$=e;d=D[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=D[a>>2];D[a+4>>2]=c;Xa(d,b,c);B[e+15|0]=0;B[c+d|0]=E[e+15|0];break a}f=a;a=D[a+4>>2];Fc(f,d-1|0,(c-d|0)+1|0,a,a,c,b)}$=e+16|0}function $h(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=J(e,f);g=c&65535;h=a&65535;i=J(g,h);f=(i>>>16|0)+J(f,g)|0;e=(f&65535)+J(e,h)|0;aa=(J(b,c)+j|0)+J(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function qe(a,b){a=a|0;b=b|0;var c=0,d=0;c=$-16|0;$=c;a=D[a+4>>2];a:{if((a|0)==-1){break a}B[c+15|0]=a;d=D[b+20>>2];if(!!D[b+16>>2]&(d|0)>=0|(d|0)>0){break a}rb(b,D[b+4>>2],c+15|0,c+16|0)}$=c+16|0;return(a|0)!=-1|0}function pg(){var a=0;a=na(96);lb(a);D[a+64>>2]=0;D[a+68>>2]=0;D[a+88>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;B[a+77|0]=0;B[a+78|0]=0;B[a+79|0]=0;B[a+80|0]=0;B[a+81|0]=0;B[a+82|0]=0;B[a+83|0]=0;B[a+84|0]=0;return a|0}function Cc(a,b,c){var d=0;d=D[a+16>>2];if(!d){D[a+36>>2]=1;D[a+24>>2]=c;D[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(D[a+24>>2]!=2){break a}D[a+24>>2]=c;return}B[a+54|0]=1;D[a+24>>2]=2;D[a+36>>2]=D[a+36>>2]+1}}function bh(a,b){a=a|0;b=b|0;var c=0,d=0;D[b>>2]=2;c=D[b+8>>2];d=D[b+12>>2]-c|0;if(d>>>0<=4294967291){Eb(b+8|0,d+4|0);c=D[b+8>>2]}b=c+d|0;a=D[a+4>>2];B[b|0]=a;B[b+1|0]=a>>>8;B[b+2|0]=a>>>16;B[b+3|0]=a>>>24}function vg(a){a=a|0;var b=0,c=0,d=0;b=D[a+8>>2];d=D[a+12>>2];if((b|0)==(d|0)){return 1}while(1){c=D[b>>2];c=ba[D[D[c>>2]+16>>2]](c,D[a+32>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function be(a){a=a|0;var b=0;D[a>>2]=3044;b=D[a+96>>2];if(b){ma(b)}b=D[a+84>>2];if(b){ma(b)}b=D[a+72>>2];if(b){ma(b)}b=D[a+60>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function Xh(a){a=a|0;var b=0;D[a>>2]=4608;b=D[a+96>>2];if(b){ma(b)}b=D[a+84>>2];if(b){ma(b)}b=D[a+72>>2];if(b){ma(b)}b=D[a+60>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function ra(a){var b=0,c=0,d=0,e=0,f=0;b=_(8)|0;D[b>>2]=11024;D[b>>2]=11068;c=za(a);d=na(c+13|0);D[d+8>>2]=0;D[d+4>>2]=c;D[d>>2]=c;e=b,f=oa(d+12|0,a,c+1|0),D[e+4>>2]=f;D[b>>2]=11116;Z(b|0,11148,13);T()}function ae(a){a=a|0;var b=0;D[a>>2]=3044;b=D[a+96>>2];if(b){ma(b)}b=D[a+84>>2];if(b){ma(b)}b=D[a+72>>2];if(b){ma(b)}b=D[a+60>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Wh(a){a=a|0;var b=0;D[a>>2]=4608;b=D[a+96>>2];if(b){ma(b)}b=D[a+84>>2];if(b){ma(b)}b=D[a+72>>2];if(b){ma(b)}b=D[a+60>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Nc(a,b,c){var d=0,e=0;d=a+4|0;a=_a(a,b);if((d|0)==(a|0)){return 0}b=D[a+32>>2];d=D[a+28>>2];if((b|0)!=(d|0)){Qb(c,b-d|0);e=Rb(c);c=D[a+28>>2];oa(e,c,D[a+32>>2]-c|0)}return(b|0)!=(d|0)}function Kc(a,b){var c=0,d=0;c=D[a+8>>2];a=D[a+12>>2]-c|0;if(a){a=a>>2;d=a>>>0>1?a:1;a=0;while(1){if(D[D[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return-1}function lb(a){D[a+8>>2]=0;D[a+12>>2]=0;D[a>>2]=0;D[a+40>>2]=0;D[a+44>>2]=0;D[a+28>>2]=9;B[a+24|0]=1;D[a+56>>2]=-1;D[a+60>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+48>>2]=0;D[a+52>>2]=0;return a}function Re(a,b){a=a|0;b=b|0;var c=0,d=0;Ic(a,b);a:{if((b|0)<0){break a}c=D[a+88>>2];d=D[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){Na(b,d,c)}D[a+88>>2]=b+c}}function Fd(a){D[a+40>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=10064;D[a+12>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+32>>2]=0;C[a+36>>1]=0;D[a+44>>2]=0;D[a>>2]=8108}function cc(a,b,c){var d=0;a:{if(b){b=0;if(!hd(1,c,a)){break a}}B[a+36|0]=1;D[a+32>>2]=0;b=D[a+16>>2];c=b+D[a>>2]|0;D[a+24>>2]=c;d=a;a=D[a+8>>2];D[d+28>>2]=c+(a-b|0);b=1}return b}function ke(a,b){a=a|0;b=b|0;var c=0,d=0;d=D[a+16>>2];c=0;a:{if(D[a+20>>2]-d>>2<=(b|0)){break a}b=D[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=cb(D[D[a+36>>2]+(b<<2)>>2])}return c|0}function Hf(){var a=0,b=0;a=na(40);D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=a+4;b=a+16|0;D[b>>2]=0;D[b+4>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+12>>2]=b;D[a+32>>2]=0;D[a+36>>2]=0;return a|0}function Wa(a){var b=0,c=0;b=D[2853];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ca()<<16>>>0){if(!(Y(a|0)|0)){break a}}D[2853]=a;return b}D[2879]=48;return-1}function ze(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=D[a+8>>2];a:{if(B[d+24|0]<=0){break a}if(!Yb(d,D[b+4>>2]-D[b>>2]>>2)){break a}e=ba[D[D[a>>2]+32>>2]](a,b,c)|0}return e|0}function sb(a,b,c){var d=0,e=0;d=$-16|0;$=d;a:{if(c>>>0<=10){B[a+11|0]=c;Xa(a,b,c);B[d+15|0]=0;B[a+c|0]=E[d+15|0];break a}e=a;a=E[a+11|0];Fc(e,10,c-10|0,a,a,c,b)}$=d+16|0}function Nh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;D[a+4>>2]=b;b=D[D[D[b+4>>2]+8>>2]+(c<<2)>>2];D[a+12>>2]=c;D[a+8>>2]=b;a=D[a+8>>2];if(E[a+24|0]==3){d=D[a+28>>2]==9}return d|0}function Mg(a){a=a|0;var b=0;D[a+8>>2]=9588;D[a>>2]=9424;b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=9404;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}return a|0}function Gg(a){a=a|0;var b=0;D[a+8>>2]=8652;D[a>>2]=9716;b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=8904;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}return a|0}function zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;D[a+4>>2]=b;d=D[D[D[b+4>>2]+8>>2]+(c<<2)>>2];D[a+12>>2]=c;D[a+8>>2]=d;return D[D[D[D[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9|0}function Ca(a,b){if(b){Ca(a,D[b>>2]);Ca(a,D[b+4>>2]);a=D[b+28>>2];D[b+28>>2]=0;if(a){Ca(a+12|0,D[a+16>>2]);Ba(a,D[a+4>>2]);ma(a)}if(B[b+27|0]<0){ma(D[b+16>>2])}ma(b)}}function Kg(a){a=a|0;var b=0;D[a+8>>2]=9588;D[a>>2]=9424;b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=9404;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}ma(a)}function Fg(a){a=a|0;var b=0;D[a+8>>2]=8652;D[a>>2]=9716;b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=8904;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}ma(a)}function Oe(a,b){a=a|0;b=b|0;var c=0;a:{if(!(ba[D[D[a>>2]+36>>2]](a,b)|0)){break a}if(!(ba[D[D[a>>2]+40>>2]](a,b)|0)){break a}c=ba[D[D[a>>2]+44>>2]](a)|0}return c|0}function Ud(a){a=a|0;var b=0;a:{if(!D[a- -64>>2]|!D[a+68>>2]|(!D[a+44>>2]|!D[a+48>>2])){break a}if(!D[a+52>>2]|!D[a+56>>2]){break a}b=D[a+92>>2]!=-1}return b|0}function uc(a){a=a|0;var b=0;D[a>>2]=2164;b=D[a+20>>2];D[a+20>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}return a|0}function _h(a,b){a=a|0;b=b|0;var c=0;b=D[b+88>>2];if(!(!b|D[b>>2]!=2)){c=a;a=D[b+8>>2];D[c+4>>2]=E[a|0]|E[a+1|0]<<8|(E[a+2|0]<<16|E[a+3|0]<<24);c=1}return c|0}function Od(a){a=a|0;var b=0;a:{if(!D[a+48>>2]|!D[a+52>>2]|(!D[a+28>>2]|!D[a+32>>2])){break a}if(!D[a+36>>2]|!D[a+40>>2]){break a}b=D[a+76>>2]!=-1}return b|0}function zd(a){a=a|0;var b=0;D[a>>2]=8652;b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=8904;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function tc(a){a=a|0;var b=0;D[a>>2]=2164;b=D[a+20>>2];D[a+20>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}ma(a)}function Ng(a){a=a|0;var b=0;D[a>>2]=9588;b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function sg(){var a=0,b=0;b=na(40);D[b>>2]=-1;a=b+8|0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;return b|0}function _g(a){a=a|0;var b=0;D[a>>2]=8652;b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=8904;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function Hg(a){a=a|0;var b=0;D[a>>2]=9588;b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function Ce(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Ja(a,D[b+8>>2],f)){Bc(b,c,d,e);return}a=D[a+8>>2];ba[D[D[a>>2]+20>>2]](a,b,c,d,e,f)}function yh(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(E[D[a+4>>2]+36|0]>=2){b=0;if(!(ba[D[D[a>>2]+52>>2]](a)|0)){break a}}b=fd(a+24|0,D[a+16>>2])}return b|0}function bg(){var a=0;a=na(108);Mc(a);D[a+84>>2]=0;D[a+88>>2]=0;D[a>>2]=10272;D[a+92>>2]=0;D[a+96>>2]=0;D[a+100>>2]=0;D[a+104>>2]=0;return a|0}function Lc(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=J(b,12)+a|0;a=D[b+20>>2];if((D[b+24>>2]-a|0)<=0){break a}c=D[a>>2]}return c}function $b(a,b,c,d,e,f,g){D[a>>2]=0;D[a+56>>2]=b;D[a+48>>2]=0;D[a+52>>2]=0;D[a+40>>2]=f;D[a+44>>2]=g;B[a+32|0]=e;D[a+28>>2]=d;B[a+24|0]=c}function Ue(a){a=a|0;var b=0;D[a>>2]=10272;b=D[a+96>>2];if(b){D[a+100>>2]=b;ma(b)}b=D[a+84>>2];if(b){D[a+88>>2]=b;ma(b)}ub(a);return a|0}function Mh(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(E[D[a+4>>2]+36|0]>=2){b=0;if(!rc(a+24|0,cb(a),c)){break a}}b=fd(a+24|0,D[a+16>>2])}return b|0}function Te(a){a=a|0;var b=0;D[a>>2]=10272;b=D[a+96>>2];if(b){D[a+100>>2]=b;ma(b)}b=D[a+84>>2];if(b){D[a+88>>2]=b;ma(b)}ub(a);ma(a)}function _d(a){a=a|0;var b=0;D[a>>2]=3292;b=D[a+76>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function Uh(a){a=a|0;var b=0;D[a>>2]=4844;b=D[a+76>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function Ba(a,b){if(b){Ba(a,D[b>>2]);Ba(a,D[b+4>>2]);a=D[b+28>>2];if(a){D[b+32>>2]=a;ma(a)}if(B[b+27|0]<0){ma(D[b+16>>2])}ma(b)}}function Qf(){var a=0;a=na(28);D[a>>2]=0;D[a+4>>2]=0;D[a+24>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;return a|0}function Rb(a){var b=0;if(E[a+11|0]>>>7|0){b=D[a+4>>2]}else{b=E[a+11|0]}if(!b){Sb();T()}if(E[a+11|0]>>>7|0){a=D[a>>2]}return a}function Qe(a){a=a|0;var b=0;D[a>>2]=1804;b=D[a+16>>2];if(b){D[a+20>>2]=b;ma(b)}b=D[a+4>>2];if(b){D[a+8>>2]=b;ma(b)}return a|0}function Ge(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Ja(a,D[b+8>>2],0)){Cc(b,c,d);return}a=D[a+8>>2];ba[D[D[a>>2]+28>>2]](a,b,c,d)}function $f(){var a=0,b=0;a=na(24);D[a+4>>2]=0;D[a+8>>2]=0;b=a+16|0;D[b>>2]=0;D[b+4>>2]=0;D[a>>2]=a+4;D[a+12>>2]=b;return a|0}function Zd(a){a=a|0;var b=0;D[a>>2]=3292;b=D[a+76>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Th(a){a=a|0;var b=0;D[a>>2]=4844;b=D[a+76>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function na(a){var b=0;a=a?a:1;a:{while(1){b=Ac(a);if(b){break a}b=D[2880];if(b){ba[b|0]();continue}break}W();T()}return b}function hb(a,b){if(b){hb(a,D[b>>2]);hb(a,D[b+4>>2]);if(B[b+39|0]<0){ma(D[b+28>>2])}if(B[b+27|0]<0){ma(D[b+16>>2])}ma(b)}}function Pb(a){a=a|0;var b=0,c=0;D[a>>2]=11068;b=D[a+4>>2]-12|0;c=D[b+8>>2]-1|0;D[b+8>>2]=c;if((c|0)<0){ma(b)}return a|0}function Kb(a,b){a=a|0;b=b|0;var c=0;a:{switch(b|0){case 1:b=1;case 0:D[a+28>>2]=b;c=1;break;default:break a}}return c|0}function gg(){var a=0;a=na(24);D[a+8>>2]=0;D[a+12>>2]=0;D[a+4>>2]=-1;D[a>>2]=1140;D[a+16>>2]=0;D[a+20>>2]=0;return a|0}function yc(a,b,c){a=a|0;b=b|0;c=c|0;D[a+4>>2]=b;b=D[D[D[b+4>>2]+8>>2]+(c<<2)>>2];D[a+12>>2]=c;D[a+8>>2]=b;return 1}function nc(a){a=a|0;var b=0;if(!(!D[a+60>>2]|!D[a+44>>2]|(!D[a+48>>2]|!D[a+52>>2]))){b=D[a+56>>2]!=0}return b|0}function Eb(a,b){var c=0,d=0;gb(a,b);b=D[a+28>>2];c=b;d=b+1|0;b=D[a+24>>2]+1|0;D[a+24>>2]=b;D[a+28>>2]=b?c:d}function Xd(a){a=a|0;var b=0;D[a>>2]=3528;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function Rh(a){a=a|0;var b=0;D[a>>2]=5068;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function ff(a){a=a|0;if(a){if(B[a+39|0]<0){ma(D[a+28>>2])}Xb(a+12|0,D[a+16>>2]);hb(a,D[a+4>>2]);ma(a)}}function Zg(a){a=a|0;var b=0;D[a>>2]=8904;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function Pg(a){a=a|0;var b=0;D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function qb(a){a=a|0;var b=0;if(!(!D[a+52>>2]|(!D[a+44>>2]|!D[a+48>>2]))){b=D[a+56>>2]!=0}return b|0}function mc(a,b){a=a|0;b=b|0;var c=0;if(!(D[b+56>>2]|!b|E[b+24|0]!=3)){D[a+60>>2]=b;c=1}return c|0}function Wd(a){a=a|0;var b=0;D[a>>2]=3528;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Qh(a){a=a|0;var b=0;D[a>>2]=5068;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function tg(a,b,c){a=a|0;b=b|0;c=c|0;D[a+16>>2]=0;D[a+20>>2]=0;D[a>>2]=b;D[a+8>>2]=c;D[a+12>>2]=0}function Yg(a){a=a|0;var b=0;D[a>>2]=8904;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function Td(a,b){a=a|0;b=b|0;var c=0;if(!(D[b+56>>2]|E[b+24|0]!=3)){D[a- -64>>2]=b;c=1}return c|0}function Og(a){a=a|0;var b=0;D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function Nd(a,b){a=a|0;b=b|0;var c=0;if(!(D[b+56>>2]|E[b+24|0]!=3)){D[a+48>>2]=b;c=1}return c|0}function Be(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Ja(a,D[b+8>>2],f)){Bc(b,c,d,e)}}function ve(a){a=a|0;var b=0;D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}return a|0}function ee(a){a=a|0;var b=0;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function vh(a){a=a|0;var b=0;b=cb(a);return od(a+24|0,b?b:D[a+8>>2],D[D[a+4>>2]+32>>2])|0}function Ug(a){a=a|0;var b=0;D[a>>2]=1140;b=D[a+8>>2];if(b){D[a+12>>2]=b;ma(b)}return a|0}function ue(a){a=a|0;var b=0;D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}ma(a)}function Nb(a){a=a|0;var b=0;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Lg(a){a=a|0;var b=0;D[a>>2]=1140;b=D[a+8>>2];if(b){D[a+12>>2]=b;ma(b)}ma(a)}function je(a,b){a=a|0;b=b|0;return ba[D[D[a>>2]+48>>2]](a,D[b+4>>2]-D[b>>2]>>2)|0}function Xb(a,b){if(b){Xb(a,D[b>>2]);Xb(a,D[b+4>>2]);hb(b+20|0,D[b+24>>2]);ma(b)}}function rg(a){a=a|0;var b=0;if(a){b=D[a+8>>2];if(b){D[a+12>>2]=b;ma(b)}ma(a)}}function qh(a){a=a|0;if(!D[a+44>>2]){return 0}return ba[D[D[a>>2]+48>>2]](a)|0}function ci(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function He(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Ja(a,D[b+8>>2],0)){Cc(b,c,d)}}function oh(a,b){a=a|0;b=b|0;a=D[a+48>>2];return ba[D[D[a>>2]+20>>2]](a,b)|0}function gh(a,b){a=a|0;b=b|0;a=D[a+48>>2];return ba[D[D[a>>2]+12>>2]](a,b)|0}function fh(a,b){a=a|0;b=b|0;a=D[a+48>>2];return ba[D[D[a>>2]+16>>2]](a,b)|0}function Za(){var a=0;a=na(12);D[a>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;return a|0}function Ya(a){a=a|0;var b=0;if(a){b=D[a>>2];if(b){D[a+4>>2]=b;ma(b)}ma(a)}}function di(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function zg(a,b){a=a|0;b=b|0;B[b+84|0]=1;D[b+72>>2]=D[b+68>>2];return 1}function of(a,b,c){a=a|0;b=b|0;c=c|0;D[a+32>>2]=c;D[a+28>>2]=b;return 1}function _f(a){a=a|0;if(a){Ca(a+12|0,D[a+16>>2]);Ba(a,D[a+4>>2]);ma(a)}}function mh(a){a=a|0;a=D[a+48>>2];return ba[D[D[a>>2]+24>>2]](a)|0}function lh(a){a=a|0;a=D[a+48>>2];return ba[D[D[a>>2]+28>>2]](a)|0}function hh(a){a=a|0;a=D[a+48>>2];return ba[D[D[a>>2]+36>>2]](a)|0}function dg(){var a=0;a=na(8);D[a+4>>2]=-1;D[a>>2]=1032;return a|0}function Bf(a,b,c){a=a|0;b=b|0;c=c|0;return D[D[b+8>>2]+(c<<2)>>2]}function uh(a,b){a=a|0;b=b|0;return yd(a+24|0,cb(a),D[a+8>>2])|0}function Lh(a,b){a=a|0;b=b|0;return xc(a+24|0,cb(a),D[a+8>>2])|0}function wh(a,b){a=a|0;b=b|0;return ba[D[D[a>>2]+56>>2]](a,b)|0}function dd(a,b){a=a|0;b=b|0;return ba[D[D[a>>2]+12>>2]](a,b)|0}function Xf(a){a=a|0;if(a){if(B[a+15|0]<0){ma(D[a+4>>2])}ma(a)}}function Ae(a,b){a=a|0;b=b|0;D[a+12>>2]=-1;D[a+8>>2]=b;return 1}function fg(a,b){a=a|0;b=b|0;return K(H[D[a+8>>2]+(b<<2)>>2])}function Wf(a,b){a=a|0;b=b|0;return K(H[D[a>>2]+(b<<2)>>2])}function ag(a){a=a|0;return(D[a+100>>2]-D[a+96>>2]|0)/12|0}function Yf(a){a=a|0;return(B[a+15|0]<0?D[a+4>>2]:a+4|0)|0}function Ne(a,b){a=a|0;b=b|0;return D[D[a+4>>2]+(b<<2)>>2]}function Tf(a,b){a=a|0;b=b|0;return C[D[a>>2]+(b<<1)>>1]}function Sf(a,b){a=a|0;b=b|0;return F[D[a>>2]+(b<<1)>>1]}function $c(a,b){a=a|0;b=b|0;return D[D[a>>2]+(b<<2)>>2]}function Pd(a,b,c){a=a|0;b=b|0;c=c|0;return vc(a,b,c)|0}function Ef(a,b,c){a=a|0;b=b|0;c=c|0;return Lc(b,c)|0}function ei(a){if(a){return 31-M(a-1^a)|0}return 32} -function Mc(a){D[a>>2]=10332;pa(a+4|0,0,80);return a}function cd(a){a=a|0;return D[a+12>>2]-D[a+8>>2]>>2}function xb(a){a=a|0;if(a){ba[D[D[a>>2]+4>>2]](a)}}function Vf(a,b){a=a|0;b=b|0;return B[D[a>>2]+b|0]}function Uf(a,b){a=a|0;b=b|0;return E[D[a>>2]+b|0]}function Fe(a){a=a|0;return D[a+8>>2]-D[a+4>>2]>>2}function Ed(a,b){a=a|0;b=b|0;D[a+4>>2]=b;return 1}function ad(a){a=a|0;return D[a+4>>2]-D[a>>2]>>1}function _b(a){a=a|0;return D[a+4>>2]-D[a>>2]>>2}function bd(a){a=a|0;return D[a+4>>2]-D[a>>2]|0}function zf(a,b){a=a|0;b=b|0;return D[b+4>>2]}function ye(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function xg(a,b){a=a|0;b=b|0;return B[b+24|0]}function fe(a){a=a|0;return B[D[a+8>>2]+24|0]}function Kf(a,b){a=a|0;b=b|0;return D[b+8>>2]}function Jh(a){a=a|0;D[a>>2]=5956;return a|0}function Dh(a){a=a|0;D[a>>2]=6960;return a|0}function eg(a){a=a|0;return K(H[a+20>>2])}function Ih(a){a=a|0;D[a>>2]=5956;ma(a)}function Ch(a){a=a|0;D[a>>2]=6960;ma(a)}function og(a){a=a|0;return D[a+88>>2]}function ng(a){a=a|0;return D[a+56>>2]}function jg(a){a=a|0;return D[a+40>>2]}function ig(a){a=a|0;return D[a+48>>2]}function hg(a){a=a|0;return D[a+60>>2]}function db(a){a=a|0;return D[a+28>>2]}function ac(a){a=a|0;return D[a+80>>2]}function zc(a,b){a=a|0;b=b|0;return 1}function sc(a,b){a=a|0;b=b|0;return-1}function pd(a){a=a|0;return D[a+8>>2]}function lg(a){a=a|0;return B[a+24|0]}function kg(a){a=a|0;return E[a+32|0]}function Zf(a){a=a|0;return!D[a>>2]|0}function Va(a){a=a|0;return D[a+4>>2]}function Qd(a,b){a=a|0;b=b|0;return 6}function Ha(a,b){a=a|0;b=b|0;return 0}function Gh(a,b){a=a|0;b=b|0;return 2}function ed(a){a=a|0;return D[a>>2]}function Xa(a,b,c){if(c){oa(a,b,c)}}function qg(){return lb(na(64))|0}function cg(){return Mc(na(84))|0}function bc(a){a=a|0;if(a){ma(a)}}function Le(a){a=a|0;return 1273}function Je(a){a=a|0;Pb(a);ma(a)}function Ma(a){a=a|0;return a|0}function ah(a){a=a|0;ma(nd(a))}function Pe(a){a=a|0;ma(ub(a))}function Ke(a){a=a|0;ma(Pb(a))}function $g(a){a=a|0;ma(md(a))}function wa(a){a=a|0;return 1}function qc(a){a=a|0;return 4}function oc(a){a=a|0;return 5}function Ua(a){a=a|0;return 0}function Rd(a){a=a|0;return 2}function Mb(a){a=a|0;return 6}function Hh(a){a=a|0;return 3}function qa(){ra(1266);T()}function La(a){a=a|0;ma(a)}function Aa(){ra(1313);T()}function Pa(a){a=a|0;T()}function _e(){return 11}function Ze(){return 12}function $e(){return 10}function wb(){return-1}function vb(){return 1}function ua(){Sb();T()}function kb(){return 0}function ef(){return 5}function df(){return 6}function cf(){return 7}function bf(){return 8}function af(){return 9}function Ye(){return-2}function Yc(){return 3}function Xe(){return-3}function Xc(){return 4}function We(){return-4}function Wb(){return 2}function Ve(){return-5}function Sb(){W();T()}function Ec(a){a=a|0}function Me(){T()}function Vd(){} +function kc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;if(!a){return 1}e=D[c+20>>2];n=D[c+12>>2];f=D[c+16>>2];a:{if((e|0)>=(n|0)&f>>>0>=G[c+8>>2]|(e|0)>(n|0)){break a}n=E[f+D[c>>2]|0];f=f+1|0;e=f?e:e+1|0;D[c+16>>2]=f;D[c+20>>2]=e;b:{switch(n|0){case 0:f=a;l=b;n=d;a=0;d=0;g=$+-64|0;$=g;D[g+56>>2]=0;D[g+48>>2]=0;D[g+52>>2]=0;D[g+40>>2]=0;D[g+44>>2]=0;D[g+32>>2]=0;D[g+36>>2]=0;D[g+24>>2]=0;D[g+28>>2]=0;D[g+16>>2]=0;D[g+20>>2]=0;D[g+8>>2]=0;D[g+12>>2]=0;c:{if(!Jd(g+8|0,c)){break c}if(!Id(g+8|0,c)|(D[g+20>>2]?0:f)){break c}ec(c,0,0);if(f){o=l<<2;p=D[g+36>>2];r=D[g+48>>2];s=D[g+24>>2];while(1){k=D[g+56>>2];d:{if(k>>>0>16383){break d}a=D[g+52>>2];while(1){if((a|0)<=0){break d}a=a-1|0;D[g+52>>2]=a;k=E[a+r|0]|k<<8;D[g+56>>2]=k;if(k>>>0<16384){continue}break}}a=k&4095;i=D[(a<<2)+s>>2];b=p+(i<<3)|0;D[g+56>>2]=(J(D[b>>2],k>>>12|0)+a|0)-D[b+4>>2];e:{if((l|0)<=0){break e}a=0;if(!E[c+36|0]|i>>>0>32){break c}if(i){t=i&-2;x=i&1;u=d+l|0;b=D[c+32>>2];while(1){h=D[c+28>>2];q=D[c+24>>2];k=0;a=b;e=0;m=0;if((i|0)!=1){while(1){j=q+(a>>>3|0)|0;f:{if(j>>>0>=h>>>0){j=0;break f}j=E[j|0];b=a+1|0;D[c+32>>2]=b;j=j>>>(a&7)&1;a=b}j=j<>>3|0)|0;if(v>>>0>>0){e=E[v|0];b=a+1|0;D[c+32>>2]=b;e=e>>>(a&7)&1;a=b}v=k|1;k=k+2|0;e=j|e<>>3|0)|0;if(m>>>0>h>>>0){h=E[h|0];b=a+1|0;D[c+32>>2]=b;a=h>>>(a&7)&1}else{a=0}e=a<>2]=e;d=d+1|0;if((u|0)!=(d|0)){continue}break}d=u;break e}pa(n+(d<<2)|0,0,o);d=d+l|0}w=l+w|0;if(f>>>0>w>>>0){continue}break}}B[c+36|0]=0;b=D[c+20>>2];a=0;d=D[c+32>>2]+7|0;a=d>>>0<7?1:a;e=a>>>3|0;d=a<<29|d>>>3;a=d+D[c+16>>2]|0;e=b+e|0;D[c+16>>2]=a;D[c+20>>2]=a>>>0>>0?e+1|0:e;a=1}b=D[g+36>>2];if(b){D[g+40>>2]=b;ma(b)}b=D[g+24>>2];if(b){D[g+28>>2]=b;ma(b)}b=D[g+8>>2];if(b){D[g+12>>2]=b;ma(b)}$=g- -64|0;return a;case 1:break b;default:break a}}b=0;e=D[c+20>>2];n=D[c+12>>2];f=D[c+16>>2];g:{if((e|0)>=(n|0)&f>>>0>=G[c+8>>2]|(e|0)>(n|0)){break g}n=E[f+D[c>>2]|0];f=f+1|0;e=f?e:e+1|0;D[c+16>>2]=f;D[c+20>>2]=e;h:{switch(n-1|0){case 8:n=a;u=d;f=$+-64|0;$=f;D[f+56>>2]=0;D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;h=f+8|0;i:{j:{if(!F[c+38>>1]){break j}if(!Ua(1,h+12|0,c)){break j}i=D[h+12>>2];b=D[h>>2];a=D[h+4>>2]-b>>2;k:{if(i>>>0>a>>>0){sa(h,i-a|0);i=D[h+12>>2];break k}if(a>>>0<=i>>>0){break k}D[h+4>>2]=b+(i<<2)}d=1;if(!i){break i}p=D[c+8>>2];m=D[c+12>>2];r=D[h>>2];b=0;while(1){e=D[c+20>>2];a=D[c+16>>2];d=0;if((m|0)<=(e|0)&p>>>0<=a>>>0|(e|0)>(m|0)){break i}s=D[c>>2];o=E[s+a|0];a=a+1|0;e=a?e:e+1|0;j=a;D[c+16>>2]=a;d=e;D[c+20>>2]=e;a=o>>>2|0;g=0;l:{m:{n:{o:{t=o&3;switch(t|0){case 0:break m;case 3:break o;default:break n}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break i}pa(r+(b<<2)|0,0,(o&252)+4|0);b=a;break l}while(1){if((d|0)>=(m|0)&j>>>0>=p>>>0|(d|0)>(m|0)){break j}i=E[j+s|0];e=d;d=j+1|0;e=d?e:e+1|0;j=d;d=e;D[c+16>>2]=j;D[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((t|0)!=(g|0)){continue}break}}D[r+(b<<2)>>2]=a}b=b+1|0;i=D[h+12>>2];if(b>>>0>>0){continue}break}m=h+16|0;o=D[h>>2];b=D[h+16>>2];a=D[h+20>>2]-b|0;p:{if(a>>>0<=32767){sa(m,8192-(a>>>2|0)|0);break p}if((a|0)==32768){break p}D[h+20>>2]=b+32768}a=h+28|0;b=D[a>>2];d=D[h+32>>2]-b>>3;q:{if(d>>>0>>0){db(a,i-d|0);b=D[a>>2];break q}if(d>>>0>i>>>0){D[h+32>>2]=(i<<3)+b}if(!i){break j}}g=0;d=0;while(1){e=o+(g<<2)|0;j=D[e>>2];h=(g<<3)+b|0;a=d;D[h+4>>2]=a;D[h>>2]=j;e=D[e>>2];d=e+a|0;if(d>>>0>8192){break j}r:{if(a>>>0>=d>>>0){break r}h=D[m>>2];j=0;p=e&7;if(p){while(1){D[h+(a<<2)>>2]=g;a=a+1|0;j=j+1|0;if((p|0)!=(j|0)){continue}break}}if(e-1>>>0<=6){break r}while(1){e=h+(a<<2)|0;D[e>>2]=g;D[e+28>>2]=g;D[e+24>>2]=g;D[e+20>>2]=g;D[e+16>>2]=g;D[e+12>>2]=g;D[e+8>>2]=g;D[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((i|0)!=(g|0)){continue}break}l=(d|0)==8192}d=l}s:{if(!d|(D[f+20>>2]?0:n)){break s}d=0;l=$-16|0;$=l;t:{if(!Ta(1,l+8|0,c)){break t}a=D[c+8>>2];b=D[c+16>>2];e=a-b|0;i=D[l+12>>2];g=i;j=D[c+20>>2];h=D[c+12>>2]-(j+(a>>>0>>0)|0)|0;a=D[l+8>>2];if((g|0)==(h|0)&e>>>0>>0|g>>>0>h>>>0){break t}e=i+j|0;g=a+b|0;e=g>>>0>>0?e+1|0:e;D[c+16>>2]=g;D[c+20>>2]=e;if((a|0)<=0){break t}b=b+D[c>>2]|0;D[f+48>>2]=b;c=a-1|0;e=c+b|0;g=E[e|0];u:{if(g>>>0<=63){D[f+52>>2]=c;a=E[e|0]&63;break u}v:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break t}D[f+52>>2]=a-2;a=(a+b|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break u;case 1:if(a>>>0<3){break t}D[f+52>>2]=a-3;a=(a+b|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break u;default:break v}}D[f+52>>2]=a-4;a=(a+b|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}a=a+32768|0;D[f+56>>2]=a;d=a>>>0<8388608}$=l+16|0;if(!d){break s}if(!n){k=1;break s}b=D[f+36>>2];c=D[f+48>>2];d=D[f+24>>2];a=D[f+56>>2];while(1){w:{if(a>>>0>32767){break w}k=D[f+52>>2];while(1){if((k|0)<=0){break w}k=k-1|0;D[f+52>>2]=k;a=E[c+k|0]|a<<8;D[f+56>>2]=a;if(a>>>0<32768){continue}break}}e=a&8191;k=D[d+(e<<2)>>2];l=b+(k<<3)|0;a=(J(D[l>>2],a>>>13|0)+e|0)-D[l+4>>2]|0;D[f+56>>2]=a;D[u+(q<<2)>>2]=k;k=1;q=q+1|0;if((n|0)!=(q|0)){continue}break}}a=D[f+36>>2];if(a){D[f+40>>2]=a;ma(a)}a=D[f+24>>2];if(a){D[f+28>>2]=a;ma(a)}a=D[f+8>>2];if(a){D[f+12>>2]=a;ma(a)}$=f- -64|0;b=k;break g;case 9:n=a;u=d;f=$+-64|0;$=f;D[f+56>>2]=0;D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;h=f+8|0;x:{y:{if(!F[c+38>>1]){break y}if(!Ua(1,h+12|0,c)){break y}i=D[h+12>>2];b=D[h>>2];a=D[h+4>>2]-b>>2;z:{if(i>>>0>a>>>0){sa(h,i-a|0);i=D[h+12>>2];break z}if(a>>>0<=i>>>0){break z}D[h+4>>2]=b+(i<<2)}d=1;if(!i){break x}p=D[c+8>>2];m=D[c+12>>2];r=D[h>>2];b=0;while(1){e=D[c+20>>2];a=D[c+16>>2];d=0;if((m|0)<=(e|0)&p>>>0<=a>>>0|(e|0)>(m|0)){break x}s=D[c>>2];o=E[s+a|0];a=a+1|0;e=a?e:e+1|0;j=a;d=e;D[c+16>>2]=a;D[c+20>>2]=e;a=o>>>2|0;g=0;A:{B:{C:{D:{t=o&3;switch(t|0){case 0:break B;case 3:break D;default:break C}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break x}pa(r+(b<<2)|0,0,(o&252)+4|0);b=a;break A}while(1){if((d|0)>=(m|0)&j>>>0>=p>>>0|(d|0)>(m|0)){break y}i=E[j+s|0];e=d;d=j+1|0;e=d?e:e+1|0;j=d;D[c+16>>2]=d;d=e;D[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((t|0)!=(g|0)){continue}break}}D[r+(b<<2)>>2]=a}b=b+1|0;i=D[h+12>>2];if(b>>>0>>0){continue}break}m=h+16|0;o=D[h>>2];b=D[h+16>>2];a=D[h+20>>2]-b|0;E:{if(a>>>0<=131071){sa(m,32768-(a>>>2|0)|0);break E}if((a|0)==131072){break E}D[h+20>>2]=b+131072}a=h+28|0;b=D[a>>2];d=D[h+32>>2]-b>>3;F:{if(d>>>0>>0){db(a,i-d|0);b=D[a>>2];break F}if(d>>>0>i>>>0){D[h+32>>2]=(i<<3)+b}if(!i){break y}}g=0;d=0;while(1){e=o+(g<<2)|0;j=D[e>>2];h=(g<<3)+b|0;a=d;D[h+4>>2]=a;D[h>>2]=j;e=D[e>>2];d=e+a|0;if(d>>>0>32768){break y}G:{if(a>>>0>=d>>>0){break G}h=D[m>>2];j=0;p=e&7;if(p){while(1){D[h+(a<<2)>>2]=g;a=a+1|0;j=j+1|0;if((p|0)!=(j|0)){continue}break}}if(e-1>>>0<=6){break G}while(1){e=h+(a<<2)|0;D[e>>2]=g;D[e+28>>2]=g;D[e+24>>2]=g;D[e+20>>2]=g;D[e+16>>2]=g;D[e+12>>2]=g;D[e+8>>2]=g;D[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((i|0)!=(g|0)){continue}break}l=(d|0)==32768}d=l}H:{if(!d|(D[f+20>>2]?0:n)){break H}d=0;l=$-16|0;$=l;I:{if(!Ta(1,l+8|0,c)){break I}a=D[c+8>>2];b=D[c+16>>2];e=a-b|0;i=D[l+12>>2];g=i;j=D[c+20>>2];h=D[c+12>>2]-(j+(a>>>0>>0)|0)|0;a=D[l+8>>2];if((g|0)==(h|0)&e>>>0>>0|g>>>0>h>>>0){break I}e=i+j|0;g=a+b|0;e=g>>>0>>0?e+1|0:e;D[c+16>>2]=g;D[c+20>>2]=e;if((a|0)<=0){break I}b=b+D[c>>2]|0;D[f+48>>2]=b;c=a-1|0;e=c+b|0;g=E[e|0];J:{if(g>>>0<=63){D[f+52>>2]=c;a=E[e|0]&63;break J}K:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break I}D[f+52>>2]=a-2;a=(a+b|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break J;case 1:if(a>>>0<3){break I}D[f+52>>2]=a-3;a=(a+b|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break J;default:break K}}D[f+52>>2]=a-4;a=(a+b|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}a=a+131072|0;D[f+56>>2]=a;d=a>>>0<33554432}$=l+16|0;if(!d){break H}if(!n){k=1;break H}b=D[f+36>>2];c=D[f+48>>2];d=D[f+24>>2];a=D[f+56>>2];while(1){L:{if(a>>>0>131071){break L}k=D[f+52>>2];while(1){if((k|0)<=0){break L}k=k-1|0;D[f+52>>2]=k;a=E[c+k|0]|a<<8;D[f+56>>2]=a;if(a>>>0<131072){continue}break}}e=a&32767;k=D[d+(e<<2)>>2];l=b+(k<<3)|0;a=(J(D[l>>2],a>>>15|0)+e|0)-D[l+4>>2]|0;D[f+56>>2]=a;D[u+(q<<2)>>2]=k;k=1;q=q+1|0;if((n|0)!=(q|0)){continue}break}}a=D[f+36>>2];if(a){D[f+40>>2]=a;ma(a)}a=D[f+24>>2];if(a){D[f+28>>2]=a;ma(a)}a=D[f+8>>2];if(a){D[f+12>>2]=a;ma(a)}$=f- -64|0;b=k;break g;case 10:n=a;u=d;f=$+-64|0;$=f;D[f+56>>2]=0;D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;h=f+8|0;M:{N:{if(!F[c+38>>1]){break N}if(!Ua(1,h+12|0,c)){break N}i=D[h+12>>2];b=D[h>>2];a=D[h+4>>2]-b>>2;O:{if(i>>>0>a>>>0){sa(h,i-a|0);i=D[h+12>>2];break O}if(a>>>0<=i>>>0){break O}D[h+4>>2]=b+(i<<2)}d=1;if(!i){break M}p=D[c+8>>2];m=D[c+12>>2];r=D[h>>2];b=0;while(1){e=D[c+20>>2];a=D[c+16>>2];d=0;if((m|0)<=(e|0)&p>>>0<=a>>>0|(e|0)>(m|0)){break M}s=D[c>>2];o=E[s+a|0];a=a+1|0;e=a?e:e+1|0;j=a;D[c+16>>2]=a;d=e;D[c+20>>2]=e;a=o>>>2|0;g=0;P:{Q:{R:{S:{t=o&3;switch(t|0){case 0:break Q;case 3:break S;default:break R}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break M}pa(r+(b<<2)|0,0,(o&252)+4|0);b=a;break P}while(1){if((d|0)>=(m|0)&j>>>0>=p>>>0|(d|0)>(m|0)){break N}i=E[j+s|0];e=d;d=j+1|0;e=d?e:e+1|0;j=d;D[c+16>>2]=d;d=e;D[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((t|0)!=(g|0)){continue}break}}D[r+(b<<2)>>2]=a}b=b+1|0;i=D[h+12>>2];if(b>>>0>>0){continue}break}m=h+16|0;o=D[h>>2];b=D[h+16>>2];a=D[h+20>>2]-b|0;T:{if(a>>>0<=262143){sa(m,65536-(a>>>2|0)|0);break T}if((a|0)==262144){break T}D[h+20>>2]=b+262144}a=h+28|0;b=D[a>>2];d=D[h+32>>2]-b>>3;U:{if(d>>>0>>0){db(a,i-d|0);b=D[a>>2];break U}if(d>>>0>i>>>0){D[h+32>>2]=(i<<3)+b}if(!i){break N}}g=0;d=0;while(1){e=o+(g<<2)|0;j=D[e>>2];h=(g<<3)+b|0;a=d;D[h+4>>2]=a;D[h>>2]=j;e=D[e>>2];d=e+a|0;if(d>>>0>65536){break N}V:{if(a>>>0>=d>>>0){break V}h=D[m>>2];j=0;p=e&7;if(p){while(1){D[h+(a<<2)>>2]=g;a=a+1|0;j=j+1|0;if((p|0)!=(j|0)){continue}break}}if(e-1>>>0<=6){break V}while(1){e=h+(a<<2)|0;D[e>>2]=g;D[e+28>>2]=g;D[e+24>>2]=g;D[e+20>>2]=g;D[e+16>>2]=g;D[e+12>>2]=g;D[e+8>>2]=g;D[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((i|0)!=(g|0)){continue}break}l=(d|0)==65536}d=l}W:{if(!d|(D[f+20>>2]?0:n)){break W}d=0;l=$-16|0;$=l;X:{if(!Ta(1,l+8|0,c)){break X}a=D[c+8>>2];b=D[c+16>>2];e=a-b|0;i=D[l+12>>2];g=i;j=D[c+20>>2];h=D[c+12>>2]-(j+(a>>>0>>0)|0)|0;a=D[l+8>>2];if((g|0)==(h|0)&e>>>0>>0|g>>>0>h>>>0){break X}e=i+j|0;g=a+b|0;e=g>>>0>>0?e+1|0:e;D[c+16>>2]=g;D[c+20>>2]=e;if((a|0)<=0){break X}b=b+D[c>>2]|0;D[f+48>>2]=b;c=a-1|0;e=c+b|0;g=E[e|0];Y:{if(g>>>0<=63){D[f+52>>2]=c;a=E[e|0]&63;break Y}Z:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break X}D[f+52>>2]=a-2;a=(a+b|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break Y;case 1:if(a>>>0<3){break X}D[f+52>>2]=a-3;a=(a+b|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break Y;default:break Z}}D[f+52>>2]=a-4;a=(a+b|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}a=a+262144|0;D[f+56>>2]=a;d=a>>>0<67108864}$=l+16|0;if(!d){break W}if(!n){k=1;break W}b=D[f+36>>2];c=D[f+48>>2];d=D[f+24>>2];a=D[f+56>>2];while(1){_:{if(a>>>0>262143){break _}k=D[f+52>>2];while(1){if((k|0)<=0){break _}k=k-1|0;D[f+52>>2]=k;a=E[c+k|0]|a<<8;D[f+56>>2]=a;if(a>>>0<262144){continue}break}}e=a&65535;k=D[d+(e<<2)>>2];l=b+(k<<3)|0;a=(J(D[l>>2],a>>>16|0)+e|0)-D[l+4>>2]|0;D[f+56>>2]=a;D[u+(q<<2)>>2]=k;k=1;q=q+1|0;if((n|0)!=(q|0)){continue}break}}a=D[f+36>>2];if(a){D[f+40>>2]=a;ma(a)}a=D[f+24>>2];if(a){D[f+28>>2]=a;ma(a)}a=D[f+8>>2];if(a){D[f+12>>2]=a;ma(a)}$=f- -64|0;b=k;break g;case 11:n=a;u=d;f=$+-64|0;$=f;D[f+56>>2]=0;D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;h=f+8|0;$:{aa:{if(!F[c+38>>1]){break aa}if(!Ua(1,h+12|0,c)){break aa}i=D[h+12>>2];b=D[h>>2];a=D[h+4>>2]-b>>2;ba:{if(i>>>0>a>>>0){sa(h,i-a|0);i=D[h+12>>2];break ba}if(a>>>0<=i>>>0){break ba}D[h+4>>2]=b+(i<<2)}d=1;if(!i){break $}p=D[c+8>>2];m=D[c+12>>2];r=D[h>>2];b=0;while(1){e=D[c+20>>2];a=D[c+16>>2];d=0;if((m|0)<=(e|0)&p>>>0<=a>>>0|(e|0)>(m|0)){break $}s=D[c>>2];o=E[s+a|0];a=a+1|0;e=a?e:e+1|0;j=a;D[c+16>>2]=a;d=e;D[c+20>>2]=e;a=o>>>2|0;g=0;ca:{da:{ea:{fa:{t=o&3;switch(t|0){case 0:break da;case 3:break fa;default:break ea}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break $}pa(r+(b<<2)|0,0,(o&252)+4|0);b=a;break ca}while(1){if((d|0)>=(m|0)&j>>>0>=p>>>0|(d|0)>(m|0)){break aa}i=E[j+s|0];e=d;d=j+1|0;e=d?e:e+1|0;j=d;D[c+16>>2]=d;d=e;D[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((t|0)!=(g|0)){continue}break}}D[r+(b<<2)>>2]=a}b=b+1|0;i=D[h+12>>2];if(b>>>0>>0){continue}break}m=h+16|0;o=D[h>>2];b=D[h+16>>2];a=D[h+20>>2]-b|0;ga:{if(a>>>0<=1048575){sa(m,262144-(a>>>2|0)|0);break ga}if((a|0)==1048576){break ga}D[h+20>>2]=b- -1048576}a=h+28|0;b=D[a>>2];d=D[h+32>>2]-b>>3;ha:{if(d>>>0>>0){db(a,i-d|0);b=D[a>>2];break ha}if(d>>>0>i>>>0){D[h+32>>2]=(i<<3)+b}if(!i){break aa}}g=0;d=0;while(1){e=o+(g<<2)|0;j=D[e>>2];h=(g<<3)+b|0;a=d;D[h+4>>2]=a;D[h>>2]=j;e=D[e>>2];d=e+a|0;if(d>>>0>262144){break aa}ia:{if(a>>>0>=d>>>0){break ia}h=D[m>>2];j=0;p=e&7;if(p){while(1){D[h+(a<<2)>>2]=g;a=a+1|0;j=j+1|0;if((p|0)!=(j|0)){continue}break}}if(e-1>>>0<=6){break ia}while(1){e=h+(a<<2)|0;D[e>>2]=g;D[e+28>>2]=g;D[e+24>>2]=g;D[e+20>>2]=g;D[e+16>>2]=g;D[e+12>>2]=g;D[e+8>>2]=g;D[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((i|0)!=(g|0)){continue}break}l=(d|0)==262144}d=l}ja:{if(!d|(D[f+20>>2]?0:n)){break ja}d=0;l=$-16|0;$=l;ka:{if(!Ta(1,l+8|0,c)){break ka}a=D[c+8>>2];b=D[c+16>>2];e=a-b|0;i=D[l+12>>2];g=i;j=D[c+20>>2];h=D[c+12>>2]-(j+(a>>>0>>0)|0)|0;a=D[l+8>>2];if((g|0)==(h|0)&e>>>0>>0|g>>>0>h>>>0){break ka}e=i+j|0;g=a+b|0;e=g>>>0>>0?e+1|0:e;D[c+16>>2]=g;D[c+20>>2]=e;if((a|0)<=0){break ka}b=b+D[c>>2]|0;D[f+48>>2]=b;c=a-1|0;e=c+b|0;g=E[e|0];la:{if(g>>>0<=63){D[f+52>>2]=c;a=E[e|0]&63;break la}ma:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break ka}D[f+52>>2]=a-2;a=(a+b|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break la;case 1:if(a>>>0<3){break ka}D[f+52>>2]=a-3;a=(a+b|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break la;default:break ma}}D[f+52>>2]=a-4;a=(a+b|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}a=a- -1048576|0;D[f+56>>2]=a;d=a>>>0<268435456}$=l+16|0;if(!d){break ja}if(!n){k=1;break ja}b=D[f+36>>2];c=D[f+48>>2];d=D[f+24>>2];a=D[f+56>>2];while(1){na:{if(a>>>0>1048575){break na}k=D[f+52>>2];while(1){if((k|0)<=0){break na}k=k-1|0;D[f+52>>2]=k;a=E[c+k|0]|a<<8;D[f+56>>2]=a;if(a>>>0<1048576){continue}break}}e=a&262143;k=D[d+(e<<2)>>2];l=b+(k<<3)|0;a=(J(D[l>>2],a>>>18|0)+e|0)-D[l+4>>2]|0;D[f+56>>2]=a;D[u+(q<<2)>>2]=k;k=1;q=q+1|0;if((n|0)!=(q|0)){continue}break}}a=D[f+36>>2];if(a){D[f+40>>2]=a;ma(a)}a=D[f+24>>2];if(a){D[f+28>>2]=a;ma(a)}a=D[f+8>>2];if(a){D[f+12>>2]=a;ma(a)}$=f- -64|0;b=k;break g;case 12:n=a;u=d;f=$+-64|0;$=f;D[f+56>>2]=0;D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;h=f+8|0;oa:{pa:{if(!F[c+38>>1]){break pa}if(!Ua(1,h+12|0,c)){break pa}i=D[h+12>>2];b=D[h>>2];a=D[h+4>>2]-b>>2;qa:{if(i>>>0>a>>>0){sa(h,i-a|0);i=D[h+12>>2];break qa}if(a>>>0<=i>>>0){break qa}D[h+4>>2]=b+(i<<2)}d=1;if(!i){break oa}p=D[c+8>>2];m=D[c+12>>2];r=D[h>>2];b=0;while(1){e=D[c+20>>2];a=D[c+16>>2];d=0;if((m|0)<=(e|0)&p>>>0<=a>>>0|(e|0)>(m|0)){break oa}s=D[c>>2];o=E[s+a|0];a=a+1|0;e=a?e:e+1|0;j=a;D[c+16>>2]=a;d=e;D[c+20>>2]=e;a=o>>>2|0;g=0;ra:{sa:{ta:{ua:{t=o&3;switch(t|0){case 0:break sa;case 3:break ua;default:break ta}}a=a+b|0;d=0;if(a>>>0>=i>>>0){break oa}pa(r+(b<<2)|0,0,(o&252)+4|0);b=a;break ra}while(1){if((d|0)>=(m|0)&j>>>0>=p>>>0|(d|0)>(m|0)){break pa}i=E[j+s|0];e=d;d=j+1|0;e=d?e:e+1|0;j=d;D[c+16>>2]=d;d=e;D[c+20>>2]=e;a=i<<(g<<3|6)|a;g=g+1|0;if((t|0)!=(g|0)){continue}break}}D[r+(b<<2)>>2]=a}b=b+1|0;i=D[h+12>>2];if(b>>>0>>0){continue}break}m=h+16|0;o=D[h>>2];b=D[h+16>>2];a=D[h+20>>2]-b|0;va:{if(a>>>0<=2097151){sa(m,524288-(a>>>2|0)|0);break va}if((a|0)==2097152){break va}D[h+20>>2]=b+2097152}a=h+28|0;b=D[a>>2];d=D[h+32>>2]-b>>3;wa:{if(d>>>0>>0){db(a,i-d|0);b=D[a>>2];break wa}if(d>>>0>i>>>0){D[h+32>>2]=(i<<3)+b}if(!i){break pa}}g=0;d=0;while(1){e=o+(g<<2)|0;j=D[e>>2];h=(g<<3)+b|0;a=d;D[h+4>>2]=a;D[h>>2]=j;e=D[e>>2];d=e+a|0;if(d>>>0>524288){break pa}xa:{if(a>>>0>=d>>>0){break xa}h=D[m>>2];j=0;p=e&7;if(p){while(1){D[h+(a<<2)>>2]=g;a=a+1|0;j=j+1|0;if((p|0)!=(j|0)){continue}break}}if(e-1>>>0<=6){break xa}while(1){e=h+(a<<2)|0;D[e>>2]=g;D[e+28>>2]=g;D[e+24>>2]=g;D[e+20>>2]=g;D[e+16>>2]=g;D[e+12>>2]=g;D[e+8>>2]=g;D[e+4>>2]=g;a=a+8|0;if((d|0)!=(a|0)){continue}break}}g=g+1|0;if((i|0)!=(g|0)){continue}break}l=(d|0)==524288}d=l}ya:{if(!d|(D[f+20>>2]?0:n)){break ya}d=0;l=$-16|0;$=l;za:{if(!Ta(1,l+8|0,c)){break za}a=D[c+8>>2];b=D[c+16>>2];e=a-b|0;i=D[l+12>>2];g=i;j=D[c+20>>2];h=D[c+12>>2]-(j+(a>>>0>>0)|0)|0;a=D[l+8>>2];if((g|0)==(h|0)&e>>>0>>0|g>>>0>h>>>0){break za}e=i+j|0;g=a+b|0;e=g>>>0>>0?e+1|0:e;D[c+16>>2]=g;D[c+20>>2]=e;if((a|0)<=0){break za}b=b+D[c>>2]|0;D[f+48>>2]=b;c=a-1|0;e=c+b|0;g=E[e|0];Aa:{if(g>>>0<=63){D[f+52>>2]=c;a=E[e|0]&63;break Aa}Ba:{switch((g>>>6|0)-1|0){case 0:if(a>>>0<2){break za}D[f+52>>2]=a-2;a=(a+b|0)-2|0;a=E[a+1|0]<<8&16128|E[a|0];break Aa;case 1:if(a>>>0<3){break za}D[f+52>>2]=a-3;a=(a+b|0)-3|0;a=E[a+2|0]<<16&4128768|E[a+1|0]<<8|E[a|0];break Aa;default:break Ba}}D[f+52>>2]=a-4;a=(a+b|0)-4|0;a=E[a+2|0]<<16|E[a+3|0]<<24&1056964608|E[a+1|0]<<8|E[a|0]}a=a+2097152|0;D[f+56>>2]=a;d=a>>>0<536870912}$=l+16|0;if(!d){break ya}if(!n){k=1;break ya}b=D[f+36>>2];c=D[f+48>>2];d=D[f+24>>2];a=D[f+56>>2];while(1){Ca:{if(a>>>0>2097151){break Ca}k=D[f+52>>2];while(1){if((k|0)<=0){break Ca}k=k-1|0;D[f+52>>2]=k;a=E[c+k|0]|a<<8;D[f+56>>2]=a;if(a>>>0<2097152){continue}break}}e=a&524287;k=D[d+(e<<2)>>2];l=b+(k<<3)|0;a=(J(D[l>>2],a>>>19|0)+e|0)-D[l+4>>2]|0;D[f+56>>2]=a;D[u+(q<<2)>>2]=k;k=1;q=q+1|0;if((n|0)!=(q|0)){continue}break}}a=D[f+36>>2];if(a){D[f+40>>2]=a;ma(a)}a=D[f+24>>2];if(a){D[f+28>>2]=a;ma(a)}a=D[f+8>>2];if(a){D[f+12>>2]=a;ma(a)}$=f- -64|0;b=k;break g;case 17:b=Hd(a,c,d);break g;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:e=$+-64|0;$=e;D[e+56>>2]=0;D[e+48>>2]=0;D[e+52>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;Da:{if(!Jd(e+8|0,c)|(D[e+20>>2]?0:a)){break Da}if(!Id(e+8|0,c)){break Da}if(!a){b=1;break Da}l=D[e+36>>2];f=D[e+48>>2];n=D[e+24>>2];c=D[e+56>>2];while(1){Ea:{if(c>>>0>16383){break Ea}b=D[e+52>>2];while(1){if((b|0)<=0){break Ea}b=b-1|0;D[e+52>>2]=b;c=E[b+f|0]|c<<8;D[e+56>>2]=c;if(c>>>0<16384){continue}break}}b=c&4095;u=D[n+(b<<2)>>2];g=l+(u<<3)|0;c=(J(D[g>>2],c>>>12|0)+b|0)-D[g+4>>2]|0;D[e+56>>2]=c;D[(k<<2)+d>>2]=u;b=1;k=k+1|0;if((k|0)!=(a|0)){continue}break}}a=D[e+36>>2];if(a){D[e+40>>2]=a;ma(a)}a=D[e+24>>2];if(a){D[e+28>>2]=a;ma(a)}a=D[e+8>>2];if(a){D[e+12>>2]=a;ma(a)}$=e- -64|0;break g;case 13:case 14:case 15:case 16:break h;default:break g}}b=Hd(a,c,d)}k=b}return k}function ah(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,H=0,I=0,K=0,L=0,M=0,N=0;w=$+-64|0;$=w;D[a+132>>2]=0;if(D[a+148>>2]){b=D[a+144>>2];if(b){while(1){g=D[b>>2];ma(b);b=g;if(b){continue}break}}b=0;D[a+144>>2]=0;g=D[a+140>>2];a:{if(!g){break a}if(g-1>>>0>=3){h=g&-4;while(1){j=b<<2;D[j+D[a+136>>2]>>2]=0;D[D[a+136>>2]+(j|4)>>2]=0;D[D[a+136>>2]+(j|8)>>2]=0;D[D[a+136>>2]+(j|12)>>2]=0;b=b+4|0;q=q+4|0;if((h|0)!=(q|0)){continue}break}}g=g&3;if(!g){break a}while(1){D[D[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}D[a+148>>2]=0}b:{if(!Da(1,w+60|0,D[D[a+4>>2]+32>>2])){break b}D[a+156>>2]=D[w+60>>2];if(!Da(1,w+56|0,D[D[a+4>>2]+32>>2])){break b}c=D[w+56>>2];if(c>>>0>1431655765|G[a+156>>2]>J(c,3)>>>0){break b}b=D[D[a+4>>2]+32>>2];j=D[b+8>>2];h=D[b+12>>2];g=D[b+20>>2];r=j;j=D[b+16>>2];if((h|0)<=(g|0)&r>>>0<=j>>>0|(g|0)>(h|0)){break b}h=E[j+D[b>>2]|0];j=j+1|0;g=j?g:g+1|0;D[b+16>>2]=j;D[b+20>>2]=g;if(!Da(1,w+52|0,b)){break b}r=D[w+52>>2];if(r>>>0>c>>>0|c>>>0>r+((r>>>0)/3|0)>>>0){break b}if(!Da(1,w+48|0,D[D[a+4>>2]+32>>2])){break b}j=D[w+48>>2];if(j>>>0>r>>>0){break b}D[a+28>>2]=D[a+24>>2];g=na(88);Xc(g);b=D[a+8>>2];D[a+8>>2]=g;if(b){cb(b);if(!D[a+8>>2]){break b}}D[a+164>>2]=D[a+160>>2];Jb(a+160|0,c);D[a+176>>2]=D[a+172>>2];Jb(a+172|0,c);D[a- -64>>2]=0;D[a+92>>2]=-1;D[a+84>>2]=-1;D[a+88>>2]=-1;D[a+40>>2]=D[a+36>>2];D[a+52>>2]=D[a+48>>2];D[a+76>>2]=D[a+72>>2];K=a+216|0;zd(K);yd(K,h);if(!Wc(D[a+8>>2],c,j+D[a+156>>2]|0)){break b}b=D[a+156>>2];B[w+8|0]=1;Ea(a+120|0,b+j|0,w+8|0);if((wd(a,D[D[a+4>>2]+32>>2])|0)==-1){break b}f=a+232|0;D[f+144>>2]=a;b=D[(ba[D[D[a>>2]+32>>2]](a)|0)+32>>2];c=D[b>>2]+D[b+16>>2]|0;e=D[(ba[D[D[a>>2]+32>>2]](a)|0)+32>>2];b=D[e+8>>2];e=D[e+16>>2];b=b-e|0;M=f,N=F[D[(ba[D[D[a>>2]+32>>2]](a)|0)+32>>2]+38>>1],C[M+38>>1]=N;D[f>>2]=c;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=b;D[f+12>>2]=0;M=f,N=ba[D[D[a>>2]+36>>2]](a)|0,D[M+148>>2]=N;D[a+372>>2]=h;D[a+384>>2]=j+D[a+156>>2];p=w+8|0;C[p+38>>1]=0;D[p>>2]=0;D[p+8>>2]=0;D[p+12>>2]=0;D[p+16>>2]=0;D[p+20>>2]=0;D[p+24>>2]=0;D[p+28>>2]=0;B[p+29|0]=0;B[p+30|0]=0;B[p+31|0]=0;B[p+32|0]=0;B[p+33|0]=0;B[p+34|0]=0;B[p+35|0]=0;B[p+36|0]=0;h=0;q=$-16|0;$=q;c:{if(!Ma(f+80|0,f)){break c}if(!td(f)){break c}b=D[f+4>>2];D[p>>2]=D[f>>2];D[p+4>>2]=b;b=D[f+36>>2];D[p+32>>2]=D[f+32>>2];D[p+36>>2]=b;b=D[f+28>>2];D[p+24>>2]=D[f+24>>2];D[p+28>>2]=b;b=D[f+20>>2];D[p+16>>2]=D[f+16>>2];D[p+20>>2]=b;b=D[f+12>>2];D[p+8>>2]=D[f+8>>2];D[p+12>>2]=b;D[f+176>>2]=2;D[f+180>>2]=7;b=D[f+152>>2];if((b|0)<0){break c}D[q+12>>2]=0;h=2;j=D[f+156>>2];g=D[f+160>>2]-j>>2;d:{if(g>>>0>>0){xa(f+156|0,b-g|0,q+12|0);h=D[f+176>>2];c=D[f+180>>2];break d}c=7;if(b>>>0>=g>>>0){break d}D[f+160>>2]=j+(b<<2)}j=f+184|0;g=(c-h|0)+1|0;b=D[f+188>>2];h=D[f+184>>2];c=(b-h|0)/12|0;e:{if(g>>>0>c>>>0){g=g-c|0;e=D[j+8>>2];b=D[j+4>>2];f:{if(g>>>0<=(e-b|0)/12>>>0){if(g){c=b;b=J((J(g,12)-12>>>0)/12|0,12)+12|0;b=pa(c,0,b)+b|0}D[j+4>>2]=b;break f}g:{h:{i:{c=D[j>>2];d=(b-c|0)/12|0;h=d+g|0;if(h>>>0<357913942){e=(e-c|0)/12|0;t=e<<1;h=e>>>0<178956970?h>>>0>t>>>0?h:t:357913941;if(h){if(h>>>0>=357913942){break i}n=na(J(h,12))}e=J(d,12)+n|0;d=J((J(g,12)-12>>>0)/12|0,12)+12|0;g=pa(e,0,d);d=d+g|0;h=J(h,12)+n|0;if((b|0)==(c|0)){break h}while(1){e=e-12|0;b=b-12|0;D[e>>2]=D[b>>2];D[e+4>>2]=D[b+4>>2];D[e+8>>2]=D[b+8>>2];D[b+8>>2]=0;D[b>>2]=0;D[b+4>>2]=0;if((b|0)!=(c|0)){continue}break}D[j+8>>2]=h;g=D[j+4>>2];D[j+4>>2]=d;b=D[j>>2];D[j>>2]=e;if((b|0)==(g|0)){break g}while(1){c=g-12|0;h=D[c>>2];if(h){D[g-8>>2]=h;ma(h)}g=c;if((c|0)!=(b|0)){continue}break}break g}qa();T()}ra(1326);T()}D[j+8>>2]=h;D[j+4>>2]=d;D[j>>2]=g}if(b){ma(b)}}c=D[f+188>>2];break e}if(c>>>0<=g>>>0){c=b;break e}c=h+J(g,12)|0;if((b|0)!=(c|0)){while(1){g=b-12|0;h=D[g>>2];if(h){D[b-8>>2]=h;ma(h)}b=g;if((b|0)!=(c|0)){continue}break}}D[f+188>>2]=c}e=f+196|0;h=D[f+184>>2];b=(c-h|0)/12|0;d=D[f+196>>2];g=D[f+200>>2]-d>>2;j:{if(b>>>0>g>>>0){sa(e,b-g|0);h=D[f+184>>2];c=D[f+188>>2];break j}if(b>>>0>=g>>>0){break j}D[f+200>>2]=d+(b<<2)}if((c|0)==(h|0)){h=1;break c}b=0;while(1){k:{if(!Da(1,q+8|0,p)){break k}g=D[f+148>>2];c=(D[g+4>>2]-D[g>>2]>>2>>>0)/3|0;g=D[q+8>>2];if(c>>>0>>0){break k}if(g){c=D[j>>2];n=J(b,12);h=c+n|0;d=D[h>>2];t=D[h+4>>2]-d>>2;l:{if(t>>>0>>0){sa(h,g-t|0);c=D[j>>2];break l}if(g>>>0>=t>>>0){break l}D[h+4>>2]=d+(g<<2)}kc(g,1,p,D[c+n>>2]);D[D[e>>2]+(b<<2)>>2]=g}h=1;b=b+1|0;if(b>>>0<(D[f+188>>2]-D[f+184>>2]|0)/12>>>0){continue}break c}break}h=0}$=q+16|0;m:{if(!h){break m}c=0;b=0;h=0;g=0;n=0;q=0;j=0;t=0;l=$-96|0;$=l;D[l+72>>2]=0;D[l+64>>2]=0;D[l+68>>2]=0;D[l+48>>2]=0;D[l+52>>2]=0;D[l+40>>2]=0;D[l+44>>2]=0;D[l+56>>2]=1065353216;D[l+32>>2]=0;D[l+24>>2]=0;D[l+28>>2]=0;m=1;f=a;z=D[a+124>>2];n:{o:{p:{q:{r:{s:{t:{if((r|0)<=0){break t}A=f+232|0;L=D[f+216>>2]!=D[f+220>>2];u:{while(1){a=q;q=a+1|0;v:{w:{x:{d=D[f+404>>2];if((d|0)==-1){D[f+400>>2]=7;break x}e=-1;i=D[f+428>>2]+(d<<2)|0;k=D[i>>2];d=k-1|0;D[i>>2]=d;if((k|0)<=0){break s}i=D[D[D[f+416>>2]+J(D[f+404>>2],12)>>2]+(d<<2)>>2];d=D[(i<<2)+8928>>2];D[f+400>>2]=d;if(!i){if((c|0)==(g|0)){break s}d=-1;i=D[f+8>>2];s=D[i+24>>2];x=s;u=c-4|0;e=D[u>>2];b=-1;y:{if((e|0)==-1){break y}k=e+1|0;k=(k>>>0)%3|0?k:e-2|0;b=-1;if((k|0)==-1){break y}b=D[D[i>>2]+(k<<2)>>2]}m=D[x+(b<<2)>>2];if((m|0)!=-1){d=m+1|0;d=(d>>>0)%3|0?d:m-2|0}m=D[i+12>>2];k=J(a,3);a=k+1|0;D[m+(e<<2)>>2]=a;y=a<<2;D[y+m>>2]=e;o=k+2|0;D[m+(d<<2)>>2]=o;x=o<<2;D[x+m>>2]=d;m=-1;a=-1;z:{if((e|0)==-1){break z}A:{if((e>>>0)%3|0){e=e-1|0;break A}e=e+2|0;a=-1;if((e|0)==-1){break z}}a=D[D[i>>2]+(e<<2)>>2]}B:{if((d|0)==-1){break B}e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)==-1){break B}m=D[D[i>>2]+(e<<2)>>2]}e=-1;if((a|0)==(b|0)|(b|0)==(m|0)){break s}e=D[i>>2];D[e+(k<<2)>>2]=b;D[e+y>>2]=m;D[e+x>>2]=a;if((a|0)!=-1){D[s+(a<<2)>>2]=o}a=D[f+120>>2]+(b>>>3&536870908)|0;e=D[a>>2];M=a,N=ei(b)&e,D[M>>2]=N;D[u>>2]=k;b=g;hc(A,k);break v}C:{switch(d-1|0){case 2:case 4:if((c|0)==(g|0)){break s}d=D[f+8>>2];e=D[d+12>>2];o=(i|0)==3;i=J(a,3);s=(o?2:1)+i|0;u=s<<2;y=c-4|0;b=D[y>>2];D[e+u>>2]=b;D[e+(b<<2)>>2]=s;Sa(d+24|0);e=-1;c=D[f+8>>2];k=D[c+24>>2];if((z|0)>2]-k>>2){break s}c=D[c>>2];e=D[d+28>>2]-D[d+24>>2]|0;d=(e>>2)-1|0;D[c+u>>2]=d;if(e){D[k+(d<<2)>>2]=s}e=o?i:i+2|0;x=c+(i+o<<2)|0;D:{if((b|0)==-1){D[c+(e<<2)>>2]=-1;d=-1;break D}E:{F:{G:{if((b>>>0)%3|0){d=b-1|0;break G}d=b+2|0;if((d|0)==-1){break F}}d=D[c+(d<<2)>>2];D[c+(e<<2)>>2]=d;if((d|0)==-1){break E}D[k+(d<<2)>>2]=e;break E}D[c+(e<<2)>>2]=-1}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;d=-1;if((b|0)==-1){break D}d=D[c+(b<<2)>>2]}D[x>>2]=d;D[y>>2]=i;b=g;break w;case 6:break x;case 0:break C;default:break s}}if((b|0)==(c|0)){break s}h=c-4|0;k=D[h>>2];D[l+68>>2]=h;H:{I:{J:{K:{L:{o=D[l+44>>2];M:{if(!o){break M}e=D[l+40>>2];s=di(o)>>>0>1;d=a&o+2147483647;N:{if(!s){break N}d=a;if(a>>>0>>0){break N}d=(a>>>0)%(o>>>0)|0}i=d;e=D[e+(i<<2)>>2];if(!e){break M}e=D[e>>2];if(!e){break M}O:{if(!s){d=o-1|0;while(1){o=D[e+4>>2];P:{if((o|0)!=(a|0)){if((i|0)==(d&o)){break P}break M}if((a|0)==D[e+8>>2]){break O}}e=D[e>>2];if(e){continue}break}break M}while(1){d=D[e+4>>2];Q:{if((d|0)!=(a|0)){if(d>>>0>=o>>>0){d=(d>>>0)%(o>>>0)|0}if((d|0)==(i|0)){break Q}break M}if((a|0)==D[e+8>>2]){break O}}e=D[e>>2];if(e){continue}break}break M}if((h|0)!=(v|0)){D[h>>2]=D[e+12>>2];D[l+68>>2]=c;h=c;break M}c=v-b|0;d=c>>2;g=d+1|0;if(g>>>0>=1073741824){break L}h=c>>1;h=c>>>0<2147483644?g>>>0>h>>>0?g:h:1073741823;if(h){if(h>>>0>=1073741824){break o}g=na(h<<2)}else{g=0}d=g+(d<<2)|0;D[d>>2]=D[e+12>>2];v=(h<<2)+g|0;h=d+4|0;if((c|0)>0){oa(g,b,c)}D[l+72>>2]=v;D[l+68>>2]=h;D[l+64>>2]=g;if(b){ma(b)}b=g}if((b|0)==(h|0)){break u}y=h-4|0;c=D[y>>2];e=(c|0)==-1;i=D[f+8>>2];if(!e&D[D[i+12>>2]+(c<<2)>>2]!=-1){break u}o=D[i+12>>2];if((k|0)!=-1&D[o+(k<<2)>>2]!=-1){break u}s=J(a,3);u=s+2|0;D[o+(c<<2)>>2]=u;a=u<<2;D[a+o>>2]=c;d=s+1|0;D[o+(k<<2)>>2]=d;x=d<<2;D[x+o>>2]=k;if(e){break K}if((c>>>0)%3|0){d=c-1|0;break J}d=c+2|0;if((d|0)!=-1){break J}m=D[i>>2];d=-1;break I}qa();T()}d=-1;m=D[i>>2];D[m+(s<<2)>>2]=-1;e=-1;break H}m=D[i>>2];d=D[m+(d<<2)>>2]}D[(s<<2)+m>>2]=d;e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;e=-1;if((c|0)==-1){break H}e=D[(c<<2)+m>>2]}D[m+x>>2]=e;R:{if((k|0)==-1){e=-1;D[a+m>>2]=-1;a=-1;break R}S:{T:{U:{if((k>>>0)%3|0){e=k-1|0;break U}e=k+2|0;if((e|0)==-1){break T}}c=a+m|0;a=D[(e<<2)+m>>2];D[c>>2]=a;if((a|0)==-1){break S}D[D[i+24>>2]+(a<<2)>>2]=u;break S}D[a+m>>2]=-1}e=-1;c=k+1|0;c=(c>>>0)%3|0?c:k-2|0;a=-1;if((c|0)==-1){break R}e=c;a=D[(c<<2)+m>>2]}c=D[f+388>>2];k=d<<2;u=c+k|0;x=c;c=a<<2;D[u>>2]=D[u>>2]+D[x+c>>2];i=D[i+24>>2];c=i+c|0;if((d|0)!=-1){D[i+k>>2]=D[c>>2]}V:{if((e|0)==-1){break V}while(1){D[(e<<2)+m>>2]=d;i=e+1|0;e=(i>>>0)%3|0?i:e-2|0;if((e|0)==-1){break V}e=D[o+(e<<2)>>2];if((e|0)==-1){break V}i=e+1|0;e=(i>>>0)%3|0?i:e-2|0;if((e|0)!=-1){continue}break}}D[c>>2]=-1;W:{if(L){break W}if((t|0)!=(H|0)){D[t>>2]=a;t=t+4|0;D[l+28>>2]=t;break W}X:{c=H-n|0;d=c>>2;j=d+1|0;if(j>>>0<1073741824){e=c>>1;e=c>>>0<2147483644?e>>>0>>0?j:e:1073741823;if(e){if(e>>>0>=1073741824){break X}j=na(e<<2)}else{j=0}d=j+(d<<2)|0;D[d>>2]=a;H=(e<<2)+j|0;t=d+4|0;if((c|0)>0){oa(j,n,c)}D[l+32>>2]=H;D[l+28>>2]=t;D[l+24>>2]=j;if(n){ma(n)}n=j;break W}qa();T()}break o}D[y>>2]=s;c=h;hc(A,s);break v}i=D[f+8>>2];Sa(i+24|0);e=-1;d=D[f+8>>2];h=J(a,3);k=D[i+28>>2]-D[i+24>>2]|0;i=k>>2;s=i-1|0;D[D[d>>2]+(h<<2)>>2]=s;Sa(d+24|0);o=h+1|0;D[D[d>>2]+(o<<2)>>2]=(D[d+28>>2]-D[d+24>>2]>>2)-1;d=D[f+8>>2];Sa(d+24|0);u=h+2|0;D[D[d>>2]+(u<<2)>>2]=(D[d+28>>2]-D[d+24>>2]>>2)-1;y=D[f+8>>2];d=D[y+24>>2];if((z|0)>2]-d>>2){break s}Y:{Z:{if(!k){D[d+(i<<2)>>2]=o;e=1;break Z}D[d+(s<<2)>>2]=h;e=0;if((k|0)==-4){break Z}D[d+(i<<2)>>2]=o;e=i+1|0;if((e|0)==-1){break Y}}D[d+(e<<2)>>2]=u}if((c|0)!=(v|0)){D[c>>2]=h;h=c+4|0;D[l+68>>2]=h;break w}c=v-g|0;d=c>>2;b=d+1|0;if(b>>>0>=1073741824){break r}e=c>>1;e=c>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>=1073741824){break o}b=na(e<<2)}else{b=0}d=b+(d<<2)|0;D[d>>2]=h;v=(e<<2)+b|0;h=d+4|0;if((c|0)>0){oa(b,g,c)}D[l+72>>2]=v;D[l+68>>2]=h;D[l+64>>2]=b;if(g){ma(g)}g=b}hc(A,D[h-4>>2]);e=D[f+40>>2];_:{if((e|0)==D[f+36>>2]){break _}d=r+(a^-1)|0;i=h-4|0;while(1){a=D[e-8>>2];if(a>>>0>d>>>0){break u}if((a|0)!=(d|0)){break _}k=E[e-4|0];a=e-12|0;c=D[a>>2];D[f+40>>2]=a;if((c|0)<0){break u}a=D[i>>2];D[l+20>>2]=r+(c^-1);c=l+20|0;D[l+88>>2]=c;sd(l,l+40|0,c,l+88|0);e=D[l>>2];$:{if(k&1){c=-1;if((a|0)==-1){break $}c=a+1|0;c=(c>>>0)%3|0?c:a-2|0;break $}c=-1;if((a|0)==-1){break $}c=a-1|0;if((a>>>0)%3|0){break $}c=a+2|0}D[e+12>>2]=c;e=D[f+40>>2];if((e|0)!=D[f+36>>2]){continue}break}}c=h}m=(q|0)<(r|0);if((q|0)!=(r|0)){continue}break}q=r;break t}e=-1;if(m){break s}}e=-1;c=D[f+8>>2];if((z|0)>2]-D[c+24>>2]>>2){break s}if((g|0)!=(h|0)){r=f+60|0;s=f+312|0;while(1){h=h-4|0;i=D[h>>2];D[l+68>>2]=h;aa:{if(Ga(s)){k=D[f+8>>2];m=D[k>>2];if(((D[k+4>>2]-m>>2>>>0)/3|0)<=(q|0)){break s}b=-1;a=-1;d=D[k+24>>2];c=-1;ba:{if((i|0)==-1){break ba}n=i+1|0;n=(n>>>0)%3|0?n:i-2|0;c=-1;if((n|0)==-1){break ba}c=D[m+(n<<2)>>2]}n=c;c=D[d+(n<<2)>>2];ca:{if((c|0)==-1){break ca}v=c+1|0;c=(v>>>0)%3|0?v:c-2|0;if((c|0)==-1){break ca}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){a=D[m+(b<<2)>>2]}b=c}v=-1;o=-1;d=D[d+(a<<2)>>2];c=-1;da:{if((d|0)==-1){break da}z=d+1|0;d=(z>>>0)%3|0?z:d-2|0;c=-1;if((d|0)==-1){break da}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)!=-1){o=D[m+(c<<2)>>2]}c=d}d=D[k+12>>2];k=J(q,3);z=k<<2;D[d+z>>2]=i;D[d+(i<<2)>>2]=k;i=k+1|0;A=i<<2;D[A+d>>2]=b;D[d+(b<<2)>>2]=i;b=k+2|0;H=b<<2;D[H+d>>2]=c;D[d+(c<<2)>>2]=b;D[m+z>>2]=a;c=m+A|0;D[c>>2]=o;m=m+H|0;D[m>>2]=n;d=i>>>0>>0?-1:a;a=D[f+120>>2];n=(d>>>3&536870908)+a|0;o=D[n>>2];M=n,N=ei(d)&o,D[M>>2]=N;v=(i|0)!=-1?D[c>>2]:v;c=a+(v>>>3&536870908)|0;d=D[c>>2];M=c,N=ei(v)&d,D[M>>2]=N;d=-1;d=(b|0)!=-1?D[m>>2]:d;a=a+(d>>>3&536870908)|0;b=D[a>>2];M=a,N=ei(d)&b,D[M>>2]=N;d=D[f+64>>2];a=D[f+68>>2];if((d|0)==a<<5){if((d+1|0)<0){break q}if(d>>>0<=1073741822){b=d+32&-32;a=a<<6;a=a>>>0>>0?b:a}else{a=2147483647}Va(r,a);d=D[f+64>>2]}q=q+1|0;D[f+64>>2]=d+1;a=D[f+60>>2]+(d>>>3&536870908)|0;D[a>>2]=D[a>>2]|1<>2];if((a|0)!=D[f+80>>2]){D[a>>2]=k;D[f+76>>2]=a+4;break aa}c=D[f+72>>2];b=a-c|0;n=b>>2;a=n+1|0;if(a>>>0>=1073741824){break p}d=b>>1;d=b>>>0<2147483644?a>>>0>d>>>0?a:d:1073741823;if(d){if(d>>>0>=1073741824){break o}a=na(d<<2)}else{a=0}n=a+(n<<2)|0;D[n>>2]=k;if((b|0)>0){oa(a,c,b)}D[f+80>>2]=a+(d<<2);D[f+76>>2]=n+4;D[f+72>>2]=a;if(!c){break aa}ma(c);break aa}c=D[f+64>>2];a=D[f+68>>2];if((c|0)==a<<5){if((c+1|0)<0){break q}if(c>>>0<=1073741822){b=c+32&-32;a=a<<6;a=a>>>0>>0?b:a}else{a=2147483647}Va(r,a);c=D[f+64>>2]}D[f+64>>2]=c+1;a=D[f+60>>2]+(c>>>3&536870908)|0;b=D[a>>2];M=a,N=ei(c)&b,D[M>>2]=N;a=D[f+76>>2];if((a|0)!=D[f+80>>2]){D[a>>2]=i;D[f+76>>2]=a+4;break aa}c=D[f+72>>2];b=a-c|0;n=b>>2;a=n+1|0;if(a>>>0>=1073741824){break p}d=b>>1;d=b>>>0<2147483644?a>>>0>d>>>0?a:d:1073741823;if(d){if(d>>>0>=1073741824){break o}a=na(d<<2)}else{a=0}n=a+(n<<2)|0;D[n>>2]=i;if((b|0)>0){oa(a,c,b)}D[f+80>>2]=a+(d<<2);D[f+76>>2]=n+4;D[f+72>>2]=a;if(!c){break aa}ma(c)}if((g|0)!=(h|0)){continue}break}c=D[f+8>>2]}if(((D[c+4>>2]-D[c>>2]>>2>>>0)/3|0)!=(q|0)){break s}d=D[c+24>>2];e=D[c+28>>2]-d>>2;if((j|0)==(t|0)){j=t;break s}a=j;while(1){b=D[a>>2];h=e-1|0;m=(h<<2)+d|0;if(D[m>>2]==-1){while(1){h=e-2|0;e=e-1|0;m=(h<<2)+d|0;if(D[m>>2]==-1){continue}break}}if(b>>>0<=h>>>0){D[l>>2]=c;d=D[m>>2];B[l+12|0]=1;D[l+8>>2]=d;D[l+4>>2]=d;if((d|0)!=-1){while(1){D[D[c>>2]+(d<<2)>>2]=b;lc(l);c=D[f+8>>2];d=D[l+8>>2];if((d|0)!=-1){continue}break}}d=D[c+24>>2];q=d+(h<<2)|0;if((b|0)!=-1){D[(b<<2)+d>>2]=D[q>>2]}D[q>>2]=-1;q=1<>2];b=r+(b>>>3&536870908)|0;r=r+(h>>>3&536870908)|0;h=1<>2]&h){q=q|D[b>>2]}else{q=D[b>>2]&(q^-1)}D[b>>2]=q;D[r>>2]=D[r>>2]&(h^-1);e=e-1|0}a=a+4|0;if((t|0)!=(a|0)){continue}break}}if(j){ma(j)}a=D[l+48>>2];if(a){while(1){b=D[a>>2];ma(a);a=b;if(a){continue}break}}a=D[l+40>>2];D[l+40>>2]=0;if(a){ma(a)}if(g){D[l+68>>2]=g;ma(g)}$=l+96|0;break n}qa();T()}Fa();T()}qa();T()}ra(1326);T()}if((e|0)==-1){break m}a=D[p+16>>2];b=a+D[p>>2]|0;g=D[p+8>>2];g=g-a|0;a=D[D[f+4>>2]+32>>2];C[a+38>>1]=F[a+38>>1];D[a>>2]=b;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=g;D[a+12>>2]=0;ea:{if(D[f+216>>2]==D[f+220>>2]){break ea}a=D[f+8>>2];if(D[a+4>>2]==D[a>>2]){break ea}b=0;while(1){if(vd(f,b)){b=b+3|0;a=D[f+8>>2];if(b>>>0>2]-D[a>>2]>>2>>>0){continue}break ea}break}break m}if(E[f+308|0]){B[f+308|0]=0;g=D[f+292>>2];a=0;b=D[f+304>>2]+7|0;a=b>>>0<7?1:a;j=a<<29|b>>>3;b=j+D[f+288>>2]|0;a=(a>>>3|0)+g|0;D[f+288>>2]=b;D[f+292>>2]=b>>>0>>0?a+1|0:a}b=D[f+216>>2];if((b|0)!=D[f+220>>2]){while(1){a=J(I,144);Uc((a+b|0)+4|0,D[f+8>>2]);c=D[K>>2];g=a+c|0;b=D[g+132>>2];g=D[g+136>>2];if((b|0)!=(g|0)){while(1){Sc((a+c|0)+4|0,D[b>>2]);c=D[K>>2];b=b+4|0;if((g|0)!=(b|0)){continue}break}}Tc((a+c|0)+4|0);I=I+1|0;b=D[f+216>>2];if(I>>>0<(D[f+220>>2]-b|0)/144>>>0){continue}break}}a=D[f+8>>2];Ib(f+184|0,D[a+28>>2]-D[a+24>>2]>>2);c=D[f+216>>2];if((c|0)!=D[f+220>>2]){b=0;while(1){a=J(b,144)+c|0;g=D[a+60>>2]-D[a+56>>2]>>2;c=a+104|0;a=D[f+8>>2];a=D[a+28>>2]-D[a+24>>2]>>2;Ib(c,(a|0)>(g|0)?a:g);b=b+1|0;c=D[f+216>>2];if(b>>>0<(D[f+220>>2]-c|0)/144>>>0){continue}break}}I=ud(f,e)}}$=w- -64|0;return I|0}function dh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,H=0,I=0,K=0,L=0;v=$+-64|0;$=v;D[a+132>>2]=0;if(D[a+148>>2]){b=D[a+144>>2];if(b){while(1){d=D[b>>2];ma(b);b=d;if(d){continue}break}}b=0;D[a+144>>2]=0;d=D[a+140>>2];a:{if(!d){break a}if(d-1>>>0>=3){h=d&-4;while(1){c=b<<2;D[c+D[a+136>>2]>>2]=0;D[D[a+136>>2]+(c|4)>>2]=0;D[D[a+136>>2]+(c|8)>>2]=0;D[D[a+136>>2]+(c|12)>>2]=0;b=b+4|0;e=e+4|0;if((h|0)!=(e|0)){continue}break}}d=d&3;if(!d){break a}while(1){D[D[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;n=n+1|0;if((d|0)!=(n|0)){continue}break}}D[a+148>>2]=0}b:{if(!Da(1,v+60|0,D[D[a+4>>2]+32>>2])){break b}D[a+156>>2]=D[v+60>>2];if(!Da(1,v+56|0,D[D[a+4>>2]+32>>2])){break b}e=D[v+56>>2];if(e>>>0>1431655765|G[a+156>>2]>J(e,3)>>>0){break b}d=D[D[a+4>>2]+32>>2];c=D[d+8>>2];n=D[d+12>>2];b=D[d+20>>2];f=c;c=D[d+16>>2];if((n|0)<=(b|0)&f>>>0<=c>>>0|(b|0)>(n|0)){break b}n=E[c+D[d>>2]|0];c=c+1|0;b=c?b:b+1|0;D[d+16>>2]=c;D[d+20>>2]=b;if(!Da(1,v+52|0,d)){break b}m=D[v+52>>2];if(m>>>0>e>>>0|e>>>0>m+((m>>>0)/3|0)>>>0){break b}if(!Da(1,v+48|0,D[D[a+4>>2]+32>>2])){break b}d=D[v+48>>2];if(d>>>0>m>>>0){break b}D[a+28>>2]=D[a+24>>2];c=na(88);Xc(c);b=D[a+8>>2];D[a+8>>2]=c;if(b){cb(b);if(!D[a+8>>2]){break b}}D[a+164>>2]=D[a+160>>2];Jb(a+160|0,e);D[a+176>>2]=D[a+172>>2];Jb(a+172|0,e);D[a- -64>>2]=0;D[a+92>>2]=-1;D[a+84>>2]=-1;D[a+88>>2]=-1;D[a+40>>2]=D[a+36>>2];D[a+52>>2]=D[a+48>>2];D[a+76>>2]=D[a+72>>2];H=a+216|0;zd(H);yd(H,n);if(!Wc(D[a+8>>2],e,d+D[a+156>>2]|0)){break b}b=D[a+156>>2];B[v+8|0]=1;Ea(a+120|0,b+d|0,v+8|0);if((wd(a,D[D[a+4>>2]+32>>2])|0)==-1){break b}d=a+232|0;D[d+144>>2]=a;b=D[(ba[D[D[a>>2]+32>>2]](a)|0)+32>>2];e=D[b>>2]+D[b+16>>2]|0;c=D[(ba[D[D[a>>2]+32>>2]](a)|0)+32>>2];b=D[c+8>>2];c=D[c+16>>2];b=b-c|0;K=d,L=F[D[(ba[D[D[a>>2]+32>>2]](a)|0)+32>>2]+38>>1],C[K+38>>1]=L;D[d>>2]=e;D[d+16>>2]=0;D[d+20>>2]=0;D[d+8>>2]=b;D[d+12>>2]=0;D[a+372>>2]=n;o=v+8|0;C[o+38>>1]=0;D[o>>2]=0;D[o+8>>2]=0;D[o+12>>2]=0;D[o+16>>2]=0;D[o+20>>2]=0;D[o+24>>2]=0;D[o+28>>2]=0;B[o+29|0]=0;B[o+30|0]=0;B[o+31|0]=0;B[o+32|0]=0;B[o+33|0]=0;B[o+34|0]=0;B[o+35|0]=0;B[o+36|0]=0;b=0;n=$-16|0;$=n;e=D[d+4>>2];D[d+40>>2]=D[d>>2];D[d+44>>2]=e;e=D[d+36>>2];D[d+72>>2]=D[d+32>>2];D[d+76>>2]=e;c=D[d+28>>2];e=d- -64|0;D[e>>2]=D[d+24>>2];D[e+4>>2]=c;e=D[d+20>>2];D[d+56>>2]=D[d+16>>2];D[d+60>>2]=e;e=D[d+12>>2];D[d+48>>2]=D[d+8>>2];D[d+52>>2]=e;c:{d:{if(ec(d+40|0,1,n+8|0)){e=D[d+44>>2];D[d>>2]=D[d+40>>2];D[d+4>>2]=e;e=D[d+76>>2];D[d+32>>2]=D[d+72>>2];D[d+36>>2]=e;e=D[d+68>>2];D[d+24>>2]=D[d+64>>2];D[d+28>>2]=e;c=D[d+60>>2];h=c;e=D[d+56>>2];D[d+16>>2]=e;D[d+20>>2]=c;f=D[d+52>>2];c=D[d+48>>2];D[d+8>>2]=c;D[d+12>>2]=f;g=c-e|0;k=D[n+12>>2];f=f-((c>>>0>>0)+h|0)|0;c=D[n+8>>2];if((k|0)==(f|0)&g>>>0>=c>>>0|f>>>0>k>>>0){break d}}break c}f=c+e|0;e=h+k|0;D[d+16>>2]=f;D[d+20>>2]=c>>>0>f>>>0?e+1|0:e;if(!Ma(d+80|0,d)){break c}if(!td(d)){break c}b=D[d+4>>2];D[o>>2]=D[d>>2];D[o+4>>2]=b;b=D[d+36>>2];D[o+32>>2]=D[d+32>>2];D[o+36>>2]=b;b=D[d+28>>2];D[o+24>>2]=D[d+24>>2];D[o+28>>2]=b;b=D[d+20>>2];D[o+16>>2]=D[d+16>>2];D[o+20>>2]=b;b=D[d+12>>2];D[o+8>>2]=D[d+8>>2];D[o+12>>2]=b;b=1}$=n+16|0;e:{if(!b){break e}e=0;b=0;d=0;n=0;k=$-96|0;$=k;D[k+72>>2]=0;D[k+64>>2]=0;D[k+68>>2]=0;D[k+48>>2]=0;D[k+52>>2]=0;D[k+40>>2]=0;D[k+44>>2]=0;D[k+56>>2]=1065353216;D[k+32>>2]=0;D[k+24>>2]=0;D[k+28>>2]=0;j=1;h=a;t=D[a+124>>2];f:{g:{h:{i:{j:{k:{l:{m:{if((m|0)<=0){break m}I=D[h+216>>2]!=D[h+220>>2];while(1){f=r;r=f+1|0;n:{o:{p:{q:{r:{s:{t:{u:{v:{w:{x:{if(!E[h+308|0]){break x}y:{z:{g=D[h+296>>2];c=D[h+304>>2];a=g+(c>>>3|0)|0;l=D[h+300>>2];if(a>>>0>=l>>>0){break z}i=E[a|0];a=c+1|0;D[h+304>>2]=a;if(!(i>>>(c&7)&1)){break z}i=a>>>3|0;p=g+i|0;A:{if(p>>>0>=l>>>0){c=a;a=0;break A}p=E[p|0];c=c+2|0;D[h+304>>2]=c;i=c>>>3|0;a=p>>>(a&7)&1}g=g+i|0;if(g>>>0>>0){g=E[g|0];D[h+304>>2]=c+1;c=g>>>(c&7)<<1&2}else{c=0}a=(a|c)<<1;switch(a-1|0){case 0:case 2:case 4:break h;case 5:break w;case 1:case 3:break y;default:break x}}if((b|0)==(d|0)){c=-1;break l}i=-1;g=D[h+8>>2];p=D[g+24>>2];s=d-4|0;c=D[s>>2];a=-1;B:{if((c|0)==-1){break B}j=c+1|0;j=(j>>>0)%3|0?j:c-2|0;a=-1;if((j|0)==-1){break B}a=D[D[g>>2]+(j<<2)>>2]}e=D[p+(a<<2)>>2];if((e|0)!=-1){j=e+1|0;i=(j>>>0)%3|0?j:e-2|0}e=D[g+12>>2];f=J(f,3);j=f+1|0;D[e+(c<<2)>>2]=j;w=j<<2;D[w+e>>2]=c;l=f+2|0;D[e+(i<<2)>>2]=l;x=l<<2;D[x+e>>2]=i;j=-1;e=-1;C:{if((c|0)==-1){break C}D:{if((c>>>0)%3|0){c=c-1|0;break D}c=c+2|0;e=-1;if((c|0)==-1){break C}}e=D[D[g>>2]+(c<<2)>>2]}E:{if((i|0)==-1){break E}c=i+1|0;c=(c>>>0)%3|0?c:i-2|0;if((c|0)==-1){break E}j=D[D[g>>2]+(c<<2)>>2]}c=-1;if((a|0)==(e|0)|(a|0)==(j|0)){break l}c=D[g>>2];D[c+(f<<2)>>2]=a;D[c+w>>2]=j;D[c+x>>2]=e;if((e|0)!=-1){D[p+(e<<2)>>2]=l}e=D[h+120>>2]+(a>>>3&536870908)|0;c=D[e>>2];K=e,L=ei(a)&c,D[K>>2]=L;D[s>>2]=f;e=b;break n}if((b|0)==(d|0)){c=-1;break l}e=D[h+8>>2];c=D[e+12>>2];g=J(f,3);p=(a|1)==5;i=g+(p?2:1)|0;w=i<<2;x=d-4|0;a=D[x>>2];D[c+w>>2]=a;D[c+(a<<2)>>2]=i;Sa(e+24|0);c=-1;s=D[h+8>>2];l=D[s+24>>2];if((t|0)>2]-l>>2){break l}c=D[s>>2];e=D[e+28>>2]-D[e+24>>2]|0;s=(e>>2)-1|0;D[c+w>>2]=s;if(e){D[l+(s<<2)>>2]=i}i=p?g:g+2|0;p=c+(g+p<<2)|0;F:{if((a|0)==-1){D[c+(i<<2)>>2]=-1;e=-1;break F}G:{H:{I:{if((a>>>0)%3|0){e=a-1|0;break I}e=a+2|0;if((e|0)==-1){break H}}e=D[c+(e<<2)>>2];D[c+(i<<2)>>2]=e;if((e|0)==-1){break G}D[l+(e<<2)>>2]=i;break G}D[c+(i<<2)>>2]=-1}i=a+1|0;a=(i>>>0)%3|0?i:a-2|0;e=-1;if((a|0)==-1){break F}e=D[c+(a<<2)>>2]}D[p>>2]=e;D[x>>2]=g;e=b;break v}if((b|0)==(d|0)){c=-1;break l}a=d-4|0;l=D[a>>2];D[k+68>>2]=a;i=D[k+44>>2];J:{if(!i){d=a;break J}g=di(i)>>>0>1;K:{if(!g){e=f&i+2147483647;break K}e=f;if(i>>>0>e>>>0){break K}e=(f>>>0)%(i>>>0)|0}c=D[D[k+40>>2]+(e<<2)>>2];if(!c){d=a;break J}c=D[c>>2];if(!c){d=a;break J}L:{if(!g){g=i-1|0;while(1){i=D[c+4>>2];M:{if((i|0)!=(f|0)){if((g&i)==(e|0)){break M}d=a;break J}if((f|0)==D[c+8>>2]){break L}}c=D[c>>2];if(c){continue}break}d=a;break J}while(1){g=D[c+4>>2];N:{if((g|0)!=(f|0)){if(g>>>0>=i>>>0){g=(g>>>0)%(i>>>0)|0}if((e|0)==(g|0)){break N}d=a;break J}if((f|0)==D[c+8>>2]){break L}}c=D[c>>2];if(c){continue}break}d=a;break J}if((a|0)!=(u|0)){D[a>>2]=D[c+12>>2];D[k+68>>2]=d;break J}a=u-b|0;e=a>>2;d=e+1|0;if(d>>>0>=1073741824){break t}q=a>>1;d=a>>>0<2147483644?d>>>0>q>>>0?d:q:1073741823;if(d){if(d>>>0>=1073741824){break g}q=na(d<<2)}else{q=0}e=q+(e<<2)|0;D[e>>2]=D[c+12>>2];u=(d<<2)+q|0;d=e+4|0;if((a|0)>0){oa(q,b,a)}D[k+72>>2]=u;D[k+68>>2]=d;D[k+64>>2]=q;if(!b){break J}ma(b)}if((d|0)==(q|0)){break u}w=d-4|0;a=D[w>>2];e=(a|0)==-1;b=D[h+8>>2];if(!e&D[D[b+12>>2]+(a<<2)>>2]!=-1){break u}g=D[b+12>>2];if((l|0)!=-1&D[g+(l<<2)>>2]!=-1){break u}f=J(f,3);s=f+2|0;D[g+(a<<2)>>2]=s;p=s<<2;D[p+g>>2]=a;c=f+1|0;D[g+(l<<2)>>2]=c;x=c<<2;D[x+g>>2]=l;if(e){break s}if((a>>>0)%3|0){j=a-1|0;break q}j=a+2|0;if((j|0)!=-1){break q}i=D[b>>2];e=-1;break p}i=D[h+8>>2];Sa(i+24|0);c=-1;g=D[h+8>>2];a=J(f,3);l=D[i+28>>2]-D[i+24>>2]|0;i=l>>2;s=i-1|0;D[D[g>>2]+(a<<2)>>2]=s;Sa(g+24|0);p=a+1|0;D[D[g>>2]+(p<<2)>>2]=(D[g+28>>2]-D[g+24>>2]>>2)-1;g=D[h+8>>2];Sa(g+24|0);w=a+2|0;D[D[g>>2]+(w<<2)>>2]=(D[g+28>>2]-D[g+24>>2]>>2)-1;x=D[h+8>>2];g=D[x+24>>2];if((t|0)>2]-g>>2){break l}O:{P:{if(!l){D[g+(i<<2)>>2]=p;c=1;break P}D[g+(s<<2)>>2]=a;c=0;if((l|0)==-4){break P}D[g+(i<<2)>>2]=p;c=i+1|0;if((c|0)==-1){break O}}D[g+(c<<2)>>2]=w}if((d|0)!=(u|0)){D[d>>2]=a;d=d+4|0;D[k+68>>2]=d;break v}b=d-e|0;c=b>>2;d=c+1|0;if(d>>>0>=1073741824){break r}q=b>>1;d=b>>>0<2147483644?d>>>0>q>>>0?d:q:1073741823;if(d){if(d>>>0>=1073741824){break g}q=na(d<<2)}else{q=0}c=q+(c<<2)|0;D[c>>2]=a;u=(d<<2)+q|0;d=c+4|0;if((b|0)>0){oa(q,e,b)}D[k+72>>2]=u;D[k+68>>2]=d;D[k+64>>2]=q;if(e){ma(e)}b=q;e=b}c=D[h+40>>2];if((c|0)==D[h+36>>2]){break n}f=m+(f^-1)|0;g=d-4|0;while(1){a=D[c-8>>2];if(a>>>0>f>>>0){break u}if((a|0)!=(f|0)){break n}i=E[c-4|0];a=c-12|0;c=D[a>>2];D[h+40>>2]=a;if((c|0)<0){break u}a=D[g>>2];D[k+20>>2]=m+(c^-1);c=k+20|0;D[k+88>>2]=c;sd(k,k+40|0,c,k+88|0);p=D[k>>2];Q:{if(i&1){c=-1;if((a|0)==-1){break Q}c=a+1|0;c=(c>>>0)%3|0?c:a-2|0;break Q}c=-1;if((a|0)==-1){break Q}c=a-1|0;if((a>>>0)%3|0){break Q}c=a+2|0}D[p+12>>2]=c;c=D[h+40>>2];if((c|0)!=D[h+36>>2]){continue}break}break n}c=-1;if(j&1){break l}break m}qa();T()}e=-1;i=D[b>>2];D[i+(f<<2)>>2]=-1;c=-1;break o}qa();T()}i=D[b>>2];e=D[i+(j<<2)>>2]}D[(f<<2)+i>>2]=e;j=a+1|0;a=(j>>>0)%3|0?j:a-2|0;c=-1;if((a|0)==-1){break o}c=D[(a<<2)+i>>2]}D[i+x>>2]=c;R:{if((l|0)==-1){D[i+p>>2]=-1;j=-1;c=-1;break R}S:{T:{U:{if((l>>>0)%3|0){c=l-1|0;break U}c=l+2|0;if((c|0)==-1){break T}}a=D[(c<<2)+i>>2];D[i+p>>2]=a;if((a|0)==-1){break S}D[D[b+24>>2]+(a<<2)>>2]=s;break S}D[i+p>>2]=-1}j=-1;a=l+1|0;a=(a>>>0)%3|0?a:l-2|0;c=-1;if((a|0)==-1){break R}j=D[(a<<2)+i>>2];c=a}b=D[b+24>>2];a=b+(j<<2)|0;if((e|0)!=-1){D[b+(e<<2)>>2]=D[a>>2]}V:{if((c|0)==-1){break V}while(1){D[(c<<2)+i>>2]=e;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1){break V}b=D[g+(b<<2)>>2];if((b|0)==-1){break V}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}D[a>>2]=-1;W:{if(I){break W}if((y|0)!=(z|0)){D[y>>2]=j;y=y+4|0;D[k+28>>2]=y;break W}X:{b=z-n|0;c=b>>2;a=c+1|0;if(a>>>0<1073741824){e=b>>1;e=b>>>0<2147483644?a>>>0>e>>>0?a:e:1073741823;if(e){if(e>>>0>=1073741824){break X}a=na(e<<2)}else{a=0}c=a+(c<<2)|0;D[c>>2]=j;z=a+(e<<2)|0;y=c+4|0;if((b|0)>0){oa(a,n,b)}D[k+32>>2]=z;D[k+28>>2]=y;D[k+24>>2]=a;if(n){ma(n)}n=a;break W}qa();T()}break g}D[w>>2]=f;b=q;e=b}j=(m|0)>(r|0);if((m|0)!=(r|0)){continue}break}r=m}c=-1;j=D[h+8>>2];if((t|0)>2]-D[j+24>>2]>>2){break l}if((d|0)!=(q|0)){a=h+60|0;p=h+312|0;while(1){d=d-4|0;l=D[d>>2];D[k+68>>2]=d;Y:{if(Ga(p)){t=D[h+8>>2];u=D[t>>2];if(((D[t+4>>2]-u>>2>>>0)/3|0)<=(r|0)){break l}b=-1;e=-1;m=D[t+24>>2];f=-1;Z:{if((l|0)==-1){break Z}g=l+1|0;g=(g>>>0)%3|0?g:l-2|0;f=-1;if((g|0)==-1){break Z}f=D[u+(g<<2)>>2]}g=f;f=D[m+(g<<2)>>2];_:{if((f|0)==-1){break _}j=f+1|0;f=(j>>>0)%3|0?j:f-2|0;if((f|0)==-1){break _}b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)!=-1){e=D[u+(b<<2)>>2]}b=f}j=-1;i=-1;m=D[m+(e<<2)>>2];f=-1;$:{if((m|0)==-1){break $}z=m+1|0;m=(z>>>0)%3|0?z:m-2|0;f=-1;if((m|0)==-1){break $}f=m+1|0;f=(f>>>0)%3|0?f:m-2|0;if((f|0)!=-1){i=D[u+(f<<2)>>2]}f=m}t=D[t+12>>2];m=J(r,3);z=m<<2;D[t+z>>2]=l;D[t+(l<<2)>>2]=m;l=m+1|0;s=l<<2;D[s+t>>2]=b;D[t+(b<<2)>>2]=l;b=m+2|0;I=b<<2;D[I+t>>2]=f;D[t+(f<<2)>>2]=b;D[u+z>>2]=e;f=u+s|0;D[f>>2]=i;i=u+I|0;D[i>>2]=g;g=l>>>0>>0?-1:e;e=D[h+120>>2];u=(g>>>3&536870908)+e|0;t=D[u>>2];K=u,L=ei(g)&t,D[K>>2]=L;j=(l|0)!=-1?D[f>>2]:j;f=e+(j>>>3&536870908)|0;g=D[f>>2];K=f,L=ei(j)&g,D[K>>2]=L;j=-1;j=(b|0)!=-1?D[i>>2]:j;b=e+(j>>>3&536870908)|0;e=D[b>>2];K=b,L=ei(j)&e,D[K>>2]=L;j=D[h+64>>2];b=D[h+68>>2];if((j|0)==b<<5){if((j+1|0)<0){break k}if(j>>>0<=1073741822){e=j+32&-32;b=b<<6;b=b>>>0>>0?e:b}else{b=2147483647}Va(a,b);j=D[h+64>>2]}r=r+1|0;D[h+64>>2]=j+1;b=D[h+60>>2]+(j>>>3&536870908)|0;D[b>>2]=D[b>>2]|1<>2];if((b|0)!=D[h+80>>2]){D[b>>2]=m;D[h+76>>2]=b+4;break Y}f=D[h+72>>2];e=b-f|0;j=e>>2;b=j+1|0;if(b>>>0>=1073741824){break j}g=e>>1;g=e>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break g}b=na(g<<2)}else{b=0}j=b+(j<<2)|0;D[j>>2]=m;if((e|0)>0){oa(b,f,e)}D[h+80>>2]=b+(g<<2);D[h+76>>2]=j+4;D[h+72>>2]=b;if(!f){break Y}ma(f);break Y}b=D[h+64>>2];e=D[h+68>>2];if((b|0)==e<<5){if((b+1|0)<0){break k}if(b>>>0<=1073741822){b=b+32&-32;e=e<<6;b=b>>>0>e>>>0?b:e}else{b=2147483647}Va(a,b);b=D[h+64>>2]}D[h+64>>2]=b+1;e=D[h+60>>2]+(b>>>3&536870908)|0;f=D[e>>2];K=e,L=ei(b)&f,D[K>>2]=L;b=D[h+76>>2];if((b|0)!=D[h+80>>2]){D[b>>2]=l;D[h+76>>2]=b+4;break Y}f=D[h+72>>2];e=b-f|0;g=e>>2;b=g+1|0;if(b>>>0>=1073741824){break j}m=e>>1;m=e>>>0<2147483644?b>>>0>m>>>0?b:m:1073741823;if(m){if(m>>>0>=1073741824){break i}b=na(m<<2)}else{b=0}g=b+(g<<2)|0;D[g>>2]=l;if((e|0)>0){oa(b,f,e)}D[h+80>>2]=b+(m<<2);D[h+76>>2]=g+4;D[h+72>>2]=b;if(!f){break Y}ma(f)}if((d|0)!=(q|0)){continue}break}j=D[h+8>>2]}if(((D[j+4>>2]-D[j>>2]>>2>>>0)/3|0)!=(r|0)){break l}r=D[j+24>>2];c=D[j+28>>2]-r>>2;if((n|0)==(y|0)){n=y;break l}e=n;while(1){a=D[e>>2];d=c-1|0;i=(d<<2)+r|0;if(D[i>>2]==-1){while(1){d=c-2|0;c=c-1|0;i=(d<<2)+r|0;if(D[i>>2]==-1){continue}break}}if(a>>>0<=d>>>0){D[k>>2]=j;r=D[i>>2];B[k+12|0]=1;D[k+8>>2]=r;D[k+4>>2]=r;if((r|0)!=-1){while(1){D[D[j>>2]+(r<<2)>>2]=a;lc(k);j=D[h+8>>2];r=D[k+8>>2];if((r|0)!=-1){continue}break}}r=D[j+24>>2];b=r+(d<<2)|0;if((a|0)!=-1){D[(a<<2)+r>>2]=D[b>>2]}D[b>>2]=-1;b=1<>2];a=f+(a>>>3&536870908)|0;f=f+(d>>>3&536870908)|0;d=1<>2]&d){b=b|D[a>>2]}else{b=D[a>>2]&(b^-1)}D[a>>2]=b;D[f>>2]=D[f>>2]&(d^-1);c=c-1|0}e=e+4|0;if((y|0)!=(e|0)){continue}break}}if(n){ma(n)}d=D[k+48>>2];if(d){while(1){a=D[d>>2];ma(d);d=a;if(a){continue}break}}a=D[k+40>>2];D[k+40>>2]=0;if(a){ma(a)}if(q){D[k+68>>2]=q;ma(q)}$=k+96|0;break f}Fa();T()}qa();T()}ra(1326)}T()}ra(1326);T()}if((c|0)==-1){break e}a=D[o+16>>2];d=a+D[o>>2]|0;b=D[o+8>>2];b=b-a|0;a=D[D[h+4>>2]+32>>2];C[a+38>>1]=F[a+38>>1];D[a>>2]=d;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=b;D[a+12>>2]=0;aa:{if(D[h+216>>2]==D[h+220>>2]){break aa}a=D[h+8>>2];if(D[a+4>>2]==D[a>>2]){break aa}b=0;while(1){if(vd(h,b)){b=b+3|0;a=D[h+8>>2];if(b>>>0>2]-D[a>>2]>>2>>>0){continue}break aa}break}break e}if(E[h+308|0]){B[h+308|0]=0;d=D[h+292>>2];a=0;b=D[h+304>>2]+7|0;a=b>>>0<7?1:a;e=a>>>3|0;b=a<<29|b>>>3;a=b+D[h+288>>2]|0;e=d+e|0;D[h+288>>2]=a;D[h+292>>2]=a>>>0>>0?e+1|0:e}b=D[h+216>>2];if((b|0)!=D[h+220>>2]){while(1){a=J(A,144);Uc((a+b|0)+4|0,D[h+8>>2]);n=D[H>>2];d=a+n|0;b=D[d+132>>2];d=D[d+136>>2];if((b|0)!=(d|0)){while(1){Sc((a+n|0)+4|0,D[b>>2]);n=D[H>>2];b=b+4|0;if((d|0)!=(b|0)){continue}break}}Tc((a+n|0)+4|0);A=A+1|0;b=D[h+216>>2];if(A>>>0<(D[h+220>>2]-b|0)/144>>>0){continue}break}}a=D[h+8>>2];Ib(h+184|0,D[a+28>>2]-D[a+24>>2]>>2);n=D[h+216>>2];if((n|0)!=D[h+220>>2]){b=0;while(1){a=J(b,144)+n|0;d=D[a+60>>2]-D[a+56>>2]>>2;e=a+104|0;a=D[h+8>>2];a=D[a+28>>2]-D[a+24>>2]>>2;Ib(e,(a|0)>(d|0)?a:d);b=b+1|0;n=D[h+216>>2];if(b>>>0<(D[h+220>>2]-n|0)/144>>>0){continue}break}}A=ud(h,c)}}$=v- -64|0;return A|0}function lf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;a:{b:{c:{d:{e:{switch(d-1|0){case 0:a=0;m=$-16|0;$=m;j=D[b+80>>2];g=B[c+24|0];f:{if((J(j,g)|0)!=(e|0)){break f}b=D[c+28>>2]!=1;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break f}d=0;D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(g){if((g|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,g)}g:{h:{if(!j){break h}if(!b){if(g){n=g&-4;l=g&3;b=0;o=g-1>>>0<3;while(1){e=D[D[c>>2]>>2];p=D[c+40>>2];a=D[c+48>>2]+ai(p,D[c+44>>2],a&255?d:D[D[c+68>>2]+(d<<2)>>2],0)|0;g=oa(h,e+a|0,p);e=0;a=0;i=0;if(!o){while(1){k=b+f|0;B[k|0]=E[a+g|0];B[k+1|0]=E[g+(a|1)|0];B[k+2|0]=E[g+(a|2)|0];B[k+3|0]=E[g+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){B[b+f|0]=E[a+g|0];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break g}a=E[c+84|0];continue}}l=D[c>>2];e=D[c+48>>2];o=D[c+68>>2];f=D[c+44>>2];c=D[c+40>>2];p=c;b=0;if((j|0)!=1){q=j&-2;s=a&255;while(1){g=b|1;n=D[l>>2];k=ai(c,f,s?b:D[o+(b<<2)>>2],0)+e|0;k=oa(h,n+k|0,p);r=D[l>>2];if(!s){g=D[o+(g<<2)>>2]}g=ai(c,f,g,0)+e|0;oa(k,g+r|0,p);b=b+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!(j&1)){break h}i=D[l>>2];if(!(a&255)){b=D[o+(b<<2)>>2]}a=ai(c,f,b,0)+e|0;oa(h,a+i|0,p);break h}if(!g){b=0;d=1;while(1){if(!Eb(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break h}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break h}a=E[c+84|0];continue}}l=g&-4;k=g&3;b=0;n=g-1>>>0<3;d=1;while(1){if(!Eb(c,a&255?i:D[D[c+68>>2]+(i<<2)>>2],B[c+24|0],h)){break h}d=0;a=0;e=0;if(!n){while(1){g=b+f|0;B[g|0]=E[a+h|0];B[g+1|0]=E[(a|1)+h|0];B[g+2|0]=E[(a|2)+h|0];B[g+3|0]=E[(a|3)+h|0];a=a+4|0;b=b+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}if(k){while(1){B[b+f|0]=E[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){d=i>>>0>>0;a=E[c+84|0];continue}break}a=i>>>0>=j>>>0;break g}a=d^1;if(!h){break f}}ma(h)}break c;case 2:a=0;m=$-16|0;$=m;d=B[c+24|0];g=d<<1;j=D[b+80>>2];i:{if((J(g,j)|0)!=(e|0)){break i}b=D[c+28>>2]!=3;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break i}D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(d){if((d|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,d<<1)}j:{k:{if(!j){break k}if(!b){n=D[c>>2];e=D[c+48>>2];p=D[c+68>>2];g=D[c+44>>2];k=D[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=D[n>>2];a=ai(k,g,u?d:D[p+(d<<2)>>2],0)+e|0;l=oa(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<1)+f|0;r=a<<1;C[q>>1]=F[r+l>>1];C[q+2>>1]=F[l+(r|2)>>1];C[q+4>>1]=F[l+(r|4)>>1];C[q+6>>1]=F[l+(r|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){C[(b<<1)+f>>1]=F[l+(a<<1)>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break j}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=D[n>>2];f=ai(k,g,l?b:D[p+(b<<2)>>2],0)+e|0;f=oa(h,o+f|0,s);r=D[n>>2];if(!l){c=D[p+(c<<2)>>2]}c=ai(k,g,c,0)+e|0;oa(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break k}c=D[n>>2];if(!(a&255)){b=D[p+(b<<2)>>2]}a=ai(k,g,b,0)+e|0;oa(h,a+c|0,s);break k}if(!d){b=0;i=1;while(1){if(!Cb(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break k}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break k}a=E[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!Cb(c,a&255?d:D[D[c+68>>2]+(d<<2)>>2],B[c+24|0],h)){break k}e=0;a=0;i=0;if(!o){while(1){g=(b<<1)+f|0;k=a<<1;C[g>>1]=F[k+h>>1];C[g+2>>1]=F[(k|2)+h>>1];C[g+4>>1]=F[(k|4)+h>>1];C[g+6>>1]=F[(k|6)+h>>1];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){C[(b<<1)+f>>1]=F[(a<<1)+h>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=E[c+84|0];continue}break}a=d>>>0>=j>>>0;break j}a=!i;if(!h){break i}}ma(h)}break b;case 4:a=0;m=$-16|0;$=m;d=B[c+24|0];g=d<<2;j=D[b+80>>2];l:{if((J(g,j)|0)!=(e|0)){break l}b=D[c+28>>2]!=5;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break l}D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(d){if((d|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,d<<2)}m:{n:{if(!j){break n}if(!b){n=D[c>>2];e=D[c+48>>2];p=D[c+68>>2];g=D[c+44>>2];k=D[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=D[n>>2];a=ai(k,g,u?d:D[p+(d<<2)>>2],0)+e|0;l=oa(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<2)+f|0;r=a<<2;D[q>>2]=D[r+l>>2];D[q+4>>2]=D[l+(r|4)>>2];D[q+8>>2]=D[l+(r|8)>>2];D[q+12>>2]=D[l+(r|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){D[(b<<2)+f>>2]=D[l+(a<<2)>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break m}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=D[n>>2];f=ai(k,g,l?b:D[p+(b<<2)>>2],0)+e|0;f=oa(h,o+f|0,s);r=D[n>>2];if(!l){c=D[p+(c<<2)>>2]}c=ai(k,g,c,0)+e|0;oa(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break n}c=D[n>>2];if(!(a&255)){b=D[p+(b<<2)>>2]}a=ai(k,g,b,0)+e|0;oa(h,a+c|0,s);break n}if(!d){b=0;i=1;while(1){if(!Ab(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break n}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break n}a=E[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!Ab(c,a&255?d:D[D[c+68>>2]+(d<<2)>>2],B[c+24|0],h)){break n}e=0;a=0;i=0;if(!o){while(1){g=(b<<2)+f|0;k=a<<2;D[g>>2]=D[k+h>>2];D[g+4>>2]=D[(k|4)+h>>2];D[g+8>>2]=D[(k|8)+h>>2];D[g+12>>2]=D[(k|12)+h>>2];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){D[(b<<2)+f>>2]=D[(a<<2)+h>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=E[c+84|0];continue}break}a=d>>>0>=j>>>0;break m}a=!i;if(!h){break l}}ma(h)}break b;case 1:a=0;m=$-16|0;$=m;j=D[b+80>>2];g=B[c+24|0];o:{if((J(j,g)|0)!=(e|0)){break o}b=D[c+28>>2]!=2;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break o}d=0;D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(g){if((g|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,g)}p:{q:{if(!j){break q}if(!b){if(g){n=g&-4;l=g&3;b=0;o=g-1>>>0<3;while(1){e=D[D[c>>2]>>2];p=D[c+40>>2];a=D[c+48>>2]+ai(p,D[c+44>>2],a&255?d:D[D[c+68>>2]+(d<<2)>>2],0)|0;g=oa(h,e+a|0,p);e=0;a=0;i=0;if(!o){while(1){k=b+f|0;B[k|0]=E[a+g|0];B[k+1|0]=E[g+(a|1)|0];B[k+2|0]=E[g+(a|2)|0];B[k+3|0]=E[g+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){B[b+f|0]=E[a+g|0];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break p}a=E[c+84|0];continue}}l=D[c>>2];e=D[c+48>>2];o=D[c+68>>2];f=D[c+44>>2];c=D[c+40>>2];p=c;b=0;if((j|0)!=1){q=j&-2;s=a&255;while(1){g=b|1;n=D[l>>2];k=ai(c,f,s?b:D[o+(b<<2)>>2],0)+e|0;k=oa(h,n+k|0,p);r=D[l>>2];if(!s){g=D[o+(g<<2)>>2]}g=ai(c,f,g,0)+e|0;oa(k,g+r|0,p);b=b+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!(j&1)){break q}i=D[l>>2];if(!(a&255)){b=D[o+(b<<2)>>2]}a=ai(c,f,b,0)+e|0;oa(h,a+i|0,p);break q}if(!g){b=0;d=1;while(1){if(!Db(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break q}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break q}a=E[c+84|0];continue}}l=g&-4;k=g&3;b=0;n=g-1>>>0<3;d=1;while(1){if(!Db(c,a&255?i:D[D[c+68>>2]+(i<<2)>>2],B[c+24|0],h)){break q}d=0;a=0;e=0;if(!n){while(1){g=b+f|0;B[g|0]=E[a+h|0];B[g+1|0]=E[(a|1)+h|0];B[g+2|0]=E[(a|2)+h|0];B[g+3|0]=E[(a|3)+h|0];a=a+4|0;b=b+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}if(k){while(1){B[b+f|0]=E[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){d=i>>>0>>0;a=E[c+84|0];continue}break}a=i>>>0>=j>>>0;break p}a=d^1;if(!h){break o}}ma(h)}break c;case 3:a=0;m=$-16|0;$=m;d=B[c+24|0];g=d<<1;j=D[b+80>>2];r:{if((J(g,j)|0)!=(e|0)){break r}b=D[c+28>>2]!=4;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break r}D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(d){if((d|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,d<<1)}s:{t:{if(!j){break t}if(!b){n=D[c>>2];e=D[c+48>>2];p=D[c+68>>2];g=D[c+44>>2];k=D[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=D[n>>2];a=ai(k,g,u?d:D[p+(d<<2)>>2],0)+e|0;l=oa(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<1)+f|0;r=a<<1;C[q>>1]=F[r+l>>1];C[q+2>>1]=F[l+(r|2)>>1];C[q+4>>1]=F[l+(r|4)>>1];C[q+6>>1]=F[l+(r|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){C[(b<<1)+f>>1]=F[l+(a<<1)>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break s}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=D[n>>2];f=ai(k,g,l?b:D[p+(b<<2)>>2],0)+e|0;f=oa(h,o+f|0,s);r=D[n>>2];if(!l){c=D[p+(c<<2)>>2]}c=ai(k,g,c,0)+e|0;oa(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break t}c=D[n>>2];if(!(a&255)){b=D[p+(b<<2)>>2]}a=ai(k,g,b,0)+e|0;oa(h,a+c|0,s);break t}if(!d){b=0;i=1;while(1){if(!Bb(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break t}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break t}a=E[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!Bb(c,a&255?d:D[D[c+68>>2]+(d<<2)>>2],B[c+24|0],h)){break t}e=0;a=0;i=0;if(!o){while(1){g=(b<<1)+f|0;k=a<<1;C[g>>1]=F[k+h>>1];C[g+2>>1]=F[(k|2)+h>>1];C[g+4>>1]=F[(k|4)+h>>1];C[g+6>>1]=F[(k|6)+h>>1];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){C[(b<<1)+f>>1]=F[(a<<1)+h>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=E[c+84|0];continue}break}a=d>>>0>=j>>>0;break s}a=!i;if(!h){break r}}ma(h)}break b;case 5:a=0;m=$-16|0;$=m;d=B[c+24|0];g=d<<2;j=D[b+80>>2];u:{if((J(g,j)|0)!=(e|0)){break u}b=D[c+28>>2]!=6;a=E[c+84|0];if(!(b|!a)){oa(f,D[D[c>>2]>>2]+D[c+48>>2]|0,e);a=1;break u}D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;if(d){if((d|0)<0){break d}h=na(g);D[m>>2]=h;pa(h,0,d<<2)}v:{w:{if(!j){break w}if(!b){n=D[c>>2];e=D[c+48>>2];p=D[c+68>>2];g=D[c+44>>2];k=D[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=D[n>>2];a=ai(k,g,u?d:D[p+(d<<2)>>2],0)+e|0;l=oa(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<2)+f|0;r=a<<2;D[q>>2]=D[r+l>>2];D[q+4>>2]=D[l+(r|4)>>2];D[q+8>>2]=D[l+(r|8)>>2];D[q+12>>2]=D[l+(r|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){D[(b<<2)+f>>2]=D[l+(a<<2)>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break v}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=D[n>>2];f=ai(k,g,l?b:D[p+(b<<2)>>2],0)+e|0;f=oa(h,o+f|0,s);r=D[n>>2];if(!l){c=D[p+(c<<2)>>2]}c=ai(k,g,c,0)+e|0;oa(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break w}c=D[n>>2];if(!(a&255)){b=D[p+(b<<2)>>2]}a=ai(k,g,b,0)+e|0;oa(h,a+c|0,s);break w}if(!d){b=0;i=1;while(1){if(!zb(c,a&255?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],h)){break w}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break w}a=E[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!zb(c,a&255?d:D[D[c+68>>2]+(d<<2)>>2],B[c+24|0],h)){break w}e=0;a=0;i=0;if(!o){while(1){g=(b<<2)+f|0;k=a<<2;D[g>>2]=D[k+h>>2];D[g+4>>2]=D[(k|4)+h>>2];D[g+8>>2]=D[(k|8)+h>>2];D[g+12>>2]=D[(k|12)+h>>2];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){D[(b<<2)+f>>2]=D[(a<<2)+h>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=E[c+84|0];continue}break}a=d>>>0>=j>>>0;break v}a=!i;if(!h){break u}}ma(h)}break b;case 8:break e;default:break a}}a=0;j=$-16|0;$=j;i=B[c+24|0];d=i<<2;k=D[b+80>>2];x:{if((J(d,k)|0)!=(e|0)){break x}e=D[c+28>>2];D[j+8>>2]=0;D[j>>2]=0;D[j+4>>2]=0;b=0;y:{z:{A:{B:{if(!i){break B}if((i|0)<0){break A}b=na(d);D[j>>2]=b;g=(i<<2)+b|0;D[j+8>>2]=g;d=d-4|0;m=(d>>>2|0)+1&7;C:{if(!m){a=b;break C}a=b;while(1){D[a>>2]=-1073741824;a=a+4|0;h=h+1|0;if((m|0)!=(h|0)){continue}break}}if(d>>>0<28){break B}while(1){D[a+24>>2]=-1073741824;D[a+28>>2]=-1073741824;D[a+16>>2]=-1073741824;D[a+20>>2]=-1073741824;D[a+8>>2]=-1073741824;D[a+12>>2]=-1073741824;D[a>>2]=-1073741824;D[a+4>>2]=-1073741824;a=a+32|0;if((g|0)!=(a|0)){continue}break}}if(!k){break z}if((e|0)==9){a=0;n=D[c>>2];d=D[c+48>>2];p=D[c+68>>2];s=E[c+84|0];e=D[c+44>>2];g=D[c+40>>2];q=g;if((i|0)<=0){if((k|0)!=1){i=k&-2;c=0;while(1){f=a|1;m=D[n>>2];h=ai(g,e,s?a:D[p+(a<<2)>>2],0)+d|0;h=oa(b,m+h|0,q);m=D[n>>2];if(!s){f=D[p+(f<<2)>>2]}f=ai(g,e,f,0)+d|0;oa(h,f+m|0,q);a=a+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(!(k&1)){break z}c=D[n>>2];if(!s){a=D[p+(a<<2)>>2]}a=ai(g,e,a,0)+d|0;oa(b,a+c|0,q);break z}u=i&-4;o=i&3;h=0;v=i-1>>>0<3;i=0;while(1){c=D[n>>2];a=ai(g,e,s?i:D[p+(i<<2)>>2],0)+d|0;c=oa(b,c+a|0,q);m=0;a=0;t=0;if(!v){while(1){l=(h<<2)+f|0;r=a<<2;H[l>>2]=H[r+c>>2];H[l+4>>2]=H[c+(r|4)>>2];H[l+8>>2]=H[c+(r|8)>>2];H[l+12>>2]=H[c+(r|12)>>2];a=a+4|0;h=h+4|0;t=t+4|0;if((u|0)!=(t|0)){continue}break}}if(o){while(1){H[(h<<2)+f>>2]=H[c+(a<<2)>>2];a=a+1|0;h=h+1|0;m=m+1|0;if((o|0)!=(m|0)){continue}break}}a=1;i=i+1|0;if((k|0)!=(i|0)){continue}break}break y}l=1;if((i|0)<=0){a=0;while(1){if(!nb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],b)){break z}a=a+1|0;l=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}break}break z}n=i&-4;g=i&3;h=0;o=i-1>>>0<3;i=0;while(1){if(!nb(c,E[c+84|0]?i:D[D[c+68>>2]+(i<<2)>>2],B[c+24|0],b)){break z}l=0;a=0;m=0;if(!o){while(1){d=(h<<2)+f|0;e=a<<2;H[d>>2]=H[e+b>>2];H[d+4>>2]=H[(e|4)+b>>2];H[d+8>>2]=H[(e|8)+b>>2];H[d+12>>2]=H[(e|12)+b>>2];a=a+4|0;h=h+4|0;m=m+4|0;if((n|0)!=(m|0)){continue}break}}if(g){while(1){H[(h<<2)+f>>2]=H[(a<<2)+b>>2];a=a+1|0;h=h+1|0;l=l+1|0;if((g|0)!=(l|0)){continue}break}}i=i+1|0;l=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}break}a=i>>>0>=k>>>0;break y}qa();T()}a=l^1;if(!b){break x}}ma(b)}$=j+16|0;h=a&1;break a}qa();T()}$=m+16|0;h=a&1;break a}$=m+16|0;h=a&1}return h|0}function vf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,F=0,G=0,H=0,I=0,K=0,L=0,M=0,N=0;z=c;c=0;m=$-96|0;$=m;k=m+16|0;pa(k,0,76);D[m+92>>2]=-1;D[m+8>>2]=0;D[m>>2]=0;D[m+4>>2]=0;s=$-16|0;$=s;D[k+68>>2]=0;D[k+72>>2]=0;D[k>>2]=b;t=$-16|0;$=t;x=b;a=D[b+20>>2];a:{if((D[b+24>>2]-a|0)<=0){break a}a=D[a>>2];if((a|0)==-1){break a}c=D[D[x+8>>2]+(a<<2)>>2]}b:{c:{d:{e:{if(!c){a=0;break e}a=D[x+100>>2];e=D[x+96>>2];D[t+8>>2]=0;D[t>>2]=0;D[t+4>>2]=0;d=a-e|0;b=(d|0)/12|0;f:{if(!d){break f}if(b>>>0>=357913942){break c}f=na(d);D[t>>2]=f;D[t+8>>2]=f+J(b,12);a=0;g=f;f=J((d-12>>>0)/12|0,12)+12|0;d=pa(g,0,f);D[t+4>>2]=d+f;if(E[c+84|0]){c=b>>>0>1?b:1;g=c&1;if(b>>>0>=2){j=c&-2;c=0;while(1){f=J(a,12);b=f+e|0;n=D[b+4>>2];o=D[b>>2];f=d+f|0;D[f+8>>2]=D[b+8>>2];D[f>>2]=o;D[f+4>>2]=n;f=J(a|1,12);b=f+e|0;n=D[b+8>>2];o=D[b+4>>2];f=d+f|0;D[f>>2]=D[b>>2];D[f+4>>2]=o;D[f+8>>2]=n;a=a+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!g){break f}b=J(a,12);a=b+e|0;c=D[a+4>>2];e=D[a>>2];b=b+d|0;D[b+8>>2]=D[a+8>>2];D[b>>2]=e;D[b+4>>2]=c;break f}g=b>>>0>1?b:1;a=D[c+68>>2];c=0;while(1){f=J(c,12);b=f+e|0;j=D[a+(D[b>>2]<<2)>>2];n=D[a+(D[b+4>>2]<<2)>>2];f=d+f|0;D[f+8>>2]=D[a+(D[b+8>>2]<<2)>>2];D[f+4>>2]=n;D[f>>2]=j;c=c+1|0;if((g|0)!=(c|0)){continue}break}}F=$-16|0;$=F;g=na(88);D[g>>2]=0;D[g+4>>2]=0;D[g+56>>2]=0;D[g+48>>2]=0;D[g+52>>2]=0;D[g+40>>2]=0;D[g+44>>2]=0;D[g+32>>2]=0;D[g+36>>2]=0;D[g+24>>2]=0;D[g+28>>2]=0;D[g+16>>2]=0;D[g+20>>2]=0;D[g+8>>2]=0;D[g+12>>2]=0;a=g- -64|0;D[a>>2]=0;D[a+4>>2]=0;D[g+72>>2]=0;D[g+76>>2]=0;D[g+80>>2]=0;D[g+84>>2]=0;D[g+60>>2]=g;A=$-16|0;$=A;D[g+80>>2]=0;D[g+84>>2]=0;a=D[g+76>>2];D[g+76>>2]=0;if(a){ma(a)}D[g+68>>2]=0;D[g+72>>2]=0;b=g- -64|0;a=D[b>>2];D[b>>2]=0;if(a){ma(a)}b=D[t>>2];c=D[t+4>>2]-b|0;j=(c|0)/12|0;a=J(j,3);d=D[g>>2];e=D[g+4>>2]-d>>2;g:{if(a>>>0>e>>>0){sa(g,a-e|0);b=D[t>>2];c=D[t+4>>2]-b|0;j=(c|0)/12|0;d=D[g>>2];break g}if(a>>>0>=e>>>0){break g}D[g+4>>2]=(a<<2)+d}if(c){f=j>>>0>1?j:1;a=0;while(1){e=J(a,12);c=e+d|0;e=b+e|0;D[c>>2]=D[e>>2];D[c+4>>2]=D[e+4>>2];D[c+8>>2]=D[e+8>>2];a=a+1|0;if((f|0)!=(a|0)){continue}break}}D[A+12>>2]=-1;f=$-48|0;$=f;h:{i:{w=A+12|0;j:{if(!w){break j}d=D[g+4>>2];n=D[g>>2];c=d-n|0;o=c>>2;b=D[g+12>>2];a=D[g+16>>2]-b>>2;k:{if(o>>>0>a>>>0){xa(g+12|0,o-a|0,10260);d=D[g+4>>2];n=D[g>>2];c=d-n|0;o=c>>2;break k}if(a>>>0<=o>>>0){break k}D[g+16>>2]=b+(o<<2)}b=0;D[f+40>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;l:{if(!c){D[f+24>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;break l}m:{if((c|0)>=0){b=na(c);D[f+36>>2]=b;D[f+32>>2]=b;D[f+40>>2]=(o<<2)+b;a=b;c=0;while(1){j=D[(c<<2)+n>>2];a=a-b>>2;n:{if(j>>>0>>0){break n}D[f+16>>2]=0;e=j+1|0;if(e>>>0>a>>>0){xa(f+32|0,e-a|0,f+16|0);n=D[g>>2];d=D[g+4>>2];b=D[f+32>>2];break n}if(a>>>0<=e>>>0){break n}D[f+36>>2]=(e<<2)+b}a=(j<<2)+b|0;D[a>>2]=D[a>>2]+1;c=c+1|0;a=d-n|0;o=a>>2;if(c>>>0>=o>>>0){break m}a=D[f+36>>2];continue}}break i}D[f+24>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;if(!a){break l}if(a>>>0>=2147483645){break c}c=a<<1;a=na(c);D[f+16>>2]=a;e=a+(o<<3)|0;D[f+24>>2]=e;pa(a,255,c);D[f+20>>2]=e}d=0;D[f+8>>2]=0;D[f>>2]=0;D[f+4>>2]=0;a=D[f+36>>2]-b|0;j=a>>2;o:{if(!a){break o}if((a|0)<0){break c}l=na(a);D[f>>2]=l;a=j<<2;c=a+l|0;D[f+8>>2]=c;a=pa(l,0,a);D[f+4>>2]=c;e=j>>>0>1?j:1;q=e&3;c=0;if(e-1>>>0>=3){r=e&-4;while(1){e=i<<2;D[e+a>>2]=c;y=e|4;c=D[b+e>>2]+c|0;D[y+a>>2]=c;v=e|8;c=c+D[b+y>>2]|0;D[v+a>>2]=c;e=e|12;c=c+D[b+v>>2]|0;D[e+a>>2]=c;c=c+D[b+e>>2]|0;i=i+4|0;h=h+4|0;if((r|0)!=(h|0)){continue}break}}if(!q){break o}while(1){e=i<<2;D[e+a>>2]=c;i=i+1|0;c=D[b+e>>2]+c|0;p=p+1|0;if((q|0)!=(p|0)){continue}break}}if(o){y=D[g+12>>2];while(1){G=d<<2;c=G+n|0;h=-1;e=d+1|0;a=(e>>>0)%3|0?e:d-2|0;if((a|0)!=-1){h=D[(a<<2)+n>>2]}a=D[c>>2];p:{q:{if(!((d>>>0)%3|0)){p=-1;c=d+2|0;if((c|0)!=-1){p=D[(c<<2)+n>>2]}if(!((a|0)==(h|0)|(a|0)==(p|0))&(h|0)!=(p|0)){break q}D[g+40>>2]=D[g+40>>2]+1;e=d+3|0;break p}p=D[c-4>>2]}c=p<<2;v=D[c+b>>2];r:{s:{if((v|0)<=0){break s}q=D[f+16>>2];c=D[c+l>>2];i=0;while(1){r=q+(c<<3)|0;u=D[r>>2];if((u|0)==-1){break s}t:{if((h|0)!=(u|0)){break t}r=D[r+4>>2];if((r|0)!=-1){u=D[(r<<2)+n>>2]}else{u=-1}if((u|0)==(a|0)){break t}while(1){u:{a=c;i=i+1|0;if((v|0)<=(i|0)){break u}u=q+(a<<3)|0;c=a+1|0;H=q+(c<<3)|0;I=D[H>>2];D[u>>2]=I;D[u+4>>2]=D[H+4>>2];if((I|0)!=-1){continue}}break}D[q+(a<<3)>>2]=-1;if((r|0)==-1){break s}D[y+G>>2]=r;D[y+(r<<2)>>2]=d;break r}c=c+1|0;i=i+1|0;if((v|0)!=(i|0)){continue}break}}a=h<<2;h=D[a+b>>2];if((h|0)<=0){break r}q=D[f+16>>2];c=D[a+l>>2];i=0;while(1){a=q+(c<<3)|0;if(D[a>>2]==-1){D[a>>2]=p;D[a+4>>2]=d;break r}c=c+1|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}}d=e;if(o>>>0>d>>>0){continue}break}}D[w>>2]=j;if(l){ma(l)}a=D[f+16>>2];if(a){D[f+20>>2]=a;ma(a)}a=D[f+32>>2];if(!a){break j}D[f+36>>2]=a;ma(a)}$=f+48|0;y=(w|0)!=0;if(y){h=$-32|0;$=h;o=D[g>>2];a=D[g+4>>2];D[h+24>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;v:{w:{b=a-o|0;x:{if(!b){break x}if((b|0)<0){break w}c=b>>2;d=c-1>>>5|0;f=d+1|0;e=na(f<<2);D[h+24>>2]=f;D[h+16>>2]=e;D[h+20>>2]=c;D[e+((b>>>0<132?0:d)<<2)>>2]=0;b=c>>>5<<2;e=pa(e,0,b);c=c&31;if(!c){break x}b=b+e|0;D[b>>2]=D[b>>2]&(-1>>>32-c^-1)}D[h+8>>2]=0;D[h>>2]=0;while(1){y:{q=0;b=0;if((a|0)==(o|0)){break y}while(1){d=D[h+16>>2];z:{if(D[d+(b>>>3&536870908)>>2]>>>b&1){break z}e=D[h>>2];D[h+4>>2]=e;c=D[g+12>>2];a=b;while(1){A:{f=a+1|0;i=a;a=(f>>>0)%3|0?f:a-2|0;if((a|0)==-1){break A}a=D[c+(a<<2)>>2];if((a|0)==-1){break A}f=a+1|0;a=(f>>>0)%3|0?f:a-2|0;if((b|0)==(a|0)|(a|0)==-1){break A}if(!(D[(a>>>3&536870908)+d>>2]>>>a&1)){continue}}break}c=e;j=i;B:{C:{while(1){a=(j>>>3&536870908)+d|0;D[a>>2]=D[a>>2]|1<>>0)%3|0?a:j-2|0;v=(j>>>0)%3|0;n=(v?-1:2)+j|0;r=n<<2;D:{if((c|0)==(e|0)){break D}w=D[(f<<2)+o>>2];l=D[g+12>>2];a=c;if((n|0)!=-1){u=l+r|0;while(1){E:{if((w|0)!=D[a>>2]){break E}d=D[a+4>>2];p=D[u>>2];if((d|0)==(p|0)){break E}e=-1;a=-1;if((d|0)==-1){break B}break C}a=a+8|0;if((e|0)!=(a|0)){continue}break}break D}while(1){if((w|0)==D[a>>2]){p=-1;n=-1;d=D[a+4>>2];if((d|0)!=-1){break C}}a=a+8|0;if((e|0)!=(a|0)){continue}break}}n=D[o+r>>2];F:{if(D[h+8>>2]!=(e|0)){D[e>>2]=n;D[e+4>>2]=f;e=e+8|0;D[h+4>>2]=e;break F}d=e-c|0;e=d>>3;a=e+1|0;if(a>>>0>=536870912){break c}l=d>>2;l=d>>>0<2147483640?a>>>0>l>>>0?a:l:536870911;if(l){if(l>>>0>=536870912){break i}a=na(l<<3)}else{a=0}e=a+(e<<3)|0;D[e>>2]=n;D[e+4>>2]=f;e=e+8|0;if((d|0)>0){oa(a,c,d)}D[h+8>>2]=a+(l<<3);D[h+4>>2]=e;D[h>>2]=a;if(!c){break F}ma(c)}G:{H:{if(v){a=j-1|0;break H}a=j+2|0;if((a|0)==-1){break G}}a=D[D[g+12>>2]+(a<<2)>>2];if((a|0)==-1){break G}j=a+((a>>>0)%3|0?-1:2)|0;if((i|0)==(j|0)|(j|0)==-1){break G}o=D[g>>2];c=D[h>>2];d=D[h+16>>2];continue}break}o=D[g>>2];break z}e=d;a=D[l+(e<<2)>>2]}if((p|0)!=-1){D[l+(p<<2)>>2]=-1}if((a|0)!=-1){D[D[g+12>>2]+(a<<2)>>2]=-1}a=D[g+12>>2];D[a+(n<<2)>>2]=-1;D[a+(e<<2)>>2]=-1;q=1}b=b+1|0;a=D[g+4>>2];if(b>>>0>2>>>0){continue}break}if(q){continue}}break}a=D[h>>2];if(a){ma(a)}a=D[h+16>>2];if(a){ma(a)}$=h+32|0;break v}Fa();T()}n=0;i=$-32|0;$=i;a=D[A+12>>2];D[g+36>>2]=a;o=g+24|0;I:{J:{K:{L:{M:{c=D[g+24>>2];b=D[g+28>>2]-c>>2;N:{O:{if(b>>>0>>0){xa(o,a-b|0,10260);D[i+24>>2]=0;D[i+16>>2]=0;D[i+20>>2]=0;break O}if(a>>>0>>0){D[g+28>>2]=c+(a<<2)}b=0;D[i+24>>2]=0;D[i+16>>2]=0;D[i+20>>2]=0;if(!a){break N}}if((a|0)<0){break M}c=a-1>>>5|0;e=c+1|0;b=na(e<<2);D[i+24>>2]=e;D[i+16>>2]=b;D[i+20>>2]=a;D[((a>>>0<33?0:c)<<2)+b>>2]=0;c=a>>>5<<2;e=pa(b,0,c);d=a&31;if(!d){break N}c=c+e|0;D[c>>2]=D[c>>2]&(-1>>>32-d^-1)}l=D[g>>2];j=D[g+4>>2];D[i+8>>2]=0;D[i>>2]=0;D[i+4>>2]=0;c=j-l|0;if(!c){break I}if((c|0)<0){break L}e=c>>2;d=e-1>>>5|0;f=d+1|0;h=na(f<<2);D[i+8>>2]=f;D[i>>2]=h;D[i+4>>2]=e;p=0;D[((c>>>0<132?0:d)<<2)+h>>2]=0;d=e>>>5<<2;f=pa(h,0,d);e=e&31;if(e){d=d+f|0;D[d>>2]=D[d>>2]&(-1>>>32-e^-1)}if(c>>>0<12){break I}while(1){r=J(p,3);e=(r<<2)+l|0;c=D[e>>2];d=-1;f=r+1|0;if((f|0)!=-1){d=D[(f<<2)+l>>2]}P:{if((c|0)==(d|0)){break P}f=c;c=D[e+8>>2];if((f|0)==(c|0)){break P}q=0;if((c|0)==(d|0)){break P}while(1){e=q+r|0;if(!(D[(e>>>3&536870908)+h>>2]>>>e&1)){c=D[(e<<2)+l>>2];d=1<>>5|0;w=d&D[(h<<2)+b>>2];if(w){b=D[g+28>>2];Q:{if((b|0)!=D[g+32>>2]){D[b>>2]=-1;D[g+28>>2]=b+4;break Q}f=D[o>>2];d=b-f|0;h=d>>2;b=h+1|0;if(b>>>0>=1073741824){break c}j=d>>1;j=d>>>0<2147483644?b>>>0>j>>>0?b:j:1073741823;if(j){if(j>>>0>=1073741824){break i}b=na(j<<2)}else{b=0}h=b+(h<<2)|0;D[h>>2]=-1;if((d|0)>0){oa(b,f,d)}D[g+32>>2]=b+(j<<2);D[g+28>>2]=h+4;D[g+24>>2]=b;if(!f){break Q}ma(f)}b=D[g+52>>2];R:{if((b|0)!=D[g+56>>2]){D[b>>2]=c;D[g+52>>2]=b+4;break R}f=D[g+48>>2];d=b-f|0;h=d>>2;b=h+1|0;if(b>>>0>=1073741824){break c}j=d>>1;j=d>>>0<2147483644?b>>>0>j>>>0?b:j:1073741823;if(j){if(j>>>0>=1073741824){break i}b=na(j<<2)}else{b=0}h=b+(h<<2)|0;D[h>>2]=c;if((d|0)>0){oa(b,f,d)}D[g+56>>2]=b+(j<<2);D[g+52>>2]=h+4;D[g+48>>2]=b;if(!f){break R}ma(f)}d=D[i+20>>2];b=D[i+24>>2];if((d|0)==b<<5){if((d+1|0)<0){break K}c=i+16|0;if(d>>>0<=1073741822){d=d+32&-32;b=b<<6;b=b>>>0>>0?d:b}else{b=2147483647}Va(c,b);d=D[i+20>>2]}D[i+20>>2]=d+1;b=D[i+16>>2]+(d>>>3&536870908)|0;c=D[b>>2];M=b,N=ei(d)&c,D[M>>2]=N;d=1<>>5|0;c=a;a=a+1|0}f=a;b=D[i+16>>2];a=b+(h<<2)|0;D[a>>2]=D[a>>2]|d;v=D[g+24>>2]+(c<<2)|0;j=D[g+12>>2];l=D[g>>2];h=D[i>>2];a=e;S:{T:{U:{V:{W:{X:{while(1){if((a|0)==-1){break X}d=(a>>>3&536870908)+h|0;D[d>>2]=D[d>>2]|1<>2]=a;if(w){D[(a<<2)+l>>2]=c}u=a+1|0;a=(u>>>0)%3|0?u:a-2|0;d=-1;Y:{if((a|0)==-1){break Y}a=D[j+(a<<2)>>2];d=-1;if((a|0)==-1){break Y}d=a+1|0;d=(d>>>0)%3|0?d:a-2|0}a=d;if((e|0)!=(a|0)){continue}break}if((e|0)!=-1){break S}a=1;break W}if((e>>>0)%3|0){a=e-1|0;break W}a=e+2|0;if((a|0)==-1){break V}}a=D[j+(a<<2)>>2];if((a|0)==-1){break V}if(!((a>>>0)%3|0)){break U}a=a-1|0;l=D[g>>2];h=D[i>>2];break T}l=D[g>>2];h=D[i>>2];break S}l=D[g>>2];h=D[i>>2];a=a+2|0;if((a|0)==-1){break S}}e=D[g+12>>2];while(1){d=(a>>>3&536870908)+h|0;D[d>>2]=D[d>>2]|1<>2]=c}Z:{if((a>>>0)%3|0){a=a-1|0;break Z}a=a+2|0;if((a|0)==-1){break S}}a=D[e+(a<<2)>>2];if((a|0)==-1){break S}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=f}q=q+1|0;if((q|0)!=3){continue}break}l=D[g>>2];j=D[g+4>>2]}p=p+1|0;if(p>>>0<(j-l>>2>>>0)/3>>>0){continue}break}break J}Fa();T()}Fa();T()}Fa();T()}b=D[i+16>>2]}D[g+44>>2]=0;a=D[i+20>>2];if(a){c=a&31;e=(a>>>3&536870908)+b|0;a=b;h=0;while(1){if(!(D[a>>2]>>>n&1)){h=h+1|0;D[g+44>>2]=h}d=(n|0)==31;n=d?0:n+1|0;a=(d<<2)+a|0;if((e|0)!=(a|0)|(c|0)!=(n|0)){continue}break}}a=D[i>>2];if(a){ma(a);b=D[i+16>>2]}if(b){ma(b)}$=i+32|0}$=A+16|0;if(!y){D[F+8>>2]=0;cb(g);g=0}$=F+16|0;a=g;break h}ra(1326);T()}b=D[t>>2];if(!b){break e}D[t+4>>2]=b;ma(b)}$=t+16|0;break d}b=D[k+4>>2];D[k+4>>2]=a;if(b){cb(b);a=D[k+4>>2]}_:{if(!a){break _}a=D[x+100>>2];b=D[x+96>>2];B[s+12|0]=0;Ea(k+56|0,(a-b|0)/12|0,s+12|0);a=D[x+100>>2];c=D[x+96>>2];if((a|0)==(c|0)){K=1;break _}while(1){if(!(D[D[k+56>>2]+(C>>>3&536870908)>>2]>>>C&1)){a=J(C,3);Ub(k,0,a);b=D[k+8>>2];c=D[k+12>>2];Ub(k,1,a+1|0);e=D[k+20>>2];d=D[k+24>>2];Ub(k,2,a+2|0);e=d-e>>2;b=c-b|0;c=b>>2;a=e>>>0>c>>>0;c=D[k+36>>2]-D[k+32>>2]>>2>>>0>(a?e:c)>>>0?2:a?1:b?0:-1;$:{if(D[k+68>>2]<=0){break $}D[s+12>>2]=D[k+76>>2];D[s+8>>2]=m;Ra(s+8|0,s+12|0);a=D[((c<<2)+k|0)+44>>2];if((a|0)<0){a=-1}else{b=(a>>>0)/3|0;a=D[(D[D[k>>2]+96>>2]+J(b,12)|0)+(a-J(b,3)<<2)>>2]}D[s+12>>2]=a;D[s+8>>2]=m;Ra(s+8|0,s+12|0);b=D[k+72>>2];D[k+72>>2]=b+2;if(!(b&1)){break $}D[s+12>>2]=a;D[s+8>>2]=m;Ra(s+8|0,s+12|0);D[k+72>>2]=D[k+72>>2]+1}b=$-16|0;$=b;D[k+68>>2]=D[k+68>>2]+1;a=J(c,12)+k|0;e=D[a+12>>2]-D[a+8>>2]|0;aa:{if((e|0)<=0){break aa}a=-1;c=D[((c<<2)+k|0)+44>>2];d=(c>>>0)/3|0;i=(c|0)==-1;f=i?-1:d;g=D[k+56>>2]+(f>>>3&536870908)|0;D[g>>2]=D[g>>2]|1<>2]=D[k+72>>2]+1;D[b+12>>2]=(c|0)>=0?D[(D[D[k>>2]+96>>2]+J(d,12)|0)+((c>>>0)%3<<2)>>2]:-1;D[b+8>>2]=m;Ra(b+8|0,b+12|0);ba:{if(!i){f=c+1|0;f=(f>>>0)%3|0?f:c-2|0;if((f|0)>=0){i=(f>>>0)/3|0;f=D[(D[D[k>>2]+96>>2]+J(i,12)|0)+(f-J(i,3)<<2)>>2]}else{f=-1}D[b+12>>2]=f;D[b+8>>2]=m;Ra(b+8|0,b+12|0);d=c+(c-J(d,3)|0?-1:2)|0;if((d|0)<0){break ba}a=(d>>>0)/3|0;a=D[(D[D[k>>2]+96>>2]+J(a,12)|0)+(d-J(a,3)<<2)>>2];break ba}D[b+12>>2]=-1;D[b+8>>2]=m;Ra(b+8|0,b+12|0)}D[k+76>>2]=a;D[b+12>>2]=a;D[b+8>>2]=m;a=-1;Ra(b+8|0,b+12|0);a=(c|0)!=-1?D[D[D[k+4>>2]+12>>2]+(c<<2)>>2]:a;if(e>>>0<=7){break aa}c=e>>>2|0;i=c>>>0>1?c:1;e=1;while(1){c=a;f=(a>>>0)/3|0;a=(a|0)==-1?-1:f;d=D[k+56>>2]+(a>>>3&536870908)|0;D[d>>2]=D[d>>2]|1<>2]=D[k+72>>2]+1;a=-1;a=(c|0)>=0?D[(D[D[k>>2]+96>>2]+J(f,12)|0)+((c>>>0)%3<<2)>>2]:a;D[k+76>>2]=a;D[b+12>>2]=a;D[b+8>>2]=m;Ra(b+8|0,b+12|0);ca:{da:{ea:{if(e&1){d=-1;if((c|0)==-1){break ca}if((c|0)!=(J(f,3)|0)){a=c-1|0;break da}a=c+2|0;break ea}d=-1;if((c|0)==-1){break ca}a=c+1|0;a=(a>>>0)%3|0?a:c-2|0}d=-1;if((a|0)==-1){break ca}}d=D[D[D[k+4>>2]+12>>2]+(a<<2)>>2]}a=d;e=e+1|0;if((i|0)!=(e|0)){continue}break}}$=b+16|0;c=D[x+96>>2];a=D[x+100>>2]}K=1;C=C+1|0;if(C>>>0<(a-c|0)/12>>>0){continue}break}}$=s+16|0;fa:{if(K){a=D[z>>2];if(a){D[z+4>>2]=a;ma(a)}D[z>>2]=D[m>>2];D[z+4>>2]=D[m+4>>2];D[z+8>>2]=D[m+8>>2];L=D[m+84>>2];break fa}a=D[m>>2];if(!a){break fa}D[m+4>>2]=a;ma(a)}a=D[m+72>>2];if(a){ma(a)}a=D[m+48>>2];if(a){D[m+52>>2]=a;ma(a)}a=D[m+36>>2];if(a){D[m+40>>2]=a;ma(a)}a=D[m+24>>2];if(a){D[m+28>>2]=a;ma(a)}a=D[m+20>>2];D[m+20>>2]=0;if(a){cb(a)}$=m+96|0;break b}qa();T()}return L|0}function Gc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=$-16|0;$=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=D[2880];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=D[b+11568>>2];a=f+8|0;c=D[f+8>>2];b=b+11560|0;l:{if((c|0)==(b|0)){m=11520,n=ei(d)&e,D[m>>2]=n;break l}D[c+12>>2]=b;D[b+8>>2]=c}b=d<<3;D[f+4>>2]=b|3;b=b+f|0;D[b+4>>2]=D[b+4>>2]|1;break a}k=D[2882];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=D[a+11568>>2];b=D[g+8>>2];a=a+11560|0;m:{if((b|0)==(a|0)){e=ei(c)&e;D[2880]=e;break m}D[b+12>>2]=a;D[a+8>>2]=b}a=g+8|0;D[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;D[d+4>>2]=f|1;D[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+11560|0;g=D[2885];b=1<>2]}D[c+8>>2]=g;D[b+12>>2]=g;D[g+12>>2]=c;D[g+8>>2]=b}D[2885]=d;D[2882]=f;break a}j=D[2881];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=D[((c|a)+(b>>>a|0)<<2)+11824>>2];d=(D[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=D[c+16>>2];if(!a){a=D[c+20>>2];if(!a){break o}}c=(D[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=D[b+24>>2];f=D[b+12>>2];if((f|0)!=(b|0)){a=D[b+8>>2];D[a+12>>2]=f;D[f+8>>2]=a;break b}c=b+20|0;a=D[c>>2];if(!a){a=D[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=D[c>>2];if(a){continue}c=f+16|0;a=D[f+16>>2];if(a){continue}break}D[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=D[2881];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=D[(e<<2)+11824>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(D[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=D[c+20>>2];c=D[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=D[((c|a)+(b>>>a|0)<<2)+11824>>2]}if(!a){break q}}while(1){b=(D[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=D[a+16>>2];if(b){a=b}else{a=D[a+20>>2]}if(a){continue}break}}if(!f|D[2882]-h>>>0<=d>>>0){break k}e=D[f+24>>2];b=D[f+12>>2];if((f|0)!=(b|0)){a=D[f+8>>2];D[a+12>>2]=b;D[b+8>>2]=a;break c}c=f+20|0;a=D[c>>2];if(!a){a=D[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=D[c>>2];if(a){continue}c=b+16|0;a=D[b+16>>2];if(a){continue}break}D[g>>2]=0;break c}c=D[2882];if(c>>>0>=h>>>0){d=D[2885];b=c-h|0;u:{if(b>>>0>=16){D[2882]=b;a=d+h|0;D[2885]=a;D[a+4>>2]=b|1;D[c+d>>2]=b;D[d+4>>2]=h|3;break u}D[2885]=0;D[2882]=0;D[d+4>>2]=c|3;a=c+d|0;D[a+4>>2]=D[a+4>>2]|1}a=d+8|0;break a}i=D[2883];if(i>>>0>h>>>0){b=i-h|0;D[2883]=b;c=D[2886];a=c+h|0;D[2886]=a;D[a+4>>2]=b|1;D[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(D[2998]){c=D[3e3]}else{D[3001]=-1;D[3002]=-1;D[2999]=4096;D[3e3]=4096;D[2998]=l+12&-16^1431655768;D[3003]=0;D[2991]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=D[2990];if(d){b=D[2988];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(E[11964]&4){break f}v:{w:{d=D[2886];if(d){a=11968;while(1){b=D[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=D[a+8>>2];if(a){continue}break}}b=Za(0);if((b|0)==-1){break g}e=c;d=D[2999];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=D[2990];if(d){a=D[2988];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=Za(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=Za(e);if((b|0)==(D[a>>2]+D[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=D[3e3];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((Za(b)|0)!=-1){e=b+e|0;b=a;break e}Za(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}D[2991]=D[2991]|4}if(c>>>0>2147483646){break d}b=Za(c);a=Za(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=D[2988]+e|0;D[2988]=a;if(a>>>0>G[2989]){D[2989]=a}x:{y:{z:{g=D[2886];if(g){a=11968;while(1){d=D[a>>2];c=D[a+4>>2];if((d+c|0)==(b|0)){break z}a=D[a+8>>2];if(a){continue}break}break y}a=D[2884];if(!(a>>>0<=b>>>0?a:0)){D[2884]=b}a=0;D[2993]=e;D[2992]=b;D[2888]=-1;D[2889]=D[2998];D[2995]=0;while(1){d=a<<3;c=d+11560|0;D[d+11568>>2]=c;D[d+11572>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;D[2883]=c;a=a+b|0;D[2886]=a;D[a+4>>2]=c|1;D[(b+d|0)+4>>2]=40;D[2887]=D[3002];break x}if(E[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}D[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;D[2886]=c;b=D[2883]+e|0;a=b-a|0;D[2883]=a;D[c+4>>2]=a|1;D[(b+g|0)+4>>2]=40;D[2887]=D[3002];break x}if(G[2884]>b>>>0){D[2884]=b}c=b+e|0;a=11968;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=D[a>>2]){a=D[a+8>>2];if(a){continue}break F}break}if(!(E[a+12|0]&8)){break E}}a=11968;while(1){c=D[a>>2];if(c>>>0<=g>>>0){f=c+D[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=D[a+8>>2];continue}}D[a>>2]=b;D[a+4>>2]=D[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;D[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){D[2886]=i;a=D[2883]+c|0;D[2883]=a;D[i+4>>2]=a|1;break B}if(D[2885]==(e|0)){D[2885]=i;a=D[2882]+c|0;D[2882]=a;D[i+4>>2]=a|1;D[a+i>>2]=a;break B}a=D[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=D[e+8>>2];a=a>>>3|0;b=D[e+12>>2];if((b|0)==(d|0)){m=11520,n=D[2880]&ei(a),D[m>>2]=n;break G}D[d+12>>2]=b;D[b+8>>2]=d;break G}h=D[e+24>>2];b=D[e+12>>2];H:{if((e|0)!=(b|0)){a=D[e+8>>2];D[a+12>>2]=b;D[b+8>>2]=a;break H}I:{a=e+20|0;d=D[a>>2];if(d){break I}a=e+16|0;d=D[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=D[a>>2];if(d){continue}a=b+16|0;d=D[b+16>>2];if(d){continue}break}D[f>>2]=0}if(!h){break G}d=D[e+28>>2];a=(d<<2)+11824|0;J:{if(D[a>>2]==(e|0)){D[a>>2]=b;if(b){break J}m=11524,n=D[2881]&ei(d),D[m>>2]=n;break G}D[h+(D[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}D[b+24>>2]=h;a=D[e+16>>2];if(a){D[b+16>>2]=a;D[a+24>>2]=b}a=D[e+20>>2];if(!a){break G}D[b+20>>2]=a;D[a+24>>2]=b}e=e+g|0;c=c+g|0}D[e+4>>2]=D[e+4>>2]&-2;D[i+4>>2]=c|1;D[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+11560|0;c=D[2880];a=1<>2]}D[b+8>>2]=i;D[a+12>>2]=i;D[i+12>>2]=b;D[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}D[i+28>>2]=a;D[i+16>>2]=0;D[i+20>>2]=0;f=(a<<2)+11824|0;d=D[2881];b=1<>2]=i;D[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=D[f>>2];while(1){d=b;if((D[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=D[f+16>>2];if(b){continue}break}D[f+16>>2]=i;D[i+24>>2]=d}D[i+12>>2]=i;D[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;D[2883]=c;a=a+b|0;D[2886]=a;D[a+4>>2]=c|1;D[(b+d|0)+4>>2]=40;D[2887]=D[3002];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;D[c+4>>2]=27;a=D[2995];D[c+16>>2]=D[2994];D[c+20>>2]=a;a=D[2993];D[c+8>>2]=D[2992];D[c+12>>2]=a;D[2994]=c+8;D[2993]=e;D[2992]=b;D[2995]=0;a=c+24|0;while(1){D[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}D[c+4>>2]=D[c+4>>2]&-2;f=c-g|0;D[g+4>>2]=f|1;D[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+11560|0;c=D[2880];a=1<>2]}D[b+8>>2]=g;D[a+12>>2]=g;D[g+12>>2]=b;D[g+8>>2]=a;break x}a=31;D[g+16>>2]=0;D[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}D[g+28>>2]=a;d=(a<<2)+11824|0;c=D[2881];b=1<>2]=g;D[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=D[d>>2];while(1){c=b;if((f|0)==(D[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=D[d+16>>2];if(b){continue}break}D[d+16>>2]=g;D[g+24>>2]=c}D[g+12>>2]=g;D[g+8>>2]=g;break x}a=D[d+8>>2];D[a+12>>2]=i;D[d+8>>2]=i;D[i+24>>2]=0;D[i+12>>2]=d;D[i+8>>2]=a}a=j+8|0;break a}a=D[c+8>>2];D[a+12>>2]=g;D[c+8>>2]=g;D[g+24>>2]=0;D[g+12>>2]=c;D[g+8>>2]=a}a=D[2883];if(a>>>0<=h>>>0){break d}b=a-h|0;D[2883]=b;c=D[2886];a=c+h|0;D[2886]=a;D[a+4>>2]=b|1;D[c+4>>2]=h|3;a=c+8|0;break a}D[2879]=48;a=0;break a}O:{if(!e){break O}c=D[f+28>>2];a=(c<<2)+11824|0;P:{if(D[a>>2]==(f|0)){D[a>>2]=b;if(b){break P}j=ei(c)&j;D[2881]=j;break O}D[e+(D[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}D[b+24>>2]=e;a=D[f+16>>2];if(a){D[b+16>>2]=a;D[a+24>>2]=b}a=D[f+20>>2];if(!a){break O}D[b+20>>2]=a;D[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;D[f+4>>2]=a|3;a=a+f|0;D[a+4>>2]=D[a+4>>2]|1;break Q}D[f+4>>2]=h|3;e=f+h|0;D[e+4>>2]=d|1;D[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+11560|0;c=D[2880];a=1<>2]}D[b+8>>2]=e;D[a+12>>2]=e;D[e+12>>2]=b;D[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}D[e+28>>2]=a;D[e+16>>2]=0;D[e+20>>2]=0;b=(a<<2)+11824|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=D[b>>2];while(1){b=h;if((D[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=D[c+16>>2];if(h){continue}break}D[c+16>>2]=e}D[e+24>>2]=b;D[e+12>>2]=e;D[e+8>>2]=e;break Q}a=D[b+8>>2];D[a+12>>2]=e;D[b+8>>2]=e;D[e+24>>2]=0;D[e+12>>2]=b;D[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=D[b+28>>2];a=(c<<2)+11824|0;V:{if(D[a>>2]==(b|0)){D[a>>2]=f;if(f){break V}m=11524,n=ei(c)&j,D[m>>2]=n;break U}D[i+(D[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}D[f+24>>2]=i;a=D[b+16>>2];if(a){D[f+16>>2]=a;D[a+24>>2]=f}a=D[b+20>>2];if(!a){break U}D[f+20>>2]=a;D[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;D[b+4>>2]=a|3;a=a+b|0;D[a+4>>2]=D[a+4>>2]|1;break W}D[b+4>>2]=h|3;f=b+h|0;D[f+4>>2]=d|1;D[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+11560|0;g=D[2885];a=1<>2]}D[c+8>>2]=g;D[a+12>>2]=g;D[g+12>>2]=c;D[g+8>>2]=a}D[2885]=f;D[2882]=d}a=b+8|0}$=l+16|0;return a|0}function Md(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=$-80|0;$=h;e=D[c+36>>2];D[h+72>>2]=D[c+32>>2];D[h+76>>2]=e;f=D[c+28>>2];e=h- -64|0;D[e>>2]=D[c+24>>2];D[e+4>>2]=f;e=D[c+20>>2];D[h+56>>2]=D[c+16>>2];D[h+60>>2]=e;e=D[c+12>>2];D[h+48>>2]=D[c+8>>2];D[h+52>>2]=e;e=D[c+4>>2];D[h+40>>2]=D[c>>2];D[h+44>>2]=e;gc(a,h+40|0,h+24|0);a:{if(D[a>>2]){break a}l=a+4|0;if(B[a+15|0]<0){ma(D[l>>2])}if(E[h+31|0]!=1){b=na(32);c=E[1590]|E[1591]<<8|(E[1592]<<16|E[1593]<<24);B[b+16|0]=c;B[b+17|0]=c>>>8;B[b+18|0]=c>>>16;B[b+19|0]=c>>>24;c=E[1586]|E[1587]<<8|(E[1588]<<16|E[1589]<<24);d=E[1582]|E[1583]<<8|(E[1584]<<16|E[1585]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1578]|E[1579]<<8|(E[1580]<<16|E[1581]<<24);d=E[1574]|E[1575]<<8|(E[1576]<<16|E[1577]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+20|0]=0;D[a>>2]=-1;ta(l,b,20);ma(b);break a}i=$-16|0;$=i;b:{c:{switch(E[h+32|0]){case 0:e=na(48);Gd(e);D[e>>2]=9896;D[h+8>>2]=0;D[h+12>>2]=0;D[h>>2]=0;D[h+4>>2]=0;D[h+16>>2]=e;break b;case 1:e=na(52);Gd(e);D[e+48>>2]=0;D[e>>2]=8204;D[h+8>>2]=0;D[h+12>>2]=0;D[h>>2]=0;D[h+4>>2]=0;D[h+16>>2]=e;break b;default:break c}}f=na(32);e=E[1664]|E[1665]<<8|(E[1666]<<16|E[1667]<<24);B[f+24|0]=e;B[f+25|0]=e>>>8;B[f+26|0]=e>>>16;B[f+27|0]=e>>>24;e=E[1660]|E[1661]<<8|(E[1662]<<16|E[1663]<<24);g=E[1656]|E[1657]<<8|(E[1658]<<16|E[1659]<<24);B[f+16|0]=g;B[f+17|0]=g>>>8;B[f+18|0]=g>>>16;B[f+19|0]=g>>>24;B[f+20|0]=e;B[f+21|0]=e>>>8;B[f+22|0]=e>>>16;B[f+23|0]=e>>>24;e=E[1652]|E[1653]<<8|(E[1654]<<16|E[1655]<<24);g=E[1648]|E[1649]<<8|(E[1650]<<16|E[1651]<<24);B[f+8|0]=g;B[f+9|0]=g>>>8;B[f+10|0]=g>>>16;B[f+11|0]=g>>>24;B[f+12|0]=e;B[f+13|0]=e>>>8;B[f+14|0]=e>>>16;B[f+15|0]=e>>>24;e=E[1644]|E[1645]<<8|(E[1646]<<16|E[1647]<<24);g=E[1640]|E[1641]<<8|(E[1642]<<16|E[1643]<<24);B[f|0]=g;B[f+1|0]=g>>>8;B[f+2|0]=g>>>16;B[f+3|0]=g>>>24;B[f+4|0]=e;B[f+5|0]=e>>>8;B[f+6|0]=e>>>16;B[f+7|0]=e>>>24;B[f+28|0]=0;D[i>>2]=-1;e=i|4;ta(e,f,28);k=B[i+15|0];D[h>>2]=D[i>>2];g=h+4|0;d:{if((k|0)>=0){k=D[e+4>>2];D[g>>2]=D[e>>2];D[g+4>>2]=k;D[g+8>>2]=D[e+8>>2];break d}ta(g,D[i+4>>2],D[i+8>>2])}D[h+16>>2]=0;if(B[i+15|0]<0){ma(D[i+4>>2])}ma(f)}$=i+16|0;e=D[h>>2];e:{if(e){D[a>>2]=e;if(B[h+15|0]>=0){a=h|4;b=D[a+4>>2];D[l>>2]=D[a>>2];D[l+4>>2]=b;D[l+8>>2]=D[a+8>>2];break e}ta(l,D[h+4>>2],D[h+8>>2]);break e}e=D[h+16>>2];D[h+16>>2]=0;D[e+44>>2]=d;i=$-32|0;$=i;D[e+32>>2]=c;D[e+40>>2]=b;D[e+4>>2]=d;gc(a,c,i+16|0);f:{if(D[a>>2]){break f}f=a+4|0;if(B[a+15|0]<0){ma(D[f>>2])}b=E[i+23|0];if((ba[D[D[e>>2]+8>>2]](e)|0)!=(b|0)){b=na(64);c=E[1448]|E[1449]<<8;B[b+48|0]=c;B[b+49|0]=c>>>8;c=E[1444]|E[1445]<<8|(E[1446]<<16|E[1447]<<24);d=E[1440]|E[1441]<<8|(E[1442]<<16|E[1443]<<24);B[b+40|0]=d;B[b+41|0]=d>>>8;B[b+42|0]=d>>>16;B[b+43|0]=d>>>24;B[b+44|0]=c;B[b+45|0]=c>>>8;B[b+46|0]=c>>>16;B[b+47|0]=c>>>24;c=E[1436]|E[1437]<<8|(E[1438]<<16|E[1439]<<24);d=E[1432]|E[1433]<<8|(E[1434]<<16|E[1435]<<24);B[b+32|0]=d;B[b+33|0]=d>>>8;B[b+34|0]=d>>>16;B[b+35|0]=d>>>24;B[b+36|0]=c;B[b+37|0]=c>>>8;B[b+38|0]=c>>>16;B[b+39|0]=c>>>24;c=E[1428]|E[1429]<<8|(E[1430]<<16|E[1431]<<24);d=E[1424]|E[1425]<<8|(E[1426]<<16|E[1427]<<24);B[b+24|0]=d;B[b+25|0]=d>>>8;B[b+26|0]=d>>>16;B[b+27|0]=d>>>24;B[b+28|0]=c;B[b+29|0]=c>>>8;B[b+30|0]=c>>>16;B[b+31|0]=c>>>24;c=E[1420]|E[1421]<<8|(E[1422]<<16|E[1423]<<24);d=E[1416]|E[1417]<<8|(E[1418]<<16|E[1419]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1412]|E[1413]<<8|(E[1414]<<16|E[1415]<<24);d=E[1408]|E[1409]<<8|(E[1410]<<16|E[1411]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1404]|E[1405]<<8|(E[1406]<<16|E[1407]<<24);d=E[1400]|E[1401]<<8|(E[1402]<<16|E[1403]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+50|0]=0;D[a>>2]=-1;ta(f,b,50);ma(b);break f}c=E[i+21|0];B[e+36|0]=c;d=E[i+22|0];B[e+37|0]=d;if((c|0)!=2){b=na(32);c=E[1571]|E[1572]<<8;B[b+24|0]=c;B[b+25|0]=c>>>8;c=E[1567]|E[1568]<<8|(E[1569]<<16|E[1570]<<24);d=E[1563]|E[1564]<<8|(E[1565]<<16|E[1566]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1559]|E[1560]<<8|(E[1561]<<16|E[1562]<<24);d=E[1555]|E[1556]<<8|(E[1557]<<16|E[1558]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1551]|E[1552]<<8|(E[1553]<<16|E[1554]<<24);d=E[1547]|E[1548]<<8|(E[1549]<<16|E[1550]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+26|0]=0;D[a>>2]=-5;ta(f,b,26);ma(b);break f}b=b?2:3;if((b|0)!=(d|0)){b=na(32);c=E[1544]|E[1545]<<8;B[b+24|0]=c;B[b+25|0]=c>>>8;c=E[1540]|E[1541]<<8|(E[1542]<<16|E[1543]<<24);d=E[1536]|E[1537]<<8|(E[1538]<<16|E[1539]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1532]|E[1533]<<8|(E[1534]<<16|E[1535]<<24);d=E[1528]|E[1529]<<8|(E[1530]<<16|E[1531]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1524]|E[1525]<<8|(E[1526]<<16|E[1527]<<24);d=E[1520]|E[1521]<<8|(E[1522]<<16|E[1523]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+26|0]=0;D[a>>2]=-5;ta(f,b,26);ma(b);break f}C[D[e+32>>2]+38>>1]=b|512;g:{if(C[i+26>>1]>=0){break g}k=$-16|0;$=k;d=na(36);b=d;D[b+4>>2]=0;D[b+8>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;b=b+16|0;D[b>>2]=0;D[b+4>>2]=0;D[d>>2]=d+4;D[d+32>>2]=0;D[d+12>>2]=b;D[k>>2]=0;c=D[e+32>>2];m=$-16|0;$=m;b=0;h:{if(!d){break h}D[k>>2]=c;D[m+12>>2]=0;b=0;if(!gb(1,m+12|0,c)){break h}p=D[m+12>>2];if(p){while(1){i:{if(gb(1,m+8|0,D[k>>2])){b=na(28);D[b+4>>2]=0;D[b+8>>2]=0;c=b+16|0;D[c>>2]=0;D[c+4>>2]=0;D[b>>2]=b+4;D[b+12>>2]=c;D[b+24>>2]=D[m+8>>2];if(Qc(k,b)){break i}Ca(b+12|0,D[b+16>>2]);Ba(b,D[b+4>>2]);ma(b)}b=0;break h}g=$-16|0;$=g;D[g+8>>2]=b;j:{if(!b){D[g+8>>2]=0;break j}c=D[d+28>>2];k:{if(c>>>0>2]){D[g+8>>2]=0;D[c>>2]=b;D[d+28>>2]=c+4;break k}c=0;l:{m:{n:{j=D[d+24>>2];o=D[d+28>>2]-j>>2;b=o+1|0;if(b>>>0<1073741824){j=D[d+32>>2]-j|0;n=j>>1;b=j>>>0<2147483644?b>>>0>n>>>0?b:n:1073741823;if(b){if(b>>>0>=1073741824){break n}c=na(b<<2)}n=D[g+8>>2];D[g+8>>2]=0;j=(o<<2)+c|0;D[j>>2]=n;o=(b<<2)+c|0;n=j+4|0;c=D[d+28>>2];b=D[d+24>>2];if((c|0)==(b|0)){break m}while(1){c=c-4|0;r=D[c>>2];D[c>>2]=0;j=j-4|0;D[j>>2]=r;if((b|0)!=(c|0)){continue}break}D[d+32>>2]=o;c=D[d+28>>2];D[d+28>>2]=n;b=D[d+24>>2];D[d+24>>2]=j;if((b|0)==(c|0)){break l}while(1){c=c-4|0;j=D[c>>2];D[c>>2]=0;if(j){Ca(j+12|0,D[j+16>>2]);Ba(j,D[j+4>>2]);ma(j)}if((b|0)!=(c|0)){continue}break}break l}qa();T()}ra(1326);T()}D[d+32>>2]=o;D[d+28>>2]=n;D[d+24>>2]=j}if(b){ma(b)}}b=D[g+8>>2];D[g+8>>2]=0;if(!b){break j}Ca(b+12|0,D[b+16>>2]);Ba(b,D[b+4>>2]);ma(b)}$=g+16|0;q=q+1|0;if((q|0)!=(p|0)){continue}break}}b=Qc(k,d)}$=m+16|0;o:{if(b){c=D[e+4>>2];b=D[c+4>>2];D[c+4>>2]=d;if(b){fc(b)}D[a>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;break o}b=na(32);c=E[1693]|E[1694]<<8;B[b+24|0]=c;B[b+25|0]=c>>>8;c=E[1689]|E[1690]<<8|(E[1691]<<16|E[1692]<<24);g=E[1685]|E[1686]<<8|(E[1687]<<16|E[1688]<<24);B[b+16|0]=g;B[b+17|0]=g>>>8;B[b+18|0]=g>>>16;B[b+19|0]=g>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1681]|E[1682]<<8|(E[1683]<<16|E[1684]<<24);g=E[1677]|E[1678]<<8|(E[1679]<<16|E[1680]<<24);B[b+8|0]=g;B[b+9|0]=g>>>8;B[b+10|0]=g>>>16;B[b+11|0]=g>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1673]|E[1674]<<8|(E[1675]<<16|E[1676]<<24);g=E[1669]|E[1670]<<8|(E[1671]<<16|E[1672]<<24);B[b|0]=g;B[b+1|0]=g>>>8;B[b+2|0]=g>>>16;B[b+3|0]=g>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+26|0]=0;D[a>>2]=-1;ta(a+4|0,b,26);ma(b);D[k+8>>2]=0;fc(d)}$=k+16|0;if(D[a>>2]){break f}if(B[f+11|0]>=0){break g}ma(D[f>>2])}if(!(ba[D[D[e>>2]+12>>2]](e)|0)){b=na(48);B[b+32|0]=E[1518];c=E[1514]|E[1515]<<8|(E[1516]<<16|E[1517]<<24);d=E[1510]|E[1511]<<8|(E[1512]<<16|E[1513]<<24);B[b+24|0]=d;B[b+25|0]=d>>>8;B[b+26|0]=d>>>16;B[b+27|0]=d>>>24;B[b+28|0]=c;B[b+29|0]=c>>>8;B[b+30|0]=c>>>16;B[b+31|0]=c>>>24;c=E[1506]|E[1507]<<8|(E[1508]<<16|E[1509]<<24);d=E[1502]|E[1503]<<8|(E[1504]<<16|E[1505]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1498]|E[1499]<<8|(E[1500]<<16|E[1501]<<24);d=E[1494]|E[1495]<<8|(E[1496]<<16|E[1497]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1490]|E[1491]<<8|(E[1492]<<16|E[1493]<<24);d=E[1486]|E[1487]<<8|(E[1488]<<16|E[1489]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+33|0]=0;D[a>>2]=-1;ta(f,b,33);ma(b);break f}if(!(ba[D[D[e>>2]+20>>2]](e)|0)){b=Gb(i,1696);D[a>>2]=-1;if(B[b+11|0]>=0){b=D[i+4>>2];D[f>>2]=D[i>>2];D[f+4>>2]=b;D[f+8>>2]=D[i+8>>2];break f}ta(f,D[b>>2],D[b+4>>2]);if(B[b+11|0]>=0){break f}ma(D[b>>2]);break f}if(!(ba[D[D[e>>2]+24>>2]](e)|0)){b=Gb(i,1451);D[a>>2]=-1;if(B[b+11|0]>=0){b=D[i+4>>2];D[f>>2]=D[i>>2];D[f+4>>2]=b;D[f+8>>2]=D[i+8>>2];break f}ta(f,D[b>>2],D[b+4>>2]);if(B[b+11|0]>=0){break f}ma(D[b>>2]);break f}D[a>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0}$=i+32|0;if(!D[a>>2]){if(B[l+11|0]<0){ma(D[l>>2])}D[a>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0}ba[D[D[e>>2]+4>>2]](e)}a=D[h+16>>2];D[h+16>>2]=0;if(a){ba[D[D[a>>2]+4>>2]](a)}if(B[h+15|0]>=0){break a}ma(D[h+4>>2])}$=h+80|0}function Qc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=$-48|0;$=k;c=na(8);D[c+4>>2]=b;D[c>>2]=0;b=c+8|0;D[k+40>>2]=b;D[k+36>>2]=b;D[k+32>>2]=c;a:{b:{c:{d:{while(1){b=b-8|0;j=D[b+4>>2];g=D[b>>2];D[k+36>>2]=b;if(g){D[k+24>>2]=0;D[k+16>>2]=0;D[k+20>>2]=0;c=1;b=D[a>>2];e=D[b+8>>2];h=D[b+12>>2];d=D[b+20>>2];f=D[b+16>>2];e:{if((h|0)<=(d|0)&f>>>0>=e>>>0|(d|0)>(h|0)){break e}e=E[f+D[b>>2]|0];f=f+1|0;d=f?d:d+1|0;D[b+16>>2]=f;D[b+20>>2]=d;Sb(k+16|0,e);if(e){d=D[a>>2];m=Tb(k+16|0);f=D[d+20>>2];i=D[d+16>>2];b=e;n=i+e|0;h=D[d+12>>2];f=e>>>0>n>>>0?f+1|0:f;if(n>>>0>G[d+8>>2]&(h|0)<=(f|0)|(f|0)>(h|0)){break e}oa(m,i+D[d>>2]|0,e);c=D[d+20>>2];e=b+D[d+16>>2]|0;c=e>>>0>>0?c+1|0:c;D[d+16>>2]=e;D[d+20>>2]=c}j=na(24);b=j;D[b+4>>2]=0;D[b+8>>2]=0;b=b+16|0;D[b>>2]=0;D[b+4>>2]=0;D[j>>2]=j+4;D[j+12>>2]=b;e=$-32|0;$=e;f=g+12|0;c=k+16|0;l=ab(f,c);p=g+16|0;f:{if((l|0)==(p|0)){D[e+16>>2]=c;b=D[f+4>>2];g:{h:{if(b){d=E[c+11|0];g=d<<24>>24<0;h=g?D[c>>2]:c;g=g?D[c+4>>2]:d;c=f+4|0;while(1){d=E[b+27|0];n=d<<24>>24<0;d=n?D[b+20>>2]:d;m=d>>>0>>0;i:{j:{k:{l:{m:{i=m?d:g;n:{if(i){o=b+16|0;n=n?D[o>>2]:o;o=va(h,n,i);if(!o){if(d>>>0>g>>>0){break n}break m}if((o|0)>=0){break m}break n}if(d>>>0<=g>>>0){break l}}d=D[b>>2];if(d){break i}break h}d=va(n,h,i);if(d){break k}}if(m){break j}break g}if((d|0)>=0){break g}}c=b+4|0;d=D[b+4>>2];if(!d){break g}b=c}c=b;b=d;continue}}b=f+4|0}c=b}d=D[c>>2];if(d){b=0}else{d=na(32);h=d+16|0;g=D[e+16>>2];o:{if(B[g+11|0]>=0){n=D[g+4>>2];D[h>>2]=D[g>>2];D[h+4>>2]=n;D[h+8>>2]=D[g+8>>2];break o}ta(h,D[g>>2],D[g+4>>2])}D[d+8>>2]=b;D[d>>2]=0;D[d+4>>2]=0;D[d+28>>2]=0;D[c>>2]=d;b=D[D[f>>2]>>2];if(b){D[f>>2]=b;b=D[c>>2]}else{b=d}pb(D[f+4>>2],b);D[f+8>>2]=D[f+8>>2]+1;b=1}B[e+28|0]=b;D[e+24>>2]=d;c=D[e+24>>2];b=D[c+28>>2];D[c+28>>2]=j;if(!b){break f}Ca(b+12|0,D[b+16>>2]);Ba(b,D[b+4>>2]);ma(b);break f}if(!j){break f}Ca(j+12|0,D[j+16>>2]);Ba(j,D[j+4>>2]);ma(j)}$=e+32|0;c=(l|0)!=(p|0)}if(B[k+27|0]<0){ma(D[k+16>>2])}if(c){break b}}if(!j){break b}D[k+16>>2]=0;if(!gb(1,k+16|0,D[a>>2])){break b}b=0;r=D[k+16>>2];if(r){while(1){n=0;i=$-32|0;$=i;D[i+24>>2]=0;D[i+16>>2]=0;D[i+20>>2]=0;c=D[a>>2];e=D[c+8>>2];p:{q:{f=D[c+12>>2];d=D[c+20>>2];g=D[c+16>>2];r:{if((f|0)<=(d|0)&g>>>0>=e>>>0|(d|0)>(f|0)){break r}f=E[g+D[c>>2]|0];e=c;c=d;d=g+1|0;c=d?c:c+1|0;D[e+16>>2]=d;D[e+20>>2]=c;Sb(i+16|0,f);if(f){e=D[a>>2];m=Tb(i+16|0);d=D[e+20>>2];l=D[e+16>>2];c=f;h=l+c|0;g=D[e+12>>2];d=c>>>0>h>>>0?d+1|0:d;if(h>>>0>G[e+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break r}oa(m,l+D[e>>2]|0,f);d=D[e+20>>2];f=c+D[e+16>>2]|0;d=f>>>0>>0?d+1|0:d;D[e+16>>2]=f;D[e+20>>2]=d}D[i+12>>2]=0;if(!gb(1,i+12|0,D[a>>2])){break r}c=D[i+12>>2];if(!c){break r}D[i+8>>2]=0;D[i>>2]=0;D[i+4>>2]=0;if((c|0)<0){break q}d=na(c);D[i>>2]=d;e=c+d|0;D[i+8>>2]=e;m=pa(d,0,c);D[i+4>>2]=e;e=D[a>>2];n=D[e+8>>2];g=D[e+12>>2];f=D[e+20>>2];l=D[e+16>>2];h=c+l|0;f=h>>>0>>0?f+1|0:f;n=(f|0)<=(g|0)&h>>>0<=n>>>0|(f|0)<(g|0);if(n){oa(m,l+D[e>>2]|0,c);d=c;f=c+D[e+16>>2]|0;c=D[e+20>>2];D[e+16>>2]=f;D[e+20>>2]=d>>>0>f>>>0?c+1|0:c;g=$-48|0;$=g;d=ab(j,i+16|0);if((d|0)!=(j+4|0)){e=D[d+4>>2];s:{if(!e){f=D[d+8>>2];if(D[f>>2]==(d|0)){break s}c=d+8|0;while(1){e=D[c>>2];c=e+8|0;f=D[e+8>>2];if((e|0)!=D[f>>2]){continue}break}break s}while(1){f=e;e=D[e>>2];if(e){continue}break}}if(D[j>>2]==(d|0)){D[j>>2]=f}D[j+8>>2]=D[j+8>>2]-1;f=D[j+4>>2];h=d;t:{u:{e=D[d>>2];if(e){c=D[h+4>>2];if(!c){break u}while(1){d=c;c=D[c>>2];if(c){continue}break}}e=D[d+4>>2];if(e){break u}e=0;m=1;break t}D[e+8>>2]=D[d+8>>2];m=0}l=D[d+8>>2];c=D[l>>2];v:{if((d|0)==(c|0)){D[l>>2]=e;if((d|0)==(f|0)){c=0;f=e;break v}c=D[l+4>>2];break v}D[l+4>>2]=e}o=!E[d+12|0];if((d|0)!=(h|0)){l=D[h+8>>2];D[d+8>>2]=l;D[l+(((h|0)!=D[D[h+8>>2]>>2])<<2)>>2]=d;l=D[h>>2];D[d>>2]=l;D[l+8>>2]=d;l=D[h+4>>2];D[d+4>>2]=l;if(l){D[l+8>>2]=d}B[d+12|0]=E[h+12|0];f=(f|0)==(h|0)?d:f}w:{if(o|!f){break w}if(m){while(1){e=E[c+12|0];x:{d=D[c+8>>2];if(D[d>>2]!=(c|0)){if(!e){B[c+12|0]=1;B[d+12|0]=0;e=D[d+4>>2];m=D[e>>2];D[d+4>>2]=m;if(m){D[m+8>>2]=d}D[e+8>>2]=D[d+8>>2];m=D[d+8>>2];D[(((d|0)!=D[m>>2])<<2)+m>>2]=e;D[e>>2]=d;D[d+8>>2]=e;d=c;c=D[c>>2];f=(c|0)==(f|0)?d:f;c=D[c+4>>2]}y:{z:{d=D[c>>2];A:{if(!(E[d+12|0]?0:d)){e=D[c+4>>2];if(E[e+12|0]?0:e){break A}B[c+12|0]=0;c=D[c+8>>2];B:{if((f|0)==(c|0)){c=f;break B}if(E[c+12|0]){break x}}B[c+12|0]=1;break w}e=D[c+4>>2];if(!e){break z}}if(E[e+12|0]){break z}d=c;break y}B[d+12|0]=1;B[c+12|0]=0;e=D[d+4>>2];D[c>>2]=e;if(e){D[e+8>>2]=c}D[d+8>>2]=D[c+8>>2];e=D[c+8>>2];D[((D[e>>2]!=(c|0))<<2)+e>>2]=d;D[d+4>>2]=c;D[c+8>>2]=d;e=c}c=D[d+8>>2];B[d+12|0]=E[c+12|0];B[c+12|0]=1;B[e+12|0]=1;d=D[c+4>>2];e=D[d>>2];D[c+4>>2]=e;if(e){D[e+8>>2]=c}D[d+8>>2]=D[c+8>>2];e=D[c+8>>2];D[(((c|0)!=D[e>>2])<<2)+e>>2]=d;D[d>>2]=c;D[c+8>>2]=d;break w}if(!e){B[c+12|0]=1;B[d+12|0]=0;e=D[c+4>>2];D[d>>2]=e;if(e){D[e+8>>2]=d}D[c+8>>2]=D[d+8>>2];e=D[d+8>>2];D[(((d|0)!=D[e>>2])<<2)+e>>2]=c;D[c+4>>2]=d;D[d+8>>2]=c;f=(d|0)==(f|0)?c:f;c=D[d>>2]}e=D[c>>2];C:{if(!(!e|E[e+12|0])){d=c;break C}d=D[c+4>>2];if(!(E[d+12|0]?0:d)){B[c+12|0]=0;c=D[c+8>>2];if((c|0)!=(f|0)?E[c+12|0]:0){break x}B[c+12|0]=1;break w}if(e){if(!E[e+12|0]){d=c;break C}d=D[c+4>>2]}B[d+12|0]=1;B[c+12|0]=0;e=D[d>>2];D[c+4>>2]=e;if(e){D[e+8>>2]=c}D[d+8>>2]=D[c+8>>2];e=D[c+8>>2];D[((D[e>>2]!=(c|0))<<2)+e>>2]=d;D[d>>2]=c;D[c+8>>2]=d;e=c}c=D[d+8>>2];B[d+12|0]=E[c+12|0];B[c+12|0]=1;B[e+12|0]=1;d=D[c>>2];e=D[d+4>>2];D[c>>2]=e;if(e){D[e+8>>2]=c}D[d+8>>2]=D[c+8>>2];e=D[c+8>>2];D[(((c|0)!=D[e>>2])<<2)+e>>2]=d;D[d+4>>2]=c;D[c+8>>2]=d;break w}d=c;c=D[c+8>>2];c=D[(((d|0)==D[c>>2])<<2)+c>>2];continue}}B[e+12|0]=1}c=D[h+28>>2];if(c){D[h+32>>2]=c;ma(c)}if(B[h+27|0]<0){ma(D[h+16>>2])}ma(h)}D[g>>2]=0;D[g+4>>2]=0;D[g+8>>2]=0;c=D[i+4>>2]-D[i>>2]|0;Ka(g,c);oa(D[g>>2],D[i>>2],c);D:{if(B[i+27|0]>=0){D[g+24>>2]=D[i+24>>2];c=D[i+20>>2];D[g+16>>2]=D[i+16>>2];D[g+20>>2]=c;break D}ta(g+16|0,D[i+16>>2],D[i+20>>2])}D[g+36>>2]=0;D[g+28>>2]=0;D[g+32>>2]=0;Ka(g+28|0,D[g+4>>2]-D[g>>2]|0);c=D[g>>2];oa(D[g+28>>2],c,D[g+4>>2]-c|0);f=g+16|0;d=f;c=D[j+4>>2];E:{F:{if(c){e=E[d+11|0];h=e<<24>>24<0;m=h?D[d>>2]:d;h=h?D[d+4>>2]:e;d=j+4|0;while(1){e=E[c+27|0];l=e<<24>>24<0;e=l?D[c+20>>2]:e;p=e>>>0>>0;G:{H:{I:{J:{K:{o=p?e:h;L:{if(o){q=c+16|0;l=l?D[q>>2]:q;q=va(m,l,o);if(!q){if(e>>>0>h>>>0){break L}break K}if((q|0)>=0){break K}break L}if(e>>>0<=h>>>0){break J}}e=D[c>>2];if(e){break G}break F}e=va(l,m,o);if(e){break I}}if(p){break H}break E}if((e|0)>=0){break E}}d=c+4|0;e=D[c+4>>2];if(!e){break E}c=d}d=c;c=e;continue}}c=j+4|0}d=c}e=D[d>>2];if(e){c=0}else{e=na(40);D[e+24>>2]=D[f+8>>2];h=D[f+4>>2];D[e+16>>2]=D[f>>2];D[e+20>>2]=h;D[f>>2]=0;D[f+4>>2]=0;D[f+8>>2]=0;D[e+36>>2]=0;h=e+28|0;D[h>>2]=0;D[h+4>>2]=0;Ka(h,D[f+16>>2]-D[f+12>>2]|0);m=D[h>>2];h=D[f+12>>2];oa(m,h,D[f+16>>2]-h|0);D[e+8>>2]=c;D[e>>2]=0;D[e+4>>2]=0;D[d>>2]=e;c=D[D[j>>2]>>2];if(c){D[j>>2]=c;c=D[d>>2]}else{c=e}pb(D[j+4>>2],c);D[j+8>>2]=D[j+8>>2]+1;c=1}B[g+44|0]=c;D[g+40>>2]=e;c=D[g+28>>2];if(c){D[g+32>>2]=c;ma(c)}if(B[g+27|0]<0){ma(D[g+16>>2])}c=D[g>>2];if(c){D[g+4>>2]=c;ma(c)}$=g+48|0;d=D[i>>2];if(!d){break r}}D[i+4>>2]=d;ma(d)}if(B[i+27|0]<0){ma(D[i+16>>2])}$=i+32|0;break p}qa();T()}if(!n){break b}b=b+1|0;if((r|0)!=(b|0)){continue}break}}D[k+12>>2]=0;if(!gb(1,k+12|0,D[a>>2])){break b}b=D[a>>2];c=D[b+8>>2];d=D[b+16>>2];e=c-d|0;f=D[k+12>>2];b=D[b+12>>2]-(D[b+20>>2]+(c>>>0>>0)|0)|0;if(e>>>0>>0&(b|0)<=0|(b|0)<0){break b}c=0;b=D[k+36>>2];if(f){while(1){e=D[k+40>>2];M:{if(e>>>0>b>>>0){D[b+4>>2]=0;D[b>>2]=j;b=b+8|0;D[k+36>>2]=b;break M}d=D[k+32>>2];g=b-d|0;h=g>>3;b=h+1|0;if(b>>>0>=536870912){break d}e=e-d|0;n=e>>2;b=e>>>0<2147483640?b>>>0>n>>>0?b:n:536870911;if(b>>>0>=536870912){break c}m=h<<3;h=b<<3;e=na(h);b=m+e|0;D[b+4>>2]=0;D[b>>2]=j;b=b+8|0;if((g|0)>0){oa(e,d,g)}D[k+40>>2]=e+h;D[k+36>>2]=b;D[k+32>>2]=e;if(!d){break M}ma(d)}c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(D[k+32>>2]!=(b|0)){continue}break}a=1;break a}qa();T()}ra(1326);T()}b=D[k+32>>2];a=0}if(b){ma(b)}$=k+48|0;return a}function he(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=$-48|0;$=k;a:{if((c|0)!=1){break a}d=D[a+4>>2];g=D[a+12>>2];D[k+40>>2]=0;a=k;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;c=a+8|0;b:{if((b|0)==-2){break b}l=D[D[D[d+4>>2]+8>>2]+(g<<2)>>2];if((ba[D[D[d>>2]+8>>2]](d)|0)==1){j=$-32|0;$=j;f=D[D[D[d+4>>2]+8>>2]+(g<<2)>>2];c:{d:{e:{if((ba[D[D[d>>2]+8>>2]](d)|0)!=1|b-1>>>0>5){break e}h=ba[D[D[d>>2]+36>>2]](d)|0;a=ba[D[D[d>>2]+44>>2]](d,g)|0;if(!h|!a){break e}e=ba[D[D[d>>2]+40>>2]](d,g)|0;if(e){d=D[d+44>>2];D[j+12>>2]=e;D[j+8>>2]=d;D[j+20>>2]=a;D[j+16>>2]=a+12;e=j+8|0;a=0;f:{g:{switch(b-1|0){case 0:a=na(60);D[a+4>>2]=f;D[a>>2]=2988;b=D[c+8>>2];d=D[c+12>>2];f=D[c+16>>2];g=D[c+20>>2];h=D[c>>2];i=D[c+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=f;D[a+28>>2]=g;D[a+16>>2]=b;D[a+20>>2]=d;D[a+8>>2]=h;D[a+12>>2]=i;f=D[c+24>>2];b=D[c+28>>2]-f|0;if(b){if((b|0)<0){break d}d=na(b);D[a+32>>2]=d;D[a+40>>2]=d+(b>>2<<2);m=a,n=oa(d,f,b)+b|0,D[m+36>>2]=n}b=D[e+4>>2];D[a+44>>2]=D[e>>2];D[a+48>>2]=b;b=D[e+12>>2];D[a+52>>2]=D[e+8>>2];D[a+56>>2]=b;D[a>>2]=2280;break f;case 3:a=na(112);D[a+4>>2]=f;D[a>>2]=2988;b=D[c+8>>2];d=D[c+12>>2];f=D[c+16>>2];g=D[c+20>>2];h=D[c>>2];i=D[c+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=f;D[a+28>>2]=g;D[a+16>>2]=b;D[a+20>>2]=d;D[a+8>>2]=h;D[a+12>>2]=i;f=D[c+24>>2];b=D[c+28>>2]-f|0;if(b){if((b|0)<0){break d}d=na(b);D[a+32>>2]=d;D[a+40>>2]=d+(b>>2<<2);m=a,n=oa(d,f,b)+b|0,D[m+36>>2]=n}b=D[e+4>>2];D[a+44>>2]=D[e>>2];D[a+48>>2]=b;b=D[e+12>>2];D[a+52>>2]=D[e+8>>2];D[a+56>>2]=b;D[a+60>>2]=0;D[a+64>>2]=0;D[a>>2]=3044;D[a+68>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+84>>2]=0;D[a+88>>2]=0;D[a+92>>2]=0;D[a+96>>2]=0;D[a+100>>2]=0;D[a+104>>2]=0;D[a+108>>2]=0;break f;case 4:a=na(104);D[a+4>>2]=f;D[a>>2]=2988;b=D[c+8>>2];d=D[c+12>>2];f=D[c+16>>2];g=D[c+20>>2];h=D[c>>2];i=D[c+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=f;D[a+28>>2]=g;D[a+16>>2]=b;D[a+20>>2]=d;D[a+8>>2]=h;D[a+12>>2]=i;f=D[c+24>>2];b=D[c+28>>2]-f|0;if(b){if((b|0)<0){break d}d=na(b);D[a+32>>2]=d;D[a+40>>2]=d+(b>>2<<2);m=a,n=oa(d,f,b)+b|0,D[m+36>>2]=n}b=D[e+4>>2];D[a+44>>2]=D[e>>2];D[a+48>>2]=b;b=D[e+8>>2];d=D[e+12>>2];D[a+84>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+60>>2]=0;D[a+64>>2]=0;D[a>>2]=3292;D[a+52>>2]=b;D[a+56>>2]=d;b=D[e+4>>2];D[a+88>>2]=D[e>>2];D[a+92>>2]=b;b=D[e+12>>2];D[a+96>>2]=D[e+8>>2];D[a+100>>2]=b;break f;case 5:break g;default:break f}}a=na(128);D[a+4>>2]=f;D[a>>2]=2988;b=D[c+8>>2];d=D[c+12>>2];f=D[c+16>>2];g=D[c+20>>2];h=D[c>>2];i=D[c+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=f;D[a+28>>2]=g;D[a+16>>2]=b;D[a+20>>2]=d;D[a+8>>2]=h;D[a+12>>2]=i;h:{i:{d=D[c+28>>2]-D[c+24>>2]|0;if(d){if((d|0)<0){break i}b=na(d);D[a+32>>2]=b;D[a+36>>2]=b;D[a+40>>2]=b+(d>>2<<2);f=D[c+24>>2];d=D[c+28>>2]-f|0;if((d|0)>0){b=oa(b,f,d)+d|0}D[a+36>>2]=b}D[a>>2]=2932;b=D[e+4>>2];D[a+44>>2]=D[e>>2];D[a+48>>2]=b;b=D[e+12>>2];D[a+52>>2]=D[e+8>>2];D[a+56>>2]=b;b=a- -64|0;D[b>>2]=0;D[b+4>>2]=0;D[a+60>>2]=4156;D[a>>2]=3528;b=D[e+4>>2];D[a+72>>2]=D[e>>2];D[a+76>>2]=b;b=D[e+12>>2];D[a+80>>2]=D[e+8>>2];D[a+84>>2]=b;D[a+104>>2]=1065353216;D[a+108>>2]=-1;D[a+96>>2]=-1;D[a+100>>2]=-1;D[a+88>>2]=1;D[a+92>>2]=-1;D[a+60>>2]=3764;D[a+112>>2]=0;D[a+116>>2]=0;B[a+117|0]=0;B[a+118|0]=0;B[a+119|0]=0;B[a+120|0]=0;B[a+121|0]=0;B[a+122|0]=0;B[a+123|0]=0;B[a+124|0]=0;break h}qa();T()}break f}e=a;break e}e=D[d+44>>2];D[j+12>>2]=h;D[j+8>>2]=e;D[j+20>>2]=a;D[j+16>>2]=a+12;e=j+8|0;a=0;j:{k:{switch(b-1|0){case 0:a=na(60);D[a+4>>2]=f;D[a>>2]=2988;b=D[c+8>>2];d=D[c+12>>2];f=D[c+16>>2];g=D[c+20>>2];h=D[c>>2];i=D[c+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=f;D[a+28>>2]=g;D[a+16>>2]=b;D[a+20>>2]=d;D[a+8>>2]=h;D[a+12>>2]=i;f=D[c+24>>2];b=D[c+28>>2]-f|0;if(b){if((b|0)<0){break d}d=na(b);D[a+32>>2]=d;D[a+40>>2]=d+(b>>2<<2);m=a,n=oa(d,f,b)+b|0,D[m+36>>2]=n}b=D[e+4>>2];D[a+44>>2]=D[e>>2];D[a+48>>2]=b;b=D[e+12>>2];D[a+52>>2]=D[e+8>>2];D[a+56>>2]=b;D[a>>2]=4184;break j;case 3:a=na(112);D[a+4>>2]=f;D[a>>2]=2988;b=D[c+8>>2];d=D[c+12>>2];f=D[c+16>>2];g=D[c+20>>2];h=D[c>>2];i=D[c+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=f;D[a+28>>2]=g;D[a+16>>2]=b;D[a+20>>2]=d;D[a+8>>2]=h;D[a+12>>2]=i;f=D[c+24>>2];b=D[c+28>>2]-f|0;if(b){if((b|0)<0){break d}d=na(b);D[a+32>>2]=d;D[a+40>>2]=d+(b>>2<<2);m=a,n=oa(d,f,b)+b|0,D[m+36>>2]=n}b=D[e+4>>2];D[a+44>>2]=D[e>>2];D[a+48>>2]=b;b=D[e+12>>2];D[a+52>>2]=D[e+8>>2];D[a+56>>2]=b;D[a+60>>2]=0;D[a+64>>2]=0;D[a>>2]=4608;D[a+68>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+84>>2]=0;D[a+88>>2]=0;D[a+92>>2]=0;D[a+96>>2]=0;D[a+100>>2]=0;D[a+104>>2]=0;D[a+108>>2]=0;break j;case 4:a=na(104);D[a+4>>2]=f;D[a>>2]=2988;b=D[c+8>>2];d=D[c+12>>2];f=D[c+16>>2];g=D[c+20>>2];h=D[c>>2];i=D[c+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=f;D[a+28>>2]=g;D[a+16>>2]=b;D[a+20>>2]=d;D[a+8>>2]=h;D[a+12>>2]=i;f=D[c+24>>2];b=D[c+28>>2]-f|0;if(b){if((b|0)<0){break d}d=na(b);D[a+32>>2]=d;D[a+40>>2]=d+(b>>2<<2);m=a,n=oa(d,f,b)+b|0,D[m+36>>2]=n}b=D[e+4>>2];D[a+44>>2]=D[e>>2];D[a+48>>2]=b;b=D[e+8>>2];d=D[e+12>>2];D[a+84>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+60>>2]=0;D[a+64>>2]=0;D[a>>2]=4844;D[a+52>>2]=b;D[a+56>>2]=d;b=D[e+4>>2];D[a+88>>2]=D[e>>2];D[a+92>>2]=b;b=D[e+12>>2];D[a+96>>2]=D[e+8>>2];D[a+100>>2]=b;break j;case 5:break k;default:break j}}a=na(128);D[a+4>>2]=f;D[a>>2]=2988;b=D[c+8>>2];d=D[c+12>>2];f=D[c+16>>2];g=D[c+20>>2];h=D[c>>2];i=D[c+4>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=f;D[a+28>>2]=g;D[a+16>>2]=b;D[a+20>>2]=d;D[a+8>>2]=h;D[a+12>>2]=i;l:{m:{d=D[c+28>>2]-D[c+24>>2]|0;if(d){if((d|0)<0){break m}b=na(d);D[a+32>>2]=b;D[a+36>>2]=b;D[a+40>>2]=b+(d>>2<<2);f=D[c+24>>2];d=D[c+28>>2]-f|0;if((d|0)>0){b=oa(b,f,d)+d|0}D[a+36>>2]=b}D[a>>2]=4552;b=D[e+4>>2];D[a+44>>2]=D[e>>2];D[a+48>>2]=b;b=D[e+12>>2];D[a+52>>2]=D[e+8>>2];D[a+56>>2]=b;b=a- -64|0;D[b>>2]=0;D[b+4>>2]=0;D[a+60>>2]=5652;D[a>>2]=5068;b=D[e+4>>2];D[a+72>>2]=D[e>>2];D[a+76>>2]=b;b=D[e+12>>2];D[a+80>>2]=D[e+8>>2];D[a+84>>2]=b;D[a+104>>2]=1065353216;D[a+108>>2]=-1;D[a+96>>2]=-1;D[a+100>>2]=-1;D[a+88>>2]=1;D[a+92>>2]=-1;D[a+60>>2]=5288;D[a+112>>2]=0;D[a+116>>2]=0;B[a+117|0]=0;B[a+118|0]=0;B[a+119|0]=0;B[a+120|0]=0;B[a+121|0]=0;B[a+122|0]=0;B[a+123|0]=0;B[a+124|0]=0;break l}qa();T()}break j}e=a}$=j+32|0;break c}qa();T()}if(e){break b}}e=na(44);D[e+4>>2]=l;D[e>>2]=2988;a=D[c+8>>2];b=D[c+12>>2];d=D[c+16>>2];j=D[c+20>>2];f=D[c>>2];g=D[c+4>>2];D[e+40>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;D[e+24>>2]=d;D[e+28>>2]=j;D[e+16>>2]=a;D[e+20>>2]=b;D[e+8>>2]=f;D[e+12>>2]=g;n:{a=D[c+28>>2];c=D[c+24>>2];a=a-c|0;if(a){if((a|0)<0){break n}b=na(a);D[e+32>>2]=b;D[e+40>>2]=b+(a>>2<<2);m=e,n=oa(b,c,a)+a|0,D[m+36>>2]=n}D[e>>2]=5680;break b}qa();T()}a=D[k+32>>2];if(!a){break a}D[k+36>>2]=a;ma(a)}$=k+48|0;return e|0}function $d(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,K=0;h=$+-64|0;$=h;D[a+8>>2]=e;f=a+32|0;g=D[f>>2];d=D[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){sa(f,e-d|0);D[h+56>>2]=0;D[h+60>>2]=0;D[h+48>>2]=0;D[h+52>>2]=0;D[h+40>>2]=0;D[h+44>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;D[h+24>>2]=0;D[h+28>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;D[h>>2]=0;break b}if(d>>>0>e>>>0){D[a+36>>2]=g+(e<<2)}D[h+56>>2]=0;D[h+60>>2]=0;D[h+48>>2]=0;D[h+52>>2]=0;D[h+40>>2]=0;D[h+44>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;D[h+24>>2]=0;D[h+28>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;D[h>>2]=0;d=0;if(!e){break a}}xa(h+16|0,e,h);i=D[h+28>>2];d=D[h+32>>2]}D[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}D[h+32>>2]=(e<<2)+i;break c}xa(h+16|12,e-d|0,h)}D[h>>2]=0;f=D[h+40>>2];d=D[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}D[h+44>>2]=f+(e<<2);break d}xa(h+40|0,e-d|0,h)}D[h>>2]=0;f=D[h+52>>2];d=D[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}D[h+56>>2]=f+(e<<2);break e}xa(h+52|0,e-d|0,h)}i=0;f:{if(D[a+8>>2]<=0){break f}j=D[a+32>>2];g=D[h+16>>2];while(1){d=i<<2;f=D[d+g>>2];m=D[a+16>>2];g:{if((f|0)>(m|0)){D[d+j>>2]=m;break g}d=d+j|0;m=D[a+12>>2];if((m|0)>(f|0)){D[d>>2]=m;break g}D[d>>2]=f}i=i+1|0;d=D[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=D[b+g>>2]+D[g+j>>2]|0;D[f>>2]=g;h:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break h}g=g+D[a+20>>2]|0}D[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}E=D[a+52>>2];q=D[a+48>>2];w=na(16);d=w;D[d>>2]=0;D[d+4>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;v=na(d);D[h>>2]=v;D[h+8>>2]=d+v;pa(v,0,d)}p=1;d=D[a+56>>2];z=D[d>>2];d=D[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;F=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;x=e-1|0;I=e<<2;m=1;while(1){k:{l:{m:{n:{if((m|0)!=(G|0)){f=D[(m<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}j=0;g=f+2|0;y=(d|0)!=0|(g|0)!=-1;n=1;r=d?f-1|0:g;o=1<>>5|0;K=D[q>>2];d=f;q:{while(1){r:{if(D[(d>>>3&536870908)+K>>2]>>>d&1){break r}g=D[D[D[q+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break r}k=D[E>>2];i=D[q+28>>2];p=D[k+(D[i+(g<<2)>>2]<<2)>>2];if((p|0)>=(m|0)){break r}l=g+1|0;l=D[k+(D[i+(((l>>>0)%3|0?l:g-2|0)<<2)>>2]<<2)>>2];if((l|0)>=(m|0)){break r}i=D[k+(D[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((i|0)>=(m|0)){break r}s:{if(!e){break s}g=D[(h+16|0)+J(j,12)>>2];k=J(e,i);l=J(e,l);p=J(e,p);i=0;u=0;if(x){while(1){D[g+(i<<2)>>2]=(D[(i+k<<2)+c>>2]+D[(i+l<<2)+c>>2]|0)-D[(i+p<<2)+c>>2];t=i|1;D[g+(t<<2)>>2]=(D[(k+t<<2)+c>>2]+D[(l+t<<2)+c>>2]|0)-D[(p+t<<2)+c>>2];i=i+2|0;u=u+2|0;if((A|0)!=(u|0)){continue}break}}if(!B){break s}D[g+(i<<2)>>2]=(D[(i+k<<2)+c>>2]+D[(i+l<<2)+c>>2]|0)-D[(i+p<<2)+c>>2]}g=4;j=j+1|0;if((j|0)==4){break q}}t:{if(n&1){i=d-2|0;g=d+1|0;d=-1;g=(g>>>0)%3|0?g:i;if((g|0)==-1|D[D[q>>2]+(g>>>3&536870908)>>2]>>>g&1){break t}g=D[D[D[q+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break t}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;break t}u:{if((d>>>0)%3|0){i=d-1|0;break u}i=d+2|0;d=-1;if((i|0)==-1){break t}}d=-1;if(D[D[q>>2]+(i>>>3&536870908)>>2]>>>i&1){break t}g=D[D[D[q+64>>2]+12>>2]+(i<<2)>>2];if((g|0)==-1){break t}if((g>>>0)%3|0){d=g-1|0;break t}d=g+2|0}v:{if((d|0)==(f|0)){break v}if(!((n^1)&1|(d|0)!=-1)){if(!y|o&D[D[q>>2]+(s<<2)>>2]){break v}d=D[D[D[q+64>>2]+12>>2]+(r<<2)>>2];if((d|0)==-1){break v}n=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=j;if((g|0)<=0){break p}}if(e){pa(D[h>>2],0,I)}d=g-1|0;t=(d<<2)+w|0;d=J(d,12)+a|0;u=d;y=D[d- -64>>2];p=0;n=0;d=0;while(1){f=D[t>>2];D[t>>2]=f+1;if(f>>>0>=y>>>0){break j}w:{if(D[D[u+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break w}d=d+1|0;if(!e){break w}j=D[h>>2];k=D[(h+16|0)+J(n,12)>>2];r=0;i=0;f=0;if(x>>>0>=3){while(1){l=i<<2;o=l+j|0;D[o>>2]=D[o>>2]+D[k+l>>2];o=l|4;s=o+j|0;D[s>>2]=D[s>>2]+D[k+o>>2];o=l|8;s=o+j|0;D[s>>2]=D[s>>2]+D[k+o>>2];l=l|12;o=l+j|0;D[o>>2]=D[o>>2]+D[k+l>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break w}while(1){f=i<<2;l=f+j|0;D[l>>2]=D[l>>2]+D[f+k>>2];i=i+1|0;r=r+1|0;if((C|0)!=(r|0)){continue}break}}n=n+1|0;if((n|0)!=(g|0)){continue}break}n=J(e,m);f=n;if(!d){break o}if(!e){break l}f=D[h>>2];i=0;g=0;if(x){break n}break m}f=J(e,m)}if(D[a+8>>2]<=0){break k}n=(J(m-1|0,e)<<2)+c|0;j=D[a+32>>2];i=0;while(1){d=i<<2;g=D[d+n>>2];k=D[a+16>>2];x:{if((g|0)>(k|0)){D[d+j>>2]=k;break x}d=d+j|0;k=D[a+12>>2];if((k|0)>(g|0)){D[d>>2]=k;break x}D[d>>2]=g}i=i+1|0;g=D[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=D[g+n>>2]+D[g+j>>2]|0;D[f>>2]=g;y:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break y}g=g+D[a+20>>2]|0}D[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}break k}ua();T()}while(1){j=i<<2;k=j+f|0;D[k>>2]=D[k>>2]/(d|0);j=f+(j|4)|0;D[j>>2]=D[j>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;D[f>>2]=D[f>>2]/(d|0)}if(D[a+8>>2]<=0){break k}j=D[a+32>>2];i=0;while(1){d=i<<2;f=D[d+v>>2];g=D[a+16>>2];z:{if((f|0)>(g|0)){D[d+j>>2]=g;break z}d=d+j|0;g=D[a+12>>2];if((g|0)>(f|0)){D[d>>2]=g;break z}D[d>>2]=f}i=i+1|0;f=D[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=n<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=D[g+n>>2]+D[g+j>>2]|0;D[f>>2]=g;A:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break A}g=g+D[a+20>>2]|0}D[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}p=1;m=m+1|0;if((F|0)!=(m|0)){continue}break}}a=D[h>>2];if(a){ma(a)}ma(w);a=D[h+52>>2];if(a){D[h+56>>2]=a;ma(a)}a=D[h+40>>2];if(a){D[h+44>>2]=a;ma(a)}a=D[h+28>>2];if(a){D[h+32>>2]=a;ma(a)}a=D[h+16>>2];if(a){D[h+20>>2]=a;ma(a)}$=h- -64|0;return p|0}qa();T()}function nb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:i=1;e:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=B[b|0];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(B[b|0])/K(127);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 1:i=1;f:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=E[b|0];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(E[b|0])/K(255);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 2:i=1;g:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=C[b>>1];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(C[b>>1])/K(32767);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 3:i=1;h:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=F[b>>1];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(F[b>>1])/K(65535);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 4:i=1;i:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=D[b>>2];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(D[b>>2])*K(4.656612873077393e-10);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 5:i=1;j:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=G[b>>2];f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(G[b>>2])*K(2.3283064365386963e-10);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 6:i=1;k:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=+G[b>>2]+ +D[b+4>>2]*4294967296;f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(+G[b>>2]+ +D[b+4>>2]*4294967296)*K(1.0842021724855044e-19);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 7:i=1;l:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}e=D[a>>2];h=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=b;b=h+b|0;g=D[e+4>>2];e=g-h|0;if(!E[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=+G[b>>2]+ +G[b+4>>2]*4294967296;f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){H[(f<<2)+d>>2]=K(+G[b>>2]+ +G[b+4>>2]*4294967296)*K(5.421010862427522e-20);f=f+1|0;e=B[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 8:i=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;g=D[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}H[(f<<2)+d>>2]=H[b>>2];b=b+4|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:i=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;g=D[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}H[(f<<2)+d>>2]=I[b>>3];b=b+8|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}i=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){g=D[a>>2];e=D[g>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=e+b|0;while(1){if(G[g+4>>2]<=b>>>0){break a}H[(f<<2)+d>>2]=E[b|0]?K(1):K(0);b=b+1|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<2)+d|0,0,c-e<<2)}return i}return 0}function kf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=$-16|0;$=m;D[m+12>>2]=b;b=na(32);D[m>>2]=b;D[m+4>>2]=24;D[m+8>>2]=-2147483616;B[b+24|0]=0;c=E[1308]|E[1309]<<8|(E[1310]<<16|E[1311]<<24);d=E[1304]|E[1305]<<8|(E[1306]<<16|E[1307]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1300]|E[1301]<<8|(E[1302]<<16|E[1303]<<24);d=E[1296]|E[1297]<<8|(E[1298]<<16|E[1299]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1292]|E[1293]<<8|(E[1294]<<16|E[1295]<<24);d=E[1288]|E[1289]<<8|(E[1290]<<16|E[1291]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;h=$-48|0;$=h;k=a;c=a+16|0;a=D[c>>2];a:{b:{if(!a){break b}d=D[m+12>>2];b=c;while(1){f=(d|0)>D[a+16>>2];b=f?b:a;a=D[(f<<2)+a>>2];if(a){continue}break}if((b|0)==(c|0)){break b}if((d|0)>=D[b+16>>2]){break a}}t=h+24|0;a=t;D[a+4>>2]=0;D[a+8>>2]=0;u=a+4|0;D[a>>2]=u;a=D[m+12>>2];d=h+16|0;D[d>>2]=0;D[d+4>>2]=0;D[h+8>>2]=a;D[h+12>>2]=d;b=D[t>>2];if((u|0)!=(b|0)){l=h+8|4;while(1){f=b;g=b+16|0;q=$-16|0;$=q;i=q+12|0;a=q+8|0;c:{d:{e:{f:{g:{h:{r=l+4|0;i:{if((r|0)==(d|0)){break i}b=E[d+27|0];e=b<<24>>24<0;n=E[g+11|0];v=n<<24>>24;j=(v|0)<0;b=e?D[d+20>>2]:b;n=j?D[g+4>>2]:n;o=b>>>0>>0;p=o?b:n;if(p){j=j?D[g>>2]:g;s=d+16|0;e=e?D[s>>2]:s;s=va(j,e,p);if(!s){if(b>>>0>n>>>0){break i}break h}if((s|0)>=0){break h}break i}if(b>>>0<=n>>>0){break g}}e=D[d>>2];j:{a=d;k:{if((a|0)==D[l>>2]){break k}l:{if(e){b=e;while(1){a=b;b=D[b+4>>2];if(b){continue}break}break l}a=d+8|0;if((d|0)==D[D[d+8>>2]>>2]){while(1){b=D[a>>2];a=b+8|0;if((b|0)==D[D[b+8>>2]>>2]){continue}break}}a=D[a>>2]}j=E[g+11|0];b=j<<24>>24<0;o=E[a+27|0];n=o<<24>>24<0;m:{j=b?D[g+4>>2]:j;o=n?D[a+20>>2]:o;p=j>>>0>>0?j:o;if(p){r=a+16|0;b=va(n?D[r>>2]:r,b?D[g>>2]:g,p);if(b){break m}}if(j>>>0>o>>>0){break k}break j}if((b|0)>=0){break j}}if(!e){D[i>>2]=d;a=d;break c}D[i>>2]=a;a=a+4|0;break c}a=Kd(l,i,g);break c}b=va(e,j,p);if(b){break f}}if(o){break e}break d}if((b|0)>=0){break d}}e=D[d+4>>2];n:{if(e){b=e;while(1){a=b;b=D[b>>2];if(b){continue}break}break n}a=D[d+8>>2];if((d|0)==D[a>>2]){break n}b=d+8|0;while(1){j=D[b>>2];b=j+8|0;a=D[j+8>>2];if((j|0)!=D[a>>2]){continue}break}}o:{p:{if((a|0)==(r|0)){break p}j=E[a+27|0];b=j<<24>>24<0;q:{j=b?D[a+20>>2]:j;o=j>>>0>>0?j:n;if(o){p=a+16|0;b=va((v|0)<0?D[g>>2]:g,b?D[p>>2]:p,o);if(b){break q}}if(j>>>0>n>>>0){break p}break o}if((b|0)>=0){break o}}if(!e){D[i>>2]=d;a=d+4|0;break c}D[i>>2]=a;break c}a=Kd(l,i,g);break c}D[i>>2]=d;D[a>>2]=d}b=a;a=D[b>>2];if(a){b=0}else{a=na(40);e=a+16|0;r:{if(B[g+11|0]>=0){i=D[g+4>>2];D[e>>2]=D[g>>2];D[e+4>>2]=i;D[e+8>>2]=D[g+8>>2];break r}ta(e,D[g>>2],D[g+4>>2])}e=a+28|0;s:{if(B[g+23|0]>=0){i=D[g+16>>2];D[e>>2]=D[g+12>>2];D[e+4>>2]=i;D[e+8>>2]=D[g+20>>2];break s}ta(e,D[g+12>>2],D[g+16>>2])}D[a+8>>2]=D[q+12>>2];D[a>>2]=0;D[a+4>>2]=0;D[b>>2]=a;e=D[D[l>>2]>>2];if(e){D[l>>2]=e;b=D[b>>2]}else{b=a}pb(D[l+4>>2],b);D[l+8>>2]=D[l+8>>2]+1;b=1}B[h+44|0]=b;D[h+40>>2]=a;$=q+16|0;a=D[f+4>>2];t:{if(!a){b=D[f+8>>2];if((f|0)==D[b>>2]){break t}a=f+8|0;while(1){f=D[a>>2];a=f+8|0;b=D[f+8>>2];if((f|0)!=D[b>>2]){continue}break}break t}while(1){b=a;a=D[b>>2];if(a){continue}break}}if((b|0)!=(u|0)){continue}break}}a=D[c>>2];u:{if(a){c=k+16|0;f=D[h+8>>2];while(1){b=D[a+16>>2];v:{if((b|0)>(f|0)){b=D[a>>2];if(b){break v}c=a;break u}if((b|0)>=(f|0)){break u}c=a+4|0;b=D[a+4>>2];if(!b){break u}a=c}c=a;a=b;continue}}a=c}b=D[c>>2];if(!b){b=na(32);D[b+16>>2]=D[h+8>>2];D[b+20>>2]=D[h+12>>2];f=b+24|0;e=D[h+16>>2];D[f>>2]=e;g=D[h+20>>2];D[b+28>>2]=g;w:{if(!g){D[b+20>>2]=f;break w}D[e+8>>2]=f;D[h+16>>2]=0;D[h+20>>2]=0;D[h+12>>2]=d}D[b+8>>2]=a;D[b>>2]=0;D[b+4>>2]=0;D[c>>2]=b;a=D[D[k+12>>2]>>2];if(a){D[k+12>>2]=a;a=D[c>>2]}else{a=b}pb(D[k+16>>2],a);D[k+20>>2]=D[k+20>>2]+1}ib(h+8|4,D[h+16>>2]);ib(t,D[t+4>>2])}$=h+48|0;k=$-48|0;$=k;d=$-32|0;$=d;a=d+21|0;g=d+32|0;c=g;x:{if((a|0)==(c|0)){break x}}f=c-a|0;y:{if(!((f|0)<=9&(f|0)<(1-(G[2744]>1)|0))){B[a|0]=49;D[d+8>>2]=a+1;c=0;break y}D[d+8>>2]=c;c=61}D[d+12>>2]=c;h=$-16|0;$=h;c=k+8|0;e=$-16|0;$=e;z:{l=D[d+8>>2];f=l-a|0;if(f>>>0<=4294967279){A:{if(f>>>0<=10){B[c+11|0]=f;d=c;break A}if(f>>>0>=11){i=f+16&-16;d=i-1|0;d=(d|0)==11?i:d}else{d=10}i=d+1|0;d=na(i);D[c>>2]=d;D[c+8>>2]=i|-2147483648;D[c+4>>2]=f}while(1){if((a|0)!=(l|0)){B[d|0]=E[a|0];d=d+1|0;a=a+1|0;continue}break}B[e+15|0]=0;B[d|0]=E[e+15|0];$=e+16|0;break z}Aa();T()}$=h+16|0;$=g;D[k+32>>2]=m;d=b+20|0;a=D[d+4>>2];B:{C:{if(a){b=E[m+11|0];c=b<<24>>24<0;e=c?D[m>>2]:m;f=c?D[m+4>>2]:b;b=d+4|0;while(1){c=E[a+27|0];g=c<<24>>24<0;c=g?D[a+20>>2]:c;h=c>>>0>>0;D:{E:{F:{G:{H:{l=h?c:f;I:{if(l){i=a+16|0;g=g?D[i>>2]:i;i=va(e,g,l);if(!i){if(c>>>0>f>>>0){break I}break H}if((i|0)>=0){break H}break I}if(c>>>0<=f>>>0){break G}}c=D[a>>2];if(c){break D}break C}c=va(g,e,l);if(c){break F}}if(h){break E}break B}if((c|0)>=0){break B}}b=a+4|0;c=D[a+4>>2];if(!c){break B}a=b}b=a;a=c;continue}}a=d+4|0}b=a}c=D[b>>2];if(c){a=0}else{c=na(40);e=c+16|0;f=D[k+32>>2];J:{if(B[f+11|0]>=0){g=D[f+4>>2];D[e>>2]=D[f>>2];D[e+4>>2]=g;D[e+8>>2]=D[f+8>>2];break J}ta(e,D[f>>2],D[f+4>>2])}D[c+8>>2]=a;D[c>>2]=0;D[c+4>>2]=0;D[c+36>>2]=0;D[c+28>>2]=0;D[c+32>>2]=0;D[b>>2]=c;a=D[D[d>>2]>>2];if(a){D[d>>2]=a;a=D[b>>2]}else{a=c}pb(D[d+4>>2],a);D[d+8>>2]=D[d+8>>2]+1;a=1}B[k+44|0]=a;D[k+40>>2]=c;a=D[k+40>>2];if(B[a+39|0]<0){ma(D[a+28>>2])}b=D[k+12>>2];D[a+28>>2]=D[k+8>>2];D[a+32>>2]=b;D[a+36>>2]=D[k+16>>2];$=k+48|0;if(B[m+11|0]<0){ma(D[m>>2])}$=m+16|0}function Uh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0;h=$+-64|0;$=h;D[a+8>>2]=e;f=a+32|0;g=D[f>>2];d=D[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){sa(f,e-d|0);D[h+56>>2]=0;D[h+60>>2]=0;D[h+48>>2]=0;D[h+52>>2]=0;D[h+40>>2]=0;D[h+44>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;D[h+24>>2]=0;D[h+28>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;D[h>>2]=0;break b}if(d>>>0>e>>>0){D[a+36>>2]=g+(e<<2)}D[h+56>>2]=0;D[h+60>>2]=0;D[h+48>>2]=0;D[h+52>>2]=0;D[h+40>>2]=0;D[h+44>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;D[h+24>>2]=0;D[h+28>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;D[h>>2]=0;d=0;if(!e){break a}}xa(h+16|0,e,h);i=D[h+28>>2];d=D[h+32>>2]}D[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}D[h+32>>2]=(e<<2)+i;break c}xa(h+16|12,e-d|0,h)}D[h>>2]=0;f=D[h+40>>2];d=D[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}D[h+44>>2]=f+(e<<2);break d}xa(h+40|0,e-d|0,h)}D[h>>2]=0;f=D[h+52>>2];d=D[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}D[h+56>>2]=f+(e<<2);break e}xa(h+52|0,e-d|0,h)}i=0;f:{if(D[a+8>>2]<=0){break f}k=D[a+32>>2];g=D[h+16>>2];while(1){d=i<<2;f=D[d+g>>2];n=D[a+16>>2];g:{if((f|0)>(n|0)){D[d+k>>2]=n;break g}d=d+k|0;n=D[a+12>>2];if((n|0)>(f|0)){D[d>>2]=n;break g}D[d>>2]=f}i=i+1|0;d=D[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=D[b+g>>2]+D[g+k>>2]|0;D[f>>2]=g;h:{if((g|0)>D[a+16>>2]){j=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break h}j=g+D[a+20>>2]|0}D[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}E=D[a+52>>2];y=D[a+48>>2];v=na(16);d=v;D[d>>2]=0;D[d+4>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;u=na(d);D[h>>2]=u;D[h+8>>2]=d+u;pa(u,0,d)}r=1;d=D[a+56>>2];z=D[d>>2];d=D[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;F=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;w=e-1|0;I=e<<2;n=1;while(1){k:{l:{m:{n:{if((n|0)!=(G|0)){f=D[(n<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}k=0;g=f+2|0;x=(d|0)!=0|(g|0)!=-1;s=D[y+12>>2];q=s+((d?f-1|0:g)<<2)|0;o=1;d=f;q:{while(1){g=D[s+(d<<2)>>2];r:{if((g|0)==-1){break r}l=-1;r=D[E>>2];m=D[y>>2];i=r+(D[m+(g<<2)>>2]<<2)|0;p=g+1|0;p=(p>>>0)%3|0?p:g-2|0;if((p|0)!=-1){l=D[m+(p<<2)>>2]}p=D[i>>2];s:{t:{if((g>>>0)%3|0){i=g-1|0;break t}i=g+2|0;j=-1;if((i|0)==-1){break s}}j=D[m+(i<<2)>>2]}if((n|0)<=(p|0)){break r}i=D[r+(l<<2)>>2];if((i|0)>=(n|0)){break r}l=D[r+(j<<2)>>2];if((l|0)>=(n|0)){break r}g=D[(h+16|0)+J(k,12)>>2];u:{if(!e){break u}l=J(e,l);m=J(e,i);r=J(e,p);i=0;j=0;if(w){while(1){D[g+(i<<2)>>2]=(D[(i+l<<2)+c>>2]+D[(i+m<<2)+c>>2]|0)-D[(i+r<<2)+c>>2];p=i|1;D[g+(p<<2)>>2]=(D[(l+p<<2)+c>>2]+D[(m+p<<2)+c>>2]|0)-D[(p+r<<2)+c>>2];i=i+2|0;j=j+2|0;if((A|0)!=(j|0)){continue}break}}if(!B){break u}D[g+(i<<2)>>2]=(D[(i+l<<2)+c>>2]+D[(i+m<<2)+c>>2]|0)-D[(i+r<<2)+c>>2]}g=4;k=k+1|0;if((k|0)==4){break q}}v:{if(o&1){i=d+1|0;d=(i>>>0)%3|0?i:d-2|0;j=-1;if((d|0)==-1){break v}d=D[s+(d<<2)>>2];j=-1;if((d|0)==-1){break v}g=d+1|0;j=(g>>>0)%3|0?g:d-2|0;break v}w:{if((d>>>0)%3|0){i=d-1|0;break w}i=d+2|0;j=-1;if((i|0)==-1){break v}}d=D[s+(i<<2)>>2];j=-1;if((d|0)==-1){break v}j=d-1|0;if((d>>>0)%3|0){break v}j=d+2|0}d=j;x:{if((f|0)==(d|0)){break x}if(!((o^1)&1|(d|0)!=-1)){if(!x){break x}d=D[q>>2];if((d|0)==-1){break x}o=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=k;if((g|0)<=0){break p}}if(e){pa(D[h>>2],0,I)}d=g-1|0;p=(d<<2)+v|0;d=J(d,12)+a|0;j=d;x=D[d- -64>>2];r=0;o=0;d=0;while(1){f=D[p>>2];D[p>>2]=f+1;if(f>>>0>=x>>>0){break j}y:{if(D[D[j+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break y}d=d+1|0;if(!e){break y}k=D[h>>2];s=D[(h+16|0)+J(o,12)>>2];l=0;i=0;f=0;if(w>>>0>=3){while(1){m=i<<2;q=m+k|0;D[q>>2]=D[q>>2]+D[m+s>>2];q=m|4;t=q+k|0;D[t>>2]=D[t>>2]+D[s+q>>2];q=m|8;t=q+k|0;D[t>>2]=D[t>>2]+D[s+q>>2];m=m|12;q=m+k|0;D[q>>2]=D[q>>2]+D[m+s>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break y}while(1){f=i<<2;m=f+k|0;D[m>>2]=D[m>>2]+D[f+s>>2];i=i+1|0;l=l+1|0;if((C|0)!=(l|0)){continue}break}}o=o+1|0;if((o|0)!=(g|0)){continue}break}o=J(e,n);f=o;if(!d){break o}if(!e){break l}f=D[h>>2];i=0;g=0;if(w){break n}break m}f=J(e,n)}if(D[a+8>>2]<=0){break k}o=(J(n-1|0,e)<<2)+c|0;k=D[a+32>>2];i=0;while(1){d=i<<2;g=D[d+o>>2];l=D[a+16>>2];z:{if((g|0)>(l|0)){D[d+k>>2]=l;break z}d=d+k|0;l=D[a+12>>2];if((l|0)>(g|0)){D[d>>2]=l;break z}D[d>>2]=g}i=i+1|0;g=D[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=D[g+o>>2]+D[g+k>>2]|0;D[f>>2]=g;A:{if((g|0)>D[a+16>>2]){j=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break A}j=g+D[a+20>>2]|0}D[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}break k}ua();T()}while(1){k=i<<2;l=k+f|0;D[l>>2]=D[l>>2]/(d|0);k=f+(k|4)|0;D[k>>2]=D[k>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;D[f>>2]=D[f>>2]/(d|0)}if(D[a+8>>2]<=0){break k}k=D[a+32>>2];i=0;while(1){d=i<<2;f=D[d+u>>2];g=D[a+16>>2];B:{if((f|0)>(g|0)){D[d+k>>2]=g;break B}d=d+k|0;g=D[a+12>>2];if((g|0)>(f|0)){D[d>>2]=g;break B}D[d>>2]=f}i=i+1|0;f=D[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=o<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=D[g+o>>2]+D[g+k>>2]|0;D[f>>2]=g;C:{if((g|0)>D[a+16>>2]){j=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break C}j=g+D[a+20>>2]|0}D[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}r=1;n=n+1|0;if((F|0)!=(n|0)){continue}break}}a=D[h>>2];if(a){ma(a)}ma(v);a=D[h+52>>2];if(a){D[h+56>>2]=a;ma(a)}a=D[h+40>>2];if(a){D[h+44>>2]=a;ma(a)}a=D[h+28>>2];if(a){D[h+32>>2]=a;ma(a)}a=D[h+16>>2];if(a){D[h+20>>2]=a;ma(a)}$=h- -64|0;return r|0}qa();T()}function ge(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=a;a:{b:{c:{d:{e:{f:{g:{h:{k=D[a+8>>2];switch(D[k+28>>2]-1|0){case 4:break c;case 5:break d;case 2:break e;case 3:break f;case 0:break g;case 1:break h;default:break a}}c=B[k+24|0];d=na((c|0)>=0?c:-1);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;B[a+d|0]=D[j>>2];B[(a|1)+d|0]=D[j+4>>2];B[(a|2)+d|0]=D[j+8>>2];B[(a|3)+d|0]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){B[a+d|0]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}c=B[k+24|0];d=na((c|0)>=0?c:-1);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;B[a+d|0]=D[j>>2];B[(a|1)+d|0]=D[j+4>>2];B[(a|2)+d|0]=D[j+8>>2];B[(a|3)+d|0]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){B[a+d|0]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=B[k+24|0];a=e+e|0;d=na(a>>>0>>0?-1:a);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;C[l+d>>1]=D[j>>2];C[(l|2)+d>>1]=D[j+4>>2];C[(l|4)+d>>1]=D[j+8>>2];C[(l|6)+d>>1]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){C[(a<<1)+d>>1]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=B[k+24|0];a=e+e|0;d=na(a>>>0>>0?-1:a);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;C[l+d>>1]=D[j>>2];C[(l|2)+d>>1]=D[j+4>>2];C[(l|4)+d>>1]=D[j+8>>2];C[(l|6)+d>>1]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){C[(a<<1)+d>>1]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=B[k+24|0];c=e<<2;d=na((e|0)!=(e&1073741823)?-1:c);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;D[l+d>>2]=D[j>>2];D[(l|4)+d>>2]=D[j+4>>2];D[(l|8)+d>>2]=D[j+8>>2];D[(l|12)+d>>2]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[(a<<2)+d>>2]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=B[k+24|0];c=e<<2;d=na((e|0)!=(e&1073741823)?-1:c);a=D[i+16>>2];if(D[a+80>>2]){h=D[D[a>>2]>>2]+D[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;D[l+d>>2]=D[j>>2];D[(l|4)+d>>2]=D[j+4>>2];D[(l|8)+d>>2]=D[j+8>>2];D[(l|12)+d>>2]=D[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[(a<<2)+d>>2]=D[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}oa(D[D[D[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}oa(D[D[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;oa(a+D[D[D[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}oa(D[D[D[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c)}ma(d);d=1}return d|0}function Cd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=$-96|0;$=h;r=D[a+4>>2];d=D[r+32>>2];e=D[d+8>>2];n=D[d+12>>2];f=n;c=D[d+20>>2];p=D[d+16>>2];a:{if((f|0)<=(c|0)&p>>>0>=e>>>0|(c|0)>(f|0)){break a}k=D[d>>2];q=E[k+p|0];g=p+1|0;f=g?c:c+1|0;D[d+16>>2]=g;D[d+20>>2]=f;if(e>>>0<=g>>>0&(f|0)>=(n|0)|(f|0)>(n|0)){break a}l=E[g+k|0];g=p+2|0;f=g>>>0<2?c+1|0:c;m=g;D[d+16>>2]=g;D[d+20>>2]=f;i=q<<24>>24;b:{if((i|0)>=0){g=D[a+216>>2];if(q>>>0>=(D[a+220>>2]-g|0)/144>>>0){break a}o=g+J(q,144)|0;if(D[o>>2]<0){break b}break a}if(D[a+212>>2]>=0){break a}o=a+212|0}D[o>>2]=b;c:{d:{g=F[r+36>>1];e:{if(((g<<8|g>>>8)&65535)>>>0>=258){if(e>>>0<=m>>>0&(f|0)>=(n|0)|(f|0)>(n|0)){break a}g=E[k+m|0];f=p+3|0;c=f>>>0<3?c+1|0:c;D[d+16>>2]=f;D[d+20>>2]=c;c=g>>>0>1;if(c){break a}c=c?0:g;if(!l){break e}if(c){break a}break d}if(l){break d}c=0}if((i|0)<0){f=a+184|0}else{d=D[a+216>>2]+J(q,144)|0;B[d+100|0]=0;f=d+104|0}d=f;f:{if((c|0)==1){e=$-112|0;$=e;m=D[D[a+4>>2]+44>>2];c=na(120);D[c>>2]=8956;D[c+4>>2]=0;D[c+116>>2]=0;D[c+112>>2]=d;D[c+108>>2]=m;D[c+12>>2]=0;D[c+16>>2]=0;D[c+20>>2]=0;D[c+24>>2]=0;D[c+28>>2]=0;D[c+32>>2]=0;D[c+36>>2]=0;D[c+40>>2]=0;D[c+44>>2]=0;D[c+48>>2]=0;D[c+52>>2]=0;D[c+56>>2]=0;D[c+60>>2]=0;D[c+8>>2]=9168;f=c- -64|0;D[f>>2]=0;D[f+4>>2]=0;D[c+72>>2]=0;D[c+76>>2]=0;D[c+80>>2]=0;D[c+84>>2]=0;D[c+88>>2]=0;D[c+104>>2]=0;D[c+96>>2]=0;D[c+100>>2]=0;l=D[a+8>>2];D[e+48>>2]=0;D[e+52>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;i=e+32|0;f=i;D[f>>2]=0;D[f+4>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;f=e- -64|0;D[f>>2]=0;D[f+4>>2]=0;D[e+72>>2]=0;D[e+76>>2]=0;D[e+80>>2]=0;D[e+84>>2]=0;D[e+88>>2]=0;D[e+104>>2]=0;D[e+56>>2]=0;D[e+60>>2]=0;D[e+8>>2]=9168;D[e+96>>2]=0;D[e+100>>2]=0;D[e+12>>2]=l;g=D[l>>2];f=D[l+4>>2];B[e+111|0]=0;n=i;i=e+111|0;Ea(n,(f-g>>2>>>0)/3|0,i);f=D[e+12>>2];g=D[f+28>>2];f=D[f+24>>2];B[e+111|0]=0;Ea(e+44|0,g-f>>2,i);D[e+28>>2]=c;D[e+24>>2]=m;D[e+20>>2]=d;D[e+16>>2]=l;d=c+8|0;f=e+8|0;jc(d,f);g:{if((d|0)==(f|0)){D[c+92>>2]=D[f+84>>2];break g}hb(c+56|0,D[f+48>>2],D[f+52>>2]);hb(c+68|0,D[f+60>>2],D[f- -64>>2]);hb(c+80|0,D[f+72>>2],D[f+76>>2]);D[c+92>>2]=D[f+84>>2];h:{i=D[f+92>>2];l=D[f+88>>2];g=i-l|0;m=g>>2;o=D[c+104>>2];k=D[c+96>>2];if(m>>>0<=o-k>>2>>>0){d=D[c+100>>2]-k|0;f=d>>2;g=f>>>0>>0?d+l|0:i;d=g-l|0;if(d){Pa(k,l,d)}if(f>>>0>>0){d=D[c+100>>2];f=i-g|0;if((f|0)>0){d=oa(d,g,f)+f|0}D[c+100>>2]=d;break h}D[c+100>>2]=d+k;break h}if(k){D[c+100>>2]=k;ma(k);D[c+104>>2]=0;D[c+96>>2]=0;D[c+100>>2]=0;o=0}i:{if((g|0)<0){break i}d=o>>1;d=o>>>0<2147483644?d>>>0>>0?m:d:1073741823;if(d>>>0>=1073741824){break i}f=d<<2;d=na(f);D[c+96>>2]=d;D[c+100>>2]=d;D[c+104>>2]=d+f;if(g){d=oa(d,l,g)+g|0}D[c+100>>2]=d;break h}qa();T()}}D[e+8>>2]=9168;d=D[e+96>>2];if(d){D[e+100>>2]=d;ma(d)}d=D[e+80>>2];if(d){D[e+84>>2]=d;ma(d)}d=D[e+68>>2];if(d){D[e+72>>2]=d;ma(d)}d=D[e+56>>2];if(d){D[e+60>>2]=d;ma(d)}D[e+8>>2]=9404;d=D[e+44>>2];if(d){ma(d)}d=D[e+32>>2];if(d){ma(d)}$=e+112|0;break f}e=$+-64|0;$=e;l=D[D[a+4>>2]+44>>2];c=na(80);D[c>>2]=9424;D[c+4>>2]=0;D[c+76>>2]=0;D[c+72>>2]=d;D[c+68>>2]=l;D[c+8>>2]=9588;D[c+12>>2]=0;D[c+16>>2]=0;D[c+20>>2]=0;D[c+24>>2]=0;D[c+28>>2]=0;D[c+32>>2]=0;D[c+36>>2]=0;D[c+40>>2]=0;D[c+44>>2]=0;D[c+48>>2]=0;D[c+52>>2]=0;D[c- -64>>2]=0;m=c+56|0;f=m;D[f>>2]=0;D[f+4>>2]=0;k=D[a+8>>2];D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;i=e+24|0;f=i;D[f>>2]=0;D[f+4>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e+56>>2]=0;D[e+48>>2]=0;D[e+52>>2]=0;D[e>>2]=9588;D[e+4>>2]=k;g=D[k>>2];f=D[k+4>>2];B[e+63|0]=0;n=i;i=e+63|0;Ea(n,(f-g>>2>>>0)/3|0,i);f=D[e+4>>2];g=D[f+28>>2];f=D[f+24>>2];B[e+63|0]=0;Ea(e+36|0,g-f>>2,i);D[e+20>>2]=c;D[e+16>>2]=l;D[e+12>>2]=d;D[e+8>>2]=k;jc(c+8|0,e);hb(m,D[e+48>>2],D[e+52>>2]);D[e>>2]=9588;d=D[e+48>>2];if(d){D[e+52>>2]=d;ma(d)}D[e>>2]=9404;d=D[e+36>>2];if(d){ma(d)}d=D[e+24>>2];if(d){ma(d)}$=e- -64|0}if(!c){break a}break c}if((i|0)<0){break a}g=D[r+44>>2];d=D[a+216>>2];c=na(80);D[c+76>>2]=0;D[c+68>>2]=g;D[c+8>>2]=8652;D[c>>2]=9716;D[c+4>>2]=0;f=d+J(q,144)|0;j=f+104|0;D[c+72>>2]=j;D[c- -64>>2]=0;D[c+56>>2]=0;D[c+60>>2]=0;D[c+52>>2]=0;D[c+44>>2]=0;D[c+48>>2]=0;D[c+36>>2]=0;D[c+40>>2]=0;D[c+28>>2]=0;D[c+32>>2]=0;D[c+20>>2]=0;D[c+24>>2]=0;D[c+12>>2]=0;D[c+16>>2]=0;D[h+24>>2]=g;D[h+68>>2]=0;D[h+72>>2]=0;D[h+60>>2]=0;D[h+64>>2]=0;D[h+52>>2]=0;D[h+56>>2]=0;D[h+44>>2]=0;D[h+48>>2]=0;D[h+84>>2]=0;D[h+88>>2]=0;D[h+76>>2]=0;D[h+80>>2]=0;D[h+28>>2]=c;d=D[h+28>>2];D[h+8>>2]=D[h+24>>2];D[h+12>>2]=d;f=f+4|0;D[h+16>>2]=f;D[h+20>>2]=j;D[h+36>>2]=0;D[h+40>>2]=0;D[h+32>>2]=8652;d=D[h+20>>2];D[h>>2]=D[h+16>>2];D[h+4>>2]=d;j=h+32|0;Bd(j,f,h);d=c+8|0;jc(d,j);if((d|0)!=(j|0)){hb(c+56|0,D[j+48>>2],D[j+52>>2])}Ad(j)}c=xc(na(64),c);i=D[a+4>>2];a=c;c=b;j:{k:{if((c|0)>=0){f=i+8|0;b=D[i+12>>2];d=D[i+8>>2];g=b-d>>2;l:{if((g|0)>(c|0)){break l}j=c+1|0;if(c>>>0>=g>>>0){Qb(f,j-g|0);break l}if(g>>>0<=j>>>0){break l}d=d+(j<<2)|0;if((d|0)!=(b|0)){while(1){b=b-4|0;j=D[b>>2];D[b>>2]=0;if(j){ba[D[D[j>>2]+4>>2]](j)}if((b|0)!=(d|0)){continue}break}}D[i+12>>2]=d}d=D[f>>2]+(c<<2)|0;b=D[d>>2];D[d>>2]=a;if(b){break k}break j}b=a;if(!a){break j}}ba[D[D[b>>2]+4>>2]](b)}j=(c^-1)>>>31|0}$=h+96|0;return j|0}function Yd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,U=0,V=0,W=0,X=0;if((e|0)==2){D[a+8>>2]=2;D[a- -64>>2]=f;e=a+32|0;f=D[e>>2];d=D[a+36>>2]-f|0;a:{if(d>>>0<=7){sa(e,2-(d>>>2|0)|0);break a}if((d|0)==8){break a}D[a+36>>2]=f+8}b:{d=D[a+56>>2];e=D[d+4>>2];d=D[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;J=f>>2;U=(J|0)>1?J:1;f=1;while(1){j=$-80|0;$=j;e=-1;d=D[(q<<2)+d>>2];g=-1;c:{if((d|0)==-1){break c}e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;g=d-1|0;if((d>>>0)%3|0){break c}g=d+2|0}i=D[m+36>>2];d=D[i>>2];d:{e:{f:{g:{h:{i=D[i+4>>2]-d>>2;h=e<<2;e=D[D[m+32>>2]+28>>2];k=D[h+e>>2];if(i>>>0<=k>>>0){break h}e=D[e+(g<<2)>>2];if(e>>>0>=i>>>0){break h}i:{j:{g=D[d+(e<<2)>>2];i=D[d+(k<<2)>>2];if((g|0)>=(q|0)|(i|0)>=(q|0)){break j}d=(g<<3)+c|0;v=D[d+4>>2];e=(i<<3)+c|0;s=D[e+4>>2];x=D[d>>2];F=D[e>>2];if(!((x|0)!=(F|0)|(s|0)!=(v|0))){D[m+8>>2]=F;D[m+12>>2]=s;break i}d=D[D[m+4>>2]+(q<<2)>>2];D[j+72>>2]=0;D[j+76>>2]=0;e=j- -64|0;D[e>>2]=0;D[e+4>>2]=0;D[j+56>>2]=0;D[j+60>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Ha(e,d,B[e+24|0],j+56|0);d=D[D[m+4>>2]+(i<<2)>>2];D[j+48>>2]=0;D[j+52>>2]=0;D[j+40>>2]=0;D[j+44>>2]=0;D[j+32>>2]=0;D[j+36>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Ha(e,d,B[e+24|0],j+32|0);d=D[D[m+4>>2]+(g<<2)>>2];D[j+24>>2]=0;D[j+28>>2]=0;D[j+16>>2]=0;D[j+20>>2]=0;D[j+8>>2]=0;D[j+12>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Ha(e,d,B[e+24|0],j+8|0);K=D[j+44>>2];d=D[j+16>>2];G=D[j+40>>2];e=G;k=D[j+20>>2]-(K+(d>>>0>>0)|0)|0;o=d-e|0;d=ai(o,k,o,k);e=aa;n=d;L=D[j+36>>2];d=D[j+8>>2];H=D[j+32>>2];g=H;h=D[j+12>>2]-(L+(d>>>0>>0)|0)|0;t=d-g|0;g=ai(t,h,t,h);d=n+g|0;e=aa+e|0;e=d>>>0>>0?e+1|0:e;n=d;M=D[j+52>>2];d=D[j+24>>2];I=D[j+48>>2];g=I;l=D[j+28>>2]-(M+(d>>>0>>0)|0)|0;p=d-g|0;r=ai(p,l,p,l);d=n+r|0;g=aa+e|0;u=d;r=d>>>0>>0?g+1|0:g;if(!(d|r)){break j}n=D[j+64>>2];d=n;O=D[j+68>>2];d=ai(d-G|0,O-((d>>>0>>0)+K|0)|0,o,k);e=aa;g=d;P=D[j+56>>2];d=P;Q=D[j+60>>2];i=ai(d-H|0,Q-((d>>>0>>0)+L|0)|0,t,h);d=g+i|0;g=aa+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=D[j+72>>2];d=R;S=D[j+76>>2];i=ai(d-I|0,S-((d>>>0>>0)+M|0)|0,p,l);d=e+i|0;e=aa+g|0;y=d;w=d>>>0>>0?e+1|0:e;d=l>>31;e=d+p|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;e=e^d;d=d^g;i=d;d=k>>31;z=d+o|0;g=d+k|0;A=d^z;d=d^(d>>>0>z>>>0?g+1|0:g);z=d;N=0;d=h>>31;C=d+t|0;g=d+h|0;g=C>>>0>>0?g+1|0:g;V=e;C=C^d;d=d^g;g=(z|0)==(d|0)&A>>>0>C>>>0|d>>>0>>0;A=g?A:C;d=g?z:d;e=(i|0)==(d|0)&e>>>0>A>>>0|d>>>0>>0;e=ci(-1,2147483647,e?V:A,e?i:d)>>>0>>0;d=aa;if(e&(d|0)<=(w|0)|(d|0)<(w|0)){break d}i=1;d=0;e=n;o=bi(ai(o,k,y,w),aa,u,r);k=o+G|0;g=aa+K|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=ai(e,g,e,g);o=aa;e=P;n=g;h=bi(ai(t,h,y,w),aa,u,r);k=h+H|0;g=aa+L|0;g=h>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=ai(e,g,e,g);g=n+k|0;e=aa+o|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;n=g;l=bi(ai(p,l,y,w),aa,u,r);h=l+I|0;g=aa+M|0;g=h>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-h|0;h=ai(e,g,e,g);e=n+h|0;g=aa+k|0;k=ai(e,e>>>0>>0?g+1|0:g,u,r);e=aa;h=e;if(!e&k>>>0<=1){break g}l=k;e=h;while(1){g=d<<1|i>>>31;i=i<<1;d=g;o=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(o){continue}break}break f}if((i|0)<(q|0)){d=i<<1}else{if((q|0)<=0){D[m+8>>2]=0;D[m+12>>2]=0;break i}d=(q<<1)-2|0}d=(d<<2)+c|0;D[m+8>>2]=D[d>>2];D[m+12>>2]=D[d+4>>2]}N=1;break d}ua();T()}d=h;i=k;if(i-1|0){break e}}while(1){e=ci(k,h,i,d)+i|0;g=d+aa|0;g=e>>>0>>0?g+1|0:g;i=(g&1)<<31|e>>>1;d=g>>>1|0;e=ai(i,d,i,d);g=aa;if((h|0)==(g|0)&e>>>0>k>>>0|g>>>0>h>>>0){continue}break}}k=D[m+20>>2];if(k){e=k-1|0;l=D[D[m+16>>2]+(e>>>3&536870908)>>2];D[m+20>>2]=e;g=s;o=v-g|0;h=g>>31;t=(v>>31)-(h+(g>>>0>v>>>0)|0)|0;g=ai(y,w,o,t);p=aa;s=ai(s,h,u,r);h=s+g|0;g=aa+p|0;g=h>>>0>>0?g+1|0:g;n=h;h=F;p=x-h|0;s=h>>31;v=(x>>31)-(s+(h>>>0>x>>>0)|0)|0;h=ai(i,d,p,v);x=h;e=l>>>e&1;l=e?0-h|0:h;h=n+l|0;n=g;g=aa;g=n+(e?0-(g+((x|0)!=0)|0)|0:g)|0;W=m,X=bi(h,h>>>0>>0?g+1|0:g,u,r),D[W+12>>2]=X;g=ai(p,v,y,w);l=aa;p=ai(u,r,F,s);h=p+g|0;g=aa+l|0;g=h>>>0

>>0?g+1|0:g;n=h;d=ai(i,d,o,t);h=e?d:0-d|0;i=n+h|0;n=g;g=aa;e=n+(e?g:0-(((d|0)!=0)+g|0)|0)|0;W=m,X=bi(i,i>>>0>>0?e+1|0:e,u,r),D[W+8>>2]=X}N=(k|0)!=0}$=j+80|0;if(!N){break b}k:{if(D[a+8>>2]<=0){break k}g=D[a+32>>2];d=0;while(1){e=d<<2;f=D[(e+a|0)+68>>2];i=D[a+16>>2];l:{if((f|0)>(i|0)){D[e+g>>2]=i;break l}e=e+g|0;i=D[a+12>>2];if((i|0)>(f|0)){D[e>>2]=i;break l}D[e>>2]=f}d=d+1|0;f=D[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=q<<3;i=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+i|0;f=D[f+k>>2]+D[f+g>>2]|0;D[d>>2]=f;m:{if((f|0)>D[a+16>>2]){f=f-D[a+20>>2]|0}else{if((f|0)>=D[a+12>>2]){break m}f=f+D[a+20>>2]|0}D[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}q=q+1|0;f=(J|0)>(q|0);if((q|0)==(U|0)){break b}e=D[a+56>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>q>>>0){continue}break}}ua();T()}a=f^1}else{a=0}return a&1}function Rh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,U=0,V=0,W=0;if((e|0)==2){D[a+8>>2]=2;D[a- -64>>2]=f;e=a+32|0;f=D[e>>2];d=D[a+36>>2]-f|0;a:{if(d>>>0<=7){sa(e,2-(d>>>2|0)|0);break a}if((d|0)==8){break a}D[a+36>>2]=f+8}b:{d=D[a+56>>2];e=D[d+4>>2];d=D[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;I=f>>2;U=(I|0)>1?I:1;f=1;while(1){i=$-80|0;$=i;e=-1;c:{d:{g=D[(p<<2)+d>>2];if((g|0)==-1){break d}h=D[m+32>>2];d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)!=-1){e=D[D[h>>2]+(d<<2)>>2]}d=-1;g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){d=D[D[h>>2]+(g<<2)>>2]}h=D[m+36>>2];g=D[h>>2];h=D[h+4>>2]-g>>2;if(h>>>0<=e>>>0|d>>>0>=h>>>0){break d}h=D[g+(e<<2)>>2];e:{f:{g:{h:{i:{j:{g=D[g+(d<<2)>>2];if((g|0)>=(p|0)|(h|0)>=(p|0)){break j}d=(g<<3)+c|0;w=D[d+4>>2];e=(h<<3)+c|0;r=D[e+4>>2];t=D[d>>2];F=D[e>>2];if(!((t|0)!=(F|0)|(r|0)!=(w|0))){D[m+8>>2]=F;D[m+12>>2]=r;break i}d=D[D[m+4>>2]+(p<<2)>>2];D[i+72>>2]=0;D[i+76>>2]=0;e=i- -64|0;D[e>>2]=0;D[e+4>>2]=0;D[i+56>>2]=0;D[i+60>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Ha(e,d,B[e+24|0],i+56|0);d=D[D[m+4>>2]+(h<<2)>>2];D[i+48>>2]=0;D[i+52>>2]=0;D[i+40>>2]=0;D[i+44>>2]=0;D[i+32>>2]=0;D[i+36>>2]=0;e=D[m>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}Ha(e,d,B[e+24|0],i+32|0);e=D[D[m+4>>2]+(g<<2)>>2];D[i+24>>2]=0;D[i+28>>2]=0;D[i+16>>2]=0;D[i+20>>2]=0;D[i+8>>2]=0;D[i+12>>2]=0;d=D[m>>2];if(!E[d+84|0]){e=D[D[d+68>>2]+(e<<2)>>2]}Ha(d,e,B[d+24|0],i+8|0);J=D[i+44>>2];d=D[i+16>>2];x=D[i+40>>2];e=x;k=D[i+20>>2]-(J+(d>>>0>>0)|0)|0;n=d-e|0;d=ai(n,k,n,k);e=aa;o=d;K=D[i+36>>2];d=D[i+8>>2];G=D[i+32>>2];g=G;j=D[i+12>>2]-(K+(d>>>0>>0)|0)|0;u=d-g|0;g=ai(u,j,u,j);d=o+g|0;e=aa+e|0;e=d>>>0>>0?e+1|0:e;o=d;L=D[i+52>>2];d=D[i+24>>2];H=D[i+48>>2];g=H;l=D[i+28>>2]-(L+(d>>>0>>0)|0)|0;s=d-g|0;q=ai(s,l,s,l);d=o+q|0;g=aa+e|0;v=d;q=d>>>0>>0?g+1|0:g;if(!(d|q)){break j}N=D[i+64>>2];d=N;O=D[i+68>>2];d=ai(d-x|0,O-((d>>>0>>0)+J|0)|0,n,k);e=aa;g=d;P=D[i+56>>2];d=P;Q=D[i+60>>2];h=ai(d-G|0,Q-((d>>>0>>0)+K|0)|0,u,j);d=g+h|0;g=aa+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=D[i+72>>2];d=R;S=D[i+76>>2];h=ai(d-H|0,S-((d>>>0>>0)+L|0)|0,s,l);d=e+h|0;e=aa+g|0;z=d;y=d>>>0>>0?e+1|0:e;d=l>>31;e=d+s|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;h=e^d;d=d^g;M=d;d=k>>31;g=d+n|0;e=d+k|0;A=g^d;d=d^(g>>>0>>0?e+1|0:e);o=d;e=0;d=j>>31;C=d+u|0;g=d+j|0;g=C>>>0>>0?g+1|0:g;C=C^d;d=d^g;g=(o|0)==(d|0)&A>>>0>C>>>0|d>>>0>>0;A=g?A:C;d=g?o:d;g=(M|0)==(d|0)&h>>>0>A>>>0|d>>>0>>0;g=ci(-1,2147483647,g?h:A,g?M:d)>>>0>>0;d=aa;if(g&(d|0)<=(y|0)|(d|0)<(y|0)){break e}h=1;d=0;e=N;n=bi(ai(n,k,z,y),aa,v,q);k=n+x|0;g=aa+J|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=ai(e,g,e,g);n=aa;e=P;o=g;j=bi(ai(u,j,z,y),aa,v,q);k=j+G|0;g=aa+K|0;g=j>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=ai(e,g,e,g);g=o+k|0;e=aa+n|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;o=g;l=bi(ai(s,l,z,y),aa,v,q);j=l+H|0;g=aa+L|0;g=j>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-j|0;j=ai(e,g,e,g);e=o+j|0;g=aa+k|0;k=ai(e,e>>>0>>0?g+1|0:g,v,q);e=aa;j=e;if(!e&k>>>0<=1){break h}l=k;e=j;while(1){g=d<<1|h>>>31;h=h<<1;d=g;n=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(n){continue}break}break g}if((h|0)<(p|0)){d=h<<1}else{if((p|0)<=0){D[m+8>>2]=0;D[m+12>>2]=0;break i}d=(p<<1)-2|0}d=(d<<2)+c|0;D[m+8>>2]=D[d>>2];D[m+12>>2]=D[d+4>>2]}e=1;break e}d=j;h=k;if(h-1|0){break f}}while(1){g=ci(k,j,h,d)+h|0;e=d+aa|0;e=g>>>0>>0?e+1|0:e;h=(e&1)<<31|g>>>1;d=e>>>1|0;e=ai(h,d,h,d);g=aa;if((j|0)==(g|0)&e>>>0>k>>>0|g>>>0>j>>>0){continue}break}}k=D[m+20>>2];if(k){e=k-1|0;l=D[D[m+16>>2]+(e>>>3&536870908)>>2];D[m+20>>2]=e;g=r;n=w-g|0;j=g>>31;u=(w>>31)-(j+(g>>>0>w>>>0)|0)|0;g=ai(z,y,n,u);s=aa;r=ai(r,j,v,q);j=r+g|0;g=aa+s|0;g=j>>>0>>0?g+1|0:g;o=j;j=F;s=t-j|0;r=j>>31;w=(t>>31)-(r+(j>>>0>t>>>0)|0)|0;j=ai(h,d,s,w);t=j;j=l>>>e&1;e=j;x=e?0-t|0:t;l=o+x|0;o=g;g=aa;e=o+(e?0-(g+((t|0)!=0)|0)|0:g)|0;V=m,W=bi(l,l>>>0>>0?e+1|0:e,v,q),D[V+12>>2]=W;e=ai(s,w,z,y);g=aa;l=ai(v,q,F,r);e=l+e|0;g=aa+g|0;g=e>>>0>>0?g+1|0:g;d=ai(h,d,n,u);l=j?d:0-d|0;h=l+e|0;e=aa;e=(j?e:0-(((d|0)!=0)+e|0)|0)+g|0;V=m,W=bi(h,h>>>0>>0?e+1|0:e,v,q),D[V+8>>2]=W}e=(k|0)!=0}$=i+80|0;break c}ua();T()}if(!e){break b}k:{if(D[a+8>>2]<=0){break k}g=D[a+32>>2];d=0;while(1){e=d<<2;f=D[(e+a|0)+68>>2];h=D[a+16>>2];l:{if((f|0)>(h|0)){D[e+g>>2]=h;break l}e=e+g|0;h=D[a+12>>2];if((h|0)>(f|0)){D[e>>2]=h;break l}D[e>>2]=f}d=d+1|0;f=D[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=p<<3;h=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+h|0;f=D[f+k>>2]+D[f+g>>2]|0;D[d>>2]=f;m:{if((f|0)>D[a+16>>2]){f=f-D[a+20>>2]|0}else{if((f|0)>=D[a+12>>2]){break m}f=f+D[a+20>>2]|0}D[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}p=p+1|0;f=(I|0)>(p|0);if((p|0)==(U|0)){break b}e=D[a+56>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>p>>>0){continue}break}}ua();T()}a=f^1}else{a=0}return a&1}function Ic(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=$-16|0;$=e;D[e+12>>2]=a;a:{if(a>>>0<=211){d=D[Hc(10384,10576,e+12|0)>>2];break a}if(a>>>0>=4294967292){ub();T()}f=(a>>>0)/210|0;d=J(f,210);D[e+8>>2]=a-d;g=Hc(10576,10768,e+8|0)-10576>>2;while(1){d=D[(g<<2)+10576>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0>>0){break b}if((J(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((J(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((J(b,c)|0)!=(d|0)){continue}break}break c}b=D[(a<<2)+10384>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((J(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=J(f,210);continue}break}D[e+12>>2]=d}$=e+16|0;return d}function Eb(a,b,c,d){var e=0,f=0,g=0,h=0,i=K(0),j=0;a:{if(!d){break a}b:{c:{switch(D[a+28>>2]-1|0){case 0:d:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){B[b+d|0]=E[f|0];b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=B[f|0];if((e|0)<0){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>1];if((e-128&65535)>>>0<65280){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>1];if(e>>>0>127){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f>>2];if(e-128>>>0<4294967040){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f>>2];if(e>>>0>127){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=D[f>>2];e=D[f+4>>2]-(h>>>0<128)|0;if((e|0)==-1&h-128>>>0<4294967040|(e|0)!=-1){break a}B[b+d|0]=h;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f+4>>2];h=D[f>>2];if(!e&h>>>0>127|e){break a}B[b+d|0]=h;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=H[f>>2];m:{if(K(L(i))=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=I[f>>3];o:{if(L(j)<2147483648){e=~~j;break o}e=-2147483648}B[h|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){B[b+d|0]=E[f|0];b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}pa(d+e|0,0,c-e|0)}return g}function Db(a,b,c,d){var e=0,f=0,g=0,h=0,i=K(0),j=0;a:{if(!d){break a}b:{c:{switch(D[a+28>>2]-1|0){case 0:d:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=B[f|0];if((e|0)<0){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){B[b+d|0]=E[f|0];b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>1];if(e>>>0>255){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>1];if(e>>>0>255){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f>>2];if(e>>>0>255){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f>>2];if(e>>>0>255){break a}B[b+d|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f+4>>2];h=D[f>>2];if(!e&h>>>0>255|e){break a}B[b+d|0]=h;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f+4>>2];h=D[f>>2];if(!e&h>>>0>255|e){break a}B[b+d|0]=h;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=H[f>>2];m:{if(i=K(0)){e=~~i>>>0;break m}e=0}B[h|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=I[f>>3];o:{if(j<4294967296&j>=0){e=~~j>>>0;break o}e=0}B[h|0]=e;b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;f=D[a>>2];e=D[f>>2];if((b|0)>=(D[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){B[b+d|0]=E[f|0];b=b+1|0;e=B[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}pa(d+e|0,0,c-e|0)}return g}function md(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{if(D[a+92>>2]==D[a+88>>2]){break e}c=D[a+52>>2];f:{if((c|0)!=D[a+56>>2]){D[c>>2]=b;D[a+52>>2]=c+4;break f}d=D[a+48>>2];i=c-d|0;f=i>>2;e=f+1|0;if(e>>>0>=1073741824){break b}c=i>>1;e=i>>>0<2147483644?c>>>0>>0?e:c:1073741823;if(e){if(e>>>0>=1073741824){break a}c=na(e<<2)}else{c=0}f=c+(f<<2)|0;D[f>>2]=b;if((i|0)>0){oa(c,d,i)}D[a+56>>2]=c+(e<<2);D[a+52>>2]=f+4;D[a+48>>2]=c;if(!d){break f}ma(d)}D[a+84>>2]=0;f=-1;c=-1;g:{if((b|0)==-1){break g}e=D[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=D[D[e>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=D[D[e>>2]+(d<<2)>>2]}h=c>>>3&536870908;e=D[a+36>>2];g=e+(f>>>3&536870908)|0;i=D[g>>2];d=1<>2]=d|i;g=a+8|0;if((b|0)!=-1){e=b+1|0;d=(e>>>0)%3|0?e:b-2|0}else{d=-1}Ja(g,f,d);e=D[a+36>>2]}d=e+h|0;e=D[d>>2];f=1<>2]=e|f;d=a+8|0;f=-1;i:{if((b|0)==-1){break i}f=b-1|0;if((b>>>0)%3|0){break i}f=b+2|0}Ja(d,c,f)}f=-1;f=(b|0)!=-1?D[D[D[a+4>>2]>>2]+(b<<2)>>2]:f;d=D[a+36>>2]+(f>>>3&536870908)|0;e=D[d>>2];c=1<>2]=c|e;Ja(a+8|0,f,b)}d=D[a+84>>2];if((d|0)>2){break e}while(1){f=J(d,12)+a|0;b=D[f+52>>2];if((b|0)==D[f+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=D[c>>2];D[f+52>>2]=c;D[a+84>>2]=d;if((b|0)==-1){break e}f=D[a+24>>2];c=(b>>>0)/3|0;j:{if(D[f+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){k=(b>>>0)/3|0;c=(k>>>3&268435452)+f|0;D[c>>2]=D[c>>2]|1<>2]>>2]+(b<<2)>>2]:f;d=D[a+36>>2]+(f>>>3&536870908)|0;e=D[d>>2];c=1<>2]=c|e;i=D[(D[D[a+16>>2]+96>>2]+J(k,12)|0)+((b>>>0)%3<<2)>>2];j=D[D[a+20>>2]+4>>2];c=D[j+4>>2];t:{if((c|0)!=D[j+8>>2]){D[c>>2]=i;D[j+4>>2]=c+4;break t}g=D[j>>2];h=c-g|0;e=h>>2;d=e+1|0;if(d>>>0>=1073741824){break s}c=h>>1;d=h>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=na(d<<2)}else{c=0}e=c+(e<<2)|0;D[e>>2]=i;if((h|0)>0){oa(c,g,h)}D[j+8>>2]=c+(d<<2);D[j+4>>2]=e+4;D[j>>2]=c;if(!g){break t}ma(g)}h=D[a+12>>2];c=D[h+4>>2];u:{if((c|0)!=D[h+8>>2]){D[c>>2]=b;D[h+4>>2]=c+4;break u}i=D[h>>2];g=c-i|0;e=g>>2;d=e+1|0;if(d>>>0>=1073741824){break r}c=g>>1;d=g>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=na(d<<2)}else{c=0}e=c+(e<<2)|0;D[e>>2]=b;if((g|0)>0){oa(c,i,g)}D[h+8>>2]=c+(d<<2);D[h+4>>2]=e+4;D[h>>2]=c;if(!i){break u}ma(i)}c=D[a+12>>2];D[D[c+12>>2]+(f<<2)>>2]=D[c+24>>2];D[c+24>>2]=D[c+24>>2]+1}if((b|0)==-1){break k}h=D[a+4>>2];f=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=D[D[h+12>>2]+(c<<2)>>2]}v:{w:{if((J(k,3)|0)!=(b|0)){e=b-1|0;break w}e=b+2|0;b=-1;if((e|0)==-1){break v}}b=D[D[h+12>>2]+(e<<2)>>2]}g=(b|0)==-1;i=(b>>>0)/3|0;e=(f>>>0)/3|0;c=(f|0)==-1;if(!c){c=c?-1:e;c=D[D[a+24>>2]+(c>>>3&536870908)>>2]&1<>2]+(c>>>3&536870908)>>2]>>>c&1){break x}e=0;c=D[D[h>>2]+(b<<2)>>2];if(!(D[D[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=D[a+88>>2]+(c<<2)|0;e=D[c>>2];D[c>>2]=e+1;e=(e|0)<=0?2:1}if(D[a+84>>2]>=(e|0)?d:0){break m}j=J(e,12)+a|0;c=D[j+52>>2];y:{if((c|0)!=D[j+56>>2]){D[c>>2]=b;D[j+52>>2]=c+4;break y}h=D[j+48>>2];k=c-h|0;i=k>>2;g=i+1|0;if(g>>>0>=1073741824){break d}c=k>>1;g=k>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=na(g<<2)}else{c=0}i=c+(i<<2)|0;D[i>>2]=b;if((k|0)>0){oa(c,h,k)}D[j+48>>2]=c;D[j+52>>2]=i+4;D[j+56>>2]=c+(g<<2);if(!h){break y}ma(h)}if(D[a+84>>2]<=(e|0)){break x}D[a+84>>2]=e}if(d){break k}b=-1;if((f|0)==-1){break n}}b=D[D[D[a+4>>2]>>2]+(f<<2)>>2]}e=0;if(!(D[D[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=D[a+88>>2]+(b<<2)|0;c=D[b>>2];D[b>>2]=c+1;e=(c|0)<=0?2:1}if(D[a+84>>2]<(e|0)){break l}b=f}f=D[a+24>>2];continue}break}h=J(e,12)+a|0;b=D[h+52>>2];z:{if((b|0)!=D[h+56>>2]){D[b>>2]=f;D[h+52>>2]=b+4;break z}i=D[h+48>>2];g=b-i|0;c=g>>2;d=c+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=g>>>0<2147483644?b>>>0>>0?d:b:1073741823;if(d){if(d>>>0>=1073741824){break a}b=na(d<<2)}else{b=0}c=b+(c<<2)|0;D[c>>2]=f;if((g|0)>0){oa(b,i,g)}D[h+48>>2]=b;D[h+52>>2]=c+4;D[h+56>>2]=b+(d<<2);if(!i){break z}ma(i)}d=D[a+84>>2];if((e|0)>=(d|0)){break j}D[a+84>>2]=e;d=e;break j}d=D[a+84>>2]}if((d|0)<3){continue}break}}return 1}qa();T()}qa();T()}qa();T()}ra(1326);T()}function ud(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=$-48|0;$=h;c=D[D[a+4>>2]+44>>2];d=D[a+8>>2];f=D[d>>2];d=D[d+4>>2];D[h+40>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;d=(d-f>>2>>>0)/3|0;j=D[c+96>>2];f=(D[c+100>>2]-j|0)/12|0;a:{if(d>>>0>f>>>0){ic(c+96|0,d-f|0,h+32|0);break a}if(d>>>0>=f>>>0){break a}D[c+100>>2]=j+J(d,12)}b:{if(D[a+216>>2]==D[a+220>>2]){k=D[a+4>>2];i=D[k+44>>2];d=D[i+100>>2];if((d|0)!=D[i+96>>2]){c=0;while(1){g=D[a+8>>2];e=J(c,3);c:{d:{if((e|0)==-1){l=D[(D[g>>2]+(e<<2)|0)+4>>2];j=-1;e=1;break d}l=-1;j=D[D[g>>2]+(e<<2)>>2];f=e+1|0;if((f|0)==-1){e=0;break d}l=D[D[g>>2]+(f<<2)>>2];e=e+2|0;f=-1;if((e|0)==-1){break c}}f=D[D[g>>2]+(e<<2)>>2]}g=f;f=c+1|0;e=d;d=D[i+96>>2];e=(e-d|0)/12|0;if(e>>>0<=c>>>0){D[h+40>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;ic(i+96|0,f-e|0,h+32|0);k=D[a+4>>2];d=D[i+96>>2]}c=J(c,12)+d|0;D[c+8>>2]=g;D[c+4>>2]=l;D[c>>2]=j;c=f;i=D[k+44>>2];d=D[i+100>>2];if(c>>>0<(d-D[i+96>>2]|0)/12>>>0){continue}break}}D[D[k+4>>2]+80>>2]=b;c=1;break b}D[h+24>>2]=0;D[h+16>>2]=0;D[h+20>>2]=0;k=D[a+8>>2];b=D[k>>2];c=D[k+4>>2];D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;e:{f:{g:{h:{i:{j:{k:{b=c-b|0;if(b){if((b|0)<0){break k}n=na(b);D[h>>2]=n;b=b>>2<<2;c=b+n|0;D[h+8>>2]=c;pa(n,0,b);D[h+4>>2]=c}c=D[k+24>>2];if((D[k+28>>2]-c|0)<=0){d=0;b=0;break f}d=0;f=0;b=0;while(1){j=D[(o<<2)+c>>2];l:{if((j|0)==-1){break l}m:{if(D[D[a+120>>2]+(o>>>3&536870908)>>2]>>>o&1){break m}q=D[a+216>>2];c=D[a+220>>2]-q|0;if(!c){break m}c=(c|0)/144|0;r=c>>>0>1?c:1;l=0;c=(j>>>0)%3|0;g=j+2|0;s=(c|0)!=0|(g|0)!=-1;t=c?j-1|0:g;while(1){i=j<<2;e=q+J(l,144)|0;c=D[i+D[D[e+68>>2]>>2]>>2];n:{if(!(D[D[e+16>>2]+(c>>>3&536870908)>>2]>>>c&1)){break n}c=-1;o:{if(!s){break o}g=D[D[k+12>>2]+(t<<2)>>2];c=-1;if((g|0)==-1){break o}c=g-1|0;if((g>>>0)%3|0){break o}c=g+2|0}if((j|0)==(c|0)){break n}e=D[e+32>>2];g=D[e+i>>2];while(1){m=0;if((c|0)==-1){break e}if(D[e+(c<<2)>>2]!=(g|0)){j=c;break m}p:{q:{if((c>>>0)%3|0){i=c-1|0;break q}i=c+2|0;m=-1;if((i|0)==-1){break p}}c=D[D[k+12>>2]+(i<<2)>>2];m=-1;if((c|0)==-1){break p}m=c-1|0;if((c>>>0)%3|0){break p}m=c+2|0}c=m;if((j|0)!=(c|0)){continue}break}}l=l+1|0;if((r|0)!=(l|0)){continue}break}}c=b-f|0;g=c>>2;D[(j<<2)+n>>2]=g;r:{if(b>>>0

>>0){D[b>>2]=j;b=b+4|0;D[h+20>>2]=b;break r}b=g+1|0;if(b>>>0>=1073741824){break j}d=p-f|0;e=d>>1;b=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(b){if(b>>>0>=1073741824){break i}d=na(b<<2)}else{d=0}g=d+(g<<2)|0;D[g>>2]=j;p=(b<<2)+d|0;b=g+4|0;if((c|0)>0){oa(d,f,c)}D[h+24>>2]=p;D[h+20>>2]=b;D[h+16>>2]=d;if(f){ma(f);k=D[a+8>>2]}f=d}if((j|0)==-1){break l}s:{if((j>>>0)%3|0){c=j-1|0;break s}c=j+2|0;if((c|0)==-1){break l}}c=D[D[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=j;if((c|0)==(e|0)){break l}while(1){g=c;t:{u:{i=D[a+216>>2];c=D[a+220>>2]-i|0;if(!c){break u}c=(c|0)/144|0;l=c>>>0>1?c:1;c=0;while(1){q=D[(i+J(c,144)|0)+32>>2];r=g<<2;if(D[q+r>>2]==D[q+(e<<2)>>2]){c=c+1|0;if((l|0)!=(c|0)){continue}break u}break}c=b-d|0;e=c>>2;D[n+r>>2]=e;if(b>>>0

>>0){D[b>>2]=g;b=b+4|0;D[h+20>>2]=b;f=d;break t}b=e+1|0;if(b>>>0>=1073741824){break h}f=p-d|0;i=f>>1;b=f>>>0<2147483644?b>>>0>i>>>0?b:i:1073741823;if(b){if(b>>>0>=1073741824){break g}f=na(b<<2)}else{f=0}e=f+(e<<2)|0;D[e>>2]=g;p=(b<<2)+f|0;b=e+4|0;if((c|0)>0){oa(f,d,c)}D[h+24>>2]=p;D[h+20>>2]=b;D[h+16>>2]=f;if(!d){d=f;break t}ma(d);k=D[a+8>>2];d=f;break t}D[(g<<2)+n>>2]=D[(e<<2)+n>>2]}if((g|0)==-1){break l}v:{if((g>>>0)%3|0){c=g-1|0;break v}c=g+2|0;if((c|0)==-1){break l}}c=D[D[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=g;if((c|0)!=(j|0)){continue}break}}o=o+1|0;c=D[k+24>>2];if((o|0)>2]-c>>2){continue}break}break f}qa();T()}qa();T()}ra(1326);T()}qa();T()}ra(1326);T()}o=D[a+4>>2];i=D[o+44>>2];l=D[i+100>>2];if((l|0)!=D[i+96>>2]){c=0;while(1){f=c+1|0;g=J(c,12);j=g+n|0;e=D[j+8>>2];k=D[j+4>>2];j=D[j>>2];m=c;c=D[i+96>>2];l=(l-c|0)/12|0;if(m>>>0>=l>>>0){D[h+40>>2]=0;D[h+32>>2]=0;D[h+36>>2]=0;ic(i+96|0,f-l|0,h+32|0);o=D[a+4>>2];c=D[i+96>>2]}c=c+g|0;D[c+8>>2]=e;D[c+4>>2]=k;D[c>>2]=j;c=f;i=D[o+44>>2];l=D[i+100>>2];if(c>>>0<(l-D[i+96>>2]|0)/12>>>0){continue}break}}D[D[o+4>>2]+80>>2]=b-d>>2;m=1}c=m;if(n){ma(n)}if(!d){break b}D[h+20>>2]=d;ma(d)}$=h+48|0;return c}function Ha(a,b,c,d){var e=0,f=0,g=0,h=0,i=K(0),j=0,k=0;a:{if(!d){break a}b:{c:{switch(D[a+28>>2]-1|0){case 0:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=B[b|0];D[e>>2]=g;D[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 1:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;D[e>>2]=E[b|0];D[e+4>>2]=0;b=b+1|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 2:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=C[b>>1];D[e>>2]=g;D[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 3:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;D[e>>2]=F[b>>1];D[e+4>>2]=0;b=b+2|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 4:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=D[b>>2];D[e>>2]=g;D[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 5:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;D[e>>2]=D[b>>2];D[e+4>>2]=0;b=b+4|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 6:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=D[b+4>>2];e=(f<<3)+d|0;D[e>>2]=D[b>>2];D[e+4>>2]=g;b=b+8|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 7:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=D[b>>2];g=D[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;D[k>>2]=e;D[k+4>>2]=g;b=b+8|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 8:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;k=D[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;i=H[b>>2];d:{if(K(L(i))=K(1)?~~(i>K(0)?K(N(K(P(K(i*K(2.3283064365386963e-10)))),K(4294967296))):K(Q(K(K(i-K(~~i>>>0>>>0))*K(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}D[e>>2]=h;D[e+4>>2]=g;b=b+4|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 9:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;k=D[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;j=I[b>>3];e:{if(L(j)<0x8000000000000000){g=L(j)>=1?~~(j>0?N(P(j*2.3283064365386963e-10),4294967295):Q((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}D[e>>2]=h;D[e+4>>2]=g;b=b+8|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];g=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=g+b|0;h=D[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;D[e>>2]=E[b|0];D[e+4>>2]=0;b=b+1|0;f=f+1|0;e=B[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break a}}pa((e<<3)+d|0,0,c-e<<3)}}function Bg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=$-32|0;$=d;a:{if(!bb(1,d+28|0,D[a+32>>2])){break a}if(!bb(1,d+24|0,D[a+32>>2])){break a}k=D[d+28>>2];if(k>>>0>1431655765){break a}e=D[a+32>>2];j=D[e+8>>2];b=j;c=D[e+16>>2];f=b-c|0;g=D[e+12>>2];n=b>>>0>>0;b=D[e+20>>2];f=bi(f,g-(n+b|0)|0,3,0);if(!aa&f>>>0>>0){break a}o=D[d+24>>2];f=ai(k,0,3,0);if(!aa&f>>>0>>0|((b|0)>=(g|0)&c>>>0>=j>>>0|(b|0)>(g|0))){break a}g=E[c+D[e>>2]|0];j=c+1|0;f=j?b:b+1|0;D[e+16>>2]=j;D[e+20>>2]=f;b:{if(!g){e=0;b=$-32|0;$=b;D[b+24>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;c:{d:{f=J(k,3);if(f){if(f>>>0>=1073741824){break d}c=J(k,12);e=na(c);D[b+16>>2]=e;pa(e,0,c)}f=kc(f,1,D[a+32>>2],e);e:{f:{if(!(!f|!k)){g=0;c=0;while(1){n=h;j=(c<<2)+e|0;h=D[j>>2];i=h>>>1|0;h=n+(h&1?0-i|0:i)|0;D[b>>2]=h;i=D[j+4>>2];l=i>>>1|0;h=h+(i&1?0-l|0:l)|0;D[b+4>>2]=h;j=D[j+8>>2];i=j>>>1|0;h=h+(j&1?0-i|0:i)|0;D[b+8>>2]=h;ob(D[a+44>>2]+96|0,b);c=c+3|0;g=g+1|0;if((g|0)!=(k|0)){continue}break}break f}if(!e){break e}}ma(e)}$=b+32|0;break c}qa();T()}if(!f){break a}break b}g:{if(o>>>0<=255){if(!k){break b}D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;c=D[e+12>>2];b=c;h=D[e+8>>2];if((f|0)>=(b|0)&j>>>0>=h>>>0|(b|0)<(f|0)){break g}while(1){g=D[e>>2];l=E[g+j|0];b=f;i=j+1|0;b=i?b:b+1|0;D[e+16>>2]=i;D[e+20>>2]=b;D[d+8>>2]=l;if(h>>>0<=i>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break g}l=E[g+i|0];b=f;i=j+2|0;b=i>>>0<2?b+1|0:b;D[e+16>>2]=i;D[e+20>>2]=b;D[d+12>>2]=l;if(h>>>0<=i>>>0&(b|0)>=(c|0)|(b|0)>(c|0)){break g}b=E[g+i|0];c=j+3|0;f=c>>>0<3?f+1|0:f;D[e+16>>2]=c;D[e+20>>2]=f;D[d+16>>2]=b;ob(D[a+44>>2]+96|0,d+8|0);m=m+1|0;if((k|0)==(m|0)){break b}e=D[a+32>>2];b=e;j=D[b+16>>2];f=D[b+20>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;h=D[b+8>>2];c=D[b+12>>2];b=c;if(j>>>0>>0&(f|0)<=(b|0)|(b|0)>(f|0)){continue}break}break g}if(o>>>0<=65535){if(!k){break b}D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;g=D[e+12>>2];c=c+3|0;b=c>>>0<3?b+1|0:b;i=D[e+8>>2];h=c;c=b;if(i>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}while(1){l=D[e>>2];b=l+j|0;b=E[b|0]|E[b+1|0]<<8;D[e+16>>2]=h;D[e+20>>2]=c;D[d+8>>2]=b;b=f;c=j+4|0;b=c>>>0<4?b+1|0:b;if(c>>>0>i>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}h=h+l|0;h=E[h|0]|E[h+1|0]<<8;D[e+16>>2]=c;D[e+20>>2]=b;D[d+12>>2]=h;b=f;f=j+6|0;b=f>>>0<6?b+1|0:b;if(f>>>0>i>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}c=c+l|0;c=E[c|0]|E[c+1|0]<<8;D[e+16>>2]=f;D[e+20>>2]=b;D[d+16>>2]=c;ob(D[a+44>>2]+96|0,d+8|0);m=m+1|0;if((k|0)==(m|0)){break b}e=D[a+32>>2];b=e;j=D[b+16>>2];f=D[b+20>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;g=D[b+12>>2];i=D[b+8>>2];b=f;c=j+2|0;b=c>>>0<2?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&h>>>0<=i>>>0|(b|0)<(g|0)){continue}break}break g}h:{if(o>>>0>2097151){break h}g=F[a+36>>1];if(((g<<8|g>>>8)&65535)>>>0<514){break h}if(!k){break b}D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;if(!bb(1,d+4|0,e)){break g}while(1){D[d+8>>2]=D[d+4>>2];if(!bb(1,d+4|0,D[a+32>>2])){break g}D[d+12>>2]=D[d+4>>2];if(!bb(1,d+4|0,D[a+32>>2])){break g}D[d+16>>2]=D[d+4>>2];ob(D[a+44>>2]+96|0,d+8|0);m=m+1|0;if((k|0)==(m|0)){break b}f=D[a+32>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;if(bb(1,d+4|0,f)){continue}break}break g}if(!k){break b}D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;g=D[e+12>>2];c=c+5|0;b=c>>>0<5?b+1|0:b;i=D[e+8>>2];h=c;c=b;if(i>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}while(1){l=D[e>>2];b=l+j|0;b=E[b|0]|E[b+1|0]<<8|(E[b+2|0]<<16|E[b+3|0]<<24);D[e+16>>2]=h;D[e+20>>2]=c;D[d+8>>2]=b;b=f;c=j+8|0;b=c>>>0<8?b+1|0:b;n=c;if(c>>>0>i>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break g}c=h+l|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[e+16>>2]=n;D[e+20>>2]=b;D[d+12>>2]=c;b=j+12|0;f=b>>>0<12?f+1|0:f;c=b;if(b>>>0>i>>>0&(f|0)>=(g|0)|(f|0)>(g|0)){break g}b=l+n|0;b=E[b|0]|E[b+1|0]<<8|(E[b+2|0]<<16|E[b+3|0]<<24);D[e+16>>2]=c;D[e+20>>2]=f;D[d+16>>2]=b;ob(D[a+44>>2]+96|0,d+8|0);m=m+1|0;if((k|0)==(m|0)){break b}e=D[a+32>>2];b=e;j=D[b+16>>2];f=D[b+20>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;g=D[b+12>>2];i=D[b+8>>2];b=f;c=j+4|0;b=c>>>0<4?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&h>>>0<=i>>>0|(b|0)<(g|0)){continue}break}}m=0;break a}D[D[a+4>>2]+80>>2]=o;m=1}$=d+32|0;return m|0}function Nb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=$-96|0;$=f;e=D[a+16>>2];B[f+92|0]=1;D[f+88>>2]=b;D[f+84>>2]=b;D[f+80>>2]=e;m=D[a+20>>2];d=D[m>>2];a:{b:{e=D[D[e+28>>2]+(b<<2)>>2];if(e>>>0>2]-d>>2>>>0){d=D[D[a+8>>2]+(D[d+(e<<2)>>2]<<2)>>2];e=D[a+4>>2];if(!E[e+84|0]){d=D[D[e+68>>2]+(d<<2)>>2]}D[f+72>>2]=0;D[f+76>>2]=0;m=f- -64|0;D[m>>2]=0;D[m+4>>2]=0;D[f+56>>2]=0;D[f+60>>2]=0;Ha(e,d,B[e+24|0],f+56|0);e=b+1|0;d=(e>>>0)%3|0;if(b>>>0<=e>>>0){m=d?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;while(1){d=m;e=h;c:{if(!D[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}k=D[a+20>>2];b=D[k>>2];d=D[D[D[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=D[k+4>>2]-b>>2>>>0){break b}d=D[D[a+8>>2]+(D[b+(d<<2)>>2]<<2)>>2];b=D[a+4>>2];if(!E[b+84|0]){d=D[D[b+68>>2]+(d<<2)>>2]}D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;Ha(b,d,B[b+24|0],f+32|0);d=D[a+20>>2];b=D[d>>2];e=D[D[D[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=D[d+4>>2]-b>>2>>>0){break a}d=D[D[a+8>>2]+(D[b+(e<<2)>>2]<<2)>>2];b=D[a+4>>2];if(!E[b+84|0]){d=D[D[b+68>>2]+(d<<2)>>2]}D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;Ha(b,d,B[b+24|0],f+8|0);e=D[f+8>>2];b=D[f+56>>2];d=e-b|0;k=D[f+60>>2];n=D[f+12>>2]-(k+(b>>>0>e>>>0)|0)|0;i=D[f+40>>2];e=D[f+64>>2];s=i-e|0;t=D[f+68>>2];i=D[f+44>>2]-(t+(e>>>0>i>>>0)|0)|0;u=ai(d,n,s,i);v=j-u|0;g=g-(aa+(j>>>0>>0)|0)|0;w=v;j=D[f+16>>2];u=j-e|0;t=D[f+20>>2]-((e>>>0>j>>>0)+t|0)|0;j=D[f+32>>2];v=j-b|0;k=D[f+36>>2]-((b>>>0>j>>>0)+k|0)|0;e=ai(u,t,v,k);j=w+e|0;b=aa+g|0;b=e>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=D[f+48>>2];e=D[f+72>>2];n=b-e|0;o=D[f+76>>2];x=D[f+52>>2]-(o+(b>>>0>>0)|0)|0;p=ai(d,p,n,x);d=w+p|0;b=aa+l|0;b=d>>>0

>>0?b+1|0:b;l=D[f+24>>2];p=l-e|0;e=D[f+28>>2]-((e>>>0>l>>>0)+o|0)|0;l=ai(p,e,v,k);o=d-l|0;l=b-(aa+(d>>>0>>0)|0)|0;b=ai(u,t,n,x);d=q-b|0;b=r-(aa+(b>>>0>q>>>0)|0)|0;r=ai(p,e,s,i);q=r+d|0;b=aa+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=D[f+88>>2];e=D[f+80>>2];d:{if(E[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}D[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;D[f+88>>2]=b;if((b|0)!=-1){break e}}b=D[f+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}B[f+92|0]=0;D[f+88>>2]=d;break d}if((b|0)!=D[f+84>>2]){break d}D[f+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}D[f+88>>2]=d}b=D[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;d=b+q|0;e=b;b=b+r|0;k=d^e;h=e^(d>>>0>>0?b+1|0:b);n=-1;d=2147483647;b=l>>31;i=b;e=b+o|0;b=b+l|0;b=e>>>0>>0?b+1|0:b;e=e^i;b=b^i;i=b;s=e^-1;b=b^2147483647;m=g;m:{n:{if(!D[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break m}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=a;a=b;b=g>>31;d=b+j|0;h=g;g=b;b=h+b|0;b=d>>>0>>0?b+1|0:b;h=d^g;d=h+e|0;g=b^g;b=d;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break o}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(e|0)&(g^-1)>>>0>>0|e>>>0>h>>>0){break o}b=b+e|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;d=b;if(!b&a>>>0<536870913){break m}}b=d>>>29|0;a=(d&536870911)<<3|n>>>29}j=bi(j,m,a,b);o=bi(o,l,a,b);q=bi(q,r,a,b)}D[c+8>>2]=j;D[c+4>>2]=o;D[c>>2]=q;$=f+96|0;return}ua();T()}ua();T()}ua();T()}function Cb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=K(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=B[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=F[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=C[b>>1];if((e|0)<0){break b}C[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 4:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(e-32768>>>0<4294901760){break a}C[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(e>>>0>32767){break a}C[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=D[b>>2];e=D[b+4>>2]-(i>>>0<32768)|0;if((e|0)==-1&i-32768>>>0<4294901760|(e|0)!=-1){break a}C[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b+4>>2];i=D[b>>2];if(!e&i>>>0>32767|e){break a}C[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=H[b>>2];e:{if(K(L(j))>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=I[b>>3];f:{if(L(k)<2147483648){e=~~k;break f}e=-2147483648}C[i>>1]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<1)+d|0,0,c-e<<1)}return h}return 0}function Bb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=K(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=B[b|0];if((e|0)<0){break b}C[(g<<1)+d>>1]=e&255;b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 1:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=C[b>>1];if((e|0)<0){break b}C[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 3:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=F[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(e>>>0>65535){break a}C[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(e>>>0>65535){break a}C[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b+4>>2];i=D[b>>2];if(!e&i>>>0>65535|e){break a}C[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b+4>>2];i=D[b>>2];if(!e&i>>>0>65535|e){break a}C[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=H[b>>2];e:{if(j=K(0)){e=~~j>>>0;break e}e=0}C[i>>1]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=I[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}C[i>>1]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}C[(g<<1)+d>>1]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<1)+d|0,0,c-e<<1)}return h}return 0}function gc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=$-48|0;$=e;d=F[5069]|F[5070]<<16;f=F[5067]|F[5068]<<16;C[e+38>>1]=f;C[e+40>>1]=f>>>16;C[e+42>>1]=d;C[e+44>>1]=d>>>16;d=D[2533];D[e+32>>2]=D[2532];D[e+36>>2]=d;d=D[2531];D[e+24>>2]=D[2530];D[e+28>>2]=d;d=D[2529];D[e+16>>2]=D[2528];D[e+20>>2]=d;f=D[b+12>>2];d=D[b+20>>2];g=D[b+16>>2];h=g+5|0;d=h>>>0<5?d+1|0:d;a:{b:{if(h>>>0>G[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){b=za(e+16|0);if(b>>>0>=4294967280){break a}c:{d:{if(b>>>0>=11){d=b+16&-16;c=na(d);D[e+8>>2]=d|-2147483648;D[e>>2]=c;D[e+4>>2]=b;break d}B[e+11|0]=b;c=e;if(!b){break c}}oa(c,e+16|0,b)}B[b+c|0]=0;D[a>>2]=-2;a=a+4|0;if(B[e+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}b=a;a=D[e>>2];ta(b,a,D[e+4>>2]);ma(a);break b}d=g+D[b>>2]|0;f=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);B[c|0]=f;B[c+1|0]=f>>>8;B[c+2|0]=f>>>16;B[c+3|0]=f>>>24;B[c+4|0]=E[d+4|0];d=D[b+20>>2];f=D[b+16>>2]+5|0;d=f>>>0<5?d+1|0:d;D[b+16>>2]=f;D[b+20>>2]=d;if(va(c,1394,5)){b=na(32);B[b+16|0]=E[1638];c=E[1634]|E[1635]<<8|(E[1636]<<16|E[1637]<<24);d=E[1630]|E[1631]<<8|(E[1632]<<16|E[1633]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1626]|E[1627]<<8|(E[1628]<<16|E[1629]<<24);d=E[1622]|E[1623]<<8|(E[1624]<<16|E[1625]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+17|0]=0;D[a>>2]=-1;ta(a+4|0,b,17);ma(b);break b}g=D[b+12>>2];if((g|0)<=(d|0)&G[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=za(e+16|0);if(b>>>0>=4294967280){break a}e:{f:{if(b>>>0>=11){d=b+16&-16;c=na(d);D[e+8>>2]=d|-2147483648;D[e>>2]=c;D[e+4>>2]=b;break f}B[e+11|0]=b;c=e;if(!b){break e}}oa(c,e+16|0,b)}B[b+c|0]=0;D[a>>2]=-2;a=a+4|0;if(B[e+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}b=a;a=D[e>>2];ta(b,a,D[e+4>>2]);ma(a);break b}B[c+5|0]=E[f+D[b>>2]|0];d=D[b+20>>2];f=D[b+16>>2]+1|0;d=f?d:d+1|0;D[b+16>>2]=f;D[b+20>>2]=d;g=D[b+12>>2];if((g|0)<=(d|0)&G[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=za(e+16|0);if(b>>>0>=4294967280){break a}g:{h:{if(b>>>0>=11){d=b+16&-16;c=na(d);D[e+8>>2]=d|-2147483648;D[e>>2]=c;D[e+4>>2]=b;break h}B[e+11|0]=b;c=e;if(!b){break g}}oa(c,e+16|0,b)}B[b+c|0]=0;D[a>>2]=-2;a=a+4|0;if(B[e+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}b=a;a=D[e>>2];ta(b,a,D[e+4>>2]);ma(a);break b}B[c+6|0]=E[f+D[b>>2]|0];d=D[b+20>>2];f=D[b+16>>2]+1|0;d=f?d:d+1|0;D[b+16>>2]=f;D[b+20>>2]=d;g=D[b+12>>2];if((g|0)<=(d|0)&G[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=za(e+16|0);if(b>>>0>=4294967280){break a}i:{j:{if(b>>>0>=11){d=b+16&-16;c=na(d);D[e+8>>2]=d|-2147483648;D[e>>2]=c;D[e+4>>2]=b;break j}B[e+11|0]=b;c=e;if(!b){break i}}oa(c,e+16|0,b)}B[b+c|0]=0;D[a>>2]=-2;a=a+4|0;if(B[e+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}b=a;a=D[e>>2];ta(b,a,D[e+4>>2]);ma(a);break b}B[c+7|0]=E[f+D[b>>2]|0];d=D[b+20>>2];f=D[b+16>>2]+1|0;d=f?d:d+1|0;D[b+16>>2]=f;D[b+20>>2]=d;g=D[b+12>>2];if((g|0)<=(d|0)&G[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=Gb(e,e+16|0);D[a>>2]=-2;a=a+4|0;if(B[b+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}ta(a,D[b>>2],D[b+4>>2]);if(B[b+11|0]>=0){break b}ma(D[b>>2]);break b}B[c+8|0]=E[f+D[b>>2]|0];d=D[b+20>>2];f=d;i=D[b+16>>2];g=i+1|0;d=g?d:d+1|0;D[b+16>>2]=g;D[b+20>>2]=d;h=D[b+12>>2];d=f;f=i+3|0;d=f>>>0<3?d+1|0:d;if(f>>>0>G[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){b=Gb(e,e+16|0);D[a>>2]=-2;a=a+4|0;if(B[b+11|0]>=0){b=D[e+4>>2];D[a>>2]=D[e>>2];D[a+4>>2]=b;D[a+8>>2]=D[e+8>>2];break b}ta(a,D[b>>2],D[b+4>>2]);if(B[b+11|0]>=0){break b}ma(D[b>>2]);break b}f=c;c=g+D[b>>2]|0;C[f+10>>1]=E[c|0]|E[c+1|0]<<8;d=D[b+20>>2];c=D[b+16>>2]+2|0;d=c>>>0<2?d+1|0:d;D[b+16>>2]=c;D[b+20>>2]=d;D[a+8>>2]=0;D[a+12>>2]=0;D[a>>2]=0;D[a+4>>2]=0}$=e+48|0;return}Aa();T()}function Ab(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=K(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=B[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=C[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=F[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=D[b>>2];b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if((e|0)<0){break b}D[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 6:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if((D[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}D[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b+4>>2];i=D[b>>2];if(!e&i>>>0>2147483647|e){break a}D[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=H[b>>2];e:{if(K(L(j))>2]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=I[b>>3];f:{if(L(k)<2147483648){e=~~k;break f}e=-2147483648}D[i>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<2)+d|0,0,c-e<<2)}return h}return 0}function zb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=K(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(D[a+28>>2]-1|0){case 0:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=B[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=C[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=F[b>>1];b=b+2|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=D[b>>2];b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=D[b>>2];b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(D[b+4>>2]){break a}D[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b>>2];if(D[b+4>>2]){break a}D[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=H[b>>2];e:{if(j=K(0)){e=~~j>>>0;break e}e=0}D[i>>2]=e;b=b+4|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=I[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}D[i>>2]=e;b=b+8|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=B[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=D[a>>2];f=D[e>>2];b=D[a+48>>2]+ai(D[a+40>>2],D[a+44>>2],b,0)|0;b=f+b|0;f=D[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}D[(g<<2)+d>>2]=E[b|0];b=b+1|0;g=g+1|0;e=B[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}pa((e<<2)+d|0,0,c-e<<2)}return h}return 0}function eh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=K(0),f=0,g=0,h=0,i=0,j=0,k=K(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;if(D[c>>2]==D[c+4>>2]){g=D[d+80>>2];v=$-16|0;$=v;j=D[a+4>>2];h=D[d+48>>2];d=D[D[d>>2]>>2];i=B[b+24|0];c=v+8|0;D[c>>2]=1065353216;u=c;H[c>>2]=K(-1<>2];w=na((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!g|(i|0)<=0){break a}s=d+h|0;y=D[b>>2];c=D[b+48>>2];z=D[b+44>>2];x=D[b+40>>2];if(!E[b+84|0]){n=D[b+68>>2];t=i&-2;j=i&1;b=0;while(1){f=D[y>>2];d=ai(x,z,D[n+(o<<2)>>2],0)+c|0;p=oa(w,f+d|0,x);k=H[u>>2];l=D[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){f=s+(b<<2)|0;q=d<<2;e=K(P(K(K(k*K(H[q+p>>2]-H[l+q>>2]))+K(.5))));b:{if(K(L(e))>2]=h;h=q|4;e=K(P(K(K(k*K(H[h+p>>2]-H[l+h>>2]))+K(.5))));c:{if(K(L(e))>2]=h;d=d+2|0;b=b+2|0;m=m+2|0;if((t|0)!=(m|0)){continue}break}}if(j){f=s+(b<<2)|0;d=d<<2;e=K(P(K(K(k*K(H[d+p>>2]-H[d+l>>2]))+K(.5))));d:{if(K(L(e))>2]=d;b=b+1|0}o=o+1|0;if((g|0)!=(o|0)){continue}break}break a}n=i&-2;t=i&1;b=0;while(1){h=D[y>>2];d=ai(x,z,o,f)+c|0;p=oa(w,h+d|0,x);k=H[u>>2];l=D[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){h=s+(b<<2)|0;q=d<<2;e=K(P(K(K(k*K(H[q+p>>2]-H[l+q>>2]))+K(.5))));e:{if(K(L(e))>2]=j;j=q|4;e=K(P(K(K(k*K(H[j+p>>2]-H[l+j>>2]))+K(.5))));f:{if(K(L(e))>2]=j;d=d+2|0;b=b+2|0;m=m+2|0;if((n|0)!=(m|0)){continue}break}}if(t){h=s+(b<<2)|0;d=d<<2;e=K(P(K(K(k*K(H[d+p>>2]-H[d+l>>2]))+K(.5))));g:{if(K(L(e))>2]=d;b=b+1|0}d=o+1|0;f=d?f:f+1|0;o=d;if((g|0)!=(d|0)|f){continue}break}}ma(w);$=v+16|0;return 1}v=$-16|0;$=v;u=D[a+4>>2];g=D[d+48>>2];f=D[D[d>>2]>>2];r=B[b+24|0];d=v+8|0;D[d>>2]=1065353216;h=d;H[d>>2]=K(-1<>2];w=na((r|0)!=(r&1073741823)?-1:r<<2);y=D[c>>2];c=D[c+4>>2]-y|0;h:{if(!c|(r|0)<=0){break h}s=f+g|0;z=D[b>>2];d=D[b+48>>2];x=D[b+44>>2];o=D[b+40>>2];c=c>>2;q=c>>>0>1?c:1;if(E[b+84|0]){j=r&-2;u=r&1;b=0;while(1){f=D[z>>2];c=ai(o,x,D[y+(m<<2)>>2],0)+d|0;l=oa(w,f+c|0,o);k=H[h>>2];n=D[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;t=c<<2;e=K(P(K(K(k*K(H[t+l>>2]-H[n+t>>2]))+K(.5))));i:{if(K(L(e))>2]=g;g=t|4;e=K(P(K(K(k*K(H[g+l>>2]-H[n+g>>2]))+K(.5))));j:{if(K(L(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=K(P(K(K(k*K(H[c+l>>2]-H[c+n>>2]))+K(.5))));k:{if(K(L(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}break h}t=D[b+68>>2];j=r&-2;u=r&1;b=0;while(1){f=D[z>>2];c=ai(o,x,D[t+(D[y+(m<<2)>>2]<<2)>>2],0)+d|0;p=oa(w,f+c|0,o);k=H[h>>2];l=D[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;n=c<<2;e=K(P(K(K(k*K(H[n+p>>2]-H[l+n>>2]))+K(.5))));l:{if(K(L(e))>2]=g;g=n|4;e=K(P(K(K(k*K(H[g+p>>2]-H[l+g>>2]))+K(.5))));m:{if(K(L(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=K(P(K(K(k*K(H[c+p>>2]-H[c+l>>2]))+K(.5))));n:{if(K(L(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}}ma(w);$=v+16|0;return 1}function nh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=D[a+32>>2];e=D[c+16>>2];d=D[c+12>>2];b=D[c+20>>2];if(G[c+8>>2]>e>>>0&(d|0)>=(b|0)|(b|0)<(d|0)){f=E[e+D[c>>2]|0];d=e+1|0;b=d?b:b+1|0;D[c+16>>2]=d;D[c+20>>2]=b;c=D[a+48>>2];D[a+48>>2]=0;if(c){ba[D[D[c>>2]+4>>2]](c)}a:{b:{c:{d:{switch(f|0){case 0:c=na(384);D[c>>2]=8312;pa(c+4|0,0,80);D[c+96>>2]=0;D[c+100>>2]=0;D[c+92>>2]=-1;D[c+84>>2]=-1;D[c+88>>2]=-1;D[c+104>>2]=0;D[c+108>>2]=0;D[c+112>>2]=0;D[c+116>>2]=0;D[c+120>>2]=0;D[c+124>>2]=0;D[c+128>>2]=0;D[c+132>>2]=0;D[c+136>>2]=0;D[c+140>>2]=0;D[c+144>>2]=0;D[c+148>>2]=0;D[c+156>>2]=0;D[c+160>>2]=0;D[c+152>>2]=1065353216;D[c+164>>2]=0;D[c+168>>2]=0;D[c+172>>2]=0;D[c+176>>2]=0;D[c+180>>2]=0;D[c+184>>2]=0;D[c+188>>2]=0;D[c+192>>2]=0;D[c+196>>2]=0;D[c+200>>2]=0;D[c+204>>2]=0;D[c+208>>2]=0;D[c+212>>2]=-1;D[c+216>>2]=0;D[c+220>>2]=0;D[c+224>>2]=0;b=c+232|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;b=c+272|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;b=c+312|0;D[b>>2]=0;D[b+4>>2]=0;B[b+5|0]=0;B[b+6|0]=0;B[b+7|0]=0;B[b+8|0]=0;B[b+9|0]=0;B[b+10|0]=0;B[b+11|0]=0;B[b+12|0]=0;b=c+328|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;D[c+376>>2]=0;D[c+368>>2]=0;D[c+372>>2]=0;break c;case 2:break d;default:break b}}c=na(440);D[c>>2]=8364;pa(c+4|0,0,80);D[c+96>>2]=0;D[c+100>>2]=0;D[c+92>>2]=-1;D[c+84>>2]=-1;D[c+88>>2]=-1;D[c+104>>2]=0;D[c+108>>2]=0;D[c+112>>2]=0;D[c+116>>2]=0;D[c+120>>2]=0;D[c+124>>2]=0;D[c+128>>2]=0;D[c+132>>2]=0;D[c+136>>2]=0;D[c+140>>2]=0;D[c+144>>2]=0;D[c+148>>2]=0;D[c+156>>2]=0;D[c+160>>2]=0;D[c+152>>2]=1065353216;D[c+164>>2]=0;D[c+168>>2]=0;D[c+172>>2]=0;D[c+176>>2]=0;D[c+180>>2]=0;D[c+184>>2]=0;D[c+188>>2]=0;D[c+192>>2]=0;D[c+196>>2]=0;D[c+200>>2]=0;D[c+204>>2]=0;D[c+208>>2]=0;D[c+212>>2]=-1;D[c+216>>2]=0;D[c+220>>2]=0;D[c+224>>2]=0;b=c+232|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;b=c+272|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;b=c+312|0;D[b>>2]=0;D[b+4>>2]=0;B[b+5|0]=0;B[b+6|0]=0;B[b+7|0]=0;B[b+8|0]=0;B[b+9|0]=0;B[b+10|0]=0;B[b+11|0]=0;B[b+12|0]=0;b=c+328|0;C[b+38>>1]=0;D[b>>2]=0;D[b+8>>2]=0;D[b+12>>2]=0;D[b+16>>2]=0;D[b+20>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;B[b+29|0]=0;B[b+30|0]=0;B[b+31|0]=0;B[b+32|0]=0;B[b+33|0]=0;B[b+34|0]=0;B[b+35|0]=0;B[b+36|0]=0;D[c+392>>2]=0;D[c+396>>2]=0;D[c+384>>2]=0;D[c+388>>2]=0;D[c+376>>2]=0;D[c+380>>2]=0;D[c+368>>2]=0;D[c+372>>2]=0;D[c+416>>2]=0;D[c+420>>2]=0;D[c+408>>2]=2;D[c+412>>2]=7;D[c+400>>2]=-1;D[c+404>>2]=-1;D[c+424>>2]=0;D[c+428>>2]=0;D[c+432>>2]=0;D[c+436>>2]=0}b=D[a+48>>2];D[a+48>>2]=c;if(!b){break a}ba[D[D[b>>2]+4>>2]](b)}c=D[a+48>>2];if(c){break a}return 0}a=ba[D[D[c>>2]+8>>2]](c,a)|0}else{a=0}return a|0}function oe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=$-16|0;$=f;g=1;n=ba[D[D[a>>2]+24>>2]](a)|0;a:{if((n|0)<=0){g=0;break a}r=a+48|0;while(1){b:{c:{if(!D[(ba[D[D[a>>2]+28>>2]](a)|0)+40>>2]){break c}p=i<<2;b=D[p+D[a+36>>2]>>2];d=D[b+8>>2];e=eb(b);if(!e){break c}j=D[(ba[D[D[a>>2]+28>>2]](a)|0)+40>>2];D[f+12>>2]=D[d+56>>2];b=na(32);D[f>>2]=b;D[f+4>>2]=24;D[f+8>>2]=-2147483616;B[b+24|0]=0;d=E[1308]|E[1309]<<8|(E[1310]<<16|E[1311]<<24);c=E[1304]|E[1305]<<8|(E[1306]<<16|E[1307]<<24);B[b+16|0]=c;B[b+17|0]=c>>>8;B[b+18|0]=c>>>16;B[b+19|0]=c>>>24;B[b+20|0]=d;B[b+21|0]=d>>>8;B[b+22|0]=d>>>16;B[b+23|0]=d>>>24;d=E[1300]|E[1301]<<8|(E[1302]<<16|E[1303]<<24);c=E[1296]|E[1297]<<8|(E[1298]<<16|E[1299]<<24);B[b+8|0]=c;B[b+9|0]=c>>>8;B[b+10|0]=c>>>16;B[b+11|0]=c>>>24;B[b+12|0]=d;B[b+13|0]=d>>>8;B[b+14|0]=d>>>16;B[b+15|0]=d>>>24;d=E[1292]|E[1293]<<8|(E[1294]<<16|E[1295]<<24);c=E[1288]|E[1289]<<8|(E[1290]<<16|E[1291]<<24);B[b|0]=c;B[b+1|0]=c>>>8;B[b+2|0]=c>>>16;B[b+3|0]=c>>>24;B[b+4|0]=d;B[b+5|0]=d>>>8;B[b+6|0]=d>>>16;B[b+7|0]=d>>>24;d=j+16|0;c=D[d>>2];d:{e:{if(!c){break e}k=D[f+12>>2];b=d;while(1){h=(k|0)>D[c+16>>2];b=h?b:c;c=D[(h<<2)+c>>2];if(c){continue}break}if((b|0)==(d|0)|(k|0)>2]){break e}c=D[b+24>>2];if(!c){break e}d=E[f+11|0];h=d<<24>>24<0;k=h?D[f>>2]:f;d=h?D[f+4>>2]:d;h=b+20|0;while(1){b=E[c+27|0];l=b<<24>>24<0;b=l?D[c+20>>2]:b;q=b>>>0>>0;f:{g:{o=q?b:d;h:{if(o){m=c+16|0;l=l?D[m>>2]:m;m=va(k,l,o);i:{if(!m){if(b>>>0<=d>>>0){break i}break f}if((m|0)<0){break f}}b=va(l,k,o);if(!b){break h}if((b|0)<0){break g}b=dc(h,f);break d}if(b>>>0>d>>>0){break f}}if(q){break g}b=dc(h,f);break d}c=c+4|0}c=D[c>>2];if(c){continue}break}}b=dc(j,f)}if(B[f+11|0]<0){ma(D[f>>2])}if(!b){break c}c=D[D[p+D[a+36>>2]>>2]+8>>2];if(!D[c+64>>2]){b=na(32);D[b+16>>2]=0;D[b+20>>2]=0;D[b+8>>2]=0;D[b>>2]=0;D[b+4>>2]=0;D[b+24>>2]=0;D[b+28>>2]=0;d=D[c+64>>2];D[c+64>>2]=b;if(d){b=D[d>>2];if(b){D[d+4>>2]=b;ma(b)}ma(d);b=D[c+64>>2]}D[c>>2]=b;d=D[b+20>>2];D[c+8>>2]=D[b+16>>2];D[c+12>>2]=d;d=D[b+24>>2];b=D[b+28>>2];D[c+48>>2]=0;D[c+52>>2]=0;D[c+40>>2]=0;D[c+44>>2]=0;D[c+16>>2]=d;D[c+20>>2]=b}j:{B[c+24|0]=E[e+24|0];D[c+28>>2]=D[e+28>>2];B[c+32|0]=E[e+32|0];b=D[e+44>>2];D[c+40>>2]=D[e+40>>2];D[c+44>>2]=b;b=D[e+52>>2];D[c+48>>2]=D[e+48>>2];D[c+52>>2]=b;D[c+56>>2]=D[e+56>>2];b=D[e+12>>2];D[c+8>>2]=D[e+8>>2];D[c+12>>2]=b;b=D[e+20>>2];D[c+16>>2]=D[e+16>>2];D[c+20>>2]=b;D[c+60>>2]=D[e+60>>2];d=D[e>>2];k:{if(!d){D[c>>2]=0;b=1;break k}g=D[c>>2];b=0;if(!g){break k}b=D[d>>2];jd(g,b,D[d+4>>2]-b|0,0);b=1}if(!b){break j}B[c+84|0]=E[e+84|0];D[c+80>>2]=D[e+80>>2];if((c|0)!=(e|0)){hb(c+68|0,D[e+68>>2],D[e+72>>2])}l:{e=D[e+88>>2];m:{if(e){d=na(40);b=D[e>>2];D[d+16>>2]=0;D[d+8>>2]=0;D[d+12>>2]=0;D[d>>2]=b;g=D[e+12>>2]-D[e+8>>2]|0;if(g){if((g|0)<0){break l}b=na(g);D[d+8>>2]=b;D[d+12>>2]=b;D[d+16>>2]=b+g;j=D[e+8>>2];g=D[e+12>>2]-j|0;if((g|0)>0){b=oa(b,j,g)+g|0}D[d+12>>2]=b}b=D[e+36>>2];D[d+32>>2]=D[e+32>>2];D[d+36>>2]=b;b=D[e+28>>2];D[d+24>>2]=D[e+24>>2];D[d+28>>2]=b;b=D[c+88>>2];D[c+88>>2]=d;if(b){break m}break j}b=D[c+88>>2];D[c+88>>2]=0;if(!b){break j}}d=D[b+8>>2];if(d){D[b+12>>2]=d;ma(d)}ma(b);break j}qa();T()}break b}b=D[D[a+36>>2]+(i<<2)>>2];if(!(ba[D[D[b>>2]+24>>2]](b,r)|0)){break a}}i=i+1|0;g=(n|0)>(i|0);if((i|0)!=(n|0)){continue}break}}$=f+16|0;return(g^-1)&1}function Hd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=$+-64|0;$=f;D[f+56>>2]=0;D[f+48>>2]=0;D[f+52>>2]=0;D[f+40>>2]=0;D[f+44>>2]=0;D[f+32>>2]=0;D[f+36>>2]=0;D[f+24>>2]=0;D[f+28>>2]=0;D[f+16>>2]=0;D[f+20>>2]=0;D[f+8>>2]=0;D[f+12>>2]=0;h=f+8|0;a:{b:{if(!F[b+38>>1]){break b}if(!Ua(1,h+12|0,b)){break b}j=D[h+12>>2];e=D[h>>2];d=D[h+4>>2]-e>>2;c:{if(j>>>0>d>>>0){sa(h,j-d|0);j=D[h+12>>2];break c}if(d>>>0<=j>>>0){break c}D[h+4>>2]=e+(j<<2)}d=1;if(!j){break a}q=D[b+8>>2];n=D[b+12>>2];p=D[h>>2];while(1){e=D[b+20>>2];g=D[b+16>>2];d=0;if((n|0)<=(e|0)&q>>>0<=g>>>0|(e|0)>(n|0)){break a}s=D[b>>2];l=E[s+g|0];d=e;e=g+1|0;d=e?d:d+1|0;k=e;D[b+16>>2]=e;D[b+20>>2]=d;e=l>>>2|0;g=0;d:{e:{f:{g:{t=l&3;switch(t|0){case 3:break g;case 0:break e;default:break f}}e=e+i|0;d=0;if(e>>>0>=j>>>0){break a}pa(p+(i<<2)|0,0,(l&252)+4|0);i=e;break d}while(1){if((d|0)>=(n|0)&k>>>0>=q>>>0|(d|0)>(n|0)){break b}j=E[k+s|0];k=k+1|0;d=k?d:d+1|0;D[b+16>>2]=k;D[b+20>>2]=d;e=j<<(g<<3|6)|e;g=g+1|0;if((t|0)!=(g|0)){continue}break}}D[p+(i<<2)>>2]=e}i=i+1|0;j=D[h+12>>2];if(i>>>0>>0){continue}break}k=h+16|0;q=D[h>>2];e=D[h+16>>2];d=D[h+20>>2]-e|0;h:{if(d>>>0<=4194303){sa(k,1048576-(d>>>2|0)|0);break h}if((d|0)==4194304){break h}D[h+20>>2]=e+4194304}d=h+28|0;i=D[d>>2];e=D[h+32>>2]-i>>3;i:{if(e>>>0>>0){db(d,j-e|0);i=D[d>>2];break i}if(e>>>0>j>>>0){D[h+32>>2]=(j<<3)+i}if(!j){break b}}g=0;h=0;while(1){d=(g<<2)+q|0;n=D[d>>2];l=(g<<3)+i|0;e=h;D[l+4>>2]=e;D[l>>2]=n;d=D[d>>2];h=d+e|0;if(h>>>0>1048576){break b}j:{if(e>>>0>=h>>>0){break j}n=D[k>>2];l=0;p=d&7;if(p){while(1){D[n+(e<<2)>>2]=g;e=e+1|0;l=l+1|0;if((p|0)!=(l|0)){continue}break}}if(d-1>>>0<=6){break j}while(1){d=n+(e<<2)|0;D[d>>2]=g;D[d+28>>2]=g;D[d+24>>2]=g;D[d+20>>2]=g;D[d+16>>2]=g;D[d+12>>2]=g;D[d+8>>2]=g;D[d+4>>2]=g;e=e+8|0;if((h|0)!=(e|0)){continue}break}}g=g+1|0;if((j|0)!=(g|0)){continue}break}m=(h|0)==1048576}d=m}k:{if(!d|(D[f+20>>2]?0:a)){break k}h=0;m=$-16|0;$=m;l:{if(!Ta(1,m+8|0,b)){break l}d=D[b+8>>2];e=D[b+16>>2];g=d-e|0;j=D[m+12>>2];i=d>>>0>>0;d=D[b+20>>2];k=D[b+12>>2]-(i+d|0)|0;i=D[m+8>>2];if((j|0)==(k|0)&g>>>0>>0|j>>>0>k>>>0){break l}d=d+j|0;g=e+i|0;d=g>>>0>>0?d+1|0:d;D[b+16>>2]=g;D[b+20>>2]=d;d=i;if((d|0)<=0){break l}b=e+D[b>>2]|0;D[f+48>>2]=b;e=d-1|0;i=e+b|0;g=E[i|0];m:{if(g>>>0<=63){D[f+52>>2]=e;b=E[i|0]&63;break m}n:{switch((g>>>6|0)-1|0){case 0:if(d>>>0<2){break l}D[f+52>>2]=d-2;b=(b+d|0)-2|0;b=E[b+1|0]<<8&16128|E[b|0];break m;case 1:if(d>>>0<3){break l}D[f+52>>2]=d-3;b=(b+d|0)-3|0;b=E[b+2|0]<<16&4128768|E[b+1|0]<<8|E[b|0];break m;default:break n}}D[f+52>>2]=d-4;b=(b+d|0)-4|0;b=E[b+2|0]<<16|E[b+3|0]<<24&1056964608|E[b+1|0]<<8|E[b|0]}b=b+4194304|0;D[f+56>>2]=b;h=b>>>0<1073741824}$=m+16|0;if(!h){break k}if(!a){o=1;break k}d=D[f+36>>2];e=D[f+48>>2];i=D[f+24>>2];b=D[f+56>>2];while(1){o:{if(b>>>0>4194303){break o}o=D[f+52>>2];while(1){if((o|0)<=0){break o}o=o-1|0;D[f+52>>2]=o;b=E[e+o|0]|b<<8;D[f+56>>2]=b;if(b>>>0<4194304){continue}break}}h=b&1048575;m=D[i+(h<<2)>>2];g=d+(m<<3)|0;b=(J(D[g>>2],b>>>20|0)+h|0)-D[g+4>>2]|0;D[f+56>>2]=b;D[(r<<2)+c>>2]=m;o=1;r=r+1|0;if((r|0)!=(a|0)){continue}break}}a=D[f+36>>2];if(a){D[f+40>>2]=a;ma(a)}a=D[f+24>>2];if(a){D[f+28>>2]=a;ma(a)}a=D[f+8>>2];if(a){D[f+12>>2]=a;ma(a)}$=f- -64|0;return o}function yd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=D[a+4>>2];d=D[a>>2];f=(c-d|0)/144|0;if(f>>>0>>0){d=a;g=b-f|0;c=D[a+8>>2];a=D[a+4>>2];a:{if(g>>>0<=(c-a|0)/144>>>0){if(g){b=J(g,144)+a|0;while(1){D[a>>2]=-1;Vc(a+4|0);D[a+104>>2]=0;D[a+108>>2]=0;B[a+100|0]=1;D[a+112>>2]=0;D[a+116>>2]=0;D[a+120>>2]=0;D[a+124>>2]=0;D[a+128>>2]=0;D[a+132>>2]=0;D[a+136>>2]=0;D[a+140>>2]=0;a=a+144|0;if((b|0)!=(a|0)){continue}break}a=b}D[d+4>>2]=a;break a}b:{c:{d:{b=a;a=D[d>>2];f=(b-a|0)/144|0;h=f+g|0;if(h>>>0<29826162){b=(c-a|0)/144|0;a=b<<1;e=b>>>0<14913080?a>>>0>>0?h:a:29826161;if(e){if(e>>>0>=29826162){break d}c=na(J(e,144))}else{c=0}b=c+J(f,144)|0;h=b+J(g,144)|0;a=b;while(1){D[a>>2]=-1;Vc(a+4|0);D[a+104>>2]=0;D[a+108>>2]=0;B[a+100|0]=1;D[a+112>>2]=0;D[a+116>>2]=0;D[a+120>>2]=0;D[a+124>>2]=0;D[a+128>>2]=0;D[a+132>>2]=0;D[a+136>>2]=0;D[a+140>>2]=0;a=a+144|0;if((h|0)!=(a|0)){continue}break}f=c+J(e,144)|0;a=D[d+4>>2];e=D[d>>2];if((a|0)==(e|0)){break c}while(1){b=b-144|0;a=a-144|0;D[b>>2]=D[a>>2];D[b+4>>2]=D[a+4>>2];D[b+8>>2]=D[a+8>>2];D[b+12>>2]=D[a+12>>2];D[a+12>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[b+16>>2]=D[a+16>>2];D[b+20>>2]=D[a+20>>2];D[b+24>>2]=D[a+24>>2];D[a+24>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;c=E[a+28|0];D[b+40>>2]=0;D[b+32>>2]=0;D[b+36>>2]=0;B[b+28|0]=c;D[b+32>>2]=D[a+32>>2];D[b+36>>2]=D[a+36>>2];D[b+40>>2]=D[a+40>>2];D[a+40>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[b+52>>2]=0;D[b+44>>2]=0;D[b+48>>2]=0;D[b+44>>2]=D[a+44>>2];D[b+48>>2]=D[a+48>>2];D[b+52>>2]=D[a+52>>2];D[a+52>>2]=0;D[a+44>>2]=0;D[a+48>>2]=0;c=b- -64|0;D[c>>2]=0;D[b+56>>2]=0;D[b+60>>2]=0;D[b+56>>2]=D[a+56>>2];D[b+60>>2]=D[a+60>>2];g=c;c=a- -64|0;D[g>>2]=D[c>>2];D[c>>2]=0;D[a+56>>2]=0;D[a+60>>2]=0;D[b+68>>2]=D[a+68>>2];c=D[a+72>>2];D[b+84>>2]=0;D[b+76>>2]=0;D[b+80>>2]=0;D[b+72>>2]=c;D[b+76>>2]=D[a+76>>2];D[b+80>>2]=D[a+80>>2];D[b+84>>2]=D[a+84>>2];D[a+84>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[b+96>>2]=0;D[b+88>>2]=0;D[b+92>>2]=0;D[b+88>>2]=D[a+88>>2];D[b+92>>2]=D[a+92>>2];D[b+96>>2]=D[a+96>>2];D[a+96>>2]=0;D[a+88>>2]=0;D[a+92>>2]=0;c=E[a+100|0];D[b+112>>2]=0;D[b+104>>2]=0;D[b+108>>2]=0;B[b+100|0]=c;D[b+104>>2]=D[a+104>>2];D[b+108>>2]=D[a+108>>2];D[b+112>>2]=D[a+112>>2];D[a+112>>2]=0;D[a+104>>2]=0;D[a+108>>2]=0;D[b+124>>2]=0;D[b+116>>2]=0;D[b+120>>2]=0;D[b+116>>2]=D[a+116>>2];D[b+120>>2]=D[a+120>>2];D[b+124>>2]=D[a+124>>2];D[a+124>>2]=0;D[a+116>>2]=0;D[a+120>>2]=0;c=D[a+128>>2];D[b+140>>2]=0;D[b+132>>2]=0;D[b+136>>2]=0;D[b+128>>2]=c;D[b+132>>2]=D[a+132>>2];D[b+136>>2]=D[a+136>>2];D[b+140>>2]=D[a+140>>2];D[a+140>>2]=0;D[a+132>>2]=0;D[a+136>>2]=0;if((a|0)!=(e|0)){continue}break}D[d+8>>2]=f;a=D[d+4>>2];D[d+4>>2]=h;e=D[d>>2];D[d>>2]=b;if((a|0)==(e|0)){break b}while(1){b=D[a-12>>2];if(b){D[a-8>>2]=b;ma(b)}b=D[a-28>>2];if(b){D[a-24>>2]=b;ma(b)}b=D[a-40>>2];if(b){D[a-36>>2]=b;ma(b)}Hb(a-140|0);a=a-144|0;if((e|0)!=(a|0)){continue}break}break b}qa();T()}ra(1326);T()}D[d+8>>2]=f;D[d+4>>2]=h;D[d>>2]=b}if(e){ma(e)}}return}if(b>>>0>>0){d=d+J(b,144)|0;if((d|0)!=(c|0)){while(1){b=D[c-12>>2];if(b){D[c-8>>2]=b;ma(b)}b=D[c-28>>2];if(b){D[c-24>>2]=b;ma(b)}b=D[c-40>>2];if(b){D[c-36>>2]=b;ma(b)}Hb(c-140|0);c=c-144|0;if((d|0)!=(c|0)){continue}break}}D[a+4>>2]=d}}function Lb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=$-96|0;$=e;d=D[a+16>>2];B[e+92|0]=1;D[e+88>>2]=b;D[e+84>>2]=b;D[e+80>>2]=d;a:{if((b|0)==-1){break a}m=D[a+20>>2];f=D[m>>2];d=D[D[d>>2]+(b<<2)>>2];if(d>>>0>=D[m+4>>2]-f>>2>>>0){break a}d=D[D[a+8>>2]+(D[f+(d<<2)>>2]<<2)>>2];f=D[a+4>>2];if(!E[f+84|0]){d=D[D[f+68>>2]+(d<<2)>>2]}D[e+72>>2]=0;D[e+76>>2]=0;m=e- -64|0;D[m>>2]=0;D[m+4>>2]=0;D[e+56>>2]=0;D[e+60>>2]=0;Ha(f,d,B[f+24|0],e+56|0);d=b+1|0;m=(d>>>0)%3|0?d:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){f=m;d=h;d:{if(!D[a+28>>2]){break d}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((f|0)==-1){break b}k=D[a+20>>2];b=D[k>>2];f=D[D[D[a+16>>2]>>2]+(f<<2)>>2];if(f>>>0>=D[k+4>>2]-b>>2>>>0){break b}f=D[D[a+8>>2]+(D[(f<<2)+b>>2]<<2)>>2];b=D[a+4>>2];if(!E[b+84|0]){f=D[D[b+68>>2]+(f<<2)>>2]}D[e+48>>2]=0;D[e+52>>2]=0;D[e+40>>2]=0;D[e+44>>2]=0;D[e+32>>2]=0;D[e+36>>2]=0;Ha(b,f,B[b+24|0],e+32|0);if((d|0)==-1){break c}f=D[a+20>>2];b=D[f>>2];d=D[D[D[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=D[f+4>>2]-b>>2>>>0){break c}f=D[D[a+8>>2]+(D[b+(d<<2)>>2]<<2)>>2];b=D[a+4>>2];if(!E[b+84|0]){f=D[D[b+68>>2]+(f<<2)>>2]}D[e+24>>2]=0;D[e+28>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;Ha(b,f,B[b+24|0],e+8|0);d=D[e+8>>2];b=D[e+56>>2];f=d-b|0;k=D[e+60>>2];n=D[e+12>>2]-(k+(b>>>0>d>>>0)|0)|0;i=D[e+40>>2];d=D[e+64>>2];s=i-d|0;t=D[e+68>>2];i=D[e+44>>2]-(t+(d>>>0>i>>>0)|0)|0;u=ai(f,n,s,i);v=j-u|0;g=g-(aa+(j>>>0>>0)|0)|0;w=v;j=D[e+16>>2];u=j-d|0;t=D[e+20>>2]-((d>>>0>j>>>0)+t|0)|0;j=D[e+32>>2];v=j-b|0;k=D[e+36>>2]-((b>>>0>j>>>0)+k|0)|0;d=ai(u,t,v,k);j=w+d|0;b=aa+g|0;b=d>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=D[e+48>>2];d=D[e+72>>2];n=b-d|0;o=D[e+76>>2];x=D[e+52>>2]-(o+(b>>>0>>0)|0)|0;p=ai(f,p,n,x);f=w+p|0;b=aa+l|0;b=f>>>0

>>0?b+1|0:b;l=D[e+24>>2];p=l-d|0;d=D[e+28>>2]-((d>>>0>l>>>0)+o|0)|0;l=ai(p,d,v,k);o=f-l|0;l=b-(aa+(f>>>0>>0)|0)|0;b=ai(u,t,n,x);f=q-b|0;b=r-(aa+(b>>>0>q>>>0)|0)|0;r=ai(p,d,s,i);q=r+f|0;b=aa+b|0;b=q>>>0>>0?b+1|0:b;r=b;lc(e+80|0);b=D[e+88>>2];if((b|0)!=-1){continue}break}b=r>>31;f=b+q|0;d=b;b=b+r|0;k=f^d;h=d^(f>>>0>>0?b+1|0:b);n=-1;f=2147483647;b=l>>31;i=b;d=b+o|0;b=b+l|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^i;i=b;s=d^-1;b=b^2147483647;m=g;e:{f:{if(!D[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break e}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=a;a=b;b=g>>31;f=b+j|0;h=g;g=b;b=h+b|0;b=f>>>0>>0?b+1|0:b;h=f^g;f=h+d|0;g=b^g;b=f;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break e}b=0;a=a>>>29|0;break f}g:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break g}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(d|0)&(g^-1)>>>0>>0|d>>>0>h>>>0){break g}b=b+d|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;f=b;if(!b&a>>>0<536870913){break e}}b=f>>>29|0;a=(f&536870911)<<3|n>>>29}j=bi(j,m,a,b);o=bi(o,l,a,b);q=bi(q,r,a,b)}D[c+8>>2]=j;D[c+4>>2]=o;D[c>>2]=q;$=e+96|0;return}ua();T()}ua();T()}ua();T()}function Jc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}d=D[a+12>>2];c=D[a+8>>2];if(d-c>>2>>>0<=b>>>0){break a}e=c+(b<<2)|0;f=D[e>>2];i=D[f+60>>2];g=D[f+56>>2];c=e+4|0;b:{if((c|0)!=(d|0)){while(1){h=D[c>>2];D[c>>2]=0;D[e>>2]=h;if(f){ya(f)}e=e+4|0;c=c+4|0;if((c|0)!=(d|0)){f=D[e>>2];continue}break}d=D[a+12>>2];if((e|0)==(d|0)){break b}}while(1){d=d-4|0;c=D[d>>2];D[d>>2]=0;if(c){ya(c)}if((d|0)!=(e|0)){continue}break}}D[a+12>>2]=e;f=D[a+4>>2];c:{if(!f|(i|0)<0){break c}d=D[f+24>>2];c=D[f+28>>2];if((d|0)==(c|0)){break c}while(1){if((i|0)==D[D[d>>2]+24>>2]){e=d+4|0;i=D[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=D[e>>2];D[e>>2]=0;c=D[d>>2];D[d>>2]=h;if(c){Ca(c+12|0,D[c+16>>2]);Ba(c,D[c+4>>2]);ma(c)}d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=D[f+28>>2];if((e|0)==(d|0)){break d}}while(1){e=e-4|0;c=D[e>>2];D[e>>2]=0;if(c){Ca(c+12|0,D[c+16>>2]);Ba(c,D[c+4>>2]);ma(c)}if((d|0)!=(e|0)){continue}break}}D[f+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=J(g,12)+a|0;d=D[e+20>>2];c=D[e+24>>2];if((d|0)==(c|0)){break f}while(1){if(D[d>>2]==(b|0)){break f}d=d+4|0;if((c|0)!=(d|0)){continue}break}break e}if((d|0)==(c|0)){break e}f=d+4|0;c=c-f|0;if(c){Pa(d,f,c)}D[e+24>>2]=d+c}e=D[a+20>>2];c=D[a+24>>2]-e|0;g:{if(!c){break g}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=D[h>>2];if((j|0)>(b|0)){D[h>>2]=j-1}g=e+(g|4)|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break g}d=e+(d<<2)|0;c=D[d>>2];if((c|0)<=(b|0)){break g}D[d>>2]=c-1}e=D[a+32>>2];c=D[a+36>>2]-e|0;h:{if(!c){break h}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=D[h>>2];if((j|0)>(b|0)){D[h>>2]=j-1}g=e+(g|4)|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break h}d=e+(d<<2)|0;c=D[d>>2];if((c|0)<=(b|0)){break h}D[d>>2]=c-1}e=D[a+44>>2];c=D[a+48>>2]-e|0;i:{if(!c){break i}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=D[h>>2];if((j|0)>(b|0)){D[h>>2]=j-1}g=e+(g|4)|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break i}d=e+(d<<2)|0;c=D[d>>2];if((c|0)<=(b|0)){break i}D[d>>2]=c-1}e=D[a+56>>2];c=D[a+60>>2]-e|0;j:{if(!c){break j}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=D[h>>2];if((j|0)>(b|0)){D[h>>2]=j-1}g=e+(g|4)|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break j}d=e+(d<<2)|0;c=D[d>>2];if((c|0)<=(b|0)){break j}D[d>>2]=c-1}c=D[a+72>>2];a=D[a+68>>2];c=c-a|0;if(!c){break a}d=c>>2;e=d>>>0>1?d:1;f=e&1;d=0;if(c>>>0>=8){e=e&-2;c=0;while(1){i=d<<2;g=i+a|0;h=D[g>>2];if((h|0)>(b|0)){D[g>>2]=h-1}i=a+(i|4)|0;g=D[i>>2];if((g|0)>(b|0)){D[i>>2]=g-1}d=d+2|0;c=c+2|0;if((e|0)!=(c|0)){continue}break}}if(!f){break a}c=b;a=a+(d<<2)|0;b=D[a>>2];if((c|0)>=(b|0)){break a}D[a>>2]=b-1}}function ma(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=D[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=D[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=D[d+8>>2];b=b>>>3|0;c=D[d+12>>2];if((c|0)==(e|0)){i=11520,j=D[2880]&ei(b),D[i>>2]=j;break b}D[e+12>>2]=c;D[c+8>>2]=e;break b}h=D[d+24>>2];b=D[d+12>>2];c:{if((d|0)!=(b|0)){c=D[d+8>>2];D[c+12>>2]=b;D[b+8>>2]=c;break c}d:{e=d+20|0;c=D[e>>2];if(c){break d}e=d+16|0;c=D[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=D[e>>2];if(c){continue}e=b+16|0;c=D[b+16>>2];if(c){continue}break}D[g>>2]=0}if(!h){break b}e=D[d+28>>2];c=(e<<2)+11824|0;e:{if(D[c>>2]==(d|0)){D[c>>2]=b;if(b){break e}i=11524,j=D[2881]&ei(e),D[i>>2]=j;break b}D[h+(D[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}D[b+24>>2]=h;c=D[d+16>>2];if(c){D[b+16>>2]=c;D[c+24>>2]=b}c=D[d+20>>2];if(!c){break b}D[b+20>>2]=c;D[c+24>>2]=b;break b}b=D[f+4>>2];if((b&3)!=3){break b}D[2882]=a;D[f+4>>2]=b&-2;D[d+4>>2]=a|1;D[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=D[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(D[2886]==(f|0)){D[2886]=d;a=D[2883]+a|0;D[2883]=a;D[d+4>>2]=a|1;if(D[2885]!=(d|0)){break a}D[2882]=0;D[2885]=0;return}if(D[2885]==(f|0)){D[2885]=d;a=D[2882]+a|0;D[2882]=a;D[d+4>>2]=a|1;D[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=D[f+8>>2];b=b>>>3|0;c=D[f+12>>2];if((c|0)==(e|0)){i=11520,j=D[2880]&ei(b),D[i>>2]=j;break g}D[e+12>>2]=c;D[c+8>>2]=e;break g}h=D[f+24>>2];b=D[f+12>>2];h:{if((f|0)!=(b|0)){c=D[f+8>>2];D[c+12>>2]=b;D[b+8>>2]=c;break h}i:{e=f+20|0;c=D[e>>2];if(c){break i}e=f+16|0;c=D[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=D[e>>2];if(c){continue}e=b+16|0;c=D[b+16>>2];if(c){continue}break}D[g>>2]=0}if(!h){break g}e=D[f+28>>2];c=(e<<2)+11824|0;j:{if(D[c>>2]==(f|0)){D[c>>2]=b;if(b){break j}i=11524,j=D[2881]&ei(e),D[i>>2]=j;break g}D[h+(D[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}D[b+24>>2]=h;c=D[f+16>>2];if(c){D[b+16>>2]=c;D[c+24>>2]=b}c=D[f+20>>2];if(!c){break g}D[b+20>>2]=c;D[c+24>>2]=b}D[d+4>>2]=a|1;D[a+d>>2]=a;if(D[2885]!=(d|0)){break f}D[2882]=a;return}D[f+4>>2]=b&-2;D[d+4>>2]=a|1;D[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+11560|0;c=D[2880];a=1<>2]}D[b+8>>2]=d;D[a+12>>2]=d;D[d+12>>2]=b;D[d+8>>2]=a;return}e=31;D[d+16>>2]=0;D[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}D[d+28>>2]=e;g=(e<<2)+11824|0;l:{m:{c=D[2881];b=1<>2]=d;D[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=D[g>>2];while(1){c=b;if((D[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=D[g+16>>2];if(b){continue}break}D[g+16>>2]=d;D[d+24>>2]=c}D[d+12>>2]=d;D[d+8>>2]=d;break l}a=D[c+8>>2];D[a+12>>2]=d;D[c+8>>2]=d;D[d+24>>2]=0;D[d+12>>2]=c;D[d+8>>2]=a}a=D[2888]-1|0;D[2888]=a?a:-1}}function sd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=K(0),l=0,m=0,n=K(0);j=D[c>>2];a:{b:{f=D[b+4>>2];if(!f){break b}g=di(f);c:{if(g>>>0>=2){e=j;if(e>>>0>=f>>>0){e=(j>>>0)%(f>>>0)|0}c=D[D[b>>2]+(e<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=D[c>>2];if(!c){break b}g=D[c+4>>2];if((g|0)!=(j|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if(D[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&j;c=D[D[b>>2]+(e<<2)>>2];if(!c){break b}}g=f-1|0;while(1){c=D[c>>2];if(!c){break b}h=D[c+4>>2];if((h|0)!=(j|0)&(g&h)!=(e|0)){break b}if(D[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=na(16);d=D[D[d>>2]>>2];D[c+12>>2]=0;D[c+8>>2]=d;D[c+4>>2]=j;D[c>>2]=0;n=K(D[b+12>>2]+1>>>0);k=H[b+16>>2];d:{if(n>K(k*K(f>>>0))?0:f){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;e=2;k=K(Q(K(n/k)));e:{if(k=K(0)){d=~~k>>>0;break e}d=0}d=d>>>0>g>>>0?d:g;f:{if((d|0)==1){break f}if(!(d&d-1)){e=d;break f}e=Ic(d);f=D[b+4>>2]}g:{if(e>>>0<=f>>>0){if(e>>>0>=f>>>0){break g}g=f>>>0<3;k=K(Q(K(K(G[b+12>>2])/H[b+16>>2])));h:{if(k=K(0)){d=~~k>>>0;break h}d=0}i:{j:{if(g){break j}if(di(f)>>>0>1){break j}d=d>>>0<2?d:1<<32-M(d-1|0);break i}d=Ic(d)}e=d>>>0>e>>>0?d:e;if(e>>>0>=f>>>0){break g}}f=0;h=e;k:{l:{m:{n:{if(e){if(h>>>0>=1073741824){break n}e=na(h<<2);d=D[b>>2];D[b>>2]=e;if(d){ma(d)}D[b+4>>2]=h;e=0;if(h-1>>>0>=3){g=h&-4;while(1){d=e<<2;D[d+D[b>>2]>>2]=0;D[D[b>>2]+(d|4)>>2]=0;D[D[b>>2]+(d|8)>>2]=0;D[D[b>>2]+(d|12)>>2]=0;e=e+4|0;f=f+4|0;if((g|0)!=(f|0)){continue}break}}d=h&3;if(d){while(1){D[D[b>>2]+(e<<2)>>2]=0;e=e+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}f=D[b+8>>2];if(!f){break k}d=b+8|0;g=D[f+4>>2];e=di(h);if(e>>>0<2){break m}g=g>>>0>=h>>>0?(g>>>0)%(h>>>0)|0:g;D[D[b>>2]+(g<<2)>>2]=d;d=D[f>>2];if(!d){break k}if(e>>>0<=1){break l}while(1){i=D[d+4>>2];if(h>>>0<=i>>>0){i=(i>>>0)%(h>>>0)|0}o:{if((g|0)==(i|0)){f=d;break o}e=d;l=i<<2;m=l+D[b>>2]|0;if(!D[m>>2]){D[m>>2]=f;f=d;g=i;break o}while(1){i=e;e=D[e>>2];if(D[d+8>>2]==D[e+8>>2]?e:0){continue}break}D[f>>2]=e;D[i>>2]=D[D[l+D[b>>2]>>2]>>2];D[D[l+D[b>>2]>>2]>>2]=d}d=D[f>>2];if(d){continue}break}break k}d=D[b>>2];D[b>>2]=0;if(d){ma(d)}D[b+4>>2]=0;break k}ra(1326);T()}g=h-1&g;D[D[b>>2]+(g<<2)>>2]=d;d=D[f>>2];if(!d){break k}}l=h-1|0;while(1){h=l&D[d+4>>2];p:{if((h|0)==(g|0)){f=d;break p}e=d;i=h<<2;m=i+D[b>>2]|0;if(D[m>>2]){while(1){h=e;e=D[e>>2];if(D[d+8>>2]==D[e+8>>2]?e:0){continue}break}D[f>>2]=e;D[h>>2]=D[D[i+D[b>>2]>>2]>>2];D[D[i+D[b>>2]>>2]>>2]=d;break p}D[m>>2]=f;f=d;g=h}d=D[f>>2];if(d){continue}break}}}f=D[b+4>>2];d=f-1|0;if(!(d&f)){e=d&j;break d}if(f>>>0>j>>>0){e=j;break d}e=(j>>>0)%(f>>>0)|0}e=D[b>>2]+(e<<2)|0;d=D[e>>2];q:{if(!d){D[c>>2]=D[b+8>>2];D[b+8>>2]=c;D[e>>2]=b+8;d=D[c>>2];if(!d){break q}d=D[d+4>>2];e=f-1|0;r:{if(!(e&f)){d=d&e;break r}if(d>>>0>>0){break r}d=(d>>>0)%(f>>>0)|0}D[D[b>>2]+(d<<2)>>2]=c;break q}D[c>>2]=D[d>>2];D[d>>2]=c}D[b+12>>2]=D[b+12>>2]+1;b=1}B[a+4|0]=b;D[a>>2]=c}function Xh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;D[a+8>>2]=e;d=a+32|0;k=D[d>>2];f=D[a+36>>2]-k>>2;a:{if(f>>>0>>0){sa(d,e-f|0);k=D[d>>2];d=D[a+8>>2];break a}if(e>>>0>>0){D[a+36>>2]=(e<<2)+k}d=e}q=D[a+52>>2];n=D[a+48>>2];f=0;m=(e&1073741823)!=(e|0)?-1:e<<2;m=pa(na(m),0,m);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=D[d+m>>2];i=D[a+16>>2];c:{if((g|0)>(i|0)){D[d+k>>2]=i;break c}d=d+k|0;i=D[a+12>>2];if((i|0)>(g|0)){D[d>>2]=i;break c}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=D[b+g>>2]+D[g+k>>2]|0;D[d>>2]=g;d:{if((g|0)>D[a+16>>2]){h=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break d}h=g+D[a+20>>2]|0}D[d>>2]=h}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=D[a+56>>2];o=D[f>>2];f=D[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=J(e,k);f=D[(k<<2)+o>>2];if((f|0)==-1){break f}f=D[D[n+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}i=D[q>>2];g=D[n>>2];j=D[i+(D[g+(f<<2)>>2]<<2)>>2];h=f+1|0;h=(h>>>0)%3|0?h:f-2|0;if((h|0)!=-1){h=D[g+(h<<2)>>2]}else{h=-1}g:{h:{if((f>>>0)%3|0){f=f-1|0;break h}f=f+2|0;l=-1;if((f|0)==-1){break g}}l=D[g+(f<<2)>>2]}if((j|0)>=(k|0)){break f}f=D[(h<<2)+i>>2];if((f|0)>=(k|0)){break f}g=D[i+(l<<2)>>2];if((g|0)>=(k|0)){break f}i:{if((e|0)<=0){break i}g=J(e,g);i=J(e,f);j=J(e,j);f=0;l=0;if((e|0)!=1){while(1){D[m+(f<<2)>>2]=(D[(f+g<<2)+c>>2]+D[(f+i<<2)+c>>2]|0)-D[(f+j<<2)+c>>2];h=f|1;D[m+(h<<2)>>2]=(D[(g+h<<2)+c>>2]+D[(i+h<<2)+c>>2]|0)-D[(h+j<<2)+c>>2];f=f+2|0;l=l+2|0;if((t|0)!=(l|0)){continue}break}}if(!u){break i}D[m+(f<<2)>>2]=(D[(f+g<<2)+c>>2]+D[(f+i<<2)+c>>2]|0)-D[(f+j<<2)+c>>2]}if((d|0)<=0){break e}i=D[a+32>>2];f=0;while(1){d=f<<2;g=D[d+m>>2];j=D[a+16>>2];j:{if((g|0)>(j|0)){D[d+i>>2]=j;break j}d=d+i|0;j=D[a+12>>2];if((j|0)>(g|0)){D[d>>2]=j;break j}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=D[g+h>>2]+D[g+i>>2]|0;D[d>>2]=g;k:{if((g|0)>D[a+16>>2]){l=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break k}l=g+D[a+20>>2]|0}D[d>>2]=l}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}ua();T()}if((d|0)<=0){break e}j=(J(k-1|0,e)<<2)+c|0;i=D[a+32>>2];f=0;while(1){d=f<<2;g=D[d+j>>2];h=D[a+16>>2];l:{if((g|0)>(h|0)){D[d+i>>2]=h;break l}d=d+i|0;h=D[a+12>>2];if((h|0)>(g|0)){D[d>>2]=h;break l}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=D[g+h>>2]+D[g+i>>2]|0;D[d>>2]=g;m:{if((g|0)>D[a+16>>2]){l=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break m}l=g+D[a+20>>2]|0}D[d>>2]=l}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}ma(m);return 1}function Tc(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;D[a+56>>2]=D[a+52>>2];D[a+44>>2]=D[a+40>>2];a:{b:{c:{e=D[a+64>>2];c=D[e+24>>2];if((c|0)!=D[e+28>>2]){while(1){d=b;i=D[(j<<2)+c>>2];d:{if((i|0)==-1){break d}b=D[a+56>>2];e:{if((b|0)!=D[a+60>>2]){D[b>>2]=d;D[a+56>>2]=b+4;break e}e=D[a+52>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break c}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=na(f<<2)}else{b=0}g=b+(g<<2)|0;D[g>>2]=d;if((c|0)>0){oa(b,e,c)}D[a+60>>2]=b+(f<<2);D[a+56>>2]=g+4;D[a+52>>2]=b;if(!e){break e}ma(e)}f:{if(!(D[D[a+12>>2]+(j>>>3&536870908)>>2]>>>j&1)){break f}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1){break f}e=D[a>>2];if(D[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=D[D[D[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break f}f=D[a+64>>2];while(1){i=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|D[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=D[D[f+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}D[D[a+28>>2]+(i<<2)>>2]=d;b=D[a+44>>2];g:{if((b|0)!=D[a+48>>2]){D[b>>2]=i;D[a+44>>2]=b+4;break g}e=D[a+40>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=na(f<<2)}else{b=0}g=b+(g<<2)|0;D[g>>2]=i;if((c|0)>0){oa(b,e,c)}D[a+48>>2]=b+(f<<2);D[a+44>>2]=g+4;D[a+40>>2]=b;if(!e){break g}ma(e)}b=d+1|0;e=D[a+64>>2];h:{if((i>>>0)%3|0){c=i-1|0;break h}c=i+2|0;if((c|0)==-1){break d}}c=D[D[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(i|0)){break d}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(D[D[a>>2]+(e>>>3&536870908)>>2]>>>e&1){d=D[a+56>>2];i:{if((d|0)!=D[a+60>>2]){D[d>>2]=b;D[a+56>>2]=d+4;break i}f=D[a+52>>2];e=d-f|0;h=e>>2;d=h+1|0;if(d>>>0>=1073741824){break c}g=e>>1;g=e>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break a}d=na(g<<2)}else{d=0}h=d+(h<<2)|0;D[h>>2]=b;if((e|0)>0){oa(d,f,e)}D[a+60>>2]=d+(g<<2);D[a+56>>2]=h+4;D[a+52>>2]=d;if(!f){break i}ma(f)}e=b+1|0;d=D[a+44>>2];j:{if((d|0)!=D[a+48>>2]){D[d>>2]=c;D[a+44>>2]=d+4;break j}g=D[a+40>>2];f=d-g|0;k=f>>2;d=k+1|0;if(d>>>0>=1073741824){break b}h=f>>1;h=f>>>0<2147483644?d>>>0>h>>>0?d:h:1073741823;if(h){if(h>>>0>=1073741824){break a}d=na(h<<2)}else{d=0}k=d+(k<<2)|0;D[k>>2]=c;if((f|0)>0){oa(d,g,f)}D[a+48>>2]=d+(h<<2);D[a+44>>2]=k+4;D[a+40>>2]=d;if(!g){break j}ma(g)}d=b;b=e}D[D[a+28>>2]+(c<<2)>>2]=d;e=D[a+64>>2];k:{if((c>>>0)%3|0){c=c-1|0;break k}c=c+2|0;if((c|0)==-1){break d}}c=D[D[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break d}if((c|0)!=(i|0)){continue}break}}j=j+1|0;c=D[e+24>>2];if(j>>>0>2]-c>>2>>>0){continue}break}}return}qa();T()}qa();T()}ra(1326);T()}function ce(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;D[a+8>>2]=e;d=a+32|0;k=D[d>>2];f=D[a+36>>2]-k>>2;a:{if(f>>>0>>0){sa(d,e-f|0);k=D[d>>2];d=D[a+8>>2];break a}if(e>>>0>>0){D[a+36>>2]=(e<<2)+k}d=e}q=D[a+52>>2];m=D[a+48>>2];f=0;l=(e&1073741823)!=(e|0)?-1:e<<2;l=pa(na(l),0,l);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=D[d+l>>2];h=D[a+16>>2];c:{if((g|0)>(h|0)){D[d+k>>2]=h;break c}d=d+k|0;h=D[a+12>>2];if((h|0)>(g|0)){D[d>>2]=h;break c}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=D[b+g>>2]+D[g+k>>2]|0;D[d>>2]=g;d:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break d}g=g+D[a+20>>2]|0}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=D[a+56>>2];o=D[f>>2];f=D[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=J(e,k);f=D[(k<<2)+o>>2];if((f|0)==-1|D[D[m>>2]+(f>>>3&536870908)>>2]>>>f&1){break f}f=D[D[D[m+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}h=D[q>>2];g=D[m+28>>2];j=D[h+(D[g+(f<<2)>>2]<<2)>>2];if((j|0)>=(k|0)){break f}i=f+1|0;i=D[h+(D[g+(((i>>>0)%3|0?i:f-2|0)<<2)>>2]<<2)>>2];if((i|0)>=(k|0)){break f}f=D[h+(D[g+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(k|0)){break f}g:{if((e|0)<=0){break g}g=J(e,f);h=J(e,i);j=J(e,j);f=0;n=0;if((e|0)!=1){while(1){D[l+(f<<2)>>2]=(D[(f+g<<2)+c>>2]+D[(f+h<<2)+c>>2]|0)-D[(f+j<<2)+c>>2];i=f|1;D[l+(i<<2)>>2]=(D[(g+i<<2)+c>>2]+D[(h+i<<2)+c>>2]|0)-D[(j+i<<2)+c>>2];f=f+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(!u){break g}D[l+(f<<2)>>2]=(D[(f+g<<2)+c>>2]+D[(f+h<<2)+c>>2]|0)-D[(f+j<<2)+c>>2]}if((d|0)<=0){break e}h=D[a+32>>2];f=0;while(1){d=f<<2;g=D[d+l>>2];j=D[a+16>>2];h:{if((g|0)>(j|0)){D[d+h>>2]=j;break h}d=d+h|0;j=D[a+12>>2];if((j|0)>(g|0)){D[d>>2]=j;break h}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=D[g+i>>2]+D[g+h>>2]|0;D[d>>2]=g;i:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break i}g=g+D[a+20>>2]|0}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}ua();T()}if((d|0)<=0){break e}j=(J(k-1|0,e)<<2)+c|0;h=D[a+32>>2];f=0;while(1){d=f<<2;g=D[d+j>>2];i=D[a+16>>2];j:{if((g|0)>(i|0)){D[d+h>>2]=i;break j}d=d+h|0;i=D[a+12>>2];if((i|0)>(g|0)){D[d>>2]=i;break j}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=D[g+i>>2]+D[g+h>>2]|0;D[d>>2]=g;k:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break k}g=g+D[a+20>>2]|0}D[d>>2]=g}d=D[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}ma(l);return 1}function kd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}c=(b>>>0)/3|0;if(!(D[D[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=D[a+48>>2];D[a+52>>2]=d;a:{if((d|0)!=D[a+56>>2]){D[d>>2]=b;D[a+52>>2]=d+4;break a}e=na(4);D[e>>2]=b;f=e+4|0;D[a+56>>2]=f;D[a+52>>2]=f;D[a+48>>2]=e;if(!d){break a}ma(d)}f=D[D[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=D[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-J(c,3)|0?-1:2)+b|0;c=D[f+(g<<2)>>2];if((c|0)==-1){return 0}b=D[a+36>>2];f=b+(d>>>3&536870908)|0;h=D[f>>2];i=1<>2]=h|i;Ja(a+8|0,d,e);b=D[a+36>>2]}b=(c>>>3&536870908)+b|0;d=D[b>>2];e=1<>2]=d|e;Ja(a+8|0,c,g)}c=D[a+52>>2];if((c|0)==D[a+48>>2]){return 1}k=a+8|0;while(1){c=c-4|0;b=D[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=D[a+24>>2]+(d>>>3&268435452)|0;f=D[e>>2];d=1<>2]=d|f;e=D[a+4>>2];d=D[D[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=D[a+36>>2]+(d>>>3&536870908)|0;g=D[f>>2];h=1<>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}D[f>>2]=g|h;Ja(k,d,c);break e}D[f>>2]=g|h;Ja(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=D[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|D[D[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=D[D[D[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<>2];i=d>>>5|0;f=D[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=D[a+4>>2];if(!((b|0)==-1|D[D[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=D[D[D[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(D[D[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=D[D[D[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;f=(d>>>0)/3|0;h=(d|0)==-1;if(!h){c=D[a+24>>2];h=h?-1:f;i=h>>>5|0;f=D[c+(i<<2)>>2];h=1<>2];i=g>>>5|0;f=D[c+(i<<2)>>2];if(!(h&f)){break d}}c=D[a+52>>2]-4|0;D[a+52>>2]=c;break b}if(j){b=d;break d}if(D[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=D[a+52>>2];D[c-4>>2]=b;if((c|0)!=D[a+56>>2]){D[c>>2]=d;c=c+4|0;break c}m:{f=D[a+48>>2];e=c-f|0;c=e>>2;b=c+1|0;if(b>>>0<1073741824){g=e>>1;g=e>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break m}b=na(g<<2)}else{b=0}c=b+(c<<2)|0;D[c>>2]=d;c=c+4|0;if((e|0)>0){oa(b,f,e)}D[a+56>>2]=b+(g<<2);D[a+52>>2]=c;D[a+48>>2]=b;if(!f){break b}ma(f);c=D[a+52>>2];break b}qa();T()}ra(1326);T()}D[(i<<2)+c>>2]=f|h;d=D[D[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}D[a+52>>2]=c}if(D[a+48>>2]!=(c|0)){continue}break}}return 1}function Ub(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=J(b,12)+a|0;D[i+12>>2]=D[i+8>>2];k=(c|0)==-1?-1:(c>>>0)/3|0;n=1;j=c;a:{b:{c:{while(1){d:{o=e&1;if(o){if((j|0)==-1){break d}if((Rc(a,((j>>>0)%3|0?-1:2)+j|0)|0)==-1){break a}c=j+1|0;d=(c>>>0)%3|0?c:j-2|0;if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}d=D[D[D[a+4>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}k=(c>>>0)/3|0}g=1<>2]+(k>>>3&536870908)|0;l=D[m>>2];e:{if(g&l){break e}e=0;while(1){D[m>>2]=g|l;d=D[i+12>>2];f:{if((d|0)!=D[i+16>>2]){D[d>>2]=k;D[i+12>>2]=d+4;break f}l=D[i+8>>2];g=d-l|0;h=g>>2;f=h+1|0;if(f>>>0>=1073741824){break c}d=g>>1;f=g>>>0<2147483644?d>>>0>>0?f:d:1073741823;if(f){if(f>>>0>=1073741824){break b}d=na(f<<2)}else{d=0}h=d+(h<<2)|0;D[h>>2]=k;if((g|0)>0){oa(d,l,g)}D[i+8>>2]=d;D[i+12>>2]=h+4;D[i+16>>2]=d+(f<<2);if(!l){break f}ma(l)}h=e+1|0;g:{h:{i:{if(!e){break i}if(h&1){if((c|0)==-1){c=-1;break g}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;break i}j=o?c:j;if((c|0)==-1){c=-1;break g}if((c>>>0)%3|0){e=c-1|0;break h}c=c+2|0}d=c;c=-1;e=d;if((d|0)==-1){break g}}c=D[D[D[a+4>>2]+12>>2]+(e<<2)>>2];m=-1;l=-1;d=e+1|0;f=(d>>>0)%3|0?d:e-2|0;if((f|0)>=0){d=(f>>>0)/3|0;l=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(f-J(d,3)<<2)>>2]}j:{if((c|0)==-1){g=1;break j}g=0;f=((c>>>0)%3|0?-1:2)+c|0;if((f|0)<0){break j}d=(f>>>0)/3|0;m=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(f-J(d,3)<<2)>>2]}if((l|0)!=(m|0)){c=-1;break g}k:{l:{e=((e>>>0)%3|0?-1:2)+e|0;m:{n:{if((e|0)>=0){d=(e>>>0)/3|0;m=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(e-J(d,3)<<2)>>2];e=-1;if(!g){break n}break m}m=-1;if(g){break l}}d=c+1|0;e=(d>>>0)%3|0?d:c-2|0;if((e|0)<0){e=-1;break m}d=(e>>>0)/3|0;e=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(e-J(d,3)<<2)>>2]}if((e|0)!=(m|0)){c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}e=h;k=(c>>>0)/3|0;m=D[a+56>>2]+(k>>>3&268435452)|0;l=D[m>>2];g=1<>2]-4|0;h=D[f>>2];e=D[a+56>>2]+(h>>>3&536870908)|0;d=D[e>>2];p=e,q=ei(h)&d,D[p>>2]=q;D[i+12>>2]=f}e=1;d=n;n=0;if(d){continue}break a}break}j=-1;Rc(a,-1);break a}qa();T()}ra(1326);T()}D[((b<<2)+a|0)+44>>2]=j;f=D[i+8>>2];b=D[i+12>>2]-f|0;o:{if(!b){break o}j=D[a+56>>2];a=b>>2;a=a>>>0>1?a:1;h=a&1;c=0;if(b>>>0>=8){n=a&-2;k=0;while(1){e=c<<2;d=D[e+f>>2];b=j+(d>>>3&536870908)|0;a=D[b>>2];p=b,q=ei(d)&a,D[p>>2]=q;d=D[f+(e|4)>>2];b=j+(d>>>3&536870908)|0;a=D[b>>2];p=b,q=ei(d)&a,D[p>>2]=q;c=c+2|0;k=k+2|0;if((n|0)!=(k|0)){continue}break}}if(!h){break o}c=D[f+(c<<2)>>2];b=j+(c>>>3&536870908)|0;a=D[b>>2];p=b,q=ei(c)&a,D[p>>2]=q}}function ld(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(D[D[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=D[a+48>>2];D[a+52>>2]=c;a:{if((c|0)!=D[a+56>>2]){D[c>>2]=b;D[a+52>>2]=c+4;break a}e=na(4);D[e>>2]=b;f=e+4|0;D[a+56>>2]=f;D[a+52>>2]=f;D[a+48>>2]=e;if(!c){break a}ma(c)}e=-1;f=D[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=D[D[f>>2]+(g<<2)>>2]}b:{h=b-J(d,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}d=D[D[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=D[a+36>>2];f=c+(e>>>3&536870908)|0;i=D[f>>2];j=1<>2]=i|j;Ja(a+8|0,e,g);c=D[a+36>>2]}c=(d>>>3&536870908)+c|0;e=D[c>>2];f=1<>2]=e|f;Ja(a+8|0,d,(h?-1:2)+b|0)}c=D[a+52>>2];if((c|0)==D[a+48>>2]){return 1}j=a+8|0;while(1){c=c-4|0;b=D[c>>2];d=(b>>>0)/3|0;c:{d:{if((b|0)==-1){break d}e=D[a+24>>2]+(d>>>3&268435452)|0;f=D[e>>2];d=1<>2]=d|f;while(1){d=D[a+4>>2];c=D[D[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=D[a+36>>2]+(c>>>3&536870908)|0;f=D[e>>2];g=1<>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=D[D[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}D[e>>2]=f|g;Ja(j,c,b);break f}D[e>>2]=f|g;Ja(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=D[D[D[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];h=c>>>5|0;d=D[e+(h<<2)>>2];break e}c=-1;f=D[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=D[D[f+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=D[D[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;d=(c>>>0)/3|0;k:{g=(c|0)==-1;if(!g){e=D[a+24>>2];g=g?-1:d;h=g>>>5|0;d=D[e+(h<<2)>>2];g=1<>2];h=f>>>5|0;d=D[e+(h<<2)>>2];if(!(g&d)){break e}}c=D[a+52>>2]-4|0;D[a+52>>2]=c;break c}if(i){b=c;break e}if(D[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=D[a+52>>2];D[d-4>>2]=b;if((d|0)!=D[a+56>>2]){D[d>>2]=c;c=d+4|0;break d}l:{e=D[a+48>>2];d=d-e|0;g=d>>2;b=g+1|0;if(b>>>0<1073741824){f=d>>1;f=d>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break l}b=na(f<<2)}else{b=0}g=b+(g<<2)|0;D[g>>2]=c;c=g+4|0;if((d|0)>0){oa(b,e,d)}D[a+56>>2]=b+(f<<2);D[a+52>>2]=c;D[a+48>>2]=b;if(!e){break c}ma(e);c=D[a+52>>2];break c}qa();T()}ra(1326);T()}D[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}D[a+52>>2]=c}if(D[a+48>>2]!=(c|0)){continue}break}}return 1}function wc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{n=ba[D[D[a>>2]+44>>2]](a)|0;if((n|0)<=0){break a}e=D[b+4>>2]-D[b>>2]>>2;g=$+-64|0;$=g;d=mb(g);f=J(D[2549],n);$b(d,D[D[a+8>>2]+56>>2],n<<24>>24,5,0,f,f>>31);f=na(96);d=_b(f,d);B[d+84|0]=1;D[d+72>>2]=D[d+68>>2];Zb(d,e);D[d+60>>2]=D[D[a+8>>2]+60>>2];d=D[a+16>>2];D[a+16>>2]=f;if(d){ya(d)}$=g- -64|0;g=D[a+16>>2];if(!D[g+80>>2]){break a}i=D[D[g>>2]>>2];if(!i){break a}h=D[c+12>>2];d=D[c+20>>2];j=D[c+8>>2];f=D[c+16>>2];if((h|0)<=(d|0)&j>>>0<=f>>>0|(d|0)>(h|0)){break a}k=J(e,n);i=i+D[g+48>>2]|0;l=D[c>>2];m=E[l+f|0];g=f+1|0;e=g?d:d+1|0;D[c+16>>2]=g;D[c+20>>2]=e;b:{c:{d:{if(m){if(kc(k,n,c,i)){break d}break a}if((e|0)>=(h|0)&g>>>0>=j>>>0|(e|0)>(h|0)){break a}g=E[g+l|0];e=f+2|0;d=e>>>0<2?d+1|0:d;D[c+16>>2]=e;D[c+20>>2]=d;d=D[D[a+16>>2]+64>>2];d=D[d+4>>2]-D[d>>2]|0;e:{if((g|0)==D[2549]){e=d;d=k<<2;if(e>>>0>>0){break a}h=D[c+8>>2];g=D[c+12>>2];e=D[c+20>>2];j=D[c+16>>2];f=d+j|0;e=f>>>0>>0?e+1|0:e;if((e|0)<=(g|0)&f>>>0<=h>>>0|(e|0)<(g|0)){break e}break a}if(d>>>0>>0){break a}h=D[c+12>>2];e=D[c+20>>2];l=D[c+8>>2];f=l;j=D[c+16>>2];d=g;p=f-j>>>0>>0;f=h-(e+(f>>>0>>0)|0)|0;m=aa;if(p&(f|0)<=(m|0)|(f|0)<(m|0)){break a}f=1;if(!k){break c}f=0;m=l;l=d+j|0;e=l>>>0>>0?e+1|0:e;if(m>>>0>>0&(e|0)>=(h|0)|(e|0)>(h|0)){break b}while(1){oa(i+(o<<2)|0,j+D[c>>2]|0,g);e=D[c+20>>2];h=d+D[c+16>>2]|0;e=h>>>0>>0?e+1|0:e;j=h;D[c+16>>2]=h;D[c+20>>2]=e;o=o+1|0;if((k|0)==(o|0)){break d}m=D[c+8>>2];h=D[c+12>>2];l=d+j|0;e=l>>>0>>0?e+1|0:e;if((e|0)<=(h|0)&l>>>0<=m>>>0|(e|0)<(h|0)){continue}break}break b}oa(i,j+D[c>>2]|0,d);e=d;g=d+D[c+16>>2]|0;d=D[c+20>>2];D[c+16>>2]=g;D[c+20>>2]=e>>>0>g>>>0?d+1|0:d}f=1;if(!k){break c}d=D[a+20>>2];if(d){f=0;if(ba[D[D[d>>2]+32>>2]](d)|0){break c}}d=0;f=0;f:{if((k|0)<=0){break f}if((k|0)!=1){h=k&-2;while(1){e=d<<2;g=D[e+i>>2];D[e+i>>2]=0-(g&1)^g>>>1;g=e|4;e=D[g+i>>2];D[g+i>>2]=0-(e&1)^e>>>1;d=d+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(!(k&1)){break f}e=d<<2;d=D[e+i>>2];D[e+i>>2]=0-(d&1)^d>>>1}f=0}d=D[a+20>>2];g:{if(!d){break g}if(!(ba[D[D[d>>2]+40>>2]](d,c)|0)){break a}if(f){break g}f=0;a=D[a+20>>2];if(!(ba[D[D[a>>2]+44>>2]](a,i,i,k,n,D[b>>2])|0)){break b}}f=1}return f|0}return 0}function Va(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=$-32|0;$=g;a:{b:{if(D[a+8>>2]<<5>>>0>=b>>>0){break b}D[g+24>>2]=0;D[g+16>>2]=0;D[g+20>>2]=0;if((b|0)<0){break a}b=(b-1>>>5|0)+1|0;c=na(b<<2);D[g+24>>2]=b;D[g+20>>2]=0;D[g+16>>2]=c;b=D[a>>2];D[g+12>>2]=0;D[g+8>>2]=b;c=D[a+4>>2];D[g+4>>2]=c&31;D[g>>2]=b+(c>>>3&536870908);f=$-32|0;$=f;j=D[g+4>>2];e=D[g+12>>2];k=D[g>>2];i=D[g+8>>2];b=(j-e|0)+(k-i<<3)|0;d=D[g+20>>2];h=b+d|0;D[g+20>>2]=h;c:{if(!(!d|(h-1^d-1)>>>0>31)){c=D[g+16>>2];break c}c=D[g+16>>2];if(h>>>0<=32){D[c>>2]=0;break c}D[(h-1>>>3&536870908)+c>>2]=0}c=(d>>>3&536870908)+c|0;d=d&31;d:{if((d|0)==(e|0)){if((b|0)<=0){break d}if(e){h=32-e|0;d=(b|0)<(h|0)?b:h;h=-1<>>h-d;D[c>>2]=D[c>>2]&(h^-1)|h&D[i>>2];b=b-d|0;i=i+4|0;c=c+(d+e>>>3&536870908)|0}j=c;e=(b|0)/32|0;c=e<<2;d=Pa(j,i,c);b=b-(e<<5)|0;if((b|0)<=0){break d}e=c+d|0;b=-1>>>32-b|0;D[e>>2]=D[e>>2]&(b^-1)|b&D[c+i>>2];break d}D[f+28>>2]=e;D[f+24>>2]=i;D[f+20>>2]=j;D[f+16>>2]=k;D[f+12>>2]=d;D[f+8>>2]=c;b=D[f+28>>2];c=D[f+24>>2];i=(D[f+20>>2]-b|0)+(D[f+16>>2]-c<<3)|0;e:{if((i|0)<=0){b=D[f+12>>2];break e}f:{if(!b){b=D[f+12>>2];break f}e=D[f+12>>2];j=32-e|0;k=32-b|0;d=(i|0)<(k|0)?i:k;h=d>>>0>j>>>0?j:d;l=D[f+8>>2];m=D[l>>2]&(-1<>>j-h^-1);j=D[c>>2]&(-1<>>k-d);D[l>>2]=m|(b>>>0>>0?j<>>b-e|0);c=e+h|0;b=c&31;D[f+12>>2]=b;e=l+(c>>>3&536870908)|0;D[f+8>>2]=e;c=d-h|0;if((c|0)>0){D[e>>2]=D[e>>2]&(-1>>>32-c^-1)|j>>>h+D[f+28>>2];D[f+12>>2]=c;b=c}i=i-d|0;c=D[f+24>>2]+4|0;D[f+24>>2]=c}e=32-b|0;h=-1<=32){j=h^-1;while(1){d=D[f+8>>2];c=D[c>>2];D[d>>2]=j&D[d>>2]|c<>2]=d+4;D[d+4>>2]=h&D[d+4>>2]|c>>>e;c=D[f+24>>2]+4|0;D[f+24>>2]=c;d=i>>>0>63;i=i-32|0;if(d){continue}break}}if((i|0)<=0){break e}d=D[f+8>>2];j=e;e=(e|0)<(i|0)?e:i;j=D[d>>2]&(h&-1>>>j-e^-1);h=D[c>>2]&-1>>>32-i;D[d>>2]=j|h<>2]=b;d=d+(c>>>3&536870908)|0;D[f+8>>2]=d;c=i-e|0;if((c|0)<=0){break e}D[d>>2]=D[d>>2]&(-1>>>32-c^-1)|h>>>e;D[f+12>>2]=c;b=c}c=D[f+8>>2];D[f+4>>2]=b;D[f>>2]=c}$=f+32|0;b=D[a>>2];D[a>>2]=D[g+16>>2];D[g+16>>2]=b;c=D[a+4>>2];D[a+4>>2]=D[g+20>>2];D[g+20>>2]=c;c=D[a+8>>2];D[a+8>>2]=D[g+24>>2];D[g+24>>2]=c;if(!b){break b}ma(b)}$=g+32|0;return}Fa();T()}function Yh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=$-32|0;$=g;D[a+68>>2]=f;e=D[a+56>>2];d=D[e>>2];f=D[e+4>>2];D[g+24>>2]=0;D[g+16>>2]=0;D[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=D[e>>2];if((d|0)!=D[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){Nb(n,D[(k<<2)+d>>2],g+16|0);e=D[g+20>>2];d=e>>31;f=D[g+16>>2];h=f>>31;j=D[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){D[g+16>>2]=D[a+108>>2];break b}i=D[a+108>>2];l=i>>31;f=bi(ai(i,l,f,f>>31),aa,h,d);D[g+16>>2]=f;d=bi(ai(i,l,e,e>>31),aa,h,d);D[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){D[g+24>>2]=i-d;break b}D[g+24>>2]=d-i}d=Ga(m);f=D[g+16>>2];c:{if(d){D[g+24>>2]=0-D[g+24>>2];e=0-D[g+20>>2]|0;D[g+20>>2]=e;f=0-f|0;D[g+16>>2]=f;break c}e=D[g+20>>2]}d:{if((f|0)>=0){d=D[a+108>>2];f=d+D[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=D[g+24>>2];d=f>>31;d=d^d+f;break e}f=D[g+24>>2];d=f>>31;d=D[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=D[a+100>>2]-(f+e^e)|0}e=D[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}g:{if(d){break g}h=D[a+108>>2];if((h|0)>=(f|0)){break g}f=(h<<1)-f|0;d=0;break f}h:{if((d|0)!=(e|0)){break h}h=D[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=D[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=D[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}D[g+12>>2]=f;D[g+8>>2]=d;j:{if(D[a+8>>2]<=0){break j}h=D[a+32>>2];f=0;while(1){e=D[a+16>>2];k:{if((e|0)<(d|0)){D[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=D[a+12>>2];if((j|0)>(d|0)){D[e>>2]=j;break k}D[e>>2]=d}f=f+1|0;e=D[a+8>>2];if((f|0)<(e|0)){d=D[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=D[f+i>>2]+D[f+h>>2]|0;D[e>>2]=f;l:{if((f|0)>D[a+16>>2]){f=f-D[a+20>>2]|0}else{if((f|0)>=D[a+12>>2]){break l}f=f+D[a+20>>2]|0}D[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=D[a+56>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}ua();T()}$=g+32|0;return 1}function Oh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=$-32|0;$=g;D[a+68>>2]=f;e=D[a+56>>2];d=D[e>>2];f=D[e+4>>2];D[g+24>>2]=0;D[g+16>>2]=0;D[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=D[e>>2];if((d|0)!=D[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){Lb(n,D[(k<<2)+d>>2],g+16|0);e=D[g+20>>2];d=e>>31;f=D[g+16>>2];h=f>>31;j=D[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){D[g+16>>2]=D[a+108>>2];break b}i=D[a+108>>2];l=i>>31;f=bi(ai(i,l,f,f>>31),aa,h,d);D[g+16>>2]=f;d=bi(ai(i,l,e,e>>31),aa,h,d);D[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){D[g+24>>2]=i-d;break b}D[g+24>>2]=d-i}d=Ga(m);f=D[g+16>>2];c:{if(d){D[g+24>>2]=0-D[g+24>>2];e=0-D[g+20>>2]|0;D[g+20>>2]=e;f=0-f|0;D[g+16>>2]=f;break c}e=D[g+20>>2]}d:{if((f|0)>=0){d=D[a+108>>2];f=d+D[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=D[g+24>>2];d=f>>31;d=d^d+f;break e}f=D[g+24>>2];d=f>>31;d=D[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=D[a+100>>2]-(f+e^e)|0}e=D[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}g:{if(d){break g}h=D[a+108>>2];if((h|0)>=(f|0)){break g}f=(h<<1)-f|0;d=0;break f}h:{if((d|0)!=(e|0)){break h}h=D[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=D[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=D[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}D[g+12>>2]=f;D[g+8>>2]=d;j:{if(D[a+8>>2]<=0){break j}h=D[a+32>>2];f=0;while(1){e=D[a+16>>2];k:{if((e|0)<(d|0)){D[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=D[a+12>>2];if((j|0)>(d|0)){D[e>>2]=j;break k}D[e>>2]=d}f=f+1|0;e=D[a+8>>2];if((f|0)<(e|0)){d=D[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=D[f+i>>2]+D[f+h>>2]|0;D[e>>2]=f;l:{if((f|0)>D[a+16>>2]){f=f-D[a+20>>2]|0}else{if((f|0)>=D[a+12>>2]){break l}f=f+D[a+20>>2]|0}D[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=D[a+56>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}ua();T()}$=g+32|0;return 1}function qc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=$-32|0;$=h;a:{b:{if(!kb(1,h+28|0,b)){break b}c:{d=D[h+28>>2];if(d){jb(a+60|0,d);c=h+8|0;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;if(!Ma(c,b)){break c}while(1){f=1<>2]+(e>>>3&536870908)|0;if(i){f=f|D[g>>2]}else{f=D[g>>2]&(f^-1)}D[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!kb(1,h+28|0,b)){break b}d=D[h+28>>2];if(d){e=0;jb(a+72|0,d);c=h+8|0;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;if(!Ma(c,b)){break c}while(1){f=1<>2]+(e>>>3&536870908)|0;if(i){f=f|D[g>>2]}else{f=D[g>>2]&(f^-1)}D[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!kb(1,h+28|0,b)){break b}d=D[h+28>>2];if(d){e=0;jb(a+84|0,d);c=h+8|0;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;if(!Ma(c,b)){break c}while(1){f=1<>2]+(e>>>3&536870908)|0;if(i){f=f|D[g>>2]}else{f=D[g>>2]&(f^-1)}D[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!kb(1,h+28|0,b)){break b}d=D[h+28>>2];if(d){e=0;jb(a+96|0,d);c=h+8|0;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;if(!Ma(c,b)){break c}while(1){f=1<>2]+(e>>>3&536870908)|0;if(i){f=f|D[g>>2]}else{f=D[g>>2]&(f^-1)}D[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;d=D[b+12>>2];f=d;c=D[b+20>>2];g=c;i=D[b+16>>2];j=i+4|0;c=j>>>0<4?c+1|0:c;k=D[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}l=D[b>>2];d=l+i|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=j;D[b+20>>2]=c;c=g;g=i+8|0;c=g>>>0<8?c+1|0:c;i=g;g=c;if(i>>>0>k>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}c=j+l|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[b+16>>2]=i;D[b+20>>2]=g;if((c|0)<(d|0)){break a}D[a+16>>2]=c;D[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}e=1;b=c+1|0;D[a+20>>2]=b;c=b>>>1|0;D[a+24>>2]=c;D[a+28>>2]=0-c;if(b&1){break a}D[a+24>>2]=c-1;break a}}e=0}$=h+32|0;return e|0}function Eh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=$-48|0;$=g;d=D[a+8>>2];if(d-31>>>0>=4294967267){D[a+76>>2]=d;e=-1<>2]=d;D[a+80>>2]=e^-1;D[a+92>>2]=(d|0)/2;H[a+88>>2]=K(2)/K(d|0)}D[a+52>>2]=f;e=D[a+40>>2];d=D[e>>2];f=D[e+4>>2];D[g+16>>2]=0;D[g+8>>2]=0;D[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=D[e>>2];if((d|0)!=D[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){Nb(o,D[(j<<2)+d>>2],g+8|0);e=D[g+12>>2];d=e>>31;f=D[g+8>>2];h=f>>31;k=D[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){D[g+8>>2]=D[a+92>>2];break b}i=D[a+92>>2];l=i>>31;f=bi(ai(i,l,f,f>>31),aa,h,d);D[g+8>>2]=f;d=bi(ai(i,l,e,e>>31),aa,h,d);D[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){D[g+16>>2]=i-d;break b}D[g+16>>2]=d-i}d=Ga(n);f=D[g+8>>2];c:{if(d){D[g+16>>2]=0-D[g+16>>2];e=0-D[g+12>>2]|0;D[g+12>>2]=e;f=0-f|0;D[g+8>>2]=f;break c}e=D[g+12>>2]}d:{if((f|0)>=0){f=D[a+92>>2];d=f+D[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=D[g+16>>2];f=d>>31;f=f^d+f;break e}d=D[g+16>>2];f=d>>31;f=D[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=D[a+84>>2]-(d+e^d)|0}e=D[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=D[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=D[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=D[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=D[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=D[h+4>>2];h=D[h>>2];D[g+36>>2]=d;D[g+32>>2]=f;D[g+24>>2]=h;D[g+28>>2]=k;Kb(g+40|0,m,g+32|0,g+24|0);d=c+e|0;D[d>>2]=D[g+40>>2];D[d+4>>2]=D[g+44>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=D[a+40>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}ua();T()}$=g+48|0;return 1}function Ah(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=$-48|0;$=g;d=D[a+8>>2];if(d-31>>>0>=4294967267){D[a+76>>2]=d;e=-1<>2]=d;D[a+80>>2]=e^-1;D[a+92>>2]=(d|0)/2;H[a+88>>2]=K(2)/K(d|0)}D[a+52>>2]=f;e=D[a+40>>2];d=D[e>>2];f=D[e+4>>2];D[g+16>>2]=0;D[g+8>>2]=0;D[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=D[e>>2];if((d|0)!=D[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){Lb(o,D[(j<<2)+d>>2],g+8|0);e=D[g+12>>2];d=e>>31;f=D[g+8>>2];h=f>>31;k=D[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){D[g+8>>2]=D[a+92>>2];break b}i=D[a+92>>2];l=i>>31;f=bi(ai(i,l,f,f>>31),aa,h,d);D[g+8>>2]=f;d=bi(ai(i,l,e,e>>31),aa,h,d);D[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){D[g+16>>2]=i-d;break b}D[g+16>>2]=d-i}d=Ga(n);f=D[g+8>>2];c:{if(d){D[g+16>>2]=0-D[g+16>>2];e=0-D[g+12>>2]|0;D[g+12>>2]=e;f=0-f|0;D[g+8>>2]=f;break c}e=D[g+12>>2]}d:{if((f|0)>=0){f=D[a+92>>2];d=f+D[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=D[g+16>>2];f=d>>31;f=f^d+f;break e}d=D[g+16>>2];f=d>>31;f=D[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=D[a+84>>2]-(d+e^d)|0}e=D[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=D[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=D[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=D[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=D[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=D[h+4>>2];h=D[h>>2];D[g+36>>2]=d;D[g+32>>2]=f;D[g+24>>2]=h;D[g+28>>2]=k;Kb(g+40|0,m,g+32|0,g+24|0);d=c+e|0;D[d>>2]=D[g+40>>2];D[d+4>>2]=D[g+44>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=D[a+40>>2];d=D[e>>2];if(D[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}ua();T()}$=g+48|0;return 1}function Jh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=$-32|0;$=e;a:{if((c|0)!=3){break a}c=D[a+4>>2];f=D[a+12>>2];D[e+24>>2]=-1;D[e+16>>2]=-1;D[e+20>>2]=1065353216;D[e+8>>2]=-1;D[e+12>>2]=-1;if((b|0)==-2){break a}j=D[D[D[c+4>>2]+8>>2]+(f<<2)>>2];if((ba[D[D[c>>2]+8>>2]](c)|0)==1){i=D[D[D[c+4>>2]+8>>2]+(f<<2)>>2];b:{if((ba[D[D[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break b}h=ba[D[D[c>>2]+36>>2]](c)|0;a=ba[D[D[c>>2]+44>>2]](c,f)|0;if(!h|!a){break b}g=a+12|0;f=ba[D[D[c>>2]+40>>2]](c,f)|0;c=D[c+44>>2];if(f){if((b|0)!=6){break b}d=na(112);D[d+4>>2]=i;b=D[e+12>>2];D[d+8>>2]=D[e+8>>2];D[d+12>>2]=b;b=D[e+20>>2];D[d+16>>2]=D[e+16>>2];D[d+20>>2]=b;D[d+24>>2]=D[e+24>>2];D[d+40>>2]=a;D[d+36>>2]=g;D[d+32>>2]=f;D[d+28>>2]=c;D[d+68>>2]=a;D[d- -64>>2]=g;D[d+60>>2]=f;D[d+56>>2]=c;D[d+48>>2]=0;D[d+52>>2]=0;D[d>>2]=5956;D[d+88>>2]=1065353216;D[d+92>>2]=-1;D[d+80>>2]=-1;D[d+84>>2]=-1;D[d+72>>2]=1;D[d+76>>2]=-1;D[d+44>>2]=6520;a=d+96|0;D[a>>2]=0;D[a+4>>2]=0;B[a+5|0]=0;B[a+6|0]=0;B[a+7|0]=0;B[a+8|0]=0;B[a+9|0]=0;B[a+10|0]=0;B[a+11|0]=0;B[a+12|0]=0;break b}if((b|0)!=6){break b}d=na(112);D[d+4>>2]=i;b=D[e+12>>2];D[d+8>>2]=D[e+8>>2];D[d+12>>2]=b;b=D[e+20>>2];D[d+16>>2]=D[e+16>>2];D[d+20>>2]=b;D[d+24>>2]=D[e+24>>2];D[d+40>>2]=a;D[d+36>>2]=g;D[d+32>>2]=h;D[d+28>>2]=c;D[d+68>>2]=a;D[d- -64>>2]=g;D[d+60>>2]=h;D[d+56>>2]=c;D[d+48>>2]=0;D[d+52>>2]=0;D[d>>2]=6960;D[d+88>>2]=1065353216;D[d+92>>2]=-1;D[d+80>>2]=-1;D[d+84>>2]=-1;D[d+72>>2]=1;D[d+76>>2]=-1;D[d+44>>2]=7380;a=d+96|0;D[a>>2]=0;D[a+4>>2]=0;B[a+5|0]=0;B[a+6|0]=0;B[a+7|0]=0;B[a+8|0]=0;B[a+9|0]=0;B[a+10|0]=0;B[a+11|0]=0;B[a+12|0]=0}if(d){break a}}d=na(28);D[d+4>>2]=j;a=D[e+12>>2];D[d+8>>2]=D[e+8>>2];D[d+12>>2]=a;a=D[e+20>>2];D[d+16>>2]=D[e+16>>2];D[d+20>>2]=a;D[d+24>>2]=D[e+24>>2];D[d>>2]=7792}$=e+32|0;return d|0}function jf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=$-32|0;$=f;e=f+8|0;c=$-80|0;$=c;a=D[b+36>>2];D[c+72>>2]=D[b+32>>2];D[c+76>>2]=a;d=D[b+28>>2];a=c- -64|0;D[a>>2]=D[b+24>>2];D[a+4>>2]=d;a=D[b+20>>2];D[c+56>>2]=D[b+16>>2];D[c+60>>2]=a;a=D[b+12>>2];D[c+48>>2]=D[b+8>>2];D[c+52>>2]=a;a=D[b+4>>2];D[c+40>>2]=D[b>>2];D[c+44>>2]=a;gc(c+8|0,c+40|0,c+24|0);a=D[c+8>>2];a:{if(a){D[e>>2]=a;a=e+4|0;if(B[c+23|0]>=0){b=c+8|4;e=D[b+4>>2];D[a>>2]=D[b>>2];D[a+4>>2]=e;D[a+8>>2]=D[b+8>>2];break a}ta(a,D[c+12>>2],D[c+16>>2]);if(B[c+23|0]>=0){break a}ma(D[c+12>>2]);break a}if(B[c+23|0]<0){ma(D[c+12>>2])}a=E[c+31|0];if(a>>>0>=2){a=na(32);b=E[1619]|E[1620]<<8;B[a+24|0]=b;B[a+25|0]=b>>>8;b=E[1615]|E[1616]<<8|(E[1617]<<16|E[1618]<<24);d=E[1611]|E[1612]<<8|(E[1613]<<16|E[1614]<<24);B[a+16|0]=d;B[a+17|0]=d>>>8;B[a+18|0]=d>>>16;B[a+19|0]=d>>>24;B[a+20|0]=b;B[a+21|0]=b>>>8;B[a+22|0]=b>>>16;B[a+23|0]=b>>>24;b=E[1607]|E[1608]<<8|(E[1609]<<16|E[1610]<<24);d=E[1603]|E[1604]<<8|(E[1605]<<16|E[1606]<<24);B[a+8|0]=d;B[a+9|0]=d>>>8;B[a+10|0]=d>>>16;B[a+11|0]=d>>>24;B[a+12|0]=b;B[a+13|0]=b>>>8;B[a+14|0]=b>>>16;B[a+15|0]=b>>>24;b=E[1599]|E[1600]<<8|(E[1601]<<16|E[1602]<<24);d=E[1595]|E[1596]<<8|(E[1597]<<16|E[1598]<<24);B[a|0]=d;B[a+1|0]=d>>>8;B[a+2|0]=d>>>16;B[a+3|0]=d>>>24;B[a+4|0]=b;B[a+5|0]=b>>>8;B[a+6|0]=b>>>16;B[a+7|0]=b>>>24;B[a+26|0]=0;D[c+8>>2]=-1;b=c+8|4;ta(b,a,26);d=B[c+23|0];D[e>>2]=D[c+8>>2];e=e+4|0;b:{if((d|0)>=0){d=D[b+4>>2];D[e>>2]=D[b>>2];D[e+4>>2]=d;D[e+8>>2]=D[b+8>>2];break b}ta(e,D[c+12>>2],D[c+16>>2])}if(B[c+23|0]<0){ma(D[c+12>>2])}ma(a);break a}D[e>>2]=0;D[e+4>>2]=0;D[e+16>>2]=a;D[e+8>>2]=0;D[e+12>>2]=0}$=c+80|0;a=D[f+24>>2];if(B[f+23|0]<0){ma(D[f+12>>2])}$=f+32|0;return a|0}function If(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c;a:{d=a;if(D[d+12>>2]==(b|0)){break a}a=b;b=D[d+4>>2];c=D[d>>2];if((b|0)!=(c|0)){while(1){e=b-12|0;if(B[b-1|0]<0){ma(D[e>>2])}b=e;if((c|0)!=(b|0)){continue}break}}D[d+12>>2]=a;D[d+4>>2]=c;b=D[a>>2];j=a+4|0;if((b|0)==(j|0)){break a}while(1){b:{if(D[d+8>>2]!=(c|0)){c:{if(B[b+27|0]>=0){a=D[b+20>>2];D[c>>2]=D[b+16>>2];D[c+4>>2]=a;D[c+8>>2]=D[b+24>>2];break c}ta(c,D[b+16>>2],D[b+20>>2])}D[d+4>>2]=c+12;break b}g=0;d:{e:{f:{e=D[d+4>>2];a=D[d>>2];f=(e-a|0)/12|0;c=f+1|0;if(c>>>0<357913942){h=(D[d+8>>2]-a|0)/12|0;k=h<<1;c=h>>>0<178956970?c>>>0>k>>>0?c:k:357913941;if(c){if(c>>>0>=357913942){break f}g=na(J(c,12))}h=J(c,12);c=J(f,12)+g|0;g:{if(B[b+27|0]>=0){f=D[b+20>>2];D[c>>2]=D[b+16>>2];D[c+4>>2]=f;D[c+8>>2]=D[b+24>>2];break g}ta(c,D[b+16>>2],D[b+20>>2]);e=D[d+4>>2];a=D[d>>2]}g=g+h|0;f=c+12|0;if((a|0)==(e|0)){break e}while(1){e=e-12|0;h=D[e+4>>2];c=c-12|0;D[c>>2]=D[e>>2];D[c+4>>2]=h;D[c+8>>2]=D[e+8>>2];D[e>>2]=0;D[e+4>>2]=0;D[e+8>>2]=0;if((a|0)!=(e|0)){continue}break}D[d+8>>2]=g;a=D[d+4>>2];D[d+4>>2]=f;e=D[d>>2];D[d>>2]=c;if((a|0)==(e|0)){break d}while(1){c=a-12|0;if(B[a-1|0]<0){ma(D[c>>2])}a=c;if((c|0)!=(e|0)){continue}break}break d}qa();T()}ra(1326);T()}D[d+8>>2]=g;D[d+4>>2]=f;D[d>>2]=c}if(e){ma(e)}}c=D[b+4>>2];h:{if(!c){a=D[b+8>>2];if(D[a>>2]==(b|0)){break h}b=b+8|0;while(1){c=D[b>>2];b=c+8|0;a=D[c+8>>2];if((c|0)!=D[a>>2]){continue}break}break h}while(1){a=c;c=D[c>>2];if(c){continue}break}}if((a|0)==(j|0)){break a}c=D[d+4>>2];b=a;continue}}c=0;i:{if((i|0)<0){break i}a=D[d>>2];if((D[d+4>>2]-a|0)/12>>>0<=i>>>0){break i}a=a+J(i,12)|0;c=B[a+11|0]<0?D[a>>2]:a}return c|0}function Jd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a:{if(!F[b+38>>1]){break a}if(!Ua(1,a+12|0,b)){break a}f=D[a+12>>2];c=D[a>>2];d=D[a+4>>2]-c>>2;b:{if(f>>>0>d>>>0){sa(a,f-d|0);f=D[a+12>>2];break b}if(d>>>0<=f>>>0){break b}D[a+4>>2]=c+(f<<2)}if(!f){return 1}j=D[b+8>>2];i=D[b+12>>2];l=D[a>>2];while(1){d=D[b+20>>2];c=D[b+16>>2];if((i|0)<=(d|0)&j>>>0<=c>>>0|(d|0)>(i|0)){return 0}m=D[b>>2];k=E[m+c|0];c=c+1|0;d=c?d:d+1|0;g=c;D[b+16>>2]=c;D[b+20>>2]=d;c=k>>>2|0;e=0;c:{d:{e:{f:{n=k&3;switch(n|0){case 3:break f;case 0:break d;default:break e}}d=c+h|0;if(d>>>0>=f>>>0){return 0}pa(l+(h<<2)|0,0,(k&252)+4|0);h=d;break c}while(1){if((d|0)>=(i|0)&g>>>0>=j>>>0|(d|0)>(i|0)){break a}f=E[g+m|0];g=g+1|0;d=g?d:d+1|0;D[b+16>>2]=g;D[b+20>>2]=d;c=f<<(e<<3|6)|c;e=e+1|0;if((n|0)!=(e|0)){continue}break}}D[l+(h<<2)>>2]=c}f=D[a+12>>2];h=h+1|0;if(f>>>0>h>>>0){continue}break}d=a+16|0;k=D[a>>2];c=D[a+16>>2];b=D[a+20>>2]-c|0;g:{if(b>>>0<=16383){sa(d,4096-(b>>>2|0)|0);break g}if((b|0)==16384){break g}D[a+20>>2]=c+16384}b=a+28|0;h=D[b>>2];c=D[a+32>>2]-h>>3;h:{if(c>>>0>>0){db(b,f-c|0);h=D[b>>2];break h}if(c>>>0>f>>>0){D[a+32>>2]=(f<<3)+h}if(!f){break a}}e=0;a=0;while(1){b=k+(e<<2)|0;i=D[b>>2];c=a;g=(e<<3)+h|0;D[g+4>>2]=a;D[g>>2]=i;i=D[b>>2];a=i+a|0;if(a>>>0>4096){break a}i:{if(a>>>0<=c>>>0){break i}g=D[d>>2];b=0;j=i&7;if(j){while(1){D[g+(c<<2)>>2]=e;c=c+1|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}if(i-1>>>0<=6){break i}while(1){b=g+(c<<2)|0;D[b>>2]=e;D[b+28>>2]=e;D[b+24>>2]=e;D[b+20>>2]=e;D[b+16>>2]=e;D[b+12>>2]=e;D[b+8>>2]=e;D[b+4>>2]=e;c=c+8|0;if((c|0)!=(a|0)){continue}break}}e=e+1|0;if((f|0)!=(e|0)){continue}break}o=(a|0)==4096}return o}function Kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=$-16|0;$=k;D[k+8>>2]=c;e=D[a+12>>2];d=D[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=D[a+16>>2];d=D[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=pa(e,0,d)+d|0}D[a+12>>2]=d;break a}b:{c:{d:{h=D[a+8>>2];i=d-h>>2;e=i+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>>0<2147483644?e>>>0>l>>>0?e:l:1073741823;if(g){if(g>>>0>=1073741824){break d}j=na(g<<2)}e=(i<<2)+j|0;i=f<<2;f=pa(e,0,i);i=f+i|0;g=(g<<2)+j|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=D[d>>2];D[d>>2]=0;e=e-4|0;D[e>>2]=f;if((d|0)!=(h|0)){continue}break}D[a+16>>2]=g;f=D[a+12>>2];D[a+12>>2]=i;d=D[a+8>>2];D[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=D[f>>2];D[f>>2]=0;if(e){ya(e)}if((d|0)!=(f|0)){continue}break}break b}qa();T()}ra(1326);T()}D[a+16>>2]=g;D[a+12>>2]=i;D[a+8>>2]=f}if(d){ma(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=D[e>>2];D[e>>2]=0;if(c){ya(c)}if((d|0)!=(e|0)){continue}break}c=D[k+8>>2]}D[a+12>>2]=d}e:{f:{d=D[c+56>>2];g:{if((d|0)>4){break g}e=J(d,12)+a|0;d=D[e+24>>2];if((d|0)!=D[e+28>>2]){D[d>>2]=b;D[e+24>>2]=d+4;break g}h=D[e+20>>2];f=d-h|0;j=f>>2;d=j+1|0;if(d>>>0>=1073741824){break f}g=f>>1;g=f>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break e}d=na(g<<2)}else{d=0}j=d+(j<<2)|0;D[j>>2]=b;if((f|0)>0){oa(d,h,f)}D[e+20>>2]=d;D[e+24>>2]=j+4;D[e+28>>2]=d+(g<<2);if(!h){break g}ma(h)}D[c+60>>2]=b;a=D[a+8>>2];D[k+8>>2]=0;b=a+(b<<2)|0;a=D[b>>2];D[b>>2]=c;if(a){ya(a)}a=D[k+8>>2];D[k+8>>2]=0;if(a){ya(a)}$=k+16|0;return}qa();T()}ra(1326);T()}function Yc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=$-80|0;$=g;a:{if(!Wb(1,g+76|0,b)){break a}h=D[g+76>>2];if(!h){break a}d=D[b+8>>2];c=D[b+16>>2];d=ai(d-c|0,D[b+12>>2]-(D[b+20>>2]+(c>>>0>d>>>0)|0)|0,5,0);c=aa;if(d>>>0>>0&(c|0)<=0|(c|0)<0){break a}c=D[a+4>>2];d=D[a+8>>2]-c>>2;b:{if(d>>>0>>0){sa(a+4|0,h-d|0);break b}if(d>>>0<=h>>>0){break b}D[a+8>>2]=c+(h<<2)}r=a+16|0;j=D[a+32>>2];k=1;while(1){c:{e=D[b+12>>2];c=e;d=D[b+20>>2];p=D[b+8>>2];m=D[b+16>>2];if((c|0)<=(d|0)&p>>>0<=m>>>0|(c|0)<(d|0)){break c}q=D[b>>2];o=E[q+m|0];c=d;f=m+1|0;c=f?c:c+1|0;D[b+16>>2]=f;D[b+20>>2]=c;if((c|0)>=(e|0)&f>>>0>=p>>>0|(c|0)>(e|0)){break c}f=E[f+q|0];c=d;i=m+2|0;c=i>>>0<2?c+1|0:c;D[b+16>>2]=i;D[b+20>>2]=c;if((c|0)>=(e|0)&i>>>0>=p>>>0|(c|0)>(e|0)){break c}i=E[i+q|0];c=d;n=m+3|0;c=n>>>0<3?c+1|0:c;D[b+16>>2]=n;D[b+20>>2]=c;if((c|0)>=(e|0)&n>>>0>=p>>>0|(c|0)>(e|0)){break c}e=E[n+q|0];c=d;d=m+4|0;c=d>>>0<4?c+1|0:c;D[b+16>>2]=d;D[b+20>>2]=c;if(!i|((f-12&255)>>>0<245|o>>>0>4)){break c}c=mb(g+8|0);n=i<<24>>24;e=(e|0)!=0;d=f-1|0;if(d>>>0<=10){d=D[(d<<2)+10180>>2]}else{d=-1}d=J(d,i);$b(c,o,n,f,e,d,d>>31);if(!Wb(1,g+4|0,b)){break c}f=D[g+4>>2];D[g+68>>2]=f;d=_b(na(96),c);ba[D[D[j>>2]+8>>2]](j,D[j+12>>2]-D[j+8>>2]>>2,d);d=(D[j+12>>2]-D[j+8>>2]>>2)-1|0;o=d<<2;D[D[o+D[j+8>>2]>>2]+60>>2]=f;D[D[a+4>>2]+(l<<2)>>2]=d;k=D[a+16>>2];c=D[a+20>>2]-k>>2;d:{if((c|0)>(d|0)){break d}D[g>>2]=-1;d=d+1|0;if(d>>>0>c>>>0){xa(r,d-c|0,g);k=D[r>>2];break d}if(c>>>0<=d>>>0){break d}D[a+20>>2]=(d<<2)+k}D[k+o>>2]=l;l=l+1|0;k=l>>>0>>0;if((h|0)!=(l|0)){continue}}break}l=!k}$=g+80|0;return l&1}function vd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=$-16|0;$=i;D[i>>2]=b;g=-1;a:{if((b|0)==-1){D[i+4>>2]=-1;break a}c=b+1|0;D[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}D[i+8>>2]=g;m=(b|0)==-1?-1:(b>>>0)/3|0;b:{c:{d:{e:{while(1){f:{g:{if((b|0)!=-1){c=D[D[D[a+8>>2]+12>>2]+(b<<2)>>2];if((c|0)!=-1){break g}}g=0;c=D[a+216>>2];if((c|0)==D[a+220>>2]){break f}while(1){f=J(g,144)+c|0;c=D[f+136>>2];d=D[f+140>>2];h:{if(c>>>0>>0){D[c>>2]=b;D[f+136>>2]=c+4;break h}h=D[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break e}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break d}c=na(d<<2)}else{c=0}e=k+c|0;D[e>>2]=b;if((j|0)>0){oa(c,h,j)}D[f+132>>2]=c;D[f+136>>2]=e+4;D[f+140>>2]=c+(d<<2);if(!h){break h}ma(h)}g=g+1|0;c=D[a+216>>2];if(g>>>0<(D[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}g=0;if(D[a+220>>2]==D[a+216>>2]){break f}while(1){i:{if(!Ga(D[a+368>>2]+(g<<4)|0)){break i}f=D[a+216>>2]+J(g,144)|0;c=D[f+136>>2];d=D[f+140>>2];if(c>>>0>>0){D[c>>2]=b;D[f+136>>2]=c+4;break i}h=D[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break c}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break b}c=na(d<<2)}else{c=0}e=k+c|0;D[e>>2]=b;if((j|0)>0){oa(c,h,j)}D[f+132>>2]=c;D[f+136>>2]=e+4;D[f+140>>2]=c+(d<<2);if(!h){break i}ma(h)}g=g+1|0;if(g>>>0<(D[a+220>>2]-D[a+216>>2]|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){b=D[(l<<2)+i>>2];continue}break}$=i+16|0;return 1}qa();T()}ra(1326);T()}qa();T()}ra(1326);T()} +function wd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=$-16|0;$=i;k=-1;a:{b:{c:{if(!Da(1,i+12|0,b)){break c}d=D[i+12>>2];if(d){c=D[a+8>>2];if(d>>>0>(D[c+4>>2]-D[c>>2]>>2>>>0)/3>>>0){break c}while(1){if(!Da(1,i+8|0,b)){break c}c=D[i+8>>2];if(!Da(1,i+8|0,b)){break c}f=c+f|0;c=D[i+8>>2];if(f>>>0>>0){break c}g=f-c|0;c=D[a+40>>2];d:{if((c|0)!=D[a+44>>2]){D[c+4>>2]=f;D[c>>2]=g;D[a+40>>2]=c+12;break d}e=c;c=D[a+36>>2];j=e-c|0;h=(j|0)/12|0;e=h+1|0;if(e>>>0>=357913942){break b}l=h<<1;e=h>>>0<178956970?e>>>0>l>>>0?e:l:357913941;if(e>>>0>=357913942){break a}e=J(e,12);l=na(e);h=l+J(h,12)|0;D[h+4>>2]=f;D[h>>2]=g;g=h+J((j|0)/-12|0,12)|0;if((j|0)>0){oa(g,c,j)}D[a+44>>2]=e+l;D[a+40>>2]=h+12;D[a+36>>2]=g;if(!c){break d}ma(c)}m=m+1|0;if((d|0)!=(m|0)){continue}break}f=0;ec(b,0,0);h=d>>>0>1?d:1;while(1){d=E[b+36|0];c=F[D[a+4>>2]+36>>1];e:{f:{if(((c<<8|c>>>8)&65535)>>>0<=513){if(!d){break e}g=0;c=D[b+32>>2];j=c>>>3|0;k=D[b+24>>2];d=j+k|0;e=D[b+28>>2];g:{if(d>>>0>=e>>>0){d=c;break g}g=E[d|0];d=c+1|0;D[b+32>>2]=d;j=d>>>3|0;g=g>>>(c&7)&1}if(e>>>0>j+k>>>0){break f}break e}if(!d){break e}g=0;d=D[b+32>>2];c=D[b+24>>2]+(d>>>3|0)|0;if(c>>>0>=G[b+28>>2]){break e}g=E[c|0]>>>(d&7)&1}D[b+32>>2]=d+1}d=D[a+36>>2]+J(f,12)|0;B[d+8|0]=E[d+8|0]&254|g&1;f=f+1|0;if((h|0)!=(f|0)){continue}break}B[b+36|0]=0;c=D[b+20>>2];a=0;d=D[b+32>>2]+7|0;a=d>>>0<7?1:a;f=a<<29|d>>>3;d=f+D[b+16>>2]|0;a=(a>>>3|0)+c|0;D[b+16>>2]=d;D[b+20>>2]=d>>>0>>0?a+1|0:a}k=D[b+16>>2]}$=i+16|0;return k}qa();T()}ra(1326);T()}function ic(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=D[a+8>>2];g=D[a+4>>2];if((e-g|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=g;e=J(b,12)-12|0;f=((e>>>0)/12|0)+1&3;if(f){while(1){j=D[c+4>>2];D[d>>2]=D[c>>2];D[d+4>>2]=j;D[d+8>>2]=D[c+8>>2];d=d+12|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}g=J(b,12)+g|0;if(e>>>0<36){break a}while(1){b=D[c+4>>2];D[d>>2]=D[c>>2];D[d+4>>2]=b;D[d+8>>2]=D[c+8>>2];D[d+20>>2]=D[c+8>>2];b=D[c+4>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=b;D[d+32>>2]=D[c+8>>2];b=D[c+4>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=b;b=D[c+4>>2];D[d+36>>2]=D[c>>2];D[d+40>>2]=b;D[d+44>>2]=D[c+8>>2];d=d+48|0;if((g|0)!=(d|0)){continue}break}}D[a+4>>2]=g;return}b:{f=D[a>>2];i=(g-f|0)/12|0;d=i+b|0;if(d>>>0<357913942){e=(e-f|0)/12|0;f=e<<1;f=e>>>0<178956970?d>>>0>f>>>0?d:f:357913941;if(f){if(f>>>0>=357913942){break b}j=na(J(f,12))}e=J(i,12)+j|0;d=e;b=J(b,12);i=b-12|0;k=((i>>>0)/12|0)+1&3;if(k){d=e;while(1){l=D[c+4>>2];D[d>>2]=D[c>>2];D[d+4>>2]=l;D[d+8>>2]=D[c+8>>2];d=d+12|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}h=b+e|0;if(i>>>0>=36){while(1){b=D[c+4>>2];D[d>>2]=D[c>>2];D[d+4>>2]=b;D[d+8>>2]=D[c+8>>2];D[d+20>>2]=D[c+8>>2];b=D[c+4>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=b;D[d+32>>2]=D[c+8>>2];b=D[c+4>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=b;b=D[c+4>>2];D[d+36>>2]=D[c>>2];D[d+40>>2]=b;D[d+44>>2]=D[c+8>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}b=D[a>>2];c=g-b|0;d=e+J((c|0)/-12|0,12)|0;if((c|0)>0){oa(d,b,c)}D[a+8>>2]=J(f,12)+j;D[a+4>>2]=h;D[a>>2]=d;if(b){ma(b)}return}qa();T()}ra(1326);T()}function rf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=0;h=$-16|0;$=h;j=D[b+80>>2];e=B[c+24|0];D[h+8>>2]=0;D[h>>2]=0;D[h+4>>2]=0;a:{b:{if(e){if((e|0)<0){break b}b=e<<2;a=na(b);D[h>>2]=a;g=a+b|0;D[h+8>>2]=g;k=e-1&1073741823;l=e&7;c:{if(!l){b=a;break c}b=a;while(1){D[b>>2]=-1073741824;b=b+4|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}if(k>>>0>=7){while(1){D[b+24>>2]=-1073741824;D[b+28>>2]=-1073741824;D[b+16>>2]=-1073741824;D[b+20>>2]=-1073741824;D[b+8>>2]=-1073741824;D[b+12>>2]=-1073741824;D[b>>2]=-1073741824;D[b+4>>2]=-1073741824;b=b+32|0;if((g|0)!=(b|0)){continue}break}}D[h+4>>2]=g}b=J(e,j);g=D[d>>2];f=D[d+4>>2]-g>>2;d:{if(b>>>0>f>>>0){sa(d,b-f|0);break d}if(b>>>0>=f>>>0){break d}D[d+4>>2]=g+(b<<2)}e:{if(!j){break e}i=1;if((e|0)<=0){b=0;while(1){if(!nb(c,E[c+84|0]?b:D[D[c+68>>2]+(b<<2)>>2],B[c+24|0],a)){break e}b=b+1|0;i=j>>>0>b>>>0;if((b|0)!=(j|0)){continue}break}break e}p=e&-4;l=e&3;f=0;q=e-1>>>0<3;while(1){if(nb(c,E[c+84|0]?m:D[D[c+68>>2]+(m<<2)>>2],B[c+24|0],a)){o=D[d>>2];n=0;e=D[h>>2];b=0;i=0;if(!q){while(1){g=o+(f<<2)|0;k=b<<2;H[g>>2]=H[k+e>>2];H[g+4>>2]=H[(k|4)+e>>2];H[g+8>>2]=H[(k|8)+e>>2];H[g+12>>2]=H[(k|12)+e>>2];b=b+4|0;f=f+4|0;i=i+4|0;if((p|0)!=(i|0)){continue}break}}if(l){while(1){H[o+(f<<2)>>2]=H[(b<<2)+e>>2];b=b+1|0;f=f+1|0;n=n+1|0;if((l|0)!=(n|0)){continue}break}}m=m+1|0;i=m>>>0>>0;if((j|0)!=(m|0)){continue}}break}a=D[h>>2]}if(a){ma(a)}$=h+16|0;a=(i^-1)&1;break a}qa();T()}return a|0}function Kb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=D[b+16>>2];g=D[c+4>>2]-k|0;e=g;f=D[c>>2]-k|0;D[c>>2]=f;D[c+4>>2]=e;j=D[b+16>>2];e=e>>31;h=e+g^e;e=f>>31;l=(j|0)>=(h+(e+f^e)|0);a:{if(l){e=g;break a}b:{c:{if((f|0)>=0){i=1;h=1;if((g|0)>=0){break b}e=1;i=-1;h=-1;if(f){break c}break b}e=-1;i=-1;h=-1;if((g|0)<=0){break b}}i=(g|0)<=0?-1:1;h=e}e=f<<1;f=J(h,j);e=e-f|0;h=(J(i,h)|0)>=0;i=J(i,j);e=((h?0-e|0:e)+i|0)/2|0;D[c+4>>2]=e;j=f;f=(g<<1)-i|0;f=(j+(h?0-f|0:f)|0)/2|0;D[c>>2]=f}d:{e:{f:{g:{h:{i:{j:{if(f){if((f|0)<0){break j}if((e|0)>=0){break i}break f}if(e){break h}i=1;g=0;e=0;h=0;break d}i=1;if((e|0)>0){break g}h=(e|0)>0?253:0;g=e;e=f;break d}g=0-e|0;e=0-f|0;h=254;break e}if((e|0)<=0){break f}}e=0-e|0;g=f;h=253;break e}g=0-f|0;h=255}D[c>>2]=e;D[c+4>>2]=g;i=0}c=D[d+4>>2]+g|0;f=D[d>>2]+e|0;g=D[b+16>>2];k:{if((f|0)>(g|0)){f=f-D[b+4>>2]|0;break k}if((0-g|0)<=(f|0)){break k}f=D[b+4>>2]+f|0}l:{if((c|0)>(g|0)){c=c-D[b+4>>2]|0;break l}if((0-g|0)<=(c|0)){break l}c=D[b+4>>2]+c|0}m:{if(i){b=c;break m}b=c;n:{switch((h&3)-1|0){case 0:b=0-f|0;f=c;break m;case 1:b=0-c|0;f=0-f|0;break m;case 2:break n;default:break m}}b=f;f=0-c|0}o:{if(l){c=b;break o}p:{q:{if((f|0)>=0){c=1;e=1;if((b|0)>=0){break p}d=1;c=-1;e=-1;if(f){break q}break p}d=-1;c=-1;e=-1;if((b|0)<=0){break p}}c=(b|0)<=0?-1:1;e=d}d=f<<1;f=J(e,g);d=d-f|0;D[a>>2]=d;j=0-d|0;h=d;d=(J(c,e)|0)>=0;e=J(c,g);c=((d?j:h)+e|0)/2|0;b=(b<<1)-e|0;f=(f+(d?0-b|0:b)|0)/2|0}D[a>>2]=f+k;D[a+4>>2]=c+k}function rb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=d-c|0;if((h|0)<=0){return}a:{f=D[a+8>>2];i=D[a+4>>2];if((h|0)<=(f-i|0)){j=i-b|0;if((j|0)>=(h|0)){g=i;f=d;break a}g=i;f=c+j|0;if((f|0)!=(d|0)){e=f;while(1){B[g|0]=E[e|0];g=g+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}D[a+4>>2]=g;if((j|0)>0){break a}return}e=D[a>>2];d=h+(i-e|0)|0;if((d|0)>=0){g=b-e|0;f=f-e|0;j=f<<1;f=f>>>0<1073741823?d>>>0>j>>>0?d:j:2147483647;if(f){d=na(f)}else{d=0}c=oa(g+d|0,c,h);if((g|0)>0){oa(d,e,g)}c=c+h|0;if((b|0)!=(i|0)){g=(b^-1)+i|0;h=i-b&7;if(h){e=0;while(1){B[c|0]=E[b|0];c=c+1|0;b=b+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if(g>>>0>=7){while(1){B[c|0]=E[b|0];B[c+1|0]=E[b+1|0];B[c+2|0]=E[b+2|0];B[c+3|0]=E[b+3|0];B[c+4|0]=E[b+4|0];B[c+5|0]=E[b+5|0];B[c+6|0]=E[b+6|0];B[c+7|0]=E[b+7|0];c=c+8|0;b=b+8|0;if((i|0)!=(b|0)){continue}break}}e=D[a>>2]}D[a+8>>2]=d+f;D[a+4>>2]=c;D[a>>2]=d;if(e){ma(e)}return}qa();T()}e=g;d=e-h|0;if(i>>>0>d>>>0){while(1){B[e|0]=E[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}D[a+4>>2]=e;a=g-(b+h|0)|0;if(a){Pa(g-a|0,b,a)}if((c|0)==(f|0)){return}a=(c^-1)+f|0;g=f-c&7;b:{if(!g){e=b;break b}d=0;e=b;while(1){B[e|0]=E[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){B[e|0]=E[c|0];B[e+1|0]=E[c+1|0];B[e+2|0]=E[c+2|0];B[e+3|0]=E[c+3|0];B[e+4|0]=E[c+4|0];B[e+5|0]=E[c+5|0];B[e+6|0]=E[c+6|0];B[e+7|0]=E[c+7|0];e=e+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}function mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=$-16|0;$=e;i=D[b+80>>2];a=B[c+24|0];f=J(i,a);a:{b:{b=D[c+28>>2];c:{if(!(!E[c+84|0]|(b|0)!=5&(b|0)!=6)){h=D[c+48>>2];i=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=na(a);b=oa(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=j;D[d>>2]=c;a=1;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=na(b);D[e>>2]=h;g=b+h|0;D[e+8>>2]=g;pa(h,0,b);D[e+4>>2]=g}g=D[d>>2];b=D[d+4>>2]-g>>2;d:{if(b>>>0>>0){sa(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}D[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!zb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(zb(c,E[c+84|0]?f:D[D[c+68>>2]+(f<<2)>>2],B[c+24|0],h)){o=D[d>>2];m=0;g=D[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;D[k>>2]=D[g+l>>2];D[k+4>>2]=D[g+(l|4)>>2];D[k+8>>2]=D[g+(l|8)>>2];D[k+12>>2]=D[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){D[(j<<2)+o>>2]=D[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=D[e>>2]}if(h){ma(h)}a=b^1}$=e+16|0;a=a&1;break a}qa();T()}return a|0}function $c(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=$-16|0;$=e;i=D[b+80>>2];a=B[c+24|0];f=J(i,a);a:{b:{b=D[c+28>>2];c:{if(!(!E[c+84|0]|(b|0)!=5&(b|0)!=6)){h=D[c+48>>2];i=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=na(a);b=oa(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=j;D[d>>2]=c;a=1;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=na(b);D[e>>2]=h;g=b+h|0;D[e+8>>2]=g;pa(h,0,b);D[e+4>>2]=g}g=D[d>>2];b=D[d+4>>2]-g>>2;d:{if(b>>>0>>0){sa(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}D[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!Ab(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(Ab(c,E[c+84|0]?f:D[D[c+68>>2]+(f<<2)>>2],B[c+24|0],h)){o=D[d>>2];m=0;g=D[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;D[k>>2]=D[g+l>>2];D[k+4>>2]=D[g+(l|4)>>2];D[k+8>>2]=D[g+(l|8)>>2];D[k+12>>2]=D[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){D[(j<<2)+o>>2]=D[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=D[e>>2]}if(h){ma(h)}a=b^1}$=e+16|0;a=a&1;break a}qa();T()}return a|0}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=$-16|0;$=e;i=D[b+80>>2];a=B[c+24|0];f=J(i,a);a:{b:{b=D[c+28>>2];c:{if(!(!E[c+84|0]|(b|0)!=3&(b|0)!=4)){h=D[c+48>>2];i=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=na(a);b=oa(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=j;D[d>>2]=c;a=1;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=na(b);D[e>>2]=h;g=b+h|0;D[e+8>>2]=g;pa(h,0,b);D[e+4>>2]=g}g=D[d>>2];b=D[d+4>>2]-g>>1;d:{if(b>>>0>>0){hd(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}D[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!Cb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(Cb(c,E[c+84|0]?f:D[D[c+68>>2]+(f<<2)>>2],B[c+24|0],h)){o=D[d>>2];m=0;g=D[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;C[k>>1]=F[g+l>>1];C[k+2>>1]=F[g+(l|2)>>1];C[k+4>>1]=F[g+(l|4)>>1];C[k+6>>1]=F[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){C[(j<<1)+o>>1]=F[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=D[e>>2]}if(h){ma(h)}a=b^1}$=e+16|0;a=a&1;break a}qa();T()}return a|0}function nf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=$-16|0;$=e;i=D[b+80>>2];a=B[c+24|0];f=J(i,a);a:{b:{b=D[c+28>>2];c:{if(!(!E[c+84|0]|(b|0)!=3&(b|0)!=4)){h=D[c+48>>2];i=D[D[c>>2]>>2];b=0;D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=na(a);b=oa(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=D[d>>2];if(a){D[d+4>>2]=a;ma(a)}D[d+8>>2]=b;D[d+4>>2]=j;D[d>>2]=c;a=1;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=na(b);D[e>>2]=h;g=b+h|0;D[e+8>>2]=g;pa(h,0,b);D[e+4>>2]=g}g=D[d>>2];b=D[d+4>>2]-g>>1;d:{if(b>>>0>>0){hd(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}D[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!Bb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(Bb(c,E[c+84|0]?f:D[D[c+68>>2]+(f<<2)>>2],B[c+24|0],h)){o=D[d>>2];m=0;g=D[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;C[k>>1]=F[g+l>>1];C[k+2>>1]=F[g+(l|2)>>1];C[k+4>>1]=F[g+(l|4)>>1];C[k+6>>1]=F[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){C[(j<<1)+o>>1]=F[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=D[e>>2]}if(h){ma(h)}a=b^1}$=e+16|0;a=a&1;break a}qa();T()}return a|0}function Nh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;D[a+8>>2]=e;f=a+32|0;i=D[f>>2];h=D[a+36>>2]-i>>2;a:{if(h>>>0>>0){sa(f,e-h|0);i=D[f>>2];f=D[a+8>>2];break a}if(e>>>0>>0){D[a+36>>2]=(e<<2)+i}f=e}h=0;g=(e&1073741823)!=(e|0)?-1:e<<2;m=pa(na(g),0,g);b:{if((f|0)<=0){break b}while(1){f=h<<2;g=D[f+m>>2];j=D[a+16>>2];c:{if((g|0)>(j|0)){D[f+i>>2]=j;break c}f=f+i|0;j=D[a+12>>2];if((j|0)>(g|0)){D[f>>2]=j;break c}D[f>>2]=g}f=D[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}if((f|0)<=0){break b}h=0;while(1){g=h<<2;f=g+c|0;g=D[b+g>>2]+D[g+i>>2]|0;D[f>>2]=g;d:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break d}g=g+D[a+20>>2]|0}D[f>>2]=g}f=D[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}if(!((d|0)<=(e|0)|(f|0)<=0)){o=0-e<<2;i=e;while(1){e:{if((f|0)<=0){break e}l=i<<2;n=l+c|0;p=n+o|0;j=D[a+32>>2];h=0;while(1){f=h<<2;g=D[f+p>>2];k=D[a+16>>2];f:{if((g|0)>(k|0)){D[f+j>>2]=k;break f}f=f+j|0;k=D[a+12>>2];if((k|0)>(g|0)){D[f>>2]=k;break f}D[f>>2]=g}f=D[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}h=0;if((f|0)<=0){break e}l=b+l|0;while(1){g=h<<2;f=g+n|0;g=D[g+l>>2]+D[g+j>>2]|0;D[f>>2]=g;g:{if((g|0)>D[a+16>>2]){g=g-D[a+20>>2]|0}else{if((g|0)>=D[a+12>>2]){break g}g=g+D[a+20>>2]|0}D[f>>2]=g}f=D[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}i=e+i|0;if((i|0)<(d|0)){continue}break}}ma(m);return 1}function mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=$-16|0;$=j;c=D[b+20>>2];d=D[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=D[b+12>>2];a:{if((e|0)<=(c|0)&g>>>0>G[b+8>>2]|(c|0)>(e|0)){break a}d=d+D[b>>2]|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=g;D[b+20>>2]=c;if((d|0)<0){break a}jb(a+76|0,d);c=j;D[c>>2]=0;D[c+4>>2]=0;B[c+5|0]=0;B[c+6|0]=0;B[c+7|0]=0;B[c+8|0]=0;B[c+9|0]=0;B[c+10|0]=0;B[c+11|0]=0;B[c+12|0]=0;b:{if(!Ma(c,b)){break b}if(d){e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^i;if(e&1){f=D[g>>2]&(f^-1)}else{f=f|D[g>>2]}e=e^1;D[g>>2]=f;h=h+1|0;if((d|0)!=(h|0)){continue}break}}h=0;d=D[b+12>>2];g=d;c=D[b+20>>2];e=c;f=D[b+16>>2];i=f+4|0;c=i>>>0<4?c+1|0:c;k=D[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break b}l=D[b>>2];d=l+f|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=i;D[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break b}c=i+l|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[b+16>>2]=f;D[b+20>>2]=e;if((c|0)<(d|0)){break b}D[a+16>>2]=c;D[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break b}h=1;b=c+1|0;D[a+20>>2]=b;c=b>>>1|0;D[a+24>>2]=c;D[a+28>>2]=0-c;if(b&1){break b}D[a+24>>2]=c-1}}$=j+16|0;return h|0}function qf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=$-16|0;$=g;h=D[b+80>>2];i=E[c+24|0];e=i<<24>>24;b=J(h,e);a:{b:{a=D[c+28>>2];c:{if(!(!E[c+84|0]|(a|0)!=1&(a|0)!=2)){e=D[c+48>>2];c=D[D[c>>2]>>2];a=0;D[g+8>>2]=0;D[g>>2]=0;D[g+4>>2]=0;if(b){if((b|0)<0){break b}f=na(b);a=oa(f,c+e|0,b)+b|0}b=D[d>>2];if(b){D[d+4>>2]=b;ma(b)}D[d+8>>2]=a;D[d+4>>2]=a;D[d>>2]=f;b=1;break c}a=0;D[g+8>>2]=0;D[g>>2]=0;D[g+4>>2]=0;d:{e:{if(e){if((e|0)<0){break b}f=na(e);D[g>>2]=f;pa(f,0,e);Ka(d,b);if(h){break e}b=1;break d}Ka(d,b);b=1;if(!h){break c}while(1){if(Eb(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],0)){a=a+1|0;b=h>>>0>a>>>0;if((a|0)!=(h|0)){continue}}break}b=b^1;break c}b=e-1|0;j=b&-2;k=b&1;b=1;e=0;f:{while(1){f=D[g>>2];if(!Eb(c,E[c+84|0]?e:D[D[c+68>>2]+(e<<2)>>2],B[c+24|0],f)){break f}B[D[d>>2]+a|0]=E[f|0];b=1;a=a+1|0;f=0;g:{h:{switch(i-1|0){default:while(1){B[D[d>>2]+a|0]=E[D[g>>2]+b|0];B[(D[d>>2]+a|0)+1|0]=E[(D[g>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break};break;case 0:break g;case 1:break h}}if(!k){break g}B[D[d>>2]+a|0]=E[D[g>>2]+b|0];a=a+1|0}e=e+1|0;b=h>>>0>e>>>0;if((e|0)!=(h|0)){continue}break}f=D[g>>2]}b=!b;if(!f){break c}}ma(f)}$=g+16|0;a=b&1;break a}qa();T()}return a|0}function pf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=$-16|0;$=g;h=D[b+80>>2];i=E[c+24|0];e=i<<24>>24;b=J(h,e);a:{b:{a=D[c+28>>2];c:{if(!(!E[c+84|0]|(a|0)!=1&(a|0)!=2)){e=D[c+48>>2];c=D[D[c>>2]>>2];a=0;D[g+8>>2]=0;D[g>>2]=0;D[g+4>>2]=0;if(b){if((b|0)<0){break b}f=na(b);a=oa(f,c+e|0,b)+b|0}b=D[d>>2];if(b){D[d+4>>2]=b;ma(b)}D[d+8>>2]=a;D[d+4>>2]=a;D[d>>2]=f;b=1;break c}a=0;D[g+8>>2]=0;D[g>>2]=0;D[g+4>>2]=0;d:{e:{if(e){if((e|0)<0){break b}f=na(e);D[g>>2]=f;pa(f,0,e);Ka(d,b);if(h){break e}b=1;break d}Ka(d,b);b=1;if(!h){break c}while(1){if(Db(c,E[c+84|0]?a:D[D[c+68>>2]+(a<<2)>>2],B[c+24|0],0)){a=a+1|0;b=h>>>0>a>>>0;if((a|0)!=(h|0)){continue}}break}b=b^1;break c}b=e-1|0;j=b&-2;k=b&1;b=1;e=0;f:{while(1){f=D[g>>2];if(!Db(c,E[c+84|0]?e:D[D[c+68>>2]+(e<<2)>>2],B[c+24|0],f)){break f}B[D[d>>2]+a|0]=E[f|0];b=1;a=a+1|0;f=0;g:{h:{switch(i-1|0){default:while(1){B[D[d>>2]+a|0]=E[D[g>>2]+b|0];B[(D[d>>2]+a|0)+1|0]=E[(D[g>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break};break;case 0:break g;case 1:break h}}if(!k){break g}B[D[d>>2]+a|0]=E[D[g>>2]+b|0];a=a+1|0}e=e+1|0;b=h>>>0>e>>>0;if((e|0)!=(h|0)){continue}break}f=D[g>>2]}b=!b;if(!f){break c}}ma(f)}$=g+16|0;a=b&1;break a}qa();T()}return a|0}function hc(a,b){var c=0,d=0,e=0,f=0,g=0;f=-1;d=-1;a:{if((b|0)==-1){break a}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}b:{c:{d:{switch(D[a+168>>2]){case 0:case 1:e=D[a+148>>2];c=1;b=D[a+156>>2];g=b+(((f|0)!=-1?D[D[e>>2]+(f<<2)>>2]:-1)<<2)|0;D[g>>2]=D[g>>2]+1;b=(((d|0)!=-1?D[D[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=D[a+148>>2];c=-1;c=((b|0)!=-1?D[D[e>>2]+(b<<2)>>2]:c)<<2;b=D[a+156>>2];c=c+b|0;D[c>>2]=D[c>>2]+1;c=(((f|0)!=-1?D[D[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;D[c>>2]=D[c>>2]+1;c=2;b=(((d|0)!=-1?D[D[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 3:e=D[a+148>>2];c=-1;c=((b|0)!=-1?D[D[e>>2]+(b<<2)>>2]:c)<<2;b=D[a+156>>2];c=c+b|0;D[c>>2]=D[c>>2]+1;c=(((f|0)!=-1?D[D[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;D[c>>2]=D[c>>2]+2;c=1;b=(((d|0)!=-1?D[D[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 7:break d;default:break b}}e=D[a+148>>2];c=-1;c=((b|0)!=-1?D[D[e>>2]+(b<<2)>>2]:c)<<2;b=D[a+156>>2];c=c+b|0;D[c>>2]=D[c>>2]+2;c=(((f|0)!=-1?D[D[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;D[c>>2]=D[c>>2]+2;c=2;b=(((d|0)!=-1?D[D[e>>2]+(d<<2)>>2]:-1)<<2)+b|0}D[b>>2]=D[b>>2]+c}c=a;d=D[a+180>>2];b=D[D[a+156>>2]+(((f|0)!=-1?D[D[D[a+148>>2]>>2]+(f<<2)>>2]:-1)<<2)>>2];a=D[a+176>>2];D[c+172>>2]=(a|0)>(b|0)?0:((b|0)>(d|0)?d:b)-a|0}function Vb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=D[a+8>>2];e=D[a>>2];if(d-e>>2>>>0>=b>>>0){g=D[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){D[d>>2]=D[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){D[d>>2]=D[c>>2];D[d+4>>2]=D[c>>2];D[d+8>>2]=D[c>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=D[c>>2];D[d+20>>2]=D[c>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=D[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){d=a;a=b-h|0;if(a){a=(a<<2)+g|0;while(1){D[g>>2]=D[c>>2];g=g+4|0;if((a|0)!=(g|0)){continue}break}}else{a=g}D[d+4>>2]=a;return}D[a+4>>2]=e+(b<<2);return}if(e){D[a+4>>2]=e;ma(e);D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=na(d);D[a>>2]=e;D[a+8>>2]=d+e;c=D[c>>2];d=e;g=b&7;if(g){while(1){D[d>>2]=c;d=d+4|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){D[d+28>>2]=c;D[d+24>>2]=c;D[d+20>>2]=c;D[d+16>>2]=c;D[d+12>>2]=c;D[d+8>>2]=c;D[d+4>>2]=c;D[d>>2]=c;d=d+32|0;if((e|0)!=(d|0)){continue}break}}D[a+4>>2]=e;return}qa();T()}function wg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=D[a+32>>2];e=D[c+8>>2];f=D[c+12>>2];d=D[c+20>>2];g=e;e=D[c+16>>2];b=0;b:{if((f|0)<=(d|0)&g>>>0<=e>>>0|(d|0)>(f|0)){break b}g=E[e+D[c>>2]|0];f=e+1|0;d=f?d:d+1|0;D[c+16>>2]=f;D[c+20>>2]=d;c:{if(!g){break c}while(1){if(ba[D[D[a>>2]+16>>2]](a,b)|0){b=b+1|0;if((g|0)!=(b|0)){continue}break c}break}return 0}b=D[a+8>>2];d=D[a+12>>2];if((b|0)!=(d|0)){while(1){c=D[b>>2];if(!(ba[D[D[c>>2]+8>>2]](c,a,D[a+4>>2])|0)){break a}b=b+4|0;if((d|0)!=(b|0)){continue}break}}d:{if(!g){break d}b=0;while(1){c=D[D[a+8>>2]+(b<<2)>>2];if(!(ba[D[D[c>>2]+12>>2]](c,D[a+32>>2])|0)){break a}b=b+1|0;if((g|0)!=(b|0)){continue}break}if(!g){break d}e=a+20|0;while(1){b=0;f=h<<2;c=D[f+D[a+8>>2]>>2];d=ba[D[D[c>>2]+24>>2]](c)|0;if((d|0)>0){while(1){c=D[D[a+8>>2]+f>>2];k=ba[D[D[c>>2]+20>>2]](c,b)|0;i=D[a+20>>2];j=D[a+24>>2]-i>>2;e:{if(k>>>0>>0){break e}c=k+1|0;if(c>>>0>j>>>0){sa(e,c-j|0);i=D[e>>2];break e}if(c>>>0>=j>>>0){break e}D[a+24>>2]=(c<<2)+i}D[(k<<2)+i>>2]=h;b=b+1|0;if((d|0)!=(b|0)){continue}break}}h=h+1|0;if((g|0)!=(h|0)){continue}break}}b=0;if(!(ba[D[D[a>>2]+28>>2]](a)|0)){break b}b=ba[D[D[a>>2]+32>>2]](a)|0}return b|0}return 0}function Re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;Kc(a,b,c);c=D[a+84>>2];d=D[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=D[a+92>>2];c=D[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=d&7;if(f){while(1){D[b>>2]=1;b=b+4|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}c=(d<<2)+c|0;if((d-1&1073741823)>>>0<7){break c}while(1){D[b+24>>2]=1;D[b+28>>2]=1;D[b+16>>2]=1;D[b+20>>2]=1;D[b+8>>2]=1;D[b+12>>2]=1;D[b>>2]=1;D[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}D[a+88>>2]=c;break b}d:{f=D[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;h=e>>1;e=e>>>0<2147483644?b>>>0>h>>>0?b:h:1073741823;if(e){if(e>>>0>=1073741824){break d}i=na(e<<2)}c=(c<<2)+i|0;b=c;h=d&7;if(h){b=c;while(1){D[b>>2]=1;b=b+4|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}c=c+(d<<2)|0;if((d-1&1073741823)>>>0>=7){while(1){D[b+24>>2]=1;D[b+28>>2]=1;D[b+16>>2]=1;D[b+20>>2]=1;D[b+8>>2]=1;D[b+12>>2]=1;D[b>>2]=1;D[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){oa(i,f,j)}D[a+92>>2]=(e<<2)+i;D[a+88>>2]=c;D[a+84>>2]=i;if(f){ma(f)}break b}qa();T()}ra(1326);T()}return}if(b>>>0>=d>>>0){break a}D[a+88>>2]=c+(b<<2)}}function oa(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){Y(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){B[c|0]=E[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){D[c>>2]=D[b>>2];D[c+4>>2]=D[b+4>>2];D[c+8>>2]=D[b+8>>2];D[c+12>>2]=D[b+12>>2];D[c+16>>2]=D[b+16>>2];D[c+20>>2]=D[b+20>>2];D[c+24>>2]=D[b+24>>2];D[c+28>>2]=D[b+28>>2];D[c+32>>2]=D[b+32>>2];D[c+36>>2]=D[b+36>>2];D[c+40>>2]=D[b+40>>2];D[c+44>>2]=D[b+44>>2];D[c+48>>2]=D[b+48>>2];D[c+52>>2]=D[b+52>>2];D[c+56>>2]=D[b+56>>2];D[c+60>>2]=D[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){D[c>>2]=D[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){B[c|0]=E[b|0];B[c+1|0]=E[b+1|0];B[c+2|0]=E[b+2|0];B[c+3|0]=E[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){B[c|0]=E[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function xa(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=D[a+8>>2];e=D[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=b&7;if(g){while(1){D[d>>2]=D[c>>2];d=d+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}e=(b<<2)+e|0;if((b-1&1073741823)>>>0<7){break a}while(1){D[d>>2]=D[c>>2];D[d+4>>2]=D[c>>2];D[d+8>>2]=D[c>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=D[c>>2];D[d+20>>2]=D[c>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=D[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}D[a+4>>2]=e;return}b:{g=D[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;i=f>>1;f=f>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(f){if(f>>>0>=1073741824){break b}j=na(f<<2)}e=(e<<2)+j|0;d=e;i=b&7;if(i){d=e;while(1){D[d>>2]=D[c>>2];d=d+4|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){D[d>>2]=D[c>>2];D[d+4>>2]=D[c>>2];D[d+8>>2]=D[c>>2];D[d+12>>2]=D[c>>2];D[d+16>>2]=D[c>>2];D[d+20>>2]=D[c>>2];D[d+24>>2]=D[c>>2];D[d+28>>2]=D[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}if((k|0)>0){oa(j,g,k)}D[a+8>>2]=(f<<2)+j;D[a+4>>2]=e;D[a>>2]=j;if(g){ma(g)}return}qa();T()}ra(1326);T()}function od(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;D[a>>2]=8364;d=a+232|0;b=D[d+196>>2];if(b){D[d+200>>2]=b;ma(b)}c=D[d+184>>2];if(c){b=D[d+188>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;f=D[e>>2];if(f){D[b-8>>2]=f;ma(f)}b=e;if((c|0)!=(b|0)){continue}break}b=D[d+184>>2]}D[d+188>>2]=c;ma(b)}b=D[d+156>>2];if(b){D[d+160>>2]=b;ma(b)}c=D[d+136>>2];D[d+136>>2]=0;if(c){e=c-4|0;b=D[e>>2];if(b){b=c+(b<<4)|0;while(1){b=b-16|0;if((c|0)!=(b|0)){continue}break}}ma(e)}pd(a+216|0);b=D[a+196>>2];if(b){D[a+200>>2]=b;ma(b)}b=D[a+184>>2];if(b){D[a+188>>2]=b;ma(b)}b=D[a+172>>2];if(b){D[a+176>>2]=b;ma(b)}b=D[a+160>>2];if(b){D[a+164>>2]=b;ma(b)}b=D[a+144>>2];if(b){while(1){c=D[b>>2];ma(b);b=c;if(b){continue}break}}b=D[a+136>>2];D[a+136>>2]=0;if(b){ma(b)}b=D[a+120>>2];if(b){ma(b)}b=D[a+108>>2];if(b){ma(b)}b=D[a+96>>2];if(b){ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+60>>2];if(b){ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}b=D[a+36>>2];if(b){D[a+40>>2]=b;ma(b)}b=D[a+24>>2];if(b){D[a+28>>2]=b;ma(b)}b=D[a+12>>2];if(b){D[a+16>>2]=b;ma(b)}b=D[a+8>>2];D[a+8>>2]=0;if(b){cb(b)}return a|0}function ci(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=M(d)-M(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;aa=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>fi(d)|0;aa=0;break a}if(!(g-1&g)){break f}h=(M(g)+33|0)-M(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;aa=0;break a}c=M(d)-M(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=fi(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<>>d}aa=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;i=b>>>f|0}else{c=b>>>f|0;i=((1<>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<>>32-e|b<>>31;f=f<<1|i>>>31;j=m-(f+(c>>>0>e>>>0)|0)>>31;k=g&j;i=c-k|0;f=f-((d&j)+(c>>>0>>0)|0)|0;b=b<<1|a>>>31;a=l|a<<1;l=j&1;h=h-1|0;if(h){continue}break}}aa=b<<1|a>>>31;a=l|a<<1;break a}a=0;b=0}aa=b}return a}function pb(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);B[b+12|0]=c;a:{if(c){break a}while(1){d=D[b+8>>2];if(E[d+12|0]){break a}b:{c=D[d+8>>2];e=D[c>>2];c:{if((d|0)==(e|0)){e=D[c+4>>2];if(!(!e|E[e+12|0])){break b}d:{if(D[d>>2]==(b|0)){b=d;break d}b=D[d+4>>2];a=D[b>>2];D[d+4>>2]=a;if(a){D[a+8>>2]=d;c=D[d+8>>2]}D[b+8>>2]=c;a=D[d+8>>2];D[(((d|0)!=D[a>>2])<<2)+a>>2]=b;D[b>>2]=d;D[d+8>>2]=b;c=D[b+8>>2]}B[b+12|0]=1;B[c+12|0]=0;a=D[c>>2];b=D[a+4>>2];D[c>>2]=b;if(b){D[b+8>>2]=c}D[a+8>>2]=D[c+8>>2];b=D[c+8>>2];D[((D[b>>2]!=(c|0))<<2)+b>>2]=a;D[a+4>>2]=c;b=c+8|0;break c}if(!(E[e+12|0]|!e)){break b}e:{if(D[d>>2]!=(b|0)){b=d;break e}a=D[b+4>>2];D[d>>2]=a;if(a){D[a+8>>2]=d;c=D[d+8>>2]}D[b+8>>2]=c;a=D[d+8>>2];D[(((d|0)!=D[a>>2])<<2)+a>>2]=b;D[b+4>>2]=d;D[d+8>>2]=b;c=D[b+8>>2]}B[b+12|0]=1;B[c+12|0]=0;a=D[c+4>>2];b=D[a>>2];D[c+4>>2]=b;if(b){D[b+8>>2]=c}D[a+8>>2]=D[c+8>>2];b=D[c+8>>2];D[((D[b>>2]!=(c|0))<<2)+b>>2]=a;D[a>>2]=c;b=c+8|0}D[b>>2]=a;break a}B[d+12|0]=1;d=(a|0)==(c|0);B[c+12|0]=d;B[e+12|0]=1;b=c;if(!d){continue}break}}}function xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=K(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=$-16|0;$=k;if(D[c+28>>2]==9){d=D[a+4>>2];g=B[c+24|0];e=g<<2;f=na((g&1073741823)!=(g|0)?-1:e);l=k+8|0;D[l>>2]=1065353216;i=H[a+20>>2];d=-1<0){H[l>>2]=i/K(d|0)}o=(d|0)>0;a:{if(!o){break a}j=D[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){oa(D[D[c+64>>2]>>2]+d|0,f,e);d=d+e|0;oa(d+D[D[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}oa(D[D[c+64>>2]>>2]+d|0,f,e);break a}p=D[D[b>>2]>>2]+D[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=D[a+8>>2];i=H[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;H[h+f>>2]=K(i*K(D[q>>2]))+H[h+m>>2];h=h|4;H[h+f>>2]=K(i*K(D[q+4>>2]))+H[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;H[b+f>>2]=K(i*K(D[(d<<2)+p>>2]))+H[b+m>>2];d=d+1|0}oa(D[D[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}ma(f)}$=k+16|0;return o|0}function te(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(Yc(a,b)){i=a+36|0;g=ba[D[D[a>>2]+24>>2]](a)|0;d=D[a+40>>2];e=D[a+36>>2];c=d-e>>2;a:{if(g>>>0>c>>>0){Qb(i,g-c|0);break a}if(c>>>0<=g>>>0){break a}e=e+(g<<2)|0;if((e|0)!=(d|0)){while(1){d=d-4|0;c=D[d>>2];D[d>>2]=0;if(c){ba[D[D[c>>2]+4>>2]](c)}if((d|0)!=(e|0)){continue}break}}D[a+40>>2]=e}b:{if((g|0)<=0){e=0;break b}e=1;c=D[b+20>>2];d=D[b+12>>2];f=D[b+16>>2];if((c|0)>=(d|0)&f>>>0>=G[b+8>>2]|(c|0)>(d|0)){break b}d=0;while(1){h=E[f+D[b>>2]|0];f=f+1|0;c=f?c:c+1|0;D[b+16>>2]=f;D[b+20>>2]=c;f=ba[D[D[a>>2]+48>>2]](a,h)|0;h=d<<2;j=h+D[a+36>>2]|0;c=D[j>>2];D[j>>2]=f;if(c){ba[D[D[c>>2]+4>>2]](c)}c=D[D[i>>2]+h>>2];if(!c){break b}if(!(l=c,m=ba[D[D[a>>2]+28>>2]](a)|0,n=ba[D[D[a>>2]+20>>2]](a,d)|0,k=D[D[c>>2]+8>>2],ba[k](l|0,m|0,n|0)|0)){break b}d=d+1|0;e=(g|0)>(d|0);if((d|0)==(g|0)){break b}f=D[b+16>>2];c=D[b+20>>2];h=D[b+12>>2];if(f>>>0>2]&(c|0)<=(h|0)|(c|0)<(h|0)){continue}break}}a=!e}else{a=0}return a|0}function rh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=D[b+88>>2];if(!(!c|D[c>>2]!=1)){d=D[c+8>>2];D[a+4>>2]=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);d=B[b+24|0];e=D[a+8>>2];f=D[a+12>>2]-e>>2;a:{if(d>>>0>f>>>0){sa(a+8|0,d-f|0);d=B[b+24|0];e=D[a+8>>2];break a}if(d>>>0>=f>>>0){break a}D[a+12>>2]=(d<<2)+e}k=1;f=D[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){g=d<<2;c=b+f|0;D[g+e>>2]=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[(g|4)+e>>2]=E[c+4|0]|E[c+5|0]<<8|(E[c+6|0]<<16|E[c+7|0]<<24);D[(g|8)+e>>2]=E[c+8|0]|E[c+9|0]<<8|(E[c+10|0]<<16|E[c+11|0]<<24);D[(g|12)+e>>2]=E[c+12|0]|E[c+13|0]<<8|(E[c+14|0]<<16|E[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+f|0;D[(d<<2)+e>>2]=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+f|0;D[c+20>>2]=E[a|0]|E[a+1|0]<<8|(E[a+2|0]<<16|E[a+3|0]<<24)}return k|0}function Ja(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;i=D[(D[D[a+8>>2]+96>>2]+J(d,12)|0)+(c-J(d,3)<<2)>>2];e=D[D[a+12>>2]+4>>2];d=D[e+4>>2];a:{if((d|0)!=D[e+8>>2]){D[d>>2]=i;D[e+4>>2]=d+4;break a}b:{h=D[e>>2];g=d-h|0;j=g>>2;d=j+1|0;if(d>>>0<1073741824){f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break b}d=na(f<<2)}else{d=0}j=d+(j<<2)|0;D[j>>2]=i;if((g|0)>0){oa(d,h,g)}D[e+8>>2]=d+(f<<2);D[e+4>>2]=j+4;D[e>>2]=d;if(h){ma(h)}break a}qa();T()}ra(1326);T()}e=D[a+4>>2];d=D[e+4>>2];c:{d:{e:{if((d|0)!=D[e+8>>2]){D[d>>2]=c;D[e+4>>2]=d+4;break e}h=D[e>>2];g=d-h|0;i=g>>2;d=i+1|0;if(d>>>0>=1073741824){break d}f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break c}d=na(f<<2)}else{d=0}i=d+(i<<2)|0;D[i>>2]=c;if((g|0)>0){oa(d,h,g)}D[e+8>>2]=d+(f<<2);D[e+4>>2]=i+4;D[e>>2]=d;if(!h){break e}ma(h)}a=D[a+4>>2];D[D[a+12>>2]+(b<<2)>>2]=D[a+24>>2];D[a+24>>2]=D[a+24>>2]+1;return}qa();T()}ra(1326);T()}function Tf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=D[d+80>>2];e=$-48|0;$=e;a=D[a+4>>2];a:{if(a-31>>>0<4294967267){break a}i=D[D[d>>2]>>2]+D[d+48>>2]|0;D[e+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;D[e+24>>2]=a;D[e+32>>2]=(a|0)/2;H[e+28>>2]=K(2)/K(a|0);g=D[c>>2];if((g|0)!=D[c+4>>2]){a=0;d=0;while(1){f=D[(d<<2)+g>>2];h=e+36|0;j=D[D[b>>2]>>2];l=D[b+48>>2];g=D[b+44>>2];k=D[b+40>>2];if(!E[b+84|0]){f=D[D[b+68>>2]+(f<<2)>>2]}f=ai(k,g,f,0)+l|0;oa(h,f+j|0,k);Ec(e+16|0,h,e+12|0,e+8|0);g=a<<2;D[g+i>>2]=D[e+12>>2];D[(g|4)+i>>2]=D[e+8>>2];f=1;a=a+2|0;d=d+1|0;g=D[c>>2];if(d>>>0>2]-g>>2>>>0){continue}break}break a}if(!h){f=1;break a}d=0;a=0;while(1){j=e+36|0;c=D[D[b>>2]>>2];f=D[b+40>>2];g=D[b+48>>2]+ai(f,D[b+44>>2],E[b+84|0]?a:D[D[b+68>>2]+(a<<2)>>2],0)|0;oa(j,c+g|0,f);Ec(e+16|0,j,e+12|0,e+8|0);c=d<<2;D[c+i>>2]=D[e+12>>2];D[(c|4)+i>>2]=D[e+8>>2];d=d+2|0;f=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}$=e+48|0;return f|0}function jb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=$-16|0;$=d;a:{e=D[a+4>>2];b:{if(e>>>0>>0){f=b-e|0;h=D[a+8>>2];c=h<<5;c:{if(!(f>>>0>c>>>0|e>>>0>c-f>>>0)){D[a+4>>2]=b;g=e&31;b=D[a>>2]+(e>>>3&536870908)|0;break c}D[d+8>>2]=0;D[d>>2]=0;D[d+4>>2]=0;if((b|0)<0){break a}if(c>>>0<=1073741822){c=b+31&-32;b=h<<6;b=b>>>0>>0?c:b}else{b=2147483647}Va(d,b);e=D[a+4>>2];D[d+4>>2]=e+f;i=D[a>>2];b=D[d>>2];d:{if((e|0)<=0){break d}c=e>>>5|0;h=c<<2;b=Pa(b,i,h)+h|0;g=e-(c<<5)|0;e:{if((g|0)<=0){g=0;break e}c=-1>>>32-g|0;D[b>>2]=D[b>>2]&(c^-1)|c&D[i+h>>2]}i=D[a>>2]}D[a>>2]=D[d>>2];D[d>>2]=i;c=D[a+4>>2];D[a+4>>2]=D[d+4>>2];D[d+4>>2]=c;c=D[a+8>>2];D[a+8>>2]=D[d+8>>2];D[d+8>>2]=c;if(!i){break c}ma(i)}if(!f){break b}if(g){c=32-g|0;a=c>>>0>f>>>0?f:c;D[b>>2]=D[b>>2]&(-1<>>c-a^-1);f=f-a|0;b=b+4|0}c=f>>>5<<2;a=pa(b,0,c);b=f&31;if(!b){break b}a=a+c|0;D[a>>2]=D[a>>2]&(-1>>>32-b^-1);break b}D[a+4>>2]=b}$=d+16|0;return}Fa();T()}function Sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=E[a+11|0]>>>7|0?D[a+4>>2]:E[a+11|0];if(d>>>0>>0){h=$-16|0;$=h;f=b-d|0;if(f){b=E[a+11|0]>>>7|0;g=b?D[a+4>>2]:E[a+11|0];i=g+f|0;b=b?(D[a+8>>2]&2147483647)-1|0:10;if(b-g>>>0>>0){a:{d=$-16|0;$=d;c=i-b|0;if(c>>>0<=-17-b>>>0){j=E[a+11|0]>>>7|0?D[a>>2]:a;b:{if(b>>>0<2147483623){D[d+8>>2]=b<<1;D[d+12>>2]=b+c;c=$-16|0;$=c;$=c+16|0;c=d+8|0;e=d+12|0;c=D[(G[e>>2]>2]?c:e)>>2];if(c>>>0>=11){e=c+16&-16;c=e-1|0;c=(c|0)==11?e:c}else{c=10}break b}c=-18}e=c+1|0;c=na(e);if(g){Ya(c,j,g)}if((b|0)!=10){ma(j)}D[a>>2]=c;D[a+8>>2]=e|-2147483648;$=d+16|0;break a}Aa();T()}}b=E[a+11|0]>>>7|0?D[a>>2]:a;d=g+b|0;if(f){pa(d,0,f)}c:{if(E[a+11|0]>>>7|0){D[a+4>>2]=i;break c}B[a+11|0]=i}B[h+15|0]=0;B[b+i|0]=E[h+15|0]}$=h+16|0;return}d=$-16|0;$=d;d:{if(E[a+11|0]>>>7|0){f=D[a>>2];B[d+15|0]=0;B[b+f|0]=E[d+15|0];D[a+4>>2]=b;break d}B[d+14|0]=0;B[a+b|0]=E[d+14|0];B[a+11|0]=b}$=d+16|0}function Sg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=D[a+12>>2];c=D[a+108>>2];e=D[c+80>>2];B[b+84|0]=0;f=D[b+68>>2];d=D[b+72>>2]-f>>2;a:{if(d>>>0>>0){xa(b+68|0,e-d|0,9156);c=D[a+108>>2];e=D[c+80>>2];break a}if(e>>>0>=d>>>0){break a}D[b+72>>2]=f+(e<<2)}k=D[c+96>>2];c=D[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=D[l>>2]+(J(c,3)<<2)|0;h=D[d>>2];if((h|0)==-1){break b}f=J(c,12)+k|0;g=D[f>>2];if(g>>>0>=e>>>0){break b}j=D[D[a+112>>2]+12>>2];i=D[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=D[b+68>>2];D[h+(g<<2)>>2]=i;g=D[d+4>>2];if((g|0)==-1){break b}i=D[f+4>>2];if(i>>>0>=e>>>0){break b}g=D[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}D[h+(i<<2)>>2]=g;d=D[d+8>>2];if((d|0)==-1){break b}f=D[f+8>>2];if(f>>>0>=e>>>0){break b}d=D[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}D[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Rg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=$-16|0;$=g;b=D[a+4>>2];d=D[b>>2];a:{c=D[a+12>>2];c=D[c+28>>2]-D[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=D[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=D[b+4>>2];c=na(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){oa(c,d,e)}D[b+8>>2]=h;D[b+4>>2]=f;D[b>>2]=c;if(!d){break b}ma(d)}b=D[a+12>>2];d=D[b+28>>2];b=D[b+24>>2];D[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=D[c>>2];d=D[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){xa(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}D[a+100>>2]=e+(b<<2)}e=a+8|0;b=D[a+116>>2];d:{if(b){c=D[b>>2];if((c|0)==D[b+4>>2]){d=1;break d}b=0;while(1){d=md(e,D[(b<<2)+c>>2]);if(!d){break d}f=D[a+116>>2];c=D[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=D[a+12>>2];a=D[a+4>>2]-D[a>>2]|0;if(a>>>0<12){break d}a=(a>>2>>>0)/3|0;b=0;while(1){d=md(e,J(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}$=g+16|0;return d|0}ra(1326);T()}function Jg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=D[a+12>>2];c=D[a+68>>2];e=D[c+80>>2];B[b+84|0]=0;f=D[b+68>>2];d=D[b+72>>2]-f>>2;a:{if(d>>>0>>0){xa(b+68|0,e-d|0,9156);c=D[a+68>>2];e=D[c+80>>2];break a}if(e>>>0>=d>>>0){break a}D[b+72>>2]=f+(e<<2)}k=D[c+96>>2];c=D[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=D[l>>2]+(J(c,3)<<2)|0;h=D[d>>2];if((h|0)==-1){break b}f=J(c,12)+k|0;g=D[f>>2];if(g>>>0>=e>>>0){break b}j=D[D[a+72>>2]+12>>2];i=D[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=D[b+68>>2];D[h+(g<<2)>>2]=i;g=D[d+4>>2];if((g|0)==-1){break b}i=D[f+4>>2];if(i>>>0>=e>>>0){break b}g=D[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}D[h+(i<<2)>>2]=g;d=D[d+8>>2];if((d|0)==-1){break b}f=D[f+8>>2];if(f>>>0>=e>>>0){break b}d=D[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}D[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Ma(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=$-16|0;$=g;e=D[b+20>>2];c=D[b+12>>2];d=D[b+16>>2];a:{if((e|0)>=(c|0)&d>>>0>=G[b+8>>2]|(c|0)<(e|0)){break a}B[a+12|0]=E[d+D[b>>2]|0];e=D[b+20>>2];c=D[b+16>>2]+1|0;e=c?e:e+1|0;D[b+16>>2]=c;D[b+20>>2]=e;if(!Nd(1,g+12|0,b)){break a}e=D[b+8>>2];h=D[b+16>>2];c=h;d=e-c|0;c=c>>>0>e>>>0;e=D[b+20>>2];f=D[b+12>>2]-(c+e|0)|0;c=D[g+12>>2];if((f|0)<=0&d>>>0>>0|(f|0)<0|(c|0)<=0){break a}d=h+D[b>>2]|0;D[a>>2]=d;k=a;f=c-1|0;i=f+d|0;j=E[i|0];b:{if(j>>>0<=63){D[a+4>>2]=f;a=E[i|0]&63;break b}c:{switch((j>>>6|0)-1|0){case 0:if(c>>>0<2){break a}D[a+4>>2]=c-2;d=(c+d|0)-2|0;a=E[d+1|0]<<8&16128|E[d|0];break b;case 1:break c;default:break a}}if(c>>>0<3){break a}D[a+4>>2]=c-3;d=(c+d|0)-3|0;a=E[d+2|0]<<16&4128768|E[d+1|0]<<8|E[d|0]}a=a+4096|0;D[k+8>>2]=a;if(a>>>0>1048575){break a}a=e;d=c+h|0;a=d>>>0>>0?a+1|0:a;D[b+16>>2]=d;D[b+20>>2]=a;l=1}$=g+16|0;return l}function nd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=D[a+12>>2];h=D[a+8>>2];d=f-h>>2;b=B[b+24|0];a:{if(d>>>0>>0){sa(a+8|0,b-d|0);h=D[a+8>>2];f=D[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;D[a+12>>2]=f}b=0;i=D[c+20>>2];e=D[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=D[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>G[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}oa(h,e+D[c>>2]|0,d);d=D[c+20>>2];e=f+D[c+16>>2]|0;d=e>>>0>>0?d+1|0:d;g=e;D[c+16>>2]=e;D[c+20>>2]=d;e=D[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>G[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+D[c>>2]|0;D[a+20>>2]=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);d=D[c+20>>2];g=D[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;D[c+16>>2]=e;D[c+20>>2]=f;e=D[c+12>>2];if((f|0)>=(e|0)&j>>>0>=G[c+8>>2]|(f|0)>(e|0)){break b}e=E[j+D[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;D[c+16>>2]=f;D[c+20>>2]=d;if(e-1>>>0>29){break b}D[a+4>>2]=e;b=1}return b|0}function Uc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=$-16|0;$=g;a:{b:{if(b){D[a+88>>2]=0;D[a+92>>2]=0;c=D[a+84>>2];D[a+84>>2]=0;if(c){ma(c)}D[a+76>>2]=0;D[a+80>>2]=0;c=D[a+72>>2];D[a+72>>2]=0;if(c){ma(c)}c=D[b>>2];d=D[b+4>>2];B[g+15|0]=0;Ea(a,d-c>>2,g+15|0);c=D[b+28>>2];d=D[b+24>>2];B[g+14|0]=0;Ea(a+12|0,c-d>>2,g+14|0);Vb(a+28|0,D[b+4>>2]-D[b>>2]>>2,10316);d=D[b+28>>2]-D[b+24>>2]|0;e=d>>2;c=D[a+52>>2];c:{if(e>>>0<=D[a+60>>2]-c>>2>>>0){break c}if((d|0)<0){break b}f=D[a+56>>2];d=na(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){oa(d,c,e)}D[a+60>>2]=h;D[a+56>>2]=f;D[a+52>>2]=d;if(!c){break c}ma(c)}d=D[b+28>>2]-D[b+24>>2]|0;e=d>>2;c=D[a+40>>2];d:{if(e>>>0<=D[a+48>>2]-c>>2>>>0){break d}if((d|0)<0){break a}f=D[a+44>>2];d=na(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){oa(d,c,e)}D[a+48>>2]=h;D[a+44>>2]=f;D[a+40>>2]=d;if(!c){break d}ma(c)}B[a+24|0]=1;D[a+64>>2]=b}$=g+16|0;return}ra(1326);T()}ra(1326);T()}function Dg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=D[a+12>>2];c=D[a+68>>2];e=D[c+80>>2];B[b+84|0]=0;g=D[b+68>>2];d=D[b+72>>2]-g>>2;a:{if(d>>>0>>0){xa(b+68|0,e-d|0,9156);c=D[a+68>>2];e=D[c+80>>2];break a}if(e>>>0>=d>>>0){break a}D[b+72>>2]=g+(e<<2)}k=D[c+96>>2];c=D[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;l=c>>>0>1?c:1;m=D[h+28>>2];c=0;b:{while(1){d=(J(c,3)<<2)+m|0;g=D[d>>2];if((g|0)==-1){break b}h=J(c,12)+k|0;i=D[h>>2];if(i>>>0>=e>>>0){break b}f=g<<2;g=D[D[a+72>>2]+12>>2];f=D[f+g>>2];if(f>>>0>=e>>>0){break b}j=i<<2;i=D[b+68>>2];D[j+i>>2]=f;f=D[d+4>>2];if((f|0)==-1){break b}j=D[h+4>>2];if(j>>>0>=e>>>0){break b}f=D[g+(f<<2)>>2];if(f>>>0>=e>>>0){break b}D[i+(j<<2)>>2]=f;d=D[d+8>>2];if((d|0)==-1){break b}h=D[h+8>>2];if(h>>>0>=e>>>0){break b}d=D[g+(d<<2)>>2];if(d>>>0>=e>>>0){break b}D[i+(h<<2)>>2]=d;c=c+1|0;if((l|0)!=(c|0)){continue}break}return 1}return 0}function Ec(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+H[b>>2];k=+H[b+4>>2];l=+H[b+8>>2];g=L(j)+L(k)+L(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=D[a+16>>2];l=+(h|0);g=P(j*l+.5);b:{if(L(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=f+m^f;g=P(k*l+.5);c:{if(L(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+(f+b^b)|0)|0;i=(b|0)<0?0:b;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=D[a+8>>2];e=h+f|0;break d}b=f>>31;b=b+f^b;a=D[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}if(!((a|0)!=(e|0)|b)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((a|0)!=(e|0)|(b|0)>=(h|0))){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}D[c>>2]=a;D[d>>2]=b}function yc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=K(0),f=K(0),g=K(0),h=K(0),i=K(0),j=0,k=K(0),l=K(0),m=K(0),n=K(0),o=0;a:{if(D[c+28>>2]!=9|E[c+24|0]!=3){break a}a=D[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=D[c+80>>2];if(!j){break a}k=K(K(2)/K((1<>2]>>2]+D[c+48>>2]|0;a=D[D[b>>2]>>2]+D[b+48>>2]|0;b=0;while(1){g=K(0);l=K(0);m=K(0);e=K(K(K(D[a>>2])*k)+K(-1));f=K(K(K(D[a+4>>2])*k)+K(-1));i=K(K(K(1)-K(L(e)))-K(L(f)));h=K(O(K(-i),K(0)));n=K(-h);f=K(f+(f>>8;B[c+10|0]=d>>>16;B[c+11|0]=d>>>24;d=(v(l),x(2));B[c+4|0]=d;B[c+5|0]=d>>>8;B[c+6|0]=d>>>16;B[c+7|0]=d>>>24;d=(v(g),x(2));B[c|0]=d;B[c+1|0]=d>>>8;B[c+2|0]=d>>>16;B[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function Sc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=D[a>>2];c=g+(b>>>3&536870908)|0;D[c>>2]=D[c>>2]|1<>2];e=(b|0)==-1;d=-1;a:{if(e){break a}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;d=-1;if((c|0)==-1){break a}d=D[D[f>>2]+(c<<2)>>2]}c=D[a+12>>2];h=(d>>>3&536870908)+c|0;D[h>>2]=D[h>>2]|1<>>0)%3|0){e=b-1|0;break e}e=b+2|0;d=-1;if((e|0)==-1){break d}}d=D[D[f>>2]+(e<<2)>>2]}e=(d>>>3&536870908)+c|0;D[e>>2]=D[e>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}B[a+24|0]=0;a=(b>>>3&536870908)+g|0;D[a>>2]=D[a>>2]|1<>>0)%3|0?a:b-2|0;if((a|0)!=-1){d=D[D[f>>2]+(a<<2)>>2]}a=c+(d>>>3&536870908)|0;D[a>>2]=D[a>>2]|1<>>0)%3|0){b=b-1|0;break g}b=b+2|0;a=-1;if((b|0)==-1){break f}}a=D[D[f>>2]+(b<<2)>>2]}b=1<>>3&536870908)|0;c=D[a>>2];break c}a=c+536870908|0;b=D[c+536870908>>2];c=-2147483648}D[a>>2]=b|c}}function jc(a,b){var c=0,d=0;c=D[b+8>>2];D[a+4>>2]=D[b+4>>2];D[a+8>>2]=c;D[a+20>>2]=D[b+20>>2];c=D[b+16>>2];D[a+12>>2]=D[b+12>>2];D[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=D[b+28>>2];if(c){c:{if(D[a+32>>2]<<5>>>0>=c>>>0){d=D[a+24>>2];break c}d=D[a+24>>2];if(d){ma(d);D[a+32>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;c=D[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=na(c<<2);D[a+32>>2]=c;D[a+28>>2]=0;D[a+24>>2]=d;c=D[b+28>>2]}Pa(d,D[b+24>>2],(c-1>>>3&536870908)+4|0);c=D[b+28>>2]}else{c=0}D[a+28>>2]=c;c=D[b+40>>2];if(c){d:{if(D[a+44>>2]<<5>>>0>=c>>>0){d=D[a+36>>2];break d}d=D[a+36>>2];if(d){ma(d);D[a+44>>2]=0;D[a+36>>2]=0;D[a+40>>2]=0;c=D[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=na(c<<2);D[a+44>>2]=c;D[a+40>>2]=0;D[a+36>>2]=d;c=D[b+40>>2]}Pa(d,D[b+36>>2],(c-1>>>3&536870908)+4|0);b=D[b+40>>2]}else{b=0}D[a+40>>2]=b}return}Fa();T()}Fa();T()}function Id(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=$-16|0;$=g;a:{if(!Ta(1,g+8|0,b)){break a}c=D[b+8>>2];e=D[b+16>>2];h=D[g+12>>2];d=D[b+20>>2];f=D[b+12>>2]-(d+(c>>>0>>0)|0)|0;i=c-e|0;c=D[g+8>>2];if((h|0)==(f|0)&i>>>0>>0|f>>>0>>0){break a}d=d+h|0;f=c+e|0;d=f>>>0>>0?d+1|0:d;D[b+16>>2]=f;D[b+20>>2]=d;if((c|0)<=0){break a}d=e+D[b>>2]|0;D[a+40>>2]=d;h=a;f=c-1|0;e=d+f|0;b=E[e|0];b:{if(b>>>0<=63){D[a+44>>2]=f;a=E[e|0]&63;break b}c:{switch((b>>>6|0)-1|0){case 0:if(c>>>0<2){break a}D[a+44>>2]=c-2;b=(c+d|0)-2|0;a=E[b+1|0]<<8&16128|E[b|0];break b;case 1:if(c>>>0<3){break a}D[a+44>>2]=c-3;b=(c+d|0)-3|0;a=E[b+2|0]<<16&4128768|E[b+1|0]<<8|E[b|0];break b;default:break c}}D[a+44>>2]=c-4;b=(c+d|0)-4|0;a=E[b+2|0]<<16|E[b+3|0]<<24&1056964608|E[b+1|0]<<8|E[b|0]}a=a+16384|0;D[h+48>>2]=a;j=a>>>0<4194304}$=g+16|0;return j}function Le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=$+-64|0;$=f;d=1;a:{if(La(a,b,0)){break a}d=0;if(!b){break a}d=$+-64|0;$=d;e=D[b>>2];g=D[e-4>>2];h=D[e-8>>2];D[d+20>>2]=0;D[d+16>>2]=11052;D[d+12>>2]=b;D[d+8>>2]=11100;e=0;pa(d+24|0,0,39);b=b+h|0;b:{if(La(g,11100,0)){D[d+56>>2]=1;ba[D[D[g>>2]+20>>2]](g,d+8|0,b,b,1,0);e=D[d+32>>2]==1?b:0;break b}ba[D[D[g>>2]+24>>2]](g,d+8|0,b,1,0);c:{switch(D[d+44>>2]){case 0:e=D[d+48>>2]==1?D[d+36>>2]==1?D[d+40>>2]==1?D[d+28>>2]:0:0:0;break b;case 1:break c;default:break b}}if(D[d+32>>2]!=1){if(D[d+48>>2]|D[d+36>>2]!=1|D[d+40>>2]!=1){break b}}e=D[d+24>>2]}$=d- -64|0;d=0;if(!e){break a}b=f+8|0;pa(b|4,0,52);D[f+56>>2]=1;D[f+20>>2]=-1;D[f+16>>2]=a;D[f+8>>2]=e;ba[D[D[e>>2]+28>>2]](e,b,D[c>>2],1);a=D[f+32>>2];if((a|0)==1){D[c>>2]=D[f+24>>2]}d=(a|0)==1}$=f- -64|0;return d|0}function qd(a){a=a|0;var b=0,c=0,d=0,e=0;D[a>>2]=8312;d=D[a+368>>2];D[a+368>>2]=0;if(d){e=d-4|0;b=D[e>>2];if(b){c=(b<<4)+d|0;while(1){c=c-16|0;if((d|0)!=(c|0)){continue}break}}ma(e)}pd(a+216|0);b=D[a+196>>2];if(b){D[a+200>>2]=b;ma(b)}b=D[a+184>>2];if(b){D[a+188>>2]=b;ma(b)}b=D[a+172>>2];if(b){D[a+176>>2]=b;ma(b)}b=D[a+160>>2];if(b){D[a+164>>2]=b;ma(b)}c=D[a+144>>2];if(c){while(1){b=D[c>>2];ma(c);c=b;if(b){continue}break}}b=D[a+136>>2];D[a+136>>2]=0;if(b){ma(b)}b=D[a+120>>2];if(b){ma(b)}b=D[a+108>>2];if(b){ma(b)}b=D[a+96>>2];if(b){ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+60>>2];if(b){ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}b=D[a+36>>2];if(b){D[a+40>>2]=b;ma(b)}b=D[a+24>>2];if(b){D[a+28>>2]=b;ma(b)}b=D[a+12>>2];if(b){D[a+16>>2]=b;ma(b)}b=D[a+8>>2];D[a+8>>2]=0;if(b){cb(b)}return a|0}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{a=$-32|0;$=a;e=za(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=na(g);D[a+24>>2]=g|-2147483648;D[a+16>>2]=f;D[a+20>>2]=e;break c}B[a+27|0]=e;f=a+16|0;if(!e){break b}}oa(f,c,e)}B[e+f|0]=0;D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;d:{c=ab(b,a+16|0);if((c|0)==(b+4|0)){break d}b=D[c+28>>2];f=D[c+32>>2];if((b|0)==(f|0)){break d}b=f-b|0;if(b&3){break d}e=b>>>2|0;f=D[a+4>>2];b=D[a>>2];g=f-b>>2;e:{if(e>>>0>g>>>0){sa(a,e-g|0);b=D[a>>2];f=D[a+4>>2];break e}if(e>>>0>=g>>>0){break e}f=(e<<2)+b|0;D[a+4>>2]=f}if((b|0)!=(f|0)){e=b;b=D[c+28>>2];oa(e,b,D[c+32>>2]-b|0);break d}ua();T()}b=D[d>>2];if(b){D[d+4>>2]=b;ma(b)}D[d>>2]=D[a>>2];D[d+4>>2]=D[a+4>>2];D[d+8>>2]=D[a+8>>2];if(B[a+27|0]<0){ma(D[a+16>>2])}$=a+32|0;break a}Aa();T()}}function lc(a){var b=0,c=0,d=0;b=D[a+8>>2];d=D[a>>2];a:{if(E[a+12|0]){b:{c:{d:{e:{if((b|0)==-1){break e}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break e}b=D[D[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}D[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;D[a+8>>2]=b;if((b|0)!=-1){break b}}c=D[a+4>>2];b=-1;f:{if((c|0)==-1){break f}g:{if((c>>>0)%3|0){c=c-1|0;break g}c=c+2|0;b=-1;if((c|0)==-1){break f}}c=D[D[d+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break f}b=c-1|0;if((c>>>0)%3|0){break f}b=c+2|0}B[a+12|0]=0;D[a+8>>2]=b;return}if((b|0)!=D[a+4>>2]){break a}D[a+8>>2]=-1;return}c=-1;h:{if((b|0)==-1){break h}i:{if((b>>>0)%3|0){b=b-1|0;break i}b=b+2|0;c=-1;if((b|0)==-1){break h}}b=D[D[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break h}c=b-1|0;if((b>>>0)%3|0){break h}c=b+2|0}D[a+8>>2]=c}}function Ld(a){var b=0,c=0,d=0;b=na(32);c=E[1619]|E[1620]<<8;B[b+24|0]=c;B[b+25|0]=c>>>8;c=E[1615]|E[1616]<<8|(E[1617]<<16|E[1618]<<24);d=E[1611]|E[1612]<<8|(E[1613]<<16|E[1614]<<24);B[b+16|0]=d;B[b+17|0]=d>>>8;B[b+18|0]=d>>>16;B[b+19|0]=d>>>24;B[b+20|0]=c;B[b+21|0]=c>>>8;B[b+22|0]=c>>>16;B[b+23|0]=c>>>24;c=E[1607]|E[1608]<<8|(E[1609]<<16|E[1610]<<24);d=E[1603]|E[1604]<<8|(E[1605]<<16|E[1606]<<24);B[b+8|0]=d;B[b+9|0]=d>>>8;B[b+10|0]=d>>>16;B[b+11|0]=d>>>24;B[b+12|0]=c;B[b+13|0]=c>>>8;B[b+14|0]=c>>>16;B[b+15|0]=c>>>24;c=E[1599]|E[1600]<<8|(E[1601]<<16|E[1602]<<24);d=E[1595]|E[1596]<<8|(E[1597]<<16|E[1598]<<24);B[b|0]=d;B[b+1|0]=d>>>8;B[b+2|0]=d>>>16;B[b+3|0]=d>>>24;B[b+4|0]=c;B[b+5|0]=c>>>8;B[b+6|0]=c>>>16;B[b+7|0]=c>>>24;B[b+26|0]=0;D[a>>2]=-1;ta(a+4|0,b,26);ma(b)}function Of(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=$-16|0;$=d;a:{e=za(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=na(f);D[d+8>>2]=f|-2147483648;D[d>>2]=a;D[d+4>>2]=e;break c}B[d+11|0]=e;a=d;if(!e){break b}}oa(a,c,e)}B[a+e|0]=0;c=E[d+11|0];e=c<<24>>24;f=D[d>>2];b=D[b+4>>2];a=0;d:{if(!b){break d}a=c;c=(e|0)<0;a=c?D[d+4>>2]:a;j=c?f:d;while(1){c=E[b+27|0];g=c<<24>>24<0;c=g?D[b+20>>2]:c;k=c>>>0>>0;e:{f:{i=k?c:a;g:{if(i){h=b+16|0;g=g?D[h>>2]:h;h=va(j,g,i);h:{if(!h){if(a>>>0>=c>>>0){break h}break e}if((h|0)<0){break e}}c=va(g,j,i);if(!c){break g}if((c|0)<0){break f}a=1;break d}if(a>>>0>>0){break e}}if(k){break f}a=1;break d}b=b+4|0}b=D[b>>2];if(b){continue}break}a=0}if((e|0)<0){ma(f)}$=d+16|0;break a}Aa();T()}return a|0}function Pa(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return oa(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}B[d|0]=E[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;B[d|0]=E[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;D[c+a>>2]=D[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;B[c+a|0]=E[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){D[d>>2]=D[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){B[d|0]=E[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function Pc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=$-16|0;$=d;g=D[a+24>>2];l=D[a+28>>2];a:{if((g|0)!=(l|0)){while(1){D[d+8>>2]=0;D[d>>2]=0;D[d+4>>2]=0;e=Oc(D[g>>2],b,d);a=E[d+11|0];i=a<<24>>24;j=3;b:{c:{d:{e:{if(!e){break e}j=0;e=E[c+11|0];f=e<<24>>24;k=(i|0)<0?D[d+4>>2]:a;if((k|0)!=(((f|0)<0?D[c+4>>2]:e)|0)){break e}h=(f|0)<0?D[c>>2]:c;f=D[d>>2];e=(i|0)<0;f:{if(!e){if(!i){break f}e=d;if(E[h|0]!=(f&255)){break b}while(1){a=a-1|0;if(!a){break f}f=E[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==E[e|0]){continue}break}break e}if(!k){break f}if(va(e?f:d,h,k)){break d}}m=D[g>>2];j=1}if((i|0)>=0){break c}}ma(D[d>>2])}switch(j|0){case 0:case 3:break b;default:break a}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}m=0}$=d+16|0;return m}function Qb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=D[a+8>>2];c=D[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=pa(c,0,b)+b|0}D[a+4>>2]=c;return}a:{b:{c:{g=D[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>>0<2147483644?e>>>0>h>>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}i=na(e<<2)}d=(f<<2)+i|0;f=b<<2;b=pa(d,0,f);f=b+f|0;e=(e<<2)+i|0;if((c|0)==(g|0)){break b}while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;d=d-4|0;D[d>>2]=b;if((c|0)!=(g|0)){continue}break}D[a+8>>2]=e;b=D[a+4>>2];D[a+4>>2]=f;c=D[a>>2];D[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b-4|0;a=D[b>>2];D[b>>2]=0;if(a){ba[D[D[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}qa();T()}ra(1326);T()}D[a+8>>2]=e;D[a+4>>2]=f;D[a>>2]=b}if(c){ma(c)}}function Ud(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=D[b+12>>2];g=d;c=D[b+20>>2];e=c;f=D[b+16>>2];h=f+4|0;c=h>>>0<4?c+1|0:c;i=D[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}j=D[b>>2];d=j+f|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=h;D[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>i>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break a}c=h+j|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[b+16>>2]=f;D[b+20>>2]=e;if((c|0)<(d|0)){break a}D[a+16>>2]=c;D[a+12>>2]=d;g=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!g&c>>>0>2147483646|g){break a}c=c+1|0;D[a+20>>2]=c;d=c>>>1|0;D[a+24>>2]=d;D[a+28>>2]=0-d;if(!(c&1)){D[a+24>>2]=d-1}k=Ma(a+112|0,b)}return k|0}function pa(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}B[a|0]=b;e=a+c|0;B[e-1|0]=b;if(c>>>0<3){break a}B[a+2|0]=b;B[a+1|0]=b;B[e-3|0]=b;B[e-2|0]=b;if(c>>>0<7){break a}B[a+3|0]=b;B[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=J(b&255,16843009);D[f>>2]=d;b=c-e&-4;c=b+f|0;D[c-4>>2]=d;if(b>>>0<9){break a}D[f+8>>2]=d;D[f+4>>2]=d;D[c-8>>2]=d;D[c-12>>2]=d;if(b>>>0<25){break a}D[f+24>>2]=d;D[f+20>>2]=d;D[f+16>>2]=d;D[f+12>>2]=d;D[c-16>>2]=d;D[c-20>>2]=d;D[c-24>>2]=d;D[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=ai(d,0,1,1);e=aa;b=b+f|0;while(1){D[b+24>>2]=d;D[b+28>>2]=e;D[b+16>>2]=d;D[b+20>>2]=e;D[b+8>>2]=d;D[b+12>>2]=e;D[b>>2]=d;D[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function Rc(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;e=-1;a:{b:{if((b|0)==-1){break b}g=1;f=D[D[D[a+4>>2]+12>>2]+(b<<2)>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)>=0){e=(c>>>0)/3|0;e=D[(D[D[a>>2]+96>>2]+J(e,12)|0)+(c-J(e,3)<<2)>>2]}c:{if((f|0)==-1){break c}g=0;c=((f>>>0)%3|0?-1:2)+f|0;if((c|0)<0){break c}d=(c>>>0)/3|0;d=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(c-J(d,3)<<2)>>2]}c=-1;if((d|0)!=(e|0)){break a}e=-1;d:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){d=(b>>>0)/3|0;d=D[(D[D[a>>2]+96>>2]+J(d,12)|0)+(b-J(d,3)<<2)>>2];if(g){break b}break d}d=-1;if(!g){break d}break b}b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)<0){break b}c=D[D[a>>2]+96>>2];a=(b>>>0)/3|0;e=D[(c+J(a,12)|0)+(b-J(a,3)<<2)>>2]}c=(d|0)==(e|0)?f:-1}return c}function Cg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=D[a+4>>2];d=D[b>>2];a:{c=D[a+12>>2];c=D[c+56>>2]-D[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=D[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=D[b+4>>2];c=na(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){oa(c,d,e)}D[b+8>>2]=g;D[b+4>>2]=f;D[b>>2]=c;if(!d){break b}ma(d)}e=a+8|0;b=D[a+76>>2];c:{if(b){d=D[b>>2];if((d|0)==D[b+4>>2]){return 1}b=0;while(1){c=kd(e,D[(b<<2)+d>>2]);if(!c){break c}f=D[a+76>>2];d=D[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=D[D[a+12>>2]+64>>2];a=D[a+4>>2]-D[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=kd(e,J(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}ra(1326);T()}function de(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=D[b+12>>2];h=d;c=D[b+20>>2];e=c;f=D[b+16>>2];g=f+4|0;c=g>>>0<4?c+1|0:c;i=D[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}j=D[b>>2];d=j+f|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=g;D[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>i>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=g+j|0;c=E[c|0]|E[c+1|0]<<8|(E[c+2|0]<<16|E[c+3|0]<<24);D[b+16>>2]=f;D[b+20>>2]=e;if((c|0)<(d|0)){break a}D[a+16>>2]=c;D[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}k=1;b=c+1|0;D[a+20>>2]=b;c=b>>>1|0;D[a+24>>2]=c;D[a+28>>2]=0-c;if(b&1){break a}D[a+24>>2]=c-1}return k|0}function Ig(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=D[a+4>>2];d=D[b>>2];a:{c=D[a+12>>2];c=D[c+28>>2]-D[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=D[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=D[b+4>>2];c=na(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){oa(c,d,e)}D[b+8>>2]=g;D[b+4>>2]=f;D[b>>2]=c;if(!d){break b}ma(d)}e=a+8|0;b=D[a+76>>2];c:{if(b){d=D[b>>2];if((d|0)==D[b+4>>2]){return 1}b=0;while(1){c=ld(e,D[(b<<2)+d>>2]);if(!c){break c}f=D[a+76>>2];d=D[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=D[a+12>>2];a=D[a+4>>2]-D[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=ld(e,J(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}ra(1326);T()}function Ef(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=$+-64|0;$=f;e=f+8|0;C[e+38>>1]=0;D[e>>2]=0;D[e+8>>2]=0;D[e+12>>2]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e+24>>2]=0;D[e+28>>2]=0;B[e+29|0]=0;B[e+30|0]=0;B[e+31|0]=0;B[e+32|0]=0;B[e+33|0]=0;B[e+34|0]=0;B[e+35|0]=0;B[e+36|0]=0;D[e+16>>2]=0;D[e+20>>2]=0;D[e>>2]=b;D[e+8>>2]=c;D[e+12>>2]=0;b=f+48|0;Md(b,a,e,d);D[a+24>>2]=D[f+48>>2];c=a+24|0;a:{if((c|0)==(b|0)){break a}e=f+48|4;b=E[f+63|0];d=b<<24>>24;g=a+28|0;if(B[g+11|0]>=0){if((d|0)>=0){a=D[e+4>>2];D[g>>2]=D[e>>2];D[g+4>>2]=a;D[g+8>>2]=D[e+8>>2];break a}sb(g,D[f+52>>2],D[f+56>>2]);break a}a=(d|0)<0;tb(g,a?D[f+52>>2]:e,a?D[f+56>>2]:b)}if(B[f+63|0]<0){ma(D[f+52>>2])}$=f- -64|0;return c|0}function Ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;d=$+-64|0;$=d;C[d+46>>1]=0;D[d+8>>2]=0;D[d+16>>2]=0;D[d+20>>2]=0;D[d+24>>2]=0;D[d+28>>2]=0;D[d+32>>2]=0;D[d+36>>2]=0;B[d+37|0]=0;B[d+38|0]=0;B[d+39|0]=0;B[d+40|0]=0;B[d+41|0]=0;B[d+42|0]=0;B[d+43|0]=0;B[d+44|0]=0;D[d+24>>2]=0;D[d+28>>2]=0;D[d+8>>2]=b;D[d+16>>2]=c;D[d+20>>2]=0;b=d+48|0;Ld(b);D[a+24>>2]=D[d+48>>2];e=a+24|0;a:{if((b|0)==(e|0)){break a}b=d+48|4;f=E[d+63|0];c=f<<24>>24;a=a+28|0;if(B[a+11|0]>=0){if((c|0)>=0){c=D[b+4>>2];D[a>>2]=D[b>>2];D[a+4>>2]=c;D[a+8>>2]=D[b+8>>2];break a}sb(a,D[d+52>>2],D[d+56>>2]);break a}g=a;a=(c|0)<0;tb(g,a?D[d+52>>2]:b,a?D[d+56>>2]:f)}if(B[d+63|0]<0){ma(D[d+52>>2])}$=d- -64|0;return e|0}function we(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=D[b>>2];b=D[b+4>>2];f=D[D[a+8>>2]+40>>2];m=na((f|0)>=0?f:-1);g=1;h=b-d|0;a:{if((h|0)<=0){break a}b=0;g=0;d=0+D[c+20>>2]|0;i=D[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;e=D[c+12>>2];if(j>>>0>G[c+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break a}k=h>>2;g=(k|0)>1?k:1;while(1){b:{e=oa(m,i+D[c>>2]|0,f);D[c+16>>2]=j;D[c+20>>2]=d;oa(D[D[D[a+8>>2]+64>>2]>>2]+b|0,e,f);l=l+1|0;if((g|0)==(l|0)){break b}b=b+f|0;d=n+D[c+20>>2]|0;i=D[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;h=e;e=D[c+12>>2];if((e|0)>=(d|0)&G[c+8>>2]>=h>>>0|(d|0)<(e|0)){continue}}break}g=(l|0)>=(k|0)}ma(m);return g|0}function ne(a,b){a=a|0;b=b|0;a=0;a:{switch(b|0){case 0:a=na(20);D[a+12>>2]=-1;D[a+16>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1948;return a|0;case 1:a=na(24);D[a+12>>2]=-1;D[a+16>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1948;D[a+20>>2]=0;D[a>>2]=2164;return a|0;case 2:a=na(48);D[a+12>>2]=-1;D[a+16>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1948;D[a+20>>2]=0;D[a>>2]=2164;D[a+32>>2]=0;D[a+36>>2]=0;D[a+28>>2]=-1;D[a+24>>2]=1140;D[a>>2]=7976;D[a+40>>2]=0;D[a+44>>2]=0;return a|0;case 3:a=na(32);D[a+12>>2]=-1;D[a+16>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1948;D[a+20>>2]=0;D[a>>2]=2164;D[a+28>>2]=-1;D[a+24>>2]=1032;D[a>>2]=5840;break;default:break a}}return a|0}function lh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;D[b>>2]=1;f=b+8|0;c=D[b+8>>2];d=D[b+12>>2]-c|0;if(d>>>0<=4294967291){Fb(f,d+4|0);c=D[f>>2]}c=c+d|0;d=D[a+4>>2];B[c|0]=d;B[c+1|0]=d>>>8;B[c+2|0]=d>>>16;B[c+3|0]=d>>>24;c=D[a+8>>2];if((c|0)!=D[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=D[b+8>>2];e=D[b+12>>2]-c|0;if(e>>>0<=4294967291){Fb(f,e+4|0);c=D[f>>2]}c=c+e|0;e=D[g>>2];B[c|0]=e;B[c+1|0]=e>>>8;B[c+2|0]=e>>>16;B[c+3|0]=e>>>24;d=d+1|0;c=D[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=D[b+12>>2];b=D[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){Fb(f,c+4|0);b=D[f>>2]}b=b+c|0;a=D[a+20>>2];B[b|0]=a;B[b+1|0]=a>>>8;B[b+2|0]=a>>>16;B[b+3|0]=a>>>24}function Bf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=$-32|0;$=e;a:{b:{f=za(c);if(f>>>0<4294967280){c:{d:{if(f>>>0>=11){g=f+16&-16;a=na(g);D[e+24>>2]=g|-2147483648;D[e+16>>2]=a;D[e+20>>2]=f;break d}B[e+27|0]=f;a=e+16|0;if(!f){break c}}oa(a,c,f)}B[a+f|0]=0;c=za(d);if(c>>>0>=4294967280){break b}e:{f:{if(c>>>0>=11){f=c+16&-16;a=na(f);D[e+8>>2]=f|-2147483648;D[e>>2]=a;D[e+4>>2]=c;break f}B[e+11|0]=c;a=e;if(!c){break e}}oa(a,d,c)}B[a+c|0]=0;c=D[b+4>>2];a=-1;g:{if(!c){break g}c=Pc(c,e+16|0,e);a=-1;if(!c){break g}a=Lc(b,D[c+24>>2])}if(B[e+11|0]<0){ma(D[e>>2])}if(B[e+27|0]<0){ma(D[e+16>>2])}$=e+32|0;break a}Aa();T()}Aa();T()}return a|0}function Ea(a,b,c){var d=0,e=0,f=0,g=0;e=$-16|0;$=e;D[a+4>>2]=0;a:{b:{if(!b){break b}g=D[a+8>>2];d=g<<5;c:{if(d>>>0>=b>>>0){D[a+4>>2]=b;break c}D[e+8>>2]=0;D[e>>2]=0;D[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=b+31&-32;d=g<<6;d=d>>>0>>0?f:d}else{d=2147483647}Va(e,d);f=D[a>>2];D[a>>2]=D[e>>2];D[e>>2]=f;d=D[a+4>>2];D[a+4>>2]=b;D[e+4>>2]=d;d=D[a+8>>2];D[a+8>>2]=D[e+8>>2];D[e+8>>2]=d;if(!f){break c}ma(f)}f=b>>>5|0;d=f<<2;a=D[a>>2];if(E[c|0]){a=pa(a,255,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;D[a>>2]=D[a>>2]|-1>>>32-b;break b}a=pa(a,0,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;D[a>>2]=D[a>>2]&(-1>>>32-b^-1)}$=e+16|0;return}Fa();T()}function ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=D[c+12>>2];d=h;e=D[c+20>>2];i=D[c+8>>2];f=D[c+16>>2];a:{if((d|0)<=(e|0)&i>>>0<=f>>>0|(d|0)<(e|0)){break a}j=D[c>>2];k=B[j+f|0];d=e;g=f+1|0;d=g?d:d+1|0;D[c+16>>2]=g;D[c+20>>2]=d;b:{if((k|0)==-2){break b}if((d|0)>=(h|0)&g>>>0>=i>>>0|(d|0)>(h|0)){break a}d=B[g+j|0];f=f+2|0;e=f>>>0<2?e+1|0:e;D[c+16>>2]=f;D[c+20>>2]=e;if((d-4&255)>>>0<251){break a}e=ba[D[D[a>>2]+40>>2]](a,k,d)|0;d=D[a+20>>2];D[a+20>>2]=e;if(!d){break b}ba[D[D[d>>2]+4>>2]](d)}d=D[a+20>>2];if(d){if(!(ba[D[D[a>>2]+28>>2]](a,d)|0)){break a}}l=ba[D[D[a>>2]+36>>2]](a,b,c)|0}return l|0}function zh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=$-32|0;$=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=pa(na(h),0,h);g=D[b>>2];i=D[b+4>>2];k=D[h+4>>2];D[f+16>>2]=D[h>>2];D[f+20>>2]=k;D[f+8>>2]=g;D[f+12>>2]=i;i=a+8|0;Kb(f+24|0,i,f+16|0,f+8|0);D[c>>2]=D[f+24>>2];D[c+4>>2]=D[f+28>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){g=a<<2;j=g+b|0;m=D[j>>2];j=D[j+4>>2];g=c+g|0;l=g+k|0;n=D[l+4>>2];D[f+16>>2]=D[l>>2];D[f+20>>2]=n;D[f+8>>2]=m;D[f+12>>2]=j;Kb(f+24|0,i,f+16|0,f+8|0);D[g>>2]=D[f+24>>2];D[g+4>>2]=D[f+28>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}ma(h);$=f+32|0;return 1}function hb(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=D[a+8>>2];e=D[a>>2];if(g>>>0<=d-e>>2>>>0){f=D[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){D[e>>2]=D[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>0){f=oa(f,d,b)+b|0}D[a+4>>2]=f;return}D[a+4>>2]=e;return}if(e){D[a+4>>2]=e;ma(e);D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=na(e);D[a>>2]=c;D[a+4>>2]=c;D[a+8>>2]=c+e;if(f){c=oa(c,b,f)+f|0}D[a+4>>2]=c;return}qa();T()}function Od(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=D[b+12>>2];c=D[b+20>>2];f=c;g=D[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=D[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}d=g+D[b>>2]|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=i;D[b+20>>2]=c;c=f;f=g+8|0;c=f>>>0<8?c+1|0:c;if(f>>>0>h>>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}D[b+16>>2]=f;D[b+20>>2]=c;if(!(d&1)){break a}c=M(d)^31;if(c-30>>>0<4294967267){break a}D[a+8>>2]=c+1;e=-2<>2]=c;D[a+12>>2]=e^-1;D[a+24>>2]=(c|0)/2;H[a+20>>2]=K(2)/K(c|0);j=Ma(a+96|0,b)}return j|0}function td(a){var b=0,c=0,d=0,e=0;c=1;d=D[a+140>>2];a:{if((d|0)<=0){break a}b=d<<4;c=na((d|0)!=(d&268435455)?-1:b|4);D[c>>2]=d;c=c+4|0;d=c+b|0;b=c;while(1){D[b>>2]=0;D[b+4>>2]=0;B[b+5|0]=0;B[b+6|0]=0;B[b+7|0]=0;B[b+8|0]=0;B[b+9|0]=0;B[b+10|0]=0;B[b+11|0]=0;B[b+12|0]=0;b=b+16|0;if((d|0)!=(b|0)){continue}break}e=D[a+136>>2];D[a+136>>2]=c;if(e){d=e-4|0;c=D[d>>2];if(c){b=(c<<4)+e|0;while(1){b=b-16|0;if((e|0)!=(b|0)){continue}break}}ma(d)}c=1;if(D[a+140>>2]<=0){break a}b=0;while(1){c=Ma(D[a+136>>2]+(b<<4)|0,a);if(!c){break a}b=b+1|0;if((b|0)>2]){continue}break}}return c}function Lf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a=$-32|0;$=a;D[a+24>>2]=0;D[a+28>>2]=0;a:{d=za(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=na(f);D[a+16>>2]=f|-2147483648;D[a+8>>2]=e;D[a+12>>2]=d;break c}B[a+19|0]=d;e=a+8|0;if(!d){break b}}oa(e,c,d)}B[d+e|0]=0;c=b+4|0;b=ab(b,a+8|0);d:{if((c|0)==(b|0)){break d}c=D[b+32>>2];b=D[b+28>>2];if((c-b|0)!=8){break d}c=E[b+4|0]|E[b+5|0]<<8|(E[b+6|0]<<16|E[b+7|0]<<24);D[a+24>>2]=E[b|0]|E[b+1|0]<<8|(E[b+2|0]<<16|E[b+3|0]<<24);D[a+28>>2]=c}g=I[a+24>>3];if(B[a+19|0]<0){ma(D[a+8>>2])}$=a+32|0;break a}Aa();T()}return+g}function Zb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(D[a+64>>2]){break a}c=na(32);D[c+16>>2]=0;D[c+20>>2]=0;D[c+8>>2]=0;D[c>>2]=0;D[c+4>>2]=0;D[c+24>>2]=0;D[c+28>>2]=0;d=D[a+64>>2];D[a+64>>2]=c;if(!d){break a}c=D[d>>2];if(c){D[d+4>>2]=c;ma(c)}ma(d)}e=D[a+64>>2];c=D[a+28>>2]-1|0;if(c>>>0<=10){d=D[(c<<2)+10180>>2]}else{d=-1}c=J(d,B[a+24|0]);d=c;g=c>>31;e=jd(e,0,ai(c,g,b,0),aa);if(e){c=D[a+64>>2];D[a>>2]=c;f=D[c+20>>2];D[a+8>>2]=D[c+16>>2];D[a+12>>2]=f;f=D[c+24>>2];c=D[c+28>>2];D[a+48>>2]=0;D[a+52>>2]=0;D[a+40>>2]=d;D[a+44>>2]=g;D[a+16>>2]=f;D[a+20>>2]=c;D[a+80>>2]=b}return e}function Dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=D[b+12>>2];c=D[b+20>>2];e=c;g=D[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=D[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}d=g+D[b>>2]|0;d=E[d|0]|E[d+1|0]<<8|(E[d+2|0]<<16|E[d+3|0]<<24);D[b+16>>2]=i;D[b+20>>2]=c;c=e;e=g+8|0;c=e>>>0<8?c+1|0:c;if(e>>>0>h>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}D[b+16>>2]=e;D[b+20>>2]=c;if(!(d&1)){break a}b=M(d)^31;if(b-30>>>0<4294967267){break a}j=1;D[a+8>>2]=b+1;c=-2<>2]=b;D[a+12>>2]=c^-1;D[a+24>>2]=(b|0)/2;H[a+20>>2]=K(2)/K(b|0)}return j|0}function Kd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+4|0;a:{a=D[a+4>>2];if(a){e=E[c+11|0];d=e<<24>>24<0;i=d?D[c>>2]:c;e=d?D[c+4>>2]:e;while(1){c=E[a+27|0];d=c<<24>>24<0;c=d?D[a+20>>2]:c;j=c>>>0>>0;b:{c:{d:{e:{f:{h=j?c:e;g:{if(h){g=a+16|0;d=d?D[g>>2]:g;g=va(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>=0){break f}break g}if(c>>>0<=e>>>0){break e}}c=D[a>>2];if(c){break b}D[b>>2]=a;return a}c=va(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>=0){break a}}f=a+4|0;c=D[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}D[b>>2]=f;return f}D[b>>2]=a;return f}function _b(a,b){var c=0;c=D[b+4>>2];D[a>>2]=D[b>>2];D[a+4>>2]=c;c=D[b+60>>2];D[a+56>>2]=D[b+56>>2];D[a+60>>2]=c;c=D[b+52>>2];D[a+48>>2]=D[b+48>>2];D[a+52>>2]=c;c=D[b+44>>2];D[a+40>>2]=D[b+40>>2];D[a+44>>2]=c;c=D[b+36>>2];D[a+32>>2]=D[b+32>>2];D[a+36>>2]=c;c=D[b+28>>2];D[a+24>>2]=D[b+24>>2];D[a+28>>2]=c;c=D[b+20>>2];D[a+16>>2]=D[b+16>>2];D[a+20>>2]=c;c=D[b+12>>2];D[a+8>>2]=D[b+8>>2];D[a+12>>2]=c;D[a+88>>2]=0;D[a+64>>2]=0;D[a+68>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;B[a+77|0]=0;B[a+78|0]=0;B[a+79|0]=0;B[a+80|0]=0;B[a+81|0]=0;B[a+82|0]=0;B[a+83|0]=0;B[a+84|0]=0;return a}function ab(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;a=D[a+4>>2];a:{b:{if(!a){break b}d=E[b+11|0];c=d<<24>>24<0;i=c?D[b>>2]:b;e=c?D[b+4>>2]:d;c=g;while(1){b=E[a+27|0];j=b<<24>>24<0;h=j?D[a+20>>2]:b;f=h>>>0>e>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=va(j?D[b>>2]:b,i,d);if(b){break c}}b=e>>>0>h>>>0?-1:f}c=(b|0)<0?c:a;a=D[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=E[c+27|0];f=a<<24>>24<0;d:{d=f?D[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=va(i,f?D[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>=0){break a}}c=g}return c}function Ie(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(La(a,D[b+8>>2],e)){if(!(D[b+28>>2]==1|D[b+4>>2]!=(c|0))){D[b+28>>2]=d}return}a:{if(La(a,D[b>>2],e)){if(!(D[b+16>>2]!=(c|0)&D[b+20>>2]!=(c|0))){if((d|0)!=1){break a}D[b+32>>2]=1;return}D[b+32>>2]=d;b:{if(D[b+44>>2]==4){break b}C[b+52>>1]=0;a=D[a+8>>2];ba[D[D[a>>2]+20>>2]](a,b,c,c,1,e);if(E[b+53|0]){D[b+44>>2]=3;if(!E[b+52|0]){break b}break a}D[b+44>>2]=4}D[b+20>>2]=c;D[b+40>>2]=D[b+40>>2]+1;if(D[b+36>>2]!=1|D[b+24>>2]!=2){break a}B[b+54|0]=1;return}a=D[a+8>>2];ba[D[D[a>>2]+24>>2]](a,b,c,d,e)}}function Ag(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=na(64);c=na(12);D[c+8>>2]=D[D[a+4>>2]+80>>2];D[c>>2]=1e4;D[c+4>>2]=0;f=xc(f,c);a:{b:{if((b|0)<0){c=f;break b}h=a+8|0;c=D[a+12>>2];e=D[a+8>>2];g=c-e>>2;c:{if((g|0)>(b|0)){break c}d=b+1|0;if(b>>>0>=g>>>0){Qb(h,d-g|0);break c}if(d>>>0>=g>>>0){break c}e=e+(d<<2)|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=D[c>>2];D[c>>2]=0;if(d){ba[D[D[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}D[a+12>>2]=e}a=D[h>>2]+(b<<2)|0;c=D[a>>2];D[a>>2]=f;if(!c){break a}}ba[D[D[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function Wc(a,b,c){var d=0,e=0,f=0,g=0;a:{if((b|c)>=0){b:{if(b>>>0>1431655765){break b}d=J(b,3);Vb(a,d,10256);Vb(a+12|0,d,10260);d=D[a+24>>2];c:{if(D[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=D[a+28>>2];f=c<<2;c=na(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>0){oa(c,d,e)}D[a+32>>2]=f;D[a+28>>2]=g;D[a+24>>2]=c;if(!d){break c}ma(d)}D[a+80>>2]=0;D[a+84>>2]=0;c=D[a+76>>2];D[a+76>>2]=0;if(c){ma(c)}D[a+68>>2]=0;D[a+72>>2]=0;c=a- -64|0;a=D[c>>2];D[c>>2]=0;if(!a){break b}ma(a)}a=b>>>0<1431655766}else{a=0}return a}ra(1326);T()}function eb(a){var b=0,c=0,d=0,e=0,f=0;d=D[a+8>>2];a:{if(E[d+84|0]){break a}b=D[a+16>>2];if(!b|!E[b+84|0]){break a}c=D[d+72>>2];e=D[d+68>>2];B[b+84|0]=0;c=c-e>>2;f=D[b+68>>2];e=D[b+72>>2]-f>>2;b:{if(c>>>0>e>>>0){xa(b+68|0,c-e|0,2032);d=D[a+8>>2];break b}if(c>>>0>=e>>>0){break b}D[b+72>>2]=f+(c<<2)}b=E[d+84|0];if(b){break a}c=D[d+68>>2];if((c|0)==D[d+72>>2]){break a}e=D[D[a+16>>2]+68>>2];if(!b){b=0;while(1){f=b<<2;D[f+e>>2]=D[c+f>>2];b=b+1|0;c=D[d+68>>2];if(b>>>0>2]-c>>2>>>0){continue}break}break a}D[e>>2]=0}return D[a+16>>2]}function ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=D[a+4>>2];if((c|0)!=D[a+8>>2]){d=D[b+4>>2];D[c>>2]=D[b>>2];D[c+4>>2]=d;D[c+8>>2]=D[b+8>>2];D[a+4>>2]=c+12;return}a:{f=D[a>>2];g=c-f|0;d=(g|0)/12|0;c=d+1|0;if(c>>>0<357913942){e=d<<1;e=d>>>0<178956970?c>>>0>e>>>0?c:e:357913941;if(e){if(e>>>0>=357913942){break a}c=na(J(e,12))}else{c=0}d=c+J(d,12)|0;h=D[b+4>>2];D[d>>2]=D[b>>2];D[d+4>>2]=h;D[d+8>>2]=D[b+8>>2];b=d+J((g|0)/-12|0,12)|0;if((g|0)>0){oa(b,f,g)}D[a+8>>2]=c+J(e,12);D[a+4>>2]=d+12;D[a>>2]=b;if(f){ma(f)}return}qa();T()}ra(1326);T()}function Ed(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{c=D[a+216>>2];if((c|0)==D[a+220>>2]){break a}while(1){b:{c=D[J(e,144)+c>>2];if((c|0)<0){break b}d=D[a+4>>2];f=D[d+8>>2];if((c|0)>=D[d+12>>2]-f>>2){break b}d=0;c=D[(c<<2)+f>>2];if((ba[D[D[c>>2]+24>>2]](c)|0)<=0){break b}while(1){if((ba[D[D[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ba[D[D[c>>2]+24>>2]](c)|0)>(d|0)){continue}break b}break}a=D[a+216>>2]+J(e,144)|0;e=E[a+100|0]?a+4|0:0;break a}e=e+1|0;c=D[a+216>>2];if(e>>>0<(D[a+220>>2]-c|0)/144>>>0){continue}break}return 0}return e|0}function re(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=D[a+60>>2];a:{if(!c){break a}D[c+4>>2]=a+48;if(!(ba[D[D[c>>2]+12>>2]](c)|0)){break a}b:{c=ba[D[D[a>>2]+24>>2]](a)|0;if((c|0)<=0){break b}while(1){c:{f=D[(ba[D[D[a>>2]+28>>2]](a)|0)+4>>2];g=ba[D[D[a>>2]+20>>2]](a,d)|0;e=D[a+60>>2];if(!(ba[D[D[e>>2]+8>>2]](e,D[D[f+8>>2]+(g<<2)>>2])|0)){break c}d=d+1|0;if((c|0)!=(d|0)){continue}break b}break}return 0}d=0;if(!(ba[D[D[a>>2]+36>>2]](a,b)|0)){break a}if(!(ba[D[D[a>>2]+40>>2]](a,b)|0)){break a}d=ba[D[D[a>>2]+44>>2]](a)|0}return d|0}function Dc(a,b,c,d,e,f,g){var h=0,i=0,j=0;h=$-16|0;$=h;if((b^-1)-17>>>0>=c>>>0){if(E[a+11|0]>>>7|0){j=D[a>>2]}else{j=a}a:{if(b>>>0<2147483623){D[h+8>>2]=b<<1;D[h+12>>2]=b+c;c=$-16|0;$=c;$=c+16|0;c=h+8|0;i=h+12|0;c=D[(G[i>>2]>2]?c:i)>>2];if(c>>>0>=11){i=c+16&-16;c=i-1|0;c=(c|0)==11?i:c}else{c=10}break a}c=-18}i=c+1|0;c=na(i);if(f){Ya(c,g,f)}d=d-e|0;if(d){Ya(c+f|0,e+j|0,d)}if((b|0)!=10){ma(j)}D[a>>2]=c;D[a+8>>2]=i|-2147483648;b=a;a=d+f|0;D[b+4>>2]=a;B[h+7|0]=0;B[a+c|0]=E[h+7|0];$=h+16|0;return}Aa();T()}function Dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=D[a+216>>2];if((c|0)!=D[a+220>>2]){while(1){a:{c=D[J(e,144)+c>>2];if((c|0)<0){break a}d=D[a+4>>2];f=D[d+8>>2];if((c|0)>=D[d+12>>2]-f>>2){break a}d=0;c=D[(c<<2)+f>>2];if((ba[D[D[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((ba[D[D[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ba[D[D[c>>2]+24>>2]](c)|0)>(d|0)){continue}break a}break}return(D[a+216>>2]+J(e,144)|0)+104|0}e=e+1|0;c=D[a+216>>2];if(e>>>0<(D[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((ba[D[D[b>>2]+20>>2]](b)|0)<=0){return 1}a:{while(1){d=Mc(D[D[a+4>>2]+4>>2],ba[D[D[b>>2]+24>>2]](b,e)|0);if((d|0)==-1){break a}f=D[a+4>>2];c=0;b:{if((d|0)<0){break b}g=D[f+4>>2];if((d|0)>=D[g+12>>2]-D[g+8>>2]>>2){break b}c=D[D[f+8>>2]+(D[D[f+20>>2]+(d<<2)>>2]<<2)>>2];c=ba[D[D[c>>2]+32>>2]](c,d)|0}if(!c){break a}if(!(ba[D[D[b>>2]+28>>2]](b,c)|0)){break a}e=e+1|0;if((ba[D[D[b>>2]+20>>2]](b)|0)>(e|0)){continue}break}return 1}return 0}function Cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a=$-32|0;$=a;a:{d=za(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=na(f);D[a+24>>2]=f|-2147483648;D[a+16>>2]=e;D[a+20>>2]=d;break c}B[a+27|0]=d;e=a+16|0;if(!d){break b}}oa(e,c,d)}B[d+e|0]=0;B[a+4|0]=0;D[a>>2]=1701667182;B[a+11|0]=4;d=D[b+4>>2];c=-1;d:{if(!d){break d}d=Pc(d,a,a+16|0);c=-1;if(!d){break d}c=Lc(b,D[d+24>>2])}b=c;if(B[a+11|0]<0){ma(D[a>>2])}if(B[a+27|0]<0){ma(D[a+16>>2])}$=a+32|0;break a}Aa();T()}return b|0}function Nf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=$-16|0;$=d;D[d+12>>2]=0;a:{e=za(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=na(f);D[d+8>>2]=f|-2147483648;D[d>>2]=a;D[d+4>>2]=e;break c}B[d+11|0]=e;a=d;if(!e){break b}}oa(a,c,e)}B[a+e|0]=0;a=ab(b,d);d:{if((a|0)==(b+4|0)){break d}b=D[a+32>>2];a=D[a+28>>2];if((b-a|0)!=4){break d}D[d+12>>2]=E[a|0]|E[a+1|0]<<8|(E[a+2|0]<<16|E[a+3|0]<<24)}a=D[d+12>>2];if(B[d+11|0]<0){ma(D[d>>2])}$=d+16|0;break a}Aa();T()}return a|0}function vb(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=10332;b=D[a+68>>2];if(b){D[a+72>>2]=b;ma(b)}b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}b=D[a+44>>2];if(b){D[a+48>>2]=b;ma(b)}b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ya(b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}b=D[a+4>>2];D[a+4>>2]=0;if(b){fc(b)}return a|0}function sa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=D[a+8>>2];c=D[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=pa(c,0,b)+b|0}D[a+4>>2]=c;return}a:{f=D[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(d){if(d>>>0>=1073741824){break a}c=na(d<<2)}b=b<<2;b=pa((h<<2)+c|0,0,b)+b|0;if((g|0)>0){oa(c,f,g)}D[a+8>>2]=(d<<2)+c;D[a+4>>2]=b;D[a>>2]=c;if(f){ma(f)}return}qa();T()}ra(1326);T()}function db(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=D[a+8>>2];c=D[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=pa(c,0,b)+b|0}D[a+4>>2]=c;return}a:{f=D[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>>0<2147483640?d>>>0>i>>>0?d:i:536870911;if(d){if(d>>>0>=536870912){break a}c=na(d<<3)}b=b<<3;b=pa((h<<3)+c|0,0,b)+b|0;if((g|0)>0){oa(c,f,g)}D[a+8>>2]=(d<<3)+c;D[a+4>>2]=b;D[a>>2]=c;if(f){ma(f)}return}qa();T()}ra(1326);T()}function Ra(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=D[a>>2];a=D[e+4>>2];c=D[e+8>>2];if(a>>>0>>0){D[a>>2]=D[b>>2];D[e+4>>2]=a+4;return}a:{f=D[e>>2];g=a-f|0;d=g>>2;a=d+1|0;if(a>>>0<1073741824){h=d<<2;c=c-f|0;d=c>>1;c=c>>>0<2147483644?a>>>0>d>>>0?a:d:1073741823;if(c){if(c>>>0>=1073741824){break a}a=na(c<<2)}else{a=0}d=h+a|0;D[d>>2]=D[b>>2];if((g|0)>0){oa(a,f,g)}D[e+8>>2]=a+(c<<2);D[e+4>>2]=d+4;D[e>>2]=a;if(f){ma(f)}return}qa();T()}ra(1326);T()}function dc(a,b){var c=0,d=0,e=0,f=0;c=a+4|0;a=ab(a,b);a:{if((c|0)==(a|0)){break a}b=B[a+39|0]<0?D[a+28>>2]:a+28|0;while(1){a=b;b=a+1|0;c=B[a|0];if((c|0)==32|c-9>>>0<5){continue}break}b:{c:{d:{c=B[a|0];switch(c-43|0){case 0:break c;case 2:break d;default:break b}}e=1}c=B[b|0];a=b}if(c-48>>>0<10){while(1){d=(J(d,10)-B[a|0]|0)+48|0;b=B[a+1|0];a=a+1|0;if(b-48>>>0<10){continue}break}}a=e?d:0-d|0;if((a|0)==-1){break a}f=(a|0)!=0}return f}function me(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=2044;b=D[a+60>>2];D[a+60>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}d=D[a+36>>2];if(d){c=D[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+36>>2]}D[a+40>>2]=d;ma(b)}D[a>>2]=1804;b=D[a+16>>2];if(b){D[a+20>>2]=b;ma(b)}b=D[a+4>>2];if(b){D[a+8>>2]=b;ma(b)}return a|0}function le(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=2044;b=D[a+60>>2];D[a+60>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}d=D[a+36>>2];if(d){c=D[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+36>>2]}D[a+40>>2]=d;ma(b)}D[a>>2]=1804;b=D[a+16>>2];if(b){D[a+20>>2]=b;ma(b)}b=D[a+4>>2];if(b){D[a+8>>2]=b;ma(b)}ma(a)}function hd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=D[a+8>>2];c=D[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=pa(c,0,b)+b|0}D[a+4>>2]=c;return}a:{f=D[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>=0){c=0;e=e-f|0;d=e>>>0<2147483646?d>>>0>e>>>0?d:e:2147483647;if(d){if((d|0)<0){break a}c=na(d<<1)}b=b<<1;b=pa((h<<1)+c|0,0,b)+b|0;if((g|0)>0){oa(c,f,g)}D[a+8>>2]=(d<<1)+c;D[a+4>>2]=b;D[a>>2]=c;if(f){ma(f)}return}qa();T()}ra(1326);T()}function Ka(a,b){var c=0,d=0,e=0,f=0,g=0;a:{c=D[a+4>>2];e=D[a>>2];f=c-e|0;b:{if(f>>>0>>0){g=b-f|0;d=D[a+8>>2];if(g>>>0<=d-c>>>0){if(g){c=pa(c,0,g)+g|0}D[a+4>>2]=c;return}if((b|0)<0){break a}c=d-e|0;d=c<<1;d=c>>>0<1073741823?b>>>0>d>>>0?b:d:2147483647;c=na(d);pa(c+f|0,0,g);if((f|0)>0){oa(c,e,f)}D[a+8>>2]=c+d;D[a+4>>2]=b+c;D[a>>2]=c;if(!e){break b}ma(e);return}if(b>>>0>=f>>>0){break b}D[a+4>>2]=b+e}return}qa();T()}function bh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=$-16|0;$=d;e=D[a+4>>2];a:{if((e|0)==-1){break a}c=D[b+20>>2];if(!!D[b+16>>2]&(c|0)>=0|(c|0)>0){break a}rb(b,D[b+4>>2],D[a+8>>2],D[a+12>>2]);c=D[b+20>>2];if(!!D[b+16>>2]&(c|0)>=0|(c|0)>0){break a}c=a+20|0;rb(b,D[b+4>>2],c,c+4|0);c=D[b+20>>2];f=D[b+16>>2];B[d+15|0]=D[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}rb(b,D[b+4>>2],d+15|0,d+16|0)}$=d+16|0;return(e|0)!=-1|0}function xg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=D[a+8>>2];b:{if((b|0)<0){break b}c=D[a+4>>2];e=D[c>>2];d=D[c+4>>2]-e>>2;c:{if(d>>>0>>0){sa(c,b-d|0);f=D[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}D[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=D[a+4>>2];c=D[a>>2];e=D[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}D[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}ua();T()}function Sa(a){var b=0,c=0,d=0,e=0,f=0;b=D[a+4>>2];if((b|0)!=D[a+8>>2]){D[b>>2]=D[2088];D[a+4>>2]=b+4;return}a:{f=D[a>>2];d=b-f|0;e=d>>2;b=e+1|0;if(b>>>0<1073741824){c=d>>1;c=d>>>0<2147483644?b>>>0>c>>>0?b:c:1073741823;if(c){if(c>>>0>=1073741824){break a}b=na(c<<2)}else{b=0}e=b+(e<<2)|0;D[e>>2]=D[2088];if((d|0)>0){oa(b,f,d)}D[a+8>>2]=b+(c<<2);D[a+4>>2]=e+4;D[a>>2]=b;if(f){ma(f)}return}qa();T()}ra(1326);T()}function ff(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=$-16|0;$=d;Md(d,a,b,c);D[a+24>>2]=D[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=E[d+15|0];c=f<<24>>24;a=a+28|0;if(B[a+11|0]>=0){if((c|0)>=0){c=D[b+4>>2];D[a>>2]=D[b>>2];D[a+4>>2]=c;D[a+8>>2]=D[b+8>>2];break a}sb(a,D[d+4>>2],D[d+8>>2]);break a}g=a;a=(c|0)<0;tb(g,a?D[d+4>>2]:b,a?D[d+8>>2]:f)}if(B[d+15|0]<0){ma(D[d+4>>2])}$=d+16|0;return e|0}function sf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a=$-32|0;$=a;e=B[b+24|0];f=D[2563];D[a+24>>2]=D[2562];D[a+28>>2]=f;f=D[2561];D[a+16>>2]=D[2560];D[a+20>>2]=f;a:{b:{c=nb(b,c,e,a+16|0);if(c){D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;b=0;if(e){if((e|0)<0){break b}e=e<<2;b=na(e);g=oa(b,a+16|0,e)+e|0}e=D[d>>2];if(e){D[d+4>>2]=e;ma(e)}D[d+8>>2]=g;D[d+4>>2]=g;D[d>>2]=b}$=a+32|0;break a}qa();T()}return c|0}function hf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=$-16|0;$=b;Ld(b);D[a+24>>2]=D[b>>2];e=a+24|0;a:{if((e|0)==(b|0)){break a}c=b|4;f=E[b+15|0];d=f<<24>>24;a=a+28|0;if(B[a+11|0]>=0){if((d|0)>=0){d=D[c+4>>2];D[a>>2]=D[c>>2];D[a+4>>2]=d;D[a+8>>2]=D[c+8>>2];break a}sb(a,D[b+4>>2],D[b+8>>2]);break a}g=a;a=(d|0)<0;tb(g,a?D[b+4>>2]:c,a?D[b+8>>2]:f)}if(B[b+15|0]<0){ma(D[b+4>>2])}$=b+16|0;return e|0}function Ib(a,b){var c=0,d=0,e=0,f=0;d=D[a+12>>2];c=D[a+16>>2]-d>>2;a:{if(c>>>0>>0){sa(a+12|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}D[a+16>>2]=d+(b<<2)}b:{c=D[a>>2];c:{if(D[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=D[a+4>>2];e=b<<2;b=na(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){oa(b,c,d)}D[a+8>>2]=e;D[a+4>>2]=f;D[a>>2]=b;if(!c){break c}ma(c)}return}ra(1326);T()}function Kf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=$-16|0;$=d;a:{e=za(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=na(g);D[d+8>>2]=g|-2147483648;D[d>>2]=f;D[d+4>>2]=e;break c}B[d+11|0]=e;f=d;if(!e){break b}}oa(f,c,e)}B[e+f|0]=0;f=a+16|0;c=Oc(b,d,f);b=B[a+27|0];a=D[a+16>>2];if(B[d+11|0]<0){ma(D[d>>2])}$=d+16|0;a=c?(b|0)<0?a:f:0;break a}Aa();T()}return a|0}function id(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=D[c+20>>2];e=D[c+12>>2];f=D[c+16>>2];if((d|0)>=(e|0)&f>>>0>=G[c+8>>2]|(d|0)>(e|0)){break a}e=B[f+D[c>>2]|0];f=f+1|0;d=f?d:d+1|0;D[c+16>>2]=f;D[c+20>>2]=d;b:{if((e|0)<0){if(!id(a+1|0,b,c)){break a}c=D[b>>2];a=D[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}D[b>>2]=c;D[b+4>>2]=a;g=1}return g}function fg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=$+-64|0;$=d;e=ba[D[D[a>>2]+44>>2]](a,b)|0;a=ba[D[D[a>>2]+40>>2]](a,b)|0;f=mb(d);g=D[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=D[(a<<2)+10180>>2]}else{a=-1}a=J(a,e);$b(f,g,h,i,0,a,a>>31);a=_b(na(96),f);Zb(a,c);B[a+84|0]=1;D[a+72>>2]=D[a+68>>2];D[a+60>>2]=D[b+60>>2];$=d- -64|0;return a|0}function Ta(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=D[c+20>>2];e=D[c+12>>2];f=D[c+16>>2];if((d|0)>=(e|0)&f>>>0>=G[c+8>>2]|(d|0)>(e|0)){break a}e=B[f+D[c>>2]|0];f=f+1|0;d=f?d:d+1|0;D[c+16>>2]=f;D[c+20>>2]=d;b:{if((e|0)<0){if(!Ta(a+1|0,b,c)){break a}c=D[b>>2];a=D[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}D[b>>2]=c;D[b+4>>2]=a;g=1}return g}function He(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(La(a,D[b+8>>2],e)){if(!(D[b+28>>2]==1|D[b+4>>2]!=(c|0))){D[b+28>>2]=d}return}a:{if(!La(a,D[b>>2],e)){break a}if(!(D[b+16>>2]!=(c|0)&D[b+20>>2]!=(c|0))){if((d|0)!=1){break a}D[b+32>>2]=1;return}D[b+20>>2]=c;D[b+32>>2]=d;D[b+40>>2]=D[b+40>>2]+1;if(!(D[b+36>>2]!=1|D[b+24>>2]!=2)){B[b+54|0]=1}D[b+44>>2]=4}}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{if(G[b+80>>2]>65535){break a}f=D[b+96>>2];b=D[b+100>>2]-f|0;a=(b|0)/12|0;e=J(a,6);g=(e|0)==(c|0);if(!b|(c|0)!=(e|0)){break a}g=1;e=a>>>0>1?a:1;a=0;while(1){b=J(a,6)+d|0;c=J(a,12)+f|0;C[b>>1]=D[c>>2];C[b+2>>1]=D[c+4>>2];C[b+4>>1]=D[c+8>>2];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return g|0}function jh(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=8204;b=D[a+48>>2];D[a+48>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=10064;b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}return a|0}function ih(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=8204;b=D[a+48>>2];D[a+48>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=10064;b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}ma(a)}function Bc(a,b,c,d){B[a+53|0]=1;a:{if(D[a+4>>2]!=(c|0)){break a}B[a+52|0]=1;c=D[a+16>>2];b:{if(!c){D[a+36>>2]=1;D[a+24>>2]=d;D[a+16>>2]=b;if((d|0)!=1){break a}if(D[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=D[a+24>>2];if((c|0)==2){D[a+24>>2]=d;c=d}if(D[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}D[a+36>>2]=D[a+36>>2]+1}B[a+54|0]=1}}function qe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ba[D[D[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=D[D[a+36>>2]>>2];f=a+48|0;c=0;if(!(ba[D[D[d>>2]+16>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=D[D[a+36>>2]+(c<<2)>>2];if(ba[D[D[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function pe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ba[D[D[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=D[D[a+36>>2]>>2];f=a+48|0;c=0;if(!(ba[D[D[d>>2]+20>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=D[D[a+36>>2]+(c<<2)>>2];if(ba[D[D[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function Bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=$-16|0;$=d;D[a+4>>2]=b;b=D[b+64>>2];e=D[b>>2];b=D[b+4>>2];B[d+15|0]=0;Ea(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=D[a+4>>2];e=D[b+56>>2];b=D[b+52>>2];B[d+14|0]=0;Ea(a+36|0,e-b>>2,d+14|0);b=D[c+12>>2];D[a+16>>2]=D[c+8>>2];D[a+20>>2]=b;b=D[c+4>>2];D[a+8>>2]=D[c>>2];D[a+12>>2]=b;$=d+16|0}function Vc(a){D[a>>2]=0;D[a+4>>2]=0;D[a+28>>2]=0;D[a+32>>2]=0;B[a+24|0]=1;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;D[a+36>>2]=0;D[a+40>>2]=0;D[a+44>>2]=0;D[a+48>>2]=0;D[a+52>>2]=0;D[a+56>>2]=0;D[a+60>>2]=0;D[a+64>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+84>>2]=0;D[a+88>>2]=0;D[a+92>>2]=0;D[a+68>>2]=a}function Wg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=$-16|0;$=d;D[a+4>>2]=b;e=D[b>>2];b=D[b+4>>2];B[d+15|0]=0;Ea(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=D[a+4>>2];e=D[b+28>>2];b=D[b+24>>2];B[d+14|0]=0;Ea(a+36|0,e-b>>2,d+14|0);b=D[c+12>>2];D[a+16>>2]=D[c+8>>2];D[a+20>>2]=b;b=D[c+4>>2];D[a+8>>2]=D[c>>2];D[a+12>>2]=b;$=d+16|0}function Xc(a){var b=0;D[a>>2]=0;D[a+4>>2]=0;D[a+56>>2]=0;D[a+48>>2]=0;D[a+52>>2]=0;D[a+40>>2]=0;D[a+44>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;b=a- -64|0;D[b>>2]=0;D[b+4>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;D[a+80>>2]=0;D[a+84>>2]=0;D[a+60>>2]=a}function kb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!kb(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function gb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!gb(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function bb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!bb(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function Wb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!Wb(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function Ua(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!Ua(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function Nd(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!Nd(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function Da(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=D[c+20>>2];d=f;g=D[c+12>>2];e=D[c+16>>2];if((d|0)>=(g|0)&e>>>0>=G[c+8>>2]|(d|0)>(g|0)){break a}d=E[e+D[c>>2]|0];e=e+1|0;f=e?f:f+1|0;D[c+16>>2]=e;D[c+20>>2]=f;if(d&128){if(!Da(a+1|0,b,c)){break a}d=d&127|D[b>>2]<<7}D[b>>2]=d;h=1}return h}function tf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;g=D[b+96>>2];b=D[b+100>>2]-g|0;if(!((b|0)!=(c|0)|!b)){a=(c|0)/12|0;h=a>>>0>1?a:1;a=0;while(1){e=J(a,12);f=e+d|0;e=e+g|0;D[f>>2]=D[e>>2];D[f+4>>2]=D[e+4>>2];D[f+8>>2]=D[e+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}return(b|0)==(c|0)|0}function va(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(D[a>>2]!=D[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=E[a|0];e=E[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function xf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=D[b+4>>2];a:{if(!d){break a}b=D[D[D[b+8>>2]+(c<<2)>>2]+60>>2];if((b|0)<0){break a}a=D[d+24>>2];c=D[d+28>>2];if((a|0)==(c|0)){break a}b:{while(1){e=D[a>>2];if((b|0)==D[e+24>>2]){break b}a=a+4|0;if((c|0)!=(a|0)){continue}break}e=0}}return e|0}function fc(a){var b=0,c=0,d=0;if(a){d=D[a+24>>2];if(d){c=D[a+28>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){Ca(b+12|0,D[b+16>>2]);Ba(b,D[b+4>>2]);ma(b)}if((d|0)!=(c|0)){continue}break}b=D[a+24>>2]}D[a+28>>2]=d;ma(b)}Ca(a+12|0,D[a+16>>2]);Ba(a,D[a+4>>2]);ma(a)}}function pd(a){var b=0,c=0,d=0;d=D[a>>2];if(d){b=D[a+4>>2];if((d|0)==(b|0)){b=d}else{while(1){c=D[b-12>>2];if(c){D[b-8>>2]=c;ma(c)}c=D[b-28>>2];if(c){D[b-24>>2]=c;ma(c)}c=D[b-40>>2];if(c){D[b-36>>2]=c;ma(c)}Hb(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}b=D[a>>2]}D[a+4>>2]=d;ma(b)}}function ph(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=10064;b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}return a|0}function Ug(a){a=a|0;var b=0;D[a+8>>2]=9168;D[a>>2]=8956;b=D[a+96>>2];if(b){D[a+100>>2]=b;ma(b)}b=D[a+80>>2];if(b){D[a+84>>2]=b;ma(b)}b=D[a+68>>2];if(b){D[a+72>>2]=b;ma(b)}b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=9404;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}return a|0}function za(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!E[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=D[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=E[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function zg(a){a=a|0;var b=0,c=0,d=0;D[a>>2]=10064;b=D[a+20>>2];if(b){D[a+24>>2]=b;ma(b)}d=D[a+8>>2];if(d){c=D[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=D[c>>2];D[c>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=D[a+8>>2]}D[a+12>>2]=d;ma(b)}ma(a)}function Tg(a){a=a|0;var b=0;D[a+8>>2]=9168;D[a>>2]=8956;b=D[a+96>>2];if(b){D[a+100>>2]=b;ma(b)}b=D[a+80>>2];if(b){D[a+84>>2]=b;ma(b)}b=D[a+68>>2];if(b){D[a+72>>2]=b;ma(b)}b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=9404;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}ma(a)}function tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=D[c+8>>2];e=D[c+16>>2];g=D[c+12>>2];f=g;d=D[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=E[e+D[c>>2]|0];i=e+1|0;f=i?d:d+1|0;D[c+16>>2]=i;D[c+20>>2]=f;D[a+4>>2]=b}return e>>>0>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function La(a,b,c){var d=0;if(!c){return D[a+4>>2]==D[b+4>>2]}if((a|0)==(b|0)){return 1}d=D[a+4>>2];a=E[d|0];c=D[b+4>>2];b=E[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=E[c+1|0];a=E[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function Vg(a){a=a|0;var b=0;D[a>>2]=9168;b=D[a+88>>2];if(b){D[a+92>>2]=b;ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+60>>2];if(b){D[a- -64>>2]=b;ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function Jb(a,b){var c=0,d=0,e=0,f=0;a:{c=D[a>>2];b:{if(D[a+8>>2]-c>>2>>>0>=b>>>0){break b}if(b>>>0>=1073741824){break a}d=D[a+4>>2];e=b<<2;b=na(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){oa(b,c,d)}D[a+8>>2]=e;D[a+4>>2]=f;D[a>>2]=b;if(!c){break b}ma(c)}return}ra(1326);T()}function zf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=D[b+12>>2];b=D[b+8>>2];d=a-b|0;a=0;a:{if(!d){break a}a=d>>2;d=a>>>0>1?a:1;a=0;b:{while(1){e=D[b+(a<<2)>>2];if(D[e+60>>2]==(c|0)){break b}a=a+1|0;if((d|0)!=(a|0)){continue}break}a=0;break a}a=(a|0)==-1?0:e}return a|0}function Qg(a){a=a|0;var b=0;D[a>>2]=9168;b=D[a+88>>2];if(b){D[a+92>>2]=b;ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+60>>2];if(b){D[a- -64>>2]=b;ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function cb(a){var b=0;if(a){b=D[a+76>>2];if(b){D[a+80>>2]=b;ma(b)}b=D[a- -64>>2];if(b){D[a+68>>2]=b;ma(b)}b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}b=D[a+24>>2];if(b){D[a+28>>2]=b;ma(b)}b=D[a+12>>2];if(b){D[a+16>>2]=b;ma(b)}b=D[a>>2];if(b){D[a+4>>2]=b;ma(b)}ma(a)}}function Hb(a){var b=0;b=D[a+84>>2];if(b){D[a+88>>2]=b;ma(b)}b=D[a+72>>2];if(b){D[a+76>>2]=b;ma(b)}b=D[a+52>>2];if(b){D[a+56>>2]=b;ma(b)}b=D[a+40>>2];if(b){D[a+44>>2]=b;ma(b)}b=D[a+28>>2];if(b){D[a+32>>2]=b;ma(b)}b=D[a+12>>2];if(b){ma(b)}a=D[a>>2];if(a){ma(a)}}function zd(a){var b=0,c=0,d=0;b=D[a+4>>2];d=D[a>>2];if((b|0)!=(d|0)){while(1){c=D[b-12>>2];if(c){D[b-8>>2]=c;ma(c)}c=D[b-28>>2];if(c){D[b-24>>2]=c;ma(c)}c=D[b-40>>2];if(c){D[b-36>>2]=c;ma(c)}Hb(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}}D[a+4>>2]=d}function ta(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<=10){d=a;B[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=na(e);D[a>>2]=d;D[a+8>>2]=e|-2147483648;D[a+4>>2]=c}Ya(d,b,c+1|0);return}Aa();T()}function Hc(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=$-16|0;$=f;d=$-16|0;$=d;b=b-a>>2;while(1){if(b){D[d+12>>2]=a;e=b>>>1|0;D[d+12>>2]=D[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=D[d+12>>2];g=G[e>>2]>2];b=g?h:b;a=g?e+4|0:a;continue}break}$=d+16|0;$=f+16|0;return a}function fd(a,b){var c=0,d=0;d=na(40);D[d>>2]=-1;c=d+8|0;D[c+16>>2]=0;D[c+20>>2]=0;D[c+8>>2]=0;D[c>>2]=0;D[c+4>>2]=0;D[c+24>>2]=0;D[c+28>>2]=0;ba[D[D[a>>2]+16>>2]](a,d);a=D[b+88>>2];D[b+88>>2]=d;if(a){b=D[a+8>>2];if(b){D[a+12>>2]=b;ma(b)}ma(a)}return 1}function Ga(a){var b=0,c=0,d=0,e=0,f=0;d=E[a+12|0];c=D[a+8>>2];a:{if(c>>>0>4095){break a}b=D[a+4>>2];if((b|0)<=0){break a}b=b-1|0;D[a+4>>2]=b;c=E[b+D[a>>2]|0]|c<<8}d=0-d&255;b=J(d,c>>>8|0);e=c&255;f=e>>>0>>0;D[a+8>>2]=f?b+e|0:c-(b+d|0)|0;return f}function wf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a=$-16|0;$=a;b=D[b+96>>2];D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;e=na(12);c=oa(e,b+J(c,12)|0,12);f=c+12|0;b=D[d>>2];if(b){D[d+4>>2]=b;ma(b)}D[d+8>>2]=c+12;D[d+4>>2]=f;D[d>>2]=e;$=a+16|0;return 1}function xc(a,b){D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=1804;D[a+12>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+32>>2]=0;D[a+36>>2]=0;D[a+40>>2]=0;D[a>>2]=2044;D[a+44>>2]=0;D[a+48>>2]=0;D[a+52>>2]=0;D[a+56>>2]=0;D[a+60>>2]=b;return a}function jd(a,b,c,d){a:{if(!b){if((d|0)<0){return 0}Ka(a,c);break a}if((d|0)<0){return 0}if(!(!d&D[a+4>>2]-D[a>>2]>>>0>=c>>>0)){Ka(a,c)}if(!c){break a}Pa(D[a>>2],b,c)}b=D[a+28>>2];c=D[a+24>>2]+1|0;b=c?b:b+1|0;D[a+24>>2]=c;D[a+28>>2]=b;return 1}function Hf(a){a=a|0;var b=0,c=0,d=0;if(a){if(B[a+27|0]<0){ma(D[a+16>>2])}b=D[a>>2];if(b){c=D[a+4>>2];if((c|0)==(b|0)){d=b}else{while(1){d=c-12|0;if(B[c-1|0]<0){ma(D[d>>2])}c=d;if((c|0)!=(b|0)){continue}break}d=D[a>>2]}D[a+4>>2]=b;ma(d)}ma(a)}}function tg(){var a=0;a=na(40);C[a+38>>1]=0;D[a>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;B[a+29|0]=0;B[a+30|0]=0;B[a+31|0]=0;B[a+32|0]=0;B[a+33|0]=0;B[a+34|0]=0;B[a+35|0]=0;B[a+36|0]=0;return a|0}function ya(a){a=a|0;var b=0,c=0;if(a){b=D[a+88>>2];D[a+88>>2]=0;if(b){c=D[b+8>>2];if(c){D[b+12>>2]=c;ma(c)}ma(b)}b=D[a+68>>2];if(b){D[a+72>>2]=b;ma(b)}b=D[a+64>>2];D[a+64>>2]=0;if(b){c=D[b>>2];if(c){D[b+4>>2]=c;ma(c)}ma(b)}ma(a)}}function th(a){a=a|0;var b=0;D[a+24>>2]=1140;D[a>>2]=7976;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}D[a>>2]=2164;b=D[a+20>>2];D[a+20>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}return a|0}function Gb(a,b){var c=0,d=0,e=0;c=za(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=na(e);D[a+8>>2]=e|-2147483648;D[a>>2]=d;D[a+4>>2]=c;break b}B[a+11|0]=c;d=a;if(!c){break a}}oa(d,b,c)}B[c+d|0]=0;return a}Aa();T()}function bi(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=ci(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;aa=(g^aa)-((a>>>0>>0)+g|0)|0;return b}function sh(a){a=a|0;var b=0;D[a+24>>2]=1140;D[a>>2]=7976;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}D[a>>2]=2164;b=D[a+20>>2];D[a+20>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}ma(a)}function tb(a,b,c){var d=0,e=0,f=0;e=$-16|0;$=e;d=D[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=D[a>>2];D[a+4>>2]=c;Ya(d,b,c);B[e+15|0]=0;B[c+d|0]=E[e+15|0];break a}f=a;a=D[a+4>>2];Dc(f,d-1|0,(c-d|0)+1|0,a,a,c,b)}$=e+16|0}function ai(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=J(e,f);g=c&65535;h=a&65535;i=J(g,h);f=(i>>>16|0)+J(f,g)|0;e=(f&65535)+J(e,h)|0;aa=(J(b,c)+j|0)+J(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function se(a,b){a=a|0;b=b|0;var c=0,d=0;c=$-16|0;$=c;a=D[a+4>>2];a:{if((a|0)==-1){break a}B[c+15|0]=a;d=D[b+20>>2];if(!!D[b+16>>2]&(d|0)>=0|(d|0)>0){break a}rb(b,D[b+4>>2],c+15|0,c+16|0)}$=c+16|0;return(a|0)!=-1|0}function og(){var a=0;a=na(96);mb(a);D[a+64>>2]=0;D[a+68>>2]=0;D[a+88>>2]=0;D[a+72>>2]=0;D[a+76>>2]=0;B[a+77|0]=0;B[a+78|0]=0;B[a+79|0]=0;B[a+80|0]=0;B[a+81|0]=0;B[a+82|0]=0;B[a+83|0]=0;B[a+84|0]=0;return a|0}function Cc(a,b,c){var d=0;d=D[a+16>>2];if(!d){D[a+36>>2]=1;D[a+24>>2]=c;D[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(D[a+24>>2]!=2){break a}D[a+24>>2]=c;return}B[a+54|0]=1;D[a+24>>2]=2;D[a+36>>2]=D[a+36>>2]+1}}function ch(a,b){a=a|0;b=b|0;var c=0,d=0;D[b>>2]=2;c=D[b+8>>2];d=D[b+12>>2]-c|0;if(d>>>0<=4294967291){Fb(b+8|0,d+4|0);c=D[b+8>>2]}b=c+d|0;a=D[a+4>>2];B[b|0]=a;B[b+1|0]=a>>>8;B[b+2|0]=a>>>16;B[b+3|0]=a>>>24} +function vg(a){a=a|0;var b=0,c=0,d=0;b=D[a+8>>2];d=D[a+12>>2];if((b|0)==(d|0)){return 1}while(1){c=D[b>>2];c=ba[D[D[c>>2]+16>>2]](c,D[a+32>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function be(a){a=a|0;var b=0;D[a>>2]=3044;b=D[a+96>>2];if(b){ma(b)}b=D[a+84>>2];if(b){ma(b)}b=D[a+72>>2];if(b){ma(b)}b=D[a+60>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function Wh(a){a=a|0;var b=0;D[a>>2]=4608;b=D[a+96>>2];if(b){ma(b)}b=D[a+84>>2];if(b){ma(b)}b=D[a+72>>2];if(b){ma(b)}b=D[a+60>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function ra(a){var b=0,c=0,d=0,e=0,f=0;b=_(8)|0;D[b>>2]=11252;D[b>>2]=11296;c=za(a);d=na(c+13|0);D[d+8>>2]=0;D[d+4>>2]=c;D[d>>2]=c;e=b,f=oa(d+12|0,a,c+1|0),D[e+4>>2]=f;D[b>>2]=11344;Z(b|0,11376,13);T()}function ae(a){a=a|0;var b=0;D[a>>2]=3044;b=D[a+96>>2];if(b){ma(b)}b=D[a+84>>2];if(b){ma(b)}b=D[a+72>>2];if(b){ma(b)}b=D[a+60>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Vh(a){a=a|0;var b=0;D[a>>2]=4608;b=D[a+96>>2];if(b){ma(b)}b=D[a+84>>2];if(b){ma(b)}b=D[a+72>>2];if(b){ma(b)}b=D[a+60>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Oc(a,b,c){var d=0,e=0;d=a+4|0;a=ab(a,b);if((d|0)==(a|0)){return 0}b=D[a+32>>2];d=D[a+28>>2];if((b|0)!=(d|0)){Sb(c,b-d|0);e=Tb(c);c=D[a+28>>2];oa(e,c,D[a+32>>2]-c|0)}return(b|0)!=(d|0)}function Lc(a,b){var c=0,d=0;c=D[a+8>>2];a=D[a+12>>2]-c|0;if(a){a=a>>2;d=a>>>0>1?a:1;a=0;while(1){if(D[D[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return-1}function mb(a){D[a+8>>2]=0;D[a+12>>2]=0;D[a>>2]=0;D[a+40>>2]=0;D[a+44>>2]=0;D[a+28>>2]=9;B[a+24|0]=1;D[a+56>>2]=-1;D[a+60>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+48>>2]=0;D[a+52>>2]=0;return a}function Qe(a,b){a=a|0;b=b|0;var c=0,d=0;Jc(a,b);a:{if((b|0)<0){break a}c=D[a+88>>2];d=D[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){Pa(b,d,c)}D[a+88>>2]=b+c}}function Gd(a){D[a+40>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=10064;D[a+12>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+32>>2]=0;C[a+36>>1]=0;D[a+44>>2]=0;D[a>>2]=8108}function ec(a,b,c){var d=0;a:{if(b){b=0;if(!id(1,c,a)){break a}}B[a+36|0]=1;D[a+32>>2]=0;b=D[a+16>>2];c=b+D[a>>2]|0;D[a+24>>2]=c;d=a;a=D[a+8>>2];D[d+28>>2]=c+(a-b|0);b=1}return b}function ke(a,b){a=a|0;b=b|0;var c=0,d=0;d=D[a+16>>2];c=0;a:{if(D[a+20>>2]-d>>2<=(b|0)){break a}b=D[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=eb(D[D[a+36>>2]+(b<<2)>>2])}return c|0}function Gf(){var a=0,b=0;a=na(40);D[a+4>>2]=0;D[a+8>>2]=0;D[a>>2]=a+4;b=a+16|0;D[b>>2]=0;D[b+4>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;D[a+12>>2]=b;D[a+32>>2]=0;D[a+36>>2]=0;return a|0}function Za(a){var b=0,c=0;b=D[2853];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ca()<<16>>>0){if(!(X(a|0)|0)){break a}}D[2853]=a;return b}D[2879]=48;return-1}function ze(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=D[a+8>>2];a:{if(B[d+24|0]<=0){break a}if(!Zb(d,D[b+4>>2]-D[b>>2]>>2)){break a}e=ba[D[D[a>>2]+32>>2]](a,b,c)|0}return e|0}function sb(a,b,c){var d=0,e=0;d=$-16|0;$=d;a:{if(c>>>0<=10){B[a+11|0]=c;Ya(a,b,c);B[d+15|0]=0;B[a+c|0]=E[d+15|0];break a}e=a;a=E[a+11|0];Dc(e,10,c-10|0,a,a,c,b)}$=d+16|0}function Mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;D[a+4>>2]=b;b=D[D[D[b+4>>2]+8>>2]+(c<<2)>>2];D[a+12>>2]=c;D[a+8>>2]=b;a=D[a+8>>2];if(E[a+24|0]==3){d=D[a+28>>2]==9}return d|0}function Lg(a){a=a|0;var b=0;D[a+8>>2]=9588;D[a>>2]=9424;b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=9404;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}return a|0}function Gg(a){a=a|0;var b=0;D[a+8>>2]=8652;D[a>>2]=9716;b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=8904;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}return a|0}function yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;D[a+4>>2]=b;d=D[D[D[b+4>>2]+8>>2]+(c<<2)>>2];D[a+12>>2]=c;D[a+8>>2]=d;return D[D[D[D[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9|0}function Ca(a,b){if(b){Ca(a,D[b>>2]);Ca(a,D[b+4>>2]);a=D[b+28>>2];D[b+28>>2]=0;if(a){Ca(a+12|0,D[a+16>>2]);Ba(a,D[a+4>>2]);ma(a)}if(B[b+27|0]<0){ma(D[b+16>>2])}ma(b)}}function Kg(a){a=a|0;var b=0;D[a+8>>2]=9588;D[a>>2]=9424;b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=9404;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}ma(a)}function Fg(a){a=a|0;var b=0;D[a+8>>2]=8652;D[a>>2]=9716;b=D[a+56>>2];if(b){D[a+60>>2]=b;ma(b)}D[a+8>>2]=8904;b=D[a+44>>2];if(b){ma(b)}b=D[a+32>>2];if(b){ma(b)}ma(a)}function Ne(a,b){a=a|0;b=b|0;var c=0;a:{if(!(ba[D[D[a>>2]+36>>2]](a,b)|0)){break a}if(!(ba[D[D[a>>2]+40>>2]](a,b)|0)){break a}c=ba[D[D[a>>2]+44>>2]](a)|0}return c|0}function Wd(a){a=a|0;var b=0;a:{if(!D[a- -64>>2]|!D[a+68>>2]|(!D[a+44>>2]|!D[a+48>>2])){break a}if(!D[a+52>>2]|!D[a+56>>2]){break a}b=D[a+92>>2]!=-1}return b|0}function vc(a){a=a|0;var b=0;D[a>>2]=2164;b=D[a+20>>2];D[a+20>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}return a|0}function $h(a,b){a=a|0;b=b|0;var c=0;b=D[b+88>>2];if(!(!b|D[b>>2]!=2)){c=a;a=D[b+8>>2];D[c+4>>2]=E[a|0]|E[a+1|0]<<8|(E[a+2|0]<<16|E[a+3|0]<<24);c=1}return c|0}function Qd(a){a=a|0;var b=0;a:{if(!D[a+48>>2]|!D[a+52>>2]|(!D[a+28>>2]|!D[a+32>>2])){break a}if(!D[a+36>>2]|!D[a+40>>2]){break a}b=D[a+76>>2]!=-1}return b|0}function uc(a){a=a|0;var b=0;D[a>>2]=2164;b=D[a+20>>2];D[a+20>>2]=0;if(b){ba[D[D[b>>2]+4>>2]](b)}D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}ma(a)}function Mg(a){a=a|0;var b=0;D[a>>2]=9588;b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function Ad(a){a=a|0;var b=0;D[a>>2]=8652;b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=8904;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function rg(){var a=0,b=0;b=na(40);D[b>>2]=-1;a=b+8|0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a>>2]=0;D[a+4>>2]=0;D[a+24>>2]=0;D[a+28>>2]=0;return b|0}function Zg(a){a=a|0;var b=0;D[a>>2]=8652;b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=8904;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function Hg(a){a=a|0;var b=0;D[a>>2]=9588;b=D[a+48>>2];if(b){D[a+52>>2]=b;ma(b)}D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function Ge(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(La(a,D[b+8>>2],f)){Bc(b,c,d,e);return}a=D[a+8>>2];ba[D[D[a>>2]+20>>2]](a,b,c,d,e,f)}function xh(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(E[D[a+4>>2]+36|0]>=2){b=0;if(!(ba[D[D[a>>2]+52>>2]](a)|0)){break a}}b=fd(a+24|0,D[a+16>>2])}return b|0}function ag(){var a=0;a=na(108);Nc(a);D[a+84>>2]=0;D[a+88>>2]=0;D[a>>2]=10272;D[a+92>>2]=0;D[a+96>>2]=0;D[a+100>>2]=0;D[a+104>>2]=0;return a|0}function Mc(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=J(b,12)+a|0;a=D[b+20>>2];if((D[b+24>>2]-a|0)<=0){break a}c=D[a>>2]}return c}function $b(a,b,c,d,e,f,g){D[a>>2]=0;D[a+56>>2]=b;D[a+48>>2]=0;D[a+52>>2]=0;D[a+40>>2]=f;D[a+44>>2]=g;B[a+32|0]=e;D[a+28>>2]=d;B[a+24|0]=c}function Te(a){a=a|0;var b=0;D[a>>2]=10272;b=D[a+96>>2];if(b){D[a+100>>2]=b;ma(b)}b=D[a+84>>2];if(b){D[a+88>>2]=b;ma(b)}vb(a);return a|0}function Lh(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(E[D[a+4>>2]+36|0]>=2){b=0;if(!tc(a+24|0,eb(a),c)){break a}}b=fd(a+24|0,D[a+16>>2])}return b|0}function Se(a){a=a|0;var b=0;D[a>>2]=10272;b=D[a+96>>2];if(b){D[a+100>>2]=b;ma(b)}b=D[a+84>>2];if(b){D[a+88>>2]=b;ma(b)}vb(a);ma(a)}function _d(a){a=a|0;var b=0;D[a>>2]=3292;b=D[a+76>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function Th(a){a=a|0;var b=0;D[a>>2]=4844;b=D[a+76>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function Ba(a,b){if(b){Ba(a,D[b>>2]);Ba(a,D[b+4>>2]);a=D[b+28>>2];if(a){D[b+32>>2]=a;ma(a)}if(B[b+27|0]<0){ma(D[b+16>>2])}ma(b)}}function Pf(){var a=0;a=na(28);D[a>>2]=0;D[a+4>>2]=0;D[a+24>>2]=0;D[a+16>>2]=0;D[a+20>>2]=0;D[a+8>>2]=0;D[a+12>>2]=0;return a|0}function Tb(a){var b=0;if(E[a+11|0]>>>7|0){b=D[a+4>>2]}else{b=E[a+11|0]}if(!b){ub();T()}if(E[a+11|0]>>>7|0){a=D[a>>2]}return a}function Pe(a){a=a|0;var b=0;D[a>>2]=1804;b=D[a+16>>2];if(b){D[a+20>>2]=b;ma(b)}b=D[a+4>>2];if(b){D[a+8>>2]=b;ma(b)}return a|0}function _f(){var a=0,b=0;a=na(24);D[a+4>>2]=0;D[a+8>>2]=0;b=a+16|0;D[b>>2]=0;D[b+4>>2]=0;D[a>>2]=a+4;D[a+12>>2]=b;return a|0}function Je(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(La(a,D[b+8>>2],0)){Cc(b,c,d);return}a=D[a+8>>2];ba[D[D[a>>2]+28>>2]](a,b,c,d)}function Zd(a){a=a|0;var b=0;D[a>>2]=3292;b=D[a+76>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Sh(a){a=a|0;var b=0;D[a>>2]=4844;b=D[a+76>>2];if(b){ma(b)}D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function na(a){var b=0;a=a?a:1;a:{while(1){b=Gc(a);if(b){break a}b=D[3004];if(b){ba[b|0]();continue}break}W();T()}return b}function ib(a,b){if(b){ib(a,D[b>>2]);ib(a,D[b+4>>2]);if(B[b+39|0]<0){ma(D[b+28>>2])}if(B[b+27|0]<0){ma(D[b+16>>2])}ma(b)}}function Rb(a){a=a|0;var b=0,c=0;D[a>>2]=11296;b=D[a+4>>2]-12|0;c=D[b+8>>2]-1|0;D[b+8>>2]=c;if((c|0)<0){ma(b)}return a|0}function Mb(a,b){a=a|0;b=b|0;var c=0;a:{switch(b|0){case 1:b=1;case 0:D[a+28>>2]=b;c=1;break;default:break a}}return c|0}function gg(){var a=0;a=na(24);D[a+8>>2]=0;D[a+12>>2]=0;D[a+4>>2]=-1;D[a>>2]=1140;D[a+16>>2]=0;D[a+20>>2]=0;return a|0}function zc(a,b,c){a=a|0;b=b|0;c=c|0;D[a+4>>2]=b;b=D[D[D[b+4>>2]+8>>2]+(c<<2)>>2];D[a+12>>2]=c;D[a+8>>2]=b;return 1}function oc(a){a=a|0;var b=0;if(!(!D[a+60>>2]|!D[a+44>>2]|(!D[a+48>>2]|!D[a+52>>2]))){b=D[a+56>>2]!=0}return b|0}function Fb(a,b){var c=0,d=0;Ka(a,b);b=D[a+28>>2];c=b;d=b+1|0;b=D[a+24>>2]+1|0;D[a+24>>2]=b;D[a+28>>2]=b?c:d}function _h(a){a=a|0;var b=0;D[a>>2]=3528;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function Qh(a){a=a|0;var b=0;D[a>>2]=5068;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function ef(a){a=a|0;if(a){if(B[a+39|0]<0){ma(D[a+28>>2])}Yb(a+12|0,D[a+16>>2]);ib(a,D[a+4>>2]);ma(a)}}function Yg(a){a=a|0;var b=0;D[a>>2]=8904;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function Pg(a){a=a|0;var b=0;D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}return a|0}function qb(a){a=a|0;var b=0;if(!(!D[a+52>>2]|(!D[a+44>>2]|!D[a+48>>2]))){b=D[a+56>>2]!=0}return b|0}function nc(a,b){a=a|0;b=b|0;var c=0;if(!(D[b+56>>2]|!b|E[b+24|0]!=3)){D[a+60>>2]=b;c=1}return c|0}function Zh(a){a=a|0;var b=0;D[a>>2]=3528;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Ph(a){a=a|0;var b=0;D[a>>2]=5068;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function sg(a,b,c){a=a|0;b=b|0;c=c|0;D[a+16>>2]=0;D[a+20>>2]=0;D[a>>2]=b;D[a+8>>2]=c;D[a+12>>2]=0}function Xg(a){a=a|0;var b=0;D[a>>2]=8904;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function Vd(a,b){a=a|0;b=b|0;var c=0;if(!(D[b+56>>2]|E[b+24|0]!=3)){D[a- -64>>2]=b;c=1}return c|0}function Ng(a){a=a|0;var b=0;D[a>>2]=9404;b=D[a+36>>2];if(b){ma(b)}b=D[a+24>>2];if(b){ma(b)}ma(a)}function Pd(a,b){a=a|0;b=b|0;var c=0;if(!(D[b+56>>2]|E[b+24|0]!=3)){D[a+48>>2]=b;c=1}return c|0}function Fe(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(La(a,D[b+8>>2],f)){Bc(b,c,d,e)}}function ve(a){a=a|0;var b=0;D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}return a|0}function ee(a){a=a|0;var b=0;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}return a|0}function vh(a){a=a|0;var b=0;b=eb(a);return nd(a+24|0,b?b:D[a+8>>2],D[D[a+4>>2]+32>>2])|0}function Og(a){a=a|0;var b=0;D[a>>2]=1140;b=D[a+8>>2];if(b){D[a+12>>2]=b;ma(b)}return a|0}function ue(a){a=a|0;var b=0;D[a>>2]=1948;b=D[a+16>>2];D[a+16>>2]=0;if(b){ya(b)}ma(a)}function Pb(a){a=a|0;var b=0;D[a>>2]=2988;b=D[a+32>>2];if(b){D[a+36>>2]=b;ma(b)}ma(a)}function Eg(a){a=a|0;var b=0;D[a>>2]=1140;b=D[a+8>>2];if(b){D[a+12>>2]=b;ma(b)}ma(a)}function je(a,b){a=a|0;b=b|0;return ba[D[D[a>>2]+48>>2]](a,D[b+4>>2]-D[b>>2]>>2)|0}function Yb(a,b){if(b){Yb(a,D[b>>2]);Yb(a,D[b+4>>2]);ib(b+20|0,D[b+24>>2]);ma(b)}}function qh(a){a=a|0;if(!D[a+44>>2]){return 0}return ba[D[D[a>>2]+48>>2]](a)|0}function qg(a){a=a|0;var b=0;if(a){b=D[a+8>>2];if(b){D[a+12>>2]=b;ma(b)}ma(a)}}function di(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function Ke(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(La(a,D[b+8>>2],0)){Cc(b,c,d)}}function oh(a,b){a=a|0;b=b|0;a=D[a+48>>2];return ba[D[D[a>>2]+20>>2]](a,b)|0}function gh(a,b){a=a|0;b=b|0;a=D[a+48>>2];return ba[D[D[a>>2]+12>>2]](a,b)|0}function fh(a,b){a=a|0;b=b|0;a=D[a+48>>2];return ba[D[D[a>>2]+16>>2]](a,b)|0}function _a(a){a=a|0;var b=0;if(a){b=D[a>>2];if(b){D[a+4>>2]=b;ma(b)}ma(a)}}function $a(){var a=0;a=na(12);D[a>>2]=0;D[a+4>>2]=0;D[a+8>>2]=0;return a|0}function ei(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function yg(a,b){a=a|0;b=b|0;B[b+84|0]=1;D[b+72>>2]=D[b+68>>2];return 1}function gf(a,b,c){a=a|0;b=b|0;c=c|0;D[a+32>>2]=c;D[a+28>>2]=b;return 1}function Zf(a){a=a|0;if(a){Ca(a+12|0,D[a+16>>2]);Ba(a,D[a+4>>2]);ma(a)}}function mh(a){a=a|0;a=D[a+48>>2];return ba[D[D[a>>2]+24>>2]](a)|0}function kh(a){a=a|0;a=D[a+48>>2];return ba[D[D[a>>2]+28>>2]](a)|0}function hh(a){a=a|0;a=D[a+48>>2];return ba[D[D[a>>2]+36>>2]](a)|0}function cg(){var a=0;a=na(8);D[a+4>>2]=-1;D[a>>2]=1032;return a|0}function Af(a,b,c){a=a|0;b=b|0;c=c|0;return D[D[b+8>>2]+(c<<2)>>2]}function uh(a,b){a=a|0;b=b|0;return xd(a+24|0,eb(a),D[a+8>>2])|0}function Kh(a,b){a=a|0;b=b|0;return yc(a+24|0,eb(a),D[a+8>>2])|0}function wh(a,b){a=a|0;b=b|0;return ba[D[D[a>>2]+56>>2]](a,b)|0}function ed(a,b){a=a|0;b=b|0;return ba[D[D[a>>2]+12>>2]](a,b)|0}function Wf(a){a=a|0;if(a){if(B[a+15|0]<0){ma(D[a+4>>2])}ma(a)}}function Ae(a,b){a=a|0;b=b|0;D[a+12>>2]=-1;D[a+8>>2]=b;return 1}function eg(a,b){a=a|0;b=b|0;return K(H[D[a+8>>2]+(b<<2)>>2])}function Vf(a,b){a=a|0;b=b|0;return K(H[D[a>>2]+(b<<2)>>2])}function Xf(a){a=a|0;return(B[a+15|0]<0?D[a+4>>2]:a+4|0)|0}function Me(a,b){a=a|0;b=b|0;return D[D[a+4>>2]+(b<<2)>>2]}function $f(a){a=a|0;return(D[a+100>>2]-D[a+96>>2]|0)/12|0}function ad(a,b){a=a|0;b=b|0;return D[D[a>>2]+(b<<2)>>2]}function Rf(a,b){a=a|0;b=b|0;return C[D[a>>2]+(b<<1)>>1]}function Qf(a,b){a=a|0;b=b|0;return F[D[a>>2]+(b<<1)>>1]}function Rd(a,b,c){a=a|0;b=b|0;c=c|0;return wc(a,b,c)|0}function Df(a,b,c){a=a|0;b=b|0;c=c|0;return Mc(b,c)|0}function fi(a){if(a){return 31-M(a-1^a)|0}return 32} +function Nc(a){D[a>>2]=10332;pa(a+4|0,0,80);return a}function dd(a){a=a|0;return D[a+12>>2]-D[a+8>>2]>>2}function yb(a){a=a|0;if(a){ba[D[D[a>>2]+4>>2]](a)}}function Uf(a,b){a=a|0;b=b|0;return B[D[a>>2]+b|0]}function Sf(a,b){a=a|0;b=b|0;return E[D[a>>2]+b|0]}function De(a){a=a|0;return D[a+8>>2]-D[a+4>>2]>>2}function Fd(a,b){a=a|0;b=b|0;D[a+4>>2]=b;return 1}function bd(a){a=a|0;return D[a+4>>2]-D[a>>2]>>1}function ac(a){a=a|0;return D[a+4>>2]-D[a>>2]>>2}function cd(a){a=a|0;return D[a+4>>2]-D[a>>2]|0}function yf(a,b){a=a|0;b=b|0;return D[b+4>>2]}function ye(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function ug(a,b){a=a|0;b=b|0;return B[b+24|0]}function fe(a){a=a|0;return B[D[a+8>>2]+24|0]}function Jf(a,b){a=a|0;b=b|0;return D[b+8>>2]}function Ih(a){a=a|0;D[a>>2]=5956;return a|0}function Ch(a){a=a|0;D[a>>2]=6960;return a|0}function dg(a){a=a|0;return K(H[a+20>>2])}function Hh(a){a=a|0;D[a>>2]=5956;ma(a)}function Bh(a){a=a|0;D[a>>2]=6960;ma(a)}function ng(a){a=a|0;return D[a+88>>2]}function mg(a){a=a|0;return D[a+56>>2]}function jg(a){a=a|0;return D[a+40>>2]}function ig(a){a=a|0;return D[a+48>>2]}function hg(a){a=a|0;return D[a+60>>2]}function fb(a){a=a|0;return D[a+28>>2]}function bc(a){a=a|0;return D[a+80>>2]}function sc(a,b){a=a|0;b=b|0;return-1}function rd(a){a=a|0;return D[a+8>>2]}function lg(a){a=a|0;return B[a+24|0]}function kg(a){a=a|0;return E[a+32|0]}function Yf(a){a=a|0;return!D[a>>2]|0}function Xa(a){a=a|0;return D[a+4>>2]}function Sd(a,b){a=a|0;b=b|0;return 6}function Ia(a,b){a=a|0;b=b|0;return 0}function Gh(a,b){a=a|0;b=b|0;return 2}function Ac(a,b){a=a|0;b=b|0;return 1}function gd(a){a=a|0;return D[a>>2]}function Ya(a,b,c){if(c){oa(a,b,c)}}function pg(){return mb(na(64))|0}function cc(a){a=a|0;if(a){ma(a)}}function bg(){return Nc(na(84))|0}function Ee(a){a=a|0;return 1273}function Be(a){a=a|0;Rb(a);ma(a)}function Oa(a){a=a|0;return a|0}function _g(a){a=a|0;ma(od(a))}function Oe(a){a=a|0;ma(vb(a))}function Ce(a){a=a|0;ma(Rb(a))}function $g(a){a=a|0;ma(qd(a))}function wa(a){a=a|0;return 1}function rc(a){a=a|0;return 4}function pc(a){a=a|0;return 5}function Wa(a){a=a|0;return 0}function Td(a){a=a|0;return 2}function Ob(a){a=a|0;return 6}function Fh(a){a=a|0;return 3}function Na(a){a=a|0;ma(a)}function Fa(){ra(1266);T()}function Aa(){ra(1313);T()}function Qa(a){a=a|0;T()}function _e(){return 10}function Ze(){return 11}function Ye(){return 12}function xb(){return-1}function wb(){return 1}function ua(){ub();T()}function qa(){Fa();T()}function lb(){return 0}function df(){return 5}function cf(){return 6}function bf(){return 7}function af(){return 8}function _c(){return 3}function Zc(){return 4}function Xe(){return-2}function Xb(){return 2}function We(){return-3}function Ve(){return-4}function Ue(){return-5}function $e(){return 9}function ub(){W();T()}function Fc(a){a=a|0}function Xd(){} // EMSCRIPTEN_END_FUNCS -e=E;p(ka);var ba=c([null,Ma,La,Rd,_h,bh,Rf,xc,qe,rc,mg,Qd,Gh,Pb,Ug,Lg,wa,xh,rh,ih,yd,dh,od,Qd,xg,Qe,Pa,of,Zc,Oe,Ne,Fe,db,Ha,Me,zc,wa,ve,ue,yc,Ae,ze,ye,zc,xe,we,me,le,te,se,ke,re,pe,oe,ne,uc,tc,yc,je,ie,vc,he,fe,ge,ee,Nb,wa,Va,qb,Ua,sc,Ha,Ua,wa,de,ce,Pa,Pa,be,ae,qc,qb,pc,$d,_d,Zd,oc,nc,wa,Ha,mc,lc,Yd,Xd,Wd,Mb,Ud,wa,Ha,Td,Sd,Zh,Ma,La,Kb,db,Lb,Pa,Nb,wa,qb,Yh,Pa,Xh,Wh,qc,qb,pc,Vh,Uh,Th,oc,nc,wa,Ha,mc,lc,Sh,Rh,Qh,Mb,Ud,wa,Ha,Td,Sd,Ph,Ma,La,Kb,db,Jb,Pa,Nb,Ua,wa,Oh,uc,tc,Nh,Mh,Pd,Kh,Rd,Lh,Jh,Ih,Mb,Va,Od,wa,Ha,Nd,wa,Hh,Md,Fh,Ma,La,Kb,db,Lb,Dh,Ch,Mb,Od,wa,Ha,Nd,Md,Bh,Ma,La,Kb,db,Jb,Ma,La,Ua,wa,Ua,sc,Ha,Eh,Ah,th,sh,zh,yh,Pd,wh,vh,uh,ph,Pa,wa,wa,qh,wg,vg,wa,Ua,Ha,Ha,kh,jh,nh,oh,lh,hh,gh,fh,mh,nd,ah,Ed,Dd,Cd,Bd,eh,wa,Va,pd,md,$g,Ed,Dd,Cd,Bd,ch,wa,Va,pd,zd,_g,Ad,Zg,Yg,Vg,Tg,Sg,Rg,Wg,Qg,Xg,Pg,Og,Mg,Kg,Jg,Ig,Ng,Hg,Gg,Fg,Eg,Dg,Ag,Bg,Cg,Ma,La,zg,yg,Pa,Ua,wa,Ue,Te,Se,Re,ub,Pe,Jc,Ic,Ma,La,Le,Ke,Va,Je,Ma,La,Ec,Ec,Ie,Be,De,He,La,Ce,Ee,Ge]);function ca(){return A.byteLength/65536|0}function ha(ia){ia=ia|0;var da=ca()|0;var ea=da+ia|0;if(da=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="draco_decoder_gltf.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["h"];addOnInit(Module["asm"]["g"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function _abort(){abort("")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="draco_decoder_gltf.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["h"];addOnInit(Module["asm"]["g"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function _abort(){abort("")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i { var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; return ( function(DracoEncoderModule) { DracoEncoderModule = DracoEncoderModule || {}; -var Module=typeof DracoEncoderModule!=="undefined"?DracoEncoderModule:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;var toLog=e;err("exiting due to exception: "+toLog)}var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status,toThrow){if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=( +var Module=typeof DracoEncoderModule!=="undefined"?DracoEncoderModule:{};var objAssign=Object.assign;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides=objAssign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=(()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}});read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?null:"utf8")};readBinary=(filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret});readAsync=((filename,onload,onerror)=>{var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})});if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}});if(ENVIRONMENT_IS_WORKER){readBinary=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}})}readAsync=((url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=(()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()});xhr.onerror=onerror;xhr.send(null)})}setWindowTitle=(title=>document.title=title)}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);objAssign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=( // EMSCRIPTEN_START_ASM -function instantiate(pa){function c(d){d.set=function(a,b){this[a]=b};d.get=function(a){return this[a]};return d}var e;var f=new Uint8Array(123);for(var a=25;a>=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a>4;if(i>2;if(i=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a>4;if(i>2;if(i>>0>=1073741824){break b}f=b<<2;D=ra(f);H[C+36>>2]=D;H[C+32>>2]=D;f=f+D|0;t=(c|0)>1?c:1;j=t-1|0;E=j&-4;q=j&3;s=t-2>>>0>2;h=D;n=h;while(1){i=H[(p<<2)+a>>2];f:{if((c|0)<2){break f}j=0;l=1;if(s){while(1){k=(l+p<<2)+a|0;w=H[k+12>>2];v=H[k+8>>2];z=H[k+4>>2];k=H[k>>2];k=i>>>0>>0?k:i;k=k>>>0>>0?z:k;k=k>>>0>>0?v:k;i=k>>>0>>0?w:k;l=l+4|0;j=j+4|0;if((E|0)!=(j|0)){continue}break}}j=0;if(!q){break f}while(1){k=H[(l+p<<2)+a>>2];i=i>>>0>>0?k:i;l=l+1|0;j=j+1|0;if((q|0)!=(j|0)){continue}break}}j=i?(Q(i)^31)+1|0:1;g:{if(f>>>0>n>>>0){H[n>>2]=j;n=n+4|0;H[C+36>>2]=n;break g}k=n-h|0;n=k>>2;l=n+1|0;if(l>>>0>=1073741824){break c}f=f-h|0;w=f>>1;f=f>>2>>>0<536870911?l>>>0>w>>>0?l:w:1073741823;if(f){if(f>>>0>=1073741824){break d}D=ra(f<<2)}else{D=0}l=D+(n<<2)|0;H[l>>2]=j;n=l+4|0;if((k|0)>0){sa(D,h,k)}f=(f<<2)+D|0;H[C+36>>2]=n;if(h){qa(h)}h=D}m=i>>>0>m>>>0?i:m;p=p+t|0;if((p|0)<(b|0)){continue}break}H[C+40>>2]=f;H[C+32>>2]=D;l=0;H[C+24>>2]=0;H[C+16>>2]=0;H[C+20>>2]=0;c=n-D|0;if(c){if((c|0)<0){break a}l=ra(c);H[C+16>>2]=l;H[C+24>>2]=(c>>2<<2)+l;c=sa(l,D,c)+c|0}else{c=0}f=c-l|0;c=f>>2;h:{if(!f){break h}f=c>>>0>1?c:1;h=f&3;p=0;i:{if(f-1>>>0<3){i=0;break i}q=f&-4;i=0;j=0;while(1){f=r;r=i<<2;n=H[r+l>>2];f=f+n|0;k=f>>>0>>0?g+1|0:g;n=H[(r|4)+l>>2];g=n+f|0;f=k;f=g>>>0>>0?f+1|0:f;k=H[(r|8)+l>>2];g=k+g|0;f=g>>>0>>0?f+1|0:f;r=H[(r|12)+l>>2];g=r+g|0;k=g>>>0>>0?f+1|0:f;r=g;g=k;i=i+4|0;j=j+4|0;if((q|0)!=(j|0)){continue}break}}if(!h){break h}while(1){k=H[(i<<2)+l>>2];j=k+r|0;r=j;g=j>>>0>>0?g+1|0:g;i=i+1|0;p=p+1|0;if((h|0)!=(p|0)){continue}break}}q=Uf(l,c,32,C);n=ea;E=H[C>>2];if(l){H[C+20>>2]=l;qa(l)}l=Uf(a,b,m,C);s=ea;h=H[C>>2];w=(m-h|0)/64|0;j:{if(d){c=ra(32);f=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);j=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+14|0]=j;F[c+15|0]=j>>>8;F[c+16|0]=j>>>16;F[c+17|0]=j>>>24;F[c+18|0]=f;F[c+19|0]=f>>>8;F[c+20|0]=f>>>16;F[c+21|0]=f>>>24;f=I[1740]|I[1741]<<8|(I[1742]<<16|I[1743]<<24);j=I[1736]|I[1737]<<8|(I[1738]<<16|I[1739]<<24);F[c+8|0]=j;F[c+9|0]=j>>>8;F[c+10|0]=j>>>16;F[c+11|0]=j>>>24;F[c+12|0]=f;F[c+13|0]=f>>>8;F[c+14|0]=f>>>16;F[c+15|0]=f>>>24;f=I[1732]|I[1733]<<8|(I[1734]<<16|I[1735]<<24);j=I[1728]|I[1729]<<8|(I[1730]<<16|I[1731]<<24);F[c|0]=j;F[c+1|0]=j>>>8;F[c+2|0]=j>>>16;F[c+3|0]=j>>>24;F[c+4|0]=f;F[c+5|0]=f>>>8;F[c+6|0]=f>>>16;F[c+7|0]=f>>>24;F[c+22|0]=0;i=H[d+4>>2];if(i){while(1){f=I[i+27|0];j=f<<24>>24<0;f=j?H[i+20>>2]:f;k=f>>>0<22;k:{l:{p=k?f:22;m:{n:{if(p){v=i+16|0;j=j?H[v>>2]:v;v=Ca(c,j,p);o:{if(!v){if(f>>>0<=22){break o}break k}if((v|0)<0){break k}}f=Ca(j,c,p);if(!f){break n}if((f|0)>=0){break m}break l}if(f>>>0>22){break k}}if(k){break l}}qa(c);c=ra(32);H[C>>2]=c;H[C+4>>2]=22;H[C+8>>2]=-2147483616;F[c+22|0]=0;g=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);f=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+14|0]=f;F[c+15|0]=f>>>8;F[c+16|0]=f>>>16;F[c+17|0]=f>>>24;F[c+18|0]=g;F[c+19|0]=g>>>8;F[c+20|0]=g>>>16;F[c+21|0]=g>>>24;g=I[1740]|I[1741]<<8|(I[1742]<<16|I[1743]<<24);f=I[1736]|I[1737]<<8|(I[1738]<<16|I[1739]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1732]|I[1733]<<8|(I[1734]<<16|I[1735]<<24);f=I[1728]|I[1729]<<8|(I[1730]<<16|I[1731]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;l=of(d,C);if(F[C+11|0]>=0){break j}qa(H[C>>2]);break j}i=i+4|0}i=H[i>>2];if(i){continue}break}}qa(c)}if((Q(m>>>0>1?m:1)^30)>>>0<18){g=Rk(r,g,t,0);c=g+q|0;f=ea+n|0;f=c>>>0>>0?f+1|0:f;k=c;c=E<<3;g=c>>31;p=g<<1|c>>>31;g=c<<1;c=k+g|0;k=f+p|0;k=c>>>0>>0?k+1|0:k;g=c;c=h+w<<3;f=c>>31;r=c;j=h<<3;p=j;c=j+l|0;j=(j>>31)+s|0;j=c>>>0

>>0?j+1|0:j;p=c;c=r+c|0;f=f+j|0;f=c>>>0

>>0?f+1|0:f;l=(f|0)<=(k|0)&c>>>0<=g>>>0|(f|0)<(k|0)}else{l=0}}F[C|0]=l;c=H[e+20>>2];if(!H[e+16>>2]&(c|0)<=0|(c|0)<0){va(e,H[e+4>>2],C,C+1|0)}i=0;p:{q:{switch(l|0){case 0:h=0;j=da-336|0;da=j;ta(j+80|0,0,256);c=H[C+32>>2];d=H[C+36>>2]-c|0;r:{if(!d){break r}d=d>>2;d=d>>>0>1?d:1;m=d&3;if(d-1>>>0>=3){r=d&-4;while(1){k=j+80|0;g=h<<2;d=k+(H[g+c>>2]<<3)|0;f=H[d+4>>2];p=H[d>>2]+1|0;f=p?f:f+1|0;H[d>>2]=p;H[d+4>>2]=f;d=k+(H[c+(g|4)>>2]<<3)|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=k+(H[c+(g|8)>>2]<<3)|0;d=H[f+4>>2];p=H[f>>2]+1|0;d=p?d:d+1|0;H[f>>2]=p;H[f+4>>2]=d;d=k+(H[c+(g|12)>>2]<<3)|0;f=H[d+4>>2];g=H[d>>2]+1|0;f=g?f:f+1|0;H[d>>2]=g;H[d+4>>2]=f;h=h+4|0;i=i+4|0;if((r|0)!=(i|0)){continue}break}}if(!m){break r}i=0;while(1){d=(j+80|0)+(H[c+(h<<2)>>2]<<3)|0;p=H[d+4>>2];g=H[d>>2]+1|0;p=g?p:p+1|0;H[d>>2]=g;H[d+4>>2]=p;h=h+1|0;i=i+1|0;if((m|0)!=(i|0)){continue}break}}c=j+48|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+24>>2]=0;H[j+28>>2]=0;H[j+32>>2]=0;H[j>>2]=0;H[j+4>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;Sf(j,j+80|0,32,e);f=H[j+16>>2];d=H[j+20>>2];g=H[e+4>>2]-H[e>>2]|0;H[j+40>>2]=g;H[j+44>>2]=0;p=d<<1|f>>>31;f=(f<<1)+39|0;d=p;d=f>>>0<39?d+1|0:d;k=d>>>3|0;d=g+((d&7)<<29|f>>>3)|0;f=k;f=d>>>0>>0?f+1|0:f;d=d+8|0;Pa(e,d);d=H[e>>2];H[j+28>>2]=0;H[j+32>>2]=16384;H[j+24>>2]=d+H[j+40>>2];d=c;c=b;gd(d,c<<5,c>>31<<5|c>>>27,0);b=c-t|0;if((b|0)>=0){k=(t|0)<=0;c=b;while(1){h=H[j+32>>2];D=H[C+32>>2];f=H[j>>2]+(H[D+((c|0)/(t|0)<<2)>>2]<<3)|0;g=H[f>>2];p=g<<10;if(h>>>0>=p>>>0){while(1){m=H[j+28>>2];H[j+28>>2]=m+1;F[m+H[j+24>>2]|0]=h;h=H[j+32>>2]>>>8|0;H[j+32>>2]=h;if(h>>>0>=p>>>0){continue}break}D=H[C+32>>2]}r=H[f+4>>2];f=(h>>>0)/(g>>>0)|0;H[j+32>>2]=r+((f<<12)+(h-N(f,g)|0)|0);p=b-c|0;f=(p|0)/(t|0)|0;s:{if(k){break s}r=H[d+16>>2];g=H[d+20>>2];if(!r&(g|0)<=0|(g|0)<0){break s}f=H[(f<<2)+D>>2];D=0;while(1){if(!(!r&(g|0)<=0|(g|0)<0|(f|0)<=0)){m=H[(p+D<<2)+a>>2];g=H[d+12>>2];h=H[g+4>>2];i=0;while(1){r=h>>>3|0;l=r+H[g>>2]|0;q=I[l|0];h=h&7;G=l,J=Vk(h)&q,F[G|0]=J;r=r+H[g>>2]|0;F[r|0]=I[r|0]|(m>>>i&1)<>2]+1|0;H[g+4>>2]=h;i=i+1|0;if((f|0)!=(i|0)){continue}break}}D=D+1|0;if((t|0)==(D|0)){break s}r=H[d+16>>2];g=H[d+20>>2];continue}}c=c-t|0;if((c|0)>=0){continue}break}}Cb(j,e);fd(d);a=H[e+20>>2];if(!H[e+16>>2]&(a|0)<=0|(a|0)<0){va(e,H[e+4>>2],H[d>>2],H[d+4>>2])}a=H[j>>2];if(a){H[j+4>>2]=a;qa(a)}a=H[d+12>>2];H[d+12>>2]=0;if(a){qa(a)}a=H[d>>2];if(a){H[d+4>>2]=a;qa(a)}da=j+336|0;i=1;D=H[C+32>>2];break p;case 1:break q;default:break p}}E=da-32|0;da=E;i=1;t:{if((h|0)>0){c=Q(h);i=0;if((c^30)>>>0>17){break t}i=32-c|0}u:{if(!d){break u}c=ra(48);F[c+32|0]=I[1582];g=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[c+24|0]=f;F[c+25|0]=f>>>8;F[c+26|0]=f>>>16;F[c+27|0]=f>>>24;F[c+28|0]=g;F[c+29|0]=g>>>8;F[c+30|0]=g>>>16;F[c+31|0]=g>>>24;g=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[c+16|0]=f;F[c+17|0]=f>>>8;F[c+18|0]=f>>>16;F[c+19|0]=f>>>24;F[c+20|0]=g;F[c+21|0]=g>>>8;F[c+22|0]=g>>>16;F[c+23|0]=g>>>24;g=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;F[c+33|0]=0;h=H[d+4>>2];if(h){v:{while(1){g=I[h+27|0];f=g<<24>>24<0;g=f?H[h+20>>2]:g;j=g>>>0<33;w:{x:{k=j?g:33;y:{z:{if(k){p=h+16|0;f=f?H[p>>2]:p;p=Ca(c,f,k);A:{if(!p){if(g>>>0<=33){break A}break w}if((p|0)<0){break w}}g=Ca(f,c,k);if(!g){break z}if((g|0)>=0){break y}break x}if(g>>>0>33){break w}}if(j){break x}}qa(c);c=ra(48);H[E+16>>2]=c;H[E+20>>2]=33;H[E+24>>2]=-2147483600;F[c+33|0]=0;F[c+32|0]=I[1582];g=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[c+24|0]=f;F[c+25|0]=f>>>8;F[c+26|0]=f>>>16;F[c+27|0]=f>>>24;F[c+28|0]=g;F[c+29|0]=g>>>8;F[c+30|0]=g>>>16;F[c+31|0]=g>>>24;g=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[c+16|0]=f;F[c+17|0]=f>>>8;F[c+18|0]=f>>>16;F[c+19|0]=f>>>24;F[c+20|0]=g;F[c+21|0]=g>>>8;F[c+22|0]=g>>>16;F[c+23|0]=g>>>24;g=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;c=of(d,E+16|0);if(F[E+27|0]<0){qa(H[E+16>>2])}if((c|0)>3){break v}i=i-2|0;break u}h=h+4|0}h=H[h>>2];if(h){continue}break}qa(c);break u}if(c>>>0<=5){i=i-1|0;break u}if(c>>>0>=10){i=i+2|0;break u}i=(c>>>0>7)+i|0;break u}qa(c)}c=(i|0)>1?i:1;c=c>>>0<18?c:18;F[E+15|0]=c;d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){va(e,H[e+4>>2],E+15|0,E+16|0)}B:{switch(c-2|0){default:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;C:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}D:{if((b|0)<=0){break D}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;c=(H[t+(c|12)>>2]<<3)+q|0;p=H[c+4>>2];d=H[c>>2]+1|0;p=d?p:p+1|0;H[c>>2]=d;H[c+4>>2]=p;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}f=b&3;if(!f){break D}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;l=l+1|0;if((f|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;E:{if((d|0)<=0){break E}n=d&3;F:{if(d-1>>>0<3){h=0;break F}B=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|p?l:!(z|k)?x:h;l=f;x=p;f=g+z|0;p=k+r|0;f=p>>>0>>0?f+1|0:f;k=p;g=x+k|0;p=d+f|0;p=g>>>0>>0?p+1|0:p;d=g+w|0;f=l+p|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!n){break E}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;f=d+r|0;d=c+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;G:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break G}if(c>>>0<=d>>>0){break G}H[i+4>>2]=(d<<3)+f}l=0;n=0;H:{I:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*4096+.5;J:{if(o<4294967296&o>=0){c=~~o>>>0;break J}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==4096){break I}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;K:{if((a|0)<0){break K}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break K}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;Ed(l,f,s+24|0);L:{M:{if((n|0)<4096){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+4096;break M}N:{if((a|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];c=a;O:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));P:{if(P(u)<2147483648){g=~~u;break P}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break O}d=(c|0)>1;c=c-1|0;if(d){continue}break O}break}if((a|0)==(c|0)){break N}}if((m|0)<=0){break L}l=H[s+8>>2];continue}}if(n>>>0<4097){break M}while(1)continue}qa(l);break H}if(!l){break I}}qa(l)}if((a|0)<0){break H}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break H}h=0;o=0;Q:{if((a|0)<0){break Q}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break Q}a=h<<3;c=H[a+g>>2];if(!c){break Q}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*.000244140625)+o}o=U(-o);R:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break R}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;f=a>>>0<39?f+1|0:f;a=c+((f&7)<<29|a>>>3)|0;j=f>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Cb(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break C}i=1;break t;case 0:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;S:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}T:{if((b|0)<=0){break T}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break T}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;f=H[c+4>>2];j=H[c>>2]+1|0;f=j?f:f+1|0;H[c>>2]=j;H[c+4>>2]=f;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;U:{if((d|0)<=0){break U}l=d&3;V:{if(d-1>>>0<3){h=0;break V}B=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|n?p:!(z|k)?x:h;p=j;j=f;f=k;r=f+r|0;k=g+z|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;j=f+j|0;j=d>>>0>>0?j+1|0:j;g=d;d=d+v|0;p=j+p|0;r=d;g=d>>>0>>0?p+1|0:p;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!l){break U}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;f=c+g|0;d=d+r|0;f=d>>>0>>0?f+1|0:f;r=d;g=f;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;W:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break W}if(c>>>0<=d>>>0){break W}H[i+4>>2]=(d<<3)+f}l=0;n=0;X:{Y:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*4096+.5;Z:{if(o<4294967296&o>=0){c=~~o>>>0;break Z}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==4096){break Y}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;_:{if((a|0)<0){break _}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break _}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;Dd(l,f,s+24|0);$:{aa:{if((n|0)<4096){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+4096;break aa}ba:{if((a|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];c=a;ca:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));da:{if(P(u)<2147483648){g=~~u;break da}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break ca}d=(c|0)>1;c=c-1|0;if(d){continue}break ca}break}if((a|0)==(c|0)){break ba}}if((m|0)<=0){break $}l=H[s+8>>2];continue}}if(n>>>0<4097){break aa}while(1)continue}qa(l);break X}if(!l){break Y}}qa(l)}if((a|0)<0){break X}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break X}h=0;o=0;ea:{if((a|0)<0){break ea}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break ea}a=h<<3;c=H[a+g>>2];if(!c){break ea}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*.000244140625)+o}o=U(-o);fa:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break fa}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;j=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?j+1|0:j;a=c+((k&7)<<29|a>>>3)|0;p=k>>>3|0;p=a>>>0>>0?p+1|0:p;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Cb(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break S}i=1;break t;case 1:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;ga:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}ha:{if((b|0)<=0){break ha}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;f=(H[t+(c|8)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}d=b&3;if(!d){break ha}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;ia:{if((d|0)<=0){break ia}n=d&3;ja:{if(d-1>>>0<3){h=0;break ja}B=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|p?l:!(z|k)?x:h;l=j;j=d;x=p;d=g+z|0;p=k+r|0;d=p>>>0>>0?d+1|0:d;k=p;g=x+k|0;j=d+j|0;j=g>>>0>>0?j+1|0:j;d=g+w|0;p=f+j|0;p=d>>>0>>0?p+1|0:p;g=d;d=d+v|0;f=l+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!n){break ia}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;k=c+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;ka:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break ka}if(c>>>0<=d>>>0){break ka}H[i+4>>2]=(d<<3)+f}l=0;n=0;la:{ma:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*4096+.5;na:{if(o<4294967296&o>=0){c=~~o>>>0;break na}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==4096){break ma}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;oa:{if((a|0)<0){break oa}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break oa}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;Cd(l,f,s+24|0);pa:{qa:{if((n|0)<4096){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+4096;break qa}ra:{if((a|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];c=a;sa:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));ta:{if(P(u)<2147483648){g=~~u;break ta}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break sa}d=(c|0)>1;c=c-1|0;if(d){continue}break sa}break}if((a|0)==(c|0)){break ra}}if((m|0)<=0){break pa}l=H[s+8>>2];continue}}if(n>>>0<4097){break qa}while(1)continue}qa(l);break la}if(!l){break ma}}qa(l)}if((a|0)<0){break la}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break la}h=0;o=0;ua:{if((a|0)<0){break ua}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break ua}a=h<<3;c=H[a+g>>2];if(!c){break ua}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*.000244140625)+o}o=U(-o);va:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break va}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;p=a<<1|d>>>31;a=(d<<1)+39|0;d=p;d=a>>>0<39?d+1|0:d;a=c+((d&7)<<29|a>>>3)|0;f=d>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Cb(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break ga}i=1;break t;case 2:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;wa:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}xa:{if((b|0)<=0){break xa}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;c=(H[t+(c|12)>>2]<<3)+q|0;p=H[c+4>>2];d=H[c>>2]+1|0;p=d?p:p+1|0;H[c>>2]=d;H[c+4>>2]=p;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}f=b&3;if(!f){break xa}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;l=l+1|0;if((f|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;ya:{if((d|0)<=0){break ya}n=d&3;za:{if(d-1>>>0<3){h=0;break za}B=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|p?l:!(z|k)?x:h;l=f;x=p;f=g+z|0;p=k+r|0;f=p>>>0>>0?f+1|0:f;k=p;g=x+k|0;p=d+f|0;p=g>>>0>>0?p+1|0:p;d=g+w|0;f=l+p|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!n){break ya}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;f=d+r|0;d=c+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;Aa:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break Aa}if(c>>>0<=d>>>0){break Aa}H[i+4>>2]=(d<<3)+f}l=0;n=0;Ba:{Ca:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*4096+.5;Da:{if(o<4294967296&o>=0){c=~~o>>>0;break Da}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==4096){break Ca}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;Ea:{if((a|0)<0){break Ea}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break Ea}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;Bd(l,f,s+24|0);Fa:{Ga:{if((n|0)<4096){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+4096;break Ga}Ha:{if((a|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];c=a;Ia:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Ja:{if(P(u)<2147483648){g=~~u;break Ja}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Ia}d=(c|0)>1;c=c-1|0;if(d){continue}break Ia}break}if((a|0)==(c|0)){break Ha}}if((m|0)<=0){break Fa}l=H[s+8>>2];continue}}if(n>>>0<4097){break Ga}while(1)continue}qa(l);break Ba}if(!l){break Ca}}qa(l)}if((a|0)<0){break Ba}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break Ba}h=0;o=0;Ka:{if((a|0)<0){break Ka}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break Ka}a=h<<3;c=H[a+g>>2];if(!c){break Ka}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*.000244140625)+o}o=U(-o);La:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break La}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;f=a>>>0<39?f+1|0:f;a=c+((f&7)<<29|a>>>3)|0;j=f>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Cb(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break wa}i=1;break t;case 3:c=0;h=0;l=0;q=0;g=da+-64|0;da=g;H[g+56>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;Ma:{d=m+1|0;if(d>>>0>=m>>>0){if(d>>>0>=536870912){break a}d=d<<3;c=ra(d);H[g+48>>2]=c;h=c+d|0;H[g+56>>2]=h;ta(c,0,(m<<3)+8|0);H[g+52>>2]=h}Na:{if((b|0)<=0){break Na}m=0;if(b-1>>>0>=3){p=b&-4;while(1){d=m<<2;j=(H[d+a>>2]<<3)+c|0;f=H[j+4>>2];k=H[j>>2]+1|0;f=k?f:f+1|0;H[j>>2]=k;H[j+4>>2]=f;j=(H[(d|4)+a>>2]<<3)+c|0;f=H[j+4>>2];k=H[j>>2]+1|0;f=k?f:f+1|0;H[j>>2]=k;H[j+4>>2]=f;f=(H[(d|8)+a>>2]<<3)+c|0;k=H[f+4>>2];j=H[f>>2]+1|0;k=j?k:k+1|0;H[f>>2]=j;H[f+4>>2]=k;d=(H[(d|12)+a>>2]<<3)+c|0;f=H[d+4>>2];j=H[d>>2]+1|0;f=j?f:f+1|0;H[d>>2]=j;H[d+4>>2]=f;m=m+4|0;l=l+4|0;if((p|0)!=(l|0)){continue}break}}j=b&3;if(!j){break Na}while(1){d=(H[(m<<2)+a>>2]<<3)+c|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;m=m+1|0;q=q+1|0;if((j|0)!=(q|0)){continue}break}}H[g+8>>2]=0;H[g+12>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;H[g+32>>2]=0;H[g>>2]=0;H[g+4>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;Sf(g,c,h-c>>3,e);f=H[g+16>>2];c=H[g+20>>2];d=H[e+4>>2]-H[e>>2]|0;H[g+40>>2]=d;H[g+44>>2]=0;j=f;f=c<<1|f>>>31;c=(j<<1)+39|0;k=c>>>0<39?f+1|0:f;c=d+((k&7)<<29|c>>>3)|0;f=k>>>3|0;f=c>>>0>>0?f+1|0:f;c=c+8|0;Pa(e,c);c=H[e>>2];H[g+28>>2]=0;H[g+32>>2]=16384;H[g+24>>2]=c+H[g+40>>2];if((b|0)>0){m=16384;while(1){c=b-1|0;f=H[g>>2]+(H[(c<<2)+a>>2]<<3)|0;d=H[f>>2];j=d<<10;if(j>>>0<=m>>>0){while(1){k=H[g+28>>2];H[g+28>>2]=k+1;F[k+H[g+24>>2]|0]=m;m=H[g+32>>2]>>>8|0;H[g+32>>2]=m;if(j>>>0<=m>>>0){continue}break}}k=H[f+4>>2];f=(m>>>0)/(d>>>0)|0;m=k+((f<<12)+(m-N(d,f)|0)|0)|0;H[g+32>>2]=m;d=(b|0)>1;b=c;if(d){continue}break}}Cb(g,e);a=H[g>>2];if(a){H[g+4>>2]=a;qa(a)}a=H[g+48>>2];if(a){qa(a)}da=g- -64|0;break Ma}i=1;break t;case 4:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Oa:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}Pa:{if((b|0)<=0){break Pa}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Pa}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;Qa:{if((d|0)<=0){break Qa}n=d&3;Ra:{if(d-1>>>0<3){h=0;break Ra}B=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|p?l:!(z|k)?x:h;l=f;x=p;p=g+z|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=x+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!n){break Qa}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;k=c+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;Sa:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break Sa}if(c>>>0<=d>>>0){break Sa}H[i+4>>2]=(d<<3)+f}l=0;n=0;Ta:{Ua:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*4096+.5;Va:{if(o<4294967296&o>=0){c=~~o>>>0;break Va}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==4096){break Ua}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;Wa:{if((a|0)<0){break Wa}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break Wa}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;Ad(l,f,s+24|0);Xa:{Ya:{if((n|0)<4096){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+4096;break Ya}Za:{if((a|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];c=a;_a:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));$a:{if(P(u)<2147483648){g=~~u;break $a}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break _a}d=(c|0)>1;c=c-1|0;if(d){continue}break _a}break}if((a|0)==(c|0)){break Za}}if((m|0)<=0){break Xa}l=H[s+8>>2];continue}}if(n>>>0<4097){break Ya}while(1)continue}qa(l);break Ta}if(!l){break Ua}}qa(l)}if((a|0)<0){break Ta}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break Ta}h=0;o=0;ab:{if((a|0)<0){break ab}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break ab}a=h<<3;c=H[a+g>>2];if(!c){break ab}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*.000244140625)+o}o=U(-o);bb:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break bb}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Cb(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Oa}i=1;break t;case 5:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;cb:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}db:{if((b|0)<=0){break db}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|8)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break db}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;eb:{if((d|0)<=0){break eb}l=d&3;fb:{if(d-1>>>0<3){h=0;break fb}B=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|n?p:!(z|k)?x:h;p=j;j=f;f=d;d=g+z|0;r=k+r|0;d=r>>>0>>0?d+1|0:d;k=r;g=k+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;j=f+j|0;j=d>>>0>>0?j+1|0:j;g=d;d=d+v|0;f=j+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!l){break eb}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;p=c+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;gb:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break gb}if(c>>>0<=d>>>0){break gb}H[i+4>>2]=(d<<3)+f}l=0;n=0;hb:{ib:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*4096+.5;jb:{if(o<4294967296&o>=0){c=~~o>>>0;break jb}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==4096){break ib}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;kb:{if((a|0)<0){break kb}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break kb}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;zd(l,f,s+24|0);lb:{mb:{if((n|0)<4096){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+4096;break mb}nb:{if((a|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];c=a;ob:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));pb:{if(P(u)<2147483648){g=~~u;break pb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break ob}d=(c|0)>1;c=c-1|0;if(d){continue}break ob}break}if((a|0)==(c|0)){break nb}}if((m|0)<=0){break lb}l=H[s+8>>2];continue}}if(n>>>0<4097){break mb}while(1)continue}qa(l);break hb}if(!l){break ib}}qa(l)}if((a|0)<0){break hb}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break hb}h=0;o=0;qb:{if((a|0)<0){break qb}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break qb}a=h<<3;c=H[a+g>>2];if(!c){break qb}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*.000244140625)+o}o=U(-o);rb:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break rb}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;j=a<<1|d>>>31;a=(d<<1)+39|0;d=j;d=a>>>0<39?d+1|0:d;f=d>>>3|0;a=c+((d&7)<<29|a>>>3)|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Cb(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break cb}i=1;break t;case 6:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;sb:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}tb:{if((b|0)<=0){break tb}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}f=b&3;if(!f){break tb}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;l=l+1|0;if((f|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;ub:{if((d|0)<=0){break ub}l=d&3;vb:{if(d-1>>>0<3){h=0;break vb}B=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|n?p:!(z|k)?x:h;p=j;j=k;r=j+r|0;k=g+z|0;k=j>>>0>r>>>0?k+1|0:k;g=r+n|0;j=d+k|0;j=g>>>0>>0?j+1|0:j;d=g+w|0;f=f+j|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;f=f+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!l){break ub}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;f=d+r|0;d=c+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;wb:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break wb}if(c>>>0<=d>>>0){break wb}H[i+4>>2]=(d<<3)+f}l=0;n=0;xb:{yb:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*4096+.5;zb:{if(o<4294967296&o>=0){c=~~o>>>0;break zb}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==4096){break yb}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;Ab:{if((a|0)<0){break Ab}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break Ab}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;yd(l,f,s+24|0);Bb:{Cb:{if((n|0)<4096){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+4096;break Cb}Db:{if((a|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];c=a;Eb:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Fb:{if(P(u)<2147483648){g=~~u;break Fb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Eb}d=(c|0)>1;c=c-1|0;if(d){continue}break Eb}break}if((a|0)==(c|0)){break Db}}if((m|0)<=0){break Bb}l=H[s+8>>2];continue}}if(n>>>0<4097){break Cb}while(1)continue}qa(l);break xb}if(!l){break yb}}qa(l)}if((a|0)<0){break xb}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break xb}h=0;o=0;Gb:{if((a|0)<0){break Gb}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.000244140625)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break Gb}a=h<<3;c=H[a+g>>2];if(!c){break Gb}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*.000244140625)+o}o=U(-o);Hb:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Hb}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;f=k>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Cb(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break sb}i=1;break t;case 7:t=a;i=0;q=0;n=0;r=0;g=0;l=0;h=da+-64|0;da=h;H[h+56>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;Ib:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[h+48>>2]=q;i=a+q|0;H[h+56>>2]=i;ta(q,0,(m<<3)+8|0);H[h+52>>2]=i}Jb:{if((b|0)<=0){break Jb}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Jb}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[h+8>>2]=0;H[h+12>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h>>2]=0;H[h+4>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=i-q>>3;Kb:{if((d|0)<=0){break Kb}n=d&3;Lb:{if(d-1>>>0<3){i=0;break Lb}B=d&-4;i=0;while(1){l=i|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=i|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=i|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(i<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|p?l:!(z|k)?x:i;l=f;x=p;p=g+z|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=x+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;i=i+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!n){break Kb}while(1){f=a;a=(i<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:i;i=i+1|0;k=c+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}d=a+1|0;H[h+12>>2]=d;f=H[h>>2];c=H[h+4>>2]-f>>3;Mb:{if(c>>>0>>0){_a(h,d-c|0);f=H[h>>2];break Mb}if(c>>>0<=d>>>0){break Mb}H[h+4>>2]=(d<<3)+f}l=0;n=0;Nb:{Ob:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;i=0;while(1){g=i<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*8192+.5;Pb:{if(o<4294967296&o>=0){c=~~o>>>0;break Pb}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(i|0);i=i+1|0;if(!c){continue}break}if((n|0)==8192){break Ob}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}i=0;Qb:{if((a|0)<0){break Qb}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(i<<2)+l>>2]=i;g=i|1;H[(g<<2)+l>>2]=g;g=i|2;H[(g<<2)+l>>2]=g;g=i|3;H[(g<<2)+l>>2]=g;g=i|4;H[(g<<2)+l>>2]=g;g=i|5;H[(g<<2)+l>>2]=g;g=i|6;H[(g<<2)+l>>2]=g;g=i|7;H[(g<<2)+l>>2]=g;i=i+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break Qb}m=0;while(1){H[(i<<2)+l>>2]=i;i=i+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=h;xd(l,f,s+24|0);Rb:{Sb:{if((n|0)<8192){c=H[h>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)- -8192;break Sb}Tb:{if((a|0)>0){m=n+-8192|0;while(1){o=8192/+(n|0);j=H[h>>2];c=a;Ub:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Vb:{if(P(u)<2147483648){g=~~u;break Vb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==8192){n=8192;break Ub}d=(c|0)>1;c=c-1|0;if(d){continue}break Ub}break}if((a|0)==(c|0)){break Tb}}if((m|0)<=0){break Rb}l=H[s+8>>2];continue}}if(n>>>0<8193){break Sb}while(1)continue}qa(l);break Nb}if(!l){break Ob}}qa(l)}if((a|0)<0){break Nb}c=H[h>>2];d=a+1|0;f=d&3;n=0;m=0;i=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=i;p=c+(g|8)|0;k=H[k>>2]+i|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;i=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=i;m=m+1|0;i=H[g>>2]+i|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((i|0)!=8192){break Nb}i=0;o=0;Wb:{if((a|0)<0){break Wb}g=H[h>>2];if(a){a=d&-2;c=0;while(1){f=i<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.0001220703125)+o}f=(i|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*.0001220703125)+o}i=i+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break Wb}a=i<<3;c=H[a+g>>2];if(!c){break Wb}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*.0001220703125)+o}o=U(-o);Xb:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Xb}c=0;a=0}H[h+16>>2]=a;H[h+20>>2]=c;Za(h,e)}da=s+32|0;d=H[h+16>>2];a=H[h+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[h+40>>2]=c;H[h+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Pa(e,a);a=H[e>>2];H[h+28>>2]=0;H[h+32>>2]=32768;H[h+24>>2]=a+H[h+40>>2];if((b|0)>0){a=32768;while(1){c=b-1|0;g=H[h>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[h+28>>2];H[h+28>>2]=j+1;F[j+H[h+24>>2]|0]=a;a=H[h+32>>2]>>>8|0;H[h+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<13)+(a-N(d,g)|0)|0)|0;H[h+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[h+40>>2]|0;d=H[h+32>>2];b=d-32768|0;Yb:{if(b>>>0<=63){F[H[h+24>>2]+H[h+28>>2]|0]=b;b=H[h+28>>2]+1|0;break Yb}if(b>>>0<=16383){b=H[h+24>>2]+H[h+28>>2]|0;d=d-16384|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[h+28>>2]+2|0;break Yb}if(b>>>0<=4194303){b=H[h+24>>2]+H[h+28>>2]|0;d=d+8355840|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[h+28>>2]+3|0;break Yb}if(b>>>0<=1073741823){b=H[h+24>>2]+H[h+28>>2]|0;d=d-1073774592|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[h+28>>2]+4|0;break Yb}b=H[h+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;Bb(b,f,a);d=H[a+4>>2]-H[a>>2]|0;Ia(d+c|0,c,b);sa(c,H[a>>2],d);g=H[h+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[h+40>>2]|0;Pa(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=a+32|0;a=H[h>>2];if(a){H[h+4>>2]=a;qa(a)}a=H[h+48>>2];if(a){qa(a)}da=h- -64|0;break Ib}i=1;break t;case 8:t=a;i=0;q=0;n=0;r=0;g=0;l=0;h=da+-64|0;da=h;H[h+56>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;Zb:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[h+48>>2]=q;i=a+q|0;H[h+56>>2]=i;ta(q,0,(m<<3)+8|0);H[h+52>>2]=i}_b:{if((b|0)<=0){break _b}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break _b}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[h+8>>2]=0;H[h+12>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h>>2]=0;H[h+4>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=i-q>>3;$b:{if((d|0)<=0){break $b}l=d&3;ac:{if(d-1>>>0<3){i=0;break ac}z=d&-4;i=0;while(1){B=i|1;f=(B<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=i|2;j=(A<<3)+q|0;f=H[j+4>>2];n=H[j>>2];y=i|3;k=(y<<3)+q|0;j=H[k+4>>2];w=H[k>>2];x=a;a=(i<<3)+q|0;v=H[a+4>>2];k=H[a>>2];a=j|w?y:f|n?A:d|p?B:!(v|k)?x:i;x=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=x+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;i=i+4|0;c=c+4|0;if((z|0)!=(c|0)){continue}break}}if(!l){break $b}while(1){f=a;a=(i<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:i;i=i+1|0;j=c+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[h+12>>2]=d;f=H[h>>2];c=H[h+4>>2]-f>>3;bc:{if(c>>>0>>0){_a(h,d-c|0);f=H[h>>2];break bc}if(c>>>0<=d>>>0){break bc}H[h+4>>2]=(d<<3)+f}l=0;n=0;cc:{dc:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;i=0;while(1){g=i<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*32768+.5;ec:{if(o<4294967296&o>=0){c=~~o>>>0;break ec}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(i|0);i=i+1|0;if(!c){continue}break}if((n|0)==32768){break dc}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}i=0;fc:{if((a|0)<0){break fc}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(i<<2)+l>>2]=i;g=i|1;H[(g<<2)+l>>2]=g;g=i|2;H[(g<<2)+l>>2]=g;g=i|3;H[(g<<2)+l>>2]=g;g=i|4;H[(g<<2)+l>>2]=g;g=i|5;H[(g<<2)+l>>2]=g;g=i|6;H[(g<<2)+l>>2]=g;g=i|7;H[(g<<2)+l>>2]=g;i=i+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break fc}m=0;while(1){H[(i<<2)+l>>2]=i;i=i+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=h;wd(l,f,s+24|0);gc:{hc:{if((n|0)<32768){c=H[h>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+32768;break hc}ic:{if((a|0)>0){m=n-32768|0;while(1){o=32768/+(n|0);j=H[h>>2];c=a;jc:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));kc:{if(P(u)<2147483648){g=~~u;break kc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==32768){n=32768;break jc}d=(c|0)>1;c=c-1|0;if(d){continue}break jc}break}if((a|0)==(c|0)){break ic}}if((m|0)<=0){break gc}l=H[s+8>>2];continue}}if(n>>>0<32769){break hc}while(1)continue}qa(l);break cc}if(!l){break dc}}qa(l)}if((a|0)<0){break cc}c=H[h>>2];d=a+1|0;f=d&3;n=0;m=0;i=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=i;p=c+(g|8)|0;k=H[k>>2]+i|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;i=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=i;m=m+1|0;i=H[g>>2]+i|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((i|0)!=32768){break cc}i=0;o=0;lc:{if((a|0)<0){break lc}g=H[h>>2];if(a){a=d&-2;c=0;while(1){f=i<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*30517578125e-15)+o}f=(i|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*30517578125e-15)+o}i=i+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break lc}a=i<<3;c=H[a+g>>2];if(!c){break lc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*30517578125e-15)+o}o=U(-o);mc:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break mc}c=0;a=0}H[h+16>>2]=a;H[h+20>>2]=c;Za(h,e)}da=s+32|0;d=H[h+16>>2];a=H[h+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[h+40>>2]=c;H[h+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Pa(e,a);a=H[e>>2];H[h+28>>2]=0;H[h+32>>2]=131072;H[h+24>>2]=a+H[h+40>>2];if((b|0)>0){a=131072;while(1){c=b-1|0;g=H[h>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[h+28>>2];H[h+28>>2]=j+1;F[j+H[h+24>>2]|0]=a;a=H[h+32>>2]>>>8|0;H[h+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<15)+(a-N(d,g)|0)|0)|0;H[h+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[h+40>>2]|0;d=H[h+32>>2];b=d-131072|0;nc:{if(b>>>0<=63){F[H[h+24>>2]+H[h+28>>2]|0]=b;b=H[h+28>>2]+1|0;break nc}if(b>>>0<=16383){b=H[h+24>>2]+H[h+28>>2]|0;d=d-114688|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[h+28>>2]+2|0;break nc}if(b>>>0<=4194303){b=H[h+24>>2]+H[h+28>>2]|0;d=d+8257536|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[h+28>>2]+3|0;break nc}if(b>>>0<=1073741823){b=H[h+24>>2]+H[h+28>>2]|0;d=d-1073872896|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[h+28>>2]+4|0;break nc}b=H[h+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;Bb(b,f,a);d=H[a+4>>2]-H[a>>2]|0;Ia(d+c|0,c,b);sa(c,H[a>>2],d);g=H[h+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[h+40>>2]|0;Pa(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=a+32|0;a=H[h>>2];if(a){H[h+4>>2]=a;qa(a)}a=H[h+48>>2];if(a){qa(a)}da=h- -64|0;break Zb}i=1;break t;case 9:t=a;i=0;q=0;n=0;r=0;g=0;l=0;h=da+-64|0;da=h;H[h+56>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;oc:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[h+48>>2]=q;i=a+q|0;H[h+56>>2]=i;ta(q,0,(m<<3)+8|0);H[h+52>>2]=i}pc:{if((b|0)<=0){break pc}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|4)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;k=H[c+4>>2];d=H[c>>2]+1|0;k=d?k:k+1|0;H[c>>2]=d;H[c+4>>2]=k;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break pc}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;f=H[c+4>>2];j=H[c>>2]+1|0;f=j?f:f+1|0;H[c>>2]=j;H[c+4>>2]=f;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[h+8>>2]=0;H[h+12>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h>>2]=0;H[h+4>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=i-q>>3;qc:{if((d|0)<=0){break qc}l=d&3;rc:{if(d-1>>>0<3){i=0;break rc}z=d&-4;i=0;while(1){B=i|1;f=(B<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=i|2;j=(A<<3)+q|0;f=H[j+4>>2];n=H[j>>2];y=i|3;k=(y<<3)+q|0;j=H[k+4>>2];w=H[k>>2];x=a;a=(i<<3)+q|0;v=H[a+4>>2];k=H[a>>2];a=j|w?y:f|n?A:d|p?B:!(v|k)?x:i;x=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;g=x+r|0;k=d+p|0;k=g>>>0>>0?k+1|0:k;d=g+n|0;f=f+k|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+w|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;i=i+4|0;c=c+4|0;if((z|0)!=(c|0)){continue}break}}if(!l){break qc}while(1){f=a;a=(i<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:i;i=i+1|0;f=c+g|0;d=d+r|0;f=d>>>0>>0?f+1|0:f;r=d;g=f;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[h+12>>2]=d;f=H[h>>2];c=H[h+4>>2]-f>>3;sc:{if(c>>>0>>0){_a(h,d-c|0);f=H[h>>2];break sc}if(c>>>0<=d>>>0){break sc}H[h+4>>2]=(d<<3)+f}l=0;n=0;tc:{uc:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;i=0;while(1){g=i<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*65536+.5;vc:{if(o<4294967296&o>=0){c=~~o>>>0;break vc}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(i|0);i=i+1|0;if(!c){continue}break}if((n|0)==65536){break uc}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}i=0;wc:{if((a|0)<0){break wc}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(i<<2)+l>>2]=i;g=i|1;H[(g<<2)+l>>2]=g;g=i|2;H[(g<<2)+l>>2]=g;g=i|3;H[(g<<2)+l>>2]=g;g=i|4;H[(g<<2)+l>>2]=g;g=i|5;H[(g<<2)+l>>2]=g;g=i|6;H[(g<<2)+l>>2]=g;g=i|7;H[(g<<2)+l>>2]=g;i=i+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break wc}m=0;while(1){H[(i<<2)+l>>2]=i;i=i+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=h;vd(l,f,s+24|0);xc:{yc:{if((n|0)<65536){c=H[h>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+65536;break yc}zc:{if((a|0)>0){m=n-65536|0;while(1){o=65536/+(n|0);j=H[h>>2];c=a;Ac:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Bc:{if(P(u)<2147483648){g=~~u;break Bc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==65536){n=65536;break Ac}d=(c|0)>1;c=c-1|0;if(d){continue}break Ac}break}if((a|0)==(c|0)){break zc}}if((m|0)<=0){break xc}l=H[s+8>>2];continue}}if(n>>>0<65537){break yc}while(1)continue}qa(l);break tc}if(!l){break uc}}qa(l)}if((a|0)<0){break tc}c=H[h>>2];d=a+1|0;f=d&3;n=0;m=0;i=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=i;p=c+(g|8)|0;k=H[k>>2]+i|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;i=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=i;m=m+1|0;i=H[g>>2]+i|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((i|0)!=65536){break tc}i=0;o=0;Cc:{if((a|0)<0){break Cc}g=H[h>>2];if(a){a=d&-2;c=0;while(1){f=i<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*152587890625e-16)+o}f=(i|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*152587890625e-16)+o}i=i+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break Cc}a=i<<3;c=H[a+g>>2];if(!c){break Cc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*152587890625e-16)+o}o=U(-o);Dc:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Dc}c=0;a=0}H[h+16>>2]=a;H[h+20>>2]=c;Za(h,e)}da=s+32|0;d=H[h+16>>2];a=H[h+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[h+40>>2]=c;H[h+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;d=p>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;Pa(e,a);a=H[e>>2];H[h+28>>2]=0;H[h+32>>2]=262144;H[h+24>>2]=a+H[h+40>>2];if((b|0)>0){a=262144;while(1){c=b-1|0;g=H[h>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[h+28>>2];H[h+28>>2]=j+1;F[j+H[h+24>>2]|0]=a;a=H[h+32>>2]>>>8|0;H[h+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<16)+(a-N(d,g)|0)|0)|0;H[h+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[h+40>>2]|0;d=H[h+32>>2];b=d-262144|0;Ec:{if(b>>>0<=63){F[H[h+24>>2]+H[h+28>>2]|0]=b;b=H[h+28>>2]+1|0;break Ec}if(b>>>0<=16383){b=H[h+24>>2]+H[h+28>>2]|0;d=d-245760|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[h+28>>2]+2|0;break Ec}if(b>>>0<=4194303){b=H[h+24>>2]+H[h+28>>2]|0;d=d+8126464|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[h+28>>2]+3|0;break Ec}if(b>>>0<=1073741823){b=H[h+24>>2]+H[h+28>>2]|0;d=d-1074003968|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[h+28>>2]+4|0;break Ec}b=H[h+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;Bb(b,f,a);d=H[a+4>>2]-H[a>>2]|0;Ia(d+c|0,c,b);sa(c,H[a>>2],d);g=H[h+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[h+40>>2]|0;Pa(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=a+32|0;a=H[h>>2];if(a){H[h+4>>2]=a;qa(a)}a=H[h+48>>2];if(a){qa(a)}da=h- -64|0;break oc}i=1;break t;case 10:t=a;i=0;q=0;n=0;r=0;g=0;l=0;h=da+-64|0;da=h;H[h+56>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;Fc:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[h+48>>2]=q;i=a+q|0;H[h+56>>2]=i;ta(q,0,(m<<3)+8|0);H[h+52>>2]=i}Gc:{if((b|0)<=0){break Gc}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}f=b&3;if(!f){break Gc}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;l=l+1|0;if((f|0)!=(l|0)){continue}break}}H[h+8>>2]=0;H[h+12>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h>>2]=0;H[h+4>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=i-q>>3;Hc:{if((d|0)<=0){break Hc}n=d&3;Ic:{if(d-1>>>0<3){i=0;break Ic}B=d&-4;i=0;while(1){l=i|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=i|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=i|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(i<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|p?l:!(z|k)?x:i;l=j;x=p;p=g+z|0;j=k+r|0;p=j>>>0>>0?p+1|0:p;k=j;g=x+j|0;j=d+p|0;j=g>>>0>>0?j+1|0:j;d=g+w|0;f=f+j|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;k=f+l|0;r=d;g=d>>>0>>0?k+1|0:k;i=i+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!n){break Hc}while(1){f=a;a=(i<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:i;i=i+1|0;f=d+r|0;d=c+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}d=a+1|0;H[h+12>>2]=d;f=H[h>>2];c=H[h+4>>2]-f>>3;Jc:{if(c>>>0>>0){_a(h,d-c|0);f=H[h>>2];break Jc}if(c>>>0<=d>>>0){break Jc}H[h+4>>2]=(d<<3)+f}l=0;n=0;Kc:{Lc:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;i=0;while(1){g=i<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*262144+.5;Mc:{if(o<4294967296&o>=0){c=~~o>>>0;break Mc}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(i|0);i=i+1|0;if(!c){continue}break}if((n|0)==262144){break Lc}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}i=0;Nc:{if((a|0)<0){break Nc}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(i<<2)+l>>2]=i;g=i|1;H[(g<<2)+l>>2]=g;g=i|2;H[(g<<2)+l>>2]=g;g=i|3;H[(g<<2)+l>>2]=g;g=i|4;H[(g<<2)+l>>2]=g;g=i|5;H[(g<<2)+l>>2]=g;g=i|6;H[(g<<2)+l>>2]=g;g=i|7;H[(g<<2)+l>>2]=g;i=i+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break Nc}m=0;while(1){H[(i<<2)+l>>2]=i;i=i+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=h;ud(l,f,s+24|0);Oc:{Pc:{if((n|0)<262144){c=H[h>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+262144;break Pc}Qc:{if((a|0)>0){m=n-262144|0;while(1){o=262144/+(n|0);j=H[h>>2];c=a;Rc:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Sc:{if(P(u)<2147483648){g=~~u;break Sc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==262144){n=262144;break Rc}d=(c|0)>1;c=c-1|0;if(d){continue}break Rc}break}if((a|0)==(c|0)){break Qc}}if((m|0)<=0){break Oc}l=H[s+8>>2];continue}}if(n>>>0<262145){break Pc}while(1)continue}qa(l);break Kc}if(!l){break Lc}}qa(l)}if((a|0)<0){break Kc}c=H[h>>2];d=a+1|0;f=d&3;n=0;m=0;i=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=i;p=c+(g|8)|0;k=H[k>>2]+i|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;i=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=i;m=m+1|0;i=H[g>>2]+i|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((i|0)!=262144){break Kc}i=0;o=0;Tc:{if((a|0)<0){break Tc}g=H[h>>2];if(a){a=d&-2;c=0;while(1){f=i<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*3814697265625e-18)+o}f=(i|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*3814697265625e-18)+o}i=i+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break Tc}a=i<<3;c=H[a+g>>2];if(!c){break Tc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*3814697265625e-18)+o}o=U(-o);Uc:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Uc}c=0;a=0}H[h+16>>2]=a;H[h+20>>2]=c;Za(h,e)}da=s+32|0;d=H[h+16>>2];a=H[h+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[h+40>>2]=c;H[h+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;k=p>>>3|0;k=a>>>0>>0?k+1|0:k;a=a+8|0;Pa(e,a);a=H[e>>2];H[h+28>>2]=0;H[h+32>>2]=1048576;H[h+24>>2]=a+H[h+40>>2];if((b|0)>0){a=1048576;while(1){c=b-1|0;g=H[h>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[h+28>>2];H[h+28>>2]=j+1;F[j+H[h+24>>2]|0]=a;a=H[h+32>>2]>>>8|0;H[h+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<18)+(a-N(d,g)|0)|0)|0;H[h+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[h+40>>2]|0;d=H[h+32>>2];b=d+-1048576|0;Vc:{if(b>>>0<=63){F[H[h+24>>2]+H[h+28>>2]|0]=b;b=H[h+28>>2]+1|0;break Vc}if(b>>>0<=16383){b=H[h+24>>2]+H[h+28>>2]|0;d=d-1032192|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[h+28>>2]+2|0;break Vc}if(b>>>0<=4194303){b=H[h+24>>2]+H[h+28>>2]|0;d=d+7340032|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[h+28>>2]+3|0;break Vc}if(b>>>0<=1073741823){b=H[h+24>>2]+H[h+28>>2]|0;d=d-1074790400|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[h+28>>2]+4|0;break Vc}b=H[h+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;Bb(b,f,a);d=H[a+4>>2]-H[a>>2]|0;Ia(d+c|0,c,b);sa(c,H[a>>2],d);g=H[h+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[h+40>>2]|0;Pa(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=a+32|0;a=H[h>>2];if(a){H[h+4>>2]=a;qa(a)}a=H[h+48>>2];if(a){qa(a)}da=h- -64|0;break Fc}i=1;break t;case 11:t=a;i=0;q=0;n=0;r=0;g=0;l=0;h=da+-64|0;da=h;H[h+56>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;Wc:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[h+48>>2]=q;i=a+q|0;H[h+56>>2]=i;ta(q,0,(m<<3)+8|0);H[h+52>>2]=i}Xc:{if((b|0)<=0){break Xc}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Xc}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[h+8>>2]=0;H[h+12>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h>>2]=0;H[h+4>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=i-q>>3;Yc:{if((d|0)<=0){break Yc}n=d&3;Zc:{if(d-1>>>0<3){i=0;break Zc}B=d&-4;i=0;while(1){l=i|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=i|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=i|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(i<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|p?l:!(z|k)?x:i;l=f;x=p;p=g+z|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=x+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;i=i+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!n){break Yc}while(1){f=a;a=(i<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:i;i=i+1|0;k=c+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}d=a+1|0;H[h+12>>2]=d;f=H[h>>2];c=H[h+4>>2]-f>>3;_c:{if(c>>>0>>0){_a(h,d-c|0);f=H[h>>2];break _c}if(c>>>0<=d>>>0){break _c}H[h+4>>2]=(d<<3)+f}l=0;n=0;$c:{ad:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;i=0;while(1){g=i<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*524288+.5;bd:{if(o<4294967296&o>=0){c=~~o>>>0;break bd}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(i|0);i=i+1|0;if(!c){continue}break}if((n|0)==524288){break ad}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}i=0;cd:{if((a|0)<0){break cd}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(i<<2)+l>>2]=i;g=i|1;H[(g<<2)+l>>2]=g;g=i|2;H[(g<<2)+l>>2]=g;g=i|3;H[(g<<2)+l>>2]=g;g=i|4;H[(g<<2)+l>>2]=g;g=i|5;H[(g<<2)+l>>2]=g;g=i|6;H[(g<<2)+l>>2]=g;g=i|7;H[(g<<2)+l>>2]=g;i=i+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break cd}m=0;while(1){H[(i<<2)+l>>2]=i;i=i+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=h;td(l,f,s+24|0);dd:{ed:{if((n|0)<524288){c=H[h>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)+524288;break ed}fd:{if((a|0)>0){m=n-524288|0;while(1){o=524288/+(n|0);j=H[h>>2];c=a;gd:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));hd:{if(P(u)<2147483648){g=~~u;break hd}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==524288){n=524288;break gd}d=(c|0)>1;c=c-1|0;if(d){continue}break gd}break}if((a|0)==(c|0)){break fd}}if((m|0)<=0){break dd}l=H[s+8>>2];continue}}if(n>>>0<524289){break ed}while(1)continue}qa(l);break $c}if(!l){break ad}}qa(l)}if((a|0)<0){break $c}c=H[h>>2];d=a+1|0;f=d&3;n=0;m=0;i=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=i;p=c+(g|8)|0;k=H[k>>2]+i|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;i=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=i;m=m+1|0;i=H[g>>2]+i|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((i|0)!=524288){break $c}i=0;o=0;id:{if((a|0)<0){break id}g=H[h>>2];if(a){a=d&-2;c=0;while(1){f=i<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*19073486328125e-19)+o}f=(i|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*19073486328125e-19)+o}i=i+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break id}a=i<<3;c=H[a+g>>2];if(!c){break id}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*19073486328125e-19)+o}o=U(-o);jd:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break jd}c=0;a=0}H[h+16>>2]=a;H[h+20>>2]=c;Za(h,e)}da=s+32|0;d=H[h+16>>2];a=H[h+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[h+40>>2]=c;H[h+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Pa(e,a);a=H[e>>2];H[h+28>>2]=0;H[h+32>>2]=2097152;H[h+24>>2]=a+H[h+40>>2];if((b|0)>0){a=2097152;while(1){c=b-1|0;g=H[h>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[h+28>>2];H[h+28>>2]=j+1;F[j+H[h+24>>2]|0]=a;a=H[h+32>>2]>>>8|0;H[h+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<19)+(a-N(d,g)|0)|0)|0;H[h+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[h+40>>2]|0;d=H[h+32>>2];b=d-2097152|0;kd:{if(b>>>0<=63){F[H[h+24>>2]+H[h+28>>2]|0]=b;b=H[h+28>>2]+1|0;break kd}if(b>>>0<=16383){b=H[h+24>>2]+H[h+28>>2]|0;d=d-2080768|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[h+28>>2]+2|0;break kd}if(b>>>0<=4194303){b=H[h+24>>2]+H[h+28>>2]|0;d=d+6291456|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[h+28>>2]+3|0;break kd}if(b>>>0<=1073741823){b=H[h+24>>2]+H[h+28>>2]|0;d=d-1075838976|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[h+28>>2]+4|0;break kd}b=H[h+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;Bb(b,f,a);d=H[a+4>>2]-H[a>>2]|0;Ia(d+c|0,c,b);sa(c,H[a>>2],d);g=H[h+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[h+40>>2]|0;Pa(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=a+32|0;a=H[h>>2];if(a){H[h+4>>2]=a;qa(a)}a=H[h+48>>2];if(a){qa(a)}da=h- -64|0;break Wc}i=1;break t;case 12:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;ld:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}md:{if((b|0)<=0){break md}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break md}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;nd:{if((d|0)<=0){break nd}l=d&3;od:{if(d-1>>>0<3){h=0;break od}z=d&-4;h=0;while(1){B=h|1;f=(B<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];n=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];w=H[k>>2];x=a;a=(h<<3)+q|0;v=H[a+4>>2];k=H[a>>2];a=j|w?y:f|n?A:d|p?B:!(v|k)?x:h;x=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=x+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;c=c+4|0;if((z|0)!=(c|0)){continue}break}}if(!l){break nd}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;j=c+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;pd:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break pd}if(c>>>0<=d>>>0){break pd}H[i+4>>2]=(d<<3)+f}l=0;n=0;qd:{rd:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*1048576+.5;sd:{if(o<4294967296&o>=0){c=~~o>>>0;break sd}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==1048576){break rd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;td:{if((a|0)<0){break td}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break td}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;sd(l,f,s+24|0);ud:{vd:{if((n|0)<1048576){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)- -1048576;break vd}wd:{if((a|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];c=a;xd:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));yd:{if(P(u)<2147483648){g=~~u;break yd}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break xd}d=(c|0)>1;c=c-1|0;if(d){continue}break xd}break}if((a|0)==(c|0)){break wd}}if((m|0)<=0){break ud}l=H[s+8>>2];continue}}if(n>>>0<1048577){break vd}while(1)continue}qa(l);break qd}if(!l){break rd}}qa(l)}if((a|0)<0){break qd}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break qd}h=0;o=0;zd:{if((a|0)<0){break zd}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break zd}a=h<<3;c=H[a+g>>2];if(!c){break zd}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);Ad:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ad}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}_b(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break ld}i=1;break t;case 13:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Bd:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}Cd:{if((b|0)<=0){break Cd}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Cd}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;Dd:{if((d|0)<=0){break Dd}l=d&3;Ed:{if(d-1>>>0<3){h=0;break Ed}B=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|n?p:!(z|k)?x:h;p=f;f=k;r=f+r|0;k=g+z|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;f=f+p|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+v|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!l){break Dd}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;p=c+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;Fd:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break Fd}if(c>>>0<=d>>>0){break Fd}H[i+4>>2]=(d<<3)+f}l=0;n=0;Gd:{Hd:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*1048576+.5;Id:{if(o<4294967296&o>=0){c=~~o>>>0;break Id}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==1048576){break Hd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;Jd:{if((a|0)<0){break Jd}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break Jd}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;rd(l,f,s+24|0);Kd:{Ld:{if((n|0)<1048576){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)- -1048576;break Ld}Md:{if((a|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];c=a;Nd:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Od:{if(P(u)<2147483648){g=~~u;break Od}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break Nd}d=(c|0)>1;c=c-1|0;if(d){continue}break Nd}break}if((a|0)==(c|0)){break Md}}if((m|0)<=0){break Kd}l=H[s+8>>2];continue}}if(n>>>0<1048577){break Ld}while(1)continue}qa(l);break Gd}if(!l){break Hd}}qa(l)}if((a|0)<0){break Gd}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break Gd}h=0;o=0;Pd:{if((a|0)<0){break Pd}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break Pd}a=h<<3;c=H[a+g>>2];if(!c){break Pd}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);Qd:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Qd}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;d=k>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}_b(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Bd}i=1;break t;case 14:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Rd:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}Sd:{if((b|0)<=0){break Sd}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];j=H[d>>2]+1|0;f=j?f:f+1|0;H[d>>2]=j;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Sd}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;Td:{if((d|0)<=0){break Td}n=d&3;Ud:{if(d-1>>>0<3){h=0;break Ud}A=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];w=H[f>>2];l=h|2;j=(l<<3)+q|0;f=H[j+4>>2];v=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];z=H[k>>2];x=a;a=(h<<3)+q|0;B=H[a+4>>2];k=H[a>>2];a=j|z?y:f|v?l:d|w?p:!(B|k)?x:h;p=j;l=f;j=g+B|0;f=k+r|0;j=f>>>0>>0?j+1|0:j;k=f;g=f+w|0;f=d+j|0;f=g>>>0>>0?f+1|0:f;j=g;g=g+v|0;d=f+l|0;d=g>>>0>>0?d+1|0:d;j=g;g=g+z|0;f=d+p|0;r=g;g=g>>>0>>0?f+1|0:f;h=h+4|0;c=c+4|0;if((A|0)!=(c|0)){continue}break}}if(!n){break Td}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;k=c+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;Vd:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break Vd}if(c>>>0<=d>>>0){break Vd}H[i+4>>2]=(d<<3)+f}l=0;n=0;Wd:{Xd:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*1048576+.5;Yd:{if(o<4294967296&o>=0){c=~~o>>>0;break Yd}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==1048576){break Xd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;Zd:{if((a|0)<0){break Zd}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break Zd}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;qd(l,f,s+24|0);_d:{$d:{if((n|0)<1048576){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)- -1048576;break $d}ae:{if((a|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];c=a;be:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));ce:{if(P(u)<2147483648){g=~~u;break ce}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break be}d=(c|0)>1;c=c-1|0;if(d){continue}break be}break}if((a|0)==(c|0)){break ae}}if((m|0)<=0){break _d}l=H[s+8>>2];continue}}if(n>>>0<1048577){break $d}while(1)continue}qa(l);break Wd}if(!l){break Xd}}qa(l)}if((a|0)<0){break Wd}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break Wd}h=0;o=0;de:{if((a|0)<0){break de}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break de}a=h<<3;c=H[a+g>>2];if(!c){break de}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);ee:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break ee}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;g=d;d=a<<1|d>>>31;a=(g<<1)+39|0;j=a>>>0<39?d+1|0:d;f=j>>>3|0;a=c+((j&7)<<29|a>>>3)|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}_b(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Rd}i=1;break t;case 15:t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;fe:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}ge:{if((b|0)<=0){break ge}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break ge}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;he:{if((d|0)<=0){break he}l=d&3;ie:{if(d-1>>>0<3){h=0;break ie}z=d&-4;h=0;while(1){B=h|1;f=(B<<3)+q|0;d=H[f+4>>2];p=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];n=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];w=H[k>>2];x=a;a=(h<<3)+q|0;v=H[a+4>>2];k=H[a>>2];a=j|w?y:f|n?A:d|p?B:!(v|k)?x:h;x=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=x+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;c=c+4|0;if((z|0)!=(c|0)){continue}break}}if(!l){break he}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;j=c+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;je:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break je}if(c>>>0<=d>>>0){break je}H[i+4>>2]=(d<<3)+f}l=0;n=0;ke:{le:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*1048576+.5;me:{if(o<4294967296&o>=0){c=~~o>>>0;break me}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==1048576){break le}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;ne:{if((a|0)<0){break ne}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break ne}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;pd(l,f,s+24|0);oe:{pe:{if((n|0)<1048576){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)- -1048576;break pe}qe:{if((a|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];c=a;re:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));se:{if(P(u)<2147483648){g=~~u;break se}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break re}d=(c|0)>1;c=c-1|0;if(d){continue}break re}break}if((a|0)==(c|0)){break qe}}if((m|0)<=0){break oe}l=H[s+8>>2];continue}}if(n>>>0<1048577){break pe}while(1)continue}qa(l);break ke}if(!l){break le}}qa(l)}if((a|0)<0){break ke}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break ke}h=0;o=0;te:{if((a|0)<0){break te}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break te}a=h<<3;c=H[a+g>>2];if(!c){break te}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);ue:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break ue}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}_b(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break fe}i=1;break t;case 16:break B}}t=a;h=0;q=0;n=0;l=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;ve:{a=m+1|0;if(a>>>0>=m>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(m<<3)+8|0);H[i+52>>2]=h}we:{if((b|0)<=0){break we}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break we}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;a=0;c=0;s=da-32|0;da=s;d=h-q>>3;xe:{if((d|0)<=0){break xe}l=d&3;ye:{if(d-1>>>0<3){h=0;break ye}B=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];A=h|2;j=(A<<3)+q|0;f=H[j+4>>2];w=H[j>>2];y=h|3;k=(y<<3)+q|0;j=H[k+4>>2];v=H[k>>2];x=a;a=(h<<3)+q|0;z=H[a+4>>2];k=H[a>>2];a=j|v?y:f|w?A:d|n?p:!(z|k)?x:h;p=f;f=k;r=f+r|0;k=g+z|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+w|0;f=f+p|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+v|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;h=h+4|0;c=c+4|0;if((B|0)!=(c|0)){continue}break}}if(!l){break xe}while(1){f=a;a=(h<<3)+q|0;c=H[a+4>>2];d=H[a>>2];a=!(c|d)?f:h;h=h+1|0;p=c+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}d=a+1|0;H[i+12>>2]=d;f=H[i>>2];c=H[i+4>>2]-f>>3;ze:{if(c>>>0>>0){_a(i,d-c|0);f=H[i>>2];break ze}if(c>>>0<=d>>>0){break ze}H[i+4>>2]=(d<<3)+f}l=0;n=0;Ae:{Be:{if((a|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;c=H[j+4>>2];j=H[j>>2];k=(c|j)!=0;g=f+g|0;o=(+(j>>>0)+ +(c>>>0)*4294967296)/u*1048576+.5;Ce:{if(o<4294967296&o>=0){c=~~o>>>0;break Ce}c=0}c=c?c:k?1:c;H[g>>2]=c;n=c+n|0;c=(a|0)==(h|0);h=h+1|0;if(!c){continue}break}if((n|0)==1048576){break Be}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;f=0;if(d){if(d>>>0>=1073741824){break a}c=d<<2;l=ra(c);H[s+8>>2]=l;f=ta(l,0,c)+c|0}h=0;De:{if((a|0)<0){break De}d=a+1|0;c=d&7;if(a>>>0>=7){d=d&-8;m=0;while(1){H[(h<<2)+l>>2]=h;g=h|1;H[(g<<2)+l>>2]=g;g=h|2;H[(g<<2)+l>>2]=g;g=h|3;H[(g<<2)+l>>2]=g;g=h|4;H[(g<<2)+l>>2]=g;g=h|5;H[(g<<2)+l>>2]=g;g=h|6;H[(g<<2)+l>>2]=g;g=h|7;H[(g<<2)+l>>2]=g;h=h+8|0;m=m+8|0;if((d|0)!=(m|0)){continue}break}}if(!c){break De}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}H[s+24>>2]=i;od(l,f,s+24|0);Ee:{Fe:{if((n|0)<1048576){c=H[i>>2]+(H[f-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-n|0)- -1048576;break Fe}Ge:{if((a|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];c=a;He:{while(1){g=j+(H[(c<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Ie:{if(P(u)<2147483648){g=~~u;break Ie}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break He}d=(c|0)>1;c=c-1|0;if(d){continue}break He}break}if((a|0)==(c|0)){break Ge}}if((m|0)<=0){break Ee}l=H[s+8>>2];continue}}if(n>>>0<1048577){break Fe}while(1)continue}qa(l);break Ae}if(!l){break Be}}qa(l)}if((a|0)<0){break Ae}c=H[i>>2];d=a+1|0;f=d&3;n=0;m=0;h=0;if(a>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+c|0;H[k+4>>2]=h;p=c+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=c+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=c+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=c+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break Ae}h=0;o=0;Je:{if((a|0)<0){break Je}g=H[i>>2];if(a){a=d&-2;c=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*ya(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(d&1)){break Je}a=h<<3;c=H[a+g>>2];if(!c){break Je}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*ya(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);Ke:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ke}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Za(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;d=k>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;Pa(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}_b(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break ve}i=1}da=E+32|0}if(!D){break e}H[C+36>>2]=D;qa(D)}da=C+48|0;return i}H[C+32>>2]=D;wa(1604);X()}H[C+40>>2]=f;H[C+32>>2]=D;break a}wa(1604);X()}ua();X()}function Xg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,P=O(0),R=0,S=0,T=0,U=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,ea=0,fa=0;e=da-1696|0;da=e;d=10-fb(H[H[a+28>>2]+48>>2])|0;d=(d|0)<6?d:6;c=H[a+72>>2];F[e+1695|0]=(d&255)==6?(c|0)>15?5:d:d;d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){va(b,H[b+4>>2],e+1695|0,e+1696|0);c=H[a+72>>2]}f=H[a+28>>2];s=H[H[f+4>>2]+80>>2];H[e+1684>>2]=0;H[e+1676>>2]=0;H[e+1680>>2]=0;H[e+1664>>2]=s;H[e+1668>>2]=c;H[e+1672>>2]=c<<2;a:{t=N(c,s);if(t){if(t>>>0>=1073741824){break a}d=t<<2;i=ra(d);H[e+1676>>2]=i;g=d+i|0;H[e+1684>>2]=g;ta(i,0,d);H[e+1680>>2]=g}H[e+1688>>2]=i;d=H[a+4>>2];b:{if((d|0)!=H[a+8>>2]){t=0;while(1){c=H[H[H[f+4>>2]+8>>2]+(H[(j<<2)+d>>2]<<2)>>2];d=H[c+28>>2];if(d-1>>>0>=6){if((d|0)!=9){break b}c=H[H[a+60>>2]+(m<<2)>>2];if(!c){break b}m=m+1|0;d=H[c+28>>2]}c:{d:{switch(d-1|0){case 5:d=0;if(!s){break c}while(1){h=(H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],d)<<2)|0;i=H[H[c>>2]>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],I[c+84|0]?d:H[H[c+68>>2]+(d<<2)>>2],0)|0;sa(h,i+f|0,F[c+24|0]<<2);d=d+1|0;if((s|0)!=(d|0)){continue}break};break c;case 0:case 2:case 4:d=F[c+24|0];H[e+464>>2]=0;H[e+456>>2]=0;H[e+460>>2]=0;e:{if(!d){d=0;H[e+1648>>2]=0;break e}if((d|0)<0){break a}f=d<<2;i=ra(f);H[e+456>>2]=i;H[e+464>>2]=f+i;d=0;ta(i,0,f);f=F[c+24|0];H[e+1656>>2]=0;H[e+1648>>2]=0;H[e+1652>>2]=0;if(!f){break e}if((f|0)<0){break a}f=f<<2;d=ra(f);H[e+1648>>2]=d;ta(d,0,f)}f=0;if(s){while(1){o=H[e+456>>2];Kc(c,I[c+84|0]?f:H[H[c+68>>2]+(f<<2)>>2],F[c+24|0],o);i=H[e+1648>>2];g=F[c+24|0];f:{if((g|0)<=0){break f}h=H[a+48>>2];d=0;if((g|0)!=1){l=g&-2;q=0;while(1){x=d<<2;H[x+i>>2]=H[o+x>>2]-H[h+(d+t<<2)>>2];x=d|1;B=x<<2;H[B+i>>2]=H[o+B>>2]-H[h+(t+x<<2)>>2];d=d+2|0;q=q+2|0;if((l|0)!=(q|0)){continue}break}}if(!(g&1)){break f}l=d<<2;H[l+i>>2]=H[l+o>>2]-H[h+(d+t<<2)>>2]}sa((H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],f)<<2)|0,i,g<<2);f=f+1|0;if((s|0)!=(f|0)){continue}break}d=H[e+1648>>2]}f=F[c+24|0];if(d){qa(d)}d=H[e+456>>2];if(d){qa(d)}t=f+t|0;break c;default:break d}}i=F[c+24|0];d=0;H[e+464>>2]=0;H[e+456>>2]=0;H[e+460>>2]=0;f=0;if(i){if((i|0)<0){break a}i=i<<2;f=ra(i);H[e+456>>2]=f;ta(f,0,i)}if(s){while(1){f=I[c+84|0]?d:H[H[c+68>>2]+(d<<2)>>2];i=F[c+24|0];h=0;o=H[e+456>>2];g:{if(!o){break g}h:{i:{switch(H[c+28>>2]-1|0){case 0:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=F[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 1:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=I[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 2:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=G[f>>1];f=f+2|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 3:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=J[f>>1];f=f+2|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 4:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=H[f>>2];f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 5:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=H[f>>2];f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 6:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}g=H[f>>2];if(H[f+4>>2]){break g}H[o+(h<<2)>>2]=g;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 7:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}g=H[f>>2];if(H[f+4>>2]){break g}H[o+(h<<2)>>2]=g;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 8:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}x=o+(h<<2)|0;P=L[f>>2];j:{if(P=O(0)){k=~~P>>>0;break j}k=0}H[x>>2]=k;f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 9:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}x=o+(h<<2)|0;R=M[f>>3];k:{if(R<4294967296&R>=0){k=~~R>>>0;break k}k=0}H[x>>2]=k;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 10:break i;default:break g}}g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=I[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)>=(i|0)){break g}}ta(o+(g<<2)|0,0,i-g<<2)}sa((H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],d)<<2)|0,o,F[c+24|0]<<2);d=d+1|0;if((s|0)!=(d|0)){continue}break}f=H[e+456>>2]}if(!f){break c}qa(f)}j=j+1|0;d=H[a+4>>2];if(j>>>0>2]-d>>2>>>0){n=F[c+24|0]+n|0;f=H[a+28>>2];continue}break}c=H[a+72>>2];t=N(s,c);i=H[e+1688>>2]}d=0;l:{if((t|0)<=0){break l}a=t&1;m:{if((t|0)==1){f=0;break m}g=t&-2;f=0;t=0;while(1){o=f<<2;s=H[o+i>>2];if(s){s=Q(s);d=(s^31)<(d|0)?d:32-s|0}o=H[(o|4)+i>>2];if(o){o=Q(o);d=(o^31)<(d|0)?d:32-o|0}f=f+2|0;t=t+2|0;if((g|0)!=(t|0)){continue}break}}if(!a){break l}a=H[(f<<2)+i>>2];if(!a){break l}a=Q(a);d=(a^31)<(d|0)?d:32-a|0}n:{o:{switch(I[e+1695|0]){case 6:m=Ic(e+456|0,c);a=H[e+1668>>2];H[e+448>>2]=a;H[e+432>>2]=a;H[e+32>>2]=a;H[e+16>>2]=a;H[e+440>>2]=0;H[e+424>>2]=H[e+1664>>2];a=e+1664|0;H[e+444>>2]=a;c=H[e+444>>2];H[e+24>>2]=H[e+440>>2];H[e+28>>2]=c;H[e+428>>2]=a;H[e+1648>>2]=d;a=H[e+428>>2];H[e+8>>2]=H[e+424>>2];H[e+12>>2]=a;l=da-32|0;da=l;H[m>>2]=H[e+1648>>2];a=H[e+8>>2]-H[e+24>>2]|0;H[m+4>>2]=a;d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){a=m+4|0;va(b,H[b+4>>2],m,a);d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){va(b,H[b+4>>2],a,a+4|0)}a=H[a>>2]}if(a){U=m+12|0;Td(U);V=m+1068|0;a=V;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];W=m+1088|0;a=W;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];Y=m+1108|0;a=Y;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];H[l+24>>2]=H[e+32>>2];a=H[e+28>>2];H[l+16>>2]=H[e+24>>2];H[l+20>>2]=a;H[l+8>>2]=H[e+16>>2];a=H[e+12>>2];H[l>>2]=H[e+8>>2];H[l+4>>2]=a;d=0;h=0;j=da+-64|0;da=j;c=H[m+8>>2];H[j+48>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;if(c){if(c>>>0>=1073741824){break a}a=c<<2;d=ra(a);H[j+40>>2]=d;h=a+d|0;H[j+48>>2]=h;ta(d,0,a);H[j+44>>2]=h}a=H[m+1164>>2];f=H[a>>2];if(f){H[a+4>>2]=f;qa(f);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;c=H[m+8>>2];h=H[j+44>>2];d=H[j+40>>2]}H[a+4>>2]=h;H[a>>2]=d;H[a+8>>2]=H[j+48>>2];d=0;H[j+48>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;a=0;p:{if(c){if(c>>>0>=1073741824){break a}c=c<<2;a=ra(c);H[j+40>>2]=a;d=a+c|0;H[j+48>>2]=d;ta(a,0,c);H[j+44>>2]=d}c=H[m+1176>>2];f=H[c>>2];if(f){H[c+4>>2]=f;qa(f);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;d=H[j+44>>2];a=H[j+40>>2]}H[c+4>>2]=d;H[c>>2]=a;H[c+8>>2]=H[j+48>>2];g=H[l+4>>2];o=H[l+8>>2];t=H[l+20>>2];s=H[l+24>>2];d=H[l>>2];c=H[l+16>>2];H[j+56>>2]=0;H[j+60>>2]=0;H[j+48>>2]=0;H[j+52>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;kb(j+40|0);a=H[j+56>>2]+H[j+60>>2]|0;f=(a>>>0)/113|0;a=H[H[j+44>>2]+(f<<2)>>2]+N(a-N(f,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=d-c;H[a+24>>2]=0;H[a+12>>2]=d;H[a+4>>2]=t;H[a+8>>2]=s;H[a>>2]=c;H[a+16>>2]=g;H[a+20>>2]=o;a=H[j+60>>2];c=a+1|0;H[j+60>>2]=c;if(a>>>0<=c>>>0){_=m+1068|0;$=m+1108|0;B=t;x=s;aa=s&-4;Z=s&3;ba=s-1>>>0<3;while(1){n=H[j+44>>2];d=H[j+56>>2];h=c-1|0;a=d+h|0;f=(a>>>0)/113|0;a=H[n+(f<<2)>>2]+N(a-N(f,113)|0,36)|0;S=H[a+32>>2];i=H[a+12>>2];f=H[a>>2];H[j+60>>2]=h;a=H[j+48>>2];h=a-n|0;if(((h?N(h>>2,113)-1|0:0)-(c+d|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[j+48>>2]=H[j+48>>2]-4}H[l+16>>2]=f;H[l>>2]=i;a=H[m+1164>>2];d=H[m+1176>>2];H[j+32>>2]=H[l+24>>2];c=H[l+20>>2];H[j+24>>2]=H[l+16>>2];H[j+28>>2]=c;H[j+16>>2]=H[l+8>>2];c=H[l+4>>2];H[j+8>>2]=H[l>>2];H[j+12>>2]=c;T=N(S,12);u=a+T|0;c=u;D=d+T|0;a=D;n=0;q:{r:{s:{t:{p=H[j+8>>2];d=H[j+24>>2];v=p-d|0;if(v>>>0>=64){if(!H[m+8>>2]){d=0;break r}z=H[m+1140>>2];A=H[a>>2];E=H[m+1128>>2];if((d|0)!=(p|0)){break t}a=0;while(1){d=a<<2;c=d+E|0;H[c>>2]=0;h=d+z|0;d=H[m>>2]-H[d+A>>2]|0;H[h>>2]=d;if(d){d=H[c>>2];h=v-d|0;H[c>>2]=d>>>0>h>>>0?d:h}a=a+1|0;c=H[m+8>>2];if(a>>>0>>0){continue}break}break s}d=0;h=H[m+8>>2];if(h>>>0<2){break q}c=H[a>>2];a=h-1|0;n=a&3;q=0;u:{if(h-2>>>0<3){a=1;break u}p=a&-4;a=1;h=0;while(1){v=a+3|0;r=a+2|0;w=a+1|0;d=K[c+(d<<2)>>2]>K[c+(a<<2)>>2]?a:d;d=K[c+(d<<2)>>2]>K[c+(w<<2)>>2]?w:d;d=K[c+(d<<2)>>2]>K[c+(r<<2)>>2]?r:d;d=K[c+(d<<2)>>2]>K[c+(v<<2)>>2]?v:d;a=a+4|0;h=h+4|0;if((p|0)!=(h|0)){continue}break}}if(!n){break q}while(1){d=K[c+(d<<2)>>2]>K[c+(a<<2)>>2]?a:d;a=a+1|0;q=q+1|0;if((n|0)!=(q|0)){continue}break}break q}y=H[j+28>>2];C=H[c>>2];ca=v&1;h=d+1|0;ea=(p|0)!=(h|0);k=H[j+32>>2];fa=N(k,d)<<2;while(1){a=n<<2;q=a+E|0;H[q>>2]=0;c=H[m>>2]-H[a+A>>2]|0;H[a+z>>2]=c;if(c){r=H[a+C>>2]+(1<>2]|0;c=H[q>>2];if(ca){c=(r>>>0>K[w+fa>>2])+c|0;H[q>>2]=c;a=h}else{a=d}if(ea){while(1){c=(r>>>0>K[w+(N(a,k)<<2)>>2])+c|0;H[q>>2]=c;c=c+(r>>>0>K[w+(N(k,a+1|0)<<2)>>2])|0;H[q>>2]=c;a=a+2|0;if((p|0)!=(a|0)){continue}break}}a=v-c|0;H[q>>2]=a>>>0>>0?c:a}c=H[m+8>>2];n=n+1|0;if(c>>>0>n>>>0){continue}break}}if(!c){d=0;break r}n=H[m+1128>>2];q=H[m+1140>>2];v=c&1;v:{if((c|0)==1){a=0;c=0;d=0;break v}r=c&-2;a=0;c=0;d=0;h=0;while(1){p=a<<2;if(H[p+q>>2]){w=H[n+p>>2];p=w>>>0>c>>>0;c=p?w:c;d=p?a:d}w=a|1;p=w<<2;if(H[p+q>>2]){z=H[n+p>>2];p=z>>>0>c>>>0;c=p?z:c;d=p?w:d}a=a+2|0;h=h+2|0;if((r|0)!=(h|0)){continue}break}}if(!v){break r}h=a<<2;if(!H[h+q>>2]){break r}d=K[h+n>>2]>c>>>0?a:d}Mb(m+1088|0,4,d)}c=d;n=c<<2;d=H[m>>2]-H[n+H[D>>2]>>2]|0;w:{x:{if(!d){break x}y:{z:{v=i-f|0;if(v>>>0<=2){i=H[m+1152>>2];H[i>>2]=c;d=1;a=H[m+8>>2];if(a>>>0>1){break z}break y}a=H[m+1164>>2];E=S+1|0;w=N(E,12);h=a+w|0;if((h|0)!=(u|0)){eb(h,H[u>>2],H[u+4>>2]);a=H[m+1164>>2]}a=n+H[a+w>>2]|0;q=H[a>>2]+(1<>2]=q;a=f;A:{if((i|0)==(a|0)){break A}D=H[B+24>>2];d=f;a=i;if(!x){if(q>>>0>K[n+D>>2]){break A}while(1){a=a-1|0;if((d|0)==(a|0)){a=d;break A}if(q>>>0<=K[(n+H[g+24>>2]|0)+(N(a,o)<<2)>>2]){continue}d=d+1|0;if((d|0)!=(a|0)){continue}break}break A}while(1){u=D+(N(d,x)<<2)|0;if(q>>>0>K[u+n>>2]){d=d+1|0;if((d|0)!=(a|0)){continue}break A}while(1){a=a-1|0;if((d|0)==(a|0)){a=d;break A}p=H[g+24>>2]+(N(a,o)<<2)|0;if(q>>>0<=K[p+n>>2]){continue}break}z=0;h=0;A=0;if(!ba){while(1){r=h<<2;k=r+u|0;y=H[k>>2];C=k;k=p+r|0;H[C>>2]=H[k>>2];H[k>>2]=y;k=r|4;y=k+u|0;C=H[y>>2];k=p+k|0;H[y>>2]=H[k>>2];H[k>>2]=C;k=r|8;y=k+u|0;C=H[y>>2];k=p+k|0;H[y>>2]=H[k>>2];H[k>>2]=C;r=r|12;k=r+u|0;y=H[k>>2];r=p+r|0;H[k>>2]=H[r>>2];H[r>>2]=y;h=h+4|0;A=A+4|0;if((aa|0)!=(A|0)){continue}break}}if(Z){while(1){r=h<<2;A=r+u|0;k=H[A>>2];r=p+r|0;H[A>>2]=H[r>>2];H[r>>2]=k;h=h+1|0;z=z+1|0;if((Z|0)!=(z|0)){continue}break}}d=d+1|0;if((d|0)!=(a|0)){continue}break}}q=a-f|0;u=i-a|0;if((q|0)!=(u|0)){fc($,q>>>0>>0)}d=Q(v);p=d^31;h=v>>>1|0;B:{if(q>>>0>>0){if(!p){break B}v=h-q|0;d=1<<30-d;h=0;while(1){Ja((m+(h<<5)|0)+12|0,(d&v)!=0);d=d>>>1|0;h=h+1|0;if((p|0)!=(h|0)){continue}break}break B}if(!p){break B}v=h-u|0;d=1<<30-d;h=0;while(1){Ja((m+(h<<5)|0)+12|0,(d&v)!=0);d=d>>>1|0;h=h+1|0;if((p|0)!=(h|0)){continue}break}}k=n;d=H[m+1176>>2];h=d+T|0;n=H[h>>2];p=k+n|0;H[p>>2]=H[p>>2]+1;eb(d+w|0,n,H[h+4>>2]);if((a|0)!=(f|0)){d=H[j+60>>2]+H[j+56>>2]|0;h=H[j+44>>2];n=H[j+48>>2]-h|0;if((d|0)==((n?N(n>>2,113)-1|0:0)|0)){kb(j+40|0);h=H[j+44>>2];d=H[j+56>>2]+H[j+60>>2]|0}n=h;h=(d>>>0)/113|0;d=H[n+(h<<2)>>2]+N(d-N(h,113)|0,36)|0;H[d+32>>2]=S;H[d+28>>2]=q;H[d+24>>2]=c;H[d+12>>2]=a;H[d+4>>2]=t;H[d+8>>2]=s;H[d>>2]=f;H[d+20>>2]=x;H[d+16>>2]=B;H[j+60>>2]=H[j+60>>2]+1}if((a|0)==(i|0)){break x}d=H[j+60>>2]+H[j+56>>2]|0;h=H[j+44>>2];f=H[j+48>>2]-h|0;if((d|0)==((f?N(f>>2,113)-1|0:0)|0)){kb(j+40|0);h=H[j+44>>2];d=H[j+56>>2]+H[j+60>>2]|0}f=(d>>>0)/113|0;d=H[(f<<2)+h>>2]+N(d-N(f,113)|0,36)|0;H[d+32>>2]=E;H[d+28>>2]=u;H[d+24>>2]=c;H[d+12>>2]=i;H[d+8>>2]=x;H[d+4>>2]=B;H[d>>2]=a;H[d+16>>2]=g;H[d+20>>2]=o;c=H[j+60>>2]+1|0;H[j+60>>2]=c;break w}while(1){c=(a-1|0)==(c|0)?0:c+1|0;H[i+(d<<2)>>2]=c;a=H[m+8>>2];d=d+1|0;if(a>>>0>d>>>0){continue}break}}h=0;d=a;if(!v){break x}while(1){C:{if(!d){d=0;break C}i=H[B+24>>2]+(N(H[B+4>>2],f+h|0)<<2)|0;c=0;while(1){d=H[H[m+1152>>2]+(c<<2)>>2]<<2;n=H[m>>2]-H[d+H[D>>2]>>2]|0;if(n){Mb(_,n,H[d+i>>2]);a=H[m+8>>2]}d=a;c=c+1|0;if(a>>>0>c>>>0){continue}break}}h=h+1|0;if((v|0)!=(h|0)){continue}break}}c=H[j+60>>2]}if(c){continue}break}}H[j+60>>2]=0;f=H[j+48>>2];c=H[j+44>>2];a=f-c>>2;if(a>>>0>=3){while(1){qa(H[c>>2]);c=H[j+44>>2]+4|0;H[j+44>>2]=c;f=H[j+48>>2];a=f-c>>2;if(a>>>0>2){continue}break}}d=56;D:{switch(a-1|0){case 1:d=113;case 0:H[j+56>>2]=d;break;default:break D}}E:{if((c|0)==(f|0)){break E}while(1){qa(H[c>>2]);c=c+4|0;if((f|0)!=(c|0)){continue}break}a=H[j+48>>2];d=H[j+44>>2];if((a|0)==(d|0)){break E}H[j+48>>2]=a+(((a-d|0)-4>>>2^-1)<<2)}a=H[j+40>>2];if(a){qa(a)}da=j- -64|0;break p}Sd(U,b);ib(V,b);ib(W,b);ib(Y,b)}da=l+32|0;Jc(m);break n;case 5:c=Ic(e+456|0,c);a=H[e+1668>>2];H[e+416>>2]=a;H[e+400>>2]=a;H[e- -64>>2]=a;H[e+48>>2]=a;H[e+408>>2]=0;H[e+392>>2]=H[e+1664>>2];a=e+1664|0;H[e+412>>2]=a;f=H[e+412>>2];H[e+56>>2]=H[e+408>>2];H[e+60>>2]=f;H[e+396>>2]=a;H[e+1648>>2]=d;a=H[e+396>>2];H[e+40>>2]=H[e+392>>2];H[e+44>>2]=a;a=_d(c,e+56|0,e+40|0,e+1648|0,b);Jc(c);if(a){break n}break b;case 4:c=Ic(e+456|0,c);a=H[e+1668>>2];H[e+384>>2]=a;H[e+368>>2]=a;H[e+96>>2]=a;H[e+80>>2]=a;H[e+376>>2]=0;H[e+360>>2]=H[e+1664>>2];a=e+1664|0;H[e+380>>2]=a;f=H[e+380>>2];H[e+88>>2]=H[e+376>>2];H[e+92>>2]=f;H[e+364>>2]=a;H[e+1648>>2]=d;a=H[e+364>>2];H[e+72>>2]=H[e+360>>2];H[e+76>>2]=a;a=_d(c,e+88|0,e+72|0,e+1648|0,b);Jc(c);if(a){break n}break b;case 3:c=Zd(e+456|0,c);a=H[e+1668>>2];H[e+352>>2]=a;H[e+336>>2]=a;H[e+128>>2]=a;H[e+112>>2]=a;H[e+344>>2]=0;H[e+328>>2]=H[e+1664>>2];a=e+1664|0;H[e+348>>2]=a;f=H[e+348>>2];H[e+120>>2]=H[e+344>>2];H[e+124>>2]=f;H[e+332>>2]=a;H[e+1648>>2]=d;a=H[e+332>>2];H[e+104>>2]=H[e+328>>2];H[e+108>>2]=a;a=Yd(c,e+120|0,e+104|0,e+1648|0,b);Xd(c);if(a){break n}break b;case 2:c=Zd(e+456|0,c);a=H[e+1668>>2];H[e+320>>2]=a;H[e+304>>2]=a;H[e+160>>2]=a;H[e+144>>2]=a;H[e+312>>2]=0;H[e+296>>2]=H[e+1664>>2];a=e+1664|0;H[e+316>>2]=a;f=H[e+316>>2];H[e+152>>2]=H[e+312>>2];H[e+156>>2]=f;H[e+300>>2]=a;H[e+1648>>2]=d;a=H[e+300>>2];H[e+136>>2]=H[e+296>>2];H[e+140>>2]=a;a=Yd(c,e+152|0,e+136|0,e+1648|0,b);Xd(c);if(a){break n}break b;case 1:c=Wd(e+456|0,c);a=H[e+1668>>2];H[e+288>>2]=a;H[e+272>>2]=a;H[e+192>>2]=a;H[e+176>>2]=a;H[e+280>>2]=0;H[e+264>>2]=H[e+1664>>2];a=e+1664|0;H[e+284>>2]=a;f=H[e+284>>2];H[e+184>>2]=H[e+280>>2];H[e+188>>2]=f;H[e+268>>2]=a;H[e+1648>>2]=d;a=H[e+268>>2];H[e+168>>2]=H[e+264>>2];H[e+172>>2]=a;a=Vd(c,e+184|0,e+168|0,e+1648|0,b);Ud(c);if(a){break n}break b;case 0:break o;default:break b}}c=Wd(e+456|0,c);a=H[e+1668>>2];H[e+256>>2]=a;H[e+240>>2]=a;H[e+224>>2]=a;H[e+208>>2]=a;H[e+248>>2]=0;H[e+232>>2]=H[e+1664>>2];a=e+1664|0;H[e+252>>2]=a;f=H[e+252>>2];H[e+216>>2]=H[e+248>>2];H[e+220>>2]=f;H[e+236>>2]=a;H[e+1648>>2]=d;a=H[e+236>>2];H[e+200>>2]=H[e+232>>2];H[e+204>>2]=a;a=Vd(c,e+216|0,e+200|0,e+1648|0,b);Ud(c);if(!a){break b}}u=1}a=H[e+1676>>2];if(a){H[e+1680>>2]=a;qa(a)}da=e+1696|0;return u|0}ua();X()}function xe(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,G=0,J=0,L=0,M=0;y=da-160|0;da=y;H[y+60>>2]=b;H[y+20>>2]=b;H[y+24>>2]=-1;g=y+16|0;H[g+112>>2]=0;H[g+116>>2]=0;i=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=i;H[g+124>>2]=i>>31;H[g+104>>2]=H[g+8>>2];t=da-48|0;da=t;if(d>>>0<=2){a:{d=d<<2;x=H[d+15116>>2];E=H[d+15104>>2];while(1){d=H[g+4>>2];b:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break b}i=Sa(g)}if((i|0)==32|i-9>>>0<5){continue}break}p=1;c:{d:{switch(i-43|0){case 0:case 2:break d;default:break c}}p=(i|0)==45?-1:1;d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break c}i=Sa(g)}e:{f:{while(1){if(F[h+1266|0]==(i|32)){g:{if(h>>>0>6){break g}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break g}i=Sa(g)}h=h+1|0;if((h|0)!=8){continue}break f}break}if((h|0)!=3){if((h|0)==8){break f}if(h>>>0<4){break e}if((h|0)==8){break f}}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(h>>>0<4){break f}d=(d|0)<0;while(1){if(!d){H[g+4>>2]=H[g+4>>2]-1}h=h-1|0;if(h>>>0>3){continue}break}}l=da-16|0;da=l;m=(B(O(O(p|0)*O(Z))),v(2));d=m&2147483647;h:{if(d-8388608>>>0<=2130706431){s=d<<25;i=(d>>>7|0)+1065353216|0;break h}s=m<<25;i=m>>>7|2147418112;if(d>>>0>=2139095040){break h}s=0;i=0;if(!d){break h}j=d;d=Q(d);Wa(l,j,0,0,0,d+81|0);j=H[l>>2];k=H[l+4>>2];s=H[l+8>>2];i=H[l+12>>2]^65536|16265-d<<16}H[t>>2]=j;H[t+4>>2]=k;H[t+8>>2]=s;H[t+12>>2]=m&-2147483648|i;da=l+16|0;j=H[t+8>>2];k=H[t+12>>2];l=H[t>>2];m=H[t+4>>2];break a}i:{j:{k:{if(h){break k}h=0;while(1){if(F[h+1546|0]!=(i|32)){break k}l:{if(h>>>0>1){break l}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break l}i=Sa(g)}h=h+1|0;if((h|0)!=3){continue}break}break j}m:{switch(h|0){case 0:n:{if((i|0)!=48){break n}d=H[g+4>>2];o:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break o}d=Sa(g)}if((d&-33)==88){f=da-432|0;da=f;d=H[g+4>>2];p:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0];break p}h=Sa(g)}q:{r:{while(1){if((h|0)!=48){s:{if((h|0)!=46){break q}d=H[g+4>>2];if((d|0)==H[g+104>>2]){break s}H[g+4>>2]=d+1;h=I[d|0];break r}}else{d=H[g+4>>2];if((d|0)!=H[g+104>>2]){w=1;H[g+4>>2]=d+1;h=I[d|0]}else{w=1;h=Sa(g)}continue}break}h=Sa(g)}e=1;if((h|0)!=48){break q}while(1){d=s;s=d-1|0;u=u-!d|0;d=H[g+4>>2];t:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0];break t}h=Sa(g)}if((h|0)==48){continue}break}w=1}m=1073676288;u:{while(1){v:{d=h|32;w:{x:{i=h-48|0;if(i>>>0<10){break x}if((h|0)!=46&d-97>>>0>=6){break u}if((h|0)!=46){break x}if(e){break v}e=1;s=j;u=k;break w}d=(h|0)>57?d-87|0:i;y:{if((k|0)<=0&j>>>0<=7|(k|0)<0){o=d+(o<<4)|0;break y}if(!k&j>>>0<=28){db(f+48|0,d);Ka(f+32|0,C,D,l,m,0,0,0,1073414144);C=H[f+32>>2];D=H[f+36>>2];l=H[f+40>>2];m=H[f+44>>2];Ka(f+16|0,H[f+48>>2],H[f+52>>2],H[f+56>>2],H[f+60>>2],C,D,l,m);cb(f,H[f+16>>2],H[f+20>>2],H[f+24>>2],H[f+28>>2],n,r,z,A);z=H[f+8>>2];A=H[f+12>>2];n=H[f>>2];r=H[f+4>>2];break y}if(q|!d){break y}Ka(f+80|0,C,D,l,m,0,0,0,1073610752);cb(f- -64|0,H[f+80>>2],H[f+84>>2],H[f+88>>2],H[f+92>>2],n,r,z,A);z=H[f+72>>2];A=H[f+76>>2];q=1;n=H[f+64>>2];r=H[f+68>>2]}d=j+1|0;k=d?k:k+1|0;j=d;w=1}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0]}else{h=Sa(g)}continue}break}h=46}z:{if(!w){d=H[g+116>>2];if((d|0)>0|(d|0)>=0){A:{d=H[g+4>>2];H[g+4>>2]=d-1;H[g+4>>2]=d-2;if(!e){break A}H[g+4>>2]=d-3}}vb(f+96|0,+(p|0)*0);n=H[f+96>>2];r=H[f+100>>2];j=H[f+108>>2];d=H[f+104>>2];break z}if((k|0)<=0&j>>>0<=7|(k|0)<0){l=j;m=k;while(1){o=o<<4;d=l+1|0;m=d?m:m+1|0;l=d;if((d|0)!=8|m){continue}break}}B:{C:{D:{if((h&-33)==80){l=ye(g);d=ea;m=d;if(l|(d|0)!=-2147483648){break B}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){break D}break C}l=0;m=0;if(H[g+116>>2]<0){break B}}H[g+4>>2]=H[g+4>>2]-1}l=0;m=0}if(!o){vb(f+112|0,+(p|0)*0);n=H[f+112>>2];r=H[f+116>>2];j=H[f+124>>2];d=H[f+120>>2];break z}d=e?s:j;k=(e?u:k)<<2|d>>>30;d=l+(d<<2)|0;h=k+m|0;h=d>>>0>>0?h+1|0:h;j=d-32|0;k=h-(d>>>0<32)|0;d=k;if(j>>>0>0-x>>>0&(d|0)>=0|(d|0)>0){H[4736]=68;db(f+160|0,p);Ka(f+144|0,H[f+160>>2],H[f+164>>2],H[f+168>>2],H[f+172>>2],-1,-1,-1,2147418111);Ka(f+128|0,H[f+144>>2],H[f+148>>2],H[f+152>>2],H[f+156>>2],-1,-1,-1,2147418111);n=H[f+128>>2];r=H[f+132>>2];j=H[f+140>>2];d=H[f+136>>2];break z}d=x-226|0;i=d>>31;if((k|0)>=(i|0)&d>>>0<=j>>>0|(i|0)<(k|0)){if((o|0)>=0){while(1){cb(f+416|0,n,r,z,A,0,0,0,-1073807360);i=Uc(n,r,z,A,1073610752);d=(i|0)<0;cb(f+400|0,n,r,z,A,d?n:H[f+416>>2],d?r:H[f+420>>2],d?z:H[f+424>>2],d?A:H[f+428>>2]);d=j;j=d-1|0;k=k-!d|0;z=H[f+408>>2];A=H[f+412>>2];n=H[f+400>>2];r=H[f+404>>2];o=o<<1|(i|0)>=0;if((o|0)>=0){continue}break}}h=k-((x>>31)+(j>>>0>>0)|0)|0;d=(j-x|0)+32|0;h=d>>>0<32?h+1|0:h;i=d>>>0>>0&(h|0)<=0|(h|0)<0?(d|0)>0?d:0:E;E:{if((i|0)>=113){db(f+384|0,p);s=H[f+392>>2];u=H[f+396>>2];C=H[f+384>>2];D=H[f+388>>2];k=0;d=0;break E}vb(f+352|0,Lc(144-i|0));db(f+336|0,p);C=H[f+336>>2];D=H[f+340>>2];s=H[f+344>>2];u=H[f+348>>2];Ae(f+368|0,H[f+352>>2],H[f+356>>2],H[f+360>>2],H[f+364>>2],C,D,s,u);G=H[f+376>>2];J=H[f+380>>2];k=H[f+372>>2];d=H[f+368>>2]}i=!(o&1)&((Kb(n,r,z,A,0,0,0,0)|0)!=0&(i|0)<32);Ob(f+320|0,i+o|0);Ka(f+304|0,C,D,s,u,H[f+320>>2],H[f+324>>2],H[f+328>>2],H[f+332>>2]);h=d;cb(f+272|0,H[f+304>>2],H[f+308>>2],H[f+312>>2],H[f+316>>2],d,k,G,J);d=i;Ka(f+288|0,C,D,s,u,d?0:n,d?0:r,d?0:z,d?0:A);cb(f+256|0,H[f+288>>2],H[f+292>>2],H[f+296>>2],H[f+300>>2],H[f+272>>2],H[f+276>>2],H[f+280>>2],H[f+284>>2]);Tc(f+240|0,H[f+256>>2],H[f+260>>2],H[f+264>>2],H[f+268>>2],h,k,G,J);d=H[f+240>>2];i=H[f+244>>2];h=H[f+248>>2];k=H[f+252>>2];if(!Kb(d,i,h,k,0,0,0,0)){H[4736]=68}ze(f+224|0,d,i,h,k,j);n=H[f+224>>2];r=H[f+228>>2];j=H[f+236>>2];d=H[f+232>>2];break z}H[4736]=68;db(f+208|0,p);Ka(f+192|0,H[f+208>>2],H[f+212>>2],H[f+216>>2],H[f+220>>2],0,0,0,65536);Ka(f+176|0,H[f+192>>2],H[f+196>>2],H[f+200>>2],H[f+204>>2],0,0,0,65536);n=H[f+176>>2];r=H[f+180>>2];j=H[f+188>>2];d=H[f+184>>2]}H[t+16>>2]=n;H[t+20>>2]=r;H[t+24>>2]=d;H[t+28>>2]=j;da=f+432|0;j=H[t+24>>2];k=H[t+28>>2];l=H[t+16>>2];m=H[t+20>>2];break a}if(H[g+116>>2]<0){break n}H[g+4>>2]=H[g+4>>2]-1}f=p;h=0;p=0;e=da-8976|0;da=e;J=x+E|0;M=0-J|0;F:{G:{while(1){if((i|0)!=48){H:{if((i|0)!=46){break F}d=H[g+4>>2];if((d|0)==H[g+104>>2]){break H}H[g+4>>2]=d+1;i=I[d|0];break G}}else{d=H[g+4>>2];if((d|0)!=H[g+104>>2]){h=1;H[g+4>>2]=d+1;i=I[d|0]}else{h=1;i=Sa(g)}continue}break}i=Sa(g)}q=1;if((i|0)!=48){break F}while(1){d=j;j=d-1|0;k=k-!d|0;d=H[g+4>>2];I:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break I}i=Sa(g)}if((i|0)==48){continue}break}h=1}H[e+784>>2]=0;J:{K:{d=(i|0)==46;n=i-48|0;L:{M:{N:{if(!(!d&n>>>0>9)){while(1){O:{if(d&1){if(!q){j=l;k=m;q=1;break O}d=!h;break N}d=l+1|0;m=d?m:m+1|0;l=d;if((p|0)<=2044){G=(i|0)==48?G:l;d=(e+784|0)+(p<<2)|0;if(w){n=(N(H[d>>2],10)+i|0)-48|0}H[d>>2]=n;h=1;i=w+1|0;d=(i|0)==9;w=d?0:i;p=d+p|0;break O}if((i|0)==48){break O}H[e+8960>>2]=H[e+8960>>2]|1;G=18396}d=H[g+4>>2];P:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break P}i=Sa(g)}d=(i|0)==46;n=i-48|0;if(d|n>>>0<10){continue}break}}j=q?j:l;k=q?k:m;if(!(!h|(i&-33)!=69)){n=ye(g);d=ea;r=d;Q:{if(n|(d|0)!=-2147483648){break Q}n=0;r=0;if(H[g+116>>2]<0){break Q}H[g+4>>2]=H[g+4>>2]-1}if(!h){break L}k=k+r|0;d=j+n|0;k=d>>>0>>0?k+1|0:k;j=d;break K}d=!h;if((i|0)<0){break M}}if(H[g+116>>2]<0){break M}H[g+4>>2]=H[g+4>>2]-1}if(!d){break K}}H[4736]=28;l=0;m=0;H[g+112>>2]=0;H[g+116>>2]=0;d=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=d;H[g+124>>2]=d>>31;H[g+104>>2]=H[g+8>>2];j=0;d=0;break J}d=H[e+784>>2];if(!d){vb(e,+(f|0)*0);l=H[e>>2];m=H[e+4>>2];j=H[e+12>>2];d=H[e+8>>2];break J}if(!(l>>>0>9&(m|0)>=0|(m|0)>0|((j|0)!=(l|0)|(k|0)!=(m|0))|(d>>>E|0?(E|0)<=30:0))){db(e+48|0,f);Ob(e+32|0,d);Ka(e+16|0,H[e+48>>2],H[e+52>>2],H[e+56>>2],H[e+60>>2],H[e+32>>2],H[e+36>>2],H[e+40>>2],H[e+44>>2]);l=H[e+16>>2];m=H[e+20>>2];j=H[e+28>>2];d=H[e+24>>2];break J}if(j>>>0>(x|0)/-2>>>0&(k|0)>=0|(k|0)>0){H[4736]=68;db(e+96|0,f);Ka(e+80|0,H[e+96>>2],H[e+100>>2],H[e+104>>2],H[e+108>>2],-1,-1,-1,2147418111);Ka(e- -64|0,H[e+80>>2],H[e+84>>2],H[e+88>>2],H[e+92>>2],-1,-1,-1,2147418111);l=H[e+64>>2];m=H[e+68>>2];j=H[e+76>>2];d=H[e+72>>2];break J}d=x-226|0;i=j>>>0>>0;d=d>>31;if(i&(k|0)<=(d|0)|(d|0)>(k|0)){H[4736]=68;db(e+144|0,f);Ka(e+128|0,H[e+144>>2],H[e+148>>2],H[e+152>>2],H[e+156>>2],0,0,0,65536);Ka(e+112|0,H[e+128>>2],H[e+132>>2],H[e+136>>2],H[e+140>>2],0,0,0,65536);l=H[e+112>>2];m=H[e+116>>2];j=H[e+124>>2];d=H[e+120>>2];break J}if(w){if((w|0)<=8){d=(e+784|0)+(p<<2)|0;o=H[d>>2];while(1){o=N(o,10);w=w+1|0;if((w|0)!=9){continue}break}H[d>>2]=o}p=p+1|0}R:{q=j;if((G|0)>(j|0)|(G|0)>=9|(j|0)>17){break R}if((q|0)==9){db(e+192|0,f);Ob(e+176|0,H[e+784>>2]);Ka(e+160|0,H[e+192>>2],H[e+196>>2],H[e+200>>2],H[e+204>>2],H[e+176>>2],H[e+180>>2],H[e+184>>2],H[e+188>>2]);l=H[e+160>>2];m=H[e+164>>2];j=H[e+172>>2];d=H[e+168>>2];break J}if((q|0)<=8){db(e+272|0,f);Ob(e+256|0,H[e+784>>2]);Ka(e+240|0,H[e+272>>2],H[e+276>>2],H[e+280>>2],H[e+284>>2],H[e+256>>2],H[e+260>>2],H[e+264>>2],H[e+268>>2]);db(e+224|0,H[(0-q<<2)+15104>>2]);oe(e+208|0,H[e+240>>2],H[e+244>>2],H[e+248>>2],H[e+252>>2],H[e+224>>2],H[e+228>>2],H[e+232>>2],H[e+236>>2]);l=H[e+208>>2];m=H[e+212>>2];j=H[e+220>>2];d=H[e+216>>2];break J}d=(N(q,-3)+E|0)+27|0;j=H[e+784>>2];if(j>>>d|0?(d|0)<=30:0){break R}db(e+352|0,f);Ob(e+336|0,j);Ka(e+320|0,H[e+352>>2],H[e+356>>2],H[e+360>>2],H[e+364>>2],H[e+336>>2],H[e+340>>2],H[e+344>>2],H[e+348>>2]);db(e+304|0,H[(q<<2)+15032>>2]);Ka(e+288|0,H[e+320>>2],H[e+324>>2],H[e+328>>2],H[e+332>>2],H[e+304>>2],H[e+308>>2],H[e+312>>2],H[e+316>>2]);l=H[e+288>>2];m=H[e+292>>2];j=H[e+300>>2];d=H[e+296>>2];break J}while(1){i=p;p=i-1|0;if(!H[(e+784|0)+(p<<2)>>2]){continue}break}w=0;d=(q|0)%9|0;S:{if(!d){d=0;break S}j=(q|0)>=0?d:d+9|0;T:{if(!i){d=0;i=0;break T}h=H[(0-j<<2)+15104>>2];m=1e9/(h|0)|0;n=0;o=0;d=0;while(1){k=n;l=(e+784|0)+(o<<2)|0;p=H[l>>2];n=(p>>>0)/(h>>>0)|0;k=k+n|0;H[l>>2]=k;k=!k&(d|0)==(o|0);d=k?d+1&2047:d;q=k?q-9|0:q;n=N(m,p-N(h,n)|0);o=o+1|0;if((o|0)!=(i|0)){continue}break}if(!n){break T}H[(e+784|0)+(i<<2)>>2]=n;i=i+1|0}q=(q-j|0)+9|0}while(1){p=(e+784|0)+(d<<2)|0;U:{while(1){if(((q|0)!=36|K[p>>2]>=10384593)&(q|0)>=36){break U}h=i+2047|0;n=0;while(1){l=h&2047;g=(e+784|0)+(l<<2)|0;j=H[g>>2];m=j>>>3|0;k=j<<29;j=k+n|0;h=m;h=j>>>0>>0?h+1|0:h;k=h;if(!h&j>>>0<1000000001){n=0}else{h=j;n=Tk(h,k,1e9,0);j=h-Rk(n,ea,1e9,0)|0}H[g>>2]=j;i=(l|0)!=(i-1&2047)?i:(d|0)==(l|0)?i:j?i:l;h=l-1|0;if((d|0)!=(l|0)){continue}break}w=w-29|0;if(!n){continue}break}d=d-1&2047;if((i|0)==(d|0)){j=e+784|0;h=j+((i+2046&2047)<<2)|0;i=i-1&2047;H[h>>2]=H[h>>2]|H[j+(i<<2)>>2]}q=q+9|0;H[(e+784|0)+(d<<2)>>2]=n;continue}break}V:{W:while(1){j=i+1&2047;m=(e+784|0)+((i-1&2047)<<2)|0;while(1){k=(q|0)>45?9:1;X:{while(1){h=d;o=0;Y:{while(1){Z:{d=h+o&2047;if((d|0)==(i|0)){break Z}d=H[(e+784|0)+(d<<2)>>2];l=H[(o<<2)+15056>>2];if(d>>>0>>0){break Z}if(d>>>0>l>>>0){break Y}o=o+1|0;if((o|0)!=4){continue}}break}if((q|0)!=36){break Y}j=0;k=0;o=0;l=0;m=0;while(1){d=h+o&2047;if((d|0)==(i|0)){i=i+1&2047;H[(e+(i<<2)|0)+780>>2]=0}Ob(e+768|0,H[(e+784|0)+(d<<2)>>2]);Ka(e+752|0,j,k,l,m,0,0,1342177280,1075633366);cb(e+736|0,H[e+752>>2],H[e+756>>2],H[e+760>>2],H[e+764>>2],H[e+768>>2],H[e+772>>2],H[e+776>>2],H[e+780>>2]);l=H[e+744>>2];m=H[e+748>>2];j=H[e+736>>2];k=H[e+740>>2];o=o+1|0;if((o|0)!=4){continue}break}db(e+720|0,f);Ka(e+704|0,j,k,l,m,H[e+720>>2],H[e+724>>2],H[e+728>>2],H[e+732>>2]);l=H[e+712>>2];m=H[e+716>>2];j=0;k=0;n=H[e+704>>2];r=H[e+708>>2];g=w+113|0;p=g-x|0;q=(p|0)<(E|0);d=q?(p|0)>0?p:0:E;if((d|0)<=112){break X}break V}w=k+w|0;d=i;if((h|0)==(d|0)){continue}break}p=1e9>>>k|0;n=-1<>2];l=l+(o>>>k|0)|0;H[g>>2]=l;l=!l&(d|0)==(h|0);d=l?d+1&2047:d;q=l?q-9|0:q;o=N(p,n&o);h=h+1&2047;if((h|0)!=(i|0)){continue}break}if(!o){continue}if((d|0)!=(j|0)){H[(e+784|0)+(i<<2)>>2]=o;i=j;continue W}H[m>>2]=H[m>>2]|1;d=j;continue}break}break}vb(e+656|0,Lc(225-d|0));Ae(e+688|0,H[e+656>>2],H[e+660>>2],H[e+664>>2],H[e+668>>2],n,r,l,m);z=H[e+696>>2];A=H[e+700>>2];C=H[e+688>>2];D=H[e+692>>2];vb(e+640|0,Lc(113-d|0));ce(e+672|0,n,r,l,m,H[e+640>>2],H[e+644>>2],H[e+648>>2],H[e+652>>2]);j=H[e+672>>2];k=H[e+676>>2];s=H[e+680>>2];u=H[e+684>>2];Tc(e+624|0,n,r,l,m,j,k,s,u);cb(e+608|0,C,D,z,A,H[e+624>>2],H[e+628>>2],H[e+632>>2],H[e+636>>2]);l=H[e+616>>2];m=H[e+620>>2];n=H[e+608>>2];r=H[e+612>>2]}x=h+4&2047;_:{if((x|0)==(i|0)){break _}x=H[(e+784|0)+(x<<2)>>2];$:{if(x>>>0<=499999999){if(!x&(h+5&2047)==(i|0)){break $}vb(e+496|0,+(f|0)*.25);cb(e+480|0,j,k,s,u,H[e+496>>2],H[e+500>>2],H[e+504>>2],H[e+508>>2]);s=H[e+488>>2];u=H[e+492>>2];j=H[e+480>>2];k=H[e+484>>2];break $}if((x|0)!=5e8){vb(e+592|0,+(f|0)*.75);cb(e+576|0,j,k,s,u,H[e+592>>2],H[e+596>>2],H[e+600>>2],H[e+604>>2]);s=H[e+584>>2];u=H[e+588>>2];j=H[e+576>>2];k=H[e+580>>2];break $}L=+(f|0);if((h+5&2047)==(i|0)){vb(e+528|0,L*.5);cb(e+512|0,j,k,s,u,H[e+528>>2],H[e+532>>2],H[e+536>>2],H[e+540>>2]);s=H[e+520>>2];u=H[e+524>>2];j=H[e+512>>2];k=H[e+516>>2];break $}vb(e+560|0,L*.75);cb(e+544|0,j,k,s,u,H[e+560>>2],H[e+564>>2],H[e+568>>2],H[e+572>>2]);s=H[e+552>>2];u=H[e+556>>2];j=H[e+544>>2];k=H[e+548>>2]}if((d|0)>111){break _}ce(e+464|0,j,k,s,u,0,0,0,1073676288);if(Kb(H[e+464>>2],H[e+468>>2],H[e+472>>2],H[e+476>>2],0,0,0,0)){break _}cb(e+448|0,j,k,s,u,0,0,0,1073676288);s=H[e+456>>2];u=H[e+460>>2];j=H[e+448>>2];k=H[e+452>>2]}cb(e+432|0,n,r,l,m,j,k,s,u);Tc(e+416|0,H[e+432>>2],H[e+436>>2],H[e+440>>2],H[e+444>>2],C,D,z,A);l=H[e+424>>2];m=H[e+428>>2];n=H[e+416>>2];r=H[e+420>>2];aa:{if((-2-J|0)>=(g&2147483647)){break aa}H[e+408>>2]=l;H[e+412>>2]=m&2147483647;H[e+400>>2]=n;H[e+404>>2]=r;Ka(e+384|0,n,r,l,m,0,0,0,1073610752);f=H[e+400>>2];x=H[e+404>>2];g=H[e+408>>2];o=H[e+412>>2];i=Uc(f,x,g,o,1081081856);h=(i|0)<0;l=h?l:H[e+392>>2];m=h?m:H[e+396>>2];n=h?n:H[e+384>>2];r=h?r:H[e+388>>2];w=((i|0)>=0)+w|0;if((w+110|0)<=(M|0)){if((((Uc(f,x,g,o,1081081856)|0)<0?q:q&(d|0)!=(p|0))|0)!=1){break aa}if(!Kb(j,k,s,u,0,0,0,0)){break aa}}H[4736]=68}ze(e+368|0,n,r,l,m,w);l=H[e+368>>2];m=H[e+372>>2];j=H[e+380>>2];d=H[e+376>>2]}H[t+32>>2]=l;H[t+36>>2]=m;H[t+40>>2]=d;H[t+44>>2]=j;da=e+8976|0;j=H[t+40>>2];k=H[t+44>>2];l=H[t+32>>2];m=H[t+36>>2];break a;case 3:break j;default:break m}}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}H[4736]=28;break i}ba:{d=H[g+4>>2];ca:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break ca}d=Sa(g)}if((d|0)==40){h=1;break ba}k=2147450880;if(H[g+116>>2]<0){break a}H[g+4>>2]=H[g+4>>2]-1;break a}while(1){da:{d=H[g+4>>2];ea:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break ea}d=Sa(g)}if(!(d-48>>>0<10|d-65>>>0<26|(d|0)==95)){if(d-97>>>0>=26){break da}}h=h+1|0;continue}break}k=2147450880;if((d|0)==41){break a}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(!h){break a}while(1){h=h-1|0;if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(h){continue}break}break a}H[g+112>>2]=0;H[g+116>>2]=0;d=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=d;H[g+124>>2]=d>>31;H[g+104>>2]=H[g+8>>2]}}H[y>>2]=l;H[y+4>>2]=m;H[y+8>>2]=j;H[y+12>>2]=k;da=t+48|0;d=H[y+8>>2];j=H[y+12>>2];i=H[y>>2];h=H[y+4>>2];if(c){H[c>>2]=((H[y+20>>2]+H[y+136>>2]|0)-H[y+60>>2]|0)+b}H[a>>2]=i;H[a+4>>2]=h;H[a+8>>2]=d;H[a+12>>2]=j;da=y+160|0}function uk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ia=0;h=da-224|0;da=h;H[a+8>>2]=e;g=a+32|0;m=H[g>>2];f=H[a+36>>2]-m>>2;a:{if(f>>>0>>0){Ha(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=m+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;k=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;d=f;while(1){m=(i<<2)+b|0;g=H[m+4>>2];m=H[m>>2];u=(m|0)<(d|0);d=u?m:d;l=(d|0)>(g|0);d=l?g:d;f=u?f:(f|0)<(m|0)?m:f;f=l?f:(f|0)<(g|0)?g:f;i=i+2|0;j=j+2|0;if((n|0)!=(j|0)){continue}break}}if(!k){break c}g=H[(i<<2)+b>>2];m=(g|0)<(d|0);d=m?g:d;f=m?f:(f|0)<(g|0)?g:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}d=d+1|0;H[a+20>>2]=d;f=d>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}_=H[a+52>>2];v=H[a+48>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;e:{if(!e){f=0;d=0;break e}Ha(h+144|0,e);f=H[h+156>>2];d=H[h+160>>2]}d=d-f>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}H[h+160>>2]=(e<<2)+f;break f}Ha(h+144|12,e-d|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}H[h+172>>2]=f+(e<<2);break g}Ha(h+168|0,e-d|0)}h:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;i:{j:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break j}d=1;break i}Ha(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break h}d=e<<2;f=ra(d);H[h+128>>2]=f;g=d+f|0;H[h+136>>2]=g;ta(f,0,d);H[h+132>>2]=g;d=0}J=a+152|0;g=H[a+152>>2];f=H[a+156>>2]-g>>2;k:{if(f>>>0>>0){Ha(J,e-f|0);break k}if(e>>>0>=f>>>0){break k}H[a+156>>2]=g+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;r=ra(d);y=ta(r,0,d)+d|0}f=H[a+56>>2];d=H[f>>2];l:{f=H[f+4>>2]-d|0;if((f|0)<5){break l}E=f>>>2|0;g=E-1|0;if(g>>>0>2>>>0){K=a+112|0;$=h+125|0;aa=h+36|0;ba=h+24|0;S=e<<2;L=y-r|0;V=L&-4;B=L>>2;M=e&-2;O=e&1;ca=e&-4;W=e&3;G=e-1|0;while(1){u=g;j=H[(g<<2)+d>>2];d=(j>>>0)%3|0;m=0;m:{if((j|0)==-1){break m}g=0;f=j+2|0;w=(d|0)!=0|(f|0)!=-1;k=1;p=d?j-1|0:f;o=1<>>5|0;z=H[v>>2];d=j;while(1){n:{if(H[z+(d>>>3&536870908)>>2]>>>d&1){break n}f=H[H[H[v+64>>2]+12>>2]+(d<<2)>>2];if((f|0)==-1){break n}i=H[_>>2];m=H[v+28>>2];n=H[i+(H[m+(f<<2)>>2]<<2)>>2];if((n|0)>=(u|0)){break n}l=f+1|0;l=H[i+(H[m+(((l>>>0)%3|0?l:f-2|0)<<2)>>2]<<2)>>2];if((l|0)>=(u|0)){break n}f=H[i+(H[m+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(u|0)){break n}o:{if(!e){break o}m=H[(h+144|0)+N(g,12)>>2];i=N(e,f);l=N(e,l);n=N(e,n);f=0;x=0;if(G){while(1){H[m+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+l<<2)+b>>2]|0)-H[(f+n<<2)+b>>2];q=f|1;H[m+(q<<2)>>2]=(H[(i+q<<2)+b>>2]+H[(l+q<<2)+b>>2]|0)-H[(n+q<<2)+b>>2];f=f+2|0;x=x+2|0;if((M|0)!=(x|0)){continue}break}}if(!O){break o}H[m+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+l<<2)+b>>2]|0)-H[(f+n<<2)+b>>2]}m=4;g=g+1|0;if((g|0)==4){break m}}p:{if(k&1){m=d-2|0;f=d+1|0;d=-1;f=(f>>>0)%3|0?f:m;if((f|0)==-1|H[H[v>>2]+(f>>>3&536870908)>>2]>>>f&1){break p}f=H[H[H[v+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break p}d=f+1|0;d=(d>>>0)%3|0?d:f-2|0;break p}q:{if((d>>>0)%3|0){f=d-1|0;break q}f=d+2|0;d=-1;if((f|0)==-1){break p}}d=-1;if(H[H[v>>2]+(f>>>3&536870908)>>2]>>>f&1){break p}f=H[H[H[v+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break p}if((f>>>0)%3|0){d=f-1|0;break p}d=f+2|0}if((d|0)==(j|0)){m=g;break m}if(!((k^1)&1|(d|0)!=-1)){if(!w){m=g;break m}if(o&H[H[v>>2]+(C<<2)>>2]){m=g;break m}d=H[H[H[v+64>>2]+12>>2]+(p<<2)>>2];if((d|0)==-1){m=g;break m}k=0;d=(d>>>0)%3|0?d-1|0:d+2|0}m=g;if((d|0)!=-1){continue}break}}d=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Y=N(e,u)<<2;C=Y+b|0;l=(N(E-2|0,e)<<2)+b|0;i=H[a+152>>2];g=0;if(e){while(1){j=g<<2;f=H[j+l>>2]-H[j+C>>2]|0;H[j+r>>2]=f;H[i+j>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;j=d;d=f>>31;d=j+(d+f^d)|0;g=g+1|0;if((g|0)!=(e|0)){continue}break}}f=h+200|0;Gb(f,K,i,e);g=Fb(f);j=ea;n=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;i=f<<3;k=i;f=g+i|0;i=(g>>31)+(i>>31)|0;i=f>>>0>>0?i+1|0:i;k=f;g=n+f|0;f=i+j|0;f=g>>>0>>0?f+1|0:f;j=g;Q=(m|0)>0;r:{if(!Q){z=m-1|0;break r}z=m-1|0;k=z<<3;g=k+(h+48|0)|0;n=g;i=m+H[g>>2]|0;g=H[g+4>>2];g=i>>>0>>0?g+1|0:g;H[n>>2]=i;H[n+4>>2]=g;t=U(Hb(i,H[k+(h+80|0)>>2])*(+(i>>>0)+ +(g|0)*4294967296));s:{if(P(t)<0x8000000000000000){i=P(t)>=1?~~(t>0?R(T(t*2.3283064365386963e-10),4294967295):U((t-+(~~t>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~t>>>0;break s}i=-2147483648;g=0}g=g+j|0;j=g}x=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=j;H[h+12>>2]=d;eb(ba,l,l+S|0);Ec(aa,r,y);d=z<<3;n=d+(h+80|0)|0;fa=h+200|0;if((m|0)>0){f=h+124|0;q=f+m|0;p=q-2|0;l=q-1|0;ga=!m|(l|0)==(f|0);Z=d+(h+48|0)|0;w=1;while(1){x=x+1|0;if((m|0)>0){ta(h+124|0,1,m)}ta(h+124|0,0,x);t:{u:while(1){if(e){ta(H[h+128>>2],0,S)}A=0;k=0;if((m|0)>0){while(1){if(!I[(h+124|0)+k|0]){v:{if(!e){break v}d=H[h+128>>2];g=H[(h+144|0)+N(k,12)>>2];i=0;f=0;j=0;if(G>>>0>2){while(1){o=f<<2;s=o+d|0;H[s>>2]=H[s>>2]+H[g+o>>2];s=o|4;D=s+d|0;H[D>>2]=H[D>>2]+H[g+s>>2];s=o|8;D=s+d|0;H[D>>2]=H[D>>2]+H[g+s>>2];o=o|12;s=o+d|0;H[s>>2]=H[s>>2]+H[g+o>>2];f=f+4|0;j=j+4|0;if((ca|0)!=(j|0)){continue}break}}if(!W){break v}while(1){j=f<<2;o=j+d|0;H[o>>2]=H[o>>2]+H[g+j>>2];f=f+1|0;i=i+1|0;if((W|0)!=(i|0)){continue}break}}A=1<>2];w:{x:{y:{if(e){f=0;d=0;if(G){break y}break x}j=H[a+152>>2];i=0;break w}while(1){j=f<<2;i=j+g|0;H[i>>2]=H[i>>2]/(w|0);j=(j|4)+g|0;H[j>>2]=H[j>>2]/(w|0);f=f+2|0;d=d+2|0;if((M|0)!=(d|0)){continue}break}}if(O){d=(f<<2)+g|0;H[d>>2]=H[d>>2]/(w|0)}j=H[a+152>>2];i=0;g=H[h+128>>2];d=0;if(!e){break w}while(1){k=d<<2;f=H[k+g>>2]-H[k+C>>2]|0;H[k+r>>2]=f;H[j+k>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;k=f;f=f>>31;i=(k+f^f)+i|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=h+200|0;Gb(d,K,j,e);f=Fb(d);k=f;f=H[d+12>>2];d=H[d+16>>2];f=(((f-d|0)+1|0)/64|0)+d<<3;j=d<<3;d=f+j|0;d=k+d|0;f=d;if(Q){d=H[Z+4>>2];j=H[Z>>2];t=U(Hb(j,H[n>>2]+w|0)*(+(j>>>0)+ +(d|0)*4294967296));z:{if(P(t)<0x8000000000000000){d=~~t>>>0;break z}d=0}f=d+f|0}d=H[h+8>>2];if(!((d|0)<=(f|0)&((d|0)<(f|0)|H[h+12>>2]<=(i|0)))){H[h+20>>2]=w;F[h+16|0]=A;H[h+8>>2]=f;H[h+12>>2]=i;j=H[h+132>>2];k=j-g|0;i=k>>2;d=H[h+32>>2];f=H[h+24>>2];A:{if(i>>>0<=d-f>>2>>>0){k=H[h+28>>2]-f|0;d=k+g|0;o=k>>2;A=o>>>0>>0?d:j;k=A-g|0;if(k){Ia(f,g,k)}if(i>>>0>o>>>0){f=H[h+28>>2];if((j|0)==(A|0)){break A}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}break A}f=f+k|0;break A}if(f){H[h+28>>2]=f;qa(f);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;d=0}if((k|0)<0){break h}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?i:f:1073741823;if(d>>>0>=1073741824){break h}d=d<<2;f=ra(d);H[h+24>>2]=f;H[h+28>>2]=f;H[h+32>>2]=d+f;if((g|0)==(j|0)){break A}d=k&-4;f=sa(f,g,d)+d|0}H[h+28>>2]=f;d=H[h+44>>2];f=H[h+36>>2];B:{if(d-f>>2>>>0>=B>>>0){g=H[h+40>>2]-f|0;d=g+r|0;j=g>>2;i=j>>>0>>0?d:y;g=i-r|0;if(g){Ia(f,r,g)}if(j>>>0>>0){f=H[h+40>>2];if((i|0)==(y|0)){break B}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((y|0)!=(d|0)){continue}break}break B}f=f+g|0;break B}if(f){H[h+40>>2]=f;qa(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;d=0}if((L|0)<0){break h}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?B:f:1073741823;if(d>>>0>=1073741824){break h}d=d<<2;f=ra(d);H[h+36>>2]=f;H[h+44>>2]=d+f;if((r|0)==(y|0)){break B}f=sa(f,r,V)+V|0}H[h+40>>2]=f}if(ga){break t}g=-1;j=I[l|0];f=j;while(1){i=f&255;d=g-1|0;k=d+q|0;f=I[k|0];if(i>>>0>f>>>0){i=l;d=q;if((j&255)>>>0<=f>>>0){while(1){j=i;i=i-1|0;o=d-2|0;d=j;if(I[o|0]<=f>>>0){continue}break}j=1}d=g+q|0;F[k|0]=j;F[i|0]=f;f=l;if((g|0)==-1){continue u}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}continue u}g=d;if((k|0)!=(h+124|0)){continue}break}break}if(l>>>0<=h+124>>>0){break t}d=I[h+124|0];F[h+124|0]=j;F[l|0]=d;d=$;f=p;if(d>>>0>=f>>>0){break t}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}}w=w+1|0;if((m|0)!=(x|0)){continue}break}}if(Q){f=H[h+20>>2];g=f;d=f+H[n>>2]|0;f=H[n+4>>2]+(f>>31)|0;H[n>>2]=d;H[n+4>>2]=d>>>0>>0?f+1|0:f}d=H[J>>2];C:{if(!e){break C}g=H[h+36>>2];f=0;j=0;if(G){while(1){l=f<<2;i=H[l+g>>2];H[d+l>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;l=l|4;i=H[l+g>>2];H[d+l>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;f=f+2|0;j=j+2|0;if((M|0)!=(j|0)){continue}break}}if(O){j=g;g=f<<2;f=H[j+g>>2];H[d+g>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1}d=H[J>>2]}wc(fa,K,d,e);d=0;D:{if((m|0)<=0){break D}i=N(z,12)+a|0;j=i- -64|0;while(1){E:{g=H[i+68>>2];l=g<<5;f=H[j>>2];F:{if(!(I[h+16|0]>>>d&1)){G:{H:{if((f|0)!=(l|0)){break H}if((f+1|0)<0){break E}I:{if(f>>>0<=1073741822){l=f+32&-32;g=g<<6;g=g>>>0>>0?l:g;if(g>>>0<=f>>>0){break H}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break I}break h}g=-1;if(f>>>0>2147483646){break G}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;g=2147483647}k=(g-1>>>5|0)+1|0;l=ra(k<<2);g=H[i+60>>2];H[l+((f>>>0<33?0:f-1>>>5|0)<<2)>>2]=0;J:{K:{if(!f){break K}p=f>>>5|0;n=p<<2;q=Ia(l,g,n);p=f-(p<<5)|0;if((p|0)<=0){break K}f=n+q|0;l=f;o=H[f>>2];f=-1>>>32-p|0;H[l>>2]=o&(f^-1)|f&H[g+n>>2];H[i+60>>2]=q;H[i+68>>2]=k;break J}H[i+60>>2]=l;H[i+68>>2]=k;if(!g){break H}}qa(g);f=H[j>>2]}g=f}H[j>>2]=g+1;f=H[i+60>>2]+(g>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0<=1073741822){l=f+32&-32;g=g<<6;g=g>>>0>>0?l:g;if(g>>>0<=f>>>0){break M}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break N}break h}g=-1;if(f>>>0>2147483646){break L}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;g=2147483647}k=(g-1>>>5|0)+1|0;l=ra(k<<2);g=H[i+60>>2];H[l+((f>>>0<33?0:f-1>>>5|0)<<2)>>2]=0;O:{P:{if(!f){break P}p=f>>>5|0;n=p<<2;q=Ia(l,g,n);p=f-(p<<5)|0;if((p|0)<=0){break P}f=n+q|0;l=f;o=H[f>>2];f=-1>>>32-p|0;H[l>>2]=o&(f^-1)|f&H[g+n>>2];H[i+60>>2]=q;H[i+68>>2]=k;break O}H[i+60>>2]=l;H[i+68>>2]=k;if(!g){break M}}qa(g);f=H[j>>2]}g=f}H[j>>2]=g+1;f=H[i+60>>2]+(g>>>3&536870908)|0;l=H[f>>2];ha=f,ia=Vk(g)&l,H[ha>>2]=ia}d=d+1|0;if((m|0)!=(d|0)){continue}break D}break}break h}k=H[h+24>>2];d=H[a+8>>2];if((d|0)>0){l=c+Y|0;g=0;j=k;while(1){m=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;i=H[d+j>>2];n=H[a+16>>2];Q:{if((i|0)>(n|0)){H[d+m>>2]=n;break Q}d=d+m|0;n=H[a+12>>2];if((n|0)>(i|0)){H[d>>2]=n;break Q}H[d>>2]=i}f=f+1|0;if((f|0)>2]){continue}break}}f=g<<2;d=f+l|0;f=H[f+C>>2]-H[f+m>>2]|0;H[d>>2]=f;R:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break R}f=f-H[a+20>>2]|0}H[d>>2]=f}j=m;d=H[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}}d=H[h+36>>2];if(d){H[h+40>>2]=d;qa(d);k=H[h+24>>2]}if(k){H[h+28>>2]=k;qa(k)}if((E|0)<3){break l}E=u;f=H[a+56>>2];d=H[f>>2];g=u-1|0;if(g>>>0>2]-d>>2>>>0){continue}break}}xa();X()}j=H[h+144>>2];if(e){ta(j,0,e<<2);j=H[h+144>>2]}d=H[a+8>>2];if((d|0)>0){g=0;while(1){e=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;m=H[d+j>>2];i=H[a+16>>2];S:{if((m|0)>(i|0)){H[d+e>>2]=i;break S}d=d+e|0;i=H[a+12>>2];if((i|0)>(m|0)){H[d>>2]=i;break S}H[d>>2]=m}f=f+1|0;if((f|0)>2]){continue}break}}f=g<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;T:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break T}f=f-H[a+20>>2]|0}H[d>>2]=f}j=e;d=H[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}}if(r){qa(r)}a=H[h+128>>2];if(a){H[h+132>>2]=a;qa(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;qa(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;qa(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;qa(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;qa(a)}da=h+224|0;return 1}ua();X()}function kk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ia=0;h=da-224|0;da=h;H[a+8>>2]=e;g=a+32|0;l=H[g>>2];f=H[a+36>>2]-l>>2;a:{if(f>>>0>>0){Ha(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=l+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;o=g&1;d:{if((d|0)==2){d=f;break d}m=g&-2;d=f;while(1){l=(i<<2)+b|0;g=H[l+4>>2];l=H[l>>2];v=(l|0)<(d|0);d=v?l:d;k=(d|0)>(g|0);d=k?g:d;f=v?f:(f|0)<(l|0)?l:f;f=k?f:(f|0)<(g|0)?g:f;i=i+2|0;j=j+2|0;if((m|0)!=(j|0)){continue}break}}if(!o){break c}g=H[(i<<2)+b>>2];l=(g|0)<(d|0);d=l?g:d;f=l?f:(f|0)<(g|0)?g:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}d=d+1|0;H[a+20>>2]=d;f=d>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}_=H[a+52>>2];Q=H[a+48>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;e:{if(!e){f=0;d=0;break e}Ha(h+144|0,e);f=H[h+156>>2];d=H[h+160>>2]}d=d-f>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}H[h+160>>2]=(e<<2)+f;break f}Ha(h+144|12,e-d|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}H[h+172>>2]=f+(e<<2);break g}Ha(h+168|0,e-d|0)}h:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;i:{j:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break j}d=1;break i}Ha(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break h}d=e<<2;f=ra(d);H[h+128>>2]=f;g=d+f|0;H[h+136>>2]=g;ta(f,0,d);H[h+132>>2]=g;d=0}E=a+152|0;g=H[a+152>>2];f=H[a+156>>2]-g>>2;k:{if(f>>>0>>0){Ha(E,e-f|0);break k}if(e>>>0>=f>>>0){break k}H[a+156>>2]=g+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;s=ra(d);x=ta(s,0,d)+d|0}f=H[a+56>>2];d=H[f>>2];l:{f=H[f+4>>2]-d|0;if((f|0)<5){break l}B=f>>>2|0;g=B-1|0;if(g>>>0>2>>>0){G=a+112|0;$=h+125|0;aa=h+36|0;ba=h+24|0;S=e<<2;J=x-s|0;V=J&-4;z=J>>2;K=e&-2;L=e&1;ca=e&-4;W=e&3;C=e-1|0;while(1){v=g;j=H[(g<<2)+d>>2];d=(j>>>0)%3|0;l=0;m:{if((j|0)==-1){break m}g=0;f=j+2|0;n=(d|0)!=0|(f|0)!=-1;k=H[Q+12>>2];r=k+((d?j-1|0:f)<<2)|0;p=1;d=j;while(1){f=H[k+(d<<2)>>2];n:{if((f|0)==-1){break n}i=-1;o=H[_>>2];l=H[Q>>2];m=o+(H[l+(f<<2)>>2]<<2)|0;q=f+1|0;q=(q>>>0)%3|0?q:f-2|0;if((q|0)!=-1){i=H[l+(q<<2)>>2]}m=H[m>>2];o:{p:{if((f>>>0)%3|0){f=f-1|0;break p}f=f+2|0;q=-1;if((f|0)==-1){break o}}q=H[l+(f<<2)>>2]}if((m|0)>=(v|0)){break n}f=H[o+(i<<2)>>2];if((f|0)>=(v|0)){break n}i=H[o+(q<<2)>>2];if((i|0)>=(v|0)){break n}l=H[(h+144|0)+N(g,12)>>2];q:{if(!e){break q}i=N(e,i);o=N(e,f);m=N(e,m);f=0;w=0;if(C){while(1){H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+o<<2)+b>>2]|0)-H[(f+m<<2)+b>>2];q=f|1;H[l+(q<<2)>>2]=(H[(i+q<<2)+b>>2]+H[(o+q<<2)+b>>2]|0)-H[(m+q<<2)+b>>2];f=f+2|0;w=w+2|0;if((K|0)!=(w|0)){continue}break}}if(!L){break q}H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+o<<2)+b>>2]|0)-H[(f+m<<2)+b>>2]}l=4;g=g+1|0;if((g|0)==4){break m}}r:{if(p&1){f=d+1|0;d=(f>>>0)%3|0?f:d-2|0;i=-1;if((d|0)==-1){break r}d=H[k+(d<<2)>>2];i=-1;if((d|0)==-1){break r}f=d+1|0;i=(f>>>0)%3|0?f:d-2|0;break r}s:{if((d>>>0)%3|0){f=d-1|0;break s}f=d+2|0;i=-1;if((f|0)==-1){break r}}d=H[k+(f<<2)>>2];i=-1;if((d|0)==-1){break r}i=d-1|0;if((d>>>0)%3|0){break r}i=d+2|0}d=i;if((j|0)==(d|0)){l=g;break m}if(!((p^1)&1|(d|0)!=-1)){if(!n){l=g;break m}d=H[r>>2];if((d|0)==-1){l=g;break m}p=0;d=(d>>>0)%3|0?d-1|0:d+2|0}l=g;if((d|0)!=-1){continue}break}}d=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Y=N(e,v)<<2;M=Y+b|0;j=(N(B-2|0,e)<<2)+b|0;k=H[a+152>>2];g=0;if(e){while(1){i=g<<2;f=H[i+j>>2]-H[i+M>>2]|0;H[i+s>>2]=f;H[i+k>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;i=d;d=f>>31;d=i+(d+f^d)|0;g=g+1|0;if((g|0)!=(e|0)){continue}break}}f=h+200|0;Gb(f,G,k,e);g=Fb(f);k=ea;m=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;i=f<<3;o=i;f=g+i|0;i=(g>>31)+(i>>31)|0;i=f>>>0>>0?i+1|0:i;o=f;g=m+f|0;f=i+k|0;f=g>>>0>>0?f+1|0:f;i=g;O=(l|0)>0;t:{if(!O){D=l-1|0;break t}D=l-1|0;o=D<<3;g=o+(h+48|0)|0;m=g;k=l+H[g>>2]|0;g=H[g+4>>2];g=k>>>0>>0?g+1|0:g;H[m>>2]=k;H[m+4>>2]=g;u=U(Hb(k,H[o+(h+80|0)>>2])*(+(k>>>0)+ +(g|0)*4294967296));u:{if(P(u)<0x8000000000000000){k=P(u)>=1?~~(u>0?R(T(u*2.3283064365386963e-10),4294967295):U((u-+(~~u>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~u>>>0;break u}k=-2147483648;g=0}g=g+i|0;i=g}w=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=i;H[h+12>>2]=d;eb(ba,j,j+S|0);Ec(aa,s,x);d=D<<3;o=d+(h+80|0)|0;fa=h+200|0;if((l|0)>0){f=h+124|0;m=f+l|0;q=m-2|0;k=m-1|0;ga=!l|(k|0)==(f|0);Z=d+(h+48|0)|0;p=1;while(1){w=w+1|0;if((l|0)>0){ta(h+124|0,1,l)}ta(h+124|0,0,w);v:{w:while(1){if(e){ta(H[h+128>>2],0,S)}y=0;g=0;if((l|0)>0){while(1){if(!I[(h+124|0)+g|0]){x:{if(!e){break x}d=H[h+128>>2];n=H[(h+144|0)+N(g,12)>>2];i=0;f=0;j=0;if(C>>>0>2){while(1){r=f<<2;t=r+d|0;H[t>>2]=H[t>>2]+H[n+r>>2];t=r|4;A=t+d|0;H[A>>2]=H[A>>2]+H[n+t>>2];t=r|8;A=t+d|0;H[A>>2]=H[A>>2]+H[n+t>>2];r=r|12;t=r+d|0;H[t>>2]=H[t>>2]+H[n+r>>2];f=f+4|0;j=j+4|0;if((ca|0)!=(j|0)){continue}break}}if(!W){break x}while(1){j=f<<2;r=j+d|0;H[r>>2]=H[r>>2]+H[j+n>>2];f=f+1|0;i=i+1|0;if((W|0)!=(i|0)){continue}break}}y=1<>2];y:{z:{A:{if(e){f=0;d=0;if(C){break A}break z}j=H[a+152>>2];i=0;break y}while(1){i=f<<2;j=i+g|0;H[j>>2]=H[j>>2]/(p|0);i=(i|4)+g|0;H[i>>2]=H[i>>2]/(p|0);f=f+2|0;d=d+2|0;if((K|0)!=(d|0)){continue}break}}if(L){d=(f<<2)+g|0;H[d>>2]=H[d>>2]/(p|0)}j=H[a+152>>2];i=0;g=H[h+128>>2];d=0;if(!e){break y}while(1){n=d<<2;f=H[n+g>>2]-H[n+M>>2]|0;H[n+s>>2]=f;H[j+n>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;n=f;f=f>>31;i=(n+f^f)+i|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=h+200|0;Gb(d,G,j,e);f=Fb(d);n=f;f=H[d+12>>2];d=H[d+16>>2];f=(((f-d|0)+1|0)/64|0)+d<<3;j=d<<3;d=f+j|0;d=n+d|0;f=d;if(O){d=H[Z+4>>2];j=H[Z>>2];u=U(Hb(j,H[o>>2]+p|0)*(+(j>>>0)+ +(d|0)*4294967296));B:{if(P(u)<0x8000000000000000){d=~~u>>>0;break B}d=0}f=d+f|0}d=H[h+8>>2];if(!((d|0)<=(f|0)&((d|0)<(f|0)|H[h+12>>2]<=(i|0)))){H[h+20>>2]=p;F[h+16|0]=y;H[h+8>>2]=f;H[h+12>>2]=i;i=H[h+132>>2];n=i-g|0;j=n>>2;d=H[h+32>>2];f=H[h+24>>2];C:{if(j>>>0<=d-f>>2>>>0){n=H[h+28>>2]-f|0;d=n+g|0;r=n>>2;y=r>>>0>>0?d:i;n=y-g|0;if(n){Ia(f,g,n)}if(j>>>0>r>>>0){f=H[h+28>>2];if((i|0)==(y|0)){break C}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}break C}f=f+n|0;break C}if(f){H[h+28>>2]=f;qa(f);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;d=0}if((n|0)<0){break h}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?j:f:1073741823;if(d>>>0>=1073741824){break h}d=d<<2;f=ra(d);H[h+24>>2]=f;H[h+28>>2]=f;H[h+32>>2]=d+f;if((g|0)==(i|0)){break C}d=n&-4;f=sa(f,g,d)+d|0}H[h+28>>2]=f;d=H[h+44>>2];f=H[h+36>>2];D:{if(d-f>>2>>>0>=z>>>0){g=H[h+40>>2]-f|0;d=g+s|0;i=g>>2;j=i>>>0>>0?d:x;g=j-s|0;if(g){Ia(f,s,g)}if(i>>>0>>0){f=H[h+40>>2];if((j|0)==(x|0)){break D}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((x|0)!=(d|0)){continue}break}break D}f=f+g|0;break D}if(f){H[h+40>>2]=f;qa(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;d=0}if((J|0)<0){break h}f=d>>1;d=d>>2>>>0<536870911?f>>>0>>0?z:f:1073741823;if(d>>>0>=1073741824){break h}d=d<<2;f=ra(d);H[h+36>>2]=f;H[h+44>>2]=d+f;if((s|0)==(x|0)){break D}f=sa(f,s,V)+V|0}H[h+40>>2]=f}if(ga){break v}g=-1;j=I[k|0];f=j;while(1){i=f&255;d=g-1|0;n=d+m|0;f=I[n|0];if(i>>>0>f>>>0){i=k;d=m;if((j&255)>>>0<=f>>>0){while(1){j=i;i=i-1|0;r=d-2|0;d=j;if(I[r|0]<=f>>>0){continue}break}j=1}d=g+m|0;F[n|0]=j;F[i|0]=f;f=k;if((g|0)==-1){continue w}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}continue w}g=d;if((n|0)!=(h+124|0)){continue}break}break}if(k>>>0<=h+124>>>0){break v}d=I[h+124|0];F[h+124|0]=j;F[k|0]=d;d=$;f=q;if(d>>>0>=f>>>0){break v}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}}p=p+1|0;if((l|0)!=(w|0)){continue}break}}if(O){f=H[h+20>>2];g=f;d=f+H[o>>2]|0;f=H[o+4>>2]+(f>>31)|0;H[o>>2]=d;H[o+4>>2]=d>>>0>>0?f+1|0:f}d=H[E>>2];E:{if(!e){break E}g=H[h+36>>2];f=0;j=0;if(C){while(1){k=f<<2;i=H[k+g>>2];H[d+k>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;k=k|4;i=H[k+g>>2];H[d+k>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;f=f+2|0;j=j+2|0;if((K|0)!=(j|0)){continue}break}}if(L){j=g;g=f<<2;f=H[j+g>>2];H[d+g>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1}d=H[E>>2]}wc(fa,G,d,e);d=0;F:{if((l|0)<=0){break F}j=N(D,12)+a|0;i=j- -64|0;while(1){G:{g=H[j+68>>2];k=g<<5;f=H[i>>2];H:{if(!(I[h+16|0]>>>d&1)){I:{J:{if((f|0)!=(k|0)){break J}if((f+1|0)<0){break G}K:{if(f>>>0<=1073741822){k=f+32&-32;g=g<<6;g=g>>>0>>0?k:g;if(g>>>0<=f>>>0){break J}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break K}break h}g=-1;if(f>>>0>2147483646){break I}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;g=2147483647}o=(g-1>>>5|0)+1|0;k=ra(o<<2);g=H[j+60>>2];H[k+((f>>>0<33?0:f-1>>>5|0)<<2)>>2]=0;L:{M:{if(!f){break M}p=f>>>5|0;m=p<<2;q=Ia(k,g,m);p=f-(p<<5)|0;if((p|0)<=0){break M}f=m+q|0;k=f;n=H[f>>2];f=-1>>>32-p|0;H[k>>2]=n&(f^-1)|f&H[g+m>>2];H[j+60>>2]=q;H[j+68>>2]=o;break L}H[j+60>>2]=k;H[j+68>>2]=o;if(!g){break J}}qa(g);f=H[i>>2]}g=f}H[i>>2]=g+1;f=H[j+60>>2]+(g>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0<=1073741822){k=f+32&-32;g=g<<6;g=g>>>0>>0?k:g;if(g>>>0<=f>>>0){break O}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break P}break h}g=-1;if(f>>>0>2147483646){break N}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;g=2147483647}o=(g-1>>>5|0)+1|0;k=ra(o<<2);g=H[j+60>>2];H[k+((f>>>0<33?0:f-1>>>5|0)<<2)>>2]=0;Q:{R:{if(!f){break R}p=f>>>5|0;m=p<<2;q=Ia(k,g,m);p=f-(p<<5)|0;if((p|0)<=0){break R}f=m+q|0;k=f;n=H[f>>2];f=-1>>>32-p|0;H[k>>2]=n&(f^-1)|f&H[g+m>>2];H[j+60>>2]=q;H[j+68>>2]=o;break Q}H[j+60>>2]=k;H[j+68>>2]=o;if(!g){break O}}qa(g);f=H[i>>2]}g=f}H[i>>2]=g+1;f=H[j+60>>2]+(g>>>3&536870908)|0;k=H[f>>2];ha=f,ia=Vk(g)&k,H[ha>>2]=ia}d=d+1|0;if((l|0)!=(d|0)){continue}break F}break}break h}g=H[h+24>>2];d=H[a+8>>2];if((d|0)>0){o=c+Y|0;i=0;j=g;while(1){l=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;k=H[d+j>>2];m=H[a+16>>2];S:{if((k|0)>(m|0)){H[d+l>>2]=m;break S}d=d+l|0;m=H[a+12>>2];if((m|0)>(k|0)){H[d>>2]=m;break S}H[d>>2]=k}f=f+1|0;if((f|0)>2]){continue}break}}f=i<<2;d=f+o|0;f=H[f+M>>2]-H[f+l>>2]|0;H[d>>2]=f;T:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break T}f=f-H[a+20>>2]|0}H[d>>2]=f}j=l;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}d=H[h+36>>2];if(d){H[h+40>>2]=d;qa(d);g=H[h+24>>2]}if(g){H[h+28>>2]=g;qa(g)}if((B|0)<3){break l}B=v;f=H[a+56>>2];d=H[f>>2];g=v-1|0;if(g>>>0>2]-d>>2>>>0){continue}break}}xa();X()}j=H[h+144>>2];if(e){ta(j,0,e<<2);j=H[h+144>>2]}d=H[a+8>>2];if((d|0)>0){i=0;while(1){e=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;g=H[d+j>>2];l=H[a+16>>2];U:{if((g|0)>(l|0)){H[d+e>>2]=l;break U}d=d+e|0;l=H[a+12>>2];if((l|0)>(g|0)){H[d>>2]=l;break U}H[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}}f=i<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;V:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break V}f=f-H[a+20>>2]|0}H[d>>2]=f}j=e;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}if(s){qa(s)}a=H[h+128>>2];if(a){H[h+132>>2]=a;qa(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;qa(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;qa(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;qa(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;qa(a)}da=h+224|0;return 1}ua();X()}function _i(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=da-32|0;da=k;c=H[b+8>>2];a:{b:{if(I[b+352|0]){e=Je(c);c=H[b+12>>2];H[b+12>>2]=e;if(!c){break a}d=b+12|0;break b}e=Ke(c);c=H[b+12>>2];H[b+12>>2]=e;if(!c){break a}d=b+12|0}Zb(d,c)}c:{c=H[b+12>>2];d:{if(!(H[c+40>>2]!=((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)?c:0)){b=ra(32);c=I[1972]|I[1973]<<8|(I[1974]<<16|I[1975]<<24);e=I[1968]|I[1969]<<8|(I[1970]<<16|I[1971]<<24);F[b+21|0]=e;F[b+22|0]=e>>>8;F[b+23|0]=e>>>16;F[b+24|0]=e>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1967]|I[1968]<<8|(I[1969]<<16|I[1970]<<24);e=I[1963]|I[1964]<<8|(I[1965]<<16|I[1966]<<24);F[b+16|0]=e;F[b+17|0]=e>>>8;F[b+18|0]=e>>>16;F[b+19|0]=e>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1959]|I[1960]<<8|(I[1961]<<16|I[1962]<<24);e=I[1955]|I[1956]<<8|(I[1957]<<16|I[1958]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1951]|I[1952]<<8|(I[1953]<<16|I[1954]<<24);e=I[1947]|I[1948]<<8|(I[1949]<<16|I[1950]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;La(a+4|0,b,29);qa(b);break d}i=b+200|0;H[i+128>>2]=2;H[i+132>>2]=7;H[i+64>>2]=b;c=fa[H[H[b>>2]+32>>2]](b)|0;H[i+88>>2]=c;e=H[c+28>>2]-H[c+24>>2]>>2;c=H[i+108>>2];d=H[i+104>>2];f=c-d>>2;e:{if(e>>>0>f>>>0){Ha(i+104|0,e-f|0);d=H[i+104>>2];c=H[i+108>>2];break e}if(e>>>0>=f>>>0){break e}c=(e<<2)+d|0;H[i+108>>2]=c}if((c|0)!=(d|0)){d=0;while(1){p=H[i+104>>2];r=p+(d<<2)|0;c=H[i+88>>2];j=-1;g=d;f:{if((d|0)==-1){break f}j=0;d=H[H[c+24>>2]+(g<<2)>>2];if((d|0)==-1){break f}o=H[c+12>>2];e=1;c=d;while(1){j=j+1|0;f=e;g:{if(e&255){e=0;h=c+1|0;c=(h>>>0)%3|0?h:c-2|0;if((c|0)==-1){c=d;break g}h=H[o+(c<<2)>>2];if((h|0)==-1){c=d;break g}c=d;q=h+1|0;h=(q>>>0)%3|0?q:h-2|0;if((h|0)==-1){break g}e=f;c=h;if((d|0)!=(c|0)){break g}break f}h:{if((c>>>0)%3|0){c=c-1|0;break h}c=c+2|0;if((c|0)==-1){break f}}c=H[o+(c<<2)>>2];if((c|0)==-1){break f}c=(c>>>0)%3|0?c-1|0:c+2|0;e=0}if((c|0)!=-1){continue}break}}H[r>>2]=j;d=g+1|0;if(d>>>0>2]-p>>2>>>0){continue}break}}d=H[i+88>>2];c=H[d>>2];e=H[d+4>>2]-c>>2;f=H[i+92>>2];g=H[i+96>>2]-f>>2;i:{if(e>>>0>g>>>0){Ha(i+92|0,e-g|0);f=H[i+92>>2];d=H[i+88>>2];c=H[d>>2];break i}if(e>>>0>=g>>>0){break i}H[i+96>>2]=(e<<2)+f}e=H[d+4>>2]-c|0;j:{if(!e){break j}e=e>>2;e=e>>>0>1?e:1;g=e&3;d=0;if(e-1>>>0>=3){h=e&-4;while(1){e=d<<2;H[e+f>>2]=H[c+e>>2];j=e|4;H[j+f>>2]=H[c+j>>2];j=e|8;H[j+f>>2]=H[c+j>>2];e=e|12;H[e+f>>2]=H[c+e>>2];d=d+4|0;l=l+4|0;if((h|0)!=(l|0)){continue}break}}if(!g){break j}while(1){e=d<<2;H[e+f>>2]=H[c+e>>2];d=d+1|0;t=t+1|0;if((g|0)!=(t|0)){continue}break}}d=(H[i+132>>2]-H[i+128>>2]|0)+1|0;c=H[i+140>>2];e=H[i+136>>2];g=(c-e|0)/12|0;k:{if(d>>>0>g>>>0){f=0;c=d-g|0;h=H[i+144>>2];e=H[i+140>>2];if(c>>>0<=(h-e|0)/12>>>0){if(c){c=N((N(c,12)-12>>>0)/12|0,12)+12|0;e=ta(e,0,c)+c|0}H[i+140>>2]=e;break k}l:{m:{n:{g=H[i+136>>2];l=(e-g|0)/12|0;d=l+c|0;if(d>>>0<357913942){h=(h-g|0)/12|0;j=h<<1;h=h>>>0<178956970?d>>>0>j>>>0?d:j:357913941;if(h){if(h>>>0>=357913942){break n}f=ra(N(h,12))}d=N(l,12)+f|0;l=N((N(c,12)-12>>>0)/12|0,12)+12|0;c=ta(d,0,l);l=c+l|0;f=N(h,12)+f|0;if((e|0)==(g|0)){break m}while(1){d=d-12|0;e=e-12|0;H[d>>2]=H[e>>2];H[d+4>>2]=H[e+4>>2];H[d+8>>2]=H[e+8>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if((e|0)!=(g|0)){continue}break}H[i+144>>2]=f;c=H[i+140>>2];H[i+140>>2]=l;e=H[i+136>>2];H[i+136>>2]=d;if((c|0)==(e|0)){break l}while(1){d=c-12|0;f=H[d>>2];if(f){H[c-8>>2]=f;qa(f)}c=d;if((e|0)!=(c|0)){continue}break}break l}ua();X()}wa(1604);X()}H[i+144>>2]=f;H[i+140>>2]=l;H[i+136>>2]=c}if(e){qa(e)}break k}if(d>>>0>>0){d=e+N(d,12)|0;if((d|0)!=(c|0)){while(1){e=c-12|0;f=H[e>>2];if(f){H[c-8>>2]=f;qa(f)}c=e;if((d|0)!=(c|0)){continue}break}}H[i+140>>2]=d}}c=H[b+12>>2];Fa((H[c+28>>2]-H[c+24>>2]>>2)-H[c+44>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+12>>2];Fa(((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)-H[c+40>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+8>>2];e=H[c+100>>2];c=H[c+96>>2];F[k+16|0]=0;l=b+28|0;d=(e-c|0)/12|0;c=k+16|0;Ta(l,d,c);e=H[b+12>>2];d=H[e+28>>2];e=H[e+24>>2];H[k+16>>2]=-1;Ab(b+52|0,d-e>>2,c);e=H[b+40>>2];H[b+44>>2]=e;c=H[b+12>>2];d=H[c+4>>2]-H[c>>2]>>2;d=d-((d>>>0)%3|0)|0;o:{if(d>>>0<=H[b+48>>2]-e>>2>>>0){break o}if(d>>>0>=1073741824){break c}f=d<<2;d=ra(f);H[b+44>>2]=d;H[b+40>>2]=d;H[b+48>>2]=d+f;if(!e){break o}qa(e);c=H[b+12>>2]}e=H[c+28>>2];c=H[c+24>>2];F[k+16|0]=0;Ta(b+84|0,e-c>>2,k+16|0);H[b+164>>2]=-1;H[b+168>>2]=0;H[b+100>>2]=H[b+96>>2];H[b+112>>2]=H[b+108>>2];if(H[b+132>>2]){c=H[b+128>>2];if(c){while(1){e=H[c>>2];qa(c);c=e;if(c){continue}break}}c=0;H[b+128>>2]=0;e=H[b+124>>2];p:{if(!e){break p}if(e-1>>>0>=3){g=e&-4;d=0;while(1){f=c<<2;H[f+H[b+120>>2]>>2]=0;H[H[b+120>>2]+(f|4)>>2]=0;H[H[b+120>>2]+(f|8)>>2]=0;H[H[b+120>>2]+(f|12)>>2]=0;c=c+4|0;d=d+4|0;if((g|0)!=(d|0)){continue}break}}e=e&3;if(!e){break p}while(1){H[H[b+120>>2]+(c<<2)>>2]=0;c=c+1|0;m=m+1|0;if((e|0)!=(m|0)){continue}break}}H[b+132>>2]=0}H[b+144>>2]=0;c=H[b+12>>2];e=H[c+28>>2];c=H[c+24>>2];H[k+16>>2]=-1;Ab(b+152|0,e-c>>2,k+16|0);c=H[b+72>>2];H[b+76>>2]=c;e=H[b+12>>2];e=H[e+4>>2]-H[e>>2]|0;d=(e>>2>>>0)/3|0;q:{if(d>>>0<=H[b+80>>2]-c>>2>>>0){break q}if((e|0)<0){break c}d=d<<2;e=ra(d);H[b+76>>2]=e;H[b+72>>2]=e;H[b+80>>2]=d+e;if(!c){break q}qa(c)}H[b- -64>>2]=0;if(!Lf(b)){b=ra(32);c=I[1912]|I[1913]<<8|(I[1914]<<16|I[1915]<<24);e=I[1908]|I[1909]<<8|(I[1910]<<16|I[1911]<<24);F[b+21|0]=e;F[b+22|0]=e>>>8;F[b+23|0]=e>>>16;F[b+24|0]=e>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1907]|I[1908]<<8|(I[1909]<<16|I[1910]<<24);e=I[1903]|I[1904]<<8|(I[1905]<<16|I[1906]<<24);F[b+16|0]=e;F[b+17|0]=e>>>8;F[b+18|0]=e>>>16;F[b+19|0]=e>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1899]|I[1900]<<8|(I[1901]<<16|I[1902]<<24);e=I[1895]|I[1896]<<8|(I[1897]<<16|I[1898]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1891]|I[1892]<<8|(I[1893]<<16|I[1894]<<24);e=I[1887]|I[1888]<<8|(I[1889]<<16|I[1890]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;La(a+4|0,b,29);qa(b);break d}r:{if(I[b+352|0]){break r}c=H[b+8>>2];e=H[c+12>>2]-H[c+8>>2]|0;d=e>>2;c=d-1|0;f=H[b+176>>2];h=H[b+172>>2];g=(f-h|0)/136|0;s:{if(c>>>0>g>>>0){Ef(b+172|0,c-g|0);break s}if(c>>>0>=g>>>0){break s}c=h+N(c,136)|0;if((c|0)!=(f|0)){while(1){g=H[f-20>>2];if(g){H[f-16>>2]=g;qa(g)}g=H[f-32>>2];if(g){H[f-28>>2]=g;qa(g)}Yb(f-132|0);f=f-136|0;if((c|0)!=(f|0)){continue}break}}H[b+176>>2]=c}if((e|0)==4|(e|0)<=0){break r}h=(d|0)>1?d:1;f=0;d=0;t:{while(1){m=H[H[H[b+8>>2]+8>>2]+(f<<2)>>2];if(H[m+56>>2]){j=N(d,136);c=j+H[b+172>>2]|0;H[c>>2]=f;e=H[c+104>>2];H[c+108>>2]=e;g=H[b+12>>2];g=H[g+4>>2]-H[g>>2]|0;o=g>>2;u:{if(o>>>0<=H[c+112>>2]-e>>2>>>0){break u}if((g|0)<0){break t}g=ra(g);H[c+104>>2]=g;H[c+108>>2]=g;H[c+112>>2]=g+(o<<2);if(!e){break u}qa(e)}c=j+H[b+172>>2]|0;H[c+128>>2]=0;Me(c+4|0,H[b+8>>2],H[b+12>>2],m);d=d+1|0}f=f+1|0;if((h|0)!=(f|0)){continue}break}break r}wa(1604);X()}c=(H[b+176>>2]-H[b+172>>2]|0)/136|0;F[k+31|0]=c;e=H[H[b+4>>2]+44>>2];d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){va(e,H[e+4>>2],k+31|0,k+32|0);c=I[k+31|0]}H[b+284>>2]=c&255;c=H[b+12>>2];d=H[c>>2];c=H[c+4>>2];Kf(i);H[k+24>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;e=0;v:{w:{x:{y:{c=c-d|0;if((c|0)>0){c=c>>>2|0;o=c>>>0>1?c:1;c=0;while(1){d=(c>>>0)/3|0;p=d>>>5<<2;r=1<>2]>>2]&r){break z}if(nc(H[b+12>>2],d)){break z}H[k>>2]=0;d=Jf(b,d,k);Ja(i,d);g=H[k>>2];if(d){h=-1;f=-1;m=-1;A:{if((g|0)==-1){break A}j=H[H[b+12>>2]>>2];d=j+(g<<2)|0;h=g+1|0;h=(h>>>0)%3|0?h:g-2|0;if((h|0)!=-1){f=H[j+(h<<2)>>2]}h=H[d>>2];B:{if((g>>>0)%3|0){d=g-1|0;break B}d=g+2|0;m=-1;if((d|0)==-1){break A}}m=H[j+(d<<2)>>2]}d=H[b+84>>2];j=d+(h>>>3&536870908)|0;H[j>>2]=H[j>>2]|1<>>3&536870908)|0;H[h>>2]=H[h>>2]|1<>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>2];h=H[b+104>>2];C:{if(d>>>0>>0){H[d>>2]=1;H[b+100>>2]=d+4;break C}f=H[b+96>>2];m=d-f|0;j=m>>2;d=j+1|0;if(d>>>0>=1073741824){break y}h=h-f|0;q=h>>1;h=h>>2>>>0<536870911?d>>>0>q>>>0?d:q:1073741823;if(h){if(h>>>0>=1073741824){break c}d=ra(h<<2)}else{d=0}j=d+(j<<2)|0;H[j>>2]=1;if((m|0)>0){sa(d,f,m)}H[b+104>>2]=d+(h<<2);H[b+100>>2]=j+4;H[b+96>>2]=d;if(!f){break C}qa(f)}d=p+H[l>>2]|0;H[d>>2]=r|H[d>>2];h=-1;if((g|0)!=-1){d=g+1|0;h=(d>>>0)%3|0?d:g-2|0}D:{if(n>>>0>>0){H[n>>2]=h;n=n+4|0;H[k+20>>2]=n;break D}m=n-e|0;n=m>>2;d=n+1|0;if(d>>>0>=1073741824){break x}f=s-e|0;j=f>>1;f=f>>2>>>0<536870911?d>>>0>j>>>0?d:j:1073741823;if(f){if(f>>>0>=1073741824){break c}d=ra(f<<2)}else{d=0}n=d+(n<<2)|0;H[n>>2]=h;s=d+(f<<2)|0;n=n+4|0;if((m|0)>0){sa(d,e,m)}H[k+24>>2]=s;H[k+20>>2]=n;H[k+16>>2]=d;if(e){qa(e)}e=d}if((g|0)==-1){break z}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)==-1){break z}d=H[H[H[b+12>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break z}f=(d>>>0)/3|0;if(H[H[l>>2]+(f>>>3&268435452)>>2]>>>f&1){break z}if(Af(b,d)){break z}break w}if((g|0)!=-1){d=g+1|0;d=(d>>>0)%3|0?d:g-2|0}else{d=-1}qc(b,d,1);if(!Af(b,H[k>>2])){break w}}c=c+1|0;if((o|0)!=(c|0)){continue}break}}f=b+72|0;c=H[b+72>>2];d=H[b+76>>2];E:{if((c|0)==(d|0)){break E}m=d-4|0;if(m>>>0<=c>>>0){break E}while(1){g=H[c>>2];H[c>>2]=H[m>>2];H[m>>2]=g;c=c+4|0;m=m-4|0;if(c>>>0>>0){continue}break}}Hf(f,d,e,n);F:{if(H[b+172>>2]==H[b+176>>2]){break F}c=H[b+8>>2];d=H[c+100>>2];c=H[c+96>>2];F[k|0]=0;Ta(l,(d-c|0)/12|0,k);c=H[b+72>>2];d=H[b+76>>2];if((c|0)==(d|0)){break F}while(1){Gf(b,H[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}c=i+32|0;Aa(i,c);d=H[i+80>>2];G:{if(!d){break G}l=1;if(H[i+84>>2]<=0){break G}Aa(d,c);if(H[i+84>>2]<2){break G}while(1){Aa(H[i+80>>2]+(l<<5)|0,c);l=l+1|0;if((l|0)>2]){continue}break}}l=H[i+136>>2];if((l|0)!=H[i+140>>2]){d=0;while(1){f=N(d,12);g=f+l|0;Fa(H[g+4>>2]-H[g>>2]>>2,c);l=H[i+136>>2];g=f+l|0;f=H[g>>2];g=H[g+4>>2]-f|0;if(g){Gd(f,g>>2,1,0,c);l=H[i+136>>2]}d=d+1|0;if(d>>>0<(H[i+140>>2]-l|0)/12>>>0){continue}break}}Fa(H[b+324>>2],H[H[b+4>>2]+44>>2]);Fa(H[b+168>>2],H[H[b+4>>2]+44>>2]);if(!Ff(b)){b=bc(k,2029);H[a>>2]=-1;a=a+4|0;if(F[b+11|0]>=0){b=H[k+4>>2];H[a>>2]=H[k>>2];H[a+4>>2]=b;H[a+8>>2]=H[k+8>>2];break v}La(a,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break v}qa(H[b>>2]);break v}c=H[H[b+4>>2]+44>>2];d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){va(c,H[c+4>>2],H[b+232>>2],H[b+236>>2])}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break v}ua();X()}ua();X()}b=ra(48);c=I[1847]|I[1848]<<8|(I[1849]<<16|I[1850]<<24);d=I[1843]|I[1844]<<8|(I[1845]<<16|I[1846]<<24);F[b+24|0]=d;F[b+25|0]=d>>>8;F[b+26|0]=d>>>16;F[b+27|0]=d>>>24;F[b+28|0]=c;F[b+29|0]=c>>>8;F[b+30|0]=c>>>16;F[b+31|0]=c>>>24;c=I[1839]|I[1840]<<8|(I[1841]<<16|I[1842]<<24);d=I[1835]|I[1836]<<8|(I[1837]<<16|I[1838]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1831]|I[1832]<<8|(I[1833]<<16|I[1834]<<24);d=I[1827]|I[1828]<<8|(I[1829]<<16|I[1830]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1823]|I[1824]<<8|(I[1825]<<16|I[1826]<<24);d=I[1819]|I[1820]<<8|(I[1821]<<16|I[1822]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+32|0]=0;H[a>>2]=-1;La(a+4|0,b,32);qa(b)}if(!e){break d}qa(e)}da=k+32|0;return}wa(1604);X()}function Uj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ia=0,ja=0;h=da-240|0;da=h;$=H[a+36>>2];u=H[a+32>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;if(e){Ha(h+144|0,e);i=H[h+160>>2];d=H[h+156>>2]}else{d=0}f=i-d>>2;a:{if(f>>>0>=e>>>0){if(e>>>0>=f>>>0){break a}H[h+160>>2]=d+(e<<2);break a}Ha(h+144|12,e-f|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}H[h+172>>2]=f+(e<<2);break b}Ha(h+168|0,e-d|0)}c:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;d:{e:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break e}d=1;break d}Ha(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break c}d=e<<2;f=ra(d);H[h+128>>2]=f;i=d+f|0;H[h+136>>2]=i;ta(f,0,d);H[h+132>>2]=i;d=0}J=a+136|0;i=H[a+136>>2];f=H[a+140>>2]-i>>2;f:{if(f>>>0>>0){Ha(J,e-f|0);break f}if(e>>>0>=f>>>0){break f}H[a+140>>2]=i+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;r=ra(d);x=ta(r,0,d)+d|0}S=a+8|0;d=H[a+40>>2];i=H[d>>2];g:{d=H[d+4>>2]-i|0;if((d|0)<5){break g}E=d>>>2|0;f=E-1|0;if(f>>>0>2>>>0){K=a+96|0;aa=h+125|0;ba=h+36|0;ca=h+24|0;V=e<<2;L=x-r|0;W=L&-4;C=L>>2;M=e&-2;O=e&1;fa=e&-4;Y=e&3;G=e-1|0;while(1){y=f;j=H[(f<<2)+i>>2];i=(j>>>0)%3|0;d=0;h:{if((j|0)==-1){break h}f=0;d=j+2|0;v=(i|0)!=0|(d|0)!=-1;m=1;q=i?j-1|0:d;z=1<>>5|0;A=H[u>>2];i=j;while(1){i:{if(H[A+(i>>>3&536870908)>>2]>>>i&1){break i}d=H[H[H[u+64>>2]+12>>2]+(i<<2)>>2];if((d|0)==-1){break i}l=H[$>>2];g=H[u+28>>2];n=H[l+(H[g+(d<<2)>>2]<<2)>>2];if((n|0)>=(y|0)){break i}k=d+1|0;k=H[l+(H[g+(((k>>>0)%3|0?k:d-2|0)<<2)>>2]<<2)>>2];if((k|0)>=(y|0)){break i}g=H[l+(H[g+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(y|0)){break i}j:{if(!e){break j}d=H[(h+144|0)+N(f,12)>>2];l=N(e,g);k=N(e,k);n=N(e,n);g=0;w=0;if(G){while(1){H[d+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+n<<2)+b>>2];o=g|1;H[d+(o<<2)>>2]=(H[(l+o<<2)+b>>2]+H[(k+o<<2)+b>>2]|0)-H[(n+o<<2)+b>>2];g=g+2|0;w=w+2|0;if((M|0)!=(w|0)){continue}break}}if(!O){break j}H[d+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+n<<2)+b>>2]}d=4;f=f+1|0;if((f|0)==4){break h}}k:{if(m&1){g=i-2|0;d=i+1|0;i=-1;d=(d>>>0)%3|0?d:g;if((d|0)==-1|H[H[u>>2]+(d>>>3&536870908)>>2]>>>d&1){break k}d=H[H[H[u+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break k}i=d+1|0;i=(i>>>0)%3|0?i:d-2|0;break k}l:{if((i>>>0)%3|0){g=i-1|0;break l}g=i+2|0;i=-1;if((g|0)==-1){break k}}i=-1;if(H[H[u>>2]+(g>>>3&536870908)>>2]>>>g&1){break k}d=H[H[H[u+64>>2]+12>>2]+(g<<2)>>2];if((d|0)==-1){break k}if((d>>>0)%3|0){i=d-1|0;break k}i=d+2|0}if((i|0)==(j|0)){d=f;break h}if(!((m^1)&1|(i|0)!=-1)){if(!v){d=f;break h}if(z&H[H[u>>2]+(p<<2)>>2]){d=f;break h}d=H[H[H[u+64>>2]+12>>2]+(q<<2)>>2];if((d|0)==-1){d=f;break h}m=0;i=(d>>>0)%3|0?d-1|0:d+2|0}d=f;if((i|0)!=-1){continue}break}}i=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Z=N(e,y)<<2;z=Z+b|0;l=(N(E-2|0,e)<<2)+b|0;k=H[a+136>>2];f=0;if(e){while(1){j=f<<2;g=H[j+l>>2]-H[j+z>>2]|0;H[j+r>>2]=g;H[j+k>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;j=i;i=g>>31;i=j+(i+g^i)|0;f=f+1|0;if((f|0)!=(e|0)){continue}break}}f=h+200|0;Gb(f,K,k,e);g=Fb(f);k=ea;o=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;j=f<<3;n=j;f=g+j|0;j=(g>>31)+(j>>31)|0;j=f>>>0>>0?j+1|0:j;n=f;f=o+f|0;g=j+k|0;j=f;f=f>>>0>>0?g+1|0:g;Q=(d|0)>0;m:{if(!Q){A=d-1|0;break m}A=d-1|0;n=A<<3;g=n+(h+48|0)|0;o=g;k=d+H[g>>2]|0;g=H[g+4>>2];g=d>>>0>k>>>0?g+1|0:g;H[o>>2]=k;H[o+4>>2]=g;t=U(Hb(k,H[n+(h+80|0)>>2])*(+(k>>>0)+ +(g|0)*4294967296));n:{if(P(t)<0x8000000000000000){k=P(t)>=1?~~(t>0?R(T(t*2.3283064365386963e-10),4294967295):U((t-+(~~t>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~t>>>0;break n}k=-2147483648;g=0}g=g+j|0;j=g}w=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=j;H[h+12>>2]=i;eb(ca,l,l+V|0);Ec(ba,r,x);f=A<<3;n=f+(h+80|0)|0;ga=h+200|0;if((d|0)>0){i=h+124|0;o=i+d|0;q=o-2|0;l=o-1|0;ha=!d|(l|0)==(i|0);_=f+(h+48|0)|0;v=1;while(1){w=w+1|0;if((d|0)>0){ta(h+124|0,1,d)}ta(h+124|0,0,w);o:{p:while(1){if(e){ta(H[h+128>>2],0,V)}B=0;m=0;if((d|0)>0){while(1){if(!I[(h+124|0)+m|0]){q:{if(!e){break q}f=H[h+128>>2];i=H[(h+144|0)+N(m,12)>>2];j=0;g=0;k=0;if(G>>>0>2){while(1){p=g<<2;s=p+f|0;H[s>>2]=H[s>>2]+H[i+p>>2];s=p|4;D=s+f|0;H[D>>2]=H[D>>2]+H[i+s>>2];s=p|8;D=s+f|0;H[D>>2]=H[D>>2]+H[i+s>>2];p=p|12;s=p+f|0;H[s>>2]=H[s>>2]+H[i+p>>2];g=g+4|0;k=k+4|0;if((fa|0)!=(k|0)){continue}break}}if(!Y){break q}while(1){k=g<<2;p=k+f|0;H[p>>2]=H[p>>2]+H[i+k>>2];g=g+1|0;j=j+1|0;if((Y|0)!=(j|0)){continue}break}}B=1<>2];r:{s:{t:{if(e){g=0;i=0;if(G){break t}break s}k=H[a+136>>2];j=0;break r}while(1){j=g<<2;k=j+f|0;H[k>>2]=H[k>>2]/(v|0);j=(j|4)+f|0;H[j>>2]=H[j>>2]/(v|0);g=g+2|0;i=i+2|0;if((M|0)!=(i|0)){continue}break}}if(O){f=(g<<2)+f|0;H[f>>2]=H[f>>2]/(v|0)}k=H[a+136>>2];j=0;f=H[h+128>>2];i=0;if(!e){break r}while(1){m=i<<2;g=H[m+f>>2]-H[m+z>>2]|0;H[m+r>>2]=g;H[k+m>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;m=g;g=g>>31;j=(m+g^g)+j|0;i=i+1|0;if((i|0)!=(e|0)){continue}break}}i=h+200|0;Gb(i,K,k,e);g=Fb(i);m=g;g=H[i+12>>2];i=H[i+16>>2];g=(((g-i|0)+1|0)/64|0)+i<<3;k=i<<3;i=g+k|0;i=m+i|0;g=i;if(Q){i=H[_+4>>2];k=H[_>>2];t=U(Hb(k,H[n>>2]+v|0)*(+(k>>>0)+ +(i|0)*4294967296));u:{if(P(t)<0x8000000000000000){i=~~t>>>0;break u}i=0}g=i+g|0}i=H[h+8>>2];if(!((i|0)<=(g|0)&(H[h+12>>2]<=(j|0)|(g|0)>(i|0)))){H[h+20>>2]=v;F[h+16|0]=B;H[h+8>>2]=g;H[h+12>>2]=j;j=H[h+132>>2];m=j-f|0;k=m>>2;i=H[h+32>>2];g=H[h+24>>2];v:{if(k>>>0<=i-g>>2>>>0){m=H[h+28>>2]-g|0;i=m+f|0;p=m>>2;B=p>>>0>>0?i:j;m=B-f|0;if(m){Ia(g,f,m)}if(k>>>0>p>>>0){g=H[h+28>>2];if((j|0)==(B|0)){break v}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}break v}g=g+m|0;break v}if(g){H[h+28>>2]=g;qa(g);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;i=0}if((m|0)<0){break c}g=i>>1;i=i>>2>>>0<536870911?g>>>0>>0?k:g:1073741823;if(i>>>0>=1073741824){break c}i=i<<2;g=ra(i);H[h+24>>2]=g;H[h+28>>2]=g;H[h+32>>2]=g+i;if((f|0)==(j|0)){break v}j=f;f=m&-4;g=sa(g,j,f)+f|0}H[h+28>>2]=g;i=H[h+44>>2];f=H[h+36>>2];w:{if(i-f>>2>>>0>=C>>>0){g=H[h+40>>2]-f|0;i=g+r|0;j=g>>2;k=j>>>0>>0?i:x;g=k-r|0;if(g){Ia(f,r,g)}if(j>>>0>>0){g=H[h+40>>2];if((k|0)==(x|0)){break w}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((x|0)!=(i|0)){continue}break}break w}g=f+g|0;break w}if(f){H[h+40>>2]=f;qa(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;i=0}if((L|0)<0){break c}f=i>>1;f=i>>2>>>0<536870911?f>>>0>>0?C:f:1073741823;if(f>>>0>=1073741824){break c}f=f<<2;g=ra(f);H[h+36>>2]=g;H[h+44>>2]=f+g;if((r|0)==(x|0)){break w}g=sa(g,r,W)+W|0}H[h+40>>2]=g}if(ha){break o}f=-1;k=I[l|0];g=k;while(1){j=g&255;i=f-1|0;m=i+o|0;g=I[m|0];if(j>>>0>g>>>0){j=l;i=o;if((k&255)>>>0<=g>>>0){while(1){k=j;j=j-1|0;p=i-2|0;i=k;if(I[p|0]<=g>>>0){continue}break}k=1}i=f+o|0;F[m|0]=k;F[j|0]=g;g=l;if((f|0)==-1){continue p}while(1){f=I[i|0];F[i|0]=I[g|0];F[g|0]=f;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}continue p}f=i;if((m|0)!=(h+124|0)){continue}break}break}if(l>>>0<=h+124>>>0){break o}f=I[h+124|0];F[h+124|0]=k;F[l|0]=f;g=q;i=aa;if(g>>>0<=i>>>0){break o}while(1){f=I[i|0];F[i|0]=I[g|0];F[g|0]=f;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}}v=v+1|0;if((d|0)!=(w|0)){continue}break}}if(Q){f=H[h+20>>2];g=f;i=g+H[n>>2]|0;f=H[n+4>>2]+(g>>31)|0;H[n>>2]=i;H[n+4>>2]=g>>>0>i>>>0?f+1|0:f}f=H[J>>2];x:{if(!e){break x}i=H[h+36>>2];g=0;k=0;if(G){while(1){l=g<<2;j=H[l+i>>2];H[f+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+i>>2];H[f+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;g=g+2|0;k=k+2|0;if((M|0)!=(k|0)){continue}break}}if(O){g=g<<2;i=H[g+i>>2];H[f+g>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1}f=H[J>>2]}wc(ga,K,f,e);i=0;y:{if((d|0)<=0){break y}j=N(A,12)+a|0;while(1){z:{f=H[j+52>>2];l=f<<5;g=H[j+48>>2];A:{if(!(I[h+16|0]>>>i&1)){B:{C:{if((g|0)!=(l|0)){break C}if((g+1|0)<0){break z}D:{if(g>>>0<=1073741822){l=g+32&-32;f=f<<6;f=f>>>0>>0?l:f;if(g>>>0>=f>>>0){break C}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((f|0)>=0){break D}break c}f=-1;if(g>>>0>2147483646){break B}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;f=2147483647}k=(f-1>>>5|0)+1|0;l=ra(k<<2);f=H[j+44>>2];H[l+((g>>>0<33?0:g-1>>>5|0)<<2)>>2]=0;E:{F:{if(!g){break F}q=g>>>5|0;n=q<<2;o=Ia(l,f,n);q=g-(q<<5)|0;if((q|0)<=0){break F}g=n+o|0;l=g;m=H[g>>2];g=-1>>>32-q|0;H[l>>2]=m&(g^-1)|g&H[f+n>>2];H[j+44>>2]=o;H[j+52>>2]=k;break E}H[j+44>>2]=l;H[j+52>>2]=k;if(!f){break C}}qa(f);g=H[j+48>>2]}f=g}H[j+48>>2]=f+1;g=H[j+44>>2]+(f>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>0<=1073741822){l=g+32&-32;f=f<<6;f=f>>>0>>0?l:f;if(g>>>0>=f>>>0){break H}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((f|0)>=0){break I}break c}f=-1;if(g>>>0>2147483646){break G}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;f=2147483647}k=(f-1>>>5|0)+1|0;l=ra(k<<2);f=H[j+44>>2];H[l+((g>>>0<33?0:g-1>>>5|0)<<2)>>2]=0;J:{K:{if(!g){break K}q=g>>>5|0;n=q<<2;o=Ia(l,f,n);q=g-(q<<5)|0;if((q|0)<=0){break K}g=n+o|0;l=g;m=H[g>>2];g=-1>>>32-q|0;H[l>>2]=m&(g^-1)|g&H[f+n>>2];H[j+44>>2]=o;H[j+52>>2]=k;break J}H[j+44>>2]=l;H[j+52>>2]=k;if(!f){break H}}qa(f);g=H[j+48>>2]}f=g}H[j+48>>2]=f+1;g=H[j+44>>2]+(f>>>3&536870908)|0;l=H[g>>2];ia=g,ja=Vk(f)&l,H[ia>>2]=ja}i=i+1|0;if((i|0)!=(d|0)){continue}break y}break}break c}d=H[h+24>>2];f=H[d>>2];d=H[d+4>>2];i=H[z+4>>2];H[h+232>>2]=H[z>>2];H[h+236>>2]=i;H[h+224>>2]=f;H[h+228>>2]=d;ab(h+200|0,S,h+232|0,h+224|0);d=c+Z|0;H[d>>2]=H[h+200>>2];H[d+4>>2]=H[h+204>>2];d=H[h+36>>2];if(d){H[h+40>>2]=d;qa(d)}d=H[h+24>>2];if(d){H[h+28>>2]=d;qa(d)}if((E|0)<3){break g}E=y;d=H[a+40>>2];i=H[d>>2];f=y-1|0;if(f>>>0>2]-i>>2>>>0){continue}break}}xa();X()}a=H[h+144>>2];if(e){ta(a,0,e<<2);a=H[h+144>>2]}d=H[a>>2];a=H[a+4>>2];e=H[b+4>>2];H[h+200>>2]=H[b>>2];H[h+204>>2]=e;H[h+232>>2]=d;H[h+236>>2]=a;ab(h+8|0,S,h+200|0,h+232|0);H[c>>2]=H[h+8>>2];H[c+4>>2]=H[h+12>>2];if(r){qa(r)}a=H[h+128>>2];if(a){H[h+132>>2]=a;qa(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;qa(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;qa(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;qa(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;qa(a)}da=h+240|0;return 1}ua();X()}function Kj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ia=0,ja=0;g=da-240|0;da=g;$=H[a+36>>2];Q=H[a+32>>2];H[g+184>>2]=0;H[g+188>>2]=0;H[g+176>>2]=0;H[g+180>>2]=0;H[g+168>>2]=0;H[g+172>>2]=0;H[g+160>>2]=0;H[g+164>>2]=0;H[g+152>>2]=0;H[g+156>>2]=0;H[g+144>>2]=0;H[g+148>>2]=0;if(e){Ha(g+144|0,e);h=H[g+160>>2];d=H[g+156>>2]}else{d=0}f=h-d>>2;a:{if(f>>>0>=e>>>0){if(e>>>0>=f>>>0){break a}H[g+160>>2]=d+(e<<2);break a}Ha(g+144|12,e-f|0)}f=H[g+168>>2];d=H[g+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}H[g+172>>2]=f+(e<<2);break b}Ha(g+168|0,e-d|0)}c:{f=H[g+180>>2];d=H[g+184>>2]-f>>2;d:{e:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[g+184>>2]=f+(e<<2)}H[g+136>>2]=0;H[g+128>>2]=0;H[g+132>>2]=0;if(e){break e}d=1;break d}Ha(g+180|0,e-d|0);H[g+136>>2]=0;H[g+128>>2]=0;H[g+132>>2]=0}if(e>>>0>=1073741824){break c}d=e<<2;f=ra(d);H[g+128>>2]=f;h=d+f|0;H[g+136>>2]=h;ta(f,0,d);H[g+132>>2]=h;d=0}G=a+136|0;h=H[a+136>>2];f=H[a+140>>2]-h>>2;f:{if(f>>>0>>0){Ha(G,e-f|0);break f}if(e>>>0>=f>>>0){break f}H[a+140>>2]=h+(e<<2)}H[g+104>>2]=0;H[g+108>>2]=0;H[g+96>>2]=0;H[g+100>>2]=0;H[g+88>>2]=0;H[g+92>>2]=0;H[g+80>>2]=0;H[g+84>>2]=0;H[g+72>>2]=0;H[g+76>>2]=0;f=g- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;if(!d){d=e<<2;r=ra(d);w=ta(r,0,d)+d|0}S=a+8|0;d=H[a+40>>2];h=H[d>>2];g:{d=H[d+4>>2]-h|0;if((d|0)<5){break g}C=d>>>2|0;f=C-1|0;if(f>>>0>2>>>0){J=a+96|0;aa=g+125|0;ba=g+36|0;ca=g+24|0;V=e<<2;K=w-r|0;W=K&-4;A=K>>2;L=e&-2;M=e&1;fa=e&-4;Y=e&3;D=e-1|0;while(1){x=f;i=H[(f<<2)+h>>2];d=(i>>>0)%3|0;n=0;h:{if((i|0)==-1){break h}f=0;h=i+2|0;l=(d|0)!=0|(h|0)!=-1;k=H[Q+12>>2];y=k+((d?i-1|0:h)<<2)|0;s=1;h=i;while(1){d=H[k+(h<<2)>>2];i:{if((d|0)==-1){break i}j=H[$>>2];n=H[Q>>2];o=H[j+(H[n+(d<<2)>>2]<<2)>>2];m=d+1|0;m=(m>>>0)%3|0?m:d-2|0;if((m|0)!=-1){m=H[n+(m<<2)>>2]}else{m=-1}j:{k:{if((d>>>0)%3|0){d=d-1|0;break k}d=d+2|0;p=-1;if((d|0)==-1){break j}}p=H[n+(d<<2)>>2]}if((o|0)>=(x|0)){break i}d=H[(m<<2)+j>>2];if((d|0)>=(x|0)){break i}j=H[j+(p<<2)>>2];if((j|0)>=(x|0)){break i}n=H[(g+144|0)+N(f,12)>>2];l:{if(!e){break l}j=N(e,j);m=N(d,e);o=N(e,o);d=0;v=0;if(D){while(1){H[n+(d<<2)>>2]=(H[(d+j<<2)+b>>2]+H[(d+m<<2)+b>>2]|0)-H[(d+o<<2)+b>>2];p=d|1;H[n+(p<<2)>>2]=(H[(j+p<<2)+b>>2]+H[(m+p<<2)+b>>2]|0)-H[(o+p<<2)+b>>2];d=d+2|0;v=v+2|0;if((L|0)!=(v|0)){continue}break}}if(!M){break l}H[n+(d<<2)>>2]=(H[(d+j<<2)+b>>2]+H[(d+m<<2)+b>>2]|0)-H[(d+o<<2)+b>>2]}n=4;f=f+1|0;if((f|0)==4){break h}}m:{if(s&1){d=h+1|0;d=(d>>>0)%3|0?d:h-2|0;h=-1;if((d|0)==-1){break m}d=H[k+(d<<2)>>2];h=-1;if((d|0)==-1){break m}h=d+1|0;h=(h>>>0)%3|0?h:d-2|0;break m}n:{if((h>>>0)%3|0){d=h-1|0;break n}d=h+2|0;h=-1;if((d|0)==-1){break m}}d=H[k+(d<<2)>>2];h=-1;if((d|0)==-1){break m}h=d-1|0;if((d>>>0)%3|0){break m}h=d+2|0}if((i|0)==(h|0)){n=f;break h}if(!((s^1)&1|(h|0)!=-1)){if(!l){n=f;break h}d=H[y>>2];if((d|0)==-1){n=f;break h}s=0;h=(d>>>0)%3|0?d-1|0:d+2|0}n=f;if((h|0)!=-1){continue}break}}h=0;F[g+16|0]=0;H[g+8>>2]=0;H[g+12>>2]=0;H[g+44>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;H[g+28>>2]=0;H[g+32>>2]=0;H[g+20>>2]=0;H[g+24>>2]=0;Z=N(e,x)<<2;y=Z+b|0;k=(N(C-2|0,e)<<2)+b|0;j=H[a+136>>2];f=0;if(e){while(1){i=f<<2;d=H[i+k>>2]-H[i+y>>2]|0;H[i+r>>2]=d;H[i+j>>2]=(d|0)>=0?d<<1:(d^-1)<<1|1;i=d;d=d>>31;h=(i+d^d)+h|0;f=f+1|0;if((f|0)!=(e|0)){continue}break}}d=g+200|0;Gb(d,J,j,e);f=Fb(d);j=ea;o=f;f=H[d+12>>2];d=H[d+16>>2];f=(((f-d|0)+1|0)/64|0)+d<<3;i=d<<3;m=i;d=f+i|0;i=(f>>31)+(i>>31)|0;i=d>>>0>>0?i+1|0:i;m=d;f=o+d|0;d=i+j|0;d=f>>>0>>0?d+1|0:d;i=f;O=(n|0)>0;o:{if(!O){E=n-1|0;break o}E=n-1|0;m=E<<3;f=m+(g+48|0)|0;o=f;j=n+H[f>>2]|0;f=H[f+4>>2];f=j>>>0>>0?f+1|0:f;H[o>>2]=j;H[o+4>>2]=f;u=U(Hb(j,H[m+(g+80|0)>>2])*(+(j>>>0)+ +(f|0)*4294967296));p:{if(P(u)<0x8000000000000000){j=P(u)>=1?~~(u>0?R(T(u*2.3283064365386963e-10),4294967295):U((u-+(~~u>>>0>>>0))*2.3283064365386963e-10))>>>0:0;f=~~u>>>0;break p}j=-2147483648;f=0}f=f+i|0;i=f}v=0;H[g+20>>2]=0;F[g+16|0]=0;H[g+8>>2]=i;H[g+12>>2]=h;eb(ca,k,k+V|0);Ec(ba,r,w);d=E<<3;m=d+(g+80|0)|0;ga=g+200|0;if((n|0)>0){f=g+124|0;o=f+n|0;p=o-2|0;k=o-1|0;ha=!n|(k|0)==(f|0);_=d+(g+48|0)|0;s=1;while(1){v=v+1|0;if((n|0)>0){ta(g+124|0,1,n)}ta(g+124|0,0,v);q:{r:while(1){if(e){ta(H[g+128>>2],0,V)}z=0;f=0;if((n|0)>0){while(1){if(!I[(g+124|0)+f|0]){s:{if(!e){break s}h=H[g+128>>2];l=H[(g+144|0)+N(f,12)>>2];i=0;d=0;j=0;if(D>>>0>2){while(1){q=d<<2;t=q+h|0;H[t>>2]=H[t>>2]+H[l+q>>2];t=q|4;B=t+h|0;H[B>>2]=H[B>>2]+H[l+t>>2];t=q|8;B=t+h|0;H[B>>2]=H[B>>2]+H[l+t>>2];q=q|12;t=q+h|0;H[t>>2]=H[t>>2]+H[l+q>>2];d=d+4|0;j=j+4|0;if((fa|0)!=(j|0)){continue}break}}if(!Y){break s}while(1){j=d<<2;q=j+h|0;H[q>>2]=H[q>>2]+H[j+l>>2];d=d+1|0;i=i+1|0;if((Y|0)!=(i|0)){continue}break}}z=1<>2];t:{u:{v:{if(e){d=0;h=0;if(D){break v}break u}j=H[a+136>>2];i=0;break t}while(1){i=d<<2;j=i+f|0;H[j>>2]=H[j>>2]/(s|0);i=(i|4)+f|0;H[i>>2]=H[i>>2]/(s|0);d=d+2|0;h=h+2|0;if((L|0)!=(h|0)){continue}break}}if(M){d=(d<<2)+f|0;H[d>>2]=H[d>>2]/(s|0)}j=H[a+136>>2];i=0;f=H[g+128>>2];h=0;if(!e){break t}while(1){l=h<<2;d=H[l+f>>2]-H[l+y>>2]|0;H[l+r>>2]=d;H[j+l>>2]=(d|0)>=0?d<<1:(d^-1)<<1|1;l=d;d=d>>31;i=(l+d^d)+i|0;h=h+1|0;if((h|0)!=(e|0)){continue}break}}d=g+200|0;Gb(d,J,j,e);h=Fb(d);l=h;h=H[d+12>>2];d=H[d+16>>2];j=(((h-d|0)+1|0)/64|0)+d<<3;d=d<<3;h=j+d|0;d=l+h|0;if(O){h=H[_+4>>2];j=H[_>>2];u=U(Hb(j,H[m>>2]+s|0)*(+(j>>>0)+ +(h|0)*4294967296));w:{if(P(u)<0x8000000000000000){h=~~u>>>0;break w}h=0}d=h+d|0}h=H[g+8>>2];if(!((h|0)<=(d|0)&(H[g+12>>2]<=(i|0)|(d|0)>(h|0)))){H[g+20>>2]=s;F[g+16|0]=z;H[g+8>>2]=d;H[g+12>>2]=i;i=H[g+132>>2];l=i-f|0;j=l>>2;h=H[g+32>>2];d=H[g+24>>2];x:{if(j>>>0<=h-d>>2>>>0){l=H[g+28>>2]-d|0;h=l+f|0;q=l>>2;z=q>>>0>>0?h:i;l=z-f|0;if(l){Ia(d,f,l)}if(j>>>0>q>>>0){d=H[g+28>>2];if((i|0)==(z|0)){break x}while(1){H[d>>2]=H[h>>2];d=d+4|0;h=h+4|0;if((i|0)!=(h|0)){continue}break}break x}d=d+l|0;break x}if(d){H[g+28>>2]=d;qa(d);H[g+32>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;h=0}if((l|0)<0){break c}d=h>>1;d=h>>2>>>0<536870911?d>>>0>>0?j:d:1073741823;if(d>>>0>=1073741824){break c}h=d<<2;d=ra(h);H[g+24>>2]=d;H[g+28>>2]=d;H[g+32>>2]=d+h;if((f|0)==(i|0)){break x}h=d;d=l&-4;d=sa(h,f,d)+d|0}H[g+28>>2]=d;h=H[g+44>>2];d=H[g+36>>2];y:{if(h-d>>2>>>0>=A>>>0){f=H[g+40>>2]-d|0;h=f+r|0;i=f>>2;j=i>>>0>>0?h:w;f=j-r|0;if(f){Ia(d,r,f)}if(i>>>0>>0){d=H[g+40>>2];if((j|0)==(w|0)){break y}while(1){H[d>>2]=H[h>>2];d=d+4|0;h=h+4|0;if((w|0)!=(h|0)){continue}break}break y}d=d+f|0;break y}if(d){H[g+40>>2]=d;qa(d);H[g+44>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;h=0}if((K|0)<0){break c}d=h>>1;d=h>>2>>>0<536870911?d>>>0>>0?A:d:1073741823;if(d>>>0>=1073741824){break c}f=d<<2;d=ra(f);H[g+36>>2]=d;H[g+44>>2]=d+f;if((r|0)==(w|0)){break y}d=sa(d,r,W)+W|0}H[g+40>>2]=d}if(ha){break q}f=-1;j=I[k|0];d=j;while(1){i=d&255;h=f-1|0;l=h+o|0;d=I[l|0];if(i>>>0>d>>>0){i=k;h=o;if((j&255)>>>0<=d>>>0){while(1){j=i;i=i-1|0;q=h-2|0;h=j;if(I[q|0]<=d>>>0){continue}break}j=1}h=f+o|0;F[l|0]=j;F[i|0]=d;d=k;if((f|0)==-1){continue r}while(1){f=I[h|0];F[h|0]=I[d|0];F[d|0]=f;d=d-1|0;h=h+1|0;if(d>>>0>h>>>0){continue}break}continue r}f=h;if((l|0)!=(g+124|0)){continue}break}break}if(k>>>0<=g+124>>>0){break q}d=I[g+124|0];F[g+124|0]=j;F[k|0]=d;d=p;h=aa;if(d>>>0<=h>>>0){break q}while(1){f=I[h|0];F[h|0]=I[d|0];F[d|0]=f;d=d-1|0;h=h+1|0;if(d>>>0>h>>>0){continue}break}}s=s+1|0;if((n|0)!=(v|0)){continue}break}}if(O){d=H[g+20>>2];h=d;f=d+H[m>>2]|0;d=H[m+4>>2]+(d>>31)|0;H[m>>2]=f;H[m+4>>2]=f>>>0>>0?d+1|0:d}f=H[G>>2];z:{if(!e){break z}h=H[g+36>>2];d=0;j=0;if(D){while(1){k=d<<2;i=H[k+h>>2];H[f+k>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;k=k|4;i=H[k+h>>2];H[f+k>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;d=d+2|0;j=j+2|0;if((L|0)!=(j|0)){continue}break}}if(M){i=h;h=d<<2;d=H[i+h>>2];H[f+h>>2]=(d|0)>=0?d<<1:(d^-1)<<1|1}f=H[G>>2]}wc(ga,J,f,e);h=0;A:{if((n|0)<=0){break A}i=N(E,12)+a|0;while(1){B:{f=H[i+52>>2];k=f<<5;d=H[i+48>>2];C:{if(!(I[g+16|0]>>>h&1)){D:{E:{if((d|0)!=(k|0)){break E}if((d+1|0)<0){break B}F:{if(d>>>0<=1073741822){k=d+32&-32;f=f<<6;f=f>>>0>>0?k:f;if(f>>>0<=d>>>0){break E}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((f|0)>=0){break F}break c}f=-1;if(d>>>0>2147483646){break D}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;f=2147483647}j=(f-1>>>5|0)+1|0;k=ra(j<<2);f=H[i+44>>2];H[k+((d>>>0<33?0:d-1>>>5|0)<<2)>>2]=0;G:{H:{if(!d){break H}p=d>>>5|0;m=p<<2;o=Ia(k,f,m);p=d-(p<<5)|0;if((p|0)<=0){break H}d=m+o|0;k=d;l=H[d>>2];d=-1>>>32-p|0;H[k>>2]=l&(d^-1)|d&H[f+m>>2];H[i+44>>2]=o;H[i+52>>2]=j;break G}H[i+44>>2]=k;H[i+52>>2]=j;if(!f){break E}}qa(f);d=H[i+48>>2]}f=d}H[i+48>>2]=f+1;d=H[i+44>>2]+(f>>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>>0<=1073741822){k=d+32&-32;f=f<<6;f=f>>>0>>0?k:f;if(f>>>0<=d>>>0){break J}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;if((f|0)>=0){break K}break c}f=-1;if(d>>>0>2147483646){break I}H[g+208>>2]=0;H[g+200>>2]=0;H[g+204>>2]=0;f=2147483647}j=(f-1>>>5|0)+1|0;k=ra(j<<2);f=H[i+44>>2];H[k+((d>>>0<33?0:d-1>>>5|0)<<2)>>2]=0;L:{M:{if(!d){break M}p=d>>>5|0;m=p<<2;o=Ia(k,f,m);p=d-(p<<5)|0;if((p|0)<=0){break M}d=m+o|0;k=d;l=H[d>>2];d=-1>>>32-p|0;H[k>>2]=l&(d^-1)|d&H[f+m>>2];H[i+44>>2]=o;H[i+52>>2]=j;break L}H[i+44>>2]=k;H[i+52>>2]=j;if(!f){break J}}qa(f);d=H[i+48>>2]}f=d}H[i+48>>2]=f+1;d=H[i+44>>2]+(f>>>3&536870908)|0;k=H[d>>2];ia=d,ja=Vk(f)&k,H[ia>>2]=ja}h=h+1|0;if((n|0)!=(h|0)){continue}break A}break}break c}d=H[g+24>>2];f=H[d>>2];d=H[d+4>>2];h=H[y+4>>2];H[g+232>>2]=H[y>>2];H[g+236>>2]=h;H[g+224>>2]=f;H[g+228>>2]=d;ab(g+200|0,S,g+232|0,g+224|0);d=c+Z|0;H[d>>2]=H[g+200>>2];H[d+4>>2]=H[g+204>>2];d=H[g+36>>2];if(d){H[g+40>>2]=d;qa(d)}d=H[g+24>>2];if(d){H[g+28>>2]=d;qa(d)}if((C|0)<3){break g}C=x;d=H[a+40>>2];h=H[d>>2];f=x-1|0;if(f>>>0>2]-h>>2>>>0){continue}break}}xa();X()}a=H[g+144>>2];if(e){ta(a,0,e<<2);a=H[g+144>>2]}d=H[a>>2];a=H[a+4>>2];e=H[b+4>>2];H[g+200>>2]=H[b>>2];H[g+204>>2]=e;H[g+232>>2]=d;H[g+236>>2]=a;ab(g+8|0,S,g+200|0,g+232|0);H[c>>2]=H[g+8>>2];H[c+4>>2]=H[g+12>>2];if(r){qa(r)}a=H[g+128>>2];if(a){H[g+132>>2]=a;qa(a)}a=H[g+180>>2];if(a){H[g+184>>2]=a;qa(a)}a=H[g+168>>2];if(a){H[g+172>>2]=a;qa(a)}a=H[g+156>>2];if(a){H[g+160>>2]=a;qa(a)}a=H[g+144>>2];if(a){H[g+148>>2]=a;qa(a)}da=g+240|0;return 1}ua();X()}function de(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=da-16|0;da=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=H[4780];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=H[b+19168>>2];a=f+8|0;c=H[f+8>>2];b=b+19160|0;l:{if((c|0)==(b|0)){m=19120,n=Vk(d)&e,H[m>>2]=n;break l}H[c+12>>2]=b;H[b+8>>2]=c}b=d<<3;H[f+4>>2]=b|3;b=b+f|0;H[b+4>>2]=H[b+4>>2]|1;break a}k=H[4782];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=H[a+19168>>2];b=H[g+8>>2];a=a+19160|0;m:{if((b|0)==(a|0)){e=Vk(c)&e;H[4780]=e;break m}H[b+12>>2]=a;H[a+8>>2]=b}a=g+8|0;H[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;H[d+4>>2]=f|1;H[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+19160|0;g=H[4785];b=1<>2]}H[c+8>>2]=g;H[b+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=b}H[4785]=d;H[4782]=f;break a}j=H[4781];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=H[((c|a)+(b>>>a|0)<<2)+19424>>2];d=(H[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=H[c+16>>2];if(!a){a=H[c+20>>2];if(!a){break o}}c=(H[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=H[b+24>>2];f=H[b+12>>2];if((f|0)!=(b|0)){a=H[b+8>>2];H[a+12>>2]=f;H[f+8>>2]=a;break b}c=b+20|0;a=H[c>>2];if(!a){a=H[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=H[c>>2];if(a){continue}c=f+16|0;a=H[f+16>>2];if(a){continue}break}H[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=H[4781];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=H[(e<<2)+19424>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(H[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=H[c+20>>2];c=H[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=H[((c|a)+(b>>>a|0)<<2)+19424>>2]}if(!a){break q}}while(1){b=(H[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=H[a+16>>2];if(b){a=b}else{a=H[a+20>>2]}if(a){continue}break}}if(!f|H[4782]-h>>>0<=d>>>0){break k}e=H[f+24>>2];b=H[f+12>>2];if((f|0)!=(b|0)){a=H[f+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break c}c=f+20|0;a=H[c>>2];if(!a){a=H[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=H[c>>2];if(a){continue}c=b+16|0;a=H[b+16>>2];if(a){continue}break}H[g>>2]=0;break c}c=H[4782];if(c>>>0>=h>>>0){d=H[4785];b=c-h|0;u:{if(b>>>0>=16){H[4782]=b;a=d+h|0;H[4785]=a;H[a+4>>2]=b|1;H[c+d>>2]=b;H[d+4>>2]=h|3;break u}H[4785]=0;H[4782]=0;H[d+4>>2]=c|3;a=c+d|0;H[a+4>>2]=H[a+4>>2]|1}a=d+8|0;break a}i=H[4783];if(i>>>0>h>>>0){b=i-h|0;H[4783]=b;c=H[4786];a=c+h|0;H[4786]=a;H[a+4>>2]=b|1;H[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(H[4898]){c=H[4900]}else{H[4901]=-1;H[4902]=-1;H[4899]=4096;H[4900]=4096;H[4898]=l+12&-16^1431655768;H[4903]=0;H[4891]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=H[4890];if(d){b=H[4888];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(I[19564]&4){break f}v:{w:{d=H[4786];if(d){a=19568;while(1){b=H[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=H[a+8>>2];if(a){continue}break}}b=Jb(0);if((b|0)==-1){break g}e=c;d=H[4899];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=H[4890];if(d){a=H[4888];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=Jb(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=Jb(e);if((b|0)==(H[a>>2]+H[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=H[4900];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((Jb(b)|0)!=-1){e=b+e|0;b=a;break e}Jb(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}H[4891]=H[4891]|4}if(c>>>0>2147483646){break d}b=Jb(c);a=Jb(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=H[4888]+e|0;H[4888]=a;if(a>>>0>K[4889]){H[4889]=a}x:{y:{z:{g=H[4786];if(g){a=19568;while(1){d=H[a>>2];c=H[a+4>>2];if((d+c|0)==(b|0)){break z}a=H[a+8>>2];if(a){continue}break}break y}a=H[4784];if(!(a>>>0<=b>>>0?a:0)){H[4784]=b}a=0;H[4893]=e;H[4892]=b;H[4788]=-1;H[4789]=H[4898];H[4895]=0;while(1){d=a<<3;c=d+19160|0;H[d+19168>>2]=c;H[d+19172>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[4783]=c;a=a+b|0;H[4786]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[4787]=H[4902];break x}if(I[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}H[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;H[4786]=c;b=H[4783]+e|0;a=b-a|0;H[4783]=a;H[c+4>>2]=a|1;H[(b+g|0)+4>>2]=40;H[4787]=H[4902];break x}if(K[4784]>b>>>0){H[4784]=b}c=b+e|0;a=19568;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=H[a>>2]){a=H[a+8>>2];if(a){continue}break F}break}if(!(I[a+12|0]&8)){break E}}a=19568;while(1){c=H[a>>2];if(c>>>0<=g>>>0){f=c+H[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=H[a+8>>2];continue}}H[a>>2]=b;H[a+4>>2]=H[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;H[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){H[4786]=i;a=H[4783]+c|0;H[4783]=a;H[i+4>>2]=a|1;break B}if(H[4785]==(e|0)){H[4785]=i;a=H[4782]+c|0;H[4782]=a;H[i+4>>2]=a|1;H[a+i>>2]=a;break B}a=H[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=H[e+8>>2];a=a>>>3|0;b=H[e+12>>2];if((b|0)==(d|0)){m=19120,n=H[4780]&Vk(a),H[m>>2]=n;break G}H[d+12>>2]=b;H[b+8>>2]=d;break G}h=H[e+24>>2];b=H[e+12>>2];H:{if((e|0)!=(b|0)){a=H[e+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break H}I:{a=e+20|0;d=H[a>>2];if(d){break I}a=e+16|0;d=H[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=H[a>>2];if(d){continue}a=b+16|0;d=H[b+16>>2];if(d){continue}break}H[f>>2]=0}if(!h){break G}d=H[e+28>>2];a=(d<<2)+19424|0;J:{if(H[a>>2]==(e|0)){H[a>>2]=b;if(b){break J}m=19124,n=H[4781]&Vk(d),H[m>>2]=n;break G}H[h+(H[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}H[b+24>>2]=h;a=H[e+16>>2];if(a){H[b+16>>2]=a;H[a+24>>2]=b}a=H[e+20>>2];if(!a){break G}H[b+20>>2]=a;H[a+24>>2]=b}e=e+g|0;c=c+g|0}H[e+4>>2]=H[e+4>>2]&-2;H[i+4>>2]=c|1;H[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+19160|0;c=H[4780];a=1<>2]}H[b+8>>2]=i;H[a+12>>2]=i;H[i+12>>2]=b;H[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}H[i+28>>2]=a;H[i+16>>2]=0;H[i+20>>2]=0;f=(a<<2)+19424|0;d=H[4781];b=1<>2]=i;H[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[f>>2];while(1){d=b;if((H[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=H[f+16>>2];if(b){continue}break}H[f+16>>2]=i;H[i+24>>2]=d}H[i+12>>2]=i;H[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[4783]=c;a=a+b|0;H[4786]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[4787]=H[4902];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;H[c+4>>2]=27;a=H[4895];H[c+16>>2]=H[4894];H[c+20>>2]=a;a=H[4893];H[c+8>>2]=H[4892];H[c+12>>2]=a;H[4894]=c+8;H[4893]=e;H[4892]=b;H[4895]=0;a=c+24|0;while(1){H[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}H[c+4>>2]=H[c+4>>2]&-2;f=c-g|0;H[g+4>>2]=f|1;H[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+19160|0;c=H[4780];a=1<>2]}H[b+8>>2]=g;H[a+12>>2]=g;H[g+12>>2]=b;H[g+8>>2]=a;break x}a=31;H[g+16>>2]=0;H[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}H[g+28>>2]=a;d=(a<<2)+19424|0;c=H[4781];b=1<>2]=g;H[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[d>>2];while(1){c=b;if((f|0)==(H[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=H[d+16>>2];if(b){continue}break}H[d+16>>2]=g;H[g+24>>2]=c}H[g+12>>2]=g;H[g+8>>2]=g;break x}a=H[d+8>>2];H[a+12>>2]=i;H[d+8>>2]=i;H[i+24>>2]=0;H[i+12>>2]=d;H[i+8>>2]=a}a=j+8|0;break a}a=H[c+8>>2];H[a+12>>2]=g;H[c+8>>2]=g;H[g+24>>2]=0;H[g+12>>2]=c;H[g+8>>2]=a}a=H[4783];if(a>>>0<=h>>>0){break d}b=a-h|0;H[4783]=b;c=H[4786];a=c+h|0;H[4786]=a;H[a+4>>2]=b|1;H[c+4>>2]=h|3;a=c+8|0;break a}H[4736]=48;a=0;break a}O:{if(!e){break O}c=H[f+28>>2];a=(c<<2)+19424|0;P:{if(H[a>>2]==(f|0)){H[a>>2]=b;if(b){break P}j=Vk(c)&j;H[4781]=j;break O}H[e+(H[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}H[b+24>>2]=e;a=H[f+16>>2];if(a){H[b+16>>2]=a;H[a+24>>2]=b}a=H[f+20>>2];if(!a){break O}H[b+20>>2]=a;H[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;H[f+4>>2]=a|3;a=a+f|0;H[a+4>>2]=H[a+4>>2]|1;break Q}H[f+4>>2]=h|3;e=f+h|0;H[e+4>>2]=d|1;H[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+19160|0;c=H[4780];a=1<>2]}H[b+8>>2]=e;H[a+12>>2]=e;H[e+12>>2]=b;H[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}H[e+28>>2]=a;H[e+16>>2]=0;H[e+20>>2]=0;b=(a<<2)+19424|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=H[b>>2];while(1){b=h;if((H[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=H[c+16>>2];if(h){continue}break}H[c+16>>2]=e}H[e+24>>2]=b;H[e+12>>2]=e;H[e+8>>2]=e;break Q}a=H[b+8>>2];H[a+12>>2]=e;H[b+8>>2]=e;H[e+24>>2]=0;H[e+12>>2]=b;H[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=H[b+28>>2];a=(c<<2)+19424|0;V:{if(H[a>>2]==(b|0)){H[a>>2]=f;if(f){break V}m=19124,n=Vk(c)&j,H[m>>2]=n;break U}H[i+(H[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}H[f+24>>2]=i;a=H[b+16>>2];if(a){H[f+16>>2]=a;H[a+24>>2]=f}a=H[b+20>>2];if(!a){break U}H[f+20>>2]=a;H[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;H[b+4>>2]=a|3;a=a+b|0;H[a+4>>2]=H[a+4>>2]|1;break W}H[b+4>>2]=h|3;f=b+h|0;H[f+4>>2]=d|1;H[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+19160|0;g=H[4785];a=1<>2]}H[c+8>>2]=g;H[a+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=a}H[4785]=f;H[4782]=d}a=b+8|0}da=l+16|0;return a|0}function Zg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=O(0),s=0,t=0;f=da+-64|0;da=f;m=H[a+28>>2];o=H[m+4>>2];h=H[a+8>>2];c=H[a+4>>2];e=h-c|0;a:{if(!e){break a}e=e>>2;e=e>>>0>1?e:1;k=e&3;p=H[o+8>>2];if(e-1>>>0>=3){e=e&-4;while(1){j=i;i=b<<2;i=(((j+F[H[p+(H[i+c>>2]<<2)>>2]+24|0]|0)+F[H[p+(H[(i|4)+c>>2]<<2)>>2]+24|0]|0)+F[H[p+(H[(i|8)+c>>2]<<2)>>2]+24|0]|0)+F[H[p+(H[(i|12)+c>>2]<<2)>>2]+24|0]|0;b=b+4|0;d=d+4|0;if((e|0)!=(d|0)){continue}break}}if(!k){break a}while(1){i=F[H[p+(H[(b<<2)+c>>2]<<2)>>2]+24|0]+i|0;b=b+1|0;g=g+1|0;if((k|0)!=(g|0)){continue}break}}p=H[o+80>>2];H[a+72>>2]=i;b:{b=1;c:{if((c|0)==(h|0)){break c}while(1){d:{k=H[(q<<2)+c>>2];H[f+60>>2]=k;e:{f:{g:{h:{i:{n=H[H[o+8>>2]+(k<<2)>>2];switch(H[n+28>>2]-1|0){case 0:case 2:case 4:break h;case 8:break i;default:break e}}H[f+36>>2]=-1;H[f+32>>2]=1140;H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;d=H[m+48>>2];e=ra(32);H[f+16>>2]=e;H[f+20>>2]=17;H[f+24>>2]=-2147483616;F[e+17|0]=0;F[e+16|0]=I[1373];c=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);b=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[e+8|0]=b;F[e+9|0]=b>>>8;F[e+10|0]=b>>>16;F[e+11|0]=b>>>24;F[e+12|0]=c;F[e+13|0]=c>>>8;F[e+14|0]=c>>>16;F[e+15|0]=c>>>24;c=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);b=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[e|0]=b;F[e+1|0]=b>>>8;F[e+2|0]=b>>>16;F[e+3|0]=b>>>24;F[e+4|0]=c;F[e+5|0]=c>>>8;F[e+6|0]=c>>>16;F[e+7|0]=c>>>24;h=d+16|0;b=h;c=H[b>>2];j:{if(!c){break j}while(1){g=(k|0)>H[c+16>>2];b=g?b:c;c=H[(g<<2)+c>>2];if(c){continue}break}if((b|0)==(h|0)|(k|0)>2]){break j}c=H[b+24>>2];if(!c){break j}b=b+20|0;while(1){g=I[c+27|0];h=g<<24>>24<0;j=h?H[c+20>>2]:g;i=j>>>0<17;k:{l:{k=i?j:17;m:{if(k){g=c+16|0;h=h?H[g>>2]:g;g=Ca(e,h,k);n:{if(!g){if(j>>>0<=17){break n}break k}if((g|0)<0){break k}}g=Ca(h,e,k);if(!g){break m}if((g|0)<0){break l}d=b;break j}if(j>>>0>17){break k}}if(i){break l}d=b;break j}c=c+4|0}c=H[c>>2];if(c){continue}break}}m=gb(d,f+16|0,-1);if(F[f+27|0]<0){qa(H[f+16>>2])}if((m|0)<=0){break d}e=H[H[a+28>>2]+48>>2];g=ra(32);H[f+16>>2]=g;H[f+20>>2]=19;H[f+24>>2]=-2147483616;b=0;F[g+19|0]=0;d=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[g+15|0]=d;F[g+16|0]=d>>>8;F[g+17|0]=d>>>16;F[g+18|0]=d>>>24;c=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);d=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[g+8|0]=d;F[g+9|0]=d>>>8;F[g+10|0]=d>>>16;F[g+11|0]=d>>>24;F[g+12|0]=c;F[g+13|0]=c>>>8;F[g+14|0]=c>>>16;F[g+15|0]=c>>>24;c=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);d=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[g|0]=d;F[g+1|0]=d>>>8;F[g+2|0]=d>>>16;F[g+3|0]=d>>>24;F[g+4|0]=c;F[g+5|0]=c>>>8;F[g+6|0]=c>>>16;F[g+7|0]=c>>>24;o:{if(!gc(e,f+60|0,f+16|0)){break o}e=H[H[a+28>>2]+48>>2];c=ra(32);H[f>>2]=c;H[f+4>>2]=18;H[f+8>>2]=-2147483616;F[c+18|0]=0;b=I[1706]|I[1707]<<8;F[c+16|0]=b;F[c+17|0]=b>>>8;d=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);b=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[c+8|0]=b;F[c+9|0]=b>>>8;F[c+10|0]=b>>>16;F[c+11|0]=b>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);b=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[c|0]=b;F[c+1|0]=b>>>8;F[c+2|0]=b>>>16;F[c+3|0]=b>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;b=gc(e,f+60|0,f);if(F[f+11|0]>=0){break o}qa(H[f>>2])}if(F[f+27|0]<0){qa(H[f+16>>2])}if(!b){break g}b=F[n+24|0];o=0;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;p:{if(b){if((b|0)<0){break p}e=b<<2;o=ra(e);H[f+16>>2]=o;b=e+o|0;H[f+24>>2]=b;ta(o,0,e);H[f+20>>2]=b}e=H[H[a+28>>2]+48>>2];l=ra(32);H[f>>2]=l;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[l+19|0]=0;b=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[l+15|0]=b;F[l+16|0]=b>>>8;F[l+17|0]=b>>>16;F[l+18|0]=b>>>24;d=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);b=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[l+8|0]=b;F[l+9|0]=b>>>8;F[l+10|0]=b>>>16;F[l+11|0]=b>>>24;F[l+12|0]=d;F[l+13|0]=d>>>8;F[l+14|0]=d>>>16;F[l+15|0]=d>>>24;d=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);b=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[l|0]=b;F[l+1|0]=b>>>8;F[l+2|0]=b>>>16;F[l+3|0]=b>>>24;F[l+4|0]=d;F[l+5|0]=d>>>8;F[l+6|0]=d>>>16;F[l+7|0]=d>>>24;h=F[n+24|0];d=e+16|0;c=H[d>>2];q:{if(!c){break q}k=H[f+60>>2];b=d;while(1){g=(k|0)>H[c+16>>2];b=g?b:c;c=H[(g<<2)+c>>2];if(c){continue}break}if((b|0)==(d|0)|(k|0)>2]){break q}c=H[b+24>>2];if(!c){break q}b=b+20|0;while(1){d=I[c+27|0];g=d<<24>>24<0;j=g?H[c+20>>2]:d;i=j>>>0<19;r:{s:{k=i?j:19;t:{if(k){d=c+16|0;g=g?H[d>>2]:d;d=Ca(l,g,k);u:{if(!d){if(j>>>0<=19){break u}break r}if((d|0)<0){break r}}d=Ca(g,l,k);if(!d){break t}if((d|0)<0){break s}e=b;break q}if(j>>>0>19){break r}}if(i){break s}e=b;break q}c=c+4|0}c=H[c>>2];if(c){continue}break}}$d(e,f,h,o);if(F[f+11|0]<0){qa(H[f>>2])}e=H[H[a+28>>2]+48>>2];j=ra(32);H[f>>2]=j;H[f+4>>2]=18;H[f+8>>2]=-2147483616;F[j+18|0]=0;b=I[1706]|I[1707]<<8;F[j+16|0]=b;F[j+17|0]=b>>>8;d=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);b=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[j+8|0]=b;F[j+9|0]=b>>>8;F[j+10|0]=b>>>16;F[j+11|0]=b>>>24;F[j+12|0]=d;F[j+13|0]=d>>>8;F[j+14|0]=d>>>16;F[j+15|0]=d>>>24;d=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);b=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[j|0]=b;F[j+1|0]=b>>>8;F[j+2|0]=b>>>16;F[j+3|0]=b>>>24;F[j+4|0]=d;F[j+5|0]=d>>>8;F[j+6|0]=d>>>16;F[j+7|0]=d>>>24;d=e+16|0;c=H[d>>2];v:{if(!c){break v}h=H[f+60>>2];b=d;while(1){g=(h|0)>H[c+16>>2];b=g?b:c;c=H[(g<<2)+c>>2];if(c){continue}break}if((b|0)==(d|0)|(h|0)>2]){break v}c=H[b+24>>2];if(!c){break v}b=b+20|0;while(1){d=I[c+27|0];g=d<<24>>24<0;i=g?H[c+20>>2]:d;k=i>>>0<18;w:{x:{h=k?i:18;y:{if(h){d=c+16|0;g=g?H[d>>2]:d;d=Ca(j,g,h);z:{if(!d){if(i>>>0<=18){break z}break w}if((d|0)<0){break w}}d=Ca(g,j,h);if(!d){break y}if((d|0)<0){break x}e=b;break v}if(i>>>0>18){break w}}if(k){break x}e=b;break v}c=c+4|0}c=H[c>>2];if(c){continue}break}}r=nf(e,f);if(F[f+11|0]<0){qa(H[f>>2])}pg(f+32|0,m,o,F[n+24|0],r);if(!o){break f}qa(o);break f}break b}b=F[n+24|0];H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;A:{if(!b){g=0;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;b=0;break A}if((b|0)<0){break b}e=b<<2;g=ra(e);H[f+32>>2]=g;h=e+g|0;H[f+40>>2]=h;b=0;c=g;d=e-4|0;e=(d>>>2|0)+1&7;if(e){while(1){H[c>>2]=2147483647;c=c+4|0;b=b+1|0;if((e|0)!=(b|0)){continue}break}}if(d>>>0>=28){while(1){H[c+24>>2]=2147483647;H[c+28>>2]=2147483647;H[c+16>>2]=2147483647;H[c+20>>2]=2147483647;H[c+8>>2]=2147483647;H[c+12>>2]=2147483647;H[c>>2]=2147483647;H[c+4>>2]=2147483647;c=c+32|0;if((h|0)!=(c|0)){continue}break}}H[f+36>>2]=h;e=F[n+24|0];b=0;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;if(!e){break A}if((e|0)<0){break b}d=e<<2;b=ra(d);H[f+16>>2]=b;e=b+d|0;H[f+24>>2]=e;ta(b,0,d);H[f+20>>2]=e}m=I[n+24|0];e=0;c=b;if(H[n+80>>2]){while(1){d=b;Kc(n,e,m<<24>>24,c);m=F[n+24|0];B:{if((m|0)<=0){break B}c=0;if((m|0)!=1){i=m&-2;b=0;while(1){j=c<<2;k=j+g|0;h=H[d+j>>2];if(H[k>>2]>(h|0)){H[k>>2]=h}h=j|4;k=h+g|0;h=H[d+h>>2];if(H[k>>2]>(h|0)){H[k>>2]=h}c=c+2|0;b=b+2|0;if((i|0)!=(b|0)){continue}break}}if(!(m&1)){break B}b=c<<2;c=b+g|0;b=H[b+d>>2];if(H[c>>2]<=(b|0)){break B}H[c>>2]=b}e=e+1|0;if(e>>>0>2]){b=H[f+16>>2];g=H[f+32>>2];c=d;continue}break}b=d}c=0;C:{if(m<<24>>24<=0){break C}D:{while(1){E:{k=(c<<2)+g|0;e=H[a+52>>2];F:{if((e|0)!=H[a+56>>2]){H[e>>2]=H[k>>2];H[a+52>>2]=e+4;break F}m=H[a+48>>2];j=e-m|0;h=j>>2;d=h+1|0;if(d>>>0>=1073741824){break E}e=j>>1;i=h>>>0<536870911?e>>>0>>0?d:e:1073741823;if(i){if(i>>>0>=1073741824){break D}e=ra(i<<2)}else{e=0}d=e+(h<<2)|0;H[d>>2]=H[k>>2];if((j|0)>0){sa(e,m,j)}H[a+56>>2]=e+(i<<2);H[a+52>>2]=d+4;H[a+48>>2]=e;if(!m){break F}qa(m)}c=c+1|0;if((c|0)>2];G:{if((b|0)!=H[a+44>>2]){H[b>>2]=1140;e=H[f+36>>2];H[b+16>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+4>>2]=e;d=H[f+44>>2]-H[f+40>>2]|0;if(d){if((d|0)<0){break b}e=ra(d);H[b+8>>2]=e;H[b+12>>2]=e;H[b+16>>2]=e+(d>>2<<2);d=H[f+40>>2];c=H[f+44>>2]-d|0;if((c|0)>0){e=sa(e,d,c)+c|0}H[b+12>>2]=e}L[b+20>>2]=L[f+52>>2];H[a+40>>2]=b+24;break G}g=0;H:{I:{J:{i=H[a+40>>2];h=H[a+36>>2];d=(i-h|0)/24|0;c=d+1|0;if(c>>>0<178956971){e=(H[a+44>>2]-h|0)/24|0;b=e<<1;c=e>>>0<89478485?b>>>0>>0?c:b:178956970;if(c){if(c>>>0>=178956971){break J}g=ra(N(c,24))}e=N(d,24)+g|0;H[e>>2]=1140;b=H[f+36>>2];H[e+16>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e+4>>2]=b;b=H[f+40>>2];k=H[f+44>>2]-b|0;if(k){if((k|0)<0){break b}d=ra(k);H[e+8>>2]=d;H[e+16>>2]=d+(k>>2<<2);s=e,t=sa(d,b,k)+k|0,H[s+12>>2]=t}g=N(c,24)+g|0;L[e+20>>2]=L[f+52>>2];c=e+24|0;if((h|0)==(i|0)){break I}while(1){e=e-24|0;H[e>>2]=1140;H[e+4>>2]=H[i-20>>2];d=i-16|0;H[e+8>>2]=H[d>>2];H[e+12>>2]=H[i-12>>2];b=i-8|0;H[e+16>>2]=H[b>>2];H[b>>2]=0;H[d>>2]=0;H[d+4>>2]=0;L[e+20>>2]=L[i-4>>2];i=i-24|0;if((h|0)!=(i|0)){continue}break}H[a+44>>2]=g;d=H[a+40>>2];H[a+40>>2]=c;i=H[a+36>>2];H[a+36>>2]=e;if((d|0)==(i|0)){break H}while(1){d=d-24|0;fa[H[H[d>>2]>>2]](d)|0;if((d|0)!=(i|0)){continue}break}break H}break b}wa(1604);X()}H[a+44>>2]=g;H[a+40>>2]=c;H[a+36>>2]=e}if(i){qa(i)}}e=f+32|0;b=vc(e,n,p);H[f>>2]=b;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;Ld(e,n,f+16|0,b);b=H[f+16>>2];if(b){H[f+20>>2]=b;qa(b)}e=H[a+64>>2];K:{if(e>>>0>2]){b=H[f>>2];H[f>>2]=0;H[e>>2]=b;H[a+64>>2]=e+4;break K}h=0;L:{M:{N:{b=H[a+60>>2];d=H[a+64>>2]-b>>2;c=d+1|0;if(c>>>0<1073741824){e=H[a+68>>2]-b|0;b=e>>1;c=e>>2>>>0<536870911?b>>>0>>0?c:b:1073741823;if(c){if(c>>>0>=1073741824){break N}h=ra(c<<2)}e=H[f>>2];H[f>>2]=0;b=(d<<2)+h|0;H[b>>2]=e;c=(c<<2)+h|0;d=b+4|0;h=H[a+64>>2];g=H[a+60>>2];if((h|0)==(g|0)){break M}while(1){h=h-4|0;e=H[h>>2];H[h>>2]=0;b=b-4|0;H[b>>2]=e;if((g|0)!=(h|0)){continue}break}H[a+68>>2]=c;h=H[a+64>>2];H[a+64>>2]=d;g=H[a+60>>2];H[a+60>>2]=b;if((g|0)==(h|0)){break L}while(1){h=h-4|0;b=H[h>>2];H[h>>2]=0;if(b){Ra(b)}if((g|0)!=(h|0)){continue}break}break L}break b}wa(1604);X()}H[a+68>>2]=c;H[a+64>>2]=d;H[a+60>>2]=b}if(g){qa(g)}}b=H[f>>2];H[f>>2]=0;if(b){Ra(b)}H[f+32>>2]=1140;b=H[f+40>>2];if(!b){break e}H[f+44>>2]=b;qa(b)}q=q+1|0;c=H[a+4>>2];b=1;if(q>>>0>=H[a+8>>2]-c>>2>>>0){break c}m=H[a+28>>2];o=H[m+4>>2];continue}break}H[f+32>>2]=1140;a=H[f+40>>2];if(a){H[f+44>>2]=a;qa(a)}b=0}da=f- -64|0;return b|0}ua();X()}function bj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=da-32|0;da=j;c=H[b+8>>2];a:{b:{if(I[b+288|0]){c=Je(c);d=H[b+12>>2];H[b+12>>2]=c;if(!d){break a}c=b+12|0;break b}c=Ke(c);d=H[b+12>>2];H[b+12>>2]=c;if(!d){break a}c=b+12|0}Zb(c,d)}c:{c=H[b+12>>2];d:{if(!(H[c+40>>2]!=((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)?c:0)){b=ra(32);c=I[1972]|I[1973]<<8|(I[1974]<<16|I[1975]<<24);d=I[1968]|I[1969]<<8|(I[1970]<<16|I[1971]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1967]|I[1968]<<8|(I[1969]<<16|I[1970]<<24);d=I[1963]|I[1964]<<8|(I[1965]<<16|I[1966]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1959]|I[1960]<<8|(I[1961]<<16|I[1962]<<24);d=I[1955]|I[1956]<<8|(I[1957]<<16|I[1958]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1951]|I[1952]<<8|(I[1953]<<16|I[1954]<<24);d=I[1947]|I[1948]<<8|(I[1949]<<16|I[1950]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;La(a+4|0,b,29);qa(b);break d}H[b+264>>2]=b;Fa((H[c+28>>2]-H[c+24>>2]>>2)-H[c+44>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+12>>2];Fa(((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)-H[c+40>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+8>>2];d=H[c+100>>2];c=H[c+96>>2];F[j+16|0]=0;o=b+28|0;d=(d-c|0)/12|0;c=j+16|0;Ta(o,d,c);d=H[b+12>>2];f=H[d+28>>2];d=H[d+24>>2];H[j+16>>2]=-1;Ab(b+52|0,f-d>>2,c);c=H[b+40>>2];H[b+44>>2]=c;d=H[b+12>>2];f=H[d+4>>2]-H[d>>2]>>2;f=f-((f>>>0)%3|0)|0;e:{if(f>>>0<=H[b+48>>2]-c>>2>>>0){break e}if(f>>>0>=1073741824){break c}g=f<<2;f=ra(g);H[b+44>>2]=f;H[b+40>>2]=f;H[b+48>>2]=f+g;if(!c){break e}qa(c);d=H[b+12>>2]}c=H[d+28>>2];d=H[d+24>>2];F[j+16|0]=0;Ta(b+84|0,c-d>>2,j+16|0);H[b+164>>2]=-1;H[b+168>>2]=0;H[b+100>>2]=H[b+96>>2];H[b+112>>2]=H[b+108>>2];if(H[b+132>>2]){d=H[b+128>>2];if(d){while(1){c=H[d>>2];qa(d);d=c;if(c){continue}break}}d=0;H[b+128>>2]=0;c=H[b+124>>2];f:{if(!c){break f}if(c-1>>>0>=3){g=c&-4;while(1){f=d<<2;H[f+H[b+120>>2]>>2]=0;H[H[b+120>>2]+(f|4)>>2]=0;H[H[b+120>>2]+(f|8)>>2]=0;H[H[b+120>>2]+(f|12)>>2]=0;d=d+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}c=c&3;if(!c){break f}while(1){H[H[b+120>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}H[b+132>>2]=0}H[b+144>>2]=0;c=H[b+12>>2];d=H[c+28>>2];c=H[c+24>>2];H[j+16>>2]=-1;Ab(b+152|0,d-c>>2,j+16|0);c=H[b+72>>2];H[b+76>>2]=c;d=H[b+12>>2];d=H[d+4>>2]-H[d>>2]|0;f=(d>>2>>>0)/3|0;g:{if(f>>>0<=H[b+80>>2]-c>>2>>>0){break g}if((d|0)<0){break c}f=f<<2;d=ra(f);H[b+76>>2]=d;H[b+72>>2]=d;H[b+80>>2]=d+f;if(!c){break g}qa(c)}H[b- -64>>2]=0;if(!Lf(b)){b=ra(32);c=I[1912]|I[1913]<<8|(I[1914]<<16|I[1915]<<24);d=I[1908]|I[1909]<<8|(I[1910]<<16|I[1911]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1907]|I[1908]<<8|(I[1909]<<16|I[1910]<<24);d=I[1903]|I[1904]<<8|(I[1905]<<16|I[1906]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1899]|I[1900]<<8|(I[1901]<<16|I[1902]<<24);d=I[1895]|I[1896]<<8|(I[1897]<<16|I[1898]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1891]|I[1892]<<8|(I[1893]<<16|I[1894]<<24);d=I[1887]|I[1888]<<8|(I[1889]<<16|I[1890]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;La(a+4|0,b,29);qa(b);break d}c=b;h:{if(I[b+288|0]){break h}b=H[c+8>>2];f=H[b+12>>2]-H[b+8>>2]|0;e=f>>2;d=e-1|0;b=H[c+176>>2];i=H[c+172>>2];g=(b-i|0)/136|0;i:{if(d>>>0>g>>>0){Ef(c+172|0,d-g|0);break i}if(d>>>0>=g>>>0){break i}d=i+N(d,136)|0;if((d|0)!=(b|0)){while(1){g=H[b-20>>2];if(g){H[b-16>>2]=g;qa(g)}g=H[b-32>>2];if(g){H[b-28>>2]=g;qa(g)}Yb(b-132|0);b=b-136|0;if((d|0)!=(b|0)){continue}break}}H[c+176>>2]=d}if((f|0)==4|(f|0)<=0){break h}i=(e|0)>1?e:1;b=0;f=0;j:{while(1){h=H[H[H[c+8>>2]+8>>2]+(b<<2)>>2];if(H[h+56>>2]){l=N(f,136);d=l+H[c+172>>2]|0;H[d>>2]=b;e=H[d+104>>2];H[d+108>>2]=e;g=H[c+12>>2];g=H[g+4>>2]-H[g>>2]|0;p=g>>2;k:{if(p>>>0<=H[d+112>>2]-e>>2>>>0){break k}if((g|0)<0){break j}g=ra(g);H[d+104>>2]=g;H[d+108>>2]=g;H[d+112>>2]=g+(p<<2);if(!e){break k}qa(e)}d=l+H[c+172>>2]|0;H[d+128>>2]=0;Me(d+4|0,H[c+8>>2],H[c+12>>2],h);f=f+1|0}b=b+1|0;if((i|0)!=(b|0)){continue}break}break h}wa(1604);X()}b=(H[c+176>>2]-H[c+172>>2]|0)/136|0;F[j+31|0]=b;d=H[H[c+4>>2]+44>>2];f=H[d+20>>2];if(!H[d+16>>2]&(f|0)<=0|(f|0)<0){va(d,H[d+4>>2],j+31|0,j+32|0);b=I[j+31|0]}H[c+284>>2]=b&255;b=H[c+12>>2];d=H[b>>2];b=H[b+4>>2];g=c+200|0;Kf(g);H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;f=0;l:{m:{n:{o:{b=b-d|0;if((b|0)>0){b=b>>>2|0;r=b>>>0>1?b:1;d=0;while(1){b=(d>>>0)/3|0;p=b>>>5<<2;q=1<>2]+p>>2]){break p}if(nc(H[c+12>>2],b)){break p}H[j>>2]=0;b=Jf(c,b,j);Ja(g,b);e=H[j>>2];if(b){i=-1;b=-1;l=-1;q:{if((e|0)==-1){break q}m=H[H[c+12>>2]>>2];i=m+(e<<2)|0;h=e+1|0;h=(h>>>0)%3|0?h:e-2|0;if((h|0)!=-1){b=H[m+(h<<2)>>2]}i=H[i>>2];r:{if((e>>>0)%3|0){h=e-1|0;break r}h=e+2|0;l=-1;if((h|0)==-1){break q}}l=H[m+(h<<2)>>2]}h=H[c+84>>2];m=h+(i>>>3&536870908)|0;H[m>>2]=H[m>>2]|1<>>3&536870908)|0;H[i>>2]=H[i>>2]|1<>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];h=H[c+104>>2];s:{if(b>>>0>>0){H[b>>2]=1;H[c+100>>2]=b+4;break s}i=H[c+96>>2];l=b-i|0;m=l>>2;b=m+1|0;if(b>>>0>=1073741824){break o}s=m<<2;h=h-i|0;m=h>>1;h=h>>2>>>0<536870911?b>>>0>m>>>0?b:m:1073741823;if(h){if(h>>>0>=1073741824){break c}b=ra(h<<2)}else{b=0}m=s+b|0;H[m>>2]=1;if((l|0)>0){sa(b,i,l)}H[c+104>>2]=b+(h<<2);H[c+100>>2]=m+4;H[c+96>>2]=b;if(!i){break s}qa(i)}b=H[o>>2]+p|0;H[b>>2]=H[b>>2]|q;i=-1;if((e|0)!=-1){b=e+1|0;i=(b>>>0)%3|0?b:e-2|0}t:{if(k>>>0>>0){H[k>>2]=i;k=k+4|0;H[j+20>>2]=k;break t}h=k-f|0;l=h>>2;b=l+1|0;if(b>>>0>=1073741824){break n}k=n-f|0;n=k>>1;k=k>>2>>>0<536870911?b>>>0>n>>>0?b:n:1073741823;if(k){if(k>>>0>=1073741824){break c}b=ra(k<<2)}else{b=0}l=b+(l<<2)|0;H[l>>2]=i;n=b+(k<<2)|0;k=l+4|0;if((h|0)>0){sa(b,f,h)}H[j+24>>2]=n;H[j+20>>2]=k;H[j+16>>2]=b;if(f){qa(f)}f=b}if((e|0)==-1){break p}b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;if((b|0)==-1){break p}b=H[H[H[c+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=(b>>>0)/3|0;if(H[H[o>>2]+(e>>>3&268435452)>>2]>>>e&1){break p}if(If(c,b)){break p}break m}if((e|0)!=-1){b=e+1|0;b=(b>>>0)%3|0?b:e-2|0}else{b=-1}qc(c,b,1);if(!If(c,H[j>>2])){break m}}d=d+1|0;if((r|0)!=(d|0)){continue}break}}i=c+72|0;d=H[c+72>>2];b=H[c+76>>2];u:{if((d|0)==(b|0)){break u}e=b-4|0;if(e>>>0<=d>>>0){break u}while(1){h=H[d>>2];H[d>>2]=H[e>>2];H[e>>2]=h;d=d+4|0;e=e-4|0;if(d>>>0>>0){continue}break}}Hf(i,b,f,k);v:{if(H[c+172>>2]==H[c+176>>2]){break v}b=H[c+8>>2];d=H[b+100>>2];b=H[b+96>>2];F[j|0]=0;Ta(o,(d-b|0)/12|0,j);d=H[c+72>>2];b=H[c+76>>2];if((d|0)==(b|0)){break v}while(1){Gf(c,H[d>>2]);d=d+4|0;if((b|0)!=(d|0)){continue}break}}h=g+32|0;b=H[g+64>>2];b=H[(fa[H[H[b>>2]+40>>2]](b)|0)+56>>2];gd(h,N((H[b+100>>2]-H[b+96>>2]|0)/12|0,3),0,1);w:{e=H[g+68>>2];d=H[g+72>>2]-e|0;if((d|0)<=0){break w}b=H[g+52>>2];i=b;k=H[g+48>>2];if(!k&(b|0)<=0|(b|0)<0){break w}b=d>>2;while(1){d=b-1|0;x:{if(!k&(i|0)<=0|(i|0)<0){break x}o=H[(d<<2)+e>>2];if(!(171>>>o&1)){break x}l=H[(o<<2)+11168>>2];e=H[g+44>>2];i=H[e+4>>2];k=0;while(1){n=i>>>3|0;p=n+H[e>>2]|0;m=I[p|0];i=i&7;t=p,u=Vk(i)&m,F[t|0]=u;n=n+H[e>>2]|0;F[n|0]=I[n|0]|(o>>>k&1)<>2]+1|0;H[e+4>>2]=i;k=k+1|0;if((l|0)!=(k|0)){continue}break}}if((b|0)<2){break w}k=H[g+48>>2];i=H[g+52>>2];e=H[g+68>>2];b=d;continue}}fd(h);b=c+232|0;Aa(g,b);e=H[c+280>>2];y:{if(!e){break y}d=1;if(H[c+284>>2]<=0){break y}Aa(e,b);if(H[c+284>>2]<2){break y}while(1){Aa(H[c+280>>2]+(d<<5)|0,b);d=d+1|0;if((d|0)>2]){continue}break}}Fa(H[c+272>>2]-H[c+268>>2]>>2,H[H[c+4>>2]+44>>2]);Fa(H[c+168>>2],H[H[c+4>>2]+44>>2]);if(!Ff(c)){b=bc(j,2029);H[a>>2]=-1;a=a+4|0;if(F[b+11|0]>=0){b=H[j+4>>2];H[a>>2]=H[j>>2];H[a+4>>2]=b;H[a+8>>2]=H[j+8>>2];break l}La(a,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break l}qa(H[b>>2]);break l}b=H[H[c+4>>2]+44>>2];d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){va(b,H[b+4>>2],H[c+232>>2],H[c+236>>2])}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break l}ua();X()}ua();X()}b=ra(48);c=I[1847]|I[1848]<<8|(I[1849]<<16|I[1850]<<24);d=I[1843]|I[1844]<<8|(I[1845]<<16|I[1846]<<24);F[b+24|0]=d;F[b+25|0]=d>>>8;F[b+26|0]=d>>>16;F[b+27|0]=d>>>24;F[b+28|0]=c;F[b+29|0]=c>>>8;F[b+30|0]=c>>>16;F[b+31|0]=c>>>24;c=I[1839]|I[1840]<<8|(I[1841]<<16|I[1842]<<24);d=I[1835]|I[1836]<<8|(I[1837]<<16|I[1838]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1831]|I[1832]<<8|(I[1833]<<16|I[1834]<<24);d=I[1827]|I[1828]<<8|(I[1829]<<16|I[1830]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1823]|I[1824]<<8|(I[1825]<<16|I[1826]<<24);d=I[1819]|I[1820]<<8|(I[1821]<<16|I[1822]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+32|0]=0;H[a>>2]=-1;La(a+4|0,b,32);qa(b)}if(!f){break d}qa(f)}da=j+32|0;return}wa(1604);X()}function Oe(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;v=da-16|0;da=v;e=ra(88);H[e>>2]=0;H[e+4>>2]=0;H[e+56>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;b=e- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[e+72>>2]=0;H[e+76>>2]=0;H[e+80>>2]=0;H[e+84>>2]=0;H[e+60>>2]=e;u=da-16|0;da=u;H[e+80>>2]=0;H[e+84>>2]=0;b=H[e+76>>2];H[e+76>>2]=0;if(b){qa(b)}H[e+68>>2]=0;H[e+72>>2]=0;d=e- -64|0;b=H[d>>2];H[d>>2]=0;if(b){qa(b)}g=H[a>>2];b=H[a+4>>2]-g|0;i=(b|0)/12|0;d=N(i,3);c=H[e>>2];f=H[e+4>>2]-c>>2;a:{if(d>>>0>f>>>0){Ha(e,d-f|0);g=H[a>>2];b=H[a+4>>2]-g|0;i=(b|0)/12|0;c=H[e>>2];break a}if(d>>>0>=f>>>0){break a}H[e+4>>2]=(d<<2)+c}if(b){f=i>>>0>1?i:1;a=0;while(1){d=N(a,12);b=d+c|0;d=d+g|0;H[b>>2]=H[d>>2];H[b+4>>2]=H[d+4>>2];H[b+8>>2]=H[d+8>>2];a=a+1|0;if((f|0)!=(a|0)){continue}break}}H[u+12>>2]=-1;f=da-48|0;da=f;b:{c:{s=u+12|0;d:{if(!s){break d}c=H[e+4>>2];k=H[e>>2];b=c-k|0;i=b>>2;d=H[e+12>>2];a=H[e+16>>2]-d>>2;e:{if(i>>>0>a>>>0){Na(e+12|0,i-a|0,14896);c=H[e+4>>2];k=H[e>>2];b=c-k|0;i=b>>2;break e}if(a>>>0<=i>>>0){break e}H[e+16>>2]=d+(i<<2)}d=0;H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;f:{if(!b){H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;break f}g:{if((b|0)>=0){d=ra(b);H[f+36>>2]=d;H[f+32>>2]=d;H[f+40>>2]=(i<<2)+d;a=d;b=0;while(1){i=H[(b<<2)+k>>2];a=a-d>>2;h:{if(i>>>0>>0){break h}H[f+16>>2]=0;g=i+1|0;if(g>>>0>a>>>0){Na(f+32|0,g-a|0,f+16|0);k=H[e>>2];c=H[e+4>>2];d=H[f+32>>2];break h}if(a>>>0<=g>>>0){break h}H[f+36>>2]=(g<<2)+d}a=(i<<2)+d|0;H[a>>2]=H[a>>2]+1;b=b+1|0;a=c-k|0;i=a>>2;if(b>>>0>=i>>>0){break g}a=H[f+36>>2];continue}}break c}H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;if(!a){break f}if(i>>>0>=536870912){break b}b=a<<1;a=ra(b);H[f+16>>2]=a;c=a+(i<<3)|0;H[f+24>>2]=c;ta(a,255,b);H[f+20>>2]=c}c=0;H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;a=H[f+36>>2]-d|0;m=a>>2;i:{j:{if(!a){break j}if((a|0)<0){break b}o=ra(a);H[f>>2]=o;H[f+8>>2]=(m<<2)+o;b=a;a=ta(o,0,a);H[f+4>>2]=b+a;g=m>>>0>1?m:1;p=g&3;b=0;if(g-1>>>0>=3){n=g&-4;while(1){g=j<<2;H[g+a>>2]=b;t=g|4;b=H[d+g>>2]+b|0;H[t+a>>2]=b;r=g|8;b=b+H[d+t>>2]|0;H[r+a>>2]=b;g=g|12;b=b+H[d+r>>2]|0;H[g+a>>2]=b;b=b+H[d+g>>2]|0;j=j+4|0;h=h+4|0;if((n|0)!=(h|0)){continue}break}}if(!p){break j}while(1){g=j<<2;H[g+a>>2]=b;j=j+1|0;b=H[d+g>>2]+b|0;l=l+1|0;if((p|0)!=(l|0)){continue}break}}if(!i){break i}t=H[e+12>>2];while(1){w=c<<2;b=w+k|0;h=-1;g=c+1|0;a=(g>>>0)%3|0?g:c-2|0;if((a|0)!=-1){h=H[(a<<2)+k>>2]}a=H[b>>2];k:{l:{if(!((c>>>0)%3|0)){l=-1;b=c+2|0;if((b|0)!=-1){l=H[(b<<2)+k>>2]}if(!((a|0)==(h|0)|(a|0)==(l|0))&(h|0)!=(l|0)){break l}H[e+40>>2]=H[e+40>>2]+1;c=c+3|0;break k}l=H[b-4>>2]}b=l<<2;r=H[b+d>>2];m:{n:{if((r|0)<=0){break n}p=H[f+16>>2];b=H[b+o>>2];j=0;while(1){n=p+(b<<3)|0;q=H[n>>2];if((q|0)==-1){break n}o:{if((h|0)!=(q|0)){break o}n=H[n+4>>2];if((n|0)!=-1){q=H[(n<<2)+k>>2]}else{q=-1}if((q|0)==(a|0)){break o}while(1){p:{a=b;j=j+1|0;if((r|0)<=(j|0)){break p}q=p+(a<<3)|0;b=a+1|0;x=p+(b<<3)|0;y=H[x>>2];H[q>>2]=y;H[q+4>>2]=H[x+4>>2];if((y|0)!=-1){continue}}break}H[p+(a<<3)>>2]=-1;if((n|0)==-1){break n}H[t+w>>2]=n;H[t+(n<<2)>>2]=c;break m}b=b+1|0;j=j+1|0;if((r|0)!=(j|0)){continue}break}}a=h<<2;h=H[a+d>>2];if((h|0)<=0){break m}p=H[f+16>>2];b=H[a+o>>2];j=0;while(1){a=p+(b<<3)|0;if(H[a>>2]==-1){H[a>>2]=l;H[a+4>>2]=c;break m}b=b+1|0;j=j+1|0;if((h|0)!=(j|0)){continue}break}}c=g}if(c>>>0>>0){continue}break}break i}H[s>>2]=m;if(o){qa(o)}a=H[f+16>>2];if(a){H[f+20>>2]=a;qa(a)}a=H[f+32>>2];if(!a){break d}H[f+36>>2]=a;qa(a)}da=f+48|0;t=(s|0)!=0;if(t){h=da-32|0;da=h;l=H[e>>2];a=H[e+4>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;b=a-l|0;q:{if(!b){break q}if((b|0)<0){break b}b=b>>2;c=b-1>>>5|0;g=c+1|0;d=ra(g<<2);H[h+24>>2]=g;H[h+16>>2]=d;H[h+20>>2]=b;H[d+((b>>>0<33?0:c)<<2)>>2]=0;c=d;d=b>>>5<<2;c=ta(c,0,d);b=b&31;if(!b){break q}d=c+d|0;H[d>>2]=H[d>>2]&(-1>>>32-b^-1)}H[h+8>>2]=0;H[h>>2]=0;while(1){r:{p=0;g=0;if((a|0)==(l|0)){break r}while(1){c=H[h+16>>2];s:{if(H[c+(g>>>3&536870908)>>2]>>>g&1){break s}d=H[h>>2];H[h+4>>2]=d;b=H[e+12>>2];a=g;while(1){t:{f=a+1|0;j=a;a=(f>>>0)%3|0?f:a-2|0;if((a|0)==-1){break t}a=H[b+(a<<2)>>2];if((a|0)==-1){break t}f=a+1|0;a=(f>>>0)%3|0?f:a-2|0;if((g|0)==(a|0)|(a|0)==-1){break t}if(!(H[(a>>>3&536870908)+c>>2]>>>a&1)){continue}}break}b=d;i=j;u:{v:{while(1){a=(i>>>3&536870908)+c|0;H[a>>2]=H[a>>2]|1<>>0)%3|0?a:i-2|0;r=(i>>>0)%3|0;k=(r?-1:2)+i|0;n=k<<2;w:{if((b|0)==(d|0)){break w}s=H[(f<<2)+l>>2];o=H[e+12>>2];a=b;if((k|0)!=-1){q=o+n|0;while(1){x:{if((s|0)!=H[a>>2]){break x}c=H[a+4>>2];m=H[q>>2];if((c|0)==(m|0)){break x}d=-1;a=-1;if((c|0)==-1){break u}break v}a=a+8|0;if((d|0)!=(a|0)){continue}break}break w}while(1){if((s|0)==H[a>>2]){m=-1;k=-1;c=H[a+4>>2];if((c|0)!=-1){break v}}a=a+8|0;if((d|0)!=(a|0)){continue}break}}l=H[l+n>>2];y:{if(H[h+8>>2]!=(d|0)){H[d>>2]=l;H[d+4>>2]=f;d=d+8|0;H[h+4>>2]=d;break y}c=d-b|0;d=c>>3;a=d+1|0;if(a>>>0>=536870912){break b}k=c>>2;k=d>>>0<268435455?a>>>0>k>>>0?a:k:536870911;if(k){if(k>>>0>=536870912){break c}a=ra(k<<3)}else{a=0}d=a+(d<<3)|0;H[d>>2]=l;H[d+4>>2]=f;d=d+8|0;if((c|0)>0){sa(a,b,c)}H[h+8>>2]=a+(k<<3);H[h+4>>2]=d;H[h>>2]=a;if(!b){break y}qa(b)}z:{A:{if(r){a=i-1|0;break A}a=i+2|0;if((a|0)==-1){break z}}a=H[H[e+12>>2]+(a<<2)>>2];if((a|0)==-1){break z}i=a+((a>>>0)%3|0?-1:2)|0;if((j|0)==(i|0)|(i|0)==-1){break z}l=H[e>>2];b=H[h>>2];c=H[h+16>>2];continue}break}l=H[e>>2];break s}d=c;a=H[o+(c<<2)>>2]}if((m|0)!=-1){H[o+(m<<2)>>2]=-1}if((a|0)!=-1){H[H[e+12>>2]+(a<<2)>>2]=-1}a=H[e+12>>2];H[a+(k<<2)>>2]=-1;H[a+(d<<2)>>2]=-1;p=1}g=g+1|0;a=H[e+4>>2];if(g>>>0>2>>>0){continue}break}if(p){continue}}break}a=H[h>>2];if(a){qa(a)}a=H[h+16>>2];if(a){qa(a)}da=h+32|0;g=0;k=0;p=0;j=da-32|0;da=j;a=H[u+12>>2];H[e+36>>2]=a;l=e+24|0;d=H[e+24>>2];b=H[e+28>>2]-d>>2;B:{C:{if(b>>>0>>0){Na(l,a-b|0,14896);H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;break C}if(a>>>0>>0){H[e+28>>2]=d+(a<<2)}H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;if(!a){break B}}if((a|0)<0){break b}b=a-1>>>5|0;d=b+1|0;g=ra(d<<2);H[j+24>>2]=d;H[j+16>>2]=g;H[j+20>>2]=a;H[((a>>>0<33?0:b)<<2)+g>>2]=0;b=a>>>5<<2;d=ta(g,0,b);c=a&31;if(!c){break B}b=b+d|0;H[b>>2]=H[b>>2]&(-1>>>32-c^-1)}m=H[e>>2];i=H[e+4>>2];H[j+8>>2]=0;H[j>>2]=0;H[j+4>>2]=0;b=i-m|0;D:{if(!b){break D}if((b|0)<0){break b}b=b>>2;d=b-1>>>5|0;c=d+1|0;h=ra(c<<2);H[j+8>>2]=c;H[j>>2]=h;H[j+4>>2]=b;H[((b>>>0<33?0:d)<<2)+h>>2]=0;d=b>>>5<<2;c=ta(h,0,d);f=b&31;if(f){d=c+d|0;H[d>>2]=H[d>>2]&(-1>>>32-f^-1)}if(b>>>0<3){break D}while(1){n=N(k,3);d=(n<<2)+m|0;b=H[d>>2];c=-1;f=n+1|0;if((f|0)!=-1){c=H[(f<<2)+m>>2]}E:{if((b|0)==(c|0)){break E}f=b;b=H[d+8>>2];if((f|0)==(b|0)){break E}o=0;if((b|0)==(c|0)){break E}while(1){d=o+n|0;if(!(H[(d>>>3&536870908)+h>>2]>>>d&1)){b=H[(d<<2)+m>>2];c=1<>>5|0;s=c&H[(h<<2)+g>>2];if(s){c=H[e+28>>2];F:{if((c|0)!=H[e+32>>2]){H[c>>2]=-1;H[e+28>>2]=c+4;break F}g=H[l>>2];f=c-g|0;h=f>>2;c=h+1|0;if(c>>>0>=1073741824){break b}i=f>>1;i=h>>>0<536870911?c>>>0>i>>>0?c:i:1073741823;if(i){if(i>>>0>=1073741824){break c}c=ra(i<<2)}else{c=0}h=c+(h<<2)|0;H[h>>2]=-1;if((f|0)>0){sa(c,g,f)}H[e+32>>2]=c+(i<<2);H[e+28>>2]=h+4;H[e+24>>2]=c;if(!g){break F}qa(g)}c=H[e+52>>2];G:{if((c|0)!=H[e+56>>2]){H[c>>2]=b;H[e+52>>2]=c+4;break G}g=H[e+48>>2];f=c-g|0;h=f>>2;c=h+1|0;if(c>>>0>=1073741824){break b}i=f>>1;i=h>>>0<536870911?c>>>0>i>>>0?c:i:1073741823;if(i){if(i>>>0>=1073741824){break c}c=ra(i<<2)}else{c=0}h=c+(h<<2)|0;H[h>>2]=b;if((f|0)>0){sa(c,g,f)}H[e+56>>2]=c+(i<<2);H[e+52>>2]=h+4;H[e+48>>2]=c;if(!g){break G}qa(g)}c=H[j+20>>2];b=H[j+24>>2];if((c|0)==b<<5){if((c+1|0)<0){break b}g=j+16|0;if(c>>>0<=1073741822){c=c+32&-32;b=b<<6;b=b>>>0>>0?c:b}else{b=2147483647}Ib(g,b);c=H[j+20>>2]}H[j+20>>2]=c+1;b=H[j+16>>2]+(c>>>3&536870908)|0;g=H[b>>2];z=b,A=Vk(c)&g,H[z>>2]=A;c=1<>>5|0;b=a;a=a+1|0}f=a;g=H[j+16>>2];a=g+(h<<2)|0;H[a>>2]=H[a>>2]|c;r=H[e+24>>2]+(b<<2)|0;i=H[e+12>>2];m=H[e>>2];h=H[j>>2];a=d;H:{I:{J:{K:{L:{M:{while(1){if((a|0)==-1){break M}c=(a>>>3&536870908)+h|0;H[c>>2]=H[c>>2]|1<>2]=a;if(s){H[(a<<2)+m>>2]=b}q=a+1|0;a=(q>>>0)%3|0?q:a-2|0;c=-1;N:{if((a|0)==-1){break N}a=H[i+(a<<2)>>2];c=-1;if((a|0)==-1){break N}c=a+1|0;c=(c>>>0)%3|0?c:a-2|0}a=c;if((d|0)!=(a|0)){continue}break}if((d|0)!=-1){break H}a=1;break L}if((d>>>0)%3|0){a=d-1|0;break L}a=d+2|0;if((a|0)==-1){break K}}a=H[i+(a<<2)>>2];if((a|0)==-1){break K}if(!((a>>>0)%3|0)){break J}a=a-1|0;m=H[e>>2];h=H[j>>2];break I}m=H[e>>2];h=H[j>>2];break H}m=H[e>>2];h=H[j>>2];a=a+2|0;if((a|0)==-1){break H}}d=H[e+12>>2];while(1){c=(a>>>3&536870908)+h|0;H[c>>2]=H[c>>2]|1<>2]=b}O:{if((a>>>0)%3|0){a=a-1|0;break O}a=a+2|0;if((a|0)==-1){break H}}a=H[d+(a<<2)>>2];if((a|0)==-1){break H}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=f}o=o+1|0;if((o|0)!=3){continue}break}m=H[e>>2];i=H[e+4>>2]}k=k+1|0;if(k>>>0<(i-m>>2>>>0)/3>>>0){continue}break}g=H[j+16>>2]}H[e+44>>2]=0;a=H[j+20>>2];if(a){b=a&31;d=(a>>>3&536870908)+g|0;a=0;c=g;while(1){if(!(H[c>>2]>>>a&1)){p=p+1|0;H[e+44>>2]=p}f=(a|0)==31;a=f?0:a+1|0;c=(f<<2)+c|0;if((d|0)!=(c|0)|(a|0)!=(b|0)){continue}break}}a=H[j>>2];if(a){qa(a);g=H[j+16>>2]}if(g){qa(g)}da=j+32|0}da=u+16|0;if(!t){H[v+8>>2]=0;Zb(v+8|0,e);e=0}da=v+16|0;return e}wa(1604);X()}ua();X()}function Me(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=da-16|0;da=e;a:{b:{if(c){H[a+88>>2]=0;H[a+92>>2]=0;f=H[a+84>>2];H[a+84>>2]=0;if(f){qa(f)}H[a+76>>2]=0;H[a+80>>2]=0;f=H[a+72>>2];H[a+72>>2]=0;if(f){qa(f)}f=H[c>>2];g=H[c+4>>2];F[e+15|0]=0;Ta(a,g-f>>2,e+15|0);f=H[c+28>>2];g=H[c+24>>2];F[e+14|0]=0;Ta(a+12|0,f-g>>2,e+14|0);Ab(a+28|0,H[c+4>>2]-H[c>>2]>>2,14964);g=H[c+28>>2]-H[c+24>>2]|0;h=g>>2;f=H[a+52>>2];c:{if(h>>>0<=H[a+60>>2]-f>>2>>>0){break c}if((g|0)<0){break a}k=H[a+56>>2];g=ra(g);i=g+(h<<2)|0;h=k-f|0;k=h+g|0;if((h|0)>0){sa(g,f,h)}H[a+60>>2]=i;H[a+56>>2]=k;H[a+52>>2]=g;if(!f){break c}qa(f)}g=H[c+28>>2]-H[c+24>>2]|0;h=g>>2;f=H[a+40>>2];d:{if(h>>>0<=H[a+48>>2]-f>>2>>>0){break d}if((g|0)<0){break a}k=H[a+44>>2];g=ra(g);i=g+(h<<2)|0;h=k-f|0;k=h+g|0;if((h|0)>0){sa(g,f,h)}H[a+48>>2]=i;H[a+44>>2]=k;H[a+40>>2]=g;if(!f){break d}qa(f)}F[a+24|0]=1;H[a+64>>2]=c}da=e+16|0;c=(c|0)!=0;break b}if(c){H[a+88>>2]=0;H[a+92>>2]=0;c=H[a+84>>2];H[a+84>>2]=0;if(c){qa(c)}H[a+76>>2]=0;H[a+80>>2]=0;c=H[a+72>>2];H[a+72>>2]=0;if(c){qa(c)}g=H[a+64>>2];if(H[g+4>>2]!=H[g>>2]){c=0;while(1){m=(c>>>0)/3|0;e=nc(g,m);g=H[a+64>>2];e:{if(e){break e}i=H[H[g+12>>2]+(c<<2)>>2];f:{g:{if((i|0)==-1){e=H[a>>2]+(c>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?f:c-2|0;if((f|0)!=-1){e=H[H[g>>2]+(f<<2)>>2]}k=H[a+12>>2];f=k+(e>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0)%3|0){e=c-1|0;break g}h=-1;e=c+2|0;if((e|0)!=-1){break g}break f}if(c>>>0>i>>>0){break e}e=-1;l=I[d+84|0];h=-1;j=c+1|0;n=c-2|0;k=(j>>>0)%3|0?j:n;if((k|0)>=0){f=(k>>>0)/3|0;h=H[(H[b+96>>2]+N(f,12)|0)+(k-N(f,3)<<2)>>2]}f=i+((i>>>0)%3|0?-1:2)|0;if((f|0)>=0){e=(f>>>0)/3|0;e=H[(H[b+96>>2]+N(e,12)|0)+(f-N(e,3)<<2)>>2]}if(!l){o=H[d+68>>2];e=H[o+(e<<2)>>2];h=H[(h<<2)+o>>2]}if((e|0)==(h|0)){e=-1;h=-1;if((k|0)!=-1){h=k+1|0;h=(h>>>0)%3|0?h:k-2|0}h:{if((f|0)==-1){break h}if((f>>>0)%3|0){e=f-1|0;break h}e=f+2|0}k=-1;f=-1;if((h|0)>=0){f=(h>>>0)/3|0;f=H[(H[b+96>>2]+N(f,12)|0)+(h-N(f,3)<<2)>>2]}if((e|0)>=0){h=(e>>>0)/3|0;k=H[(H[b+96>>2]+N(h,12)|0)+(e-N(h,3)<<2)>>2]}if(!l){e=H[d+68>>2];k=H[e+(k<<2)>>2];f=H[e+(f<<2)>>2]}if((f|0)==(k|0)){break e}}F[a+24|0]=0;e=H[a>>2];f=e+(c>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?j:n;if((e|0)!=-1){f=H[H[g>>2]+(e<<2)>>2]}k=H[a+12>>2];e=k+(f>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>2]+(e<<2)>>2]}e=(f>>>3&536870908)+k|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?e:i-2|0;if((e|0)!=-1){h=H[H[g>>2]+(e<<2)>>2]}e=(h>>>3&536870908)+k|0;H[e>>2]=H[e>>2]|1<>>0)%3|0){e=i-1|0;break g}h=-1;e=i+2|0;if((e|0)==-1){break f}}h=H[H[g>>2]+(e<<2)>>2]}e=(h>>>3&536870908)+k|0;H[e>>2]=H[e>>2]|1<>>0>2]-H[g>>2]>>2>>>0){continue}break}}if(!(!b|!d)){k=b;b=0;h=0;f=a;H[f+56>>2]=H[f+52>>2];H[f+44>>2]=H[f+40>>2];k:{l:{m:{g=H[f+64>>2];e=H[g+24>>2];if((e|0)!=H[g+28>>2]){while(1){a=b;c=H[(h<<2)+e>>2];n:{if((c|0)==-1){break n}if((c|0)<0){e=-1}else{b=(c>>>0)/3|0;e=H[(H[k+96>>2]+N(b,12)|0)+(c-N(b,3)<<2)>>2]}e=I[d+84|0]?e:H[H[d+68>>2]+(e<<2)>>2];b=H[f+56>>2];i=H[f+60>>2];o:{if(b>>>0>>0){H[b>>2]=e;H[f+56>>2]=b+4;break o}g=H[f+52>>2];j=b-g|0;l=j>>2;b=l+1|0;if(b>>>0>=1073741824){break m}i=i-g|0;m=i>>1;i=i>>2>>>0<536870911?b>>>0>m>>>0?b:m:1073741823;if(i){if(i>>>0>=1073741824){break a}b=ra(i<<2)}else{b=0}l=b+(l<<2)|0;H[l>>2]=e;if((j|0)>0){sa(b,g,j)}H[f+60>>2]=b+(i<<2);H[f+56>>2]=l+4;H[f+52>>2]=b;if(!g){break o}qa(g)}p:{if(!(H[H[f+12>>2]+(h>>>3&536870908)>>2]>>>h&1)){break p}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1){break p}g=H[f>>2];if(H[g+(b>>>3&536870908)>>2]>>>b&1){break p}b=H[H[H[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)==-1){break p}i=H[f+64>>2];while(1){c=e;b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;if((b|0)==-1|H[g+(b>>>3&536870908)>>2]>>>b&1){break p}b=H[H[i+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)!=-1){continue}break}}H[H[f+28>>2]+(c<<2)>>2]=a;b=H[f+44>>2];q:{if((b|0)!=H[f+48>>2]){H[b>>2]=c;H[f+44>>2]=b+4;break q}e=H[f+40>>2];g=b-e|0;j=g>>2;b=j+1|0;if(b>>>0>=1073741824){break l}i=g>>1;i=j>>>0<536870911?b>>>0>i>>>0?b:i:1073741823;if(i){if(i>>>0>=1073741824){break a}b=ra(i<<2)}else{b=0}j=b+(j<<2)|0;H[j>>2]=c;if((g|0)>0){sa(b,e,g)}H[f+48>>2]=b+(i<<2);H[f+44>>2]=j+4;H[f+40>>2]=b;if(!e){break q}qa(e)}b=a+1|0;g=H[f+64>>2];r:{if((c>>>0)%3|0){e=c-1|0;break r}e=c+2|0;if((e|0)==-1){break n}}e=H[H[g+12>>2]+(e<<2)>>2];if((e|0)==-1){break n}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1|(c|0)==(e|0)){break n}while(1){g=e+1|0;g=(g>>>0)%3|0?g:e-2|0;if(H[H[f>>2]+(g>>>3&536870908)>>2]>>>g&1){g=(e|0)<0?-1:H[(H[k+96>>2]+N((e>>>0)/3|0,12)|0)+((e>>>0)%3<<2)>>2];g=I[d+84|0]?g:H[H[d+68>>2]+(g<<2)>>2];a=H[f+56>>2];j=H[f+60>>2];s:{if(a>>>0>>0){H[a>>2]=g;H[f+56>>2]=a+4;break s}i=H[f+52>>2];l=a-i|0;m=l>>2;a=m+1|0;if(a>>>0>=1073741824){break m}j=j-i|0;n=j>>1;j=j>>2>>>0<536870911?a>>>0>n>>>0?a:n:1073741823;if(j){if(j>>>0>=1073741824){break a}a=ra(j<<2)}else{a=0}m=a+(m<<2)|0;H[m>>2]=g;if((l|0)>0){sa(a,i,l)}H[f+60>>2]=a+(j<<2);H[f+56>>2]=m+4;H[f+52>>2]=a;if(!i){break s}qa(i)}g=b+1|0;a=H[f+44>>2];t:{if((a|0)!=H[f+48>>2]){H[a>>2]=e;H[f+44>>2]=a+4;break t}i=H[f+40>>2];j=a-i|0;m=j>>2;a=m+1|0;if(a>>>0>=1073741824){break l}l=j>>1;l=m>>>0<536870911?a>>>0>l>>>0?a:l:1073741823;if(l){if(l>>>0>=1073741824){break a}a=ra(l<<2)}else{a=0}m=a+(m<<2)|0;H[m>>2]=e;if((j|0)>0){sa(a,i,j)}H[f+48>>2]=a+(l<<2);H[f+44>>2]=m+4;H[f+40>>2]=a;if(!i){break t}qa(i)}a=b;b=g}H[H[f+28>>2]+(e<<2)>>2]=a;g=H[f+64>>2];u:{if((e>>>0)%3|0){e=e-1|0;break u}e=e+2|0;if((e|0)==-1){break n}}e=H[H[g+12>>2]+(e<<2)>>2];if((e|0)==-1){break n}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1){break n}if((c|0)!=(e|0)){continue}break}}h=h+1|0;e=H[g+24>>2];if(h>>>0>2]-e>>2>>>0){continue}break}}break k}ua();X()}ua();X()}return}b=0;k=0;f=a;H[f+56>>2]=H[f+52>>2];H[f+44>>2]=H[f+40>>2];v:{w:{x:{e=H[f+64>>2];c=H[e+24>>2];if((c|0)!=H[e+28>>2]){while(1){a=b;d=H[(k<<2)+c>>2];y:{if((d|0)==-1){break y}b=H[f+56>>2];z:{if((b|0)!=H[f+60>>2]){H[b>>2]=a;H[f+56>>2]=b+4;break z}c=H[f+52>>2];e=b-c|0;h=e>>2;b=h+1|0;if(b>>>0>=1073741824){break x}g=e>>1;g=h>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break a}b=ra(g<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=a;if((e|0)>0){sa(b,c,e)}H[f+60>>2]=b+(g<<2);H[f+56>>2]=h+4;H[f+52>>2]=b;if(!c){break z}qa(c)}A:{if(!(H[H[f+12>>2]+(k>>>3&536870908)>>2]>>>k&1)){break A}b=d+1|0;b=(b>>>0)%3|0?b:d-2|0;if((b|0)==-1){break A}e=H[f>>2];if(H[e+(b>>>3&536870908)>>2]>>>b&1){break A}b=H[H[H[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break A}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break A}g=H[f+64>>2];while(1){d=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|H[e+(b>>>3&536870908)>>2]>>>b&1){break A}b=H[H[g+12>>2]+(b<<2)>>2];if((b|0)==-1){break A}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}H[H[f+28>>2]+(d<<2)>>2]=a;b=H[f+44>>2];B:{if((b|0)!=H[f+48>>2]){H[b>>2]=d;H[f+44>>2]=b+4;break B}c=H[f+40>>2];e=b-c|0;h=e>>2;b=h+1|0;if(b>>>0>=1073741824){break w}g=e>>1;g=h>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break a}b=ra(g<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=d;if((e|0)>0){sa(b,c,e)}H[f+48>>2]=b+(g<<2);H[f+44>>2]=h+4;H[f+40>>2]=b;if(!c){break B}qa(c)}b=a+1|0;e=H[f+64>>2];C:{if((d>>>0)%3|0){c=d-1|0;break C}c=d+2|0;if((c|0)==-1){break y}}c=H[H[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break y}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(d|0)){break y}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(H[H[f>>2]+(e>>>3&536870908)>>2]>>>e&1){a=H[f+56>>2];D:{if((a|0)!=H[f+60>>2]){H[a>>2]=b;H[f+56>>2]=a+4;break D}e=H[f+52>>2];g=a-e|0;i=g>>2;a=i+1|0;if(a>>>0>=1073741824){break x}h=g>>1;h=i>>>0<536870911?a>>>0>h>>>0?a:h:1073741823;if(h){if(h>>>0>=1073741824){break a}a=ra(h<<2)}else{a=0}i=a+(i<<2)|0;H[i>>2]=b;if((g|0)>0){sa(a,e,g)}H[f+60>>2]=a+(h<<2);H[f+56>>2]=i+4;H[f+52>>2]=a;if(!e){break D}qa(e)}e=b+1|0;a=H[f+44>>2];E:{if((a|0)!=H[f+48>>2]){H[a>>2]=c;H[f+44>>2]=a+4;break E}g=H[f+40>>2];h=a-g|0;j=h>>2;a=j+1|0;if(a>>>0>=1073741824){break w}i=h>>1;i=j>>>0<536870911?a>>>0>i>>>0?a:i:1073741823;if(i){if(i>>>0>=1073741824){break a}a=ra(i<<2)}else{a=0}j=a+(j<<2)|0;H[j>>2]=c;if((h|0)>0){sa(a,g,h)}H[f+48>>2]=a+(i<<2);H[f+44>>2]=j+4;H[f+40>>2]=a;if(!g){break E}qa(g)}a=b;b=e}H[H[f+28>>2]+(c<<2)>>2]=a;e=H[f+64>>2];F:{if((c>>>0)%3|0){c=c-1|0;break F}c=c+2|0;if((c|0)==-1){break y}}c=H[H[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break y}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break y}if((c|0)!=(d|0)){continue}break}}k=k+1|0;c=H[e+24>>2];if(k>>>0>2]-c>>2>>>0){continue}break}}break v}ua();X()}ua();X()}}return}wa(1604);X()}function hd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=O(0);e=da-112|0;da=e;H[e+88>>2]=0;H[e+92>>2]=0;H[e+80>>2]=0;H[e+84>>2]=0;H[e+96>>2]=1065353216;c=H[a+80>>2];H[e+40>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=ra(d);H[e+32>>2]=g;c=d+g|0;H[e+40>>2]=c;ta(g,0,d);H[e+36>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;h=c+d|0;c=I[h+12|0]|I[h+13|0]<<8|(I[h+14|0]<<16|I[h+15|0]<<24);H[e+72>>2]=I[h+8|0]|I[h+9|0]<<8|(I[h+10|0]<<16|I[h+11|0]<<24);H[e+76>>2]=c;c=I[h+4|0]|I[h+5|0]<<8|(I[h+6|0]<<16|I[h+7|0]<<24);H[e+64>>2]=I[h|0]|I[h+1|0]<<8|(I[h+2|0]<<16|I[h+3|0]<<24);H[e+68>>2]=c;f=I[h|0]|I[h+1|0]<<8|(I[h+2|0]<<16|I[h+3|0]<<24);d=I[h+4|0]|I[h+5|0]<<8|(I[h+6|0]<<16|I[h+7|0]<<24);c=I[h+12|0]|I[h+13|0]<<8|(I[h+14|0]<<16|I[h+15|0]<<24);H[e+56>>2]=I[h+8|0]|I[h+9|0]<<8|(I[h+10|0]<<16|I[h+11|0]<<24);H[e+60>>2]=c;H[e+48>>2]=f;H[e+52>>2]=d;d=0;i=H[e+84>>2];c:{if(!i){break c}h=H[e+80>>2];j=H[e+60>>2]^(H[e+56>>2]^(H[e+52>>2]^(H[e+48>>2]^318)+239)+239)+239;c=j&i-1;f=Uk(i);d:{if(f>>>0<=1){break d}c=j;if(c>>>0>>0){break d}c=(j>>>0)%(i>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){k=H[e+60>>2];p=H[e+56>>2];n=H[e+52>>2];m=H[e+48>>2];while(1){f=H[c+4>>2];f:{if((f|0)!=(j|0)){if(f>>>0>=i>>>0){f=(f>>>0)%(i>>>0)|0}if((h|0)!=(f|0)){break c}break f}f=H[c+8>>2];g:{if((f|0)!=(m|0)){f=(f|0)==(m|0);break g}f=H[c+12>>2];if((f|0)!=(n|0)){f=(f|0)==(n|0);break g}f=H[c+16>>2];if((f|0)!=(p|0)){f=(f|0)==(p|0);break g}f=(k|0)==H[c+20>>2]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}m=i-1|0;k=H[e+60>>2];i=H[e+56>>2];p=H[e+52>>2];n=H[e+48>>2];while(1){f=H[c+4>>2];h:{if((f|0)!=(j|0)){if((h|0)!=(f&m)){break c}break h}f=H[c+8>>2];if((f|0)!=(n|0)){if((f|0)!=(n|0)){break h}break e}f=H[c+12>>2];if((f|0)!=(p|0)){if((f|0)!=(p|0)){break h}break e}f=H[c+16>>2];if((f|0)!=(i|0)){if((f|0)!=(i|0)){break h}break e}if((k|0)==H[c+20>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+24>>2];break i}c=H[e+60>>2];H[e+16>>2]=H[e+56>>2];H[e+20>>2]=c;c=H[e+52>>2];H[e+8>>2]=H[e+48>>2];H[e+12>>2]=c;H[e+24>>2]=r;c=0;h=H[e+20>>2]^(H[e+16>>2]^(H[e+12>>2]^(H[e+8>>2]^318)+239)+239)+239;j:{k:{l=e+80|0;g=H[l+4>>2];if(!g){break k}d=Uk(g);l:{if(d>>>0>=2){c=h;if(g>>>0<=c>>>0){c=(h>>>0)%(g>>>0)|0}i=H[H[l>>2]+(c<<2)>>2];if(!i){break k}if(d>>>0<2){break l}f=H[e+20>>2];m=H[e+16>>2];k=H[e+12>>2];j=H[e+8>>2];while(1){i=H[i>>2];if(!i){break k}d=H[i+4>>2];if((d|0)!=(h|0)){if(d>>>0>=g>>>0){d=(d>>>0)%(g>>>0)|0}if((c|0)!=(d|0)){break k}}d=H[i+8>>2];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=H[i+12>>2];if((d|0)!=(k|0)){d=(d|0)==(k|0);break m}d=H[i+16>>2];if((d|0)!=(m|0)){d=(d|0)==(m|0);break m}d=(f|0)==H[i+20>>2]}if(!d){continue}break}c=0;break j}c=h&g-1;i=H[H[l>>2]+(c<<2)>>2];if(!i){break k}}j=g-1|0;f=H[e+20>>2];n=H[e+16>>2];m=H[e+12>>2];k=H[e+8>>2];while(1){i=H[i>>2];if(!i){break k}d=H[i+4>>2];if((d|0)!=(h|0)&(d&j)!=(c|0)){break k}d=H[i+8>>2];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=H[i+12>>2];if((d|0)!=(m|0)){d=(d|0)==(m|0);break n}d=H[i+16>>2];if((d|0)!=(n|0)){d=(d|0)==(n|0);break n}d=(f|0)==H[i+20>>2]}if(!d){continue}break}c=0;break j}i=ra(28);d=H[e+20>>2];H[i+16>>2]=H[e+16>>2];H[i+20>>2]=d;d=H[e+12>>2];H[i+8>>2]=H[e+8>>2];H[i+12>>2]=d;d=H[e+24>>2];H[i>>2]=0;H[i+4>>2]=h;H[i+24>>2]=d;q=O(H[l+12>>2]+1>>>0);u=L[l+16>>2];o:{if(!(g?q>O(u*O(g>>>0)):1)){break o}d=(g-1&g)!=0|g>>>0<3|g<<1;c=2;q=O(U(O(q/u)));p:{if(q=O(0)){f=~~q>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ma(d);g=H[l+4>>2]}r:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break r}f=g>>>0<3;q=O(U(O(O(K[l+12>>2])/L[l+16>>2])));s:{if(q=O(0)){d=~~q>>>0;break s}d=0}t:{u:{if(f){break u}if(Uk(g)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ma(d)}c=c>>>0>>0?d:c;if(g>>>0<=c>>>0){break r}}d=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=ra(k<<2);g=H[l>>2];H[l>>2]=c;if(g){qa(g)}H[l+4>>2]=k;if(k-1>>>0>=3){c=k&-4;g=0;while(1){f=d<<2;H[f+H[l>>2]>>2]=0;H[H[l>>2]+(f|4)>>2]=0;H[H[l>>2]+(f|8)>>2]=0;H[H[l>>2]+(f|12)>>2]=0;d=d+4|0;g=g+4|0;if((c|0)!=(g|0)){continue}break}}c=k&3;if(c){while(1){H[H[l>>2]+(d<<2)>>2]=0;d=d+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}g=H[l+8>>2];if(!g){break v}c=l+8|0;f=H[g+4>>2];d=Uk(k);if(d>>>0<2){break x}f=f>>>0>=k>>>0?(f>>>0)%(k>>>0)|0:f;H[H[l>>2]+(f<<2)>>2]=c;c=H[g>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((f|0)==(j|0)){g=c;break z}d=c;p=j<<2;m=p+H[l>>2]|0;if(!H[m>>2]){H[m>>2]=g;g=c;f=j;break z}while(1){j=d;d=H[d>>2];if(d){n=H[c+8>>2];m=H[d+8>>2];A:{if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}n=H[c+12>>2];m=H[d+12>>2];if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}n=H[c+16>>2];m=H[d+16>>2];if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}m=H[c+20>>2]==H[d+20>>2]}if(m){continue}}break}H[g>>2]=d;H[j>>2]=H[H[p+H[l>>2]>>2]>>2];H[H[p+H[l>>2]>>2]>>2]=c}c=H[g>>2];if(c){continue}break}break v}c=H[l>>2];H[l>>2]=0;if(c){qa(c)}H[l+4>>2]=0;break v}wa(1604);X()}f=k-1&f;H[H[l>>2]+(f<<2)>>2]=c;c=H[g>>2];if(!c){break v}}n=k-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(f|0)){g=c;break B}d=c;p=j<<2;k=p+H[l>>2]|0;if(H[k>>2]){while(1){j=d;d=H[d>>2];if(d){m=H[c+8>>2];k=H[d+8>>2];C:{if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}m=H[c+12>>2];k=H[d+12>>2];if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}m=H[c+16>>2];k=H[d+16>>2];if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}k=H[c+20>>2]==H[d+20>>2]}if(k){continue}}break}H[g>>2]=d;H[j>>2]=H[H[p+H[l>>2]>>2]>>2];H[H[p+H[l>>2]>>2]>>2]=c;break B}H[k>>2]=g;g=c;f=j}c=H[g>>2];if(c){continue}break}}}g=H[l+4>>2];c=g-1|0;if(!(c&g)){c=c&h;break o}if(g>>>0>h>>>0){c=h;break o}c=(h>>>0)%(g>>>0)|0}c=H[l>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[i>>2]=H[l+8>>2];H[l+8>>2]=i;H[c>>2]=l+8;c=H[i>>2];if(!c){break D}c=H[c+4>>2];d=g-1|0;E:{if(!(d&g)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(g>>>0)|0}H[H[l>>2]+(c<<2)>>2]=i;break D}H[i>>2]=H[d>>2];H[d>>2]=i}H[l+12>>2]=H[l+12>>2]+1;c=1}F[e+108|0]=c;H[e+104>>2]=i;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,e- -64|0,c);g=H[e+32>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){j=H[a+68>>2];b=H[a+72>>2]-j|0;if(!b){break F}h=H[e+32>>2];b=b>>2;c=b>>>0>1?b:1;o=c&3;b=0;if(c-1>>>0>=3){d=c&-4;g=0;while(1){f=b<<2;c=f+j|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;g=g+4|0;if((d|0)!=(g|0)){continue}break}}if(!o){break F}while(1){c=j+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;t=t+1|0;if((o|0)!=(t|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}j=H[e+32>>2];b=0;if(c-1>>>0>=3){f=c&-4;g=0;while(1){h=b<<2;H[h+d>>2]=H[h+j>>2];o=h|4;H[o+d>>2]=H[j+o>>2];o=h|8;H[o+d>>2]=H[j+o>>2];o=h|12;H[o+d>>2]=H[j+o>>2];b=b+4|0;g=g+4|0;if((f|0)!=(g|0)){continue}break}}g=c&3;if(!g){break F}while(1){c=b<<2;H[c+d>>2]=H[c+j>>2];b=b+1|0;t=t+1|0;if((g|0)!=(t|0)){continue}break}}H[a+80>>2]=r}a=H[e+32>>2];if(a){qa(a)}b=H[e+88>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[e+80>>2];H[e+80>>2]=0;if(a){qa(a)}da=e+112|0;return r}ua();X()}function oe(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,N=0,O=0,P=0;k=da-336|0;da=k;n=h;o=i&65535;p=d;m=e&65535;s=(e^i)&-2147483648;u=i>>>16&32767;F=e>>>16&32767;a:{b:{if(u-32767>>>0>4294934529&F-32767>>>0>=4294934530){break b}j=e&2147483647;if(!(!d&(j|0)==2147418112?!(b|c):j>>>0<2147418112)){q=d;s=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){q=h;s=i|32768;b=f;c=g;break a}if(!(b|d|(j^2147418112|c))){if(!(f|h|(e^2147418112|g))){b=0;c=0;s=2147450880;break a}s=s|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){b=0;c=0;break a}if(!(b|d|(c|j))){b=!(f|h|(e|g));q=b?0:q;s=b?2147450880:s;b=0;c=0;break a}if(!(f|h|(e|g))){s=s|2147418112;b=0;c=0;break a}if((j|0)==65535|j>>>0<65535){i=b;d=!(m|p);h=d<<6;j=Q(d?b:p)+32|0;b=Q(d?c:m);b=h+((b|0)==32?j:b)|0;Wa(k+320|0,i,c,p,m,b-15|0);l=16-b|0;p=H[k+328>>2];m=H[k+332>>2];c=H[k+324>>2];b=H[k+320>>2]}if(e>>>0>65535){break b}d=!(n|o);e=d<<6;h=Q(d?f:n)+32|0;d=Q(d?g:o);d=e+((d|0)==32?h:d)|0;Wa(k+304|0,f,g,n,o,d-15|0);l=(d+l|0)-16|0;n=H[k+312>>2];o=H[k+316>>2];f=H[k+304>>2];g=H[k+308>>2]}e=o|65536;A=e;C=n;d=n;j=e<<15|d>>>17;e=d<<15|g>>>17;d=0-e|0;h=j;i=1963258675-(j+((e|0)!=0)|0)|0;$a(k+288|0,e,j,0,0,d,i,0,0);j=H[k+296>>2];$a(k+272|0,0-j|0,0-(H[k+300>>2]+((j|0)!=0)|0)|0,0,0,d,i,0,0);d=H[k+280>>2];i=d<<1|H[k+276>>2]>>>31;d=H[k+284>>2]<<1|d>>>31;$a(k+256|0,i,d,0,0,e,h,0,0);j=d;d=H[k+264>>2];$a(k+240|0,i,j,0,0,0-d|0,0-(H[k+268>>2]+((d|0)!=0)|0)|0,0,0);i=H[k+248>>2];j=i<<1|H[k+244>>2]>>>31;d=H[k+252>>2]<<1|i>>>31;$a(k+224|0,j,d,0,0,e,h,0,0);i=d;d=H[k+232>>2];$a(k+208|0,j,i,0,0,0-d|0,0-(H[k+236>>2]+((d|0)!=0)|0)|0,0,0);d=H[k+216>>2];i=d<<1|H[k+212>>2]>>>31;d=H[k+220>>2]<<1|d>>>31;$a(k+192|0,i,d,0,0,e,h,0,0);j=d;d=H[k+200>>2];$a(k+176|0,i,j,0,0,0-d|0,0-(H[k+204>>2]+((d|0)!=0)|0)|0,0,0);d=e;i=H[k+184>>2];e=i<<1|H[k+180>>2]>>>31;t=e-1|0;i=(H[k+188>>2]<<1|i>>>31)-!e|0;$a(k+160|0,d,h,0,0,t,i,0,0);d=f;j=g<<15|d>>>17;$a(k+144|0,d<<15,j,0,0,t,i,0,0);h=H[k+172>>2];o=H[k+160>>2];e=H[k+152>>2];d=o+e|0;n=H[k+164>>2];j=n+H[k+156>>2]|0;j=d>>>0>>0?j+1|0:j;e=d;d=j;n=(n|0)==(d|0)&e>>>0>>0|d>>>0>>0;j=n+H[k+168>>2]|0;h=j>>>0>>0?h+1|0:h;o=!d&e>>>0>1|(d|0)!=0;n=o+j|0;j=h;h=n;$a(k+112|0,t,i,0,0,0-h|0,0-(((h|0)!=0)+(h>>>0>>0?j+1|0:j)|0)|0,0,0);$a(k+128|0,1-e|0,0-((e>>>0>1)+d|0)|0,0,0,t,i,0,0);O=(F-u|0)+l|0;e=H[k+116>>2];x=e;d=H[k+112>>2];j=e<<1|d>>>31;y=d<<1;r=j;d=j;h=H[k+140>>2];I=h;e=H[k+136>>2];j=h<<1|e>>>31;i=e<<1|H[k+132>>2]>>>31;h=i+y|0;d=d+j|0;d=h>>>0>>0?d+1|0:d;e=d;d=d-(h>>>0<13927)|0;v=d;J=d;l=0;o=l;d=m|65536;F=d;L=p;B=(d&2147483647)<<1|p>>>31;w=Rk(v,l,B,0);d=ea;z=d;j=b;d=c<<1|j>>>31;u=j<<1;t=d;n=d;i=h-13927|0;l=(e|0)==(v|0)&i>>>0>>0|e>>>0>v>>>0;m=(e|0)==(r|0)&h>>>0>>0|e>>>0>>0;d=H[k+120>>2];h=H[k+124>>2]<<1|d>>>31;e=I>>>31|0;d=e+(d<<1|x>>>31)|0;j=h;j=d>>>0>>0?j+1|0:j;e=d;d=m+d|0;j=d>>>0>>0?j+1|0:j;e=d;d=l+d|0;l=d>>>0>>0?j+1|0:j;e=d;d=d-1|0;D=l-!e|0;y=0;j=Rk(n,q,D,y);e=j+w|0;h=ea+z|0;h=e>>>0>>0?h+1|0:h;l=(h|0)==(z|0)&e>>>0>>0|h>>>0>>0;j=0;z=j;r=d;I=0;w=l;d=p;P=c>>>31|0;E=P|d<<1;l=Rk(r,j,E,0);d=l+e|0;j=ea+h|0;j=d>>>0>>0?j+1|0:j;p=d;m=j;e=(j|0)==(h|0)&d>>>0>>0|h>>>0>j>>>0;d=w+e|0;l=0;l=d>>>0>>0?1:l;e=Rk(B,G,D,y);d=e+d|0;j=ea+l|0;w=d;d=d>>>0>>0?j+1|0:j;l=Rk(B,G,r,z);h=ea;v=Rk(E,q,D,y);e=v+l|0;j=ea+h|0;j=e>>>0>>0?j+1|0:j;v=e;e=j;j=(h|0)==(j|0)&l>>>0>v>>>0|h>>>0>j>>>0;l=w+e|0;d=d+j|0;h=l;l=h>>>0>>0?d+1|0:d;e=0;d=e+p|0;j=m+v|0;j=d>>>0>>0?j+1|0:j;e=j;m=(j|0)==(m|0)&d>>>0

>>0|j>>>0>>0;h=m+h|0;j=l;w=h;l=h>>>0>>0?j+1|0:j;p=d;m=e;v=i;h=Rk(i,0,E,q);e=ea;i=Rk(J,o,n,q);d=i+h|0;j=ea+e|0;j=d>>>0>>0?j+1|0:j;e=(e|0)==(j|0)&d>>>0>>0|e>>>0>j>>>0;h=j;M=w;x=e;N=u&-2;i=Rk(r,z,N,0);e=i+d|0;j=ea+j|0;j=e>>>0>>0?j+1|0:j;w=e;i=e;e=j;i=(j|0)==(h|0)&d>>>0>i>>>0|h>>>0>j>>>0;d=x+i|0;h=0;h=d>>>0>>0?1:h;j=d;i=d+p|0;d=h+m|0;x=i;h=i;d=h>>>0>>0?d+1|0:d;i=d;h=(d|0)==(m|0)&h>>>0

>>0|d>>>0>>0;d=M+h|0;j=l;M=d;p=d>>>0>>0?j+1|0:j;G=Rk(B,G,v,q);B=ea;h=Rk(D,y,N,q);d=h+G|0;j=ea+B|0;D=d;m=Rk(J,o,E,q);l=d+m|0;h=d>>>0>>0?j+1|0:j;d=h+ea|0;d=l>>>0>>0?d+1|0:d;E=l;m=Rk(n,q,r,z);j=l+m|0;l=ea+d|0;y=j;l=j>>>0>>0?l+1|0:l;m=0;r=(d|0)==(l|0)&j>>>0>>0|d>>>0>l>>>0;j=(d|0)==(h|0)&D>>>0>E>>>0|d>>>0>>0;d=j+((h|0)==(B|0)&G>>>0>D>>>0|h>>>0>>0)|0;h=0;d=r+d|0;r=l|0;h=r+x|0;j=(d|m)+i|0;j=h>>>0>>0?j+1|0:j;r=h;d=h;m=j;h=(i|0)==(j|0)&d>>>0>>0|i>>>0>j>>>0;d=h+M|0;j=p;z=d;i=d>>>0>>0?j+1|0:j;x=Rk(J,o,N,q);o=ea;h=Rk(n,q,v,q);d=h+x|0;j=ea+o|0;j=d>>>0>>0?j+1|0:j;p=0;h=(j|0)==(o|0)&d>>>0>>0|j>>>0>>0;n=j;d=j+w|0;j=(h|p)+e|0;h=d;j=d>>>0>>0?j+1|0:j;n=(e|0)==(j|0)&d>>>0>>0|e>>>0>j>>>0;e=0+d|0;d=j;l=y+d|0;l=e>>>0

>>0?l+1|0:l;e=(d|0)==(l|0)&e>>>0>>0|d>>>0>l>>>0;d=n+e|0;j=0;j=d>>>0>>0?1:j;e=d;d=d+r|0;j=j+m|0;j=d>>>0>>0?j+1|0:j;e=j;j=(m|0)==(j|0)&d>>>0>>0|j>>>0>>0;h=j+z|0;l=h>>>0>>0?i+1|0:i;i=l;c:{if((i|0)==131071|i>>>0<131071){j=L;l=F<<1|j>>>31;L=P|j<<1;F=l|I;$a(k+80|0,d,e,h,i,f,g,C,A);l=b<<17;b=0;c=H[k+88>>2];m=b-c|0;j=H[k+80>>2];o=H[k+84>>2];n=(j|o)!=0;p=m-n|0;m=(l-(H[k+92>>2]+(b>>>0>>0)|0)|0)-(m>>>0>>0)|0;n=0-j|0;o=0-(((j|0)!=0)+o|0)|0;b=O+16382|0;break c}d=(e&1)<<31|d>>>1;e=h<<31|e>>>1;h=(i&1)<<31|h>>>1;i=i>>>1|0;$a(k+96|0,d,e,h,i,f,g,C,A);m=0;n=H[k+104>>2];o=m-n|0;j=H[k+96>>2];t=H[k+100>>2];u=(j|t)!=0;p=o-u|0;m=((b<<16)-(H[k+108>>2]+(m>>>0>>0)|0)|0)-(o>>>0>>0)|0;n=0-j|0;o=0-(((j|0)!=0)+t|0)|0;u=b;t=c;b=O+16383|0}if((b|0)>=32767){s=s|2147418112;b=0;c=0;break a}d:{if((b|0)>0){c=p;j=m<<1|c>>>31;p=c<<1|o>>>31;m=j;u=h;t=i&65535|b<<16;b=n;j=o<<1|b>>>31;b=b<<1;break d}if((b|0)<=-113){b=0;c=0;break a}Lb(k- -64|0,d,e,h,i,1-b|0);Wa(k+48|0,u,t,L,F,b+112|0);d=H[k+64>>2];e=H[k+68>>2];u=H[k+72>>2];t=H[k+76>>2];$a(k+32|0,f,g,C,A,d,e,u,t);c=H[k+40>>2];i=c<<1;c=H[k+44>>2]<<1|c>>>31;b=H[k+56>>2];h=H[k+36>>2];p=h>>>31|i;i=b-p|0;l=H[k+60>>2]-((b>>>0

>>0)+c|0)|0;c=H[k+32>>2];h=h<<1|c>>>31;c=c<<1;j=H[k+52>>2];b=H[k+48>>2];m=(h|0)==(j|0)&c>>>0>b>>>0|h>>>0>j>>>0;p=i-m|0;m=l-(i>>>0>>0)|0;i=b;b=i-c|0;j=j-((c>>>0>i>>>0)+h|0)|0}$a(k+16|0,f,g,C,A,3,0,0,0);$a(k,f,g,C,A,5,0,0,0);i=d;n=d&1;c=b+n|0;d=0;h=j+d|0;h=b>>>0>c>>>0?h+1|0:h;l=c;b=l;g=(g|0)==(h|0)&b>>>0>f>>>0|g>>>0>>0;c=(d|0)==(h|0)&b>>>0>>0|d>>>0>h>>>0;b=c+p|0;j=m;j=b>>>0>>0?j+1|0:j;f=b;c=j;d=(b|0)==(C|0)&(j|0)==(A|0)?g:(A|0)==(j|0)&b>>>0>C>>>0|j>>>0>A>>>0;b=i+d|0;j=e;j=b>>>0>>0?j+1|0:j;d=b;b=j;g=(j|0)==(e|0)&d>>>0>>0|e>>>0>j>>>0;e=g+u|0;j=t;j=e>>>0>>0?j+1|0:j;g=e;e=d;n=g;d=H[k+20>>2];i=(d|0)==(h|0)&K[k+16>>2]>>0|d>>>0>>0;d=H[k+28>>2];g=H[k+24>>2];i=j>>>0<2147418112&((f|0)==(g|0)&(c|0)==(d|0)?i:(d|0)==(c|0)&g>>>0>>0|c>>>0>d>>>0);g=e+i|0;d=b;d=g>>>0>>0?d+1|0:d;e=(b|0)==(d|0)&e>>>0>g>>>0|b>>>0>d>>>0;b=n+e|0;j=b>>>0>>0?j+1|0:j;e=j;i=b;b=H[k+4>>2];l=(b|0)==(h|0)&K[k>>2]>>0|b>>>0>>0;b=H[k+12>>2];h=H[k+8>>2];c=j>>>0<2147418112&((f|0)==(h|0)&(b|0)==(c|0)?l:(b|0)==(c|0)&h>>>0>>0|b>>>0>>0);b=c+g|0;j=b>>>0>>0?d+1|0:d;c=j;g=(d|0)==(j|0)&b>>>0>>0|d>>>0>j>>>0;f=i+g|0;d=e;q=f|q;s=s|(f>>>0>>0?d+1|0:d)}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=q;H[a+12>>2]=s;da=k+336|0}function Ck(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=da-48|0;da=j;g=H[a+4>>2];a=H[a+12>>2];H[j+40>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+24>>2]=0;H[j+28>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;l=H[H[H[g+4>>2]+8>>2]+(a<<2)>>2];e=j+8|0;if((b|0)==-1){b=jg(a,g)}a:{if((b|0)==-2){break a}if((fa[H[H[g>>2]+8>>2]](g)|0)==1){k=da-32|0;da=k;h=H[H[H[g+4>>2]+8>>2]+(a<<2)>>2];b:{c:{d:{if((fa[H[H[g>>2]+8>>2]](g)|0)!=1|b-1>>>0>5){break d}d=fa[H[H[g>>2]+52>>2]](g)|0;i=fa[H[H[g>>2]+60>>2]](g,a)|0;if(!d|!i){break d}c=fa[H[H[g>>2]+56>>2]](g,a)|0;if(c){a=H[g+56>>2];H[k+20>>2]=c;H[k+16>>2]=a;H[k+28>>2]=i;H[k+24>>2]=i+12;f=k+16|0;a=0;e:{f:{switch(b-1|0){case 0:a=ra(60);H[a+4>>2]=h;H[a>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];c=H[e>>2];b=H[e+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=i;H[a+28>>2]=d;H[a+16>>2]=g;H[a+20>>2]=h;H[a+8>>2]=c;H[a+12>>2]=b;b=H[e+24>>2];d=H[e+28>>2]-b|0;if(d){if((d|0)<0){break c}c=ra(d);H[a+32>>2]=c;H[a+40>>2]=c+(d>>2<<2);m=a,n=sa(c,b,d)+d|0,H[m+36>>2]=n}b=H[f+4>>2];H[a+44>>2]=H[f>>2];H[a+48>>2]=b;b=H[f+12>>2];H[a+52>>2]=H[f+8>>2];H[a+56>>2]=b;H[a>>2]=2776;break e;case 3:a=ra(168);H[a+4>>2]=h;H[a>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];c=H[e>>2];b=H[e+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=i;H[a+28>>2]=d;H[a+16>>2]=g;H[a+20>>2]=h;H[a+8>>2]=c;H[a+12>>2]=b;b=H[e+24>>2];d=H[e+28>>2]-b|0;if(d){if((d|0)<0){break c}c=ra(d);H[a+32>>2]=c;H[a+40>>2]=c+(d>>2<<2);m=a,n=sa(c,b,d)+d|0,H[m+36>>2]=n}b=H[f+4>>2];H[a+44>>2]=H[f>>2];H[a+48>>2]=b;b=H[f+12>>2];H[a+52>>2]=H[f+8>>2];H[a+56>>2]=b;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=3540;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+144>>2]=0;H[a+160>>2]=0;H[a+152>>2]=0;H[a+156>>2]=0;break e;case 4:a=ra(104);H[a+4>>2]=h;H[a>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];c=H[e>>2];b=H[e+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=i;H[a+28>>2]=d;H[a+16>>2]=g;H[a+20>>2]=h;H[a+8>>2]=c;H[a+12>>2]=b;b=H[e+24>>2];d=H[e+28>>2]-b|0;if(d){if((d|0)<0){break c}c=ra(d);H[a+32>>2]=c;H[a+40>>2]=c+(d>>2<<2);m=a,n=sa(c,b,d)+d|0,H[m+36>>2]=n}b=H[f+4>>2];H[a+44>>2]=H[f>>2];H[a+48>>2]=b;c=H[f+8>>2];b=H[f+12>>2];H[a+84>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=3788;H[a+52>>2]=c;H[a+56>>2]=b;b=H[f+4>>2];H[a+88>>2]=H[f>>2];H[a+92>>2]=b;b=H[f+12>>2];H[a+96>>2]=H[f+8>>2];H[a+100>>2]=b;break e;case 5:break f;default:break e}}a=ra(144);H[a+4>>2]=h;H[a>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];c=H[e>>2];b=H[e+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=i;H[a+28>>2]=d;H[a+16>>2]=g;H[a+20>>2]=h;H[a+8>>2]=c;H[a+12>>2]=b;g:{h:{c=H[e+28>>2]-H[e+24>>2]|0;if(c){if((c|0)<0){break h}b=ra(c);H[a+32>>2]=b;H[a+36>>2]=b;H[a+40>>2]=b+(c>>2<<2);c=H[e+24>>2];d=H[e+28>>2]-c|0;if((d|0)>0){b=sa(b,c,d)+d|0}H[a+36>>2]=b}H[a>>2]=3428;b=H[f+4>>2];H[a+44>>2]=H[f>>2];H[a+48>>2]=b;b=H[f+12>>2];H[a+52>>2]=H[f+8>>2];H[a+56>>2]=b;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+60>>2]=4652;H[a>>2]=4024;b=H[f+4>>2];H[a+72>>2]=H[f>>2];H[a+76>>2]=b;b=H[f+12>>2];H[a+80>>2]=H[f+8>>2];H[a+84>>2]=b;H[a+104>>2]=1065353216;H[a+108>>2]=-1;H[a+96>>2]=-1;H[a+100>>2]=-1;H[a+88>>2]=1;H[a+92>>2]=-1;H[a+60>>2]=4260;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;break g}ua();X()}break e}c=a;break d}a=H[g+56>>2];H[k+20>>2]=d;H[k+16>>2]=a;H[k+28>>2]=i;H[k+24>>2]=i+12;f=k+16|0;a=0;i:{j:{switch(b-1|0){case 0:a=ra(60);H[a+4>>2]=h;H[a>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];c=H[e>>2];b=H[e+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=i;H[a+28>>2]=d;H[a+16>>2]=g;H[a+20>>2]=h;H[a+8>>2]=c;H[a+12>>2]=b;b=H[e+24>>2];d=H[e+28>>2]-b|0;if(d){if((d|0)<0){break c}c=ra(d);H[a+32>>2]=c;H[a+40>>2]=c+(d>>2<<2);m=a,n=sa(c,b,d)+d|0,H[m+36>>2]=n}b=H[f+4>>2];H[a+44>>2]=H[f>>2];H[a+48>>2]=b;b=H[f+12>>2];H[a+52>>2]=H[f+8>>2];H[a+56>>2]=b;H[a>>2]=4680;break i;case 3:a=ra(168);H[a+4>>2]=h;H[a>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];c=H[e>>2];b=H[e+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=i;H[a+28>>2]=d;H[a+16>>2]=g;H[a+20>>2]=h;H[a+8>>2]=c;H[a+12>>2]=b;b=H[e+24>>2];d=H[e+28>>2]-b|0;if(d){if((d|0)<0){break c}c=ra(d);H[a+32>>2]=c;H[a+40>>2]=c+(d>>2<<2);m=a,n=sa(c,b,d)+d|0,H[m+36>>2]=n}b=H[f+4>>2];H[a+44>>2]=H[f>>2];H[a+48>>2]=b;b=H[f+12>>2];H[a+52>>2]=H[f+8>>2];H[a+56>>2]=b;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=5104;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+144>>2]=0;H[a+160>>2]=0;H[a+152>>2]=0;H[a+156>>2]=0;break i;case 4:a=ra(104);H[a+4>>2]=h;H[a>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];c=H[e>>2];b=H[e+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=i;H[a+28>>2]=d;H[a+16>>2]=g;H[a+20>>2]=h;H[a+8>>2]=c;H[a+12>>2]=b;b=H[e+24>>2];d=H[e+28>>2]-b|0;if(d){if((d|0)<0){break c}c=ra(d);H[a+32>>2]=c;H[a+40>>2]=c+(d>>2<<2);m=a,n=sa(c,b,d)+d|0,H[m+36>>2]=n}b=H[f+4>>2];H[a+44>>2]=H[f>>2];H[a+48>>2]=b;c=H[f+8>>2];b=H[f+12>>2];H[a+84>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=5340;H[a+52>>2]=c;H[a+56>>2]=b;b=H[f+4>>2];H[a+88>>2]=H[f>>2];H[a+92>>2]=b;b=H[f+12>>2];H[a+96>>2]=H[f+8>>2];H[a+100>>2]=b;break i;case 5:break j;default:break i}}a=ra(144);H[a+4>>2]=h;H[a>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];c=H[e>>2];b=H[e+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=i;H[a+28>>2]=d;H[a+16>>2]=g;H[a+20>>2]=h;H[a+8>>2]=c;H[a+12>>2]=b;k:{l:{c=H[e+28>>2]-H[e+24>>2]|0;if(c){if((c|0)<0){break l}b=ra(c);H[a+32>>2]=b;H[a+36>>2]=b;H[a+40>>2]=b+(c>>2<<2);c=H[e+24>>2];d=H[e+28>>2]-c|0;if((d|0)>0){b=sa(b,c,d)+d|0}H[a+36>>2]=b}H[a>>2]=5048;b=H[f+4>>2];H[a+44>>2]=H[f>>2];H[a+48>>2]=b;b=H[f+12>>2];H[a+52>>2]=H[f+8>>2];H[a+56>>2]=b;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+60>>2]=6148;H[a>>2]=5564;b=H[f+4>>2];H[a+72>>2]=H[f>>2];H[a+76>>2]=b;b=H[f+12>>2];H[a+80>>2]=H[f+8>>2];H[a+84>>2]=b;H[a+104>>2]=1065353216;H[a+108>>2]=-1;H[a+96>>2]=-1;H[a+100>>2]=-1;H[a+88>>2]=1;H[a+92>>2]=-1;H[a+60>>2]=5784;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;break k}ua();X()}break i}c=a}da=k+32|0;break b}ua();X()}if(c){break a}}c=ra(44);H[c+4>>2]=l;H[c>>2]=3484;g=H[e+8>>2];h=H[e+12>>2];i=H[e+16>>2];d=H[e+20>>2];b=H[e>>2];a=H[e+4>>2];H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=i;H[c+28>>2]=d;H[c+16>>2]=g;H[c+20>>2]=h;H[c+8>>2]=b;H[c+12>>2]=a;m:{a=H[e+24>>2];d=H[e+28>>2]-a|0;if(d){if((d|0)<0){break m}b=ra(d);H[c+32>>2]=b;H[c+40>>2]=b+(d>>2<<2);m=c,n=sa(b,a,d)+d|0,H[m+36>>2]=n}H[c>>2]=6176;break a}ua();X()}a=H[j+32>>2];if(a){H[j+36>>2]=a;qa(a)}da=j+48|0;return c|0}function Pe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da-80|0;da=f;H[f+56>>2]=0;H[f+60>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+64>>2]=1065353216;c=H[a+80>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=ra(d);H[f+16>>2]=g;c=d+g|0;H[f+24>>2]=c;ta(g,0,d);H[f+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+d|0;d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[f+32>>2]=c;H[f+36>>2]=d;H[f+40>>2]=c;H[f+44>>2]=d;d=0;n=H[f+52>>2];c:{if(!n){break c}h=H[f+48>>2];m=J[f+38>>1]^(J[f+36>>1]^(J[f+34>>1]^(J[f+32>>1]^318)+239)+239)+239;c=m&n-1;e=Uk(n);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(n>>>0)|0}l=h;h=c;c=H[l+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){o=J[f+32>>1];j=J[f+34>>1];i=J[f+36>>1];l=J[f+38>>1];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=n>>>0){e=(e>>>0)%(n>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=J[c+8>>1];g:{if((e|0)!=(o|0)){e=(e|0)==(o|0);break g}e=J[c+10>>1];if((e|0)!=(j|0)){e=(e|0)==(j|0);break g}e=J[c+12>>1];if((e|0)!=(i|0)){e=(e|0)==(i|0);break g}e=(l|0)==J[c+14>>1]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}i=n-1|0;n=J[f+32>>1];o=J[f+34>>1];j=J[f+36>>1];l=J[f+38>>1];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&i)){break c}break h}e=J[c+8>>1];if((e|0)!=(n|0)){if((e|0)!=(n|0)){break h}break e}e=J[c+10>>1];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=J[c+12>>1];if((e|0)!=(j|0)){if((e|0)!=(j|0)){break h}break e}if((l|0)==J[c+14>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+16>>2];break i}H[f+8>>2]=r;c=H[f+36>>2];H[f>>2]=H[f+32>>2];H[f+4>>2]=c;c=0;m=J[f+6>>1]^(J[f+4>>1]^(J[f+2>>1]^(J[f>>1]^318)+239)+239)+239;j:{k:{k=f+48|0;e=H[k+4>>2];if(!e){break k}d=Uk(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}if(d>>>0<2){break l}j=J[f>>1];i=J[f+2>>1];l=J[f+4>>1];h=J[f+6>>1];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[g+8>>1];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=J[g+10>>1];if((d|0)!=(i|0)){d=(d|0)==(i|0);break m}d=J[g+12>>1];if((d|0)!=(l|0)){d=(d|0)==(l|0);break m}d=(h|0)==J[g+14>>1]}if(!d){continue}break}c=0;break j}c=m&e-1;g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}}l=e-1|0;o=J[f>>1];j=J[f+2>>1];i=J[f+4>>1];h=J[f+6>>1];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)&(d&l)!=(c|0)){break k}d=J[g+8>>1];n:{if((d|0)!=(o|0)){d=(d|0)==(o|0);break n}d=J[g+10>>1];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=J[g+12>>1];if((d|0)!=(i|0)){d=(d|0)==(i|0);break n}d=(h|0)==J[g+14>>1]}if(!d){continue}break}c=0;break j}g=ra(20);d=H[f+4>>2];H[g+8>>2]=H[f>>2];H[g+12>>2]=d;d=H[f+8>>2];H[g+4>>2]=m;H[g+16>>2]=d;H[g>>2]=0;p=O(H[k+12>>2]+1>>>0);u=L[k+16>>2];o:{if(!(e?p>O(u*O(e>>>0)):1)){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(p/u)));p:{if(p=O(0)){h=~~p>>>0;break p}h=0}d=d>>>0>>0?h:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ma(d);e=H[k+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}h=e>>>0<3;p=O(U(O(O(K[k+12>>2])/L[k+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(h){break u}if(Uk(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ma(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}d=0;l=0;i=c;v:{w:{x:{y:{if(c){if(i>>>0>=1073741824){break y}c=ra(i<<2);e=H[k>>2];H[k>>2]=c;if(e){qa(e)}H[k+4>>2]=i;if(i-1>>>0>=3){c=i&-4;e=0;while(1){h=d<<2;H[h+H[k>>2]>>2]=0;H[H[k>>2]+(h|4)>>2]=0;H[H[k>>2]+(h|8)>>2]=0;H[H[k>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=i&3;if(c){while(1){H[H[k>>2]+(d<<2)>>2]=0;d=d+1|0;l=l+1|0;if((c|0)!=(l|0)){continue}break}}e=H[k+8>>2];if(!e){break v}c=k+8|0;h=H[e+4>>2];d=Uk(i);if(d>>>0<2){break x}h=h>>>0>=i>>>0?(h>>>0)%(i>>>0)|0:h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){l=H[c+4>>2];if(i>>>0<=l>>>0){l=(l>>>0)%(i>>>0)|0}z:{if((h|0)==(l|0)){e=c;break z}d=c;n=l<<2;j=n+H[k>>2]|0;if(!H[j>>2]){H[j>>2]=e;e=c;h=l;break z}while(1){l=d;d=H[d>>2];if(d){o=J[c+8>>1];j=J[d+8>>1];A:{if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=J[c+10>>1];j=J[d+10>>1];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=J[c+12>>1];j=J[d+12>>1];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}j=J[c+14>>1]==J[d+14>>1]}if(j){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[k>>2];H[k>>2]=0;if(c){qa(c)}H[k+4>>2]=0;break v}wa(1604);X()}h=i-1&h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=i-1|0;while(1){l=o&H[c+4>>2];B:{if((l|0)==(h|0)){e=c;break B}d=c;n=l<<2;i=n+H[k>>2]|0;if(H[i>>2]){while(1){l=d;d=H[d>>2];if(d){j=J[c+8>>1];i=J[d+8>>1];C:{if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=J[c+10>>1];i=J[d+10>>1];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=J[c+12>>1];i=J[d+12>>1];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}i=J[c+14>>1]==J[d+14>>1]}if(i){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c;break B}H[i>>2]=e;e=c;h=l}c=H[e>>2];if(c){continue}break}}}e=H[k+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[k>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[g>>2]=H[k+8>>2];H[k+8>>2]=g;H[c>>2]=k+8;c=H[g>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[k>>2]+(c<<2)>>2]=g;break D}H[g>>2]=H[d>>2];H[d>>2]=g}H[k+12>>2]=H[k+12>>2]+1;c=1}F[f+76|0]=c;H[f+72>>2]=g;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,f+40|0,c);g=H[f+16>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break F}m=H[f+16>>2];b=b>>2;c=b>>>0>1?b:1;q=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){h=b<<2;c=h+l|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|4)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|8)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|12)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!q){break F}while(1){c=l+(b<<2)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((q|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);g=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+g}if(!c){break F}m=H[f+16>>2];e=0;b=0;if(c-1>>>0>=3){q=c&-4;while(1){h=b<<2;H[h+g>>2]=H[h+m>>2];d=h|4;H[d+g>>2]=H[d+m>>2];d=h|8;H[d+g>>2]=H[d+m>>2];d=h|12;H[d+g>>2]=H[d+m>>2];b=b+4|0;t=t+4|0;if((q|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+g>>2]=H[c+m>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=r}a=H[f+16>>2];if(a){qa(a)}b=H[f+56>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[f+48>>2];H[f+48>>2]=0;if(a){qa(a)}da=f+80|0;return r}ua();X()}function id(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da-96|0;da=f;H[f+72>>2]=0;H[f+76>>2]=0;H[f+64>>2]=0;H[f+68>>2]=0;H[f+80>>2]=1065353216;c=H[a+80>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}e=c<<2;n=ra(e);H[f+16>>2]=n;c=e+n|0;H[f+24>>2]=c;ta(n,0,e);H[f+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+d|0;H[f+56>>2]=I[d+8|0]|I[d+9|0]<<8|(I[d+10|0]<<16|I[d+11|0]<<24);c=I[d+4|0]|I[d+5|0]<<8|(I[d+6|0]<<16|I[d+7|0]<<24);H[f+48>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);H[f+52>>2]=c;e=I[d+4|0]|I[d+5|0]<<8|(I[d+6|0]<<16|I[d+7|0]<<24);c=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);H[f+40>>2]=I[d+8|0]|I[d+9|0]<<8|(I[d+10|0]<<16|I[d+11|0]<<24);H[f+32>>2]=c;H[f+36>>2]=e;e=0;c=f- -64|0;o=H[c+4>>2];c:{if(!o){break c}h=H[c>>2];m=H[f+40>>2]^(H[f+36>>2]^(H[f+32>>2]^318)+239)+239;c=m&o-1;d=Uk(o);d:{if(d>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(d>>>0>=2){k=H[f+40>>2];g=H[f+36>>2];l=H[f+32>>2];while(1){d=H[c+4>>2];f:{if((d|0)!=(m|0)){if(d>>>0>=o>>>0){d=(d>>>0)%(o>>>0)|0}if((d|0)!=(h|0)){break c}break f}d=H[c+8>>2];g:{if((d|0)!=(l|0)){d=(d|0)==(l|0);break g}d=H[c+12>>2];if((d|0)!=(g|0)){d=(d|0)==(g|0);break g}d=(k|0)==H[c+16>>2]}if(d){break e}}c=H[c>>2];if(c){continue}break}break c}l=o-1|0;k=H[f+40>>2];o=H[f+36>>2];g=H[f+32>>2];while(1){d=H[c+4>>2];h:{if((d|0)!=(m|0)){if((h|0)!=(d&l)){break c}break h}d=H[c+8>>2];if((d|0)!=(g|0)){if((d|0)!=(g|0)){break h}break e}d=H[c+12>>2];if((d|0)!=(o|0)){if((d|0)!=(o|0)){break h}break e}if((k|0)==H[c+16>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}e=c}i:{if(e){H[(s<<2)+n>>2]=H[e+20>>2];break i}H[f+8>>2]=H[f+40>>2];c=H[f+36>>2];H[f>>2]=H[f+32>>2];H[f+4>>2]=c;H[f+12>>2]=r;c=0;m=H[f+8>>2]^(H[f+4>>2]^(H[f>>2]^318)+239)+239;j:{k:{i=f- -64|0;g=H[i+4>>2];if(!g){break k}e=Uk(g);l:{if(e>>>0>=2){c=m;if(g>>>0<=c>>>0){c=(m>>>0)%(g>>>0)|0}j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}if(e>>>0<2){break l}d=H[f+8>>2];k=H[f+4>>2];h=H[f>>2];while(1){j=H[j>>2];if(!j){break k}e=H[j+4>>2];if((e|0)!=(m|0)){if(e>>>0>=g>>>0){e=(e>>>0)%(g>>>0)|0}if((c|0)!=(e|0)){break k}}e=H[j+8>>2];m:{if((e|0)!=(h|0)){e=(e|0)==(h|0);break m}e=H[j+12>>2];if((e|0)!=(k|0)){e=(e|0)==(k|0);break m}e=(d|0)==H[j+16>>2]}if(!e){continue}break}c=0;break j}c=m&g-1;j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}}h=g-1|0;d=H[f+8>>2];l=H[f+4>>2];k=H[f>>2];while(1){j=H[j>>2];if(!j){break k}e=H[j+4>>2];if((e|0)!=(m|0)&(e&h)!=(c|0)){break k}e=H[j+8>>2];n:{if((e|0)!=(k|0)){e=(e|0)==(k|0);break n}e=H[j+12>>2];if((e|0)!=(l|0)){e=(e|0)==(l|0);break n}e=(d|0)==H[j+16>>2]}if(!e){continue}break}c=0;break j}j=ra(24);H[j+16>>2]=H[f+8>>2];e=H[f+4>>2];H[j+8>>2]=H[f>>2];H[j+12>>2]=e;e=H[f+12>>2];H[j>>2]=0;H[j+4>>2]=m;H[j+20>>2]=e;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(!(g?u>O(p*O(g>>>0)):1)){break o}e=(g-1&g)!=0|g>>>0<3|g<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){d=~~p>>>0;break p}d=0}e=d>>>0>e>>>0?d:e;q:{if((e|0)==1){break q}if(!(e&e-1)){c=e;break q}c=Ma(e);g=H[i+4>>2]}r:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break r}d=g>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){e=~~p>>>0;break s}e=0}t:{u:{if(d){break u}if(Uk(g)>>>0>1){break u}e=e>>>0<2?e:1<<32-Q(e-1|0);break t}e=Ma(e)}c=c>>>0>>0?e:c;if(g>>>0<=c>>>0){break r}}d=0;k=0;l=c;v:{w:{x:{y:{if(c){if(l>>>0>=1073741824){break y}c=ra(l<<2);e=H[i>>2];H[i>>2]=c;if(e){qa(e)}H[i+4>>2]=l;if(l-1>>>0>=3){c=l&-4;e=0;while(1){h=d<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=l&3;if(c){while(1){H[H[i>>2]+(d<<2)>>2]=0;d=d+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}e=H[i+8>>2];if(!e){break v}c=i+8|0;h=H[e+4>>2];d=Uk(l);if(d>>>0<2){break x}h=h>>>0>=l>>>0?(h>>>0)%(l>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){k=H[c+4>>2];if(l>>>0<=k>>>0){k=(k>>>0)%(l>>>0)|0}z:{if((h|0)==(k|0)){e=c;break z}d=c;n=k<<2;g=n+H[i>>2]|0;if(!H[g>>2]){H[g>>2]=e;e=c;h=k;break z}while(1){k=d;d=H[d>>2];if(d){o=H[c+8>>2];g=H[d+8>>2];A:{if((o|0)!=(g|0)){g=(g|0)==(o|0);break A}o=H[c+12>>2];g=H[d+12>>2];if((o|0)!=(g|0)){g=(g|0)==(o|0);break A}g=H[c+16>>2]==H[d+16>>2]}if(g){continue}}break}H[e>>2]=d;H[k>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}wa(1604);X()}h=l-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=l-1|0;while(1){k=o&H[c+4>>2];B:{if((k|0)==(h|0)){e=c;break B}d=c;n=k<<2;l=n+H[i>>2]|0;if(H[l>>2]){while(1){k=d;d=H[d>>2];if(d){g=H[c+8>>2];l=H[d+8>>2];C:{if((g|0)!=(l|0)){g=(g|0)==(l|0);break C}g=H[c+12>>2];l=H[d+12>>2];if((g|0)!=(l|0)){g=(g|0)==(l|0);break C}g=H[c+16>>2]==H[d+16>>2]}if(g){continue}}break}H[e>>2]=d;H[k>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[l>>2]=e;e=c;h=k}c=H[e>>2];if(c){continue}break}}}g=H[i+4>>2];c=g-1|0;if(!(c&g)){c=c&m;break o}if(g>>>0>m>>>0){c=m;break o}c=(m>>>0)%(g>>>0)|0}c=H[i>>2]+(c<<2)|0;e=H[c>>2];D:{if(!e){H[j>>2]=H[i+8>>2];H[i+8>>2]=j;H[c>>2]=i+8;c=H[j>>2];if(!c){break D}c=H[c+4>>2];e=g-1|0;E:{if(!(e&g)){c=c&e;break E}if(c>>>0>>0){break E}c=(c>>>0)%(g>>>0)|0}H[H[i>>2]+(c<<2)>>2]=j;break D}H[j>>2]=H[e>>2];H[e>>2]=j}H[i+12>>2]=H[i+12>>2]+1;c=1}F[f+92|0]=c;H[f+88>>2]=j;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,f+48|0,c);n=H[f+16>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[f+16>>2];b=b>>2;c=b>>>0>1?b:1;d=c&3;b=0;if(c-1>>>0>=3){e=c&-4;n=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;n=n+4|0;if((e|0)!=(n|0)){continue}break}}if(!d){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;t=t+1|0;if((d|0)!=(t|0)){continue}break}break F}F[a+84|0]=0;e=H[a+68>>2];b=H[a+72>>2]-e>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);e=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+e}if(!c){break F}m=H[f+16>>2];b=0;if(c-1>>>0>=3){q=c&-4;n=0;while(1){h=b<<2;H[h+e>>2]=H[h+m>>2];d=h|4;H[d+e>>2]=H[d+m>>2];d=h|8;H[d+e>>2]=H[d+m>>2];d=h|12;H[d+e>>2]=H[d+m>>2];b=b+4|0;n=n+4|0;if((q|0)!=(n|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];b=b+1|0;t=t+1|0;if((d|0)!=(t|0)){continue}break}}H[a+80>>2]=r}a=H[f+16>>2];if(a){qa(a)}b=H[f+72>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[f+64>>2];H[f+64>>2]=0;if(a){qa(a)}da=f+96|0;return r}ua();X()}function bf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da+-64|0;da=f;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+48>>2]=1065353216;c=H[a+80>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=ra(d);H[f+8>>2]=g;c=d+g|0;H[f+16>>2]=c;ta(g,0,d);H[f+12>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+e|0;c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[f+24>>2]=c;H[f+28>>2]=c;d=0;n=H[f+36>>2];c:{if(!n){break c}h=H[f+32>>2];m=I[f+27|0]^(I[f+26|0]^(I[f+25|0]^(I[f+24|0]^318)+239)+239)+239;c=m&n-1;e=Uk(n);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(n>>>0)|0}l=h;h=c;c=H[l+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){o=I[f+24|0];j=I[f+25|0];i=I[f+26|0];l=I[f+27|0];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=n>>>0){e=(e>>>0)%(n>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=I[c+8|0];g:{if((e|0)!=(o|0)){e=(e|0)==(o|0);break g}e=I[c+9|0];if((e|0)!=(j|0)){e=(e|0)==(j|0);break g}e=I[c+10|0];if((e|0)!=(i|0)){e=(e|0)==(i|0);break g}e=(l|0)==I[c+11|0]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}i=n-1|0;n=I[f+24|0];o=I[f+25|0];j=I[f+26|0];l=I[f+27|0];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&i)){break c}break h}e=I[c+8|0];if((e|0)!=(n|0)){if((e|0)!=(n|0)){break h}break e}e=I[c+9|0];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=I[c+10|0];if((e|0)!=(j|0)){if((e|0)!=(j|0)){break h}break e}if((l|0)==I[c+11|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+12>>2];break i}H[f+4>>2]=r;H[f>>2]=H[f+24>>2];c=0;m=I[f+3|0]^(I[f+2|0]^(I[f+1|0]^(I[f|0]^318)+239)+239)+239;j:{k:{k=f+32|0;e=H[k+4>>2];if(!e){break k}d=Uk(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}if(d>>>0<2){break l}j=I[f|0];i=I[f+1|0];l=I[f+2|0];h=I[f+3|0];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[g+8|0];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=I[g+9|0];if((d|0)!=(i|0)){d=(d|0)==(i|0);break m}d=I[g+10|0];if((d|0)!=(l|0)){d=(d|0)==(l|0);break m}d=(h|0)==I[g+11|0]}if(!d){continue}break}c=0;break j}c=m&e-1;g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}}l=e-1|0;o=I[f|0];j=I[f+1|0];i=I[f+2|0];h=I[f+3|0];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)&(d&l)!=(c|0)){break k}d=I[g+8|0];n:{if((d|0)!=(o|0)){d=(d|0)==(o|0);break n}d=I[g+9|0];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=I[g+10|0];if((d|0)!=(i|0)){d=(d|0)==(i|0);break n}d=(h|0)==I[g+11|0]}if(!d){continue}break}c=0;break j}g=ra(16);H[g+8>>2]=H[f>>2];d=H[f+4>>2];H[g+4>>2]=m;H[g+12>>2]=d;H[g>>2]=0;p=O(H[k+12>>2]+1>>>0);u=L[k+16>>2];o:{if(!(e?p>O(u*O(e>>>0)):1)){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(p/u)));p:{if(p=O(0)){h=~~p>>>0;break p}h=0}d=d>>>0>>0?h:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ma(d);e=H[k+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}h=e>>>0<3;p=O(U(O(O(K[k+12>>2])/L[k+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(h){break u}if(Uk(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ma(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}d=0;l=0;i=c;v:{w:{x:{y:{if(c){if(i>>>0>=1073741824){break y}c=ra(i<<2);e=H[k>>2];H[k>>2]=c;if(e){qa(e)}H[k+4>>2]=i;if(i-1>>>0>=3){c=i&-4;e=0;while(1){h=d<<2;H[h+H[k>>2]>>2]=0;H[H[k>>2]+(h|4)>>2]=0;H[H[k>>2]+(h|8)>>2]=0;H[H[k>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=i&3;if(c){while(1){H[H[k>>2]+(d<<2)>>2]=0;d=d+1|0;l=l+1|0;if((c|0)!=(l|0)){continue}break}}e=H[k+8>>2];if(!e){break v}c=k+8|0;h=H[e+4>>2];d=Uk(i);if(d>>>0<2){break x}h=h>>>0>=i>>>0?(h>>>0)%(i>>>0)|0:h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){l=H[c+4>>2];if(i>>>0<=l>>>0){l=(l>>>0)%(i>>>0)|0}z:{if((h|0)==(l|0)){e=c;break z}d=c;n=l<<2;j=n+H[k>>2]|0;if(!H[j>>2]){H[j>>2]=e;e=c;h=l;break z}while(1){l=d;d=H[d>>2];if(d){o=I[c+8|0];j=I[d+8|0];A:{if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=I[c+9|0];j=I[d+9|0];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=I[c+10|0];j=I[d+10|0];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}j=I[c+11|0]==I[d+11|0]}if(j){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[k>>2];H[k>>2]=0;if(c){qa(c)}H[k+4>>2]=0;break v}wa(1604);X()}h=i-1&h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=i-1|0;while(1){l=o&H[c+4>>2];B:{if((l|0)==(h|0)){e=c;break B}d=c;n=l<<2;i=n+H[k>>2]|0;if(H[i>>2]){while(1){l=d;d=H[d>>2];if(d){j=I[c+8|0];i=I[d+8|0];C:{if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=I[c+9|0];i=I[d+9|0];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=I[c+10|0];i=I[d+10|0];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}i=I[c+11|0]==I[d+11|0]}if(i){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c;break B}H[i>>2]=e;e=c;h=l}c=H[e>>2];if(c){continue}break}}}e=H[k+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[k>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[g>>2]=H[k+8>>2];H[k+8>>2]=g;H[c>>2]=k+8;c=H[g>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[k>>2]+(c<<2)>>2]=g;break D}H[g>>2]=H[d>>2];H[d>>2]=g}H[k+12>>2]=H[k+12>>2]+1;c=1}F[f+60|0]=c;H[f+56>>2]=g;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,f+28|0,c);g=H[f+8>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break F}m=H[f+8>>2];b=b>>2;c=b>>>0>1?b:1;q=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){h=b<<2;c=h+l|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|4)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|8)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|12)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!q){break F}while(1){c=l+(b<<2)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((q|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);g=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+g}if(!c){break F}m=H[f+8>>2];e=0;b=0;if(c-1>>>0>=3){q=c&-4;while(1){h=b<<2;H[h+g>>2]=H[h+m>>2];d=h|4;H[d+g>>2]=H[d+m>>2];d=h|8;H[d+g>>2]=H[d+m>>2];d=h|12;H[d+g>>2]=H[d+m>>2];b=b+4|0;t=t+4|0;if((q|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+g>>2]=H[c+m>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=r}a=H[f+8>>2];if(a){qa(a)}b=H[f+40>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[f+32>>2];H[f+32>>2]=0;if(a){qa(a)}da=f- -64|0;return r}ua();X()}function Yd(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,O=0;r=da-32|0;da=r;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;l=H[e+20>>2];if(!H[e+16>>2]&(l|0)<=0|(l|0)<0){d=a+4|0;va(e,H[e+4>>2],a,d);l=H[e+20>>2];if(!H[e+16>>2]&(l|0)<=0|(l|0)<0){va(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){D=a+12|0;Ba(D);E=a+44|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];F=a- -64|0;d=F;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];G=a+84|0;d=G;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[r+24>>2]=H[b+8>>2];d=H[b+4>>2];H[r+16>>2]=H[b>>2];H[r+20>>2]=d;H[r+8>>2]=H[c+8>>2];b=H[c+4>>2];H[r>>2]=H[c>>2];H[r+4>>2]=b;b=0;f=da-32|0;da=f;d=a;h=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(h){if(h>>>0>=1073741824){break b}a=h<<2;b=ra(a);H[f+8>>2]=b;g=a+b|0;H[f+16>>2]=g;ta(b,0,a);H[f+12>>2]=g}a=H[d+140>>2];c=H[a>>2];if(c){H[a+4>>2]=c;qa(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=H[d+8>>2];g=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=g;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(h){if(h>>>0>=1073741824){break c}c=h<<2;a=ra(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;ta(a,0,c);H[f+12>>2]=b}c=H[d+152>>2];l=H[c>>2];if(l){H[c+4>>2]=l;qa(l);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];z=H[r+4>>2];A=H[r+8>>2];x=H[r+20>>2];v=H[r+24>>2];b=H[r>>2];c=H[r+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;kb(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;l=(a>>>0)/113|0;a=H[H[f+12>>2]+(l<<2)>>2]+N(a-N(l,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=b-c;H[a+24>>2]=0;H[a+12>>2]=b;H[a+4>>2]=x;H[a+8>>2]=v;H[a>>2]=c;H[a+16>>2]=z;H[a+20>>2]=A;a=H[f+28>>2];h=a+1|0;H[f+28>>2]=h;if(a>>>0<=h>>>0){J=d+44|0;m=d+12|0;L=d+84|0;M=v&-4;I=v&3;O=v-1>>>0<3;while(1){q=H[f+12>>2];g=H[f+24>>2];n=h-1|0;a=g+n|0;b=(a>>>0)/113|0;a=H[q+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;C=H[a+32>>2];b=H[a+24>>2];l=H[a+12>>2];c=H[a>>2];H[f+28>>2]=n;a=H[f+16>>2];n=a-q|0;if(((n?N(n>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}H[r+16>>2]=c;H[r>>2]=l;h=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;n=h<<2;B=N(C,12);q=B+H[d+152>>2]|0;b=H[d>>2]-H[n+H[q>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{p=l-c|0;if(p>>>0<=2){l=H[d+128>>2];H[l>>2]=h;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}g=H[d+140>>2];a=g+B|0;j=g;g=B+12|0;eb(j+g|0,H[a>>2],H[a+4>>2]);a=H[g+H[d+140>>2]>>2]+n|0;q=H[a>>2]+(1<>2]=q;a=c;h:{if((l|0)==(a|0)){break h}o=H[x+24>>2];b=c;a=l;if(!v){if(q>>>0>K[n+o>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(q>>>0<=K[(H[z+24>>2]+n|0)+(N(a,A)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){t=o+(N(b,v)<<2)|0;if(q>>>0>K[t+n>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}i=H[z+24>>2]+(N(a,A)<<2)|0;if(q>>>0<=K[i+n>>2]){continue}break}s=0;g=0;u=0;if(!O){while(1){k=g<<2;j=k+t|0;w=H[j>>2];y=j;j=i+k|0;H[y>>2]=H[j>>2];H[j>>2]=w;j=k|4;w=j+t|0;y=H[w>>2];j=i+j|0;H[w>>2]=H[j>>2];H[j>>2]=y;j=k|8;w=j+t|0;y=H[w>>2];j=i+j|0;H[w>>2]=H[j>>2];H[j>>2]=y;k=k|12;j=k+t|0;w=H[j>>2];k=i+k|0;H[j>>2]=H[k>>2];H[k>>2]=w;g=g+4|0;u=u+4|0;if((M|0)!=(u|0)){continue}break}}if(I){while(1){k=g<<2;u=k+t|0;j=H[u>>2];k=i+k|0;H[u>>2]=H[k>>2];H[k>>2]=j;g=g+1|0;s=s+1|0;if((I|0)!=(s|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}q=a-c|0;t=l-a|0;if((q|0)!=(t|0)){fc(L,q>>>0>>0)}b=H[m>>2];g=H[b+12>>2];j=H[b+8>>2];i=(p>>>1|0)-(q>>>0>>0?q:t)|0;i=i<<8&16711680|i<<24|(i>>>8&65280|i>>>24);i=i>>>4&252645135|(i&252645135)<<4;i=i>>>2&858993459|(i&858993459)<<2;s=i>>>1&1431655765|(i&1431655765)<<1;i=Q(p)^31;o=32-i|0;p=s>>>o|0;s=Uk(p);k=j+s|0;H[b+8>>2]=k;H[b+12>>2]=k>>>0>>0?g+1|0:g;g=i-s|0;s=g;k=g+H[b>>2]|0;g=H[b+4>>2]+(g>>31)|0;H[b>>2]=k;H[b+4>>2]=k>>>0>>0?g+1|0:g;i:{j:{k:{l:{m:{b=H[m+28>>2];s=32-b|0;n:{if((s|0)>=(i|0)){g=b+i|0;H[m+28>>2]=g;i=-1>>>o<>2]&(i^-1)|i&p<>2]=k;if((g|0)!=32){break i}b=H[m+16>>2];if((b|0)!=H[m+20>>2]){H[b>>2]=k;H[m+16>>2]=b+4;b=0;g=0;break n}g=H[m+12>>2];i=b-g|0;o=i>>2;b=o+1|0;if(b>>>0>=1073741824){break m}p=i>>1;p=o>>>0<536870911?b>>>0>p>>>0?b:p:1073741823;if(p){if(p>>>0>=1073741824){break l}b=ra(p<<2)}else{b=0}o=b+(o<<2)|0;H[o>>2]=k;if((i|0)>0){sa(b,g,i)}H[m+20>>2]=b+(p<<2);H[m+16>>2]=o+4;H[m+12>>2]=b;b=0;if(!g){g=0;break n}qa(g);g=0;break n}u=H[m+24>>2]&(-1<>2]=u;b=H[m+16>>2];o:{if((b|0)!=H[m+20>>2]){H[b>>2]=u;H[m+16>>2]=b+4;break o}g=H[m+12>>2];k=b-g|0;j=k>>2;b=j+1|0;if(b>>>0>=1073741824){break k}o=k>>1;o=j>>>0<536870911?b>>>0>o>>>0?b:o:1073741823;if(o){if(o>>>0>=1073741824){break j}b=ra(o<<2)}else{b=0}j=b+(j<<2)|0;H[j>>2]=u;if((k|0)>0){sa(b,g,k)}H[m+20>>2]=b+(o<<2);H[m+16>>2]=j+4;H[m+12>>2]=b;if(!g){break o}qa(g)}g=i-s|0;b=-1>>>32-g&p>>>s}H[m+28>>2]=g;H[m+24>>2]=b;break i}ua();X()}wa(1604);X()}ua();X()}wa(1604);X()}j=n;b=H[d+152>>2];g=b+B|0;n=H[g>>2];i=j+n|0;H[i>>2]=H[i>>2]+1;i=C+1|0;eb(b+N(i,12)|0,n,H[g+4>>2]);if((a|0)!=(c|0)){g=H[f+28>>2]+H[f+24>>2]|0;b=H[f+12>>2];n=H[f+16>>2]-b|0;if((g|0)==((n?N(n>>2,113)-1|0:0)|0)){kb(f+8|0);g=H[f+24>>2]+H[f+28>>2]|0;j=H[f+12>>2]}else{j=b}b=(g>>>0)/113|0;b=H[j+(b<<2)>>2]+N(g-N(b,113)|0,36)|0;H[b+32>>2]=C;H[b+28>>2]=q;H[b+24>>2]=h;H[b+12>>2]=a;H[b+4>>2]=x;H[b+8>>2]=v;H[b>>2]=c;H[b+20>>2]=v;H[b+16>>2]=x;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(l|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];c=H[f+16>>2]-g|0;if((b|0)==((c?N(c>>2,113)-1|0:0)|0)){kb(f+8|0);g=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}c=(b>>>0)/113|0;b=H[(c<<2)+g>>2]+N(b-N(c,113)|0,36)|0;H[b+32>>2]=i;H[b+28>>2]=t;H[b+24>>2]=h;H[b+12>>2]=l;H[b+8>>2]=v;H[b+4>>2]=x;H[b>>2]=a;H[b+16>>2]=z;H[b+20>>2]=A;h=H[f+28>>2]+1|0;H[f+28>>2]=h;break d}while(1){h=(a-1|0)==(h|0)?0:h+1|0;H[l+(b<<2)>>2]=h;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}if(!p|!a){break e}g=0;b=1;while(1){h=0;p:{if(!b){b=0;break p}l=H[x+24>>2]+(N(H[x+4>>2],c+g|0)<<2)|0;while(1){b=H[H[d+128>>2]+(h<<2)>>2]<<2;n=H[d>>2]-H[b+H[q>>2]>>2]|0;if(n){Mb(J,n,H[b+l>>2]);a=H[d+8>>2]}b=a;h=h+1|0;if(b>>>0>h>>>0){continue}break}}g=g+1|0;if((p|0)!=(g|0)){continue}break}}h=H[f+28>>2]}if(h){continue}break}}H[f+28>>2]=0;a=H[f+16>>2];h=H[f+12>>2];c=a-h>>2;if(c>>>0>=3){while(1){qa(H[h>>2]);h=H[f+12>>2]+4|0;H[f+12>>2]=h;a=H[f+16>>2];c=a-h>>2;if(c>>>0>2){continue}break}}b=56;q:{switch(c-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break q}}r:{if((a|0)==(h|0)){break r}while(1){qa(H[h>>2]);h=h+4|0;if((h|0)!=(a|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break r}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){qa(a)}da=f+32|0;break a}ua();X()}ua();X()}Aa(D,e);ib(E,e);ib(F,e);ib(G,e)}da=r+32|0;return 1}function Ve(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=O(0);g=da-80|0;da=g;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+64>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;ta(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+e|0;G[g+44>>1]=I[d+4|0]|I[d+5|0]<<8;H[g+40>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);c=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);G[g+36>>1]=I[d+4|0]|I[d+5|0]<<8;H[g+32>>2]=c;d=0;o=H[g+52>>2];c:{if(!o){break c}h=H[g+48>>2];m=J[g+36>>1]^(J[g+34>>1]^(J[g+32>>1]^318)+239)+239;c=m&o+262143;e=Uk(o);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){f=J[g+32>>1];k=J[g+34>>1];j=J[g+36>>1];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=o>>>0){e=(e>>>0)%(o>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=J[c+8>>1];g:{if((e|0)!=(f|0)){e=(e|0)==(f|0);break g}e=J[c+10>>1];if((e|0)!=(k|0)){e=(e|0)==(k|0);break g}e=(j|0)==J[c+12>>1]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}k=o-1|0;o=J[g+32>>1];f=J[g+34>>1];j=J[g+36>>1];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&k)){break c}break h}e=J[c+8>>1];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=J[c+10>>1];if((e|0)!=(f|0)){if((e|0)!=(f|0)){break h}break e}if((j|0)==J[c+12>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+16>>2];break i}G[g+4>>1]=J[g+36>>1];H[g>>2]=H[g+32>>2];H[g+8>>2]=r;c=0;m=J[g+4>>1]^(J[g+2>>1]^(J[g>>1]^318)+239)+239;j:{k:{i=g+48|0;f=H[i+4>>2];if(!f){break k}d=Uk(f);l:{if(d>>>0>=2){c=m;if(f>>>0<=c>>>0){c=(m>>>0)%(f>>>0)|0}l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}if(d>>>0<2){break l}j=J[g>>1];h=J[g+2>>1];e=J[g+4>>1];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)){if(d>>>0>=f>>>0){d=(d>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[l+8>>1];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=J[l+10>>1];if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(e|0)==J[l+12>>1]}if(!d){continue}break}c=0;break j}c=m&f+262143;l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}}h=f-1|0;k=J[g>>1];j=J[g+2>>1];e=J[g+4>>1];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=J[l+8>>1];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=J[l+10>>1];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(e|0)==J[l+12>>1]}if(!d){continue}break}c=0;break j}l=ra(20);G[l+12>>1]=J[g+4>>1];H[l+8>>2]=H[g>>2];d=H[g+8>>2];H[l>>2]=0;H[l+4>>2]=m;H[l+16>>2]=d;t=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(!(f?t>O(p*O(f>>>0)):1)){break o}d=(f-1&f)!=0|f>>>0<3|f<<1;c=2;p=O(U(O(t/p)));p:{if(p=O(0)){e=~~p>>>0;break p}e=0}d=d>>>0>>0?e:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ma(d);f=H[i+4>>2]}r:{if(c>>>0<=f>>>0){if(c>>>0>=f>>>0){break r}e=f>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(e){break u}if(Uk(f)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ma(d)}c=c>>>0>>0?d:c;if(f>>>0<=c>>>0){break r}}e=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=ra(k<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=k;if(k-1>>>0>=3){c=k&-4;d=0;while(1){h=e<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;e=e+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[i>>2]+(e<<2)>>2]=0;e=e+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];e=Uk(k);if(e>>>0<2){break x}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(e>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}e=c;n=j<<2;f=n+H[i>>2]|0;if(!H[f>>2]){H[f>>2]=d;d=c;h=j;break z}while(1){j=e;e=H[e>>2];if(e){o=J[c+8>>1];f=J[e+8>>1];A:{if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}o=J[c+10>>1];f=J[e+10>>1];if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}f=J[c+12>>1]==J[e+12>>1]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}wa(1604);X()}h=k-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}o=k-1|0;while(1){j=o&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}e=c;n=j<<2;k=n+H[i>>2]|0;if(H[k>>2]){while(1){j=e;e=H[e>>2];if(e){f=J[c+8>>1];k=J[e+8>>1];C:{if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=J[c+10>>1];k=J[e+10>>1];if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=J[c+12>>1]==J[e+12>>1]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[k>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}f=H[i+4>>2];c=f-1|0;if(!(c&f)){c=c&m;break o}if(f>>>0>m>>>0){c=m;break o}c=(m>>>0)%(f>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[l>>2]=H[i+8>>2];H[i+8>>2]=l;H[c>>2]=i+8;c=H[l>>2];if(!c){break D}c=H[c+4>>2];d=f-1|0;E:{if(!(d&f)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=l;break D}H[l>>2]=H[d>>2];H[d>>2]=l}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+76|0]=c;H[g+72>>2]=l;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,g+40|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;e=c&3;n=0;b=0;if(c-1>>>0>=3){d=c&-4;f=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;f=f+4|0;if((d|0)!=(f|0)){continue}break}}if(!e){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}m=H[g+16>>2];n=0;b=0;if(c-1>>>0>=3){q=c&-4;f=0;while(1){h=b<<2;H[h+d>>2]=H[h+m>>2];e=h|4;H[e+d>>2]=H[e+m>>2];e=h|8;H[e+d>>2]=H[e+m>>2];e=h|12;H[e+d>>2]=H[e+m>>2];b=b+4|0;f=f+4|0;if((q|0)!=(f|0)){continue}break}}e=c&3;if(!e){break F}while(1){c=b<<2;H[c+d>>2]=H[c+m>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}}H[a+80>>2]=r}a=H[g+16>>2];if(a){qa(a)}b=H[g+56>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+48>>2];H[g+48>>2]=0;if(a){qa(a)}da=g+80|0;return r}ua();X()}function ef(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+8>>2]=n;c=d+n|0;H[g+16>>2]=c;ta(n,0,d);H[g+12>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+e|0;F[g+30|0]=I[d+2|0];G[g+28>>1]=I[d|0]|I[d+1|0]<<8;c=I[d|0]|I[d+1|0]<<8;F[g+26|0]=I[d+2|0];G[g+24>>1]=c;d=0;o=H[g+36>>2];c:{if(!o){break c}h=H[g+32>>2];m=I[g+26|0]^(I[g+25|0]^(I[g+24|0]^318)+239)+239;c=m&o-1;e=Uk(o);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){f=I[g+24|0];k=I[g+25|0];j=I[g+26|0];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=o>>>0){e=(e>>>0)%(o>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=I[c+8|0];g:{if((e|0)!=(f|0)){e=(e|0)==(f|0);break g}e=I[c+9|0];if((e|0)!=(k|0)){e=(e|0)==(k|0);break g}e=(j|0)==I[c+10|0]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}k=o-1|0;o=I[g+24|0];f=I[g+25|0];j=I[g+26|0];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&k)){break c}break h}e=I[c+8|0];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=I[c+9|0];if((e|0)!=(f|0)){if((e|0)!=(f|0)){break h}break e}if((j|0)==I[c+10|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}F[g+2|0]=I[g+26|0];G[g>>1]=J[g+24>>1];H[g+4>>2]=r;c=0;m=I[g+2|0]^(I[g+1|0]^(I[g|0]^318)+239)+239;j:{k:{i=g+32|0;f=H[i+4>>2];if(!f){break k}d=Uk(f);l:{if(d>>>0>=2){c=m;if(f>>>0<=c>>>0){c=(m>>>0)%(f>>>0)|0}l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}if(d>>>0<2){break l}j=I[g|0];h=I[g+1|0];e=I[g+2|0];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)){if(d>>>0>=f>>>0){d=(d>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[l+8|0];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=I[l+9|0];if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(e|0)==I[l+10|0]}if(!d){continue}break}c=0;break j}c=m&f-1;l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}}h=f-1|0;k=I[g|0];j=I[g+1|0];e=I[g+2|0];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=I[l+8|0];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=I[l+9|0];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(e|0)==I[l+10|0]}if(!d){continue}break}c=0;break j}l=ra(16);F[l+10|0]=I[g+2|0];G[l+8>>1]=J[g>>1];d=H[g+4>>2];H[l>>2]=0;H[l+4>>2]=m;H[l+12>>2]=d;t=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(!(f?t>O(p*O(f>>>0)):1)){break o}d=(f-1&f)!=0|f>>>0<3|f<<1;c=2;p=O(U(O(t/p)));p:{if(p=O(0)){e=~~p>>>0;break p}e=0}d=d>>>0>>0?e:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ma(d);f=H[i+4>>2]}r:{if(c>>>0<=f>>>0){if(c>>>0>=f>>>0){break r}e=f>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(e){break u}if(Uk(f)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ma(d)}c=c>>>0>>0?d:c;if(f>>>0<=c>>>0){break r}}e=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=ra(k<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=k;if(k-1>>>0>=3){c=k&-4;d=0;while(1){h=e<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;e=e+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[i>>2]+(e<<2)>>2]=0;e=e+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];e=Uk(k);if(e>>>0<2){break x}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(e>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}e=c;n=j<<2;f=n+H[i>>2]|0;if(!H[f>>2]){H[f>>2]=d;d=c;h=j;break z}while(1){j=e;e=H[e>>2];if(e){o=I[c+8|0];f=I[e+8|0];A:{if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}o=I[c+9|0];f=I[e+9|0];if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}f=I[c+10|0]==I[e+10|0]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}wa(1604);X()}h=k-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}o=k-1|0;while(1){j=o&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}e=c;n=j<<2;k=n+H[i>>2]|0;if(H[k>>2]){while(1){j=e;e=H[e>>2];if(e){f=I[c+8|0];k=I[e+8|0];C:{if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=I[c+9|0];k=I[e+9|0];if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=I[c+10|0]==I[e+10|0]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[k>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}f=H[i+4>>2];c=f-1|0;if(!(c&f)){c=c&m;break o}if(f>>>0>m>>>0){c=m;break o}c=(m>>>0)%(f>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[l>>2]=H[i+8>>2];H[i+8>>2]=l;H[c>>2]=i+8;c=H[l>>2];if(!c){break D}c=H[c+4>>2];d=f-1|0;E:{if(!(d&f)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=l;break D}H[l>>2]=H[d>>2];H[d>>2]=l}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=l;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,g+28|0,c);n=H[g+8>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+8>>2];b=b>>2;c=b>>>0>1?b:1;e=c&3;n=0;b=0;if(c-1>>>0>=3){d=c&-4;f=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;f=f+4|0;if((d|0)!=(f|0)){continue}break}}if(!e){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}m=H[g+8>>2];n=0;b=0;if(c-1>>>0>=3){q=c&-4;f=0;while(1){h=b<<2;H[h+d>>2]=H[h+m>>2];e=h|4;H[e+d>>2]=H[e+m>>2];e=h|8;H[e+d>>2]=H[e+m>>2];e=h|12;H[e+d>>2]=H[e+m>>2];b=b+4|0;f=f+4|0;if((q|0)!=(f|0)){continue}break}}e=c&3;if(!e){break F}while(1){c=b<<2;H[c+d>>2]=H[c+m>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}}H[a+80>>2]=r}a=H[g+8>>2];if(a){qa(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){qa(a)}da=g- -64|0;return r}ua();X()}function kd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da-80|0;da=g;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+64>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;ta(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+d|0;d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[g+32>>2]=c;H[g+36>>2]=d;H[g+40>>2]=c;H[g+44>>2]=d;d=0;l=H[g+52>>2];c:{if(!l){break c}h=H[g+48>>2];m=H[g+36>>2]^(H[g+32>>2]^318)+239;c=m&l-1;f=Uk(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){k=H[g+36>>2];e=H[g+32>>2];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=H[c+8>>2];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(k|0)==H[c+12>>2]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;k=H[g+36>>2];l=H[g+32>>2];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=H[c+8>>2];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((k|0)==H[c+12>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+16>>2];break i}H[g+8>>2]=q;c=H[g+36>>2];H[g>>2]=H[g+32>>2];H[g+4>>2]=c;c=0;m=H[g+4>>2]^(H[g>>2]^318)+239;j:{k:{i=g+48|0;e=H[i+4>>2];if(!e){break k}d=Uk(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}if(d>>>0<2){break l}f=H[g+4>>2];h=H[g>>2];while(1){j=H[j>>2];if(!j){break k}d=H[j+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=H[j+8>>2];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==H[j+12>>2]}if(!d){continue}break}c=0;break j}c=m&e-1;j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}}h=e-1|0;f=H[g+4>>2];k=H[g>>2];while(1){j=H[j>>2];if(!j){break k}d=H[j+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=H[j+8>>2];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=(f|0)==H[j+12>>2]}if(!d){continue}break}c=0;break j}j=ra(20);d=H[g+4>>2];H[j+8>>2]=H[g>>2];H[j+12>>2]=d;d=H[g+8>>2];H[j+4>>2]=m;H[j+16>>2]=d;H[j>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(!(e?u>O(p*O(e>>>0)):1)){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ma(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Uk(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ma(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;k=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=ra(e<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Uk(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){k=H[c+4>>2];if(e>>>0<=k>>>0){k=(k>>>0)%(e>>>0)|0}z:{if((h|0)==(k|0)){d=c;break z}f=c;r=k<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=k;break z}while(1){k=f;f=H[f>>2];if(f){n=H[c+8>>2];l=H[f+8>>2];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=H[c+12>>2]==H[f+12>>2]}if(l){continue}}break}H[d>>2]=f;H[k>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}wa(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){k=n&H[c+4>>2];B:{if((k|0)==(h|0)){d=c;break B}f=c;r=k<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){k=f;f=H[f>>2];if(f){l=H[c+8>>2];e=H[f+8>>2];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=H[c+12>>2]==H[f+12>>2]}if(e){continue}}break}H[d>>2]=f;H[k>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=k}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[j>>2]=H[i+8>>2];H[i+8>>2]=j;H[c>>2]=i+8;c=H[j>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=j;break D}H[j>>2]=H[d>>2];H[d>>2]=j}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+76|0]=c;H[g+72>>2]=j;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,q)|0,g+40|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+16>>2];if(a){qa(a)}b=H[g+56>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+48>>2];H[g+48>>2]=0;if(a){qa(a)}da=g+80|0;return q}ua();X()}function Xe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+8>>2]=n;c=d+n|0;H[g+16>>2]=c;ta(n,0,d);H[g+12>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+f|0;c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[g+24>>2]=c;H[g+28>>2]=c;d=0;l=H[g+36>>2];c:{if(!l){break c}h=H[g+32>>2];m=J[g+26>>1]^(J[g+24>>1]^318)+239;c=m&l+131071;f=Uk(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){e=J[g+24>>1];j=J[g+26>>1];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=J[c+8>>1];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(j|0)==J[c+10>>1]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;l=J[g+24>>1];j=J[g+26>>1];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=J[c+8>>1];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((j|0)==J[c+10>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}H[g+4>>2]=q;H[g>>2]=H[g+24>>2];c=0;m=J[g+2>>1]^(J[g>>1]^318)+239;j:{k:{i=g+32|0;e=H[i+4>>2];if(!e){break k}d=Uk(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}if(d>>>0<2){break l}h=J[g>>1];f=J[g+2>>1];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[k+8>>1];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==J[k+10>>1]}if(!d){continue}break}c=0;break j}c=m&e+131071;k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}}h=e-1|0;j=J[g>>1];f=J[g+2>>1];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=J[k+8>>1];n:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(f|0)==J[k+10>>1]}if(!d){continue}break}c=0;break j}k=ra(16);H[k+8>>2]=H[g>>2];d=H[g+4>>2];H[k+4>>2]=m;H[k+12>>2]=d;H[k>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(!(e?u>O(p*O(e>>>0)):1)){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ma(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Uk(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ma(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;j=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=ra(e<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Uk(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){j=H[c+4>>2];if(e>>>0<=j>>>0){j=(j>>>0)%(e>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}f=c;r=j<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=j;break z}while(1){j=f;f=H[f>>2];if(f){n=J[c+8>>1];l=J[f+8>>1];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=J[c+10>>1]==J[f+10>>1]}if(l){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}wa(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}f=c;r=j<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){j=f;f=H[f>>2];if(f){l=J[c+8>>1];e=J[f+8>>1];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=J[c+10>>1]==J[f+10>>1]}if(e){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[k>>2]=H[i+8>>2];H[i+8>>2]=k;H[c>>2]=i+8;c=H[k>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=k;break D}H[k>>2]=H[d>>2];H[d>>2]=k}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=k;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,q)|0,g+28|0,c);n=H[g+8>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+8>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+8>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+8>>2];if(a){qa(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){qa(a)}da=g- -64|0;return q}ua();X()}function gf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;ta(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+f|0;c=I[c|0]|I[c+1|0]<<8;G[g+28>>1]=c;G[g+30>>1]=c;d=0;l=H[g+36>>2];c:{if(!l){break c}h=H[g+32>>2];m=I[g+29|0]^(I[g+28|0]^318)+239;c=m&l+1023;f=Uk(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){e=I[g+28|0];j=I[g+29|0];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=I[c+8|0];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(j|0)==I[c+9|0]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;l=I[g+28|0];j=I[g+29|0];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=I[c+8|0];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((j|0)==I[c+9|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}H[g+12>>2]=q;G[g+8>>1]=J[g+28>>1];c=0;m=I[g+9|0]^(I[g+8|0]^318)+239;j:{k:{i=g+32|0;e=H[i+4>>2];if(!e){break k}d=Uk(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}if(d>>>0<2){break l}h=I[g+8|0];f=I[g+9|0];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[k+8|0];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==I[k+9|0]}if(!d){continue}break}c=0;break j}c=m&e+1023;k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}}h=e-1|0;j=I[g+8|0];f=I[g+9|0];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=I[k+8|0];n:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(f|0)==I[k+9|0]}if(!d){continue}break}c=0;break j}k=ra(16);G[k+8>>1]=J[g+8>>1];d=H[g+12>>2];H[k+4>>2]=m;H[k+12>>2]=d;H[k>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(!(e?u>O(p*O(e>>>0)):1)){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ma(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Uk(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ma(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;j=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=ra(e<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Uk(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){j=H[c+4>>2];if(e>>>0<=j>>>0){j=(j>>>0)%(e>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}f=c;r=j<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=j;break z}while(1){j=f;f=H[f>>2];if(f){n=I[c+8|0];l=I[f+8|0];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=I[c+9|0]==I[f+9|0]}if(l){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}wa(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}f=c;r=j<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){j=f;f=H[f>>2];if(f){l=I[c+8|0];e=I[f+8|0];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=I[c+9|0]==I[f+9|0]}if(e){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[k>>2]=H[i+8>>2];H[i+8>>2]=k;H[c>>2]=i+8;c=H[k>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=k;break D}H[k>>2]=H[d>>2];H[d>>2]=k}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=k;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,q)|0,g+30|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+16>>2];if(a){qa(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){qa(a)}da=g- -64|0;return q}ua();X()}function ph(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0;l=da-560|0;da=l;H[l+44>>2]=0;A(+b);g=v(1)|0;v(0)|0;a:{if((g|0)<0){s=1;w=1285;b=-b;A(+b);g=v(1)|0;v(0)|0;break a}if(e&2048){s=1;w=1288;break a}s=e&1;w=s?1291:1286;z=!s}b:{if((g&2146435072)==2146435072){d=s+3|0;Xa(a,32,c,d,e&-65537);Va(a,w,s);f=f&32;Va(a,b!=b?f?1546:1787:f?1597:1791,3);Xa(a,32,c,d,e^8192);i=(c|0)>(d|0)?c:d;break b}u=l+16|0;c:{d:{e:{b=we(b,l+44|0);b=b+b;if(b!=0){g=H[l+44>>2];H[l+44>>2]=g-1;t=f|32;if((t|0)!=97){break e}break c}t=f|32;if((t|0)==97){break c}k=H[l+44>>2];m=(d|0)<0?6:d;break d}k=g-29|0;H[l+44>>2]=k;b=b*268435456;m=(d|0)<0?6:d}o=(k|0)<0?l+48|0:l+336|0;h=o;while(1){if(b<4294967296&b>=0){d=~~b>>>0}else{d=0}H[h>>2]=d;h=h+4|0;b=(b-+(d>>>0))*1e9;if(b!=0){continue}break}f:{if((k|0)<=0){d=k;g=h;j=o;break f}j=o;d=k;while(1){d=d>>>0<29?d:29;g=h-4|0;g:{if(j>>>0>g>>>0){break g}i=0;while(1){p=H[g>>2];n=d&31;x=i;if((d&63)>>>0>=32){i=p<>>32-n;p=p<>>0

>>0?i+1|0:i;i=Tk(n,i,1e9,0);p=Rk(i,ea,1e9,0);H[g>>2]=n-p;g=g-4|0;if(j>>>0<=g>>>0){continue}break}if(!i){break g}j=j-4|0;H[j>>2]=i}while(1){g=h;if(j>>>0>>0){h=g-4|0;if(!H[h>>2]){continue}}break}d=H[l+44>>2]-d|0;H[l+44>>2]=d;h=g;if((d|0)>0){continue}break}}h=(m+25>>>0)/9|0;if((d|0)<0){n=h+1|0;p=(t|0)==102;while(1){d=0-d|0;i=d>>>0<9?d:9;h:{if(g>>>0>j>>>0){y=1e9>>>i|0;q=-1<>2];H[h>>2]=x+(d>>>i|0);d=N(d&q,y);h=h+4|0;if(h>>>0>>0){continue}break}h=H[j>>2];if(!d){break h}H[g>>2]=d;g=g+4|0;break h}h=H[j>>2]}d=i+H[l+44>>2]|0;H[l+44>>2]=d;j=(!h<<2)+j|0;h=p?o:j;g=(n|0)>2?h+(n<<2)|0:g;if((d|0)<0){continue}break}}d=0;i:{if(g>>>0<=j>>>0){break i}d=N(o-j>>2,9);h=10;i=H[j>>2];if(i>>>0<10){break i}while(1){d=d+1|0;h=N(h,10);if(i>>>0>=h>>>0){continue}break}}h=(m-((t|0)==102?0:d)|0)-((t|0)==103&(m|0)!=0)|0;if((h|0)<(N(g-o>>2,9)-9|0)){i=h+9216|0;n=(i|0)/9|0;k=((((k|0)<0?4:292)+l|0)+(n<<2)|0)-4048|0;h=10;i=i-N(n,9)|0;if((i|0)<=7){while(1){h=N(h,10);i=i+1|0;if((i|0)!=8){continue}break}}n=H[k>>2];p=(n>>>0)/(h>>>0)|0;i=n-N(h,p)|0;q=k+4|0;j:{if(!i&(q|0)==(g|0)){break j}k:{if(!(p&1)){b=9007199254740992;if(!(F[k-4|0]&1)|((h|0)!=1e9|j>>>0>=k>>>0)){break k}}b=9007199254740994}r=(g|0)==(q|0)?1:1.5;q=h>>>1|0;r=i>>>0>>0?.5:(i|0)==(q|0)?r:1.5;if(!(I[w|0]!=45|z)){r=-r;b=-b}i=n-i|0;H[k>>2]=i;if(b+r==b){break j}d=h+i|0;H[k>>2]=d;if(d>>>0>=1e9){while(1){H[k>>2]=0;k=k-4|0;if(k>>>0>>0){j=j-4|0;H[j>>2]=0}d=H[k>>2]+1|0;H[k>>2]=d;if(d>>>0>999999999){continue}break}}d=N(o-j>>2,9);h=10;i=H[j>>2];if(i>>>0<10){break j}while(1){d=d+1|0;h=N(h,10);if(i>>>0>=h>>>0){continue}break}}h=k+4|0;g=g>>>0>h>>>0?h:g}while(1){h=g;i=g>>>0<=j>>>0;if(!i){g=h-4|0;if(!H[g>>2]){continue}}break}l:{if((t|0)!=103){k=e&8;break l}g=m?m:1;k=(g|0)>(d|0)&(d|0)>-5;m=(k?d^-1:-1)+g|0;f=(k?-1:-2)+f|0;k=e&8;if(k){break l}g=-9;m:{if(i){break m}n=H[h-4>>2];if(!n){break m}i=10;g=0;if((n>>>0)%10|0){break m}while(1){k=g;g=g+1|0;i=N(i,10);if(!((n>>>0)%(i>>>0)|0)){continue}break}g=k^-1}i=N(h-o>>2,9);if((f&-33)==70){k=0;g=(g+i|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g;break l}k=0;g=((d+i|0)+g|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g}i=-1;g=k|m;if(((g?2147483645:2147483646)|0)<(m|0)){break b}t=(g|0)!=0;n=(t+m|0)+1|0;p=f&-33;n:{if((p|0)==70){if((2147483647-n|0)<(d|0)){break b}g=(d|0)>0?d:0;break n}g=d>>31;g=Pb(g+d^g,0,u);if((u-g|0)<=1){while(1){g=g-1|0;F[g|0]=48;if((u-g|0)<2){continue}break}}q=g-2|0;F[q|0]=f;F[g-1|0]=(d|0)<0?45:43;g=u-q|0;if((g|0)>(2147483647-n|0)){break b}}d=g+n|0;if((d|0)>(s^2147483647)){break b}f=d+s|0;Xa(a,32,c,f,e);Va(a,w,s);Xa(a,48,c,f,e^65536);o:{p:{q:{if((p|0)==70){g=l+16|0;d=g|8;k=g|9;i=j>>>0>o>>>0?o:j;j=i;while(1){g=Pb(H[j>>2],0,k);r:{if((i|0)!=(j|0)){if(l+16>>>0>=g>>>0){break r}while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}break r}if((g|0)!=(k|0)){break r}F[l+24|0]=48;g=d}Va(a,g,k-g|0);j=j+4|0;if(o>>>0>=j>>>0){continue}break}g=0;if(!t){break p}Va(a,2125,1);if((m|0)<=0|h>>>0<=j>>>0){break q}while(1){g=Pb(H[j>>2],0,k);if(g>>>0>l+16>>>0){while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}}Va(a,g,(m|0)<9?m:9);g=m-9|0;j=j+4|0;if(h>>>0<=j>>>0){break p}d=(m|0)>9;m=g;if(d){continue}break}break p}s:{if((m|0)<0){break s}i=h>>>0>j>>>0?h:j+4|0;d=l+16|0;o=d|9;d=d|8;h=j;while(1){g=Pb(H[h>>2],0,o);if((o|0)==(g|0)){F[l+24|0]=48;g=d}t:{if((h|0)!=(j|0)){if(l+16>>>0>=g>>>0){break t}while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}break t}Va(a,g,1);g=g+1|0;if(!(k|m)){break t}Va(a,2125,1)}x=g;g=o-g|0;Va(a,x,(g|0)<(m|0)?g:m);m=m-g|0;h=h+4|0;if(i>>>0<=h>>>0){break s}if((m|0)>=0){continue}break}}Xa(a,48,m+18|0,18,0);Va(a,q,u-q|0);break o}g=m}Xa(a,48,g+9|0,9,0)}Xa(a,32,c,f,e^8192);i=(c|0)>(f|0)?c:f;break b}m=(f<<26>>31&9)+w|0;u:{if(d>>>0>11){break u}g=12-d|0;r=16;while(1){r=r*16;g=g-1|0;if(g){continue}break}if(I[m|0]==45){b=-(r+(-b-r));break u}b=b+r-r}h=H[l+44>>2];g=h>>31;g=Pb(g^g+h,0,u);if((u|0)==(g|0)){F[l+15|0]=48;g=l+15|0}k=s|2;j=f&32;h=H[l+44>>2];o=g-2|0;F[o|0]=f+15;F[g-1|0]=(h|0)<0?45:43;i=e&8;h=l+16|0;while(1){f=h;if(P(b)<2147483648){g=~~b}else{g=-2147483648}F[h|0]=j|I[g+15600|0];b=(b-+(g|0))*16;h=f+1|0;if(!(!(i?1:(d|0)>0|b!=0)|(h-(l+16|0)|0)!=1)){F[f+1|0]=46;h=f+2|0}if(b!=0){continue}break}i=-1;n=u-o|0;f=n+k|0;if((2147483645-f|0)<(d|0)){break b}v:{w:{if(!d){break w}j=h-(l+16|0)|0;if((j-2|0)>=(d|0)){break w}g=d+2|0;break v}j=h-(l+16|0)|0;g=j}d=g+f|0;Xa(a,32,c,d,e);Va(a,m,k);Xa(a,48,c,d,e^65536);Va(a,l+16|0,j);Xa(a,48,g-j|0,0,0);Va(a,o,n);Xa(a,32,c,d,e^8192);i=(c|0)>(d|0)?c:d}da=l+560|0;return i|0}function ve(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=da-80|0;da=f;H[f+76>>2]=1601;v=f+55|0;r=f+56|0;a:{b:{c:{d:{e:while(1){if((2147483647-m|0)<(e|0)){break d}m=e+m|0;f:{g:{h:{l=H[f+76>>2];e=l;k=I[e|0];if(k){while(1){i:{g=k&255;j:{if(!g){k=e;break j}if((g|0)!=37){break i}k=e;while(1){if(I[e+1|0]!=37){break j}g=e+2|0;H[f+76>>2]=g;k=k+1|0;h=I[e+2|0];e=g;if((h|0)==37){continue}break}}e=k-l|0;u=2147483647-m|0;if((e|0)>(u|0)){break d}if(a){Va(a,l,e)}if(e){continue e}p=-1;g=1;e=H[f+76>>2];if(!(F[e+1|0]-48>>>0>=10|I[e+2|0]!=36)){p=F[e+1|0]-48|0;t=1;g=3}e=g+e|0;H[f+76>>2]=e;n=0;i=F[e|0];h=i-32|0;k:{if(h>>>0>31){g=e;break k}g=e;j=1<>2]=g;n=j|n;i=F[e+1|0];h=i-32|0;if(h>>>0>=32){break k}e=g;j=1<>>0>=10){break n}e=H[f+76>>2];if(I[e+2|0]!=36){break n}H[((F[e+1|0]<<2)+d|0)-192>>2]=10;o=H[((F[e+1|0]<<3)+c|0)-384>>2];t=1;e=e+3|0;break m}if(t){break h}t=0;o=0;if(a){e=H[b>>2];H[b>>2]=e+4;o=H[e>>2]}e=H[f+76>>2]+1|0}H[f+76>>2]=e;if((o|0)>=0){break l}o=0-o|0;n=n|8192;break l}o=ue(f+76|0);if((o|0)<0){break d}e=H[f+76>>2]}g=0;j=-1;q=0;o:{if(I[e|0]!=46){break o}if(I[e+1|0]==42){p:{q:{if(F[e+2|0]-48>>>0>=10){break q}e=H[f+76>>2];if(I[e+3|0]!=36){break q}H[((F[e+2|0]<<2)+d|0)-192>>2]=10;j=H[((F[e+2|0]<<3)+c|0)-384>>2];e=e+4|0;break p}if(t){break h}if(a){e=H[b>>2];H[b>>2]=e+4;j=H[e>>2]}else{j=0}e=H[f+76>>2]+2|0}H[f+76>>2]=e;q=(j^-1)>>>31|0;break o}H[f+76>>2]=e+1;j=ue(f+76|0);e=H[f+76>>2];q=1}while(1){s=g;k=28;if(F[e|0]-123>>>0<4294967238){break c}i=e+1|0;H[f+76>>2]=i;g=F[e|0];e=i;g=I[(g+N(s,58)|0)+15071|0];if(g-1>>>0<8){continue}break}r:{s:{if((g|0)!=27){if(!g){break c}if((p|0)>=0){H[(p<<2)+d>>2]=g;e=(p<<3)+c|0;g=H[e+4>>2];H[f+64>>2]=H[e>>2];H[f+68>>2]=g;break s}if(!a){break f}te(f- -64|0,g,b);i=H[f+76>>2];break r}if((p|0)>=0){break c}}e=0;if(!a){continue e}}h=n&-65537;g=n&8192?h:n;n=0;p=1275;k=r;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{e=F[i-1|0];e=s?(e&15)==3?e&-33:e:e;switch(e-88|0){case 11:break t;case 9:case 13:case 14:case 15:break u;case 27:break z;case 12:case 17:break C;case 23:break D;case 0:case 32:break E;case 24:break F;case 22:break G;case 29:break H;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break I}}J:{switch(e-65|0){case 0:case 4:case 5:case 6:break u;case 2:break x;case 1:case 3:break g;default:break J}}if((e|0)==83){break y}break g}i=H[f+64>>2];h=H[f+68>>2];p=1275;break B}e=0;K:{switch(s&255){case 0:H[H[f+64>>2]>>2]=m;continue e;case 1:H[H[f+64>>2]>>2]=m;continue e;case 2:g=H[f+64>>2];H[g>>2]=m;H[g+4>>2]=m>>31;continue e;case 3:G[H[f+64>>2]>>1]=m;continue e;case 4:F[H[f+64>>2]]=m;continue e;case 6:H[H[f+64>>2]>>2]=m;continue e;case 7:break K;default:continue e}}g=H[f+64>>2];H[g>>2]=m;H[g+4>>2]=m>>31;continue e}j=j>>>0>8?j:8;g=g|8;e=120}l=r;w=e&32;i=H[f+64>>2];h=H[f+68>>2];if(i|h){while(1){l=l-1|0;F[l|0]=w|I[(i&15)+15600|0];x=!h&i>>>0>15|(h|0)!=0;s=h;h=h>>>4|0;i=(s&15)<<28|i>>>4;if(x){continue}break}}if(!(H[f+64>>2]|H[f+68>>2])|!(g&8)){break A}p=(e>>>4|0)+1275|0;n=2;break A}e=r;i=H[f+64>>2];h=H[f+68>>2];if(i|h){while(1){e=e-1|0;F[e|0]=i&7|48;s=!h&i>>>0>7|(h|0)!=0;l=h;h=h>>>3|0;i=(l&7)<<29|i>>>3;if(s){continue}break}}l=e;if(!(g&8)){break A}e=r-l|0;j=(e|0)<(j|0)?j:e+1|0;break A}e=H[f+68>>2];h=e;i=H[f+64>>2];if((e|0)<0){h=0-(h+((i|0)!=0)|0)|0;i=0-i|0;H[f+64>>2]=i;H[f+68>>2]=h;n=1;p=1275;break B}if(g&2048){n=1;p=1276;break B}n=g&1;p=n?1277:1275}l=Pb(i,h,r)}if((j|0)<0?q:0){break d}g=q?g&-65537:g;h=H[f+64>>2];e=H[f+68>>2];if(!(j|(h|e)!=0)){l=r;k=l;j=0;break g}e=!(e|h)+(r-l|0)|0;j=(e|0)<(j|0)?j:e;break g}q=(j|0)<0?2147483647:j;i=q;g=(i|0)!=0;e=H[f+64>>2];l=e?e:2127;k=l;e=l;L:{M:{N:{O:{if(!(e&3)|!i){break O}while(1){if(!I[e|0]){break N}i=i-1|0;g=(i|0)!=0;e=e+1|0;if(!(e&3)){break O}if(i){continue}break}}if(!g){break M}}P:{if(!I[e|0]|i>>>0<4){break P}while(1){g=H[e>>2];if((g^-1)&g-16843009&-2139062144){break P}e=e+4|0;i=i-4|0;if(i>>>0>3){continue}break}}if(!i){break M}while(1){if(!I[e|0]){break L}e=e+1|0;i=i-1|0;if(i){continue}break}}e=0}e=e?e-k|0:q;k=e+l|0;if((j|0)>=0){g=h;j=e;break g}g=h;j=e;if(I[k|0]){break d}break g}if(j){k=H[f+64>>2];break w}e=0;Xa(a,32,o,0,g);break v}H[f+12>>2]=0;H[f+8>>2]=H[f+64>>2];k=f+8|0;H[f+64>>2]=k;j=-1}e=0;Q:{while(1){h=H[k>>2];if(!h){break Q}h=re(f+4|0,h);l=(h|0)<0;if(!(l|h>>>0>j-e>>>0)){k=k+4|0;e=e+h|0;if(j>>>0>e>>>0){continue}break Q}break}if(l){break b}}k=61;if((e|0)<0){break c}Xa(a,32,o,e,g);if(!e){e=0;break v}j=0;k=H[f+64>>2];while(1){h=H[k>>2];if(!h){break v}h=re(f+4|0,h);j=h+j|0;if(j>>>0>e>>>0){break v}Va(a,f+4|0,h);k=k+4|0;if(e>>>0>j>>>0){continue}break}}Xa(a,32,o,e,g^8192);e=(e|0)<(o|0)?o:e;continue e}if((j|0)<0?q:0){break d}k=61;e=fa[368](a,M[f+64>>3],o,j,g,e)|0;if((e|0)>=0){continue e}break c}F[f+55|0]=H[f+64>>2];j=1;l=v;g=h;break g}g=e+1|0;H[f+76>>2]=g;k=I[e+1|0];e=g;continue}}if(a){break a}if(!t){break f}e=1;while(1){a=H[(e<<2)+d>>2];if(a){te((e<<3)+c|0,a,b);m=1;e=e+1|0;if((e|0)!=10){continue}break a}break}m=1;if(e>>>0>=10){break a}while(1){if(H[(e<<2)+d>>2]){break h}e=e+1|0;if((e|0)!=10){continue}break}break a}k=28;break c}i=k-l|0;j=(j|0)<(i|0)?i:j;if((j|0)>(2147483647-n|0)){break d}k=61;h=j+n|0;e=(h|0)>(o|0)?h:o;if((u|0)<(e|0)){break c}Xa(a,32,e,h,g);Va(a,p,n);Xa(a,48,e,h,g^65536);Xa(a,48,j,i,0);Va(a,l,i);Xa(a,32,e,h,g^8192);continue}break}m=0;break a}k=61}H[4736]=k}m=-1}da=f+80|0;return m}function _d(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0;n=da-32|0;da=n;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;i=H[e+20>>2];if(!H[e+16>>2]&(i|0)<=0|(i|0)<0){d=a+4|0;va(e,H[e+4>>2],a,d);i=H[e+20>>2];if(!H[e+16>>2]&(i|0)<=0|(i|0)<0){va(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){B=a+12|0;Td(B);C=a+1068|0;d=C;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];D=a+1088|0;d=D;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];E=a+1108|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[n+24>>2]=H[b+8>>2];d=H[b+4>>2];H[n+16>>2]=H[b>>2];H[n+20>>2]=d;H[n+8>>2]=H[c+8>>2];b=H[c+4>>2];H[n>>2]=H[c>>2];H[n+4>>2]=b;b=0;f=da-32|0;da=f;d=a;h=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(h){if(h>>>0>=1073741824){break b}a=h<<2;b=ra(a);H[f+8>>2]=b;g=a+b|0;H[f+16>>2]=g;ta(b,0,a);H[f+12>>2]=g}a=H[d+1164>>2];c=H[a>>2];if(c){H[a+4>>2]=c;qa(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=H[d+8>>2];g=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=g;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(h){if(h>>>0>=1073741824){break c}c=h<<2;a=ra(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;ta(a,0,c);H[f+12>>2]=b}c=H[d+1176>>2];i=H[c>>2];if(i){H[c+4>>2]=i;qa(i);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];w=H[n+4>>2];x=H[n+8>>2];u=H[n+20>>2];r=H[n+24>>2];b=H[n>>2];c=H[n+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;kb(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;i=(a>>>0)/113|0;a=H[H[f+12>>2]+(i<<2)>>2]+N(a-N(i,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=b-c;H[a+24>>2]=0;H[a+12>>2]=b;H[a+4>>2]=u;H[a+8>>2]=r;H[a>>2]=c;H[a+16>>2]=w;H[a+20>>2]=x;a=H[f+28>>2];h=a+1|0;H[f+28>>2]=h;if(a>>>0<=h>>>0){I=d+1068|0;J=d+1108|0;L=r&-4;F=r&3;M=r-1>>>0<3;while(1){m=H[f+12>>2];g=H[f+24>>2];k=h-1|0;a=g+k|0;b=(a>>>0)/113|0;a=H[m+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;z=H[a+32>>2];b=H[a+24>>2];i=H[a+12>>2];c=H[a>>2];H[f+28>>2]=k;a=H[f+16>>2];k=a-m|0;if(((k?N(k>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}H[n+16>>2]=c;H[n>>2]=i;h=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;k=h<<2;y=N(z,12);g=y+H[d+1176>>2]|0;b=H[d>>2]-H[k+H[g>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{s=i-c|0;if(s>>>0<=2){i=H[d+1152>>2];H[i>>2]=h;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}g=H[d+1164>>2];a=g+y|0;q=g;g=y+12|0;eb(q+g|0,H[a>>2],H[a+4>>2]);a=k+H[g+H[d+1164>>2]>>2]|0;m=H[a>>2]+(1<>2]=m;a=c;h:{if((i|0)==(a|0)){break h}G=H[u+24>>2];b=c;a=i;if(!r){if(m>>>0>K[k+G>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(m>>>0<=K[(k+H[w+24>>2]|0)+(N(a,x)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){p=(N(b,r)<<2)+G|0;if(m>>>0>K[p+k>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}o=H[w+24>>2]+(N(a,x)<<2)|0;if(m>>>0<=K[o+k>>2]){continue}break}A=0;g=0;v=0;if(!M){while(1){l=g<<2;j=l+p|0;t=H[j>>2];q=j;j=l+o|0;H[q>>2]=H[j>>2];H[j>>2]=t;j=l|4;t=j+p|0;q=H[t>>2];j=j+o|0;H[t>>2]=H[j>>2];H[j>>2]=q;j=l|8;t=j+p|0;q=H[t>>2];j=j+o|0;H[t>>2]=H[j>>2];H[j>>2]=q;l=l|12;j=l+p|0;t=H[j>>2];l=l+o|0;H[j>>2]=H[l>>2];H[l>>2]=t;g=g+4|0;v=v+4|0;if((L|0)!=(v|0)){continue}break}}if(F){while(1){l=g<<2;v=l+p|0;j=H[v>>2];l=l+o|0;H[v>>2]=H[l>>2];H[l>>2]=j;g=g+1|0;A=A+1|0;if((A|0)!=(F|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}m=a-c|0;p=i-a|0;if((m|0)!=(p|0)){fc(J,m>>>0

>>0)}l=z+1|0;b=Q(s);o=b^31;g=s>>>1|0;i:{if(m>>>0

>>0){if(!o){break i}s=g-m|0;b=1<<30-b;g=0;while(1){Ja((d+(g<<5)|0)+12|0,(b&s)!=0);b=b>>>1|0;g=g+1|0;if((o|0)!=(g|0)){continue}break}break i}if(!o){break i}s=g-p|0;b=1<<30-b;g=0;while(1){Ja((d+(g<<5)|0)+12|0,(b&s)!=0);b=b>>>1|0;g=g+1|0;if((o|0)!=(g|0)){continue}break}}q=k;b=H[d+1176>>2];g=b+y|0;k=H[g>>2];o=q+k|0;H[o>>2]=H[o>>2]+1;eb(b+N(l,12)|0,k,H[g+4>>2]);if((a|0)!=(c|0)){b=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];k=H[f+16>>2]-g|0;if((b|0)==((k?N(k>>2,113)-1|0:0)|0)){kb(f+8|0);g=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}q=g;g=(b>>>0)/113|0;b=H[q+(g<<2)>>2]+N(b-N(g,113)|0,36)|0;H[b+32>>2]=z;H[b+28>>2]=m;H[b+24>>2]=h;H[b+12>>2]=a;H[b+4>>2]=u;H[b+8>>2]=r;H[b>>2]=c;H[b+20>>2]=r;H[b+16>>2]=u;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(i|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];c=H[f+16>>2]-g|0;if((b|0)==((c?N(c>>2,113)-1|0:0)|0)){kb(f+8|0);g=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}c=(b>>>0)/113|0;b=H[(c<<2)+g>>2]+N(b-N(c,113)|0,36)|0;H[b+32>>2]=l;H[b+28>>2]=p;H[b+24>>2]=h;H[b+12>>2]=i;H[b+8>>2]=r;H[b+4>>2]=u;H[b>>2]=a;H[b+16>>2]=w;H[b+20>>2]=x;h=H[f+28>>2]+1|0;H[f+28>>2]=h;break d}while(1){h=(a-1|0)==(h|0)?0:h+1|0;H[i+(b<<2)>>2]=h;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}i=0;b=a;if(!s){break e}while(1){j:{if(!b){b=0;break j}k=H[u+24>>2]+(N(H[u+4>>2],c+i|0)<<2)|0;h=0;while(1){b=H[H[d+1152>>2]+(h<<2)>>2]<<2;m=H[d>>2]-H[b+H[g>>2]>>2]|0;if(m){Mb(I,m,H[b+k>>2]);a=H[d+8>>2]}b=a;h=h+1|0;if(h>>>0>>0){continue}break}}i=i+1|0;if((s|0)!=(i|0)){continue}break}}h=H[f+28>>2]}if(h){continue}break}}H[f+28>>2]=0;c=H[f+16>>2];h=H[f+12>>2];a=c-h>>2;if(a>>>0>=3){while(1){qa(H[h>>2]);h=H[f+12>>2]+4|0;H[f+12>>2]=h;c=H[f+16>>2];a=c-h>>2;if(a>>>0>2){continue}break}}b=56;k:{switch(a-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break k}}l:{if((c|0)==(h|0)){break l}while(1){qa(H[h>>2]);h=h+4|0;if((h|0)!=(c|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break l}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){qa(a)}da=f+32|0;break a}ua();X()}ua();X()}Sd(B,e);ib(C,e);ib(D,e);ib(E,e)}da=n+32|0;return 1}function Hd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=H[b+48>>2];if(!k){b=ra(32);d=I[1814]|I[1815]<<8|(I[1816]<<16|I[1817]<<24);c=I[1810]|I[1811]<<8|(I[1812]<<16|I[1813]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;F[b+19|0]=d;F[b+20|0]=d>>>8;F[b+21|0]=d>>>16;F[b+22|0]=d>>>24;d=I[1807]|I[1808]<<8|(I[1809]<<16|I[1810]<<24);c=I[1803]|I[1804]<<8|(I[1805]<<16|I[1806]<<24);F[b+8|0]=c;F[b+9|0]=c>>>8;F[b+10|0]=c>>>16;F[b+11|0]=c>>>24;F[b+12|0]=d;F[b+13|0]=d>>>8;F[b+14|0]=d>>>16;F[b+15|0]=d>>>24;d=I[1799]|I[1800]<<8|(I[1801]<<16|I[1802]<<24);c=I[1795]|I[1796]<<8|(I[1797]<<16|I[1798]<<24);F[b|0]=c;F[b+1|0]=c>>>8;F[b+2|0]=c>>>16;F[b+3|0]=c>>>24;F[b+4|0]=d;F[b+5|0]=d>>>8;F[b+6|0]=d>>>16;F[b+7|0]=d>>>24;F[b+23|0]=0;H[a>>2]=-1;La(a+4|0,b,23);qa(b);return}h=H[b+52>>2];if(!h){i=da-16|0;da=i;d=ra(16);H[i>>2]=d;H[i+4>>2]=15;H[i+8>>2]=-2147483632;F[d+15|0]=0;h=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);g=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[d+7|0]=g;F[d+8|0]=g>>>8;F[d+9|0]=g>>>16;F[d+10|0]=g>>>24;F[d+11|0]=h;F[d+12|0]=h>>>8;F[d+13|0]=h>>>16;F[d+14|0]=h>>>24;h=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);g=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[d|0]=g;F[d+1|0]=g>>>8;F[d+2|0]=g>>>16;F[d+3|0]=g>>>24;F[d+4|0]=h;F[d+5|0]=h>>>8;F[d+6|0]=h>>>16;F[d+7|0]=h>>>24;j=b;d=b+4|0;p=gb(d,i,-1);if(F[i+11|0]<0){qa(H[i>>2])}g=c;a:{b:{c:{d:{e:{switch(p+1|0){case 1:b=ra(56);H[b>>2]=0;H[b+4>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;e=Wb(b);H[b>>2]=12688;break c;case 0:break e;default:break d}}if((fb(d)|0)!=10){break d}b=ra(56);H[b>>2]=0;H[b+4>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;e=Wb(b);H[b>>2]=12688;break c}f:{c=H[k+12>>2];e=H[k+8>>2];if((c-e|0)>0){h=j+20|0;while(1){b=H[H[(l<<2)+e>>2]+28>>2];if(b-1>>>0>=6){if((b|0)!=9){break f}f=ra(32);H[i>>2]=f;H[i+4>>2]=17;H[i+8>>2]=-2147483616;F[f+17|0]=0;F[f+16|0]=I[1373];c=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);b=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[f+8|0]=b;F[f+9|0]=b>>>8;F[f+10|0]=b>>>16;F[f+11|0]=b>>>24;F[f+12|0]=c;F[f+13|0]=c>>>8;F[f+14|0]=c>>>16;F[f+15|0]=c>>>24;c=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);b=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[f|0]=b;F[f+1|0]=b>>>8;F[f+2|0]=b>>>16;F[f+3|0]=b>>>24;F[f+4|0]=c;F[f+5|0]=c>>>8;F[f+6|0]=c>>>16;F[f+7|0]=c>>>24;c=h;e=H[c>>2];g:{h:{if(!e){break h}while(1){b=H[e+16>>2]<(l|0);c=b?c:e;e=H[(b<<2)+e>>2];if(e){continue}break}if((c|0)==(h|0)){break h}b=d;if(H[c+16>>2]>(l|0)){break g}e=H[c+24>>2];if(!e){break h}b=c+20|0;while(1){c=I[e+27|0];m=c<<24>>24<0;n=m?H[e+20>>2]:c;q=n>>>0<17;o=q?n:17;i:{j:{k:{if(o){c=e+16|0;m=m?H[c>>2]:c;c=Ca(f,m,o);l:{if(!c){if(n>>>0<=17){break l}break i}if((c|0)<0){break i}}c=Ca(m,f,o);if(!c){break k}if((c|0)>=0){break g}break j}if(n>>>0>17){break i}}if(!q){break g}}e=e+4|0}e=H[e>>2];if(e){continue}break}}b=d}b=gb(b,i,-1);if(F[i+11|0]<0){qa(H[i>>2])}if((b|0)<=0){break f}e=H[k+8>>2];c=H[k+12>>2]}l=l+1|0;if((l|0)>2){continue}break}}b=ra(56);H[b>>2]=0;H[b+4>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;e=Wb(b);H[b>>2]=12580;break c}if((p|0)==1){break b}b=ra(56);H[b>>2]=0;H[b+4>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;e=Wb(b);H[b>>2]=12688}H[e+4>>2]=k;rf(a,e,d,g);if(!H[a>>2]){if(F[a+15|0]<0){qa(H[a+4>>2])}b=H[e+52>>2];H[j+44>>2]=0;H[j+40>>2]=b;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}fa[H[H[e>>2]+4>>2]](e);break a}b=ra(32);d=I[1997]|I[1998]<<8|(I[1999]<<16|I[2e3]<<24);c=I[1993]|I[1994]<<8|(I[1995]<<16|I[1996]<<24);F[b+16|0]=c;F[b+17|0]=c>>>8;F[b+18|0]=c>>>16;F[b+19|0]=c>>>24;F[b+20|0]=d;F[b+21|0]=d>>>8;F[b+22|0]=d>>>16;F[b+23|0]=d>>>24;d=I[1989]|I[1990]<<8|(I[1991]<<16|I[1992]<<24);c=I[1985]|I[1986]<<8|(I[1987]<<16|I[1988]<<24);F[b+8|0]=c;F[b+9|0]=c>>>8;F[b+10|0]=c>>>16;F[b+11|0]=c>>>24;F[b+12|0]=d;F[b+13|0]=d>>>8;F[b+14|0]=d>>>16;F[b+15|0]=d>>>24;d=I[1981]|I[1982]<<8|(I[1983]<<16|I[1984]<<24);c=I[1977]|I[1978]<<8|(I[1979]<<16|I[1980]<<24);F[b|0]=c;F[b+1|0]=c>>>8;F[b+2|0]=c>>>16;F[b+3|0]=c>>>24;F[b+4|0]=d;F[b+5|0]=d>>>8;F[b+6|0]=d>>>16;F[b+7|0]=d>>>24;F[b+24|0]=0;H[a>>2]=-1;La(a+4|0,b,24);qa(b)}da=i+16|0;return}f=da-16|0;da=f;d=ra(16);H[f>>2]=d;H[f+4>>2]=15;H[f+8>>2]=-2147483632;F[d+15|0]=0;j=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);g=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[d+7|0]=g;F[d+8|0]=g>>>8;F[d+9|0]=g>>>16;F[d+10|0]=g>>>24;F[d+11|0]=j;F[d+12|0]=j>>>8;F[d+13|0]=j>>>16;F[d+14|0]=j>>>24;j=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);g=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[d|0]=g;F[d+1|0]=g>>>8;F[d+2|0]=g>>>16;F[d+3|0]=g>>>24;F[d+4|0]=j;F[d+5|0]=j>>>8;F[d+6|0]=j>>>16;F[d+7|0]=j>>>24;g=b+4|0;d=gb(g,f,-1);if(F[f+11|0]<0){qa(H[f>>2])}m:{n:{o:{switch(d+1|0){case 0:if((fb(g)|0)==10){break n}break;case 2:break o;default:break n}}d=ra(68);tf(d);H[d+64>>2]=0;H[d>>2]=10432;break m}d=ra(64);tf(d);H[d>>2]=12296}H[d+56>>2]=h;H[d+4>>2]=h;rf(a,d,g,c);if(!H[a>>2]){if(F[a+15|0]<0){qa(H[a+4>>2])}H[b+40>>2]=H[d+52>>2];H[b+44>>2]=H[d+60>>2];H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}fa[H[H[d>>2]+4>>2]](d);da=f+16|0}function rf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=da-16|0;da=h;H[b+44>>2]=d;H[b+48>>2]=c;d=H[b+12>>2];f=H[b+8>>2];if((d|0)!=(f|0)){while(1){d=d-4|0;e=H[d>>2];H[d>>2]=0;if(e){fa[H[H[e>>2]+4>>2]](e)}if((d|0)!=(f|0)){continue}break}}H[b+12>>2]=f;H[b+24>>2]=H[b+20>>2];H[b+36>>2]=H[b+32>>2];a:{if(!H[b+4>>2]){b=ra(32);c=I[1814]|I[1815]<<8|(I[1816]<<16|I[1817]<<24);d=I[1810]|I[1811]<<8|(I[1812]<<16|I[1813]<<24);F[b+15|0]=d;F[b+16|0]=d>>>8;F[b+17|0]=d>>>16;F[b+18|0]=d>>>24;F[b+19|0]=c;F[b+20|0]=c>>>8;F[b+21|0]=c>>>16;F[b+22|0]=c>>>24;c=I[1807]|I[1808]<<8|(I[1809]<<16|I[1810]<<24);d=I[1803]|I[1804]<<8|(I[1805]<<16|I[1806]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1799]|I[1800]<<8|(I[1801]<<16|I[1802]<<24);d=I[1795]|I[1796]<<8|(I[1797]<<16|I[1798]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+23|0]=0;H[a>>2]=-1;La(a+4|0,b,23);qa(b);break a}d=da-16|0;da=d;e=H[b+44>>2];f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){va(e,H[e+4>>2],1781,1786)}e=fa[H[H[b>>2]+8>>2]](b)|0;F[d+15|0]=e;F[d+14|0]=2;F[d+13|0]=e&255?2:3;e=H[b+44>>2];f=H[e+20>>2];b:{if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}va(e,H[e+4>>2],d+14|0,d+15|0);e=H[b+44>>2];f=H[e+20>>2];if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}va(e,H[e+4>>2],d+13|0,d+14|0);e=H[b+44>>2];f=H[e+20>>2];if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}va(e,H[e+4>>2],d+15|0,d+16|0);e=H[b+44>>2]}k=d,l=fa[H[H[b>>2]+12>>2]](b)|0,F[k+12|0]=l;f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){va(e,H[e+4>>2],d+12|0,d+13|0)}G[d+10>>1]=(H[H[b+4>>2]+4>>2]!=0)<<15;e=H[b+44>>2];f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){va(e,H[e+4>>2],d+10|0,d+12|0)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=d+16|0;if(H[a>>2]){break a}e=a+4|0;if(F[a+15|0]<0){qa(H[e>>2])}d=H[H[b+4>>2]+4>>2];c:{if(!d){H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break c}f=H[b+44>>2];if(d){Fa(H[d+28>>2]-H[d+24>>2]>>2,f);g=H[d+24>>2];j=H[d+28>>2];if((g|0)!=(j|0)){while(1){i=H[g>>2];if(i){Fa(H[i+24>>2],f);Xc(h,f,i)}g=g+4|0;if((j|0)!=(g|0)){continue}break}}Xc(h,f,d)}if(d){H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break c}d=ra(32);f=I[2026]|I[2027]<<8;F[d+24|0]=f;F[d+25|0]=f>>>8;f=I[2022]|I[2023]<<8|(I[2024]<<16|I[2025]<<24);g=I[2018]|I[2019]<<8|(I[2020]<<16|I[2021]<<24);F[d+16|0]=g;F[d+17|0]=g>>>8;F[d+18|0]=g>>>16;F[d+19|0]=g>>>24;F[d+20|0]=f;F[d+21|0]=f>>>8;F[d+22|0]=f>>>16;F[d+23|0]=f>>>24;f=I[2014]|I[2015]<<8|(I[2016]<<16|I[2017]<<24);g=I[2010]|I[2011]<<8|(I[2012]<<16|I[2013]<<24);F[d+8|0]=g;F[d+9|0]=g>>>8;F[d+10|0]=g>>>16;F[d+11|0]=g>>>24;F[d+12|0]=f;F[d+13|0]=f>>>8;F[d+14|0]=f>>>16;F[d+15|0]=f>>>24;f=I[2006]|I[2007]<<8|(I[2008]<<16|I[2009]<<24);g=I[2002]|I[2003]<<8|(I[2004]<<16|I[2005]<<24);F[d|0]=g;F[d+1|0]=g>>>8;F[d+2|0]=g>>>16;F[d+3|0]=g>>>24;F[d+4|0]=f;F[d+5|0]=f>>>8;F[d+6|0]=f>>>16;F[d+7|0]=f>>>24;F[d+26|0]=0;H[a>>2]=-1;La(e,d,26);qa(d);if(H[a>>2]){break a}}if(F[e+11|0]<0){qa(H[e>>2])}if(!(fa[H[H[b>>2]+16>>2]](b)|0)){b=ra(32);c=I[1942]|I[1943]<<8|(I[1944]<<16|I[1945]<<24);d=I[1938]|I[1939]<<8|(I[1940]<<16|I[1941]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1937]|I[1938]<<8|(I[1939]<<16|I[1940]<<24);d=I[1933]|I[1934]<<8|(I[1935]<<16|I[1936]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1929]|I[1930]<<8|(I[1931]<<16|I[1932]<<24);d=I[1925]|I[1926]<<8|(I[1927]<<16|I[1928]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1921]|I[1922]<<8|(I[1923]<<16|I[1924]<<24);d=I[1917]|I[1918]<<8|(I[1919]<<16|I[1920]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;La(e,b,29);qa(b);break a}if(!(fa[H[H[b>>2]+20>>2]](b)|0)){b=ra(32);c=I[2085]|I[2086]<<8|(I[2087]<<16|I[2088]<<24);d=I[2081]|I[2082]<<8|(I[2083]<<16|I[2084]<<24);F[b+23|0]=d;F[b+24|0]=d>>>8;F[b+25|0]=d>>>16;F[b+26|0]=d>>>24;F[b+27|0]=c;F[b+28|0]=c>>>8;F[b+29|0]=c>>>16;F[b+30|0]=c>>>24;c=I[2078]|I[2079]<<8|(I[2080]<<16|I[2081]<<24);d=I[2074]|I[2075]<<8|(I[2076]<<16|I[2077]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[2070]|I[2071]<<8|(I[2072]<<16|I[2073]<<24);d=I[2066]|I[2067]<<8|(I[2068]<<16|I[2069]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[2062]|I[2063]<<8|(I[2064]<<16|I[2065]<<24);d=I[2058]|I[2059]<<8|(I[2060]<<16|I[2061]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+31|0]=0;H[a>>2]=-1;La(e,b,31);qa(b);break a}fa[H[H[b>>2]+24>>2]](a,b);if(H[a>>2]){break a}if(F[e+11|0]<0){qa(H[e>>2])}if(!(fa[H[H[b>>2]+28>>2]](b)|0)){b=bc(h,1852);H[a>>2]=-1;if(F[b+11|0]>=0){a=H[h+4>>2];H[e>>2]=H[h>>2];H[e+4>>2]=a;H[e+8>>2]=H[h+8>>2];break a}La(e,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break a}qa(H[b>>2]);break a}d=c;c=bc(h,1326);d=Qb(d,c,0);if(F[c+11|0]<0){qa(H[c>>2])}if(d){fa[H[H[b>>2]+48>>2]](b)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}da=h+16|0}function Vd(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,O=0;n=da-32|0;da=n;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;j=H[e+20>>2];if(!H[e+16>>2]&(j|0)<=0|(j|0)<0){d=a+4|0;va(e,H[e+4>>2],a,d);j=H[e+20>>2];if(!H[e+16>>2]&(j|0)<=0|(j|0)<0){va(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){B=a+12|0;d=B;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];C=a+32|0;d=C;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];D=a+52|0;d=D;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];E=a+72|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[n+24>>2]=H[b+8>>2];d=H[b+4>>2];H[n+16>>2]=H[b>>2];H[n+20>>2]=d;H[n+8>>2]=H[c+8>>2];b=H[c+4>>2];H[n>>2]=H[c>>2];H[n+4>>2]=b;b=0;f=da-32|0;da=f;d=a;g=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(g){if(g>>>0>=1073741824){break b}a=g<<2;b=ra(a);H[f+8>>2]=b;h=a+b|0;H[f+16>>2]=h;ta(b,0,a);H[f+12>>2]=h}a=H[d+128>>2];c=H[a>>2];if(c){H[a+4>>2]=c;qa(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;g=H[d+8>>2];h=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=h;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(g){if(g>>>0>=1073741824){break c}c=g<<2;a=ra(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;ta(a,0,c);H[f+12>>2]=b}c=H[d+140>>2];j=H[c>>2];if(j){H[c+4>>2]=j;qa(j);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];w=H[n+4>>2];x=H[n+8>>2];s=H[n+20>>2];q=H[n+24>>2];b=H[n>>2];c=H[n+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;kb(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;j=(a>>>0)/113|0;a=H[H[f+12>>2]+(j<<2)>>2]+N(a-N(j,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=b-c;H[a+24>>2]=0;H[a+12>>2]=b;H[a+4>>2]=s;H[a+8>>2]=q;H[a>>2]=c;H[a+16>>2]=w;H[a+20>>2]=x;a=H[f+28>>2];g=a+1|0;H[f+28>>2]=g;if(a>>>0<=g>>>0){I=d+32|0;J=d+12|0;L=d+72|0;M=q&-4;F=q&3;O=q-1>>>0<3;while(1){l=H[f+12>>2];h=H[f+24>>2];k=g-1|0;a=h+k|0;b=(a>>>0)/113|0;a=H[l+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;z=H[a+32>>2];b=H[a+24>>2];j=H[a+12>>2];c=H[a>>2];H[f+28>>2]=k;a=H[f+16>>2];k=a-l|0;if(((k?N(k>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}H[n+16>>2]=c;H[n>>2]=j;g=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;h=g<<2;y=N(z,12);k=y+H[d+140>>2]|0;b=H[d>>2]-H[h+H[k>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{u=j-c|0;if(u>>>0<=2){j=H[d+116>>2];H[j>>2]=g;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}k=H[d+128>>2];a=k+y|0;i=k;k=y+12|0;eb(i+k|0,H[a>>2],H[a+4>>2]);a=h+H[k+H[d+128>>2]>>2]|0;l=H[a>>2]+(1<>2]=l;a=c;h:{if((j|0)==(a|0)){break h}G=H[s+24>>2];b=c;a=j;if(!q){if(l>>>0>K[h+G>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(l>>>0<=K[(h+H[w+24>>2]|0)+(N(a,x)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){o=(N(b,q)<<2)+G|0;if(l>>>0>K[o+h>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}p=H[w+24>>2]+(N(a,x)<<2)|0;if(l>>>0<=K[p+h>>2]){continue}break}A=0;k=0;t=0;if(!O){while(1){m=k<<2;i=m+o|0;r=H[i>>2];v=i;i=m+p|0;H[v>>2]=H[i>>2];H[i>>2]=r;i=m|4;r=i+o|0;v=H[r>>2];i=i+p|0;H[r>>2]=H[i>>2];H[i>>2]=v;i=m|8;r=i+o|0;v=H[r>>2];i=i+p|0;H[r>>2]=H[i>>2];H[i>>2]=v;m=m|12;i=m+o|0;r=H[i>>2];m=m+p|0;H[i>>2]=H[m>>2];H[m>>2]=r;k=k+4|0;t=t+4|0;if((M|0)!=(t|0)){continue}break}}if(F){while(1){m=k<<2;t=m+o|0;i=H[t>>2];m=m+p|0;H[t>>2]=H[m>>2];H[m>>2]=i;k=k+1|0;A=A+1|0;if((A|0)!=(F|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}k=a-c|0;l=j-a|0;if((k|0)!=(l|0)){fc(L,k>>>0>>0)}Mb(J,Q(u)^31,(u>>>1|0)-(k>>>0>>0?k:l)|0);i=h;b=H[d+140>>2];h=b+y|0;o=H[h>>2];p=i+o|0;H[p>>2]=H[p>>2]+1;p=z+1|0;eb(b+N(p,12)|0,o,H[h+4>>2]);if((a|0)!=(c|0)){h=H[f+28>>2]+H[f+24>>2]|0;b=H[f+12>>2];o=H[f+16>>2]-b|0;if((h|0)==((o?N(o>>2,113)-1|0:0)|0)){kb(f+8|0);h=H[f+24>>2]+H[f+28>>2]|0;i=H[f+12>>2]}else{i=b}b=(h>>>0)/113|0;b=H[i+(b<<2)>>2]+N(h-N(b,113)|0,36)|0;H[b+32>>2]=z;H[b+28>>2]=k;H[b+24>>2]=g;H[b+12>>2]=a;H[b+4>>2]=s;H[b+8>>2]=q;H[b>>2]=c;H[b+20>>2]=q;H[b+16>>2]=s;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(j|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;h=H[f+12>>2];c=H[f+16>>2]-h|0;if((b|0)==((c?N(c>>2,113)-1|0:0)|0)){kb(f+8|0);h=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}c=(b>>>0)/113|0;b=H[(c<<2)+h>>2]+N(b-N(c,113)|0,36)|0;H[b+32>>2]=p;H[b+28>>2]=l;H[b+24>>2]=g;H[b+12>>2]=j;H[b+8>>2]=q;H[b+4>>2]=s;H[b>>2]=a;H[b+16>>2]=w;H[b+20>>2]=x;g=H[f+28>>2]+1|0;H[f+28>>2]=g;break d}while(1){g=(a-1|0)==(g|0)?0:g+1|0;H[j+(b<<2)>>2]=g;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}if(!u|!a){break e}j=0;b=1;while(1){g=0;i:{if(!b){b=0;break i}h=H[s+24>>2]+(N(H[s+4>>2],c+j|0)<<2)|0;while(1){b=H[H[d+116>>2]+(g<<2)>>2]<<2;l=H[d>>2]-H[b+H[k>>2]>>2]|0;if(l){Mb(I,l,H[b+h>>2]);a=H[d+8>>2]}b=a;g=g+1|0;if(g>>>0>>0){continue}break}}j=j+1|0;if((u|0)!=(j|0)){continue}break}}g=H[f+28>>2]}if(g){continue}break}}H[f+28>>2]=0;a=H[f+16>>2];g=H[f+12>>2];c=a-g>>2;if(c>>>0>=3){while(1){qa(H[g>>2]);g=H[f+12>>2]+4|0;H[f+12>>2]=g;a=H[f+16>>2];c=a-g>>2;if(c>>>0>2){continue}break}}b=56;j:{switch(c-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break j}}k:{if((a|0)==(g|0)){break k}while(1){qa(H[g>>2]);g=g+4|0;if((g|0)!=(a|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break k}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){qa(a)}da=f+32|0;break a}ua();X()}ua();X()}ib(B,e);ib(C,e);ib(D,e);ib(E,e)}da=n+32|0;return 1}function th(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=O(0),z=0,A=0;c=da+-64|0;da=c;f=H[a+80>>2];H[c+40>>2]=0;H[c+44>>2]=0;H[c+56>>2]=a;H[c+48>>2]=a;H[c+32>>2]=0;H[c+36>>2]=0;H[c+52>>2]=1065353216;d=2;a:{if((f|0)!=1){if(f&f-1){f=Ma(f)}d=f;if(!f){break a}}Ce(c+32|0,d)}f=H[a+80>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;b:{c:{d:{e:{if(!f){H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;break e}if(f>>>0>=1073741824){break b}f=f<<2;s=ra(f);H[c+16>>2]=s;b=f+s|0;H[c+24>>2]=b;ta(s,0,f);H[c+20>>2]=b;H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;z=c+40|0;f=0;while(1){e=0;b=H[c+48>>2];m=H[b+8>>2];n=H[b+12>>2]-m|0;u=(n|0)<=0;f:{if(u){break f}b=n>>>2|0;b=b>>>0>1?b:1;h=b&1;d=0;if(n>>>0>=8){j=b&1073741822;b=0;while(1){g=d<<2;i=H[g+m>>2];if(I[i+84|0]){i=f}else{i=H[H[i+68>>2]+(f<<2)>>2]}d=d+2|0;i=i<<3^e<<2;e=H[m+(g|4)>>2];if(I[e+84|0]){e=f}else{e=H[H[e+68>>2]+(f<<2)>>2]}e=i^e<<2;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!h){break f}b=H[m+(d<<2)>>2];if(I[b+84|0]){b=f}else{b=H[H[b+68>>2]+(f<<2)>>2]}e=b<<2^e<<1}g:{h:{g=H[c+36>>2];if(!g){break h}h=H[c+32>>2];d=Uk(g)>>>0>1;b=g-1&e;i:{if(!d){break i}b=e;if(b>>>0>>0){break i}b=(e>>>0)%(g>>>0)|0}i=b;b=H[h+(i<<2)>>2];if(!b){break h}k=H[b>>2];if(!k){break h}p=H[c+56>>2];j:{k:{if(!d){v=g-1|0;while(1){b=H[k+4>>2];l:{if((b|0)!=(e|0)){if((i|0)==(b&v)){break l}break h}w=H[p+8>>2];b=H[p+12>>2]-w|0;if((b|0)<=0){break j}h=H[k+8>>2];l=1;o=b>>2;A=(o|0)>1?o:1;d=0;while(1){b=f;j=H[w+(d<<2)>>2];if(I[j+84|0]){j=h}else{j=H[j+68>>2];b=H[j+(f<<2)>>2];j=H[j+(h<<2)>>2]}if((b|0)==(j|0)){d=d+1|0;l=(o|0)>(d|0);if((d|0)!=(A|0)){continue}}break}if(!l){break k}}k=H[k>>2];if(k){continue}break}break h}while(1){b=H[k+4>>2];m:{if((b|0)!=(e|0)){if(b>>>0>=g>>>0){b=(b>>>0)%(g>>>0)|0}if((b|0)==(i|0)){break m}break h}v=H[p+8>>2];b=H[p+12>>2]-v|0;if((b|0)<=0){break j}h=H[k+8>>2];l=1;o=b>>2;w=(o|0)>1?o:1;d=0;while(1){b=f;j=H[v+(d<<2)>>2];if(I[j+84|0]){j=h}else{j=H[j+68>>2];b=H[j+(f<<2)>>2];j=H[j+(h<<2)>>2]}if((b|0)==(j|0)){d=d+1|0;l=(o|0)>(d|0);if((d|0)!=(w|0)){continue}}break}if(!l){break k}}k=H[k>>2];if(k){continue}break}break h}if(!k){break h}}H[(f<<2)+s>>2]=H[k+12>>2];break g}n:{if(u){i=0;break n}b=n>>>2|0;b=b>>>0>1?b:1;h=b&1;i=0;d=0;if(n>>>0>=8){j=b&1073741822;b=0;while(1){l=d<<2;e=H[l+m>>2];if(I[e+84|0]){e=f}else{e=H[H[e+68>>2]+(f<<2)>>2]}d=d+2|0;i=e<<3^i<<2;e=H[m+(l|4)>>2];if(I[e+84|0]){e=f}else{e=H[H[e+68>>2]+(f<<2)>>2]}i=i^e<<2;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!h){break n}b=H[m+(d<<2)>>2];if(I[b+84|0]){b=f}else{b=H[H[b+68>>2]+(f<<2)>>2]}i=b<<2^i<<1}o:{p:{if(!g){break p}l=g-1|0;if(l&g){k=g>>>0<=i>>>0?(i>>>0)%(g>>>0)|0:i;j=H[H[c+32>>2]+(k<<2)>>2];if(!j){break p}m=H[c+56>>2];while(1){j=H[j>>2];if(!j){break p}b=H[j+4>>2];if((b|0)!=(i|0)){if(b>>>0>=g>>>0){b=(b>>>0)%(g>>>0)|0}if((b|0)!=(k|0)){break p}}p=H[m+8>>2];b=H[m+12>>2]-p|0;if((b|0)<=0){break o}e=H[j+8>>2];l=1;n=b>>2;o=(n|0)>1?n:1;d=0;while(1){b=f;h=H[p+(d<<2)>>2];if(I[h+84|0]){h=e}else{h=H[h+68>>2];b=H[h+(f<<2)>>2];h=H[h+(e<<2)>>2]}if((b|0)==(h|0)){d=d+1|0;l=(n|0)>(d|0);if((d|0)!=(o|0)){continue}}break}if(l){continue}break}break o}k=i&l;j=H[H[c+32>>2]+(k<<2)>>2];if(!j){break p}m=H[c+56>>2];while(1){j=H[j>>2];if(!j){break p}b=H[j+4>>2];if((b|0)!=(i|0)&(b&l)!=(k|0)){break p}o=H[m+8>>2];b=H[m+12>>2]-o|0;if((b|0)<=0){break o}e=H[j+8>>2];n=1;p=b>>2;u=(p|0)>1?p:1;d=0;while(1){b=f;h=H[o+(d<<2)>>2];if(I[h+84|0]){h=e}else{h=H[h+68>>2];b=H[h+(f<<2)>>2];h=H[h+(e<<2)>>2]}if((b|0)==(h|0)){d=d+1|0;n=(p|0)>(d|0);if((d|0)!=(u|0)){continue}}break}if(n){continue}break}break o}d=ra(16);H[d+8>>2]=f;H[d+4>>2]=i;H[d>>2]=0;H[d+12>>2]=t;y=O(H[c+44>>2]+1>>>0);q=L[c+52>>2];q:{if(!(g?y>O(q*O(g>>>0)):1)){break q}k=(g-1&g)!=0|g>>>0<3|g<<1;e=2;q=O(U(O(y/q)));r:{if(q=O(0)){b=~~q>>>0;break r}b=0}b=b>>>0>k>>>0?b:k;s:{if((b|0)==1){break s}if(!(b&b-1)){e=b;break s}e=Ma(b);g=H[c+36>>2]}t:{if(e>>>0<=g>>>0){if(e>>>0>=g>>>0){break t}k=g>>>0<3;q=O(U(O(O(K[c+44>>2])/L[c+52>>2])));u:{if(q=O(0)){b=~~q>>>0;break u}b=0}v:{w:{if(k){break w}if(Uk(g)>>>0>1){break w}b=b>>>0<2?b:1<<32-Q(b-1|0);break v}b=Ma(b)}e=b>>>0>e>>>0?b:e;if(g>>>0<=e>>>0){break t}}Ce(c+32|0,e)}g=H[c+36>>2];b=g-1|0;if(!(b&g)){k=b&i;break q}if(g>>>0>i>>>0){k=i;break q}k=(i>>>0)%(g>>>0)|0}e=H[c+32>>2]+(k<<2)|0;b=H[e>>2];x:{if(!b){H[d>>2]=H[c+40>>2];H[c+40>>2]=d;H[e>>2]=z;b=H[d>>2];if(!b){break x}e=H[b+4>>2];b=g-1|0;y:{if(!(b&g)){e=b&e;break y}if(e>>>0>>0){break y}e=(e>>>0)%(g>>>0)|0}H[H[c+32>>2]+(e<<2)>>2]=d;break x}H[d>>2]=H[b>>2];H[b>>2]=d}H[c+44>>2]=H[c+44>>2]+1;x=H[c+8>>2];r=H[c+4>>2];s=H[c+16>>2]}H[(f<<2)+s>>2]=t;t=t+1|0;if((r|0)!=(x|0)){H[r>>2]=f;r=r+4|0;H[c+4>>2]=r;break g}e=H[c>>2];i=x-e|0;h=i>>2;b=h+1|0;if(b>>>0>=1073741824){break d}d=i>>1;d=h>>>0<536870911?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break c}b=ra(d<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=f;x=b+(d<<2)|0;r=h+4|0;if((i|0)>0){sa(b,e,i)}H[c+8>>2]=x;H[c+4>>2]=r;H[c>>2]=b;if(!e){break g}qa(e)}f=f+1|0;b=H[a+80>>2];if(f>>>0>>0){continue}break}if((b|0)==(t|0)){break e}fa[H[H[a>>2]+24>>2]](a,c+16|0,c);H[a+80>>2]=t}a=H[c>>2];if(a){H[c+4>>2]=a;qa(a)}a=H[c+16>>2];if(a){H[c+20>>2]=a;qa(a)}f=H[c+40>>2];if(f){while(1){a=H[f>>2];qa(f);f=a;if(f){continue}break}}a=H[c+32>>2];H[c+32>>2]=0;if(a){qa(a)}da=c- -64|0;return}ua();X()}wa(1604);X()}ua();X()}function Ye(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=O(0);j=da+-64|0;da=j;H[j+40>>2]=0;H[j+44>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+48>>2]=1065353216;c=H[a+80>>2];H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;k=ra(d);H[j+16>>2]=k;c=d+k|0;H[j+24>>2]=c;ta(k,0,d);H[j+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],q,0)|0;c=c+f|0;e=I[c|0]|I[c+1|0]<<8;G[j+30>>1]=e;c:{d:{e:{if(!i){break e}g=H[j+32>>2];h=e^318;d=Uk(i)>>>0>1;c=h&i-1;f:{if(!d){break f}c=h;if(c>>>0>>0){break f}c=(h>>>0)%(i>>>0)|0}f=c;c=H[g+(f<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!d){i=i-1|0;while(1){d=H[c+4>>2];g:{if((d|0)!=(h|0)){if((f|0)==(d&i)){break g}break e}if((e|0)==J[c+8>>1]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){d=H[c+4>>2];h:{if((d|0)!=(h|0)){if(d>>>0>=i>>>0){d=(d>>>0)%(i>>>0)|0}if((d|0)==(f|0)){break h}break e}if((e|0)==J[c+8>>1]){break d}}c=H[c>>2];if(c){continue}break}}H[j+12>>2]=o;G[j+8>>1]=e;c=0;h=J[j+8>>1];i=h^318;i:{j:{g=j+32|0;e=H[g+4>>2];if(!e){break j}d=Uk(e);k:{if(d>>>0>=2){c=i;if(e>>>0<=c>>>0){c=(i>>>0)%(e>>>0)|0}l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}if(d>>>0<=1){break k}while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break j}}if((h|0)!=J[l+8>>1]){continue}break}c=0;break i}c=i&e-1;l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}}f=e-1|0;while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)&(d&f)!=(c|0)){break j}if((h|0)!=J[l+8>>1]){continue}break}c=0;break i}l=ra(16);G[l+8>>1]=J[j+8>>1];d=H[j+12>>2];H[l+4>>2]=i;H[l+12>>2]=d;H[l>>2]=0;s=O(H[g+12>>2]+1>>>0);n=L[g+16>>2];l:{if(!(e?s>O(n*O(e>>>0)):1)){break l}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;n=O(U(O(s/n)));m:{if(n=O(0)){f=~~n>>>0;break m}f=0}d=d>>>0>>0?f:d;n:{if((d|0)==1){break n}if(!(d&d-1)){c=d;break n}c=Ma(d);e=H[g+4>>2]}o:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break o}f=e>>>0<3;n=O(U(O(O(K[g+12>>2])/L[g+16>>2])));p:{if(n=O(0)){d=~~n>>>0;break p}d=0}q:{r:{if(f){break r}if(Uk(e)>>>0>1){break r}d=d>>>0<2?d:1<<32-Q(d-1|0);break q}d=Ma(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break o}}d=0;e=0;k=c;s:{t:{u:{v:{if(c){if(k>>>0>=1073741824){break v}c=ra(k<<2);f=H[g>>2];H[g>>2]=c;if(f){qa(f)}H[g+4>>2]=k;f=0;if(k-1>>>0>=3){c=k&-4;while(1){h=f<<2;H[h+H[g>>2]>>2]=0;H[H[g>>2]+(h|4)>>2]=0;H[H[g>>2]+(h|8)>>2]=0;H[H[g>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[g>>2]+(f<<2)>>2]=0;f=f+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}d=H[g+8>>2];if(!d){break s}c=g+8|0;h=H[d+4>>2];f=Uk(k);if(f>>>0<2){break u}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}if(f>>>0<=1){break t}while(1){e=H[c+4>>2];if(k>>>0<=e>>>0){e=(e>>>0)%(k>>>0)|0}w:{if((e|0)==(h|0)){d=c;break w}f=c;p=e<<2;r=p+H[g>>2]|0;if(!H[r>>2]){H[r>>2]=d;d=c;h=e;break w}while(1){e=f;f=H[e>>2];if(J[c+8>>1]==J[f+8>>1]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break s}c=H[g>>2];H[g>>2]=0;if(c){qa(c)}H[g+4>>2]=0;break s}wa(1604);X()}h=k-1&h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}}r=k-1|0;while(1){e=r&H[c+4>>2];x:{if((e|0)==(h|0)){d=c;break x}f=c;p=e<<2;k=p+H[g>>2]|0;if(H[k>>2]){while(1){e=f;f=H[e>>2];if(J[c+8>>1]==J[f+8>>1]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c;break x}H[k>>2]=d;d=c;h=e}c=H[d>>2];if(c){continue}break}}}e=H[g+4>>2];c=e-1|0;if(!(c&e)){c=c&i;break l}if(e>>>0>i>>>0){c=i;break l}c=(i>>>0)%(e>>>0)|0}c=H[g>>2]+(c<<2)|0;d=H[c>>2];y:{if(!d){H[l>>2]=H[g+8>>2];H[g+8>>2]=l;H[c>>2]=g+8;c=H[l>>2];if(!c){break y}c=H[c+4>>2];d=e-1|0;z:{if(!(d&e)){c=c&d;break z}if(c>>>0>>0){break z}c=(c>>>0)%(e>>>0)|0}H[H[g>>2]+(c<<2)>>2]=l;break y}H[l>>2]=H[d>>2];H[d>>2]=l}H[g+12>>2]=H[g+12>>2]+1;c=1}F[j+60|0]=c;H[j+56>>2]=l;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,o)|0,j+30|0,c);k=H[j+16>>2];H[k+(q<<2)>>2]=o;o=o+1|0;break c}H[(q<<2)+k>>2]=H[c+12>>2]}c=q+1|0;m=c?m:m+1|0;q=c;c=H[a+80>>2];if(!m&c>>>0>q>>>0){i=H[j+36>>2];continue}break}if((c|0)==(o|0)){break b}A:{if(!I[a+84|0]){i=H[a+68>>2];b=H[a+72>>2]-i|0;if(!b){break A}h=H[j+16>>2];b=b>>2;b=b>>>0>1?b:1;f=b&3;e=0;c=0;if(b-1>>>0>=3){d=b&-4;k=0;while(1){m=c<<2;b=m+i|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|4)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|8)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|12)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+4|0;k=k+4|0;if((d|0)!=(k|0)){continue}break}}if(!f){break A}while(1){b=i+(c<<2)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break A}F[a+84|0]=0;i=H[a+68>>2];b=H[a+72>>2]-i>>2;B:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);i=H[a+68>>2];c=H[a+80>>2];break B}if(b>>>0<=c>>>0){break B}H[a+72>>2]=(c<<2)+i}if(!c){break A}h=H[j+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;k=0;while(1){m=b<<2;H[m+i>>2]=H[h+m>>2];d=m|4;H[d+i>>2]=H[d+h>>2];d=m|8;H[d+i>>2]=H[d+h>>2];d=m|12;H[d+i>>2]=H[d+h>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=c&3;if(!d){break A}while(1){c=b<<2;H[c+i>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=o}a=H[j+16>>2];if(a){qa(a)}c=H[j+40>>2];if(c){while(1){a=H[c>>2];qa(c);c=a;if(c){continue}break}}a=H[j+32>>2];H[j+32>>2]=0;if(a){qa(a)}da=j- -64|0;return o}ua();X()}function lf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=O(0);j=da+-64|0;da=j;H[j+40>>2]=0;H[j+44>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+48>>2]=1065353216;c=H[a+80>>2];H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;k=ra(d);H[j+16>>2]=k;c=d+k|0;H[j+24>>2]=c;ta(k,0,d);H[j+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],q,0)|0;e=I[c+f|0];F[j+31|0]=e;c:{d:{e:{if(!i){break e}g=H[j+32>>2];h=e^318;d=Uk(i)>>>0>1;c=h&i-1;f:{if(!d){break f}c=h;if(c>>>0>>0){break f}c=(h>>>0)%(i>>>0)|0}f=c;c=H[g+(f<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!d){i=i-1|0;while(1){d=H[c+4>>2];g:{if((d|0)!=(h|0)){if((f|0)==(d&i)){break g}break e}if((e|0)==I[c+8|0]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){d=H[c+4>>2];h:{if((d|0)!=(h|0)){if(d>>>0>=i>>>0){d=(d>>>0)%(i>>>0)|0}if((d|0)==(f|0)){break h}break e}if((e|0)==I[c+8|0]){break d}}c=H[c>>2];if(c){continue}break}}H[j+12>>2]=o;F[j+8|0]=e;c=0;h=I[j+8|0];i=h^318;i:{j:{g=j+32|0;e=H[g+4>>2];if(!e){break j}d=Uk(e);k:{if(d>>>0>=2){c=i;if(e>>>0<=c>>>0){c=(i>>>0)%(e>>>0)|0}l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}if(d>>>0<=1){break k}while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break j}}if((h|0)!=I[l+8|0]){continue}break}c=0;break i}c=i&e-1;l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}}f=e-1|0;while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)&(d&f)!=(c|0)){break j}if((h|0)!=I[l+8|0]){continue}break}c=0;break i}l=ra(16);F[l+8|0]=I[j+8|0];d=H[j+12>>2];H[l+4>>2]=i;H[l+12>>2]=d;H[l>>2]=0;s=O(H[g+12>>2]+1>>>0);n=L[g+16>>2];l:{if(!(e?s>O(n*O(e>>>0)):1)){break l}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;n=O(U(O(s/n)));m:{if(n=O(0)){f=~~n>>>0;break m}f=0}d=d>>>0>>0?f:d;n:{if((d|0)==1){break n}if(!(d&d-1)){c=d;break n}c=Ma(d);e=H[g+4>>2]}o:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break o}f=e>>>0<3;n=O(U(O(O(K[g+12>>2])/L[g+16>>2])));p:{if(n=O(0)){d=~~n>>>0;break p}d=0}q:{r:{if(f){break r}if(Uk(e)>>>0>1){break r}d=d>>>0<2?d:1<<32-Q(d-1|0);break q}d=Ma(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break o}}d=0;e=0;k=c;s:{t:{u:{v:{if(c){if(k>>>0>=1073741824){break v}c=ra(k<<2);f=H[g>>2];H[g>>2]=c;if(f){qa(f)}H[g+4>>2]=k;f=0;if(k-1>>>0>=3){c=k&-4;while(1){h=f<<2;H[h+H[g>>2]>>2]=0;H[H[g>>2]+(h|4)>>2]=0;H[H[g>>2]+(h|8)>>2]=0;H[H[g>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[g>>2]+(f<<2)>>2]=0;f=f+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}d=H[g+8>>2];if(!d){break s}c=g+8|0;h=H[d+4>>2];f=Uk(k);if(f>>>0<2){break u}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}if(f>>>0<=1){break t}while(1){e=H[c+4>>2];if(k>>>0<=e>>>0){e=(e>>>0)%(k>>>0)|0}w:{if((e|0)==(h|0)){d=c;break w}f=c;p=e<<2;r=p+H[g>>2]|0;if(!H[r>>2]){H[r>>2]=d;d=c;h=e;break w}while(1){e=f;f=H[e>>2];if(I[c+8|0]==I[f+8|0]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break s}c=H[g>>2];H[g>>2]=0;if(c){qa(c)}H[g+4>>2]=0;break s}wa(1604);X()}h=k-1&h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}}r=k-1|0;while(1){e=r&H[c+4>>2];x:{if((e|0)==(h|0)){d=c;break x}f=c;p=e<<2;k=p+H[g>>2]|0;if(H[k>>2]){while(1){e=f;f=H[e>>2];if(I[c+8|0]==I[f+8|0]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c;break x}H[k>>2]=d;d=c;h=e}c=H[d>>2];if(c){continue}break}}}e=H[g+4>>2];c=e-1|0;if(!(c&e)){c=c&i;break l}if(e>>>0>i>>>0){c=i;break l}c=(i>>>0)%(e>>>0)|0}c=H[g>>2]+(c<<2)|0;d=H[c>>2];y:{if(!d){H[l>>2]=H[g+8>>2];H[g+8>>2]=l;H[c>>2]=g+8;c=H[l>>2];if(!c){break y}c=H[c+4>>2];d=e-1|0;z:{if(!(d&e)){c=c&d;break z}if(c>>>0>>0){break z}c=(c>>>0)%(e>>>0)|0}H[H[g>>2]+(c<<2)>>2]=l;break y}H[l>>2]=H[d>>2];H[d>>2]=l}H[g+12>>2]=H[g+12>>2]+1;c=1}F[j+60|0]=c;H[j+56>>2]=l;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,o)|0,j+31|0,c);k=H[j+16>>2];H[k+(q<<2)>>2]=o;o=o+1|0;break c}H[(q<<2)+k>>2]=H[c+12>>2]}c=q+1|0;m=c?m:m+1|0;q=c;c=H[a+80>>2];if(!m&c>>>0>q>>>0){i=H[j+36>>2];continue}break}if((c|0)==(o|0)){break b}A:{if(!I[a+84|0]){i=H[a+68>>2];b=H[a+72>>2]-i|0;if(!b){break A}h=H[j+16>>2];b=b>>2;b=b>>>0>1?b:1;f=b&3;e=0;c=0;if(b-1>>>0>=3){d=b&-4;k=0;while(1){m=c<<2;b=m+i|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|4)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|8)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|12)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+4|0;k=k+4|0;if((d|0)!=(k|0)){continue}break}}if(!f){break A}while(1){b=i+(c<<2)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break A}F[a+84|0]=0;i=H[a+68>>2];b=H[a+72>>2]-i>>2;B:{if(b>>>0>>0){Na(a+68|0,c-b|0,2204);i=H[a+68>>2];c=H[a+80>>2];break B}if(b>>>0<=c>>>0){break B}H[a+72>>2]=(c<<2)+i}if(!c){break A}h=H[j+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;k=0;while(1){m=b<<2;H[m+i>>2]=H[h+m>>2];d=m|4;H[d+i>>2]=H[d+h>>2];d=m|8;H[d+i>>2]=H[d+h>>2];d=m|12;H[d+i>>2]=H[d+h>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=c&3;if(!d){break A}while(1){c=b<<2;H[c+i>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=o}a=H[j+16>>2];if(a){qa(a)}c=H[j+40>>2];if(c){while(1){a=H[c>>2];qa(c);c=a;if(c){continue}break}}a=H[j+32>>2];H[j+32>>2]=0;if(a){qa(a)}da=j- -64|0;return o}ua();X()}function If(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=da-32|0;da=j;c=H[a+16>>2];H[a+20>>2]=c;a:{b:{c:{d:{e:{if((c|0)!=H[a+24>>2]){H[c>>2]=b;b=c+4|0;H[a+20>>2]=b;f=c;break e}f=ra(4);H[f>>2]=b;b=f+4|0;H[a+24>>2]=b;H[a+20>>2]=b;H[a+16>>2]=f;if(c){break d}}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0;break c}qa(c);b=H[a+20>>2];f=H[a+16>>2];if((b|0)==(f|0)){break b}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0}if((c|0)<=0){e=H[a+28>>2];while(1){c=b-4|0;d=H[c>>2];f:{if((d|0)!=-1){d=(d>>>0)/3|0;if(!(H[e+(d>>>3&268435452)>>2]>>>d&1)){break f}}H[a+20>>2]=c;b=c}if((b|0)!=(f|0)){continue}break}break b}p=a+120|0;c=(c|0)/12|0;q=(c|0)>1?c:1;g:{h:{i:{while(1){j:{k:{l:{c=b-4|0;b=H[c>>2];if((b|0)==-1){break l}d=H[a+28>>2];f=(b>>>0)/3|0;if(H[d+(f>>>3&268435452)>>2]>>>f&1){break l}i=0;while(1){H[a+164>>2]=H[a+164>>2]+1;h=(b>>>0)/3|0;k=(b|0)==-1;l=k?-1:h;c=(l>>>3&536870908)+d|0;H[c>>2]=H[c>>2]|1<>2];m:{if((c|0)!=H[a+80>>2]){H[c>>2]=b;H[a+76>>2]=c+4;break m}f=H[a+72>>2];e=c-f|0;g=e>>2;c=g+1|0;if(c>>>0>1073741823){break j}d=e>>1;d=g>>>0<536870911?c>>>0>d>>>0?c:d:1073741823;if(d){if(d>>>0>1073741823){break a}c=ra(d<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=b;if((e|0)>0){sa(c,f,e)}H[a+80>>2]=c+(d<<2);H[a+76>>2]=g+4;H[a+72>>2]=c;if(!f){break m}qa(f)}c=-1;c=(b|0)!=-1?H[H[H[a+12>>2]>>2]+(b<<2)>>2]:c;m=c<<2;n=H[m+H[a+152>>2]>>2];n:{o:{f=H[a+84>>2]+(c>>>3&536870908)|0;e=H[f>>2];c=1<>2]=c|e;if((n|0)==-1){break o}}p:{if(k){break p}c=-1;f=b+1|0;d=(f>>>0)%3|0?f:b-2|0;if((d|0)!=-1){c=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2]}q:{r:{h=b-N(h,3)|0;s:{if(h){f=b-1|0;break s}f=b+2|0;if((f|0)==-1){break r}}g=(c|0)==-1?-1:(c>>>0)/3|0;f=H[H[H[a+12>>2]+12>>2]+(f<<2)>>2];e=(f|0)==-1?-1:(f>>>0)/3|0;break q}g=(c|0)==-1?-1:(c>>>0)/3|0;f=-1;e=-1}t:{if((d|0)==-1){break t}k=H[H[a+12>>2]+12>>2];d=H[k+(d<<2)>>2];if((d|0)==-1){break t}o=H[a+28>>2];d=(d>>>0)/3|0;if(H[o+(d>>>3&268435452)>>2]>>>d&1){break t}u:{v:{if(h){d=b-1|0;break v}d=b+2|0;if((d|0)==-1){break u}}d=H[k+(d<<2)>>2];if((d|0)==-1){break u}d=(d>>>0)/3|0;if(H[(d>>>3&268435452)+o>>2]>>>d&1){break u}e=H[a+272>>2];w:{if((e|0)!=H[a+276>>2]){H[e>>2]=1;H[a+272>>2]=e+4;break w}d=H[a+268>>2];g=e-d|0;h=g>>2;e=h+1|0;if(e>>>0>1073741823){break i}i=g>>1;i=h>>>0<536870911?e>>>0>i>>>0?e:i:1073741823;if(i){if(i>>>0>1073741823){break a}e=ra(i<<2)}else{e=0}h=e+(h<<2)|0;H[h>>2]=1;if((g|0)>0){sa(e,d,g)}H[a+276>>2]=e+(i<<2);H[a+272>>2]=h+4;H[a+268>>2]=e;if(!d){break w}qa(d)}H[a+168>>2]=H[a+168>>2]+1;x:{if((n|0)==-1){break x}e=H[H[a+152>>2]+m>>2];if(H[H[a+140>>2]+(e>>>3&536870908)>>2]>>>e&1){break x}qc(a,b,0)}b=H[a+164>>2];H[j+4>>2]=l;e=j+4|0;H[j+16>>2]=e;Df(j+24|0,p,e,j+16|0);H[H[j+24>>2]+12>>2]=b;b=H[a+20>>2];H[b-4>>2]=f;if((b|0)!=H[a+24>>2]){H[b>>2]=c;H[a+20>>2]=b+4;break k}f=H[a+16>>2];e=b-f|0;g=e>>2;b=g+1|0;if(b>>>0>1073741823){break h}d=e>>1;d=g>>>0<536870911?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>1073741823){break g}b=ra(d<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;if((e|0)>0){sa(b,f,e)}H[a+24>>2]=b+(d<<2);H[a+20>>2]=g+4;H[a+16>>2]=b;if(!f){break k}qa(f);break k}if((e|0)!=-1){Rb(a,H[a+164>>2],0,e)}b=H[a+272>>2];if((b|0)!=H[a+276>>2]){H[b>>2]=3;H[a+272>>2]=b+4;break n}f=H[a+268>>2];e=b-f|0;g=e>>2;b=g+1|0;if(b>>>0>1073741823){break i}d=e>>1;d=g>>>0<536870911?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>1073741823){break a}b=ra(d<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=3;if((e|0)>0){sa(b,f,e)}H[a+276>>2]=b+(d<<2);H[a+272>>2]=g+4;H[a+268>>2]=b;if(!f){break n}qa(f);break n}if((g|0)!=-1){Rb(a,H[a+164>>2],1,g)}y:{z:{if(h){b=b-1|0;break z}b=b+2|0;if((b|0)==-1){break y}}b=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break y}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break y}b=H[a+272>>2];if((b|0)!=H[a+276>>2]){H[b>>2]=5;H[a+272>>2]=b+4;c=f;break n}c=H[a+268>>2];e=b-c|0;g=e>>2;b=g+1|0;if(b>>>0>1073741823){break i}d=e>>1;d=g>>>0<536870911?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>1073741823){break a}b=ra(d<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=5;if((e|0)>0){sa(b,c,e)}H[a+276>>2]=b+(d<<2);H[a+272>>2]=g+4;H[a+268>>2]=b;if(!c){c=f;break n}qa(c);c=f;break n}if((e|0)==-1){break p}Rb(a,H[a+164>>2],0,e)}b=H[a+272>>2];A:{if((b|0)!=H[a+276>>2]){H[b>>2]=7;H[a+272>>2]=b+4;break A}c=H[a+268>>2];f=b-c|0;d=f>>2;b=d+1|0;if(b>>>0>1073741823){break i}e=f>>1;e=d>>>0<536870911?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break a}b=ra(e<<2)}else{b=0}d=b+(d<<2)|0;H[d>>2]=7;if((f|0)>0){sa(b,c,f)}H[a+276>>2]=b+(e<<2);H[a+272>>2]=d+4;H[a+268>>2]=b;if(!c){break A}qa(c)}H[a+20>>2]=H[a+20>>2]-4;break k}c=H[a+272>>2];B:{if((c|0)!=H[a+276>>2]){H[c>>2]=0;H[a+272>>2]=c+4;break B}f=H[a+268>>2];e=c-f|0;g=e>>2;c=g+1|0;if(c>>>0>1073741823){break i}d=e>>1;d=g>>>0<536870911?c>>>0>d>>>0?c:d:1073741823;if(d){if(d>>>0>1073741823){break a}c=ra(d<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=0;if((e|0)>0){sa(c,f,e)}H[a+276>>2]=c+(d<<2);H[a+272>>2]=g+4;H[a+268>>2]=c;if(!f){break B}qa(f)}c=-1;if((b|0)==-1){break n}f=b+1|0;b=(f>>>0)%3|0?f:b-2|0;if((b|0)==-1){break n}c=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2]}i=i+1|0;if((q|0)==(i|0)){break k}d=H[a+28>>2];b=c;continue}}H[a+20>>2]=c}b=H[a+20>>2];if((b|0)!=H[a+16>>2]){continue}break b}break}ua();X()}ua();X()}ua();X()}break a}da=j+32|0;return 1}wa(1604);X()}function qj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=da-16|0;da=e;f=H[a+48>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=20;H[e+8>>2]=-2147483616;F[b+20|0]=0;c=I[1471]|I[1472]<<8|(I[1473]<<16|I[1474]<<24);F[b+16|0]=c;F[b+17|0]=c>>>8;F[b+18|0]=c>>>16;F[b+19|0]=c>>>24;c=I[1467]|I[1468]<<8|(I[1469]<<16|I[1470]<<24);d=I[1463]|I[1464]<<8|(I[1465]<<16|I[1466]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1459]|I[1460]<<8|(I[1461]<<16|I[1462]<<24);d=I[1455]|I[1456]<<8|(I[1457]<<16|I[1458]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;f=mf(f+24|0,e);if(F[e+11|0]<0){qa(H[e>>2])}g=H[a+48>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=22;H[e+8>>2]=-2147483616;F[b+22|0]=0;c=I[1450]|I[1451]<<8|(I[1452]<<16|I[1453]<<24);d=I[1446]|I[1447]<<8|(I[1448]<<16|I[1449]<<24);F[b+14|0]=d;F[b+15|0]=d>>>8;F[b+16|0]=d>>>16;F[b+17|0]=d>>>24;F[b+18|0]=c;F[b+19|0]=c>>>8;F[b+20|0]=c>>>16;F[b+21|0]=c>>>24;c=I[1444]|I[1445]<<8|(I[1446]<<16|I[1447]<<24);d=I[1440]|I[1441]<<8|(I[1442]<<16|I[1443]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1436]|I[1437]<<8|(I[1438]<<16|I[1439]<<24);d=I[1432]|I[1433]<<8|(I[1434]<<16|I[1435]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;g=mf(g+24|0,e);if(F[e+11|0]<0){qa(H[e>>2])}b=H[a+64>>2];H[a+64>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}b=H[a+56>>2];h=H[b+100>>2];i=H[a+48>>2];j=H[b+96>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=18;H[e+8>>2]=-2147483616;F[b+18|0]=0;c=I[1725]|I[1726]<<8;F[b+16|0]=c;F[b+17|0]=c>>>8;c=I[1721]|I[1722]<<8|(I[1723]<<16|I[1724]<<24);d=I[1717]|I[1718]<<8|(I[1719]<<16|I[1720]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1713]|I[1714]<<8|(I[1715]<<16|I[1716]<<24);d=I[1709]|I[1710]<<8|(I[1711]<<16|I[1712]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;b=gb(i,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}c=(h-j|0)/12|0;a:{b:{c:{d:{e:{f:{g:{h:{switch(b+1|0){case 1:break f;case 3:break g;case 0:break h;default:break c}}if(!f){break g}if(g^1|(fb(H[a+48>>2])|0)>4|c>>>0<1e3){break e}}b=H[a+44>>2];F[e|0]=2;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){va(b,H[b+4>>2],e,e+1|0)}b=ra(360);H[b+4>>2]=0;H[b+8>>2]=0;H[b+72>>2]=0;H[b+76>>2]=0;H[b>>2]=10612;H[b+12>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+64>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[b+96>>2]=0;H[b+100>>2]=0;H[b+104>>2]=0;H[b+108>>2]=0;H[b+112>>2]=0;H[b+116>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+136>>2]=1065353216;H[b+156>>2]=0;H[b+160>>2]=0;H[b+148>>2]=0;H[b+152>>2]=0;H[b+140>>2]=0;H[b+144>>2]=0;H[b+168>>2]=0;H[b+172>>2]=0;H[b+164>>2]=-1;H[b+176>>2]=0;H[b+180>>2]=0;H[b+184>>2]=0;H[b+188>>2]=0;H[b+192>>2]=0;c=b+200|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=b+232|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[b+304>>2]=0;H[b+308>>2]=0;H[b+296>>2]=0;H[b+300>>2]=0;H[b+288>>2]=0;H[b+292>>2]=0;H[b+280>>2]=0;H[b+284>>2]=0;H[b+272>>2]=0;H[b+276>>2]=0;H[b+264>>2]=0;H[b+268>>2]=0;F[b+352|0]=0;H[b+344>>2]=0;H[b+336>>2]=0;H[b+340>>2]=0;H[b+328>>2]=2;H[b+332>>2]=7;H[b+320>>2]=-1;H[b+324>>2]=0;H[b+312>>2]=0;H[b+316>>2]=-1;break d}if(!f){break c}}b=H[a+44>>2];F[e|0]=0;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){va(b,H[b+4>>2],e,e+1|0)}b=ra(296);H[b+4>>2]=0;H[b+8>>2]=0;H[b+72>>2]=0;H[b+76>>2]=0;H[b>>2]=10560;H[b+12>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+64>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[b+96>>2]=0;H[b+100>>2]=0;H[b+104>>2]=0;H[b+108>>2]=0;H[b+112>>2]=0;H[b+116>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+136>>2]=1065353216;H[b+156>>2]=0;H[b+160>>2]=0;H[b+148>>2]=0;H[b+152>>2]=0;H[b+140>>2]=0;H[b+144>>2]=0;H[b+168>>2]=0;H[b+172>>2]=0;H[b+164>>2]=-1;H[b+176>>2]=0;H[b+180>>2]=0;H[b+184>>2]=0;H[b+188>>2]=0;H[b+192>>2]=0;c=b+200|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=b+232|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;F[b+288|0]=0;H[b+280>>2]=0;H[b+284>>2]=0;H[b+272>>2]=0;H[b+276>>2]=0;H[b+264>>2]=0;H[b+268>>2]=0}c=H[a+64>>2];H[a+64>>2]=b;if(!c){break b}fa[H[H[c>>2]+4>>2]](c)}b=H[a+64>>2];if(b){break b}a=0;break a}a=fa[H[H[b>>2]+8>>2]](b,a)|0}da=e+16|0;return a|0}function Ic(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=da-16|0;da=e;H[a+8>>2]=b;H[a>>2]=0;d=a+12|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;c=d+32|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+96|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+128|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+160|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+192|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+224|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+256|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+288|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+320|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+352|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+384|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+416|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+448|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+480|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+512|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+544|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+576|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+608|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+640|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+672|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+704|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+736|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+768|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+800|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+832|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+864|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+896|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+928|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+960|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;d=d+992|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1036|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1068|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1088|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1108|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[a+1136>>2]=0;H[a+1128>>2]=0;H[a+1132>>2]=0;h=a+1164|0;a:{b:{if(b){if(b>>>0<1073741824){break b}ua();X()}H[a+1140>>2]=0;H[a+1144>>2]=0;d=a+1156|0;H[d>>2]=0;H[d+4>>2]=0;d=a+1148|0;H[d>>2]=0;H[d+4>>2]=0;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;d=1;break a}d=b<<2;c=ra(d);H[a+1128>>2]=c;f=c+d|0;H[a+1136>>2]=f;ta(c,0,d);g=a+1148|0;H[g>>2]=0;H[a+1140>>2]=0;H[a+1144>>2]=0;H[a+1132>>2]=f;c=ra(d);H[a+1140>>2]=c;f=c+d|0;H[g>>2]=f;ta(c,0,d);g=a+1160|0;H[g>>2]=0;H[a+1152>>2]=0;H[a+1156>>2]=0;H[a+1144>>2]=f;c=ra(d);H[a+1152>>2]=c;f=c+d|0;H[g>>2]=f;ta(c,0,d);H[a+1156>>2]=f;c=ra(d);H[e>>2]=c;f=c+d|0;H[e+8>>2]=f;ta(c,0,d);H[e+4>>2]=f;d=b<<5|1}Nb(h,d,e);c=H[e>>2];if(c){H[e+4>>2]=c;qa(c)}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if(b){b=b<<2;c=ra(b);H[e>>2]=c;f=b+c|0;H[e+8>>2]=f;ta(c,0,b);H[e+4>>2]=f}Nb(a+1176|0,d,e);b=H[e>>2];if(b){H[e+4>>2]=b;qa(b)}da=e+16|0;return a}function Ag(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;g=da-80|0;da=g;i=-1;f=-1;a:{if((b|0)==-1){break a}f=b+1|0;i=(f>>>0)%3|0?f:b-2|0;f=b-1|0;if((b>>>0)%3|0){break a}f=b+2|0}e=H[a+36>>2];b=H[e>>2];b:{c:{d:{e:{f:{g:{e=H[e+4>>2]-b>>2;h=i<<2;i=H[H[a+32>>2]+28>>2];j=H[h+i>>2];if(e>>>0<=j>>>0){break g}f=H[i+(f<<2)>>2];if(f>>>0>=e>>>0){break g}h:{i:{e=H[b+(f<<2)>>2];k=H[b+(j<<2)>>2];if((e|0)>=(d|0)|(k|0)>=(d|0)){break i}b=(e<<3)+c|0;n=H[b+4>>2];f=(k<<3)+c|0;i=H[f+4>>2];q=H[f>>2];A=H[b>>2];if(!((q|0)!=(A|0)|(i|0)!=(n|0))){H[a+8>>2]=q;H[a+12>>2]=i;break h}b=H[H[a+4>>2]+(d<<2)>>2];H[g+72>>2]=0;H[g+76>>2]=0;f=g- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}mb(f,b,F[f+24|0],g+56|0);b=H[H[a+4>>2]+(k<<2)>>2];H[g+48>>2]=0;H[g+52>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}mb(f,b,F[f+24|0],g+32|0);b=H[H[a+4>>2]+(e<<2)>>2];H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}mb(f,b,F[f+24|0],g+8|0);E=H[g+44>>2];b=H[g+16>>2];p=H[g+40>>2];f=p;j=H[g+20>>2]-(E+(b>>>0>>0)|0)|0;r=b-f|0;b=Rk(r,j,r,j);f=ea;s=b;G=H[g+36>>2];b=H[g+8>>2];B=H[g+32>>2];e=B;h=H[g+12>>2]-(G+(b>>>0>>0)|0)|0;v=b-e|0;l=Rk(v,h,v,h);b=s+l|0;e=ea+f|0;e=b>>>0>>0?e+1|0:e;x=b;J=H[g+52>>2];b=H[g+24>>2];s=H[g+48>>2];f=s;l=H[g+28>>2]-(J+(b>>>0>>0)|0)|0;w=b-f|0;o=Rk(w,l,w,l);b=x+o|0;f=ea+e|0;t=b;o=b>>>0>>0?f+1|0:f;if(!(b|o)){break i}x=H[g+64>>2];b=x;C=H[g+68>>2];b=Rk(b-p|0,C-((b>>>0

>>0)+E|0)|0,r,j);f=ea;k=b;K=H[g+56>>2];b=K;L=H[g+60>>2];e=Rk(b-B|0,L-((b>>>0>>0)+G|0)|0,v,h);b=k+e|0;f=ea+f|0;f=b>>>0>>0?f+1|0:f;e=b;M=H[g+72>>2];b=M;N=H[g+76>>2];k=Rk(b-s|0,N-((b>>>0>>0)+J|0)|0,w,l);b=e+k|0;e=ea+f|0;e=b>>>0>>0?e+1|0:e;k=b;u=e;b=l>>31;e=b+w|0;f=b+l|0;f=e>>>0>>0?f+1|0:f;D=e^b;b=b^f;f=b;b=j>>31;m=b+r|0;e=b+j|0;e=m>>>0>>0?e+1|0:e;y=m^b;b=b^e;e=b;b=h>>31;z=b+v|0;m=b+h|0;m=z>>>0>>0?m+1|0:m;z=z^b;b=b^m;m=(b|0)==(e|0)&y>>>0>z>>>0|b>>>0>>0;y=m?y:z;b=m?e:b;e=(b|0)==(f|0)&y>>>0>>0|b>>>0>>0;f=Tk(-1,2147483647,e?D:y,e?f:b)>>>0>>0;b=ea;if(f&(b|0)<=(u|0)|(b|0)<(u|0)){break c}b=i;y=n-b|0;f=b>>31;z=(n>>31)-(f+(b>>>0>n>>>0)|0)|0;b=Rk(k,u,y,z);e=ea;i=Rk(i,f,t,o);f=i+b|0;b=ea+e|0;n=f;D=f>>>0>>0?b+1|0:b;b=q;O=A-b|0;f=b>>31;P=(A>>31)-(f+(b>>>0>A>>>0)|0)|0;b=Rk(k,u,O,P);i=ea;f=Rk(q,f,t,o);b=f+b|0;e=ea+i|0;q=b;A=b>>>0>>0?e+1|0:e;i=1;f=0;b=x;r=Sk(Rk(r,j,k,u),ea,t,o);j=r+p|0;e=ea+E|0;e=j>>>0>>0?e+1|0:e;e=C-((b>>>0>>0)+e|0)|0;b=b-j|0;b=Rk(b,e,b,e);r=ea;e=K;p=b;h=Sk(Rk(v,h,k,u),ea,t,o);j=h+B|0;b=ea+G|0;b=h>>>0>j>>>0?b+1|0:b;b=L-((e>>>0>>0)+b|0)|0;e=e-j|0;j=Rk(e,b,e,b);b=p+j|0;e=ea+r|0;h=b;j=b>>>0>>0?e+1|0:e;b=M;p=h;l=Sk(Rk(w,l,k,u),ea,t,o);h=l+s|0;e=ea+J|0;e=h>>>0>>0?e+1|0:e;e=N-((b>>>0>>0)+e|0)|0;b=b-h|0;h=Rk(b,e,b,e);e=p+h|0;b=ea+j|0;j=Rk(e,e>>>0>>0?b+1|0:b,t,o);b=ea;h=b;if(!b&j>>>0<=1){break f}l=j;e=h;while(1){b=f<<1|i>>>31;i=i<<1;f=b;k=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(k){continue}break}break e}if((d|0)>(k|0)){b=k<<1}else{if((d|0)<=0){H[a+8>>2]=0;H[a+12>>2]=0;break h}b=(d<<1)-2|0}b=(b<<2)+c|0;H[a+8>>2]=H[b>>2];H[a+12>>2]=H[b+4>>2]}break c}xa();X()}f=h;i=j;if(j-1|0){break d}}while(1){b=Tk(j,h,i,f)+i|0;m=f+ea|0;m=b>>>0>>0?m+1|0:m;i=(m&1)<<31|b>>>1;f=m>>>1|0;b=Rk(i,f,i,f);e=ea;if((h|0)==(e|0)&b>>>0>j>>>0|e>>>0>h>>>0){continue}break}}j=a+16|0;w=H[a+24>>2];u=w<<5;b=H[a+20>>2];h=(d<<3)+c|0;d=H[h+4>>2];p=Rk(i,f,O,P);c=p;B=ea;c=Sk(n-c|0,D-(B+(c>>>0>n>>>0)|0)|0,t,o);k=d-c|0;l=d>>31;e=l-(ea+(c>>>0>d>>>0)|0)|0;s=Rk(k,e,k,e);x=ea;h=H[h>>2];e=h>>31;k=h;r=e;v=Rk(i,f,y,z);f=q+v|0;C=ea;m=A+C|0;i=Sk(f,f>>>0>>0?m+1|0:m,t,o);f=e-(ea+(h>>>0>>0)|0)|0;e=h-i|0;h=Rk(e,f,e,f);f=h+s|0;e=ea+x|0;s=f;h=f>>>0>>0?e+1|0:e;f=d;e=D+B|0;d=n+p|0;e=d>>>0>>0?e+1|0:e;d=Sk(d,e,t,o);e=l-(ea+(d>>>0>f>>>0)|0)|0;f=f-d|0;e=Rk(f,e,f,e);p=ea;x=e;f=Sk(q-v|0,A-((q>>>0>>0)+C|0)|0,t,o);n=k-f|0;e=r-(ea+(f>>>0>k>>>0)|0)|0;q=Rk(n,e,n,e);n=x+q|0;e=ea+p|0;e=n>>>0>>0?e+1|0:e;j:{if((e|0)==(h|0)&n>>>0>s>>>0|e>>>0>h>>>0){if((b|0)==(u|0)){if((b+1|0)<0){break b}if(b>>>0<=1073741822){b=b+32&-32;d=w<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Ib(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;d=H[a+16>>2]+(b>>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>>0<=1073741822){b=b+32&-32;c=w<<6;b=b>>>0>c>>>0?b:c}else{b=2147483647}Ib(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;c=H[a+16>>2]+(b>>>3&536870908)|0;i=H[c>>2];Q=c,R=Vk(b)&i,H[Q>>2]=R;c=d;i=f}H[a+8>>2]=i;H[a+12>>2]=c}da=g+80|0;return}ua();X()}function vg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;g=da-80|0;da=g;f=-1;a:{if((b|0)==-1){break a}i=H[a+32>>2];e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)!=-1){f=H[H[i>>2]+(e<<2)>>2]}e=((b>>>0)%3|0?-1:2)+b|0;b=-1;b=(e|0)!=-1?H[H[i>>2]+(e<<2)>>2]:b;e=H[a+36>>2];i=H[e>>2];e=H[e+4>>2]-i>>2;if(e>>>0<=f>>>0|b>>>0>=e>>>0){break a}b:{c:{d:{e:{f:{g:{e=H[i+(b<<2)>>2];k=H[i+(f<<2)>>2];if((e|0)>=(d|0)|(k|0)>=(d|0)){break g}b=(e<<3)+c|0;n=H[b+4>>2];f=(k<<3)+c|0;i=H[f+4>>2];q=H[f>>2];A=H[b>>2];if(!((q|0)!=(A|0)|(i|0)!=(n|0))){H[a+8>>2]=q;H[a+12>>2]=i;break c}b=H[H[a+4>>2]+(d<<2)>>2];H[g+72>>2]=0;H[g+76>>2]=0;f=g- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}mb(f,b,F[f+24|0],g+56|0);b=H[H[a+4>>2]+(k<<2)>>2];H[g+48>>2]=0;H[g+52>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}mb(f,b,F[f+24|0],g+32|0);b=H[H[a+4>>2]+(e<<2)>>2];H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}mb(f,b,F[f+24|0],g+8|0);E=H[g+44>>2];b=H[g+16>>2];p=H[g+40>>2];f=p;j=H[g+20>>2]-(E+(b>>>0>>0)|0)|0;r=b-f|0;b=Rk(r,j,r,j);f=ea;s=b;G=H[g+36>>2];b=H[g+8>>2];B=H[g+32>>2];e=B;h=H[g+12>>2]-(G+(b>>>0>>0)|0)|0;v=b-e|0;l=Rk(v,h,v,h);b=s+l|0;e=ea+f|0;e=b>>>0>>0?e+1|0:e;x=b;J=H[g+52>>2];b=H[g+24>>2];s=H[g+48>>2];f=s;l=H[g+28>>2]-(J+(b>>>0>>0)|0)|0;w=b-f|0;o=Rk(w,l,w,l);b=x+o|0;f=ea+e|0;t=b;o=b>>>0>>0?f+1|0:f;if(!(b|o)){break g}x=H[g+64>>2];b=x;C=H[g+68>>2];b=Rk(b-p|0,C-((b>>>0

>>0)+E|0)|0,r,j);f=ea;k=b;K=H[g+56>>2];b=K;L=H[g+60>>2];e=Rk(b-B|0,L-((b>>>0>>0)+G|0)|0,v,h);b=k+e|0;f=ea+f|0;f=b>>>0>>0?f+1|0:f;e=b;M=H[g+72>>2];b=M;N=H[g+76>>2];k=Rk(b-s|0,N-((b>>>0>>0)+J|0)|0,w,l);b=e+k|0;e=ea+f|0;e=b>>>0>>0?e+1|0:e;k=b;u=e;b=l>>31;e=b+w|0;f=b+l|0;f=e>>>0>>0?f+1|0:f;D=e^b;b=b^f;f=b;b=j>>31;m=b+r|0;e=b+j|0;e=m>>>0>>0?e+1|0:e;y=m^b;b=b^e;e=b;b=h>>31;z=b+v|0;m=b+h|0;m=z>>>0>>0?m+1|0:m;z=z^b;b=b^m;m=(b|0)==(e|0)&y>>>0>z>>>0|b>>>0>>0;y=m?y:z;b=m?e:b;e=(b|0)==(f|0)&y>>>0>>0|b>>>0>>0;f=Tk(-1,2147483647,e?D:y,e?f:b)>>>0>>0;b=ea;if(f&(b|0)<=(u|0)|(b|0)<(u|0)){break c}b=i;y=n-b|0;f=b>>31;z=(n>>31)-(f+(b>>>0>n>>>0)|0)|0;b=Rk(k,u,y,z);e=ea;i=Rk(i,f,t,o);f=i+b|0;b=ea+e|0;n=f;D=f>>>0>>0?b+1|0:b;b=q;O=A-b|0;f=b>>31;P=(A>>31)-(f+(b>>>0>A>>>0)|0)|0;b=Rk(k,u,O,P);i=ea;f=Rk(q,f,t,o);b=f+b|0;e=ea+i|0;q=b;A=b>>>0>>0?e+1|0:e;i=1;f=0;b=x;r=Sk(Rk(r,j,k,u),ea,t,o);j=r+p|0;e=ea+E|0;e=j>>>0>>0?e+1|0:e;e=C-((b>>>0>>0)+e|0)|0;b=b-j|0;b=Rk(b,e,b,e);r=ea;e=K;p=b;h=Sk(Rk(v,h,k,u),ea,t,o);j=h+B|0;b=ea+G|0;b=h>>>0>j>>>0?b+1|0:b;b=L-((e>>>0>>0)+b|0)|0;e=e-j|0;j=Rk(e,b,e,b);b=p+j|0;e=ea+r|0;h=b;j=b>>>0>>0?e+1|0:e;b=M;p=h;l=Sk(Rk(w,l,k,u),ea,t,o);h=l+s|0;e=ea+J|0;e=h>>>0>>0?e+1|0:e;e=N-((b>>>0>>0)+e|0)|0;b=b-h|0;h=Rk(b,e,b,e);e=p+h|0;b=ea+j|0;j=Rk(e,e>>>0>>0?b+1|0:b,t,o);b=ea;h=b;if(!b&j>>>0<=1){break f}l=j;e=h;while(1){b=f<<1|i>>>31;i=i<<1;f=b;k=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(k){continue}break}break e}if((d|0)>(k|0)){b=k<<1}else{if((d|0)<=0){H[a+8>>2]=0;H[a+12>>2]=0;break c}b=(d<<1)-2|0}b=(b<<2)+c|0;H[a+8>>2]=H[b>>2];H[a+12>>2]=H[b+4>>2];break c}f=h;i=j;if(i-1|0){break d}}while(1){b=Tk(j,h,i,f)+i|0;m=f+ea|0;m=b>>>0>>0?m+1|0:m;i=(m&1)<<31|b>>>1;f=m>>>1|0;b=Rk(i,f,i,f);e=ea;if((h|0)==(e|0)&b>>>0>j>>>0|e>>>0>h>>>0){continue}break}}j=a+16|0;w=H[a+24>>2];u=w<<5;b=H[a+20>>2];h=(d<<3)+c|0;d=H[h+4>>2];p=Rk(i,f,O,P);c=p;B=ea;c=Sk(n-c|0,D-(B+(c>>>0>n>>>0)|0)|0,t,o);k=d-c|0;l=d>>31;e=l-(ea+(c>>>0>d>>>0)|0)|0;s=Rk(k,e,k,e);x=ea;h=H[h>>2];e=h>>31;k=h;r=e;v=Rk(i,f,y,z);f=q+v|0;C=ea;m=A+C|0;i=Sk(f,f>>>0>>0?m+1|0:m,t,o);f=e-(ea+(h>>>0>>0)|0)|0;e=h-i|0;h=Rk(e,f,e,f);f=h+s|0;e=ea+x|0;s=f;h=f>>>0>>0?e+1|0:e;f=d;e=D+B|0;d=n+p|0;e=d>>>0>>0?e+1|0:e;d=Sk(d,e,t,o);e=l-(ea+(d>>>0>f>>>0)|0)|0;f=f-d|0;e=Rk(f,e,f,e);p=ea;x=e;f=Sk(q-v|0,A-((q>>>0>>0)+C|0)|0,t,o);n=k-f|0;e=r-(ea+(f>>>0>k>>>0)|0)|0;q=Rk(n,e,n,e);n=x+q|0;e=ea+p|0;e=n>>>0>>0?e+1|0:e;h:{if((e|0)==(h|0)&n>>>0>s>>>0|e>>>0>h>>>0){if((b|0)==(u|0)){if((b+1|0)<0){break b}if(b>>>0<=1073741822){b=b+32&-32;d=w<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Ib(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;d=H[a+16>>2]+(b>>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>>0<=1073741822){b=b+32&-32;c=w<<6;b=b>>>0>c>>>0?b:c}else{b=2147483647}Ib(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;c=H[a+16>>2]+(b>>>3&536870908)|0;i=H[c>>2];Q=c,R=Vk(b)&i,H[Q>>2]=R;c=d;i=f}H[a+8>>2]=i;H[a+12>>2]=c}da=g+80|0;return}ua();X()}xa();X()}function Bj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0);f=da-32|0;da=f;H[f+28>>2]=c;a:{b:{if(!Nd(a,b,c)){break b}m=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];if(H[m+28>>2]!=9){break b}h=H[b+48>>2];i=ra(32);H[f+16>>2]=i;H[f+20>>2]=17;H[f+24>>2]=-2147483616;F[i+17|0]=0;F[i+16|0]=I[1373];d=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);e=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[i+8|0]=e;F[i+9|0]=e>>>8;F[i+10|0]=e>>>16;F[i+11|0]=e>>>24;F[i+12|0]=d;F[i+13|0]=d>>>8;F[i+14|0]=d>>>16;F[i+15|0]=d>>>24;d=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);e=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[i|0]=e;F[i+1|0]=e>>>8;F[i+2|0]=e>>>16;F[i+3|0]=e>>>24;F[i+4|0]=d;F[i+5|0]=d>>>8;F[i+6|0]=d>>>16;F[i+7|0]=d>>>24;g=h+16|0;d=H[g>>2];c:{if(!d){break c}e=g;while(1){k=H[d+16>>2]<(c|0);e=k?e:d;d=H[(k<<2)+d>>2];if(d){continue}break}if((e|0)==(g|0)|H[e+16>>2]>(c|0)){break c}d=H[e+24>>2];if(!d){break c}c=e+20|0;while(1){e=I[d+27|0];g=e<<24>>24<0;j=g?H[d+20>>2]:e;l=j>>>0<17;d:{e:{k=l?j:17;f:{if(k){e=d+16|0;g=g?H[e>>2]:e;e=Ca(i,g,k);g:{if(!e){if(j>>>0<=17){break g}break d}if((e|0)<0){break d}}e=Ca(g,i,k);if(!e){break f}if((e|0)<0){break e}h=c;break c}if(j>>>0>17){break d}}if(l){break e}h=c;break c}d=d+4|0}d=H[d>>2];if(d){continue}break}}l=gb(h,f+16|0,-1);if(F[f+27|0]<0){qa(H[f+16>>2])}if((l|0)<=0){d=0;break b}c=H[b+48>>2];g=ra(32);H[f+16>>2]=g;H[f+20>>2]=19;H[f+24>>2]=-2147483616;e=0;F[g+19|0]=0;h=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[g+15|0]=h;F[g+16|0]=h>>>8;F[g+17|0]=h>>>16;F[g+18|0]=h>>>24;d=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);h=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[g+8|0]=h;F[g+9|0]=h>>>8;F[g+10|0]=h>>>16;F[g+11|0]=h>>>24;F[g+12|0]=d;F[g+13|0]=d>>>8;F[g+14|0]=d>>>16;F[g+15|0]=d>>>24;d=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);h=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[g|0]=h;F[g+1|0]=h>>>8;F[g+2|0]=h>>>16;F[g+3|0]=h>>>24;F[g+4|0]=d;F[g+5|0]=d>>>8;F[g+6|0]=d>>>16;F[g+7|0]=d>>>24;h:{if(!gc(c,f+28|0,f+16|0)){break h}h=H[b+48>>2];c=ra(32);H[f>>2]=c;H[f+4>>2]=18;H[f+8>>2]=-2147483616;F[c+18|0]=0;e=I[1706]|I[1707]<<8;F[c+16|0]=e;F[c+17|0]=e>>>8;d=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);e=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[c+8|0]=e;F[c+9|0]=e>>>8;F[c+10|0]=e>>>16;F[c+11|0]=e>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);e=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;e=gc(h,f+28|0,f);if(F[f+11|0]>=0){break h}qa(H[f>>2])}if(F[f+27|0]<0){qa(H[f+16>>2])}i:{if(e){c=F[m+24|0];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;j=0;if(c){if((c|0)<0){break a}e=c<<2;j=ra(e);H[f+16>>2]=j;c=e+j|0;H[f+24>>2]=c;ta(j,0,e);H[f+20>>2]=c}h=H[b+48>>2];d=ra(32);H[f>>2]=d;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[d+19|0]=0;c=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[d+15|0]=c;F[d+16|0]=c>>>8;F[d+17|0]=c>>>16;F[d+18|0]=c>>>24;e=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);c=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[d+8|0]=c;F[d+9|0]=c>>>8;F[d+10|0]=c>>>16;F[d+11|0]=c>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);c=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;i=F[m+24|0];c=h+16|0;d=H[c>>2];j:{k:{if(!d){break k}k=H[f+28>>2];e=c;while(1){g=(k|0)>H[d+16>>2];e=g?e:d;d=H[(g<<2)+d>>2];if(d){continue}break}if((c|0)==(e|0)|(k|0)>2]){break k}d=e+20|0;if(lg(d,f)){break j}}d=h}$d(d,f,i,j);if(F[f+11|0]<0){qa(H[f>>2])}c=H[b+48>>2];b=ra(32);H[f>>2]=b;H[f+4>>2]=18;H[f+8>>2]=-2147483616;F[b+18|0]=0;e=I[1706]|I[1707]<<8;F[b+16|0]=e;F[b+17|0]=e>>>8;h=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);e=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=h;F[b+13|0]=h>>>8;F[b+14|0]=h>>>16;F[b+15|0]=h>>>24;h=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);e=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=h;F[b+5|0]=h>>>8;F[b+6|0]=h>>>16;F[b+7|0]=h>>>24;b=c+16|0;d=H[b>>2];l:{m:{if(!d){break m}g=H[f+28>>2];e=b;while(1){h=(g|0)>H[d+16>>2];e=h?e:d;d=H[(h<<2)+d>>2];if(d){continue}break}if((b|0)==(e|0)|(g|0)>2]){break m}d=e+20|0;if(lg(d,f)){break l}}d=c}n=nf(d,f);if(F[f+11|0]<0){qa(H[f>>2])}a=pg(a+40|0,l,j,F[m+24|0],n);if(j){qa(j)}d=0;if(a){break i}break b}d=0;if(!kg(a+40|0,m,l)){break b}}d=1}da=f+32|0;return d|0}ua();X()}function Ma(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[e+12>>2]=a;a:{if(a>>>0<=211){d=H[ne(15616,15808,e+12|0)>>2];break a}if(a>>>0>=4294967292){me();X()}f=(a>>>0)/210|0;d=N(f,210);H[e+8>>2]=a-d;g=ne(15808,16e3,e+8|0)-15808>>2;while(1){d=H[(g<<2)+15808>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0>>0){break b}if((N(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((N(b,c)|0)!=(d|0)){continue}break}break c}b=H[(a<<2)+15616>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((N(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=N(f,210);continue}break}H[e+12>>2]=d}da=e+16|0;return d}function Bk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=da-32|0;da=g;a:{b:{if(!H[H[a+8>>2]+80>>2]){d=1;break b}F[g+31|0]=254;i=H[a+36>>2];if(i){if(!(fa[H[H[a>>2]+40>>2]](a,i)|0)){break b}d=H[a+36>>2];n=g,o=fa[H[H[d>>2]+8>>2]](d)|0,F[n+31|0]=o}d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){va(c,H[c+4>>2],g+31|0,g+32|0)}d=H[a+36>>2];c:{if(!d){break c}n=g,o=fa[H[H[d>>2]+36>>2]](d)|0,F[n+16|0]=o;d=H[c+20>>2];if(!!H[c+16>>2]&(d|0)>=0|(d|0)>0){break c}va(c,H[c+4>>2],g+16|0,g+17|0)}d=H[a+32>>2];e=H[d+48>>2];f=H[H[d>>2]>>2];h=H[d+80>>2];k=F[d+24|0];i=0;H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;h=N(h,k);if(h){if(h>>>0>=1073741824){break a}d=h<<2;i=ra(d);H[g+16>>2]=i;j=d+i|0;H[g+24>>2]=j;ta(i,0,d);H[g+20>>2]=j}d=e+f|0;e=H[a+36>>2];d:{e:{if(!e){break e}fa[H[H[e>>2]+44>>2]](e,d,i,h,k,H[b>>2])|0;e=H[a+36>>2];if(!e){break e}if(fa[H[H[e>>2]+32>>2]](e)|0){break d}d=H[a+36>>2]?i:d}e=0;f=0;f:{if((h|0)<=0){break f}if((h|0)!=1){m=h&-2;while(1){l=e<<2;j=H[l+d>>2];H[i+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+d>>2];H[i+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;e=e+2|0;f=f+2|0;if((m|0)!=(f|0)){continue}break}}if(!(h&1)){break f}e=e<<2;d=H[e+d>>2];H[e+i>>2]=(d|0)>=0?d<<1:(d^-1)<<1|1}}g:{h:{i:{j:{k:{d=H[a+4>>2];if(!d){break k}j=H[d+48>>2];d=ra(48);H[g>>2]=d;H[g+4>>2]=34;H[g+8>>2]=-2147483600;F[d+34|0]=0;e=I[1523]|I[1524]<<8;F[d+32|0]=e;F[d+33|0]=e>>>8;e=I[1519]|I[1520]<<8|(I[1521]<<16|I[1522]<<24);f=I[1515]|I[1516]<<8|(I[1517]<<16|I[1518]<<24);F[d+24|0]=f;F[d+25|0]=f>>>8;F[d+26|0]=f>>>16;F[d+27|0]=f>>>24;F[d+28|0]=e;F[d+29|0]=e>>>8;F[d+30|0]=e>>>16;F[d+31|0]=e>>>24;e=I[1511]|I[1512]<<8|(I[1513]<<16|I[1514]<<24);f=I[1507]|I[1508]<<8|(I[1509]<<16|I[1510]<<24);F[d+16|0]=f;F[d+17|0]=f>>>8;F[d+18|0]=f>>>16;F[d+19|0]=f>>>24;F[d+20|0]=e;F[d+21|0]=e>>>8;F[d+22|0]=e>>>16;F[d+23|0]=e>>>24;e=I[1503]|I[1504]<<8|(I[1505]<<16|I[1506]<<24);f=I[1499]|I[1500]<<8|(I[1501]<<16|I[1502]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1495]|I[1496]<<8|(I[1497]<<16|I[1498]<<24);f=I[1491]|I[1492]<<8|(I[1493]<<16|I[1494]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=Qb(j,g,1);if(F[g+11|0]<0){qa(H[g>>2])}if(d){break k}if(!h){break j}e=0;d=0;b=0;if(h-1>>>0>=3){j=h&-4;f=0;while(1){k=d<<2;b=H[(k|12)+i>>2]|(H[(k|8)+i>>2]|(H[(k|4)+i>>2]|(H[i+k>>2]|b)));d=d+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}f=h&3;if(f){while(1){b=H[(d<<2)+i>>2]|b;d=d+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(!b){break j}b=4-(Q(b)>>>3|0)|0;break i}F[g|0]=1;d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){va(c,H[c+4>>2],g,g+1|0)}H[g+4>>2]=0;H[g+8>>2]=0;H[g>>2]=g+4;d=H[a+4>>2];if(d){j=10-fb(H[d+48>>2])|0;h=da-16|0;da=h;l:{if(j>>>0>10){break l}d=ra(48);H[h>>2]=d;H[h+4>>2]=33;H[h+8>>2]=-2147483600;F[d+33|0]=0;F[d+32|0]=I[1582];e=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[d+24|0]=f;F[d+25|0]=f>>>8;F[d+26|0]=f>>>16;F[d+27|0]=f>>>24;F[d+28|0]=e;F[d+29|0]=e>>>8;F[d+30|0]=e>>>16;F[d+31|0]=e>>>24;e=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[d+16|0]=f;F[d+17|0]=f>>>8;F[d+18|0]=f>>>16;F[d+19|0]=f>>>24;F[d+20|0]=e;F[d+21|0]=e>>>8;F[d+22|0]=e>>>16;F[d+23|0]=e>>>24;e=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;wb(g,h,j);if(F[h+11|0]>=0){break l}qa(H[h>>2])}da=h+16|0}b=Gd(i,N(k,H[b+4>>2]-H[b>>2]>>2),k,g,c);Oa(g,H[g+4>>2]);d=0;if(b){break h}break g}b=1}F[g|0]=0;d=H[c+20>>2];m:{if(!!H[c+16>>2]&(d|0)>=0|(d|0)>0){break m}e=g+1|0;va(c,H[c+4>>2],g,e);d=H[c+20>>2];f=H[c+16>>2];F[g|0]=b;if(!!f&(d|0)>=0|(d|0)>0){break m}va(c,H[c+4>>2],g,e)}if((b|0)!=H[3716]){if(!h){break h}d=H[c+20>>2];e=d;f=H[c+16>>2];if(!!f&(d|0)>=0|(d|0)>0){break h}d=0;while(1){if(!f&(e|0)<=0|(e|0)<0){e=(d<<2)+i|0;va(c,H[c+4>>2],e,b+e|0)}d=d+1|0;if((h|0)==(d|0)){break h}f=H[c+16>>2];e=H[c+20>>2];continue}}b=H[c+20>>2];if(!!H[c+16>>2]&(b|0)>=0|(b|0)>0){break h}va(c,H[c+4>>2],i,(h<<2)+i|0)}d=1;a=H[a+36>>2];if(!a){break g}fa[H[H[a>>2]+40>>2]](a,c)|0}if(!i){break b}qa(i)}da=g+32|0;return d|0}ua();X()}function Ka(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;m=da-96|0;da=m;o=i&65535;p=h;A=h<<15|g>>>17;q=(e^i)&-2147483648;k=e&65535;s=k;y=k;k=0;B=(o&131071)<<15|h>>>17;z=i>>>16&32767;J=e>>>16&32767;a:{b:{if(z-32767>>>0>4294934529&J-32767>>>0>=4294934530){break b}l=e&2147483647;j=d;if(!(!j&(l|0)==2147418112?!(b|c):l>>>0<2147418112)){n=d;q=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){n=h;q=i|32768;b=f;c=g;break a}if(!(b|j|(l^2147418112|c))){if(!(f|h|(e|g))){q=2147450880;b=0;c=0;break a}q=q|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){d=b|j;e=c|l;b=0;c=0;if(!(d|e)){q=2147450880;break a}q=q|2147418112;break a}if(!(b|j|(c|l))){b=0;c=0;break a}if(!(f|h|(e|g))){b=0;c=0;break a}if((l|0)==65535|l>>>0<65535){j=b;h=!(d|s);i=h<<6;l=Q(h?b:d)+32|0;b=Q(h?c:s);b=i+((b|0)==32?l:b)|0;Wa(m+80|0,j,c,d,s,b-15|0);t=16-b|0;d=H[m+88>>2];y=H[m+92>>2];c=H[m+84>>2];b=H[m+80>>2]}if(e>>>0>65535){break b}e=!(o|p);h=e<<6;i=Q(e?f:p)+32|0;e=Q(e?g:o);e=h+((e|0)==32?i:e)|0;Wa(m- -64|0,f,g,p,o,e-15|0);t=(t-e|0)+16|0;e=H[m+76>>2];i=H[m+72>>2];f=H[m+64>>2];g=H[m+68>>2];A=i<<15|g>>>17;B=(e&131071)<<15|i>>>17}e=f;p=e<<15&-32768;i=0;v=c;l=0;o=Rk(p,i,c,l);c=ea;w=c;e=c;r=(g&131071)<<15|f>>>17;c=b;f=Rk(r,0,b,0);b=f+o|0;j=ea+e|0;e=b;b=e>>>0>>0?j+1|0:j;h=0;g=Rk(c,x,p,i);f=h+g|0;j=ea+e|0;j=f>>>0>>0?j+1|0:j;g=j;C=(e|0)==(j|0)&f>>>0>>0|e>>>0>j>>>0;u=d;K=Rk(p,i,d,0);F=ea;j=Rk(v,l,r,n);d=j+K|0;h=ea+F|0;h=d>>>0>>0?h+1|0:h;L=d;s=Rk(A,0,c,x);d=d+s|0;j=ea+h|0;G=d;j=d>>>0>>0?j+1|0:j;s=j;d=j;j=(b|0)==(w|0)&e>>>0>>0|b>>>0>>0;w=b;b=b+G|0;e=d+j|0;e=b>>>0>>0?e+1|0:e;w=b;o=e;D=y|65536;y=k;M=Rk(p,i,D,k);I=ea;d=Rk(u,n,r,n);b=d+M|0;j=ea+I|0;j=b>>>0>>0?j+1|0:j;N=b;d=Rk(v,l,A,n);b=b+d|0;p=j;j=j+ea|0;j=b>>>0>>0?j+1|0:j;O=b;E=B&2147483647|-2147483648;c=Rk(E,0,c,x);b=b+c|0;x=j;j=j+ea|0;B=b;i=b>>>0>>0?j+1|0:j;c=0;b=c+w|0;e=e+B|0;e=b>>>0>>0?e+1|0:e;P=b;c=b;b=b+C|0;C=e;j=b>>>0>>0?e+1|0:e;c=j;t=((J+z|0)+t|0)-16383|0;k=Rk(u,n,A,n);d=ea;r=Rk(r,n,D,y);e=r+k|0;j=ea+d|0;j=e>>>0>>0?j+1|0:j;r=e;e=j;z=(d|0)==(e|0)&k>>>0>r>>>0|d>>>0>e>>>0;k=Rk(E,n,v,l);d=k+r|0;j=ea+e|0;j=d>>>0>>0?j+1|0:j;k=d;d=j;l=(e|0)==(j|0)&k>>>0>>0|e>>>0>j>>>0;e=z+l|0;j=0;j=e>>>0>>0?1:j;l=Rk(E,n,D,y);e=l+e|0;j=ea+j|0;j=e>>>0>>0?j+1|0:j;l=j;v=k;z=e;e=(h|0)==(F|0)&K>>>0>L>>>0|h>>>0>>0;h=(h|0)==(s|0)&G>>>0>>0|h>>>0>s>>>0;e=e+h|0;j=0;j=e>>>0>>0?1:j;k=e;h=v+e|0;e=d+j|0;e=h>>>0>>0?e+1|0:e;r=h;k=e;e=(e|0)==(d|0)&h>>>0>>0|d>>>0>e>>>0;d=z+e|0;j=l;v=d;e=d>>>0>>0?j+1|0:j;l=Rk(E,n,u,n);h=ea;u=Rk(A,n,D,y);d=u+l|0;j=ea+h|0;j=d>>>0>>0?j+1|0:j;u=d;d=j;j=(h|0)==(j|0)&l>>>0>u>>>0|h>>>0>j>>>0;l=d+v|0;e=e+j|0;e=l>>>0>>0?e+1|0:e;v=l;l=0;d=l+r|0;j=k+u|0;j=d>>>0>>0?j+1|0:j;h=j;l=(k|0)==(j|0)&d>>>0>>0|j>>>0>>0;k=v+l|0;u=k;k=k>>>0>>0?e+1|0:e;l=d;e=(p|0)==(I|0)&M>>>0>N>>>0|p>>>0>>0;p=(p|0)==(x|0)&N>>>0>O>>>0|p>>>0>x>>>0;e=e+p|0;e=e+((i|0)==(x|0)&B>>>0>>0|i>>>0>>0)|0;d=i+d|0;e=h+e|0;e=d>>>0>>0?e+1|0:e;i=(e|0)==(h|0)&d>>>0>>0|e>>>0>>0;h=i+u|0;j=k;p=h;h=h>>>0>>0?j+1|0:j;k=d;i=e;d=(o|0)==(s|0)&w>>>0>>0|o>>>0>>0;o=(o|0)==(C|0)&w>>>0>P>>>0|o>>>0>C>>>0;d=d+o|0;j=0;j=d>>>0>>0?1:j;o=d;d=k+d|0;e=e+j|0;e=d>>>0>>0?e+1|0:e;k=(e|0)==(i|0)&d>>>0>>0|e>>>0>>0;i=k+p|0;j=h;h=i;j=h>>>0>>0?j+1|0:j;i=j;c:{if(j&65536){t=t+1|0;break c}o=g>>>31|0;k=0;j=i<<1|h>>>31;h=h<<1|e>>>31;i=j;j=e<<1|d>>>31;d=d<<1|c>>>31;e=j;j=g<<1|f>>>31;f=f<<1;g=j;j=c<<1|b>>>31;b=b<<1|o;c=j|k}if((t|0)>=32767){q=q|2147418112;b=0;c=0;break a}d:{if((t|0)<=0){j=1-t|0;if(j>>>0>=128){b=0;c=0;break a}k=t+127|0;Wa(m+48|0,f,g,b,c,k);Wa(m+32|0,d,e,h,i,k);Lb(m+16|0,f,g,b,c,j);Lb(m,d,e,h,i,j);f=H[m+32>>2]|H[m+16>>2]|(H[m+48>>2]|H[m+56>>2]|(H[m+52>>2]|H[m+60>>2]))!=0;g=H[m+36>>2]|H[m+20>>2];b=H[m+40>>2]|H[m+24>>2];c=H[m+44>>2]|H[m+28>>2];d=H[m>>2];e=H[m+4>>2];i=H[m+12>>2];h=H[m+8>>2];break d}i=i&65535|t<<16}n=h|n;q=i|q;if(!(!b&(c|0)==-2147483648?!(f|g):(c|0)>0|(c|0)>=0)){b=d+1|0;h=b?e:e+1|0;c=h;f=(e|0)==(h|0)&b>>>0>>0|e>>>0>h>>>0;d=f+n|0;e=q;n=d;q=d>>>0>>0?e+1|0:e;break a}if(b|f|(c^-2147483648|g)){b=d;c=e;break a}h=q;c=d&1;b=c+d|0;j=b>>>0>>0?e+1|0:e;c=j;e=(e|0)==(j|0)&b>>>0>>0|e>>>0>j>>>0;d=e+n|0;n=d;q=d>>>0>>0?h+1|0:h}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=n;H[a+12>>2]=q;da=m+96|0}function wf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{b:{c:{d:{e:{if(H[a+92>>2]==H[a+88>>2]){break e}c=H[a+52>>2];f:{if((c|0)!=H[a+56>>2]){H[c>>2]=b;H[a+52>>2]=c+4;break f}g=H[a+48>>2];h=c-g|0;d=h>>2;e=d+1|0;if(e>>>0>=1073741824){break b}c=h>>1;f=d>>>0<536870911?c>>>0>>0?e:c:1073741823;if(f){if(f>>>0>=1073741824){break a}c=ra(f<<2)}else{c=0}e=c+(d<<2)|0;H[e>>2]=b;if((h|0)>0){sa(c,g,h)}H[a+56>>2]=c+(f<<2);H[a+52>>2]=e+4;H[a+48>>2]=c;if(!g){break f}qa(g)}H[a+84>>2]=0;e=-1;c=-1;g:{if((b|0)==-1){break g}f=H[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){e=H[H[f>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=H[H[f>>2]+(d<<2)>>2]}j=c>>>3&536870908;d=H[a+36>>2];g=d+(e>>>3&536870908)|0;h=H[g>>2];f=1<>2]=f|h;f=a+8|0;if((b|0)!=-1){d=b+1|0;d=(d>>>0)%3|0?d:b-2|0}else{d=-1}qb(f,e,d);d=H[a+36>>2]}f=d+j|0;d=H[f>>2];e=1<>2]=d|e;d=a+8|0;e=-1;i:{if((b|0)==-1){break i}e=b-1|0;if((b>>>0)%3|0){break i}e=b+2|0}qb(d,c,e)}e=-1;e=(b|0)!=-1?H[H[H[a+4>>2]>>2]+(b<<2)>>2]:e;f=H[a+36>>2]+(e>>>3&536870908)|0;d=H[f>>2];c=1<>2]=c|d;qb(a+8|0,e,b)}d=H[a+84>>2];if((d|0)>2){break e}while(1){e=N(d,12)+a|0;b=H[e+52>>2];if((b|0)==H[e+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=H[c>>2];H[e+52>>2]=c;H[a+84>>2]=d;if((b|0)==-1){break e}e=H[a+24>>2];c=(b>>>0)/3|0;j:{if(H[e+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){l=(b>>>0)/3|0;c=(l>>>3&268435452)+e|0;H[c>>2]=H[c>>2]|1<>2]>>2]+(b<<2)>>2]:e;f=H[a+36>>2]+(e>>>3&536870908)|0;d=H[f>>2];c=1<>2]=c|d;h=H[(H[H[a+16>>2]+96>>2]+N(l,12)|0)+((b>>>0)%3<<2)>>2];k=H[H[a+20>>2]+4>>2];c=H[k+4>>2];t:{if((c|0)!=H[k+8>>2]){H[c>>2]=h;H[k+4>>2]=c+4;break t}i=H[k>>2];j=c-i|0;f=j>>2;d=f+1|0;if(d>>>0>=1073741824){break s}c=j>>1;g=f>>>0<536870911?c>>>0>>0?d:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=ra(g<<2)}else{c=0}d=c+(f<<2)|0;H[d>>2]=h;if((j|0)>0){sa(c,i,j)}H[k+8>>2]=c+(g<<2);H[k+4>>2]=d+4;H[k>>2]=c;if(!i){break t}qa(i)}i=H[a+12>>2];c=H[i+4>>2];u:{if((c|0)!=H[i+8>>2]){H[c>>2]=b;H[i+4>>2]=c+4;break u}j=H[i>>2];g=c-j|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break r}c=g>>1;h=f>>>0<536870911?c>>>0>>0?d:c:1073741823;if(h){if(h>>>0>=1073741824){break a}c=ra(h<<2)}else{c=0}d=c+(f<<2)|0;H[d>>2]=b;if((g|0)>0){sa(c,j,g)}H[i+8>>2]=c+(h<<2);H[i+4>>2]=d+4;H[i>>2]=c;if(!j){break u}qa(j)}c=H[a+12>>2];H[H[c+12>>2]+(e<<2)>>2]=H[c+24>>2];H[c+24>>2]=H[c+24>>2]+1}if((b|0)==-1){break k}g=H[a+4>>2];e=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){e=H[H[g+12>>2]+(c<<2)>>2]}v:{w:{if((N(l,3)|0)!=(b|0)){f=b-1|0;break w}f=b+2|0;b=-1;if((f|0)==-1){break v}}b=H[H[g+12>>2]+(f<<2)>>2]}h=(b|0)==-1;f=(b>>>0)/3|0;d=(e>>>0)/3|0;c=(e|0)==-1;if(!c){c=c?-1:d;c=H[H[a+24>>2]+(c>>>3&536870908)>>2]&1<>2]+(c>>>3&536870908)>>2]>>>c&1){break x}f=0;c=H[H[g>>2]+(b<<2)>>2];if(!(H[H[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=H[a+88>>2]+(c<<2)|0;d=H[c>>2];H[c>>2]=d+1;f=(d|0)<=0?2:1}if(H[a+84>>2]>=(f|0)?l:0){break m}k=N(f,12)+a|0;c=H[k+52>>2];y:{if((c|0)!=H[k+56>>2]){H[c>>2]=b;H[k+52>>2]=c+4;break y}i=H[k+48>>2];j=c-i|0;h=j>>2;d=h+1|0;if(d>>>0>=1073741824){break d}c=j>>1;g=h>>>0<536870911?c>>>0>>0?d:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=ra(g<<2)}else{c=0}d=c+(h<<2)|0;H[d>>2]=b;if((j|0)>0){sa(c,i,j)}H[k+48>>2]=c;H[k+52>>2]=d+4;H[k+56>>2]=c+(g<<2);if(!i){break y}qa(i)}if(H[a+84>>2]<=(f|0)){break x}H[a+84>>2]=f}if(l){break k}b=-1;if((e|0)==-1){break n}}b=H[H[H[a+4>>2]>>2]+(e<<2)>>2]}f=0;if(!(H[H[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=H[a+88>>2]+(b<<2)|0;c=H[b>>2];H[b>>2]=c+1;f=(c|0)<=0?2:1}if(H[a+84>>2]<(f|0)){break l}b=e}e=H[a+24>>2];continue}break}i=N(f,12)+a|0;b=H[i+52>>2];z:{if((b|0)!=H[i+56>>2]){H[b>>2]=e;H[i+52>>2]=b+4;break z}j=H[i+48>>2];g=b-j|0;d=g>>2;c=d+1|0;if(c>>>0>=1073741824){break c}b=g>>1;h=d>>>0<536870911?b>>>0>>0?c:b:1073741823;if(h){if(h>>>0>=1073741824){break a}b=ra(h<<2)}else{b=0}c=b+(d<<2)|0;H[c>>2]=e;if((g|0)>0){sa(b,j,g)}H[i+48>>2]=b;H[i+52>>2]=c+4;H[i+56>>2]=b+(h<<2);if(!j){break z}qa(j)}d=H[a+84>>2];if((d|0)<=(f|0)){break j}H[a+84>>2]=f;d=f;break j}d=H[a+84>>2]}if((d|0)<3){continue}break}}return 1}ua();X()}ua();X()}ua();X()}wa(1604);X()}function ui(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=da-16|0;da=r;a:{if(!(fa[H[H[a>>2]+32>>2]](a)|0)){break a}g=H[a+44>>2];e=H[a+12>>2];d=H[a+8>>2];F[r+15|0]=e-d>>>2;b=H[g+20>>2];if(!H[g+16>>2]&(b|0)<=0|(b|0)<0){va(g,H[g+4>>2],r+15|0,r+16|0);d=H[a+8>>2];e=H[a+12>>2]}if((e|0)!=(d|0)){while(1){b=H[d>>2];if(!(fa[H[H[b>>2]+8>>2]](b,a,H[a+4>>2])|0)){break a}d=d+4|0;if((d|0)!=(e|0)){continue}break}}f=da-48|0;da=f;s=a+32|0;e=H[a+12>>2];h=H[a+8>>2];j=e-h|0;b=j>>2;g=H[a+32>>2];d=H[a+36>>2]-g>>2;b:{if(b>>>0>d>>>0){Ha(s,b-d|0);e=H[a+12>>2];h=H[a+8>>2];j=e-h|0;b=j>>2;break b}if(b>>>0>=d>>>0){break b}H[a+36>>2]=g+(b<<2)}H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;c:{d:{e:{if(!j){break e}if((j|0)<0){break d}d=b-1>>>5|0;g=d+1|0;m=ra(g<<2);H[f+40>>2]=g;H[f+32>>2]=m;H[f+36>>2]=b;H[m+((b>>>0<33?0:d)<<2)>>2]=0;d=m;m=b>>>5<<2;d=ta(d,0,m);g=b&31;if(!g){break e}b=d+m|0;H[b>>2]=H[b>>2]&(-1>>>32-g^-1)}while(1){f:{g:{b=e-h|0;if(b>>2>>>0>p>>>0){if(!b){q=0;b=0;break g}m=H[f+32>>2];q=0;l=0;while(1){k=m+(l>>>3&536870908)|0;e=H[k>>2];d=1<>2];b=H[j+4>>2];if((b|0)!=H[j+8>>2]){e=0;n=1;g=H[f+32>>2];while(1){h=0;o=H[(e<<2)+b>>2];i:{if((fa[H[H[j>>2]+24>>2]](j,o)|0)<=0){break i}while(1){j:{b=H[i+H[a+8>>2]>>2];b=fa[H[H[b>>2]+28>>2]](b,o,h)|0;if((b|0)==(l|0)){break j}b=H[H[a+20>>2]+(b<<2)>>2];if(H[g+(b>>>3&536870908)>>2]>>>b&1){break j}n=0;break i}b=H[i+H[a+8>>2]>>2];h=h+1|0;if((fa[H[H[b>>2]+24>>2]](b,o)|0)>(h|0)){continue}break}}h=H[a+8>>2];j=H[i+h>>2];b=H[j+4>>2];e=e+1|0;if(e>>>0>2]-b>>2>>>0){continue}break}if(!n){break h}e=H[k>>2]}H[H[s>>2]+(p<<2)>>2]=l;H[k>>2]=e|d;q=1;p=p+1|0}e=H[a+12>>2];b=e-h>>2;l=l+1|0;if(b>>>0>l>>>0){continue}break}break g}q=0;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[a+4>>2];b=H[c+12>>2];c=H[c+8>>2];H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;l=0;k:{l:{m:{c=b-c|0;n:{if(!c){break n}if((c|0)<0){break m}d=c>>2;b=d-1>>>5|0;c=b+1|0;l=ra(c<<2);H[f+8>>2]=c;H[f>>2]=l;H[f+4>>2]=d;H[((d>>>0<33?0:b)<<2)+l>>2]=0;g=d>>>5<<2;c=ta(l,0,g);b=d&31;if(!b){break n}c=c+g|0;H[c>>2]=H[c>>2]&(-1>>>32-b^-1)}o:{if((e|0)==(h|0)){c=1;break o}while(1){n=H[H[s>>2]+(q<<2)>>2]<<2;c=H[n+h>>2];c=H[c+8>>2]-H[c+4>>2]|0;p:{if((c|0)<8){break p}k=c>>2;c=H[f+16>>2];b=H[f+20>>2]-c>>2;q:{if(k>>>0>b>>>0){Ha(f+16|0,k-b|0);break q}if(b>>>0<=k>>>0){break q}H[f+20>>2]=c+(k<<2)}m=(k|0)>1?k:1;p=0;r:{while(1){if((k|0)<=(p|0)){break r}e=0;c=0;while(1){g=1<>>5<<2;s:{if(g&H[d+l>>2]){break s}b=H[n+H[a+8>>2]>>2];o=H[H[b+4>>2]+(e<<2)>>2];if((fa[H[H[b>>2]+24>>2]](b,o)|0)>0){h=0;l=H[f>>2];while(1){b=H[n+H[a+8>>2]>>2];b=fa[H[H[b>>2]+28>>2]](b,o,h)|0;if(!(H[(b>>>3&536870908)+l>>2]>>>b&1)){break s}b=H[n+H[a+8>>2]>>2];h=h+1|0;if((fa[H[H[b>>2]+24>>2]](b,o)|0)>(h|0)){continue}break}}H[H[f+16>>2]+(p<<2)>>2]=e;c=d+l|0;H[c>>2]=g|H[c>>2];c=1;p=p+1|0}e=e+1|0;if((m|0)!=(e|0)){continue}break}if((k|0)<=(p|0)|c){continue}break}c=0;break o}h=H[a+8>>2];i=H[n+h>>2];e=H[i+4>>2];H[i+8>>2]=e;H[i+20>>2]=H[i+16>>2];j=H[f+16>>2];g=H[f+20>>2];if((j|0)==(g|0)){break p}m=i+16|0;b=e;while(1){k=H[j>>2];t:{if(H[i+12>>2]!=(b|0)){H[b>>2]=k;H[i+8>>2]=b+4;break t}n=b-e|0;d=n>>2;b=d+1|0;if(b>>>0>=1073741824){break l}c=n>>1;o=d>>>0<536870911?b>>>0>c>>>0?b:c:1073741823;if(o){if(o>>>0>=1073741824){break k}c=ra(o<<2)}else{c=0}b=c+(d<<2)|0;H[b>>2]=k;if((n|0)>0){sa(c,e,n)}H[i+12>>2]=c+(o<<2);H[i+8>>2]=b+4;H[i+4>>2]=c;if(!e){break t}qa(e)}b=H[i+16>>2];e=H[i+20>>2]-b>>2;u:{if((e|0)>(k|0)){break u}H[f+44>>2]=-1;c=k+1|0;if(c>>>0>e>>>0){Na(m,c-e|0,f+44|0);b=H[m>>2];break u}if(c>>>0>=e>>>0){break u}H[i+20>>2]=(c<<2)+b}c=(k<<2)+b|0;b=H[i+8>>2];e=H[i+4>>2];H[c>>2]=(b-e>>2)-1;j=j+4|0;if((g|0)!=(j|0)){continue}break}h=H[a+8>>2]}c=1;q=q+1|0;if(q>>>0>2]-h>>2>>>0){continue}break}}b=H[f>>2];if(b){qa(b)}b=H[f+16>>2];if(!b){break f}H[f+20>>2]=b;qa(b);break f}ua();X()}ua();X()}wa(1604);X()}if(q&1|b>>>0<=p>>>0){continue}}break}b=H[f+32>>2];if(b){qa(b)}da=f+48|0;break c}ua();X()}if(!c){break a}d=H[a+32>>2];c=H[a+36>>2];v:{if((d|0)==(c|0)){break v}while(1){if(!(fa[H[H[a>>2]+40>>2]](a,H[d>>2])|0)){break a}d=d+4|0;if((c|0)!=(d|0)){continue}break}d=H[a+32>>2];b=H[a+36>>2];if((d|0)==(b|0)){break v}while(1){c=H[H[a+8>>2]+(H[d>>2]<<2)>>2];if(!(fa[H[H[c>>2]+12>>2]](c,H[a+44>>2])|0)){break a}d=d+4|0;if((b|0)!=(d|0)){continue}break}}t=fa[H[H[a>>2]+44>>2]](a)|0}da=r+16|0;return t|0}function zi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;i=da-16|0;da=i;c=H[b+56>>2];j=H[c+100>>2]-H[c+96>>2]|0;k=(j|0)/12|0;Fa(k,H[b+44>>2]);Fa(H[H[b+56>>2]+80>>2],H[b+44>>2]);g=H[b+48>>2];c=ra(32);H[i>>2]=c;H[i+4>>2]=21;H[i+8>>2]=-2147483616;F[c+21|0]=0;d=I[1261]|I[1262]<<8|(I[1263]<<16|I[1264]<<24);e=I[1257]|I[1258]<<8|(I[1259]<<16|I[1260]<<24);F[c+13|0]=e;F[c+14|0]=e>>>8;F[c+15|0]=e>>>16;F[c+16|0]=e>>>24;F[c+17|0]=d;F[c+18|0]=d>>>8;F[c+19|0]=d>>>16;F[c+20|0]=d>>>24;d=I[1256]|I[1257]<<8|(I[1258]<<16|I[1259]<<24);e=I[1252]|I[1253]<<8|(I[1254]<<16|I[1255]<<24);F[c+8|0]=e;F[c+9|0]=e>>>8;F[c+10|0]=e>>>16;F[c+11|0]=e>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1248]|I[1249]<<8|(I[1250]<<16|I[1251]<<24);e=I[1244]|I[1245]<<8|(I[1246]<<16|I[1247]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;c=Qb(g,i,0);if(F[i+11|0]<0){qa(H[i>>2])}g=H[b+44>>2];a:{if(c){F[i|0]=0;c=H[g+20>>2];if(!H[g+16>>2]&(c|0)<=0|(c|0)<0){va(g,H[g+4>>2],i,i+1|0)}c=0;l=da-16|0;da=l;H[l>>2]=0;H[l+4>>2]=0;g=b;b=H[b+56>>2];e=H[b+96>>2];b=H[b+100>>2]-e|0;if(b){b=(b|0)/12|0;n=b>>>0>1?b:1;b=H[l>>2];b:{c:{while(1){d:{o=N(p,12)+e|0;j=H[o>>2];d=j-f|0;e=d>>31;k=(e^d+e)<<1|d>>>31;e:{if((h|0)!=(m|0)){H[h>>2]=k;h=h+4|0;H[l+4>>2]=h;break e}m=h-c|0;f=m>>2;d=f+1|0;if(d>>>0>=1073741824){break d}e=m>>1;d=f>>>0<536870911?d>>>0>e>>>0?d:e:1073741823;if(d){if(d>>>0>=1073741824){break c}b=ra(d<<2)}else{b=0}e=b+(f<<2)|0;H[e>>2]=k;h=e+4|0;if((m|0)>0){sa(b,c,m)}m=(d<<2)+b|0;H[l+4>>2]=h;if(c){qa(c)}c=b}d=H[o+4>>2];f=d-j|0;e=f>>31;k=(e^e+f)<<1|f>>>31;f:{if((h|0)!=(m|0)){H[h>>2]=k;h=h+4|0;H[l+4>>2]=h;break f}m=h-c|0;j=m>>2;f=j+1|0;if(f>>>0>1073741823){break d}e=m>>1;f=j>>>0<536870911?e>>>0>>0?f:e:1073741823;if(f){if(f>>>0>1073741823){break c}b=ra(f<<2)}else{b=0}e=b+(j<<2)|0;H[e>>2]=k;h=e+4|0;if((m|0)>0){sa(b,c,m)}m=(f<<2)+b|0;H[l+4>>2]=h;if(c){qa(c)}c=b}f=H[o+8>>2];d=f-d|0;e=d>>31;k=(e^d+e)<<1|d>>>31;g:{if((h|0)!=(m|0)){H[h>>2]=k;h=h+4|0;H[l+4>>2]=h;break g}o=h-c|0;j=o>>2;d=j+1|0;if(d>>>0>1073741823){break d}e=o>>1;d=j>>>0<536870911?d>>>0>e>>>0?d:e:1073741823;if(d){if(d>>>0>1073741823){break c}b=ra(d<<2)}else{b=0}e=b+(j<<2)|0;H[e>>2]=k;h=e+4|0;if((o|0)>0){sa(b,c,o)}m=(d<<2)+b|0;H[l+4>>2]=h;if(c){qa(c)}c=b}p=p+1|0;if((n|0)==(p|0)){break b}e=H[H[g+56>>2]+96>>2];continue}break}H[l+8>>2]=h;H[l>>2]=b;ua();X()}H[l>>2]=b;wa(1604);X()}H[l>>2]=b}Gd(c,h-c>>2,1,0,H[g+44>>2]);if(c){qa(c)}da=l+16|0;break a}F[i|0]=1;c=H[g+20>>2];if(!H[g+16>>2]&(c|0)<=0|(c|0)<0){va(g,H[g+4>>2],i,i+1|0)}f=H[b+56>>2];c=H[f+80>>2];if(c>>>0<=255){if(!j){break a}n=i+1|0;e=k>>>0>1?k:1;c=0;while(1){d=H[b+44>>2];j=H[f+96>>2]+N(c,12)|0;F[i|0]=H[j>>2];g=H[d+20>>2];h:{if(!!H[d+16>>2]&(g|0)>=0|(g|0)>0){break h}va(d,H[d+4>>2],i,n);f=H[b+44>>2];d=H[f+20>>2];g=H[f+16>>2];F[i|0]=H[j+4>>2];if(!!g&(d|0)>=0|(d|0)>0){break h}va(f,H[f+4>>2],i,n);f=H[b+44>>2];g=H[f+16>>2];d=H[f+20>>2];F[i|0]=H[j+8>>2];if(!!g&(d|0)>=0|(d|0)>0){break h}va(f,H[f+4>>2],i,n)}c=c+1|0;if((e|0)==(c|0)){break a}f=H[b+56>>2];continue}}if(c>>>0<=65535){if(!j){break a}n=i+2|0;e=k>>>0>1?k:1;c=0;while(1){d=H[b+44>>2];j=H[f+96>>2]+N(c,12)|0;G[i>>1]=H[j>>2];g=H[d+20>>2];i:{if(!!H[d+16>>2]&(g|0)>=0|(g|0)>0){break i}va(d,H[d+4>>2],i,n);f=H[b+44>>2];d=H[f+20>>2];g=H[f+16>>2];G[i>>1]=H[j+4>>2];if(!!g&(d|0)>=0|(d|0)>0){break i}va(f,H[f+4>>2],i,n);f=H[b+44>>2];g=H[f+16>>2];d=H[f+20>>2];G[i>>1]=H[j+8>>2];if(!!g&(d|0)>=0|(d|0)>0){break i}va(f,H[f+4>>2],i,n)}c=c+1|0;if((e|0)==(c|0)){break a}f=H[b+56>>2];continue}}if(c>>>0>=2097152){if(!j){break a}h=H[b+44>>2];c=h;g=H[c+20>>2];d=H[c+16>>2];if(!!d&(g|0)>=0|(g|0)>0){break a}e=k>>>0>1?k:1;c=0;while(1){if(!d&(g|0)<=0|(g|0)<0){g=H[f+96>>2]+N(c,12)|0;va(h,H[h+4>>2],g,g+12|0)}c=c+1|0;if((e|0)==(c|0)){break a}f=H[b+56>>2];h=H[b+44>>2];d=H[h+16>>2];g=H[h+20>>2];continue}}if(!j){break a}g=k>>>0>1?k:1;c=0;while(1){e=H[f+96>>2]+N(c,12)|0;Fa(H[e>>2],H[b+44>>2]);Fa(H[e+4>>2],H[b+44>>2]);Fa(H[e+8>>2],H[b+44>>2]);c=c+1|0;if((g|0)==(c|0)){break a}f=H[b+56>>2];continue}}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=i+16|0}function mb(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0;a:{if(!d){break a}b:{c:{switch(H[a+28>>2]-1|0){case 0:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=F[b|0];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 1:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=I[b|0];H[e+4>>2]=0;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 2:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=G[b>>1];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 3:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=J[b>>1];H[e+4>>2]=0;b=b+2|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 4:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=H[b>>2];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 5:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=H[b>>2];H[e+4>>2]=0;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 6:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=H[b+4>>2];e=(f<<3)+d|0;H[e>>2]=H[b>>2];H[e+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 7:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=H[b>>2];g=H[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;H[k>>2]=e;H[k+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 8:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;k=H[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;i=L[b>>2];d:{if(O(P(i))=O(1)?~~(i>O(0)?O(R(O(T(O(i*O(2.3283064365386963e-10)))),O(4294967296))):O(U(O(O(i-O(~~i>>>0>>>0))*O(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}H[e>>2]=h;H[e+4>>2]=g;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 9:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;k=H[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;j=M[b>>3];e:{if(P(j)<0x8000000000000000){g=P(j)>=1?~~(j>0?R(T(j*2.3283064365386963e-10),4294967295):U((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}H[e>>2]=h;H[e+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=I[b|0];H[e+4>>2]=0;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break a}}ta((e<<3)+d|0,0,c-e<<3)}}function Bc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=da-96|0;da=f;e=H[a+16>>2];F[f+92|0]=1;H[f+88>>2]=b;H[f+84>>2]=b;H[f+80>>2]=e;m=H[a+20>>2];d=H[m>>2];a:{b:{e=H[H[e+28>>2]+(b<<2)>>2];if(e>>>0>2]-d>>2>>>0){d=H[H[a+8>>2]+(H[d+(e<<2)>>2]<<2)>>2];e=H[a+4>>2];if(!I[e+84|0]){d=H[H[e+68>>2]+(d<<2)>>2]}H[f+72>>2]=0;H[f+76>>2]=0;m=f- -64|0;H[m>>2]=0;H[m+4>>2]=0;H[f+56>>2]=0;H[f+60>>2]=0;mb(e,d,F[e+24|0],f+56|0);e=b+1|0;d=(e>>>0)%3|0;if(b>>>0<=e>>>0){m=d?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;while(1){d=m;e=h;c:{if(!H[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}k=H[a+20>>2];b=H[k>>2];d=H[H[H[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=H[k+4>>2]-b>>2>>>0){break b}d=H[H[a+8>>2]+(H[b+(d<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){d=H[H[b+68>>2]+(d<<2)>>2]}H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;mb(b,d,F[b+24|0],f+32|0);d=H[a+20>>2];b=H[d>>2];e=H[H[H[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=H[d+4>>2]-b>>2>>>0){break a}d=H[H[a+8>>2]+(H[b+(e<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){d=H[H[b+68>>2]+(d<<2)>>2]}H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;mb(b,d,F[b+24|0],f+8|0);e=H[f+8>>2];b=H[f+56>>2];d=e-b|0;k=H[f+60>>2];n=H[f+12>>2]-(k+(b>>>0>e>>>0)|0)|0;i=H[f+40>>2];e=H[f+64>>2];s=i-e|0;t=H[f+68>>2];i=H[f+44>>2]-(t+(e>>>0>i>>>0)|0)|0;u=Rk(d,n,s,i);v=j-u|0;g=g-(ea+(j>>>0>>0)|0)|0;w=v;j=H[f+16>>2];u=j-e|0;t=H[f+20>>2]-((e>>>0>j>>>0)+t|0)|0;j=H[f+32>>2];v=j-b|0;k=H[f+36>>2]-((b>>>0>j>>>0)+k|0)|0;e=Rk(u,t,v,k);j=w+e|0;b=ea+g|0;b=e>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=H[f+48>>2];e=H[f+72>>2];n=b-e|0;o=H[f+76>>2];x=H[f+52>>2]-(o+(b>>>0>>0)|0)|0;p=Rk(d,p,n,x);d=w+p|0;b=ea+l|0;b=d>>>0

>>0?b+1|0:b;l=H[f+24>>2];p=l-e|0;e=H[f+28>>2]-((e>>>0>l>>>0)+o|0)|0;l=Rk(p,e,v,k);o=d-l|0;l=b-(ea+(d>>>0>>0)|0)|0;b=Rk(u,t,n,x);d=q-b|0;b=r-(ea+(b>>>0>q>>>0)|0)|0;r=Rk(p,e,s,i);q=r+d|0;b=ea+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=H[f+88>>2];e=H[f+80>>2];d:{if(I[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}H[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;H[f+88>>2]=b;if((b|0)!=-1){break e}}b=H[f+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}F[f+92|0]=0;H[f+88>>2]=d;break d}if((b|0)!=H[f+84>>2]){break d}H[f+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}H[f+88>>2]=d}b=H[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;d=b+q|0;e=b;b=b+r|0;k=d^e;h=e^(d>>>0>>0?b+1|0:b);n=-1;d=2147483647;b=l>>31;i=b;e=b+o|0;b=b+l|0;b=e>>>0>>0?b+1|0:b;e=e^i;b=b^i;i=b;s=e^-1;b=b^2147483647;m=g;m:{n:{if(!H[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break m}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=a;a=b;b=g>>31;d=b+j|0;h=g;g=b;b=h+b|0;b=d>>>0>>0?b+1|0:b;h=d^g;d=h+e|0;g=b^g;b=d;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break o}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(e|0)&(g^-1)>>>0>>0|e>>>0>h>>>0){break o}b=b+e|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;d=b;if(!b&a>>>0<536870913){break m}}b=d>>>29|0;a=(d&536870911)<<3|n>>>29}j=Sk(j,m,a,b);o=Sk(o,l,a,b);q=Sk(q,r,a,b)}H[c+8>>2]=j;H[c+4>>2]=o;H[c>>2]=q;da=f+96|0;return}xa();X()}xa();X()}xa();X()}function sh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0);d=1;a:{if(!H[a+80>>2]){break a}b=H[a+8>>2];if((H[a+12>>2]-b|0)<=0){break a}while(1){c=H[(o<<2)+b>>2];g=0;n=0;h=0;d=0;b=-1;b:{c:{d:{e:{switch(H[c+28>>2]-1|0){case 8:f:{switch(F[c+24|0]-1|0){case 0:e=da+-64|0;da=e;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+48>>2]=1065353216;b=H[c+80>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g:{h:{i:{if(!b){break i}if(b>>>0>=1073741824){break h}f=b<<2;j=ra(f);H[e+16>>2]=j;b=f+j|0;H[e+24>>2]=b;ta(j,0,f);H[e+20>>2]=b;while(1){b=H[H[c>>2]>>2];f=H[c+48>>2]+Rk(H[c+40>>2],H[c+44>>2],h,0)|0;b=b+f|0;p=(x(2,I[b|0]|I[b+1|0]<<8|(I[b+2|0]<<16|I[b+3|0]<<24)),C());L[e+28>>2]=p;j:{k:{l:{if(!g){break l}i=H[e+32>>2];m=(B(p),v(2));k=m^318;f=Uk(g)>>>0>1;b=k&g-1;m:{if(!f){break m}b=k;if(b>>>0>>0){break m}b=(k>>>0)%(g>>>0)|0}l=b;b=H[i+(l<<2)>>2];if(!b){break l}b=H[b>>2];if(!b){break l}if(!f){i=g-1|0;while(1){f=H[b+4>>2];n:{if((f|0)!=(k|0)){if((l|0)==(f&i)){break n}break l}if((m|0)==H[b+8>>2]){break k}}b=H[b>>2];if(b){continue}break}break l}while(1){f=H[b+4>>2];o:{if((f|0)!=(k|0)){if(g>>>0<=f>>>0){f=(f>>>0)%(g>>>0)|0}if((f|0)==(l|0)){break o}break l}if((m|0)==H[b+8>>2]){break k}}b=H[b>>2];if(b){continue}break}}H[e+12>>2]=n;L[e+8>>2]=p;b=e+8|0;Fe(e+56|0,e+32|0,b,b);b=H[c+40>>2];sa(H[H[c>>2]>>2]+N(b,n)|0,e+28|0,b);j=H[e+16>>2];H[j+(h<<2)>>2]=n;n=n+1|0;break j}H[(h<<2)+j>>2]=H[b+12>>2]}b=h+1|0;d=b?d:d+1|0;h=b;b=H[c+80>>2];if(!d&b>>>0>h>>>0){g=H[e+36>>2];continue}break}if((b|0)==(n|0)){break i}p:{if(!I[c+84|0]){m=H[c+68>>2];b=H[c+72>>2]-m|0;if(!b){break p}i=H[e+16>>2];b=b>>2;d=b>>>0>1?b:1;l=d&3;j=0;b=0;if(d-1>>>0>=3){f=d&-4;k=0;while(1){h=b<<2;d=h+m|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|4)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|8)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|12)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}if(!l){break p}while(1){d=m+(b<<2)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];b=b+1|0;j=j+1|0;if((l|0)!=(j|0)){continue}break}break p}F[c+84|0]=0;g=H[c+68>>2];d=H[c+72>>2]-g>>2;q:{if(d>>>0>>0){Na(c+68|0,b-d|0,2204);g=H[c+68>>2];b=H[c+80>>2];break q}if(b>>>0>=d>>>0){break q}H[c+72>>2]=(b<<2)+g}if(!b){break p}h=H[e+16>>2];j=0;i=0;if(b-1>>>0>=3){f=b&-4;k=0;while(1){l=i<<2;H[l+g>>2]=H[h+l>>2];d=l|4;H[d+g>>2]=H[d+h>>2];d=l|8;H[d+g>>2]=H[d+h>>2];d=l|12;H[d+g>>2]=H[d+h>>2];i=i+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=b&3;if(!d){break p}while(1){b=i<<2;H[b+g>>2]=H[b+h>>2];i=i+1|0;j=j+1|0;if((d|0)!=(j|0)){continue}break}}H[c+80>>2]=n}b=H[e+16>>2];if(b){qa(b)}b=H[e+40>>2];if(b){while(1){d=H[b>>2];qa(b);b=d;if(b){continue}break}}b=H[e+32>>2];H[e+32>>2]=0;if(b){qa(b)}da=e- -64|0;b=n;break g}ua();X()}break d;case 1:b=kd(c,c);break d;case 2:b=id(c,c);break d;case 3:break f;default:break c}}b=hd(c,c);break d;case 0:r:{switch(F[c+24|0]-1|0){case 0:b=lf(c,c);break d;case 1:b=gf(c,c);break d;case 2:b=ef(c,c);break d;case 3:break r;default:break c}}b=bf(c,c);break d;case 1:case 10:s:{switch(F[c+24|0]-1|0){case 0:b=lf(c,c);break d;case 1:b=gf(c,c);break d;case 2:b=ef(c,c);break d;case 3:break s;default:break c}}b=bf(c,c);break d;case 3:t:{switch(F[c+24|0]-1|0){case 0:b=Ye(c,c);break d;case 1:b=Xe(c,c);break d;case 2:b=Ve(c,c);break d;case 3:break t;default:break c}}b=Pe(c,c);break d;case 2:u:{switch(F[c+24|0]-1|0){case 0:b=Ye(c,c);break d;case 1:b=Xe(c,c);break d;case 2:b=Ve(c,c);break d;case 3:break u;default:break c}}b=Pe(c,c);break d;case 5:v:{switch(F[c+24|0]-1|0){case 0:b=Le(c,c);break d;case 1:b=kd(c,c);break d;case 2:b=id(c,c);break d;case 3:break v;default:break c}}b=hd(c,c);break d;case 4:break e;default:break b}}w:{switch(F[c+24|0]-1|0){case 0:b=Le(c,c);break d;case 1:b=kd(c,c);break d;case 2:b=id(c,c);break d;case 3:break w;default:break c}}b=hd(c,c)}if(b){break b}}b=-1}d=b;if(b){o=o+1|0;b=H[a+8>>2];if((o|0)>2]-b>>2){continue}}break}d=(d|0)!=0}return d|0}function zc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=da-96|0;da=e;d=H[a+16>>2];F[e+92|0]=1;H[e+88>>2]=b;H[e+84>>2]=b;H[e+80>>2]=d;a:{if((b|0)==-1){break a}m=H[a+20>>2];f=H[m>>2];d=H[H[d>>2]+(b<<2)>>2];if(d>>>0>=H[m+4>>2]-f>>2>>>0){break a}f=H[H[a+8>>2]+(H[f+(d<<2)>>2]<<2)>>2];d=H[a+4>>2];if(!I[d+84|0]){f=H[H[d+68>>2]+(f<<2)>>2]}H[e+72>>2]=0;H[e+76>>2]=0;m=e- -64|0;H[m>>2]=0;H[m+4>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;mb(d,f,F[d+24|0],e+56|0);d=b+1|0;m=(d>>>0)%3|0?d:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){f=m;d=h;d:{if(!H[a+28>>2]){break d}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((f|0)==-1){break b}k=H[a+20>>2];b=H[k>>2];f=H[H[H[a+16>>2]>>2]+(f<<2)>>2];if(f>>>0>=H[k+4>>2]-b>>2>>>0){break b}f=H[H[a+8>>2]+(H[b+(f<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;mb(b,f,F[b+24|0],e+32|0);if((d|0)==-1){break c}f=H[a+20>>2];b=H[f>>2];d=H[H[H[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=H[f+4>>2]-b>>2>>>0){break c}f=H[H[a+8>>2]+(H[b+(d<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}H[e+24>>2]=0;H[e+28>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;mb(b,f,F[b+24|0],e+8|0);d=H[e+8>>2];b=H[e+56>>2];f=d-b|0;k=H[e+60>>2];n=H[e+12>>2]-(k+(b>>>0>d>>>0)|0)|0;i=H[e+40>>2];d=H[e+64>>2];s=i-d|0;t=H[e+68>>2];i=H[e+44>>2]-(t+(d>>>0>i>>>0)|0)|0;u=Rk(f,n,s,i);v=j-u|0;g=g-(ea+(j>>>0>>0)|0)|0;w=v;j=H[e+16>>2];u=j-d|0;t=H[e+20>>2]-((d>>>0>j>>>0)+t|0)|0;j=H[e+32>>2];v=j-b|0;k=H[e+36>>2]-((b>>>0>j>>>0)+k|0)|0;d=Rk(u,t,v,k);j=w+d|0;b=ea+g|0;b=d>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=H[e+48>>2];d=H[e+72>>2];n=b-d|0;o=H[e+76>>2];x=H[e+52>>2]-(o+(b>>>0>>0)|0)|0;p=Rk(f,p,n,x);f=w+p|0;b=ea+l|0;b=f>>>0

>>0?b+1|0:b;l=H[e+24>>2];p=l-d|0;d=H[e+28>>2]-((d>>>0>l>>>0)+o|0)|0;l=Rk(p,d,v,k);o=f-l|0;l=b-(ea+(f>>>0>>0)|0)|0;b=Rk(u,t,n,x);f=q-b|0;b=r-(ea+(b>>>0>q>>>0)|0)|0;r=Rk(p,d,s,i);q=r+f|0;b=ea+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=H[e+88>>2];f=H[e+80>>2];e:{if(I[e+92|0]){f:{g:{h:{i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break i}b=H[H[f+12>>2]+(b<<2)>>2];if((b|0)!=-1){break h}}H[e+88>>2]=-1;break g}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;H[e+88>>2]=b;if((b|0)!=-1){break f}}b=H[e+84>>2];d=-1;j:{if((b|0)==-1){break j}k:{if((b>>>0)%3|0){b=b-1|0;break k}b=b+2|0;d=-1;if((b|0)==-1){break j}}b=H[H[f+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break j}d=b-1|0;if((b>>>0)%3|0){break j}d=b+2|0}F[e+92|0]=0;H[e+88>>2]=d;break e}if((b|0)!=H[e+84>>2]){break e}H[e+88>>2]=-1;break e}d=-1;l:{if((b|0)==-1){break l}m:{if((b>>>0)%3|0){b=b-1|0;break m}b=b+2|0;d=-1;if((b|0)==-1){break l}}b=H[H[f+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break l}d=b-1|0;if((b>>>0)%3|0){break l}d=b+2|0}H[e+88>>2]=d}b=H[e+88>>2];if((b|0)!=-1){continue}break}b=r>>31;f=b+q|0;d=b;b=b+r|0;k=f^d;h=d^(f>>>0>>0?b+1|0:b);n=-1;f=2147483647;b=l>>31;i=b;d=b+o|0;b=b+l|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^i;i=b;s=d^-1;b=b^2147483647;m=g;n:{o:{if(!H[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break n}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=a;a=b;b=g>>31;f=b+j|0;h=g;g=b;b=h+b|0;b=f>>>0>>0?b+1|0:b;h=f^g;f=h+d|0;g=b^g;b=f;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;d=!(a&0);a=a?-1:b;if(d&(a|0)<=536870912|(a|0)<536870912){break n}b=0;a=a>>>29|0;break o}p:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break p}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(d|0)&(g^-1)>>>0>>0|d>>>0>h>>>0){break p}b=b+d|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;f=b;if(!b&a>>>0<536870913){break n}}b=f>>>29|0;a=(f&536870911)<<3|n>>>29}j=Sk(j,m,a,b);o=Sk(o,l,a,b);q=Sk(q,r,a,b)}H[c+8>>2]=j;H[c+4>>2]=o;H[c>>2]=q;da=e+96|0;return}xa();X()}xa();X()}xa();X()}function _j(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=da-48|0;da=b;g=H[H[a+4>>2]+48>>2];H[b+8>>2]=H[a+12>>2];d=ra(32);H[b+24>>2]=d;H[b+28>>2]=17;H[b+32>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[1373];e=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);f=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);f=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=yc(g,b+8|0,b+24|0,-1);if(F[b+35|0]<0){qa(H[b+24>>2])}H[b+32>>2]=-1;H[b+36>>2]=1065353216;H[b+24>>2]=-1;H[b+28>>2]=-1;H[b+40>>2]=-1;d=-1<>>0<4294967267){break a}H[b+24>>2]=d+1;d=-2<>2]=d^-1;d=-2-d|0;H[b+32>>2]=d;H[b+40>>2]=(d|0)/2;L[b+36>>2]=O(2)/O(d|0)}g=jg(H[a+12>>2],H[a+4>>2]);h=H[H[a+4>>2]+48>>2];H[b+20>>2]=H[a+12>>2];d=ra(32);H[b+8>>2]=d;H[b+12>>2]=17;H[b+16>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[1688];e=I[1684]|I[1685]<<8|(I[1686]<<16|I[1687]<<24);f=I[1680]|I[1681]<<8|(I[1682]<<16|I[1683]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1676]|I[1677]<<8|(I[1678]<<16|I[1679]<<24);f=I[1672]|I[1673]<<8|(I[1674]<<16|I[1675]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=yc(h,b+20|0,b+8|0,g);if(F[b+19|0]<0){qa(H[b+8>>2])}b:{c:{switch(d|0){case 6:e=H[a+4>>2];g=H[a+12>>2];j=H[H[H[e+4>>2]+8>>2]+(g<<2)>>2];if((fa[H[H[e>>2]+8>>2]](e)|0)==1){a=b+24|0;d=da-32|0;da=d;h=H[H[H[e+4>>2]+8>>2]+(g<<2)>>2];d:{if((fa[H[H[e>>2]+8>>2]](e)|0)!=1){break d}i=fa[H[H[e>>2]+52>>2]](e)|0;f=fa[H[H[e>>2]+60>>2]](e,g)|0;if(!i|!f){break d}c=fa[H[H[e>>2]+56>>2]](e,g)|0;if(c){e=H[e+56>>2];H[d+20>>2]=c;H[d+16>>2]=e;H[d+28>>2]=f;H[d+24>>2]=f+12;c=ra(128);H[c+4>>2]=h;e=H[a+4>>2];H[c+8>>2]=H[a>>2];H[c+12>>2]=e;e=H[a+12>>2];H[c+16>>2]=H[a+8>>2];H[c+20>>2]=e;H[c+24>>2]=H[a+16>>2];a=H[d+20>>2];H[c+28>>2]=H[d+16>>2];H[c+32>>2]=a;a=H[d+28>>2];H[c+36>>2]=H[d+24>>2];H[c+40>>2]=a;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=7552;a=H[d+20>>2];H[c+56>>2]=H[d+16>>2];H[c+60>>2]=a;e=H[d+28>>2];a=c- -64|0;H[a>>2]=H[d+24>>2];H[a+4>>2]=e;H[c+88>>2]=1065353216;H[c+92>>2]=-1;H[c+80>>2]=-1;H[c+84>>2]=-1;H[c+72>>2]=1;H[c+76>>2]=-1;H[c+44>>2]=7812;H[c+96>>2]=0;H[c+100>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;break d}c=H[e+56>>2];H[d+20>>2]=i;H[d+16>>2]=c;H[d+28>>2]=f;H[d+24>>2]=f+12;c=ra(128);H[c+4>>2]=h;e=H[a+4>>2];H[c+8>>2]=H[a>>2];H[c+12>>2]=e;e=H[a+12>>2];H[c+16>>2]=H[a+8>>2];H[c+20>>2]=e;H[c+24>>2]=H[a+16>>2];a=H[d+20>>2];H[c+28>>2]=H[d+16>>2];H[c+32>>2]=a;a=H[d+28>>2];H[c+36>>2]=H[d+24>>2];H[c+40>>2]=a;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=9176;a=H[d+20>>2];H[c+56>>2]=H[d+16>>2];H[c+60>>2]=a;e=H[d+28>>2];a=c- -64|0;H[a>>2]=H[d+24>>2];H[a+4>>2]=e;H[c+88>>2]=1065353216;H[c+92>>2]=-1;H[c+80>>2]=-1;H[c+84>>2]=-1;H[c+72>>2]=1;H[c+76>>2]=-1;H[c+44>>2]=9420;H[c+96>>2]=0;H[c+100>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0}da=d+32|0;if(c){break b}}c=ra(28);H[c+4>>2]=j;a=H[b+28>>2];H[c+8>>2]=H[b+24>>2];H[c+12>>2]=a;a=H[b+36>>2];H[c+16>>2]=H[b+32>>2];H[c+20>>2]=a;H[c+24>>2]=H[b+40>>2];H[c>>2]=9832;break b;case 0:break c;default:break b}}c=H[a+4>>2];a=H[H[H[c+4>>2]+8>>2]+(H[a+12>>2]<<2)>>2];if((fa[H[H[c>>2]+8>>2]](c)|0)==1){fa[H[H[c>>2]+8>>2]](c)|0}c=ra(28);H[c+4>>2]=a;a=H[b+28>>2];H[c+8>>2]=H[b+24>>2];H[c+12>>2]=a;a=H[b+36>>2];H[c+16>>2]=H[b+32>>2];H[c+20>>2]=a;H[c+24>>2]=H[b+40>>2];H[c>>2]=9832}da=b+48|0;return c|0}function Kc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=O(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(H[a+28>>2]-1|0){case 0:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=F[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=I[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=G[b>>1];b=b+2|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=J[b>>1];b=b+2|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=H[b>>2];b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b>>2];if((e|0)<0){break b}H[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 6:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b>>2];if((H[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}H[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b+4>>2];i=H[b>>2];if(!e&i>>>0>2147483647|e){break a}H[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=L[b>>2];e:{if(O(P(j))>2]=e;b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=M[b>>3];f:{if(P(k)<2147483648){e=~~k;break f}e=-2147483648}H[i>>2]=e;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Rk(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=I[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ta((e<<2)+d|0,0,c-e<<2)}return h}return 0}function nk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-48|0;da=j;H[a+68>>2]=f;o=a+112|0;Ba(o);f=H[a+56>>2];e=H[f>>2];d=H[f+4>>2];H[j+40>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{d=d-e|0;if((d|0)<=0){break a}i=H[f>>2];if((i|0)!=H[f+4>>2]){p=a+60|0;d=d>>>2|0;q=d>>>0>1?d:1;r=c+4|0;while(1){Bc(p,H[(n<<2)+i>>2],j+32|0);f=H[j+36>>2];k=f>>31;g=H[j+32>>2];h=g>>31;i=H[j+40>>2];d=i>>31;e=d^d+i;h=e+((k^f+k)+(h^g+h)|0)|0;d=0;l=h;d=e>>>0>h>>>0?1:d;b:{if(!(h|d)){m=H[a+108>>2];g=m;break b}m=H[a+108>>2];h=m;e=h>>31;f=Sk(Rk(h,e,f,f>>31),ea,l,d);k=f>>31;g=Sk(Rk(h,e,g,g>>31),ea,l,d);d=g>>31;d=(k^f+k)+(d^d+g)|0;i=(i|0)>=0?h-d|0:d-h|0}c:{if((g|0)>=0){h=f+m|0;k=i+m|0;break c}d:{if((f|0)<0){d=i>>31;h=d+i^d;break d}d=i>>31;h=H[a+100>>2]-(d+i^d)|0}if((i|0)<0){d=f>>31;k=d+f^d;break c}d=f>>31;k=H[a+100>>2]-(d+f^d)|0}d=H[a+100>>2];l=d;e=d;e:{if(!(h|k)){break e}if(!((d|0)!=(k|0)|h)){l=k;e=k;break e}e=(d|0)!=(h|0);if(!(k|e)){l=h;e=h;break e}if(!((k|0)<=(m|0)|h)){l=(m<<1)-k|0;e=0;break e}if(!((k|0)>=(m|0)|e)){l=(m<<1)-k|0;e=h;break e}if(!((d|0)!=(k|0)|(h|0)>=(m|0))){l=k;e=(m<<1)-h|0;break e}if(k){l=k;e=h;break e}l=0;e=h;if((e|0)<=(m|0)){break e}e=(m<<1)-h|0}H[j+28>>2]=l;H[j+24>>2]=e;H[j+40>>2]=0-i;H[j+36>>2]=0-f;H[j+32>>2]=0-g;f:{if((g|0)<=0){g=m-i|0;e=m-f|0;break f}e=f>>31;e=e+f^e;g=(i|0)>0?e:d-e|0;e=i>>31;e=e+i^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|g)){g=d;break g}if(!((d|0)!=(g|0)|e)){g=d;break g}f=(d|0)!=(e|0);if(!(g|f)){g=d;break g}if(!((g|0)<=(m|0)|e)){g=(m<<1)-g|0;d=0;break g}if(!((g|0)>=(m|0)|f)){g=(m<<1)-g|0;break g}if(!((d|0)!=(g|0)|(e|0)>=(m|0))){g=d;d=(m<<1)-e|0;break g}if(g){d=e;break g}g=0;if((e|0)<=(m|0)){d=e;break g}d=(m<<1)-e|0}H[j+20>>2]=g;H[j+16>>2]=d;i=H[a+8>>2];h:{if((i|0)<=0){break h}m=(n<<3)+b|0;h=0;e=j+24|0;while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];i:{if((g|0)>(d|0)){H[k+l>>2]=d;break i}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break i}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}}d=h<<2;e=d+(j+8|0)|0;f=H[d+m>>2]-H[d+k>>2]|0;H[e>>2]=f;d=H[a+28>>2];j:{if((f|0)<(d|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break j}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}h=0;e=j+16|0;if((i|0)<=0){break h}while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];k:{if((g|0)>(d|0)){H[k+l>>2]=d;break k}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break k}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}d=H[a+28>>2]}f=h<<2;e=f+j|0;f=H[f+m>>2]-H[f+k>>2]|0;H[e>>2]=f;l:{if((d|0)>(f|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break l}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}}f=H[j+8>>2];e=H[a+108>>2];m:{if((f|0)>(e|0)){f=f-H[a+96>>2]|0;break m}if((0-e|0)<=(f|0)){break m}f=H[a+96>>2]+f|0}H[j+8>>2]=f;i=H[j+12>>2];n:{if((e|0)<(i|0)){i=i-H[a+96>>2]|0;break n}if((0-e|0)<=(i|0)){break n}i=H[a+96>>2]+i|0}H[j+12>>2]=i;d=H[j>>2];o:{if((e|0)<(d|0)){d=d-H[a+96>>2]|0;break o}if((0-e|0)<=(d|0)){break o}d=H[a+96>>2]+d|0}l=n<<1;H[j>>2]=d;g=H[j+4>>2];p:{if((e|0)<(g|0)){g=g-H[a+96>>2]|0;break p}if((0-e|0)<=(g|0)){break p}g=H[a+96>>2]+g|0}H[j+4>>2]=g;e=i>>31;h=e+i^e;e=f>>31;e=e+f^e;k=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;e=g>>31;h=e+g^e;e=d>>31;e=e+d^e;e=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;Ja(o,k>>>0>=e>>>0);h=l<<2;e=e>>>0>k>>>0;d=e?f:d;H[h+c>>2]=(H[a+96>>2]&d>>31)+d;d=e?i:g;H[h+r>>2]=(H[a+96>>2]&d>>31)+d;n=n+1|0;if((q|0)==(n|0)){break a}d=H[a+56>>2];i=H[d>>2];if(H[d+4>>2]-i>>2>>>0>n>>>0){continue}break}}xa();X()}da=j+48|0;return 1}function dk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-48|0;da=j;H[a+68>>2]=f;o=a+112|0;Ba(o);f=H[a+56>>2];e=H[f>>2];d=H[f+4>>2];H[j+40>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{d=d-e|0;if((d|0)<=0){break a}i=H[f>>2];if((i|0)!=H[f+4>>2]){p=a+60|0;d=d>>>2|0;q=d>>>0>1?d:1;r=c+4|0;while(1){zc(p,H[(n<<2)+i>>2],j+32|0);f=H[j+36>>2];k=f>>31;g=H[j+32>>2];h=g>>31;i=H[j+40>>2];d=i>>31;e=d^d+i;h=e+((k^f+k)+(h^g+h)|0)|0;d=0;l=h;d=e>>>0>h>>>0?1:d;b:{if(!(h|d)){m=H[a+108>>2];g=m;break b}m=H[a+108>>2];h=m;e=h>>31;f=Sk(Rk(h,e,f,f>>31),ea,l,d);k=f>>31;g=Sk(Rk(h,e,g,g>>31),ea,l,d);d=g>>31;d=(k^f+k)+(d^d+g)|0;i=(i|0)>=0?h-d|0:d-h|0}c:{if((g|0)>=0){h=f+m|0;k=i+m|0;break c}d:{if((f|0)<0){d=i>>31;h=d+i^d;break d}d=i>>31;h=H[a+100>>2]-(d+i^d)|0}if((i|0)<0){d=f>>31;k=d+f^d;break c}d=f>>31;k=H[a+100>>2]-(d+f^d)|0}d=H[a+100>>2];l=d;e=d;e:{if(!(h|k)){break e}if(!((d|0)!=(k|0)|h)){l=k;e=k;break e}e=(d|0)!=(h|0);if(!(k|e)){l=h;e=h;break e}if(!((k|0)<=(m|0)|h)){l=(m<<1)-k|0;e=0;break e}if(!((k|0)>=(m|0)|e)){l=(m<<1)-k|0;e=h;break e}if(!((d|0)!=(k|0)|(h|0)>=(m|0))){l=k;e=(m<<1)-h|0;break e}if(k){l=k;e=h;break e}l=0;e=h;if((e|0)<=(m|0)){break e}e=(m<<1)-h|0}H[j+28>>2]=l;H[j+24>>2]=e;H[j+40>>2]=0-i;H[j+36>>2]=0-f;H[j+32>>2]=0-g;f:{if((g|0)<=0){g=m-i|0;e=m-f|0;break f}e=f>>31;e=e+f^e;g=(i|0)>0?e:d-e|0;e=i>>31;e=e+i^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|g)){g=d;break g}if(!((d|0)!=(g|0)|e)){g=d;break g}f=(d|0)!=(e|0);if(!(g|f)){g=d;break g}if(!((g|0)<=(m|0)|e)){g=(m<<1)-g|0;d=0;break g}if(!((g|0)>=(m|0)|f)){g=(m<<1)-g|0;break g}if(!((d|0)!=(g|0)|(e|0)>=(m|0))){g=d;d=(m<<1)-e|0;break g}if(g){d=e;break g}g=0;if((e|0)<=(m|0)){d=e;break g}d=(m<<1)-e|0}H[j+20>>2]=g;H[j+16>>2]=d;i=H[a+8>>2];h:{if((i|0)<=0){break h}m=(n<<3)+b|0;h=0;e=j+24|0;while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];i:{if((g|0)>(d|0)){H[k+l>>2]=d;break i}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break i}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}}d=h<<2;e=d+(j+8|0)|0;f=H[d+m>>2]-H[d+k>>2]|0;H[e>>2]=f;d=H[a+28>>2];j:{if((f|0)<(d|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break j}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}h=0;e=j+16|0;if((i|0)<=0){break h}while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];k:{if((g|0)>(d|0)){H[k+l>>2]=d;break k}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break k}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}d=H[a+28>>2]}f=h<<2;e=f+j|0;f=H[f+m>>2]-H[f+k>>2]|0;H[e>>2]=f;l:{if((d|0)>(f|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break l}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}}f=H[j+8>>2];e=H[a+108>>2];m:{if((f|0)>(e|0)){f=f-H[a+96>>2]|0;break m}if((0-e|0)<=(f|0)){break m}f=H[a+96>>2]+f|0}H[j+8>>2]=f;i=H[j+12>>2];n:{if((e|0)<(i|0)){i=i-H[a+96>>2]|0;break n}if((0-e|0)<=(i|0)){break n}i=H[a+96>>2]+i|0}H[j+12>>2]=i;d=H[j>>2];o:{if((e|0)<(d|0)){d=d-H[a+96>>2]|0;break o}if((0-e|0)<=(d|0)){break o}d=H[a+96>>2]+d|0}l=n<<1;H[j>>2]=d;g=H[j+4>>2];p:{if((e|0)<(g|0)){g=g-H[a+96>>2]|0;break p}if((0-e|0)<=(g|0)){break p}g=H[a+96>>2]+g|0}H[j+4>>2]=g;e=i>>31;h=e+i^e;e=f>>31;e=e+f^e;k=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;e=g>>31;h=e+g^e;e=d>>31;e=e+d^e;e=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;Ja(o,k>>>0>=e>>>0);h=l<<2;e=e>>>0>k>>>0;d=e?f:d;H[h+c>>2]=(H[a+96>>2]&d>>31)+d;d=e?i:g;H[h+r>>2]=(H[a+96>>2]&d>>31)+d;n=n+1|0;if((q|0)==(n|0)){break a}d=H[a+56>>2];i=H[d>>2];if(H[d+4>>2]-i>>2>>>0>n>>>0){continue}break}}xa();X()}da=j+48|0;return 1}function Sf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;o=da-32|0;da=o;a:{if((c|0)<=0){break a}p=c&3;b:{if(c-1>>>0<3){c=0;break b}z=c&-4;c=0;while(1){t=c|1;k=(t<<3)+b|0;g=H[k+4>>2];q=H[k>>2];u=c|2;m=(u<<3)+b|0;k=H[m+4>>2];v=H[m>>2];w=c|3;f=(w<<3)+b|0;m=H[f+4>>2];x=H[f>>2];r=j;j=(c<<3)+b|0;y=H[j+4>>2];f=H[j>>2];j=m|x?w:k|v?u:g|q?t:!(y|f)?r:c;e=e+y|0;n=f+n|0;e=n>>>0>>0?e+1|0:e;f=n+q|0;e=e+g|0;e=f>>>0>>0?e+1|0:e;g=f+v|0;e=e+k|0;e=g>>>0>>0?e+1|0:e;k=g;g=g+x|0;e=e+m|0;e=g>>>0>>0?e+1|0:e;n=g;c=c+4|0;i=i+4|0;if((z|0)!=(i|0)){continue}break}}if(!p){break a}while(1){k=j;j=(c<<3)+b|0;g=H[j+4>>2];i=H[j>>2];j=!(g|i)?k:c;c=c+1|0;e=e+g|0;k=i+n|0;e=k>>>0>>0?e+1|0:e;n=k;h=h+1|0;if((p|0)!=(h|0)){continue}break}}h=j+1|0;H[a+12>>2]=h;i=H[a>>2];c=H[a+4>>2]-i>>3;c:{if(c>>>0>>0){_a(a,h-c|0);i=H[a>>2];break c}if(c>>>0<=h>>>0){break c}H[a+4>>2]=(h<<3)+i}g=0;k=0;d:{e:{if((j|0)>=0){s=+(n>>>0)+ +(e>>>0)*4294967296;c=0;while(1){m=c<<3;f=m+b|0;e=H[f+4>>2];f=H[f>>2];n=(e|f)!=0;r=i+m|0;l=(+(f>>>0)+ +(e>>>0)*4294967296)/s*4096+.5;f:{if(l<4294967296&l>=0){e=~~l>>>0;break f}e=0}e=e?e:n?1:e;H[r>>2]=e;k=e+k|0;e=(c|0)==(j|0);c=c+1|0;if(!e){continue}break}if((k|0)==4096){break e}}H[o+16>>2]=0;H[o+8>>2]=0;H[o+12>>2]=0;i=0;g:{h:{i:{if(h){if(h>>>0>=1073741824){break i}c=h<<2;g=ra(c);H[o+8>>2]=g;i=ta(g,0,c)+c|0}c=0;j:{if((j|0)<0){break j}h=j+1|0;e=h&7;if(j>>>0>=7){m=h&-8;h=0;while(1){H[(c<<2)+g>>2]=c;f=c|1;H[(f<<2)+g>>2]=f;f=c|2;H[(f<<2)+g>>2]=f;f=c|3;H[(f<<2)+g>>2]=f;f=c|4;H[(f<<2)+g>>2]=f;f=c|5;H[(f<<2)+g>>2]=f;f=c|6;H[(f<<2)+g>>2]=f;f=c|7;H[(f<<2)+g>>2]=f;c=c+8|0;h=h+8|0;if((m|0)!=(h|0)){continue}break}}if(!e){break j}h=0;while(1){H[(c<<2)+g>>2]=c;c=c+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}H[o+24>>2]=a;Fd(g,i,o+24|0);if((k|0)<4096){c=H[a>>2]+(H[i-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-k|0)+4096;break h}k:{if((j|0)>0){h=k-4096|0;while(1){l=4096/+(k|0);f=H[a>>2];i=j;l:{while(1){e=f+(H[(i<<2)+g>>2]<<3)|0;c=H[e>>2];if(c>>>0>=2){n=c-1|0;r=e;m=c;s=T(l*+(c>>>0));m:{if(P(s)<2147483648){e=~~s;break m}e=-2147483648}e=c-e|0;e=e?e:1;c=(c|0)>(e|0)?e:n;c=(c|0)>(h|0)?h:c;H[r>>2]=m-c;h=h-c|0;k=k-c|0;if((k|0)==4096){k=4096;break l}c=(i|0)>1;i=i-1|0;if(c){continue}break l}break}if((i|0)==(j|0)){break k}}if((h|0)<=0){break g}g=H[o+8>>2];continue}}if(k>>>0<4097){break h}while(1)continue}qa(g);break d}ua();X()}if(!g){break e}}qa(g)}if((j|0)<0){break d}e=H[a>>2];m=j+1|0;f=m&3;k=0;h=0;c=0;if(j>>>0>=3){n=m&-4;g=0;while(1){i=h<<3;p=i+e|0;H[p+4>>2]=c;q=e+(i|8)|0;c=H[p>>2]+c|0;H[q+4>>2]=c;p=e+(i|16)|0;c=c+H[q>>2]|0;H[p+4>>2]=c;i=e+(i|24)|0;c=c+H[p>>2]|0;H[i+4>>2]=c;c=c+H[i>>2]|0;h=h+4|0;g=g+4|0;if((n|0)!=(g|0)){continue}break}}if(f){while(1){i=e+(h<<3)|0;H[i+4>>2]=c;h=h+1|0;c=H[i>>2]+c|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}if((c|0)!=4096){break d}c=0;l=0;n:{if((j|0)<0){break n}e=H[a>>2];if(j){h=m&-2;i=0;while(1){j=c<<3;g=H[j+e>>2];if(g){j=b+j|0;l=(+K[j>>2]+ +K[j+4>>2]*4294967296)*ya(+(g>>>0)*.000244140625)+l}j=(c|1)<<3;g=H[j+e>>2];if(g){j=b+j|0;l=(+K[j>>2]+ +K[j+4>>2]*4294967296)*ya(+(g>>>0)*.000244140625)+l}c=c+2|0;i=i+2|0;if((h|0)!=(i|0)){continue}break}}if(!(m&1)){break n}c=c<<3;e=H[c+e>>2];if(!e){break n}b=b+c|0;l=(+K[b>>2]+ +K[b+4>>2]*4294967296)*ya(+(e>>>0)*.000244140625)+l}l=U(-l);o:{if(l<0x10000000000000000&l>=0){c=P(l)>=1?~~(l>0?R(T(l*2.3283064365386963e-10),4294967295):U((l-+(~~l>>>0>>>0))*2.3283064365386963e-10))>>>0:0;b=~~l>>>0;break o}c=0;b=0}H[a+16>>2]=b;H[a+20>>2]=c;Za(a,d)}da=o+32|0}function Af(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=da-32|0;da=i;c=H[a+16>>2];H[a+20>>2]=c;a:{b:{c:{d:{if((c|0)!=H[a+24>>2]){H[c>>2]=b;b=c+4|0;H[a+20>>2]=b;e=c;break d}e=ra(4);H[e>>2]=b;b=e+4|0;H[a+24>>2]=b;H[a+20>>2]=b;H[a+16>>2]=e;if(c){break c}}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0;break b}qa(c);b=H[a+20>>2];e=H[a+16>>2];if((b|0)==(e|0)){break a}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0}if((c|0)<=0){f=H[a+28>>2];while(1){c=b-4|0;h=H[c>>2];e:{if((h|0)!=-1){h=(h>>>0)/3|0;if(!(H[f+(h>>>3&268435452)>>2]>>>h&1)){break e}}H[a+20>>2]=c;b=c}if((b|0)!=(e|0)){continue}break}break a}q=a+120|0;h=a+200|0;c=(c|0)/12|0;r=(c|0)>1?c:1;f:{g:{h:{while(1){i:{j:{k:{c=b-4|0;b=H[c>>2];if((b|0)==-1){break k}d=H[a+28>>2];e=(b>>>0)/3|0;if(H[d+(e>>>3&268435452)>>2]>>>e&1){break k}l=0;while(1){H[a+164>>2]=H[a+164>>2]+1;j=(b>>>0)/3|0;k=(b|0)==-1;m=k?-1:j;c=(m>>>3&536870908)+d|0;H[c>>2]=H[c>>2]|1<>2];l:{if((c|0)!=H[a+80>>2]){H[c>>2]=b;H[a+76>>2]=c+4;break l}e=H[a+72>>2];f=c-e|0;g=f>>2;c=g+1|0;if(c>>>0>1073741823){break i}d=f>>1;d=g>>>0<536870911?c>>>0>d>>>0?c:d:1073741823;if(d){if(d>>>0>1073741823){break h}c=ra(d<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=b;if((f|0)>0){sa(c,e,f)}H[a+80>>2]=c+(d<<2);H[a+76>>2]=g+4;H[a+72>>2]=c;if(!e){break l}qa(e)}H[a+320>>2]=b;c=-1;c=(b|0)!=-1?H[H[H[a+12>>2]>>2]+(b<<2)>>2]:c;n=c<<2;o=H[n+H[a+152>>2]>>2];m:{n:{e=H[a+84>>2]+(c>>>3&536870908)|0;f=H[e>>2];c=1<>2]=c|f;if((o|0)==-1){break n}}o:{if(k){break o}c=-1;e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;if((d|0)!=-1){c=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2]}p:{q:{j=b-N(j,3)|0;r:{if(j){e=b-1|0;break r}e=b+2|0;if((e|0)==-1){break q}}g=(c|0)==-1?-1:(c>>>0)/3|0;e=H[H[H[a+12>>2]+12>>2]+(e<<2)>>2];f=(e|0)==-1?-1:(e>>>0)/3|0;break p}g=(c|0)==-1?-1:(c>>>0)/3|0;e=-1;f=-1}s:{if((d|0)==-1){break s}k=H[H[a+12>>2]+12>>2];d=H[k+(d<<2)>>2];if((d|0)==-1){break s}p=H[a+28>>2];d=(d>>>0)/3|0;if(H[p+(d>>>3&268435452)>>2]>>>d&1){break s}t:{u:{if(j){d=b-1|0;break u}d=b+2|0;if((d|0)==-1){break t}}d=H[k+(d<<2)>>2];if((d|0)==-1){break t}d=(d>>>0)/3|0;if(H[(d>>>3&268435452)+p>>2]>>>d&1){break t}Xb(h,1);H[a+168>>2]=H[a+168>>2]+1;v:{if((o|0)==-1){break v}f=H[H[a+152>>2]+n>>2];if(H[H[a+140>>2]+(f>>>3&536870908)>>2]>>>f&1){break v}qc(a,b,0)}b=H[a+164>>2];H[i+4>>2]=m;f=i+4|0;H[i+16>>2]=f;Df(i+24|0,q,f,i+16|0);H[H[i+24>>2]+12>>2]=b;b=H[a+20>>2];H[b-4>>2]=e;if((b|0)!=H[a+24>>2]){H[b>>2]=c;H[a+20>>2]=b+4;break j}e=H[a+16>>2];f=b-e|0;g=f>>2;b=g+1|0;if(b>>>0>1073741823){break g}d=f>>1;d=g>>>0<536870911?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>1073741823){break f}b=ra(d<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;if((f|0)>0){sa(b,e,f)}H[a+24>>2]=b+(d<<2);H[a+20>>2]=g+4;H[a+16>>2]=b;if(!e){break j}qa(e);break j}if((f|0)!=-1){Rb(a,H[a+164>>2],0,f)}Xb(h,3);break m}if((g|0)!=-1){Rb(a,H[a+164>>2],1,g)}w:{x:{if(j){b=b-1|0;break x}b=b+2|0;if((b|0)==-1){break w}}b=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break w}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break w}Xb(h,5);c=e;break m}if((f|0)==-1){break o}Rb(a,H[a+164>>2],0,f)}Xb(h,7);H[a+20>>2]=H[a+20>>2]-4;break j}Xb(h,0);c=-1;if((b|0)==-1){break m}e=b+1|0;b=(e>>>0)%3|0?e:b-2|0;if((b|0)==-1){break m}c=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2]}l=l+1|0;if((r|0)==(l|0)){break j}d=H[a+28>>2];b=c;continue}}H[a+20>>2]=c}b=H[a+20>>2];if((b|0)!=H[a+16>>2]){continue}break a}break}ua();X()}wa(1604);X()}ua();X()}wa(1604);X()}da=i+32|0;return 1}function Ld(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;if(H[c>>2]==H[c+4>>2]){g=H[d+80>>2];v=da-16|0;da=v;j=H[a+4>>2];h=H[d+48>>2];d=H[H[d>>2]>>2];i=F[b+24|0];c=v+8|0;H[c>>2]=1065353216;u=c;L[c>>2]=O(-1<>2];w=ra((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!g|(i|0)<=0){break a}s=d+h|0;y=H[b>>2];c=H[b+48>>2];z=H[b+44>>2];x=H[b+40>>2];if(!I[b+84|0]){n=H[b+68>>2];t=i&-2;j=i&1;b=0;while(1){f=H[y>>2];d=Rk(x,z,H[n+(o<<2)>>2],0)+c|0;p=sa(w,f+d|0,x);k=L[u>>2];l=H[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){f=s+(b<<2)|0;q=d<<2;e=O(T(O(O(k*O(L[q+p>>2]-L[l+q>>2]))+O(.5))));b:{if(O(P(e))>2]=h;h=q|4;e=O(T(O(O(k*O(L[h+p>>2]-L[l+h>>2]))+O(.5))));c:{if(O(P(e))>2]=h;d=d+2|0;b=b+2|0;m=m+2|0;if((t|0)!=(m|0)){continue}break}}if(j){f=s+(b<<2)|0;d=d<<2;e=O(T(O(O(k*O(L[d+p>>2]-L[d+l>>2]))+O(.5))));d:{if(O(P(e))>2]=d;b=b+1|0}o=o+1|0;if((g|0)!=(o|0)){continue}break}break a}n=i&-2;t=i&1;b=0;while(1){h=H[y>>2];d=Rk(x,z,o,f)+c|0;p=sa(w,h+d|0,x);k=L[u>>2];l=H[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){h=s+(b<<2)|0;q=d<<2;e=O(T(O(O(k*O(L[q+p>>2]-L[l+q>>2]))+O(.5))));e:{if(O(P(e))>2]=j;j=q|4;e=O(T(O(O(k*O(L[j+p>>2]-L[l+j>>2]))+O(.5))));f:{if(O(P(e))>2]=j;d=d+2|0;b=b+2|0;m=m+2|0;if((n|0)!=(m|0)){continue}break}}if(t){h=s+(b<<2)|0;d=d<<2;e=O(T(O(O(k*O(L[d+p>>2]-L[d+l>>2]))+O(.5))));g:{if(O(P(e))>2]=d;b=b+1|0}d=o+1|0;f=d?f:f+1|0;o=d;if((g|0)!=(d|0)|f){continue}break}}qa(w);da=v+16|0;return 1}v=da-16|0;da=v;u=H[a+4>>2];g=H[d+48>>2];f=H[H[d>>2]>>2];r=F[b+24|0];d=v+8|0;H[d>>2]=1065353216;h=d;L[d>>2]=O(-1<>2];w=ra((r|0)!=(r&1073741823)?-1:r<<2);y=H[c>>2];c=H[c+4>>2]-y|0;h:{if(!c|(r|0)<=0){break h}s=f+g|0;z=H[b>>2];d=H[b+48>>2];x=H[b+44>>2];o=H[b+40>>2];c=c>>2;q=c>>>0>1?c:1;if(I[b+84|0]){j=r&-2;u=r&1;b=0;while(1){f=H[z>>2];c=Rk(o,x,H[y+(m<<2)>>2],0)+d|0;l=sa(w,f+c|0,o);k=L[h>>2];n=H[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;t=c<<2;e=O(T(O(O(k*O(L[t+l>>2]-L[n+t>>2]))+O(.5))));i:{if(O(P(e))>2]=g;g=t|4;e=O(T(O(O(k*O(L[g+l>>2]-L[n+g>>2]))+O(.5))));j:{if(O(P(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=O(T(O(O(k*O(L[c+l>>2]-L[c+n>>2]))+O(.5))));k:{if(O(P(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}break h}t=H[b+68>>2];j=r&-2;u=r&1;b=0;while(1){f=H[z>>2];c=Rk(o,x,H[t+(H[y+(m<<2)>>2]<<2)>>2],0)+d|0;p=sa(w,f+c|0,o);k=L[h>>2];l=H[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;n=c<<2;e=O(T(O(O(k*O(L[n+p>>2]-L[l+n>>2]))+O(.5))));l:{if(O(P(e))>2]=g;g=n|4;e=O(T(O(O(k*O(L[g+p>>2]-L[l+g>>2]))+O(.5))));m:{if(O(P(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=O(T(O(O(k*O(L[c+p>>2]-L[c+l>>2]))+O(.5))));n:{if(O(P(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}}qa(w);da=v+16|0;return 1}function mk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;H[a+8>>2]=e;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ha(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){d=g;break c}q=1;f=d-1|0;i=f&1;d:{if((d|0)==2){d=g;break d}p=f&-2;f=0;d=g;while(1){h=(q<<2)+b|0;j=H[h+4>>2];k=H[h>>2];o=(k|0)<(d|0);d=o?k:d;h=(d|0)>(j|0);d=h?j:d;g=o?g:(g|0)<(k|0)?k:g;g=h?g:(g|0)<(j|0)?j:g;q=q+2|0;f=f+2|0;if((p|0)!=(f|0)){continue}break}}if(!i){break c}h=H[(q<<2)+b>>2];f=(h|0)<(d|0);d=f?h:d;g=f?g:(g|0)<(h|0)?h:g}H[a+16>>2]=g;H[a+12>>2]=d;f=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;d=g-d|0;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}d=(e&1073741823)!=(e|0)?-1:e<<2;h=ta(ra(d),0,d);d=H[a+56>>2];r=H[d>>2];d=H[d+4>>2]-r|0;if((d|0)>=5){t=H[a+52>>2];s=H[a+48>>2];u=e&-2;v=e&1;q=d>>2;o=q;while(1){p=o;e:{f:{o=o-1|0;if(q>>>0>o>>>0){l=N(e,o);d=H[(o<<2)+r>>2];if((d|0)==-1){break f}m=H[H[s+12>>2]+(d<<2)>>2];if((m|0)==-1){break f}f=-1;k=H[t>>2];j=H[s>>2];g=k+(H[j+(m<<2)>>2]<<2)|0;d=m+1|0;d=(d>>>0)%3|0?d:m-2|0;if((d|0)!=-1){f=H[j+(d<<2)>>2]}i=H[g>>2];g:{h:{if((m>>>0)%3|0){g=m-1|0;break h}g=m+2|0;d=-1;if((g|0)==-1){break g}}d=H[j+(g<<2)>>2]}if((i|0)>=(o|0)){break f}f=H[k+(f<<2)>>2];if((f|0)>=(o|0)){break f}d=H[k+(d<<2)>>2];if((d|0)>=(o|0)){break f}i:{if((e|0)<=0){break i}j=N(d,e);k=N(e,f);i=N(e,i);g=0;f=0;if((e|0)!=1){while(1){H[h+(g<<2)>>2]=(H[(g+j<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+i<<2)+b>>2];d=g|1;H[h+(d<<2)>>2]=(H[(d+j<<2)+b>>2]+H[(d+k<<2)+b>>2]|0)-H[(d+i<<2)+b>>2];g=g+2|0;f=f+2|0;if((u|0)!=(f|0)){continue}break}}if(!v){break i}H[h+(g<<2)>>2]=(H[(g+j<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+i<<2)+b>>2]}d=H[a+8>>2];if((d|0)<=0){break e}f=l<<2;j=f+c|0;k=b+f|0;n=0;f=h;while(1){i=H[a+32>>2];g=0;if((d|0)>0){while(1){l=g<<2;m=H[l+f>>2];d=H[a+16>>2];j:{if((m|0)>(d|0)){H[i+l>>2]=d;break j}l=i+l|0;d=H[a+12>>2];if((d|0)>(m|0)){H[l>>2]=d;break j}H[l>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+j|0;f=H[f+k>>2]-H[f+i>>2]|0;H[d>>2]=f;k:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break k}f=f-H[a+20>>2]|0}H[d>>2]=f}f=i;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}break e}xa();X()}d=H[a+8>>2];if((d|0)<=0){break e}f=l<<2;j=f+c|0;k=b+f|0;f=(N(p-2|0,e)<<2)+b|0;n=0;while(1){i=H[a+32>>2];g=0;if((d|0)>0){while(1){l=g<<2;m=H[l+f>>2];d=H[a+16>>2];l:{if((m|0)>(d|0)){H[i+l>>2]=d;break l}l=i+l|0;d=H[a+12>>2];if((d|0)>(m|0)){H[l>>2]=d;break l}H[l>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+j|0;f=H[f+k>>2]-H[f+i>>2]|0;H[d>>2]=f;m:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break m}f=f-H[a+20>>2]|0}H[d>>2]=f}f=i;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}}if((p|0)>2){continue}break}}if((e|0)>0){ta(h,0,e<<2)}d=H[a+8>>2];if((d|0)>0){n=0;f=h;while(1){e=H[a+32>>2];g=0;if((d|0)>0){while(1){p=g<<2;i=H[p+f>>2];d=H[a+16>>2];n:{if((i|0)>(d|0)){H[e+p>>2]=d;break n}p=e+p|0;d=H[a+12>>2];if((d|0)>(i|0)){H[p>>2]=d;break n}H[p>>2]=i}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;o:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break o}f=f-H[a+20>>2]|0}H[d>>2]=f}f=e;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}}qa(h);return 1}function xk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;H[a+8>>2]=e;g=a+32|0;f=H[g>>2];i=H[a+36>>2]-f>>2;a:{if(i>>>0>>0){Ha(g,e-i|0);break a}if(e>>>0>=i>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){d=g;break c}p=1;f=d-1|0;h=f&1;d:{if((d|0)==2){d=g;break d}n=f&-2;f=0;d=g;while(1){i=(p<<2)+b|0;o=H[i+4>>2];l=H[i>>2];m=(l|0)<(d|0);d=m?l:d;i=(d|0)>(o|0);d=i?o:d;g=m?g:(g|0)<(l|0)?l:g;g=i?g:(g|0)<(o|0)?o:g;p=p+2|0;f=f+2|0;if((n|0)!=(f|0)){continue}break}}if(!h){break c}i=H[(p<<2)+b>>2];f=(i|0)<(d|0);d=f?i:d;g=f?g:(g|0)<(i|0)?i:g}H[a+16>>2]=g;H[a+12>>2]=d;f=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;d=g-d|0;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}d=(e&1073741823)!=(e|0)?-1:e<<2;i=ta(ra(d),0,d);d=H[a+56>>2];s=H[d>>2];d=H[d+4>>2]-s|0;if((d|0)>=5){t=H[a+52>>2];r=H[a+48>>2];u=e&-2;v=e&1;p=d>>2;m=p;while(1){n=m;e:{f:{m=m-1|0;if(p>>>0>m>>>0){o=N(e,m);d=H[(m<<2)+s>>2];if((d|0)==-1|H[H[r>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}j=H[H[H[r+64>>2]+12>>2]+(d<<2)>>2];if((j|0)==-1){break f}h=H[t>>2];l=H[r+28>>2];g=H[h+(H[l+(j<<2)>>2]<<2)>>2];if((g|0)>=(m|0)){break f}d=j+1|0;f=H[h+(H[l+(((d>>>0)%3|0?d:j-2|0)<<2)>>2]<<2)>>2];if((f|0)>=(m|0)){break f}d=H[h+(H[l+(j+((j>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(m|0)){break f}g:{if((e|0)<=0){break g}l=N(d,e);h=N(e,f);f=N(e,g);g=0;k=0;if((e|0)!=1){while(1){H[i+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+h<<2)+b>>2]|0)-H[(f+g<<2)+b>>2];d=g|1;H[i+(d<<2)>>2]=(H[(d+l<<2)+b>>2]+H[(d+h<<2)+b>>2]|0)-H[(d+f<<2)+b>>2];g=g+2|0;k=k+2|0;if((u|0)!=(k|0)){continue}break}}if(!v){break g}H[i+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+h<<2)+b>>2]|0)-H[(f+g<<2)+b>>2]}d=H[a+8>>2];if((d|0)<=0){break e}f=o<<2;o=f+c|0;l=b+f|0;k=0;f=i;while(1){h=H[a+32>>2];g=0;if((d|0)>0){while(1){j=g<<2;q=H[j+f>>2];d=H[a+16>>2];h:{if((q|0)>(d|0)){H[h+j>>2]=d;break h}j=h+j|0;d=H[a+12>>2];if((d|0)>(q|0)){H[j>>2]=d;break h}H[j>>2]=q}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+o|0;f=H[f+l>>2]-H[f+h>>2]|0;H[d>>2]=f;i:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break i}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}break e}xa();X()}d=H[a+8>>2];if((d|0)<=0){break e}f=o<<2;o=f+c|0;l=b+f|0;f=(N(n-2|0,e)<<2)+b|0;k=0;while(1){h=H[a+32>>2];g=0;if((d|0)>0){while(1){j=g<<2;q=H[j+f>>2];d=H[a+16>>2];j:{if((q|0)>(d|0)){H[h+j>>2]=d;break j}j=h+j|0;d=H[a+12>>2];if((d|0)>(q|0)){H[j>>2]=d;break j}H[j>>2]=q}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+o|0;f=H[f+l>>2]-H[f+h>>2]|0;H[d>>2]=f;k:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break k}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}}if((n|0)>2){continue}break}}if((e|0)>0){ta(i,0,e<<2)}d=H[a+8>>2];if((d|0)>0){k=0;f=i;while(1){e=H[a+32>>2];g=0;if((d|0)>0){while(1){n=g<<2;h=H[n+f>>2];d=H[a+16>>2];l:{if((h|0)>(d|0)){H[e+n>>2]=d;break l}n=e+n|0;d=H[a+12>>2];if((d|0)>(h|0)){H[n>>2]=d;break l}H[n>>2]=h}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;m:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break m}f=f-H[a+20>>2]|0}H[d>>2]=f}f=e;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}}qa(i);return 1}function Tb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=da-16|0;da=k;a:{if(!H[a+8>>2]){break a}e=H[a>>2];H[a>>2]=a+4;H[H[a+4>>2]+8>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;f=H[e+4>>2];e=f?f:e;if(!e){Oa(a,e);break a}g=H[e+8>>2];b:{if(!g){break b}f=H[g>>2];if((f|0)==(e|0)){H[g>>2]=0;f=H[g+4>>2];if(!f){d=g;break b}while(1){d=f;f=H[d>>2];if(f){continue}f=H[d+4>>2];if(f){continue}break}break b}H[g+4>>2]=0;if(!f){d=g;break b}while(1){d=f;f=H[d>>2];if(f){continue}f=H[d+4>>2];if(f){continue}break}}c:{if((b|0)==(c|0)){g=e;break c}f=b;while(1){g=d;H[k+12>>2]=e+28;H[k+8>>2]=e+16;h=f+16|0;i=H[k+8>>2];d:{if((h|0)==(i|0)){break d}d=I[h+11|0];b=d<<24>>24;if(F[i+11|0]>=0){if((b|0)>=0){b=H[h+4>>2];H[i>>2]=H[h>>2];H[i+4>>2]=b;H[i+8>>2]=H[h+8>>2];break d}Oc(i,H[h>>2],H[h+4>>2]);break d}b=(b|0)<0;Pc(i,b?H[h>>2]:h,b?H[h+4>>2]:d)}j=H[k+12>>2];i=h+12|0;if((j|0)!=(i|0)){e:{d=I[i+11|0];b=d<<24>>24;if(F[j+11|0]>=0){if((b|0)>=0){b=H[i+4>>2];H[j>>2]=H[i>>2];H[j+4>>2]=b;H[j+8>>2]=H[i+8>>2];break e}Oc(j,H[h+12>>2],H[h+16>>2]);break e}b=(b|0)<0;Pc(j,b?H[h+12>>2]:i,b?H[h+16>>2]:d)}}b=H[a+4>>2];f:{g:{if(b){d=I[e+27|0];i=d<<24>>24<0;m=i?H[e+20>>2]:d;j=i?H[e+16>>2]:e+16|0;while(1){d=I[b+27|0];l=d<<24>>24<0;h:{i:{j:{k:{h=l?H[b+20>>2]:d;i=h>>>0>>0?h:m;if(i){d=b+16|0;d=Ca(j,l?H[d>>2]:d,i);if(d){break k}}if(h>>>0>m>>>0){break j}break i}if((d|0)>=0){break i}}d=H[b>>2];if(!d){break g}break h}d=H[b+4>>2];if(d){break h}d=b+4|0;break f}b=d;continue}}b=a+4|0}d=b}H[e+8>>2]=b;H[e>>2]=0;H[e+4>>2]=0;H[d>>2]=e;b=H[H[a>>2]>>2];if(b){H[a>>2]=b;e=H[d>>2]}xb(H[a+4>>2],e);H[a+8>>2]=H[a+8>>2]+1;d=0;l:{if(!g){break l}e=H[g+8>>2];if(!e){break l}b=H[e>>2];if((g|0)==(b|0)){H[e>>2]=0;b=H[e+4>>2];if(!b){d=e;break l}while(1){d=b;b=H[b>>2];if(b){continue}b=H[d+4>>2];if(b){continue}break}break l}H[e+4>>2]=0;if(!b){d=e;break l}while(1){d=b;b=H[b>>2];if(b){continue}b=H[d+4>>2];if(b){continue}break}}e=H[f+4>>2];m:{if(!e){b=H[f+8>>2];if(H[b>>2]==(f|0)){break m}f=f+8|0;while(1){e=H[f>>2];f=e+8|0;b=H[e+8>>2];if((e|0)!=H[b>>2]){continue}break}break m}while(1){b=e;e=H[b>>2];if(e){continue}break}}if(!g){break c}e=g;f=b;if((b|0)!=(c|0)){continue}break}}Oa(a,g);if(!d){break a}while(1){f=H[d+8>>2];if(f){d=f;continue}break}Oa(a,d)}if((b|0)!=(c|0)){while(1){e=ra(40);g=e+16|0;f=b;n:{if(F[b+27|0]>=0){d=H[b+20>>2];H[g>>2]=H[b+16>>2];H[g+4>>2]=d;H[g+8>>2]=H[b+24>>2];break n}La(g,H[b+16>>2],H[b+20>>2])}g=e+28|0;o:{if(F[b+39|0]>=0){d=H[b+32>>2];H[g>>2]=H[b+28>>2];H[g+4>>2]=d;H[g+8>>2]=H[b+36>>2];break o}La(g,H[b+28>>2],H[b+32>>2])}b=H[a+4>>2];p:{q:{if(b){d=I[e+27|0];g=d<<24>>24<0;l=g?H[e+20>>2]:d;i=g?H[e+16>>2]:e+16|0;while(1){d=I[b+27|0];h=d<<24>>24<0;r:{s:{t:{u:{j=h?H[b+20>>2]:d;g=j>>>0>>0?j:l;if(g){d=b+16|0;d=Ca(i,h?H[d>>2]:d,g);if(d){break u}}if(j>>>0>l>>>0){break t}break s}if((d|0)>=0){break s}}d=H[b>>2];if(!d){break q}break r}d=H[b+4>>2];if(d){break r}d=b+4|0;break p}b=d;continue}}b=a+4|0}d=b}H[e+8>>2]=b;H[e>>2]=0;H[e+4>>2]=0;H[d>>2]=e;b=H[H[a>>2]>>2];if(b){H[a>>2]=b;e=H[d>>2]}xb(H[a+4>>2],e);H[a+8>>2]=H[a+8>>2]+1;e=H[f+4>>2];v:{if(!e){b=H[f+8>>2];if((f|0)==H[b>>2]){break v}d=f+8|0;while(1){f=H[d>>2];d=f+8|0;b=H[f+8>>2];if((f|0)!=H[b>>2]){continue}break}break v}while(1){b=e;e=H[b>>2];if(e){continue}break}}if((b|0)!=(c|0)){continue}break}}da=k+16|0}function cb(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-112|0;da=j;k=i&2147483647;l=e&2147483647;m=l;a:{b:{n=!(b|c);if(!(d|l?l-2147418112>>>0<2147549184:n)){p=k-2147418112|0;if(!h&(p|0)==-2147418112?f|g:(p|0)==-2147418112&(h|0)!=0|p>>>0>2147549184){break b}}if(!(!d&(m|0)==2147418112?n:m>>>0<2147418112)){h=d;i=e|32768;f=b;g=c;break a}if(!(!h&(k|0)==2147418112?!(f|g):k>>>0<2147418112)){i=i|32768;break a}if(!(b|d|(m^2147418112|c))){m=d;d=!(b^f|d^h|(c^g|e^i^-2147483648));h=d?0:m;i=d?2147450880:e;f=d?0:b;g=d?0:c;break a}if(!(f|h|(k^2147418112|g))){break a}if(!(b|d|(c|m))){if(f|h|(g|k)){break a}f=b&f;g=c&g;h=d&h;i=e&i;break a}if(f|h|(g|k)){break b}f=b;g=c;h=d;i=e;break a}l=(k|0)==(m|0);q=l&(d|0)==(h|0)?(c|0)==(g|0)&b>>>0>>0|c>>>0>>0:l&d>>>0>>0|k>>>0>m>>>0;k=q;n=k?f:b;l=k?g:c;m=k?i:e;p=m;o=k?h:d;m=m&65535;e=k?e:i;r=e;h=k?d:h;d=e>>>16&32767;k=p>>>16&32767;if(!k){e=!(m|o);i=e<<6;k=Q(e?n:o)+32|0;e=Q(e?l:m);e=i+((e|0)==32?k:e)|0;Wa(j+96|0,n,l,o,m,e-15|0);o=H[j+104>>2];m=H[j+108>>2];n=H[j+96>>2];k=16-e|0;l=H[j+100>>2]}f=q?b:f;g=q?c:g;i=r&65535;if(!d){b=!(h|i);c=b<<6;d=Q(b?f:h)+32|0;b=Q(b?g:i);b=c+((b|0)==32?d:b)|0;Wa(j+80|0,f,g,h,i,b-15|0);h=H[j+88>>2];i=H[j+92>>2];f=H[j+80>>2];g=H[j+84>>2];d=16-b|0}c=h;b=i<<3|c>>>29;h=c<<3|g>>>29;i=b|524288;c=o;b=m<<3|c>>>29;e=c<<3|l>>>29;m=b;o=p^r;c=f;b=g<<3|c>>>29;c=c<<3;d=k-d|0;c:{if(!d){break c}if(d>>>0>127){h=0;i=0;b=0;c=1;break c}Wa(j- -64|0,c,b,h,i,128-d|0);Lb(j+48|0,c,b,h,i,d);h=H[j+56>>2];i=H[j+60>>2];b=H[j+52>>2];c=H[j+48>>2]|(H[j+64>>2]|H[j+72>>2]|(H[j+68>>2]|H[j+76>>2]))!=0}f=b;m=m|524288;d=n;b=l<<3|d>>>29;d=d<<3;d:{if((o|0)<0){n=d-c|0;g=h;o=e-h|0;q=(b|0)==(f|0)&c>>>0>d>>>0|b>>>0>>0;h=o-q|0;l=b-((c>>>0>d>>>0)+f|0)|0;i=(m-((e>>>0>>0)+i|0)|0)-(o>>>0>>0)|0;if(!(n|h|(l|i))){f=0;g=0;h=0;i=0;break a}if(i>>>0>524287){break d}b=!(h|i);c=b<<6;d=Q(b?n:h)+32|0;b=Q(b?l:i);b=c+((b|0)==32?d:b)|0;b=b-12|0;Wa(j+32|0,n,l,h,i,b);k=k-b|0;h=H[j+40>>2];i=H[j+44>>2];n=H[j+32>>2];l=H[j+36>>2];break d}b=b+f|0;g=c+d|0;b=g>>>0>>0?b+1|0:b;n=g;d=g;l=b;f=(f|0)==(b|0)&c>>>0>d>>>0|b>>>0>>0;b=i+m|0;c=e+h|0;b=c>>>0>>0?b+1|0:b;d=c;c=f+c|0;h=c;i=c>>>0>>0?b+1|0:b;if(!(i&1048576)){break d}n=n&1|((l&1)<<31|n>>>1);c=h;l=c<<31|l>>>1;k=k+1|0;h=(i&1)<<31|c>>>1;i=i>>>1|0}d=0;m=p&-2147483648;if((k|0)>=32767){h=d;i=m|2147418112;f=0;g=0;break a}c=0;e:{if((k|0)>0){c=k;break e}Wa(j+16|0,n,l,h,i,k+127|0);Lb(j,n,l,h,i,1-k|0);n=H[j>>2]|(H[j+16>>2]|H[j+24>>2]|(H[j+20>>2]|H[j+28>>2]))!=0;l=H[j+4>>2];h=H[j+8>>2];i=H[j+12>>2]}e=h<<29;b=l>>>3|0;k=(l&7)<<29|n>>>3;l=n&7;g=l>>>0>4;f=k+g|0;e=b|e;b=e;b=f>>>0>>0?b+1|0:b;g=b;e=(e|0)==(b|0)&f>>>0>>0|b>>>0>>0;b=i>>>3&65535;h=(i&7)<<29|h>>>3;i=c<<16;d=d|h;c=d+e|0;b=m|(b|i);h=c;i=c>>>0>>0?b+1|0:b;f:{if((l|0)==4){d=0;b=g+d|0;e=f&1;c=f+e|0;b=c>>>0>>0?b+1|0:b;f=c;g=b;c=(d|0)==(b|0)&c>>>0>>0|b>>>0>>0;b=c+h|0;i=b>>>0>>0?i+1|0:i;h=b;break f}if(!l){break a}}}H[a>>2]=f;H[a+4>>2]=g;H[a+8>>2]=h;H[a+12>>2]=i;da=j+112|0}function De(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}d=H[a+12>>2];c=H[a+8>>2];if(d-c>>2>>>0<=b>>>0){break a}e=c+(b<<2)|0;f=H[e>>2];i=H[f+60>>2];g=H[f+56>>2];c=e+4|0;b:{if((c|0)!=(d|0)){while(1){h=H[c>>2];H[c>>2]=0;H[e>>2]=h;if(f){Ra(f)}e=e+4|0;c=c+4|0;if((c|0)!=(d|0)){f=H[e>>2];continue}break}d=H[a+12>>2];if((e|0)==(d|0)){break b}}while(1){d=d-4|0;c=H[d>>2];H[d>>2]=0;if(c){Ra(c)}if((d|0)!=(e|0)){continue}break}}H[a+12>>2]=e;f=H[a+4>>2];c:{if(!f|(i|0)<0){break c}d=H[f+24>>2];c=H[f+28>>2];if((d|0)==(c|0)){break c}while(1){if((i|0)==H[H[d>>2]+24>>2]){e=d+4|0;i=H[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=H[e>>2];H[e>>2]=0;c=H[d>>2];H[d>>2]=h;if(c){pb(c+12|0,H[c+16>>2]);ob(c,H[c+4>>2]);qa(c)}d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=H[f+28>>2];if((e|0)==(d|0)){break d}}while(1){e=e-4|0;c=H[e>>2];H[e>>2]=0;if(c){pb(c+12|0,H[c+16>>2]);ob(c,H[c+4>>2]);qa(c)}if((d|0)!=(e|0)){continue}break}}H[f+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=N(g,12)+a|0;d=H[e+20>>2];c=H[e+24>>2];if((d|0)==(c|0)){break f}while(1){if(H[d>>2]==(b|0)){break f}d=d+4|0;if((c|0)!=(d|0)){continue}break}break e}if((d|0)==(c|0)){break e}f=d+4|0;c=c-f|0;if(c){Ia(d,f,c)}H[e+24>>2]=d+c}e=H[a+20>>2];d=H[a+24>>2]-e|0;g:{if(!d){break g}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break g}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break g}H[d>>2]=c-1}e=H[a+32>>2];d=H[a+36>>2]-e|0;h:{if(!d){break h}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break h}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break h}H[d>>2]=c-1}e=H[a+44>>2];d=H[a+48>>2]-e|0;i:{if(!d){break i}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break i}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break i}H[d>>2]=c-1}e=H[a+56>>2];d=H[a+60>>2]-e|0;j:{if(!d){break j}c=d>>2;f=c>>>0>1?c:1;i=f&1;d=0;if(c>>>0>=2){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break j}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break j}H[d>>2]=c-1}c=H[a+72>>2];a=H[a+68>>2];d=c-a|0;if(!d){break a}c=d>>2;e=c>>>0>1?c:1;f=e&1;d=0;if(c>>>0>=2){e=e&-2;c=0;while(1){i=d<<2;g=i+a|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}i=a+(i|4)|0;g=H[i>>2];if((g|0)>(b|0)){H[i>>2]=g-1}d=d+2|0;c=c+2|0;if((e|0)!=(c|0)){continue}break}}if(!f){break a}c=b;a=a+(d<<2)|0;b=H[a>>2];if((c|0)>=(b|0)){break a}H[a>>2]=b-1}}function qa(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=H[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=H[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=H[d+8>>2];b=b>>>3|0;c=H[d+12>>2];if((c|0)==(e|0)){i=19120,j=H[4780]&Vk(b),H[i>>2]=j;break b}H[e+12>>2]=c;H[c+8>>2]=e;break b}h=H[d+24>>2];b=H[d+12>>2];c:{if((d|0)!=(b|0)){c=H[d+8>>2];H[c+12>>2]=b;H[b+8>>2]=c;break c}d:{e=d+20|0;c=H[e>>2];if(c){break d}e=d+16|0;c=H[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=H[e>>2];if(c){continue}e=b+16|0;c=H[b+16>>2];if(c){continue}break}H[g>>2]=0}if(!h){break b}e=H[d+28>>2];c=(e<<2)+19424|0;e:{if(H[c>>2]==(d|0)){H[c>>2]=b;if(b){break e}i=19124,j=H[4781]&Vk(e),H[i>>2]=j;break b}H[h+(H[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}H[b+24>>2]=h;c=H[d+16>>2];if(c){H[b+16>>2]=c;H[c+24>>2]=b}c=H[d+20>>2];if(!c){break b}H[b+20>>2]=c;H[c+24>>2]=b;break b}b=H[f+4>>2];if((b&3)!=3){break b}H[4782]=a;H[f+4>>2]=b&-2;H[d+4>>2]=a|1;H[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=H[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(H[4786]==(f|0)){H[4786]=d;a=H[4783]+a|0;H[4783]=a;H[d+4>>2]=a|1;if(H[4785]!=(d|0)){break a}H[4782]=0;H[4785]=0;return}if(H[4785]==(f|0)){H[4785]=d;a=H[4782]+a|0;H[4782]=a;H[d+4>>2]=a|1;H[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=H[f+8>>2];b=b>>>3|0;c=H[f+12>>2];if((c|0)==(e|0)){i=19120,j=H[4780]&Vk(b),H[i>>2]=j;break g}H[e+12>>2]=c;H[c+8>>2]=e;break g}h=H[f+24>>2];b=H[f+12>>2];h:{if((f|0)!=(b|0)){c=H[f+8>>2];H[c+12>>2]=b;H[b+8>>2]=c;break h}i:{e=f+20|0;c=H[e>>2];if(c){break i}e=f+16|0;c=H[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=H[e>>2];if(c){continue}e=b+16|0;c=H[b+16>>2];if(c){continue}break}H[g>>2]=0}if(!h){break g}e=H[f+28>>2];c=(e<<2)+19424|0;j:{if(H[c>>2]==(f|0)){H[c>>2]=b;if(b){break j}i=19124,j=H[4781]&Vk(e),H[i>>2]=j;break g}H[h+(H[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}H[b+24>>2]=h;c=H[f+16>>2];if(c){H[b+16>>2]=c;H[c+24>>2]=b}c=H[f+20>>2];if(!c){break g}H[b+20>>2]=c;H[c+24>>2]=b}H[d+4>>2]=a|1;H[a+d>>2]=a;if(H[4785]!=(d|0)){break f}H[4782]=a;return}H[f+4>>2]=b&-2;H[d+4>>2]=a|1;H[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+19160|0;c=H[4780];a=1<>2]}H[b+8>>2]=d;H[a+12>>2]=d;H[d+12>>2]=b;H[d+8>>2]=a;return}e=31;H[d+16>>2]=0;H[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}H[d+28>>2]=e;g=(e<<2)+19424|0;l:{m:{c=H[4781];b=1<>2]=d;H[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=H[g>>2];while(1){c=b;if((H[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=H[g+16>>2];if(b){continue}break}H[g+16>>2]=d;H[d+24>>2]=c}H[d+12>>2]=d;H[d+8>>2]=d;break l}a=H[c+8>>2];H[a+12>>2]=d;H[c+8>>2]=d;H[d+24>>2]=0;H[d+12>>2]=c;H[d+8>>2]=a}a=H[4788]-1|0;H[4788]=a?a:-1}}function Oj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=da-48|0;da=l;d=H[a+8>>2];if(d-31>>>0>=4294967267){H[a+76>>2]=d;e=-1<>2]=d;H[a+80>>2]=e^-1;H[a+92>>2]=(d|0)/2;L[a+88>>2]=O(2)/O(d|0)}H[a+52>>2]=f;o=a+96|0;Ba(o);d=H[a+40>>2];e=H[d>>2];f=H[d+4>>2];H[l+16>>2]=0;H[l+8>>2]=0;H[l+12>>2]=0;a:{e=f-e|0;if((e|0)<=0){break a}j=H[d>>2];if((j|0)!=H[d+4>>2]){p=a+8|0;q=a+44|0;d=e>>>2|0;r=d>>>0>1?d:1;s=c+4|0;while(1){Bc(q,H[(n<<2)+j>>2],l+8|0);f=H[l+12>>2];d=f>>31;e=H[l+8>>2];i=e>>31;j=H[l+16>>2];g=j>>31;g=g^g+j;i=g+((d^d+f)+(i^e+i)|0)|0;d=0;d=g>>>0>i>>>0?1:d;b:{if(!(d|i)){k=H[a+92>>2];h=k;break b}k=H[a+92>>2];m=k>>31;f=Sk(Rk(k,m,f,f>>31),ea,i,d);g=f>>31;h=Sk(Rk(k,m,e,e>>31),ea,i,d);d=h>>31;d=(g^f+g)+(d^d+h)|0;j=(j|0)>=0?k-d|0:d-k|0}c:{if((h|0)>=0){i=f+k|0;g=j+k|0;break c}d:{if((f|0)<0){d=j>>31;i=d+j^d;break d}d=j>>31;i=H[a+84>>2]-(d+j^d)|0}if((j|0)<0){d=f>>31;g=d+f^d;break c}d=f>>31;g=H[a+84>>2]-(d+f^d)|0}d=H[a+84>>2];m=d;e=d;e:{if(!(g|i)){break e}if(!((d|0)!=(g|0)|i)){m=g;e=g;break e}e=(d|0)!=(i|0);if(!(g|e)){m=i;e=i;break e}if(!((g|0)<=(k|0)|i)){m=(k<<1)-g|0;e=0;break e}if(!((g|0)>=(k|0)|e)){m=(k<<1)-g|0;e=i;break e}if(!((d|0)!=(g|0)|(i|0)>=(k|0))){m=g;e=(k<<1)-i|0;break e}if(g){m=g;e=i;break e}m=0;e=i;if((e|0)<=(k|0)){break e}e=(k<<1)-i|0}i=e;H[l+16>>2]=0-j;H[l+12>>2]=0-f;H[l+8>>2]=0-h;f:{if((h|0)<=0){h=k-j|0;e=k-f|0;break f}e=f>>31;e=e+f^e;h=(j|0)>0?e:d-e|0;e=j>>31;e=e+j^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|h)){h=d;break g}if(!((d|0)!=(h|0)|e)){h=d;break g}f=(d|0)!=(e|0);if(!(h|f)){h=d;break g}if(!((h|0)<=(k|0)|e)){h=(k<<1)-h|0;d=0;break g}if(!((h|0)>=(k|0)|f)){h=(k<<1)-h|0;break g}if(!((d|0)!=(h|0)|(e|0)>=(k|0))){h=d;d=(k<<1)-e|0;break g}if(h){d=e;break g}h=0;if((e|0)<=(k|0)){d=e;break g}d=(k<<1)-e|0}e=(n<<3)+b|0;f=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=f;H[l+28>>2]=m;H[l+24>>2]=i;i=l+40|0;g=l+32|0;m=l+24|0;ab(i,p,g,m);f=H[l+44>>2];j=H[l+40>>2];k=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=k;H[l+28>>2]=h;H[l+24>>2]=d;ab(i,p,g,m);d=H[l+44>>2];h=H[l+40>>2];e=H[a+92>>2];h:{if((e|0)<(j|0)){j=j-H[a+80>>2]|0;break h}if((0-e|0)<=(j|0)){break h}j=H[a+80>>2]+j|0}i:{if((e|0)<(f|0)){f=f-H[a+80>>2]|0;break i}if((0-e|0)<=(f|0)){break i}f=H[a+80>>2]+f|0}j:{if((e|0)<(h|0)){h=h-H[a+80>>2]|0;break j}if((0-e|0)<=(h|0)){break j}h=H[a+80>>2]+h|0}i=n<<1;k:{if((d|0)>(e|0)){d=d-H[a+80>>2]|0;break k}if((0-e|0)<=(d|0)){break k}d=H[a+80>>2]+d|0}e=f>>31;e=e+f^e;g=j>>31;g=g+j^g;e=g>>>0>(e^2147483647)>>>0?2147483647:e+g|0;g=d>>31;g=g+d^g;m=h>>31;m=m+h^m;g=m>>>0>(g^2147483647)>>>0?2147483647:g+m|0;Ja(o,e>>>0>=g>>>0);i=i<<2;e=e>>>0>>0;g=e?j:h;H[i+c>>2]=(H[a+80>>2]&g>>31)+g;d=e?f:d;H[i+s>>2]=(H[a+80>>2]&d>>31)+d;n=n+1|0;if((r|0)==(n|0)){break a}d=H[a+40>>2];j=H[d>>2];if(H[d+4>>2]-j>>2>>>0>n>>>0){continue}break}}xa();X()}da=l+48|0;return 1}function Dj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=da-48|0;da=l;d=H[a+8>>2];if(d-31>>>0>=4294967267){H[a+76>>2]=d;e=-1<>2]=d;H[a+80>>2]=e^-1;H[a+92>>2]=(d|0)/2;L[a+88>>2]=O(2)/O(d|0)}H[a+52>>2]=f;o=a+96|0;Ba(o);d=H[a+40>>2];e=H[d>>2];f=H[d+4>>2];H[l+16>>2]=0;H[l+8>>2]=0;H[l+12>>2]=0;a:{e=f-e|0;if((e|0)<=0){break a}j=H[d>>2];if((j|0)!=H[d+4>>2]){p=a+8|0;q=a+44|0;d=e>>>2|0;r=d>>>0>1?d:1;s=c+4|0;while(1){zc(q,H[(n<<2)+j>>2],l+8|0);f=H[l+12>>2];d=f>>31;e=H[l+8>>2];i=e>>31;j=H[l+16>>2];g=j>>31;g=g^g+j;i=g+((d^d+f)+(i^e+i)|0)|0;d=0;d=g>>>0>i>>>0?1:d;b:{if(!(d|i)){k=H[a+92>>2];h=k;break b}k=H[a+92>>2];m=k>>31;f=Sk(Rk(k,m,f,f>>31),ea,i,d);g=f>>31;h=Sk(Rk(k,m,e,e>>31),ea,i,d);d=h>>31;d=(g^f+g)+(d^d+h)|0;j=(j|0)>=0?k-d|0:d-k|0}c:{if((h|0)>=0){i=f+k|0;g=j+k|0;break c}d:{if((f|0)<0){d=j>>31;i=d+j^d;break d}d=j>>31;i=H[a+84>>2]-(d+j^d)|0}if((j|0)<0){d=f>>31;g=d+f^d;break c}d=f>>31;g=H[a+84>>2]-(d+f^d)|0}d=H[a+84>>2];m=d;e=d;e:{if(!(g|i)){break e}if(!((d|0)!=(g|0)|i)){m=g;e=g;break e}e=(d|0)!=(i|0);if(!(g|e)){m=i;e=i;break e}if(!((g|0)<=(k|0)|i)){m=(k<<1)-g|0;e=0;break e}if(!((g|0)>=(k|0)|e)){m=(k<<1)-g|0;e=i;break e}if(!((d|0)!=(g|0)|(i|0)>=(k|0))){m=g;e=(k<<1)-i|0;break e}if(g){m=g;e=i;break e}m=0;e=i;if((e|0)<=(k|0)){break e}e=(k<<1)-i|0}i=e;H[l+16>>2]=0-j;H[l+12>>2]=0-f;H[l+8>>2]=0-h;f:{if((h|0)<=0){h=k-j|0;e=k-f|0;break f}e=f>>31;e=e+f^e;h=(j|0)>0?e:d-e|0;e=j>>31;e=e+j^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|h)){h=d;break g}if(!((d|0)!=(h|0)|e)){h=d;break g}f=(d|0)!=(e|0);if(!(h|f)){h=d;break g}if(!((h|0)<=(k|0)|e)){h=(k<<1)-h|0;d=0;break g}if(!((h|0)>=(k|0)|f)){h=(k<<1)-h|0;break g}if(!((d|0)!=(h|0)|(e|0)>=(k|0))){h=d;d=(k<<1)-e|0;break g}if(h){d=e;break g}h=0;if((e|0)<=(k|0)){d=e;break g}d=(k<<1)-e|0}e=(n<<3)+b|0;f=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=f;H[l+28>>2]=m;H[l+24>>2]=i;i=l+40|0;g=l+32|0;m=l+24|0;ab(i,p,g,m);f=H[l+44>>2];j=H[l+40>>2];k=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=k;H[l+28>>2]=h;H[l+24>>2]=d;ab(i,p,g,m);d=H[l+44>>2];h=H[l+40>>2];e=H[a+92>>2];h:{if((e|0)<(j|0)){j=j-H[a+80>>2]|0;break h}if((0-e|0)<=(j|0)){break h}j=H[a+80>>2]+j|0}i:{if((e|0)<(f|0)){f=f-H[a+80>>2]|0;break i}if((0-e|0)<=(f|0)){break i}f=H[a+80>>2]+f|0}j:{if((e|0)<(h|0)){h=h-H[a+80>>2]|0;break j}if((0-e|0)<=(h|0)){break j}h=H[a+80>>2]+h|0}i=n<<1;k:{if((d|0)>(e|0)){d=d-H[a+80>>2]|0;break k}if((0-e|0)<=(d|0)){break k}d=H[a+80>>2]+d|0}e=f>>31;e=e+f^e;g=j>>31;g=g+j^g;e=g>>>0>(e^2147483647)>>>0?2147483647:e+g|0;g=d>>31;g=g+d^g;m=h>>31;m=m+h^m;g=m>>>0>(g^2147483647)>>>0?2147483647:g+m|0;Ja(o,e>>>0>=g>>>0);i=i<<2;e=e>>>0>>0;g=e?j:h;H[i+c>>2]=(H[a+80>>2]&g>>31)+g;d=e?f:d;H[i+s>>2]=(H[a+80>>2]&d>>31)+d;n=n+1|0;if((r|0)==(n|0)){break a}d=H[a+40>>2];j=H[d>>2];if(H[d+4>>2]-j>>2>>>0>n>>>0){continue}break}}xa();X()}da=l+48|0;return 1}function cg(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;g=da-16|0;da=g;H[g+12>>2]=b;b=ra(32);H[g>>2]=b;H[g+4>>2]=17;H[g+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];i=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);h=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=h;F[b+9|0]=h>>>8;F[b+10|0]=h>>>16;F[b+11|0]=h>>>24;F[b+12|0]=i;F[b+13|0]=i>>>8;F[b+14|0]=i>>>16;F[b+15|0]=i>>>24;i=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);h=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=h;F[b+1|0]=h>>>8;F[b+2|0]=h>>>16;F[b+3|0]=h>>>24;F[b+4|0]=i;F[b+5|0]=i>>>8;F[b+6|0]=i>>>16;F[b+7|0]=i>>>24;i=a+4|0;wb(ac(i,g+12|0),g,c);if(F[g+11|0]<0){qa(H[g>>2])}a=ra(32);H[g>>2]=a;H[g+4>>2]=19;H[g+8>>2]=-2147483616;F[a+19|0]=0;b=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[a+15|0]=b;F[a+16|0]=b>>>8;F[a+17|0]=b>>>16;F[a+18|0]=b>>>24;b=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);c=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[a+8|0]=c;F[a+9|0]=c>>>8;F[a+10|0]=c>>>16;F[a+11|0]=c>>>24;F[a+12|0]=b;F[a+13|0]=b>>>8;F[a+14|0]=b>>>16;F[a+15|0]=b>>>24;b=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);c=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[a|0]=c;F[a+1|0]=c>>>8;F[a+2|0]=c>>>16;F[a+3|0]=c>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;c=ac(i,g+12|0);a=da-48|0;da=a;H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;a:{if((d|0)<=0){break a}Nc(a,L[e>>2]);b=I[a+11|0];h=b<<24>>24<0;Qc(a+16|0,h?H[a>>2]:a,h?H[a+4>>2]:b);if(F[a+11|0]<0){qa(H[a>>2])}b=1;if((d|0)==1){break a}while(1){h=a+16|0;Qc(h,2164,tb(2164));Nc(a,L[(b<<2)+e>>2]);k=h;h=I[a+11|0];j=h<<24>>24<0;Qc(k,j?H[a>>2]:a,j?H[a+4>>2]:h);if(F[a+11|0]<0){qa(H[a>>2])}b=b+1|0;if((d|0)!=(b|0)){continue}break}}H[a+40>>2]=g;Id(a,c,g,a+40|0);b=H[a>>2]+28|0;b:{if((b|0)==(a+16|0)){break b}d=I[a+27|0];c=d<<24>>24;if(F[b+11|0]>=0){if((c|0)>=0){c=H[a+20>>2];H[b>>2]=H[a+16>>2];H[b+4>>2]=c;H[b+8>>2]=H[a+24>>2];break b}Oc(b,H[a+16>>2],H[a+20>>2]);break b}e=b;b=(c|0)<0;Pc(e,b?H[a+16>>2]:a+16|0,b?H[a+20>>2]:d)}if(F[a+27|0]<0){qa(H[a+16>>2])}da=a+48|0;if(F[g+11|0]<0){qa(H[g>>2])}a=ra(32);H[g>>2]=a;H[g+4>>2]=18;H[g+8>>2]=-2147483616;F[a+18|0]=0;b=I[1706]|I[1707]<<8;F[a+16|0]=b;F[a+17|0]=b>>>8;b=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);c=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[a+8|0]=c;F[a+9|0]=c>>>8;F[a+10|0]=c>>>16;F[a+11|0]=c>>>24;F[a+12|0]=b;F[a+13|0]=b>>>8;F[a+14|0]=b>>>16;F[a+15|0]=b>>>24;b=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);c=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[a|0]=c;F[a+1|0]=c>>>8;F[a+2|0]=c>>>16;F[a+3|0]=c>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;b=ac(i,g+12|0);a=da-48|0;da=a;Nc(a+8|0,f);H[a+32>>2]=g;Id(a+40|0,b,g,a+32|0);b=H[a+40>>2];if(F[b+39|0]<0){qa(H[b+28>>2])}c=H[a+12>>2];H[b+28>>2]=H[a+8>>2];H[b+32>>2]=c;H[b+36>>2]=H[a+16>>2];da=a+48|0;if(F[g+11|0]<0){qa(H[g>>2])}da=g+16|0}function uf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}c=(b>>>0)/3|0;if(!(H[H[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=H[a+48>>2];H[a+52>>2]=d;a:{if((d|0)!=H[a+56>>2]){H[d>>2]=b;H[a+52>>2]=d+4;break a}e=ra(4);H[e>>2]=b;f=e+4|0;H[a+56>>2]=f;H[a+52>>2]=f;H[a+48>>2]=e;if(!d){break a}qa(d)}f=H[H[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=H[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-N(c,3)|0?-1:2)+b|0;c=H[f+(g<<2)>>2];if((c|0)==-1){return 0}b=H[a+36>>2];f=b+(d>>>3&536870908)|0;h=H[f>>2];i=1<>2]=h|i;qb(a+8|0,d,e);b=H[a+36>>2]}b=(c>>>3&536870908)+b|0;d=H[b>>2];e=1<>2]=d|e;qb(a+8|0,c,g)}c=H[a+52>>2];if((c|0)==H[a+48>>2]){return 1}k=a+8|0;while(1){c=c-4|0;b=H[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=H[a+24>>2]+(d>>>3&268435452)|0;f=H[e>>2];d=1<>2]=d|f;e=H[a+4>>2];d=H[H[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=H[a+36>>2]+(d>>>3&536870908)|0;g=H[f>>2];h=1<>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}H[f>>2]=g|h;qb(k,d,c);break e}H[f>>2]=g|h;qb(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=H[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|H[H[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=H[H[H[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<>2];i=d>>>5|0;f=H[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=H[a+4>>2];if(!((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(H[H[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=H[H[H[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;f=(d>>>0)/3|0;h=(d|0)==-1;if(!h){c=H[a+24>>2];h=h?-1:f;i=h>>>5|0;f=H[c+(i<<2)>>2];h=1<>2];i=g>>>5|0;f=H[c+(i<<2)>>2];if(!(h&f)){break d}}c=H[a+52>>2]-4|0;H[a+52>>2]=c;break b}if(j){b=d;break d}if(H[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=H[a+52>>2];H[c-4>>2]=b;if((c|0)!=H[a+56>>2]){H[c>>2]=d;c=c+4|0;break c}m:{e=H[a+48>>2];f=c-e|0;c=f>>2;b=c+1|0;if(b>>>0<1073741824){g=f>>1;g=c>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break m}b=ra(g<<2)}else{b=0}c=b+(c<<2)|0;H[c>>2]=d;c=c+4|0;if((f|0)>0){sa(b,e,f)}H[a+56>>2]=b+(g<<2);H[a+52>>2]=c;H[a+48>>2]=b;if(!e){break b}qa(e);c=H[a+52>>2];break b}ua();X()}wa(1604);X()}H[(i<<2)+c>>2]=f|h;d=H[H[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}H[a+52>>2]=c}if(H[a+48>>2]!=(c|0)){continue}break}}return 1}function ej(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=da+-64|0;da=e;a:{b:{c:{d:{if(!I[a+288|0]){break d}c=1;h=fa[H[H[a>>2]+40>>2]](a)|0;if((H[h+12>>2]-H[h+8>>2]|0)<=0){break d}Pf(H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;f=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];i=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;d=H[a+172>>2];c=H[a+176>>2]-d|0;e:{if(!c){break e}c=(c|0)/136|0;g=c>>>0>1?c:1;c=0;while(1){if(H[d+N(c,136)>>2]==(b|0)){h=c;break e}c=c+1|0;if((g|0)!=(c|0)){continue}break}}f:{g:{h:{i:{j:{k:{if(!I[a+288|0]){c=H[i+56>>2];if(!(!c|!f)&(!I[(d+N(h,136)|0)+28|0]|(f|0)!=1)){break i}if(c){break k}}c=a+40|0;break j}c=H[a+12>>2];f=H[c+28>>2];c=H[c+24>>2];H[e>>2]=-1;k=d;d=N(h,136);g=k+d|0;Ab(g+116|0,f-c>>2,e);F[(d+H[a+172>>2]|0)+100|0]=0;c=g+104|0}d=0;if(fb(H[(fa[H[H[a>>2]+40>>2]](a)|0)+48>>2])|H[i+56>>2]){break h}if(!I[a+288|0]){d=1;c=uc(a,c);break g}d=H[a+8>>2];f=H[d+12>>2]-H[d+8>>2]|0;d=(f|0)<5;if((f|0)>4){break h}c=uc(a,c);break g}d=d+N(h,136)|0;c=H[d+56>>2];f=H[d+60>>2];H[e>>2]=-1;Ab(d+116|0,f-c>>2,e);c=ra(80);f=H[a+8>>2];H[c+12>>2]=0;H[c+16>>2]=0;H[c>>2]=12e3;H[c+4>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+76>>2]=0;i=d+104|0;H[c+72>>2]=i;H[c+68>>2]=f;H[c- -64>>2]=0;g=c+56|0;H[g>>2]=0;H[g+4>>2]=0;H[c+8>>2]=10904;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;j=e+24|0;H[j>>2]=0;H[j+4>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e+56>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e>>2]=10904;l=d+4|0;H[e+4>>2]=l;d=H[d+68>>2];k=H[d>>2];d=H[d+4>>2];F[e+63|0]=0;k=(d-k>>2>>>0)/3|0;d=e+63|0;Ta(j,k,d);j=H[e+4>>2];k=H[j+56>>2];j=H[j+52>>2];F[e+63|0]=0;Ta(e+36|0,k-j>>2,d);H[e+20>>2]=c;H[e+16>>2]=f;H[e+12>>2]=i;H[e+8>>2]=l;H[c+76>>2]=a+72;sc(c+8|0,e);Sb(g,H[e+48>>2],H[e+52>>2]);H[e>>2]=10904;d=H[e+48>>2];if(d){H[e+52>>2]=d;qa(d)}H[e>>2]=11156;d=H[e+36>>2];if(d){qa(d)}d=H[e+24>>2];if(d){qa(d)}d=0;break f}c=Nf(a,c)}if(c){break f}c=0;break c}H[((h|0)==-1?a+68|0:(H[a+172>>2]+N(h,136)|0)+132|0)>>2]=d;i=Hc(ra(76),c,b);b=H[a+188>>2];l:{if((b|0)!=H[a+192>>2]){H[b>>2]=h;H[a+188>>2]=b+4;break l}c=H[a+184>>2];d=b-c|0;g=d>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=d>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=ra(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=h;if((d|0)>0){sa(b,c,d)}H[a+192>>2]=b+(f<<2);H[a+188>>2]=g+4;H[a+184>>2]=b;if(!c){break l}qa(c)}a=fa[H[H[a>>2]+40>>2]](a)|0;H[e>>2]=i;b=H[a+12>>2];m:{if(b>>>0>2]){H[e>>2]=0;H[b>>2]=i;H[a+12>>2]=b+4;break m}rc(a+8|0,e)}a=H[e>>2];H[e>>2]=0;if(a){fa[H[H[a>>2]+4>>2]](a)}c=1}da=e- -64|0;return c|0}ua();X()}wa(1604);X()}function $i(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=da+-64|0;da=e;a:{b:{c:{d:{if(!I[a+352|0]){break d}c=1;h=fa[H[H[a>>2]+40>>2]](a)|0;if((H[h+12>>2]-H[h+8>>2]|0)<=0){break d}Pf(H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;f=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];i=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;d=H[a+172>>2];c=H[a+176>>2]-d|0;e:{if(!c){break e}c=(c|0)/136|0;g=c>>>0>1?c:1;c=0;while(1){if(H[d+N(c,136)>>2]==(b|0)){h=c;break e}c=c+1|0;if((g|0)!=(c|0)){continue}break}}f:{g:{h:{i:{j:{k:{if(!I[a+352|0]){c=H[i+56>>2];if(!(!c|!f)&(!I[(d+N(h,136)|0)+28|0]|(f|0)!=1)){break i}if(c){break k}}c=a+40|0;break j}c=H[a+12>>2];f=H[c+28>>2];c=H[c+24>>2];H[e>>2]=-1;k=d;d=N(h,136);g=k+d|0;Ab(g+116|0,f-c>>2,e);F[(d+H[a+172>>2]|0)+100|0]=0;c=g+104|0}d=0;if(fb(H[(fa[H[H[a>>2]+40>>2]](a)|0)+48>>2])|H[i+56>>2]){break h}if(!I[a+352|0]){d=1;c=uc(a,c);break g}d=H[a+8>>2];f=H[d+12>>2]-H[d+8>>2]|0;d=(f|0)<5;if((f|0)>4){break h}c=uc(a,c);break g}d=d+N(h,136)|0;c=H[d+56>>2];f=H[d+60>>2];H[e>>2]=-1;Ab(d+116|0,f-c>>2,e);c=ra(80);f=H[a+8>>2];H[c+12>>2]=0;H[c+16>>2]=0;H[c>>2]=12e3;H[c+4>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+76>>2]=0;i=d+104|0;H[c+72>>2]=i;H[c+68>>2]=f;H[c- -64>>2]=0;g=c+56|0;H[g>>2]=0;H[g+4>>2]=0;H[c+8>>2]=10904;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;j=e+24|0;H[j>>2]=0;H[j+4>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e+56>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e>>2]=10904;l=d+4|0;H[e+4>>2]=l;d=H[d+68>>2];k=H[d>>2];d=H[d+4>>2];F[e+63|0]=0;k=(d-k>>2>>>0)/3|0;d=e+63|0;Ta(j,k,d);j=H[e+4>>2];k=H[j+56>>2];j=H[j+52>>2];F[e+63|0]=0;Ta(e+36|0,k-j>>2,d);H[e+20>>2]=c;H[e+16>>2]=f;H[e+12>>2]=i;H[e+8>>2]=l;H[c+76>>2]=a+72;sc(c+8|0,e);Sb(g,H[e+48>>2],H[e+52>>2]);H[e>>2]=10904;d=H[e+48>>2];if(d){H[e+52>>2]=d;qa(d)}H[e>>2]=11156;d=H[e+36>>2];if(d){qa(d)}d=H[e+24>>2];if(d){qa(d)}d=0;break f}c=Nf(a,c)}if(c){break f}c=0;break c}H[((h|0)==-1?a+68|0:(H[a+172>>2]+N(h,136)|0)+132|0)>>2]=d;i=Hc(ra(76),c,b);b=H[a+188>>2];l:{if((b|0)!=H[a+192>>2]){H[b>>2]=h;H[a+188>>2]=b+4;break l}c=H[a+184>>2];d=b-c|0;g=d>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=d>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=ra(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=h;if((d|0)>0){sa(b,c,d)}H[a+192>>2]=b+(f<<2);H[a+188>>2]=g+4;H[a+184>>2]=b;if(!c){break l}qa(c)}a=fa[H[H[a>>2]+40>>2]](a)|0;H[e>>2]=i;b=H[a+12>>2];m:{if(b>>>0>2]){H[e>>2]=0;H[b>>2]=i;H[a+12>>2]=b+4;break m}rc(a+8|0,e)}a=H[e>>2];H[e>>2]=0;if(a){fa[H[H[a>>2]+4>>2]](a)}c=1}da=e- -64|0;return c|0}ua();X()}wa(1604);X()}function Xb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=da-16|0;da=j;H[a+124>>2]=H[a+124>>2]+1;h=-1;d=H[a+120>>2];c=-1;a:{if((d|0)==-1){break a}c=d+1|0;h=(c>>>0)%3|0?c:d-2|0;c=d-1|0;if((d>>>0)%3|0){break a}c=d+2|0}f=H[a+104>>2];e=H[a+92>>2];g=e+(h<<2)|0;k=f+(H[g>>2]<<2)|0;i=H[k>>2];b:{c:{switch(b|0){case 0:case 1:H[k>>2]=i-1;d=(H[(c<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;if((b|0)!=1){break b}d:{if((c|0)==-1){g=a- -64|0;d=1;break d}g=a- -64|0;d=1;c=H[H[H[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}while(1){e:{e=H[g>>2];if(fa[H[H[e>>2]+36>>2]](e,(c>>>0)/3|0)|0){break e}e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;if((c|0)==-1){d=d+1|0;break e}d=d+1|0;c=H[H[H[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}}break}f=H[a+104>>2];e=H[a+92>>2]}H[(H[(H[a+120>>2]<<2)+e>>2]<<2)+f>>2]=d;f:{if((h|0)==-1){e=1;break f}e=1;c=H[H[H[a+88>>2]+12>>2]+(h<<2)>>2];if((c|0)==-1){break f}f=H[a+108>>2]-f>>2;while(1){d=H[g>>2];h=(c>>>0)/3|0;if(fa[H[H[d>>2]+36>>2]](d,h)|0){break f}d=c+1|0;H[H[a+92>>2]+(((d>>>0)%3|0?d:c-2|0)<<2)>>2]=f;d=H[a+88>>2];g:{if((N(h,3)|0)!=(c|0)){c=c-1|0;break g}c=c+2|0;if((c|0)!=-1){break g}e=e+1|0;break f}e=e+1|0;c=H[H[d+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}break}}H[j+12>>2]=e;h:{c=H[a+108>>2];f=H[a+112>>2];if(c>>>0>>0){H[c>>2]=H[j+12>>2];H[a+108>>2]=c+4;break h}i:{e=H[a+104>>2];d=c-e|0;h=d>>2;c=h+1|0;if(c>>>0<1073741824){f=f-e|0;g=f>>1;f=f>>2>>>0<536870911?c>>>0>g>>>0?c:g:1073741823;if(f){if(f>>>0>=1073741824){break i}c=ra(f<<2)}else{c=0}h=c+(h<<2)|0;H[h>>2]=H[j+12>>2];if((d|0)>0){sa(c,e,d)}H[a+112>>2]=c+(f<<2);H[a+108>>2]=h+4;H[a+104>>2]=c;if(e){qa(e)}break h}ua();X()}wa(1604);X()}break b;case 7:d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-2;break b;case 3:d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-1;break b;case 5:break c;default:break b}}d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-2}j:{k:{c=H[a+116>>2];l:{if((c|0)==-1){break l}h=H[(c<<2)+11200>>2];c=H[a+132>>2];d=(c|0)<(i|0)?c:i;c=H[a+128>>2];e=H[a+136>>2]+N((c|0)>(i|0)?0:d-c|0,12)|0;c=H[e+4>>2];d=H[e+8>>2];if(c>>>0>>0){H[c>>2]=h;H[e+4>>2]=c+4;break l}f=H[e>>2];i=c-f|0;g=i>>2;c=g+1|0;if(c>>>0>=1073741824){break k}d=d-f|0;k=d>>1;d=d>>2>>>0<536870911?c>>>0>k>>>0?c:k:1073741823;if(d){if(d>>>0>=1073741824){break j}c=ra(d<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=h;if((i|0)>0){sa(c,f,i)}H[e>>2]=c;H[e+4>>2]=g+4;H[e+8>>2]=c+(d<<2);if(!f){break l}qa(f)}H[a+116>>2]=b;da=j+16|0;return}ua();X()}wa(1604);X()}function Vf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=a+4|0;if((e|0)!=(b|0)){Tb(e,H[b>>2],b+4|0);c=H[b+12>>2];l=b+16|0;e=0;g=a+16|0;a:{if(!H[g+8>>2]){break a}f=H[g>>2];k=g+4|0;H[g>>2]=k;H[H[g+4>>2]+8>>2]=0;H[g+4>>2]=0;H[g+8>>2]=0;d=H[f+4>>2];h=d?d:f;if(!h){rb(g,h);break a}f=H[h+8>>2];b:{if(!f){break b}d=H[f>>2];if((h|0)==(d|0)){H[f>>2]=0;d=H[f+4>>2];if(!d){e=f;break b}while(1){e=d;d=H[d>>2];if(d){continue}d=H[e+4>>2];if(d){continue}break}break b}H[f+4>>2]=0;if(!d){e=f;break b}while(1){e=d;d=H[d>>2];if(d){continue}d=H[e+4>>2];if(d){continue}break}}c:{if((c|0)==(l|0)){f=h;break c}i=c;while(1){f=e;H[h+16>>2]=H[i+16>>2];if((h|0)!=(i|0)){Tb(h+20|0,H[i+20>>2],i+24|0)}d:{c=H[k>>2];if(!c){c=k;d=c;break d}e=H[h+16>>2];while(1){e:{if((e|0)>2]){d=H[c>>2];if(d){break e}d=c;break d}d=H[c+4>>2];if(d){break e}d=c+4|0;break d}c=d;continue}}H[h+8>>2]=c;H[h>>2]=0;H[h+4>>2]=0;H[d>>2]=h;e=H[H[g>>2]>>2];if(e){H[g>>2]=e;h=H[d>>2]}xb(H[g+4>>2],h);H[g+8>>2]=H[g+8>>2]+1;e=0;f:{if(!f){break f}d=H[f+8>>2];if(!d){break f}c=H[d>>2];if((f|0)==(c|0)){H[d>>2]=0;c=H[d+4>>2];if(!c){e=d;break f}while(1){e=c;c=H[c>>2];if(c){continue}c=H[e+4>>2];if(c){continue}break}break f}H[d+4>>2]=0;if(!c){e=d;break f}while(1){e=c;c=H[c>>2];if(c){continue}c=H[e+4>>2];if(c){continue}break}}d=H[i+4>>2];g:{if(!d){c=H[i+8>>2];if(H[c>>2]==(i|0)){break g}h=i+8|0;while(1){d=H[h>>2];h=d+8|0;c=H[d+8>>2];if((d|0)!=H[c>>2]){continue}break}break g}while(1){c=d;d=H[c>>2];if(d){continue}break}}if(!f){break c}i=c;h=f;if((c|0)!=(l|0)){continue}break}}rb(g,f);if(!e){break a}while(1){d=H[e+8>>2];if(d){e=d;continue}break}rb(g,e)}if((c|0)!=(l|0)){while(1){k=da-16|0;da=k;j=ra(32);f=c;c=c+16|0;e=H[c>>2];m=j+24|0;H[m>>2]=0;H[m+4>>2]=0;H[j+16>>2]=e;h=j+20|0;H[h>>2]=m;e=H[c+4>>2];i=c+8|0;if((e|0)!=(i|0)){while(1){d=e;c=d+16|0;_f(k+8|0,h,m,c,c);c=H[d+4>>2];h:{if(!c){e=H[d+8>>2];if((d|0)==H[e>>2]){break h}c=d+8|0;while(1){d=H[c>>2];c=d+8|0;e=H[d+8>>2];if((d|0)!=H[e>>2]){continue}break}break h}while(1){e=c;c=H[c>>2];if(c){continue}break}}if((e|0)!=(i|0)){continue}break}}c=H[g+4>>2];i:{j:{if(c){d=H[j+16>>2];while(1){k:{if((d|0)>2]){e=H[c>>2];if(!e){break j}break k}e=H[c+4>>2];if(e){break k}e=c+4|0;break i}c=e;continue}}c=g+4|0}e=c}H[j+8>>2]=c;H[j>>2]=0;H[j+4>>2]=0;H[e>>2]=j;c=H[H[g>>2]>>2];if(c){H[g>>2]=c;j=H[e>>2]}xb(H[g+4>>2],j);H[g+8>>2]=H[g+8>>2]+1;da=k+16|0;d=H[f+4>>2];l:{if(!d){c=H[f+8>>2];if((f|0)==H[c>>2]){break l}e=f+8|0;while(1){d=H[e>>2];e=d+8|0;c=H[d+8>>2];if((d|0)!=H[c>>2]){continue}break}break l}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(l|0)){continue}break}}Tb(a+28|0,H[b+24>>2],b+28|0)}}function lc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=H[b+4>>2];a:{if(!c){d=H[b+8>>2];if(H[d>>2]==(b|0)){break a}e=b+8|0;while(1){c=H[e>>2];e=c+8|0;d=H[c+8>>2];if((c|0)!=H[d>>2]){continue}break}break a}while(1){d=c;c=H[c>>2];if(c){continue}break}}if(H[a>>2]==(b|0)){H[a>>2]=d}H[a+8>>2]=H[a+8>>2]-1;d=H[a+4>>2];f=b;b:{c:{c=H[b>>2];if(c){a=H[f+4>>2];if(!a){break c}while(1){b=a;a=H[a>>2];if(a){continue}break}}c=H[b+4>>2];if(c){break c}c=0;e=1;break b}H[c+8>>2]=H[b+8>>2];e=0}g=H[b+8>>2];a=H[g>>2];d:{if((b|0)==(a|0)){H[g>>2]=c;if((b|0)==(d|0)){a=0;d=c;break d}a=H[g+4>>2];break d}H[g+4>>2]=c}h=!I[b+12|0];if((b|0)!=(f|0)){g=H[f+8>>2];H[b+8>>2]=g;H[g+(((f|0)!=H[H[f+8>>2]>>2])<<2)>>2]=b;g=H[f>>2];H[b>>2]=g;H[g+8>>2]=b;g=H[f+4>>2];H[b+4>>2]=g;if(g){H[g+8>>2]=b}F[b+12|0]=I[f+12|0];d=(d|0)==(f|0)?b:d}e:{if(h|!d){break e}if(e){while(1){b=I[a+12|0];f:{e=H[a+8>>2];if(H[e>>2]!=(a|0)){if(!b){F[a+12|0]=1;F[e+12|0]=0;c=H[e+4>>2];b=H[c>>2];H[e+4>>2]=b;if(b){H[b+8>>2]=e}H[c+8>>2]=H[e+8>>2];b=H[e+8>>2];H[(((e|0)!=H[b>>2])<<2)+b>>2]=c;H[c>>2]=e;H[e+8>>2]=c;b=a;a=H[a>>2];d=(a|0)==(d|0)?b:d;a=H[a+4>>2]}g:{h:{b=H[a>>2];i:{if(!(I[b+12|0]?0:b)){c=H[a+4>>2];if(I[c+12|0]?0:c){break i}F[a+12|0]=0;a=H[a+8>>2];j:{if((d|0)==(a|0)){a=d;break j}if(I[a+12|0]){break f}}F[a+12|0]=1;break e}c=H[a+4>>2];if(!c){break h}}if(I[c+12|0]){break h}b=a;break g}F[b+12|0]=1;F[a+12|0]=0;c=H[b+4>>2];H[a>>2]=c;if(c){H[c+8>>2]=a}H[b+8>>2]=H[a+8>>2];c=H[a+8>>2];H[((H[c>>2]!=(a|0))<<2)+c>>2]=b;H[b+4>>2]=a;H[a+8>>2]=b;c=a}d=H[b+8>>2];F[b+12|0]=I[d+12|0];F[d+12|0]=1;F[c+12|0]=1;b=H[d+4>>2];a=H[b>>2];H[d+4>>2]=a;if(a){H[a+8>>2]=d}H[b+8>>2]=H[d+8>>2];a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b>>2]=d;H[d+8>>2]=b;break e}if(!b){F[a+12|0]=1;F[e+12|0]=0;b=H[a+4>>2];H[e>>2]=b;if(b){H[b+8>>2]=e}H[a+8>>2]=H[e+8>>2];b=H[e+8>>2];H[(((e|0)!=H[b>>2])<<2)+b>>2]=a;H[a+4>>2]=e;H[e+8>>2]=a;d=(d|0)==(e|0)?a:d;a=H[e>>2]}c=H[a>>2];k:{if(!(!c|I[c+12|0])){b=a;break k}b=H[a+4>>2];if(!(I[b+12|0]?0:b)){F[a+12|0]=0;a=H[a+8>>2];if((a|0)!=(d|0)?I[a+12|0]:0){break f}F[a+12|0]=1;break e}if(c){if(!I[c+12|0]){b=a;break k}b=H[a+4>>2]}F[b+12|0]=1;F[a+12|0]=0;c=H[b>>2];H[a+4>>2]=c;if(c){H[c+8>>2]=a}H[b+8>>2]=H[a+8>>2];c=H[a+8>>2];H[((H[c>>2]!=(a|0))<<2)+c>>2]=b;H[b>>2]=a;H[a+8>>2]=b;c=a}d=H[b+8>>2];F[b+12|0]=I[d+12|0];F[d+12|0]=1;F[c+12|0]=1;b=H[d>>2];a=H[b+4>>2];H[d>>2]=a;if(a){H[a+8>>2]=d}H[b+8>>2]=H[d+8>>2];a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b+4>>2]=d;H[d+8>>2]=b;break e}b=a;a=H[a+8>>2];a=H[(((b|0)==H[a>>2])<<2)+a>>2];continue}}F[c+12|0]=1}a=H[f+28>>2];if(a){H[f+32>>2]=a;qa(a)}if(F[f+27|0]<0){qa(H[f+16>>2])}qa(f)}function Ef(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=H[a+8>>2];c=H[a+4>>2];if((d-c|0)/136>>>0>=b>>>0){d=a;if(b){a=N(b,136)+c|0;while(1){H[c>>2]=-1;Ne(c+4|0);H[c+104>>2]=0;H[c+108>>2]=0;F[c+100|0]=1;H[c+112>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+128>>2]=0;c=c+136|0;if((a|0)!=(c|0)){continue}break}c=a}H[d+4>>2]=c;return}a:{b:{c:{f=H[a>>2];g=(c-f|0)/136|0;c=g+b|0;if(c>>>0<31580642){d=(d-f|0)/136|0;f=d<<1;f=d>>>0<15790320?c>>>0>f>>>0?c:f:31580641;if(f){if(f>>>0>=31580642){break c}e=ra(N(f,136))}d=N(g,136)+e|0;g=d+N(b,136)|0;c=d;while(1){H[c>>2]=-1;Ne(c+4|0);H[c+104>>2]=0;H[c+108>>2]=0;F[c+100|0]=1;H[c+112>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+128>>2]=0;c=c+136|0;if((g|0)!=(c|0)){continue}break}f=N(f,136)+e|0;b=H[a>>2];c=H[a+4>>2];if((b|0)==(c|0)){break b}while(1){d=d-136|0;c=c-136|0;H[d>>2]=H[c>>2];H[d+4>>2]=H[c+4>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=H[c+12>>2];H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[d+16>>2]=H[c+16>>2];H[d+20>>2]=H[c+20>>2];H[d+24>>2]=H[c+24>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;e=I[c+28|0];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;F[d+28|0]=e;H[d+32>>2]=H[c+32>>2];H[d+36>>2]=H[c+36>>2];H[d+40>>2]=H[c+40>>2];H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[d+52>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+44>>2]=H[c+44>>2];H[d+48>>2]=H[c+48>>2];H[d+52>>2]=H[c+52>>2];H[c+52>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;e=d- -64|0;H[e>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+56>>2]=H[c+56>>2];H[d+60>>2]=H[c+60>>2];h=e;e=c- -64|0;H[h>>2]=H[e>>2];H[e>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[d+68>>2]=H[c+68>>2];e=H[c+72>>2];H[d+84>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+72>>2]=e;H[d+76>>2]=H[c+76>>2];H[d+80>>2]=H[c+80>>2];H[d+84>>2]=H[c+84>>2];H[c+84>>2]=0;H[c+76>>2]=0;H[c+80>>2]=0;H[d+96>>2]=0;H[d+88>>2]=0;H[d+92>>2]=0;H[d+88>>2]=H[c+88>>2];H[d+92>>2]=H[c+92>>2];H[d+96>>2]=H[c+96>>2];H[c+96>>2]=0;H[c+88>>2]=0;H[c+92>>2]=0;e=I[c+100|0];H[d+112>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;F[d+100|0]=e;H[d+104>>2]=H[c+104>>2];H[d+108>>2]=H[c+108>>2];H[d+112>>2]=H[c+112>>2];H[c+112>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;H[d+124>>2]=0;H[d+116>>2]=0;H[d+120>>2]=0;H[d+116>>2]=H[c+116>>2];H[d+120>>2]=H[c+120>>2];H[d+124>>2]=H[c+124>>2];H[c+124>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[d+128>>2]=H[c+128>>2];H[d+132>>2]=H[c+132>>2];if((b|0)!=(c|0)){continue}break}H[a+8>>2]=f;c=H[a+4>>2];H[a+4>>2]=g;b=H[a>>2];H[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=H[c-20>>2];if(a){H[c-16>>2]=a;qa(a)}a=H[c-32>>2];if(a){H[c-28>>2]=a;qa(a)}Yb(c-132|0);c=c-136|0;if((c|0)!=(b|0)){continue}break}break a}ua();X()}wa(1604);X()}H[a+8>>2]=f;H[a+4>>2]=g;H[a>>2]=d}if(b){qa(b)}}function vf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(H[H[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=H[a+48>>2];H[a+52>>2]=c;a:{if((c|0)!=H[a+56>>2]){H[c>>2]=b;H[a+52>>2]=c+4;break a}e=ra(4);H[e>>2]=b;f=e+4|0;H[a+56>>2]=f;H[a+52>>2]=f;H[a+48>>2]=e;if(!c){break a}qa(c)}e=-1;f=H[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=H[H[f>>2]+(g<<2)>>2]}b:{h=b-N(d,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}d=H[H[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=H[a+36>>2];f=c+(e>>>3&536870908)|0;i=H[f>>2];j=1<>2]=i|j;qb(a+8|0,e,g);c=H[a+36>>2]}c=(d>>>3&536870908)+c|0;e=H[c>>2];f=1<>2]=e|f;qb(a+8|0,d,(h?-1:2)+b|0)}c=H[a+52>>2];if((c|0)==H[a+48>>2]){return 1}j=a+8|0;while(1){c=c-4|0;b=H[c>>2];d=(b>>>0)/3|0;c:{d:{if((b|0)==-1){break d}e=H[a+24>>2]+(d>>>3&268435452)|0;f=H[e>>2];d=1<>2]=d|f;while(1){d=H[a+4>>2];c=H[H[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=H[a+36>>2]+(c>>>3&536870908)|0;f=H[e>>2];g=1<>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=H[H[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}H[e>>2]=f|g;qb(j,c,b);break f}H[e>>2]=f|g;qb(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=H[H[H[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];h=c>>>5|0;d=H[e+(h<<2)>>2];break e}c=-1;f=H[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=H[H[f+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=H[H[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;d=(c>>>0)/3|0;k:{g=(c|0)==-1;if(!g){e=H[a+24>>2];g=g?-1:d;h=g>>>5|0;d=H[e+(h<<2)>>2];g=1<>2];h=f>>>5|0;d=H[e+(h<<2)>>2];if(!(g&d)){break e}}c=H[a+52>>2]-4|0;H[a+52>>2]=c;break c}if(i){b=c;break e}if(H[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=H[a+52>>2];H[d-4>>2]=b;if((d|0)!=H[a+56>>2]){H[d>>2]=c;c=d+4|0;break d}l:{b=d;d=H[a+48>>2];e=b-d|0;g=e>>2;b=g+1|0;if(b>>>0<1073741824){f=e>>1;f=g>>>0<536870911?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break l}b=ra(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;c=g+4|0;if((e|0)>0){sa(b,d,e)}H[a+56>>2]=b+(f<<2);H[a+52>>2]=c;H[a+48>>2]=b;if(!d){break c}qa(d);c=H[a+52>>2];break c}ua();X()}wa(1604);X()}H[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}H[a+52>>2]=c}if(H[a+48>>2]!=(c|0)){continue}break}}return 1}function Fd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){Fd(a,d,c);a=d+4|0;continue}Fd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}} -function zd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){zd(a,d,c);a=d+4|0;continue}zd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function yd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){yd(a,d,c);a=d+4|0;continue}yd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function xd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){xd(a,d,c);a=d+4|0;continue}xd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function wd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){wd(a,d,c);a=d+4|0;continue}wd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function vd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){vd(a,d,c);a=d+4|0;continue}vd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function ud(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){ud(a,d,c);a=d+4|0;continue}ud(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function td(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){td(a,d,c);a=d+4|0;continue}td(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function sd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){sd(a,d,c);a=d+4|0;continue}sd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function rd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){rd(a,d,c);a=d+4|0;continue}rd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function qd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){qd(a,d,c);a=d+4|0;continue}qd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function pd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){pd(a,d,c);a=d+4|0;continue}pd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function od(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){od(a,d,c);a=d+4|0;continue}od(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function Ed(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){Ed(a,d,c);a=d+4|0;continue}Ed(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function Dd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){Dd(a,d,c);a=d+4|0;continue}Dd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function Cd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){Cd(a,d,c);a=d+4|0;continue}Cd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function Bd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){Bd(a,d,c);a=d+4|0;continue}Bd(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function Ad(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:while(1){k=b-4|0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{d=b-a|0;e=d>>2;switch(e|0){case 5:break i;case 4:break j;case 3:break k;case 2:break l;case 0:case 1:break b;default:break h}}d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break g}k=d;d=H[a>>2];if(k>>>0<=d>>>0){break g}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break b}H[a>>2]=b;H[e>>2]=d;return}Da(a,a+4|0,b-4|0,c);return}Ua(a,a+4|0,a+8|0,b-4|0,c);return}Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);break b}if((d|0)<=123){Ya(a,b,c);return}l=((e|0)/2<<2)+a|0;m:{if(d>>>0>=3997){d=(e|0)/4<<2;d=Ea(a,d+a|0,l,d+l|0,k,c);break m}d=Da(a,l,k,c)}i=d;d=H[c>>2];j=H[d>>2];g=H[d+4>>2]-j>>3;d=H[a>>2];if(g>>>0<=d>>>0){break d}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=k;h=H[(d<<3)+j>>2];m=H[(e<<3)+j>>2];if(h>>>0>=m>>>0){while(1){f=f-4|0;if((f|0)==(a|0)){d=H[k>>2];if(d>>>0>=g>>>0){break d}e=a+4|0;if(h>>>0>2]){break e}if((e|0)==(k|0)){break b}while(1){f=H[e>>2];if(f>>>0>=g>>>0){break d}if(h>>>0>2]){H[e>>2]=d;H[k>>2]=f;e=e+4|0;break e}e=e+4|0;if((k|0)!=(e|0)){continue}break}break b}e=H[f>>2];if(e>>>0>=g>>>0){break d}if(m>>>0<=K[(e<<3)+j>>2]){continue}break}H[a>>2]=e;H[f>>2]=d;i=i+1|0}d=a+4|0;if(f>>>0<=d>>>0){break f}h=H[d>>2];if(h>>>0>=g>>>0){break d}while(1){e=H[l>>2];if(e>>>0>=g>>>0){break d}m=H[(e<<3)+j>>2];e=d;while(1){if(m>>>0>K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;d=H[f>>2];if(d>>>0>=g>>>0){break d}if(m>>>0<=K[(d<<3)+j>>2]){continue}break}if(e>>>0>f>>>0){d=e;break f}H[e>>2]=d;H[f>>2]=h;l=(e|0)==(l|0)?f:l;d=e+4|0;i=i+1|0;h=H[e+4>>2];if(h>>>0>>0){continue}break}break d}xa();X()}n:{if((d|0)==(l|0)){break n}e=H[l>>2];if(e>>>0>=g>>>0){break d}f=H[d>>2];if(f>>>0>=g>>>0){break d}if(K[(e<<3)+j>>2]>=K[(f<<3)+j>>2]){break n}H[d>>2]=e;H[l>>2]=f;i=i+1|0}if(!i){i=Ga(a,d,c);e=d+4|0;if(Ga(e,b,c)){b=d;if(!i){continue a}break b}f=2;if(i){break c}}if((d-a|0)<(b-d|0)){Ad(a,d,c);a=d+4|0;continue}Ad(d+4|0,b,c);b=d;continue a}if((e|0)==(k|0)){break b}f=k;d=H[a>>2];if(g>>>0<=d>>>0){break d}while(1){h=H[e>>2];if(h>>>0>=g>>>0){break d}d=H[(d<<3)+j>>2];while(1){if(d>>>0>=K[(h<<3)+j>>2]){h=H[e+4>>2];e=e+4|0;if(g>>>0>h>>>0){continue}break d}break}while(1){f=f-4|0;i=H[f>>2];if(i>>>0>=g>>>0){break d}if(d>>>0>2]){continue}break}if(e>>>0>=f>>>0){f=4;break c}H[e>>2]=i;H[f>>2]=h;e=e+4|0;d=H[a>>2];if(g>>>0>d>>>0){continue}break}}xa();X()}a=e;if((f|0)==4|(f|0)==2){continue}}break}break}}function Le(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=da+-64|0;da=e;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+48>>2]=1065353216;c=H[a+80>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}f=c<<2;k=ra(f);H[e+16>>2]=k;c=f+k|0;H[e+24>>2]=c;ta(k,0,f);H[e+20>>2]=c;while(1){c=H[H[b>>2]>>2];j=H[b+48>>2]+Rk(H[b+40>>2],H[b+44>>2],i,0)|0;c=c+j|0;n=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[e+28>>2]=n;c:{d:{e:{if(!g){break e}d=H[e+32>>2];j=n^318;l=Uk(g)>>>0>1;c=j&g-1;f:{if(!l){break f}c=j;if(c>>>0>>0){break f}c=(j>>>0)%(g>>>0)|0}f=c;c=H[d+(f<<2)>>2];if(!c){break e}d=H[c>>2];if(!d){break e}if(!l){l=g-1|0;while(1){c=H[d+4>>2];g:{if((c|0)!=(j|0)){if((f|0)==(c&l)){break g}break e}if((n|0)==H[d+8>>2]){break d}}d=H[d>>2];if(d){continue}break}break e}while(1){c=H[d+4>>2];h:{if((c|0)!=(j|0)){if(c>>>0>=g>>>0){c=(c>>>0)%(g>>>0)|0}if((c|0)==(f|0)){break h}break e}if((n|0)==H[d+8>>2]){break d}}d=H[d>>2];if(d){continue}break}}H[e+12>>2]=m;H[e+8>>2]=n;c=e+8|0;Fe(e+56|0,e+32|0,c,c);c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,m)|0,e+28|0,c);k=H[e+16>>2];H[k+(i<<2)>>2]=m;m=m+1|0;break c}H[(i<<2)+k>>2]=H[d+12>>2]}c=i+1|0;h=c?h:h+1|0;i=c;d=H[a+80>>2];if(!h&d>>>0>c>>>0){g=H[e+36>>2];continue}break}if((d|0)==(m|0)){break b}i:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break i}i=H[e+16>>2];b=b>>2;b=b>>>0>1?b:1;c=b&3;j=0;d=0;if(b-1>>>0>=3){h=b&-4;k=0;while(1){f=d<<2;b=f+l|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|4)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|8)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|12)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];d=d+4|0;k=k+4|0;if((h|0)!=(k|0)){continue}break}}if(!c){break i}while(1){b=l+(d<<2)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];d=d+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}break i}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;j:{if(b>>>0>>0){Na(a+68|0,d-b|0,2204);g=H[a+68>>2];d=H[a+80>>2];break j}if(b>>>0<=d>>>0){break j}H[a+72>>2]=(d<<2)+g}if(!d){break i}i=H[e+16>>2];j=0;b=0;if(d-1>>>0>=3){c=d&-4;k=0;while(1){f=b<<2;H[f+g>>2]=H[i+f>>2];h=f|4;H[h+g>>2]=H[i+h>>2];h=f|8;H[h+g>>2]=H[i+h>>2];h=f|12;H[h+g>>2]=H[i+h>>2];b=b+4|0;k=k+4|0;if((c|0)!=(k|0)){continue}break}}c=d&3;if(!c){break i}while(1){h=b<<2;H[h+g>>2]=H[i+h>>2];b=b+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}H[a+80>>2]=m}a=H[e+16>>2];if(a){qa(a)}d=H[e+40>>2];if(d){while(1){a=H[d>>2];qa(d);d=a;if(d){continue}break}}a=H[e+32>>2];H[e+32>>2]=0;if(a){qa(a)}da=e- -64|0;return m}ua();X()}function Dk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=da-16|0;da=l;a:{f=H[a+4>>2];b:{c:{if(f){if(fa[H[H[a>>2]+52>>2]](a,b,H[H[f+4>>2]+80>>2])|0){break c}break b}if(!(fa[H[H[a>>2]+52>>2]](a,b,0)|0)){break b}}n=1;if(!I[a+28|0]){break b}d=H[a+32>>2];i=H[a+8>>2];c=H[i+80>>2];f=0;H[l+8>>2]=0;H[l>>2]=0;H[l+4>>2]=0;if(c){if(c>>>0>=1073741824){break a}c=c<<2;f=ra(c);H[l>>2]=f;e=c+f|0;H[l+8>>2]=e;ta(f,0,c);H[l+4>>2]=e}e=H[b>>2];b=H[b+4>>2]-e|0;d:{if(!b){break d}b=b>>2;if(I[i+84|0]){c=b>>>0>1?b:1;h=c&3;b=0;if(c-1>>>0>=3){j=c&-4;c=0;while(1){H[(H[e+(b<<2)>>2]<<2)+f>>2]=b;k=b|1;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;k=b|2;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;k=b|3;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;b=b+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}if(!h){break d}while(1){H[(H[e+(b<<2)>>2]<<2)+f>>2]=b;b=b+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}break d}g=b>>>0>1?b:1;j=g&3;h=H[i+68>>2];c=0;b=0;if(g-1>>>0>=3){k=g&-4;g=0;while(1){H[(H[h+(H[e+(b<<2)>>2]<<2)>>2]<<2)+f>>2]=b;m=b|1;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;m=b|2;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;m=b|3;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;b=b+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}if(!j){break d}while(1){H[(H[h+(H[e+(b<<2)>>2]<<2)>>2]<<2)+f>>2]=b;b=b+1|0;c=c+1|0;if((j|0)!=(c|0)){continue}break}}e:{if(!I[d+84|0]){break e}b=H[H[H[a+4>>2]+4>>2]+80>>2];F[d+84|0]=0;e=H[d+68>>2];c=H[d+72>>2]-e>>2;if(c>>>0>>0){Na(d+68|0,b-c|0,2764);break e}if(b>>>0>=c>>>0){break e}H[d+72>>2]=e+(b<<2)}h=H[H[H[a+4>>2]+4>>2]+80>>2];f:{if(!h){break f}e=H[d+68>>2];if(I[i+84|0]){a=0;b=0;if(h-1>>>0>=3){g=h&-4;c=0;while(1){d=b<<2;H[d+e>>2]=H[f+d>>2];i=d|4;H[i+e>>2]=H[f+i>>2];i=d|8;H[i+e>>2]=H[f+i>>2];d=d|12;H[d+e>>2]=H[f+d>>2];b=b+4|0;c=c+4|0;if((g|0)!=(c|0)){continue}break}}c=h&3;if(!c){break f}while(1){d=b<<2;H[d+e>>2]=H[f+d>>2];b=b+1|0;a=a+1|0;if((c|0)!=(a|0)){continue}break}break f}a=H[i+68>>2];c=0;b=0;if(h-1>>>0>=3){i=h&-4;g=0;while(1){d=b<<2;H[d+e>>2]=H[(H[a+d>>2]<<2)+f>>2];j=d|4;H[j+e>>2]=H[(H[a+j>>2]<<2)+f>>2];j=d|8;H[j+e>>2]=H[(H[a+j>>2]<<2)+f>>2];d=d|12;H[d+e>>2]=H[(H[a+d>>2]<<2)+f>>2];b=b+4|0;g=g+4|0;if((i|0)!=(g|0)){continue}break}}d=h&3;if(!d){break f}while(1){g=b<<2;H[g+e>>2]=H[(H[a+g>>2]<<2)+f>>2];b=b+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}a=H[l>>2];if(!a){break b}qa(a)}da=l+16|0;return n|0}ua();X()}function Wc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=da-32|0;da=i;H[a+4>>2]=0;H[a+8>>2]=0;c=a+16|0;H[c>>2]=0;H[c+4>>2]=0;l=a+4|0;H[a>>2]=l;H[a+12>>2]=c;c=H[b>>2];k=b+4|0;if((c|0)!=(k|0)){while(1){f=da-16|0;da=f;g=c;c=c+16|0;h=Zf(a,l,f+12|0,f+8|0,c);d=H[h>>2];if(d){c=0}else{d=ra(40);e=d+16|0;a:{if(F[c+11|0]>=0){m=H[c+4>>2];H[e>>2]=H[c>>2];H[e+4>>2]=m;H[e+8>>2]=H[c+8>>2];break a}La(e,H[c>>2],H[c+4>>2])}H[d+36>>2]=0;e=d+28|0;H[e>>2]=0;H[e+4>>2]=0;hb(e,H[c+16>>2]-H[c+12>>2]|0);j=H[e>>2];e=H[c+12>>2];sa(j,e,H[c+16>>2]-e|0);H[d+8>>2]=H[f+12>>2];H[d>>2]=0;H[d+4>>2]=0;H[h>>2]=d;c=H[H[a>>2]>>2];if(c){H[a>>2]=c;c=H[h>>2]}else{c=d}xb(H[a+4>>2],c);H[a+8>>2]=H[a+8>>2]+1;c=1}F[i+28|0]=c;H[i+24>>2]=d;da=f+16|0;d=H[g+4>>2];b:{if(!d){c=H[g+8>>2];if((g|0)==H[c>>2]){break b}d=g+8|0;while(1){g=H[d>>2];d=g+8|0;c=H[g+8>>2];if((g|0)!=H[c>>2]){continue}break}break b}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(k|0)){continue}break}}c=H[b+12>>2];m=b+16|0;if((c|0)!=(m|0)){f=a+12|0;while(1){g=c;n=ra(24);Wc(n,H[c+28>>2]);b=c+16|0;H[i+16>>2]=b;a=H[f+4>>2];c:{d:{if(a){c=I[b+11|0];d=c<<24>>24<0;e=d?H[b>>2]:b;d=d?H[b+4>>2]:c;b=f+4|0;while(1){c=I[a+27|0];h=c<<24>>24<0;c=h?H[a+20>>2]:c;l=c>>>0>>0;e:{f:{g:{h:{i:{k=l?c:d;j:{if(k){j=a+16|0;h=h?H[j>>2]:j;j=Ca(e,h,k);if(!j){if(c>>>0>d>>>0){break j}break i}if((j|0)>=0){break i}break j}if(c>>>0<=d>>>0){break h}}c=H[a>>2];if(c){break e}break d}c=Ca(h,e,k);if(c){break g}}if(l){break f}break c}if((c|0)>=0){break c}}b=a+4|0;c=H[a+4>>2];if(!c){break c}a=b}b=a;a=c;continue}}a=f+4|0}b=a}c=H[b>>2];if(c){a=0}else{c=ra(32);e=c+16|0;d=H[i+16>>2];k:{if(F[d+11|0]>=0){h=H[d+4>>2];H[e>>2]=H[d>>2];H[e+4>>2]=h;H[e+8>>2]=H[d+8>>2];break k}La(e,H[d>>2],H[d+4>>2])}H[c+8>>2]=a;H[c>>2]=0;H[c+4>>2]=0;H[c+28>>2]=0;H[b>>2]=c;a=H[H[f>>2]>>2];if(a){H[f>>2]=a;a=H[b>>2]}else{a=c}xb(H[f+4>>2],a);H[f+8>>2]=H[f+8>>2]+1;a=1}F[i+28|0]=a;H[i+24>>2]=c;b=H[i+24>>2];a=H[b+28>>2];H[b+28>>2]=n;if(a){pb(a+12|0,H[a+16>>2]);ob(a,H[a+4>>2]);qa(a)}d=H[g+4>>2];l:{if(!d){c=H[g+8>>2];if((g|0)==H[c>>2]){break l}d=g+8|0;while(1){a=H[d>>2];d=a+8|0;c=H[a+8>>2];if((a|0)!=H[c>>2]){continue}break}break l}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(m|0)){continue}break}}da=i+32|0}function mj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=da-16|0;da=h;b=H[a+64>>2];a:{if(!b){break a}i=fa[H[H[b>>2]+32>>2]](b)|0;if(!i){break a}m=(H[i+28>>2]-H[i+24>>2]>>2)-H[i+44>>2]|0;b=H[a+56>>2];d=H[b+8>>2];b:{if((H[b+12>>2]-d|0)<5){break b}H[h+8>>2]=0;H[h>>2]=0;H[h+4>>2]=0;c:{d:{while(1){e:{f:{if(!H[H[(c<<2)+d>>2]+56>>2]){break f}j=fa[H[H[a>>2]+56>>2]](a,c)|0;if(!j){break f}if(H[h+8>>2]!=(e|0)){H[e>>2]=j;e=e+4|0;H[h+4>>2]=e;break f}d=H[h>>2];f=e-d|0;e=f>>2;b=e+1|0;if(b>>>0>=1073741824){break e}g=f>>1;g=e>>>0<536870911?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break d}b=ra(g<<2)}else{b=0}e=b+(e<<2)|0;H[e>>2]=j;e=e+4|0;if((f|0)>0){sa(b,d,f)}H[h+8>>2]=b+(g<<2);H[h+4>>2]=e;H[h>>2]=b;if(!d){break f}qa(d)}l=H[a+56>>2];d=H[l+8>>2];c=c+1|0;if((c|0)>2]-d>>2){continue}break c}break}ua();X()}wa(1604);X()}j=H[h>>2];o=H[i+24>>2];b=H[i+28>>2]-o|0;if(b){b=b>>2;q=b>>>0>1?b:1;p=e-j|0;b=p>>2;r=b>>>0>1?b:1;while(1){f=H[(n<<2)+o>>2];if((f|0)!=-1){g:{if((f|0)<0){c=(f>>>0)%3|0;b=-1;break g}b=(f>>>0)/3|0;c=f-N(b,3)|0;b=H[(H[l+96>>2]+N(b,12)|0)+(c<<2)>>2]}h:{i:{if(c){c=f-1|0;break i}c=f+2|0;if((c|0)!=-1){break i}g=0;break h}g=0;c=H[H[i+12>>2]+(c<<2)>>2];if((c|0)==-1){break h}j:{if((c>>>0)%3|0){d=c-1|0;break j}d=c+2|0;if((d|0)==-1){break h}}e=f;while(1){c=(d|0)<0?-1:H[(H[l+96>>2]+N((d>>>0)/3|0,12)|0)+((d>>>0)%3<<2)>>2];k:{if((b|0)==(c|0)){c=0;if(!p){c=b;break k}l:{while(1){k=H[H[(c<<2)+j>>2]+28>>2];if(H[k+(d<<2)>>2]!=H[k+(e<<2)>>2]){break l}c=c+1|0;if((r|0)!=(c|0)){continue}break}c=b;break k}c=b}g=g+1|0}if((d|0)==(f|0)|(d|0)==-1){break h}m:{if((d>>>0)%3|0){e=d-1|0;break m}e=d+2|0;if((e|0)==-1){break h}}k=H[H[i+12>>2]+(e<<2)>>2];if((k|0)==-1){break h}b=c;e=d;c=k+((k>>>0)%3|0?-1:2)|0;d=c;if((c|0)!=-1){continue}break}}c=1;b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;n:{if((b|0)==-1){break n}b=H[H[i+12>>2]+(b<<2)>>2];if((b|0)==-1){break n}c=b+1|0;c=(((c>>>0)%3|0?c:b-2|0)|0)==-1}m=(g+m|0)-((c^-1)&(g|0)!=0)|0}n=n+1|0;if((q|0)!=(n|0)){continue}break}}if(!j){break b}qa(j)}H[a+52>>2]=m}da=h+16|0}function ce(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=da-128|0;da=j;a:{b:{c:{if(!Kb(f,g,h,i,0,0,0,0)){break c}m=i&65535;n=i>>>16&32767;d:{e:{if((n|0)!=32767){l=4;if(n){break e}l=f|h|(g|m)?3:2;break d}l=!(f|h|(g|m))}}if(!l){break c}r=e>>>16|0;o=r&32767;if((o|0)!=32767){break b}}Ka(j+16|0,b,c,d,e,f,g,h,i);e=H[j+16>>2];d=H[j+20>>2];c=H[j+24>>2];b=H[j+28>>2];oe(j,e,d,c,b,e,d,c,b);d=H[j+8>>2];e=H[j+12>>2];h=H[j>>2];i=H[j+4>>2];break a}m=e&65535|o<<16;p=m;l=d;m=h;q=i>>>16&32767;k=i&65535|q<<16;if((Kb(b,c,l,p,f,g,h,k)|0)<=0){if(Kb(b,c,l,p,f,g,m,k)){h=b;i=c;break a}Ka(j+112|0,b,c,d,e,0,0,0,0);d=H[j+120>>2];e=H[j+124>>2];h=H[j+112>>2];i=H[j+116>>2];break a}if(o){i=c;h=b}else{Ka(j+96|0,b,c,l,p,0,0,0,1081540608);h=H[j+108>>2];p=h;l=H[j+104>>2];o=(h>>>16|0)-120|0;i=H[j+100>>2];h=H[j+96>>2]}if(!q){Ka(j+80|0,f,g,m,k,0,0,0,1081540608);f=H[j+92>>2];k=f;m=H[j+88>>2];q=(k>>>16|0)-120|0;g=H[j+84>>2];f=H[j+80>>2]}s=k&65535|65536;p=p&65535|65536;if((o|0)>(q|0)){while(1){t=l-m|0;k=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;n=(p-((m>>>0>l>>>0)+s|0)|0)-(t>>>0>>0)|0;k=t-k|0;f:{if((n|0)>0|(n|0)>=0){l=h;h=h-f|0;i=i-((f>>>0>l>>>0)+g|0)|0;if(!(h|k|(i|n))){Ka(j+32|0,b,c,d,e,0,0,0,0);d=H[j+40>>2];e=H[j+44>>2];h=H[j+32>>2];i=H[j+36>>2];break a}n=n<<1|k>>>31;l=k<<1|i>>>31;break f}n=p<<1|l>>>31;l=l<<1|i>>>31}p=n;n=i<<1|h>>>31;h=h<<1;i=n;o=o-1|0;if((q|0)<(o|0)){continue}break}o=q}q=l-m|0;n=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;k=(p-((m>>>0>l>>>0)+s|0)|0)-(q>>>0>>0)|0;m=q-n|0;g:{if((k|0)<0){m=l;k=p;break g}l=h;h=h-f|0;i=i-((f>>>0>l>>>0)+g|0)|0;if(h|m|(i|k)){break g}Ka(j+48|0,b,c,d,e,0,0,0,0);d=H[j+56>>2];e=H[j+60>>2];h=H[j+48>>2];i=H[j+52>>2];break a}if((k|0)==65535|k>>>0<65535){while(1){b=i>>>31|0;o=o-1|0;p=i<<1|h>>>31;h=h<<1;i=p;c=b;b=m;k=k<<1|b>>>31;m=c|b<<1;if(k>>>0<65536){continue}break}}b=r&32768;if((o|0)<=0){Ka(j- -64|0,h,i,m,k&65535|(b|o+120)<<16,0,0,0,1065811968);d=H[j+72>>2];e=H[j+76>>2];h=H[j+64>>2];i=H[j+68>>2];break a}d=m;e=k&65535|(b|o)<<16}H[a>>2]=h;H[a+4>>2]=i;H[a+8>>2]=d;H[a+12>>2]=e;da=j+128|0} -function Qe(a,b){var c=0,d=0,e=0,f=0;f=da-16|0;da=f;e=ra(32);H[f>>2]=e;H[f+4>>2]=30;H[f+8>>2]=-2147483616;F[e+30|0]=0;c=I[1352]|I[1353]<<8|(I[1354]<<16|I[1355]<<24);d=I[1348]|I[1349]<<8|(I[1350]<<16|I[1351]<<24);F[e+22|0]=d;F[e+23|0]=d>>>8;F[e+24|0]=d>>>16;F[e+25|0]=d>>>24;F[e+26|0]=c;F[e+27|0]=c>>>8;F[e+28|0]=c>>>16;F[e+29|0]=c>>>24;c=I[1346]|I[1347]<<8|(I[1348]<<16|I[1349]<<24);d=I[1342]|I[1343]<<8|(I[1344]<<16|I[1345]<<24);F[e+16|0]=d;F[e+17|0]=d>>>8;F[e+18|0]=d>>>16;F[e+19|0]=d>>>24;F[e+20|0]=c;F[e+21|0]=c>>>8;F[e+22|0]=c>>>16;F[e+23|0]=c>>>24;c=I[1338]|I[1339]<<8|(I[1340]<<16|I[1341]<<24);d=I[1334]|I[1335]<<8|(I[1336]<<16|I[1337]<<24);F[e+8|0]=d;F[e+9|0]=d>>>8;F[e+10|0]=d>>>16;F[e+11|0]=d>>>24;F[e+12|0]=c;F[e+13|0]=c>>>8;F[e+14|0]=c>>>16;F[e+15|0]=c>>>24;c=I[1330]|I[1331]<<8|(I[1332]<<16|I[1333]<<24);d=I[1326]|I[1327]<<8|(I[1328]<<16|I[1329]<<24);F[e|0]=d;F[e+1|0]=d>>>8;F[e+2|0]=d>>>16;F[e+3|0]=d>>>24;F[e+4|0]=c;F[e+5|0]=c>>>8;F[e+6|0]=c>>>16;F[e+7|0]=c>>>24;e=a+4|0;wb(e,f,b);if(F[f+11|0]<0){qa(H[f>>2])}a=ra(32);H[f>>2]=a;H[f+4>>2]=29;H[f+8>>2]=-2147483616;F[a+29|0]=0;c=I[1420]|I[1421]<<8|(I[1422]<<16|I[1423]<<24);d=I[1416]|I[1417]<<8|(I[1418]<<16|I[1419]<<24);F[a+21|0]=d;F[a+22|0]=d>>>8;F[a+23|0]=d>>>16;F[a+24|0]=d>>>24;F[a+25|0]=c;F[a+26|0]=c>>>8;F[a+27|0]=c>>>16;F[a+28|0]=c>>>24;c=I[1415]|I[1416]<<8|(I[1417]<<16|I[1418]<<24);d=I[1411]|I[1412]<<8|(I[1413]<<16|I[1414]<<24);F[a+16|0]=d;F[a+17|0]=d>>>8;F[a+18|0]=d>>>16;F[a+19|0]=d>>>24;F[a+20|0]=c;F[a+21|0]=c>>>8;F[a+22|0]=c>>>16;F[a+23|0]=c>>>24;c=I[1407]|I[1408]<<8|(I[1409]<<16|I[1410]<<24);d=I[1403]|I[1404]<<8|(I[1405]<<16|I[1406]<<24);F[a+8|0]=d;F[a+9|0]=d>>>8;F[a+10|0]=d>>>16;F[a+11|0]=d>>>24;F[a+12|0]=c;F[a+13|0]=c>>>8;F[a+14|0]=c>>>16;F[a+15|0]=c>>>24;c=I[1399]|I[1400]<<8|(I[1401]<<16|I[1402]<<24);d=I[1395]|I[1396]<<8|(I[1397]<<16|I[1398]<<24);F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;F[a+4|0]=c;F[a+5|0]=c>>>8;F[a+6|0]=c>>>16;F[a+7|0]=c>>>24;wb(e,f,b);if(F[f+11|0]<0){qa(H[f>>2])}da=f+16|0}function Jk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=da-16|0;da=e;g=H[a+28>>2];h=H[H[a+4>>2]+(b<<2)>>2];j=H[H[H[g+4>>2]+8>>2]+(h<<2)>>2];a=H[j+28>>2];a:{if(a-1>>>0>=6){b:{if((a|0)!=9){break b}g=H[g+48>>2];c=ra(32);H[e>>2]=c;H[e+4>>2]=17;H[e+8>>2]=-2147483616;F[c+17|0]=0;F[c+16|0]=I[1373];b=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);a=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[c+8|0]=a;F[c+9|0]=a>>>8;F[c+10|0]=a>>>16;F[c+11|0]=a>>>24;F[c+12|0]=b;F[c+13|0]=b>>>8;F[c+14|0]=b>>>16;F[c+15|0]=b>>>24;b=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);a=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[c|0]=a;F[c+1|0]=a>>>8;F[c+2|0]=a>>>16;F[c+3|0]=a>>>24;F[c+4|0]=b;F[c+5|0]=b>>>8;F[c+6|0]=b>>>16;F[c+7|0]=b>>>24;d=g+16|0;a=H[d>>2];c:{if(!a){break c}b=d;while(1){f=(h|0)>H[a+16>>2];b=f?b:a;a=H[(f<<2)+a>>2];if(a){continue}break}if((b|0)==(d|0)|(h|0)>2]){break c}a=H[b+24>>2];if(!a){break c}b=b+20|0;while(1){d=I[a+27|0];f=d<<24>>24<0;i=f?H[a+20>>2]:d;k=i>>>0<17;d:{e:{h=k?i:17;f:{if(h){d=a+16|0;f=f?H[d>>2]:d;d=Ca(c,f,h);g:{if(!d){if(i>>>0<=17){break g}break d}if((d|0)<0){break d}}d=Ca(f,c,h);if(!d){break f}if((d|0)<0){break e}g=b;break c}if(i>>>0>17){break d}}if(k){break e}g=b;break c}a=a+4|0}a=H[a>>2];if(a){continue}break}}a=gb(g,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}if((a|0)<=0){break b}if(H[j+56>>2]==1){a=ra(48);H[a>>2]=0;H[a+4>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;Od(a);H[a+44>>2]=-1;H[a+40>>2]=1032;H[a>>2]=6336;break a}a=ra(64);Od(a);H[a+48>>2]=0;H[a+52>>2]=0;H[a+44>>2]=-1;H[a+40>>2]=1140;H[a>>2]=10016;H[a+56>>2]=0;H[a+60>>2]=0;break a}a=ra(36);H[a+32>>2]=0;H[a+12>>2]=-1;H[a+4>>2]=0;H[a+8>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=2420;F[a+21|0]=0;F[a+22|0]=0;F[a+23|0]=0;F[a+24|0]=0;F[a+25|0]=0;F[a+26|0]=0;F[a+27|0]=0;F[a+28|0]=0;break a}a=Od(ra(40))}da=e+16|0;return a|0}function ck(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;H[a+8>>2]=e;h=a+32|0;f=H[h>>2];g=H[a+36>>2]-f>>2;a:{if(g>>>0>>0){Ha(h,e-g|0);break a}if(e>>>0>=g>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){h=g;break c}j=1;f=d-1|0;o=f&1;d:{if((d|0)==2){h=g;break d}l=f&-2;f=0;h=g;while(1){i=(j<<2)+b|0;m=H[i+4>>2];k=H[i>>2];n=(k|0)<(h|0);h=n?k:h;i=(h|0)>(m|0);h=i?m:h;g=n?g:(g|0)<(k|0)?k:g;g=i?g:(g|0)<(m|0)?m:g;j=j+2|0;f=f+2|0;if((l|0)!=(f|0)){continue}break}}if(!o){break c}i=H[(j<<2)+b>>2];f=(i|0)<(h|0);h=f?i:h;g=f?g:(g|0)<(i|0)?i:g}H[a+16>>2]=g;H[a+12>>2]=h;f=(g>>31)-((h>>31)+(g>>>0>>0)|0)|0;h=g-h|0;if(!f&h>>>0>2147483646|f){break b}h=h+1|0;H[a+20>>2]=h;f=h>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(h&1){break b}H[a+24>>2]=f-1}d=d-e|0;i=H[a+8>>2];if(!((d|0)<=0|(i|0)<=0)){n=0-e<<2;while(1){if((i|0)>0){f=d<<2;o=f+c|0;l=b+f|0;f=l+n|0;j=0;while(1){h=H[a+32>>2];g=0;if((i|0)>0){while(1){k=g<<2;m=H[k+f>>2];i=H[a+16>>2];e:{if((m|0)>(i|0)){H[h+k>>2]=i;break e}k=h+k|0;i=H[a+12>>2];if((i|0)>(m|0)){H[k>>2]=i;break e}H[k>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}g=j<<2;f=g+o|0;g=H[g+l>>2]-H[g+h>>2]|0;H[f>>2]=g;f:{if((g|0)>2]){g=g+H[a+20>>2]|0}else{if((g|0)<=H[a+24>>2]){break f}g=g-H[a+20>>2]|0}H[f>>2]=g}f=h;i=H[a+8>>2];j=j+1|0;if((i|0)>(j|0)){continue}break}}d=d-e|0;if((d|0)>0){continue}break}}d=(e&1073741823)!=(e|0)?-1:e<<2;e=ta(ra(d),0,d);if((i|0)>0){j=0;f=e;while(1){h=H[a+32>>2];g=0;if((i|0)>0){while(1){i=g<<2;l=H[i+f>>2];d=H[a+16>>2];g:{if((l|0)>(d|0)){H[h+i>>2]=d;break g}i=h+i|0;d=H[a+12>>2];if((d|0)>(l|0)){H[i>>2]=d;break g}H[i>>2]=l}g=g+1|0;if((g|0)>2]){continue}break}}f=j<<2;d=f+c|0;f=H[b+f>>2]-H[f+h>>2]|0;H[d>>2]=f;h:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break h}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;i=H[a+8>>2];j=j+1|0;if((i|0)>(j|0)){continue}break}}qa(e);return 1}function fj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=da-16|0;da=f;H[a+4>>2]=b;H[a+8>>2]=H[b+56>>2];H[a+188>>2]=H[a+184>>2];e=H[b+48>>2];c=ra(32);b=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[c+15|0]=b;F[c+16|0]=b>>>8;F[c+17|0]=b>>>16;F[c+18|0]=b>>>24;b=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[c+8|0]=d;F[c+9|0]=d>>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;F[c+12|0]=b;F[c+13|0]=b>>>8;F[c+14|0]=b>>>16;F[c+15|0]=b>>>24;b=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;F[c+4|0]=b;F[c+5|0]=b>>>8;F[c+6|0]=b>>>16;F[c+7|0]=b>>>24;F[c+19|0]=0;b=H[e+4>>2];a:{if(b){while(1){d=I[b+27|0];e=d<<24>>24<0;d=e?H[b+20>>2]:d;i=d>>>0<19;b:{c:{h=i?d:19;d:{e:{if(h){g=b+16|0;e=e?H[g>>2]:g;g=Ca(c,e,h);f:{if(!g){if(d>>>0<=19){break f}break b}if((g|0)<0){break b}}d=Ca(e,c,h);if(!d){break e}if((d|0)>=0){break d}break c}if(d>>>0>19){break b}}if(i){break c}}qa(c);e=H[H[a+4>>2]+48>>2];b=ra(32);H[f>>2]=b;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[b+19|0]=0;c=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;c=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;j=a,k=Qb(e,f,0),F[j+288|0]=k;if(F[f+11|0]>=0){break a}qa(H[f>>2]);break a}b=b+4|0}b=H[b>>2];if(b){continue}break}}qa(c);if((fb(H[H[a+4>>2]+48>>2])|0)>=6){F[a+288|0]=1;break a}F[a+288|0]=0}da=f+16|0;return 1}function aj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=da-16|0;da=f;H[a+4>>2]=b;H[a+8>>2]=H[b+56>>2];H[a+188>>2]=H[a+184>>2];e=H[b+48>>2];c=ra(32);b=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[c+15|0]=b;F[c+16|0]=b>>>8;F[c+17|0]=b>>>16;F[c+18|0]=b>>>24;b=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[c+8|0]=d;F[c+9|0]=d>>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;F[c+12|0]=b;F[c+13|0]=b>>>8;F[c+14|0]=b>>>16;F[c+15|0]=b>>>24;b=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;F[c+4|0]=b;F[c+5|0]=b>>>8;F[c+6|0]=b>>>16;F[c+7|0]=b>>>24;F[c+19|0]=0;b=H[e+4>>2];a:{if(b){while(1){d=I[b+27|0];e=d<<24>>24<0;d=e?H[b+20>>2]:d;i=d>>>0<19;b:{c:{h=i?d:19;d:{e:{if(h){g=b+16|0;e=e?H[g>>2]:g;g=Ca(c,e,h);f:{if(!g){if(d>>>0<=19){break f}break b}if((g|0)<0){break b}}d=Ca(e,c,h);if(!d){break e}if((d|0)>=0){break d}break c}if(d>>>0>19){break b}}if(i){break c}}qa(c);e=H[H[a+4>>2]+48>>2];b=ra(32);H[f>>2]=b;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[b+19|0]=0;c=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;c=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;j=a,k=Qb(e,f,0),F[j+352|0]=k;if(F[f+11|0]>=0){break a}qa(H[f>>2]);break a}b=b+4|0}b=H[b>>2];if(b){continue}break}}qa(c);if((fb(H[H[a+4>>2]+48>>2])|0)>=6){F[a+352|0]=1;break a}F[a+352|0]=0}da=f+16|0;return 1}function Eg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-32|0;da=c;d=a- -64|0;Fa(H[d>>2],b);if(H[d>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);d=H[a+64>>2];if((d|0)>0){while(1){f=d-1|0;Ja(c,H[H[a+60>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d>>>0>1;d=f;if(e){continue}break}}Aa(c,b);za(c)}Fa(H[a+76>>2],b);if(H[a+76>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);d=H[a+76>>2];if((d|0)>=2){while(1){f=d-2|0;Ja(c,H[H[a+72>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-1|0;Ja(c,H[H[a+72>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>3;d=f;if(e){continue}break}}Aa(c,b);za(c)}Fa(H[a+88>>2],b);if(H[a+88>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);d=H[a+88>>2];if((d|0)>=3){while(1){f=d-3|0;Ja(c,H[H[a+84>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-2|0;Ja(c,H[H[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ja(c,H[H[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>5;d=f;if(e){continue}break}}Aa(c,b);za(c)}Fa(H[a+100>>2],b);if(H[a+100>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);d=H[a+100>>2];if((d|0)>=4){while(1){f=d-4|0;Ja(c,H[H[a+96>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-3|0;Ja(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;Ja(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ja(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>7;d=f;if(e){continue}break}}Aa(c,b);za(c)}H[c>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}f=c+4|0;va(b,H[b+4>>2],c,f);d=H[b+20>>2];e=H[b+16>>2];H[c>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c,f)}da=c+32|0;return 1}function tg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-32|0;da=c;Fa(H[a+48>>2],b);if(H[a+48>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);d=H[a+48>>2];if((d|0)>0){while(1){f=d-1|0;Ja(c,H[H[a+44>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d>>>0>1;d=f;if(e){continue}break}}Aa(c,b);za(c)}Fa(H[a+60>>2],b);if(H[a+60>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);d=H[a+60>>2];if((d|0)>=2){while(1){f=d-2|0;Ja(c,H[H[a+56>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-1|0;Ja(c,H[H[a+56>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>3;d=f;if(e){continue}break}}Aa(c,b);za(c)}Fa(H[a+72>>2],b);if(H[a+72>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);d=H[a+72>>2];if((d|0)>=3){while(1){f=d-3|0;Ja(c,H[H[a+68>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-2|0;Ja(c,H[H[a+68>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ja(c,H[H[a+68>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>5;d=f;if(e){continue}break}}Aa(c,b);za(c)}Fa(H[a+84>>2],b);if(H[a+84>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);d=H[a+84>>2];if((d|0)>=4){while(1){f=d-4|0;Ja(c,H[H[a+80>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-3|0;Ja(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;Ja(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Ja(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>7;d=f;if(e){continue}break}}Aa(c,b);za(c)}H[c>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}f=c+4|0;va(b,H[b+4>>2],c,f);d=H[b+20>>2];e=H[b+16>>2];H[c>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c,f)}da=c+32|0;return 1}function kg(a,b,c){var d=0,e=O(0),f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0;o=da-16|0;da=o;a:{if(!(H[a+4>>2]!=-1|c-1>>>0>29)){H[a+4>>2]=c;g=F[b+24|0];H[a+20>>2]=0;H[o+8>>2]=0;H[o>>2]=0;H[o+4>>2]=0;if(g){if((g|0)<0){break a}c=g<<2;l=ra(c);d=ta(l,0,c)+c|0}c=H[a+8>>2];if(c){H[a+12>>2]=c;qa(c)}H[a+8>>2]=l;H[a+16>>2]=d;H[a+12>>2]=d;c=(g&1073741823)!=(g|0)?-1:g<<2;d=ra(c);c=ra(c);r=H[b+44>>2];f=c;k=H[b+48>>2];c=k;m=H[b>>2];h=H[b+40>>2];s=sa(f,c+H[m>>2]|0,h);sa(l,c+H[m>>2]|0,h);t=sa(d,c+H[m>>2]|0,h);b=H[b+80>>2];b:{if(b>>>0<2){break b}d=b;if(g){f=1;c=0;while(1){p=H[m>>2];b=Rk(f,c,h,r)+k|0;p=sa(s,p+b|0,h);b=0;while(1){q=b<<2;i=q+l|0;j=q+p|0;e=L[j>>2];if(e>2]){L[i>>2]=e;e=L[j>>2]}j=q+t|0;if(L[j>>2]>2]=e}b=b+1|0;if((g|0)!=(b|0)){continue}break}l=H[a+8>>2];b=c;c=f+1|0;b=c?b:b+1|0;f=c;c=b;if((d|0)!=(f|0)|b){continue}break}break b}f=1;c=0;i=d-1|0;d=0-!d|0;u=i&1;if((b|0)!=2){q=i&-2;while(1){i=H[m>>2];b=Rk(f,c,h,r)+k|0;w=sa(s,i+b|0,h);x=H[m>>2];b=c;i=f+1|0;b=i?b:b+1|0;b=Rk(h,r,i,b)+k|0;sa(w,x+b|0,h);b=f+2|0;c=b>>>0<2?c+1|0:c;f=b;b=p+2|0;j=b>>>0<2?j+1|0:j;p=b;if((q|0)!=(b|0)|(d|0)!=(j|0)){continue}break}}if(!(u|y)){break b}d=H[m>>2];b=Rk(f,c,h,r)+k|0;sa(s,d+b|0,h)}d=1;c:{d:{e:{if((g|0)>0){e=L[l>>2];if(e!=e){break c}b=0;break e}e=L[a+20>>2];d=0;break d}while(1){if(((B(e),v(2))&2147483647)==2139095040){break c}k=(b<<2)+t|0;c=H[k>>2];n=L[k>>2];if((c&2147483647)==2139095040|n!=n){break c}n=O(n-e);e=L[a+20>>2];if(n>e){L[a+20>>2]=n;e=n}b=b+1|0;d=(g|0)>(b|0);if((b|0)==(g|0)){break d}e=L[(b<<2)+l>>2];if(e==e){continue}break}break c}if(e!=O(0)){break c}H[a+20>>2]=1065353216}qa(s);qa(t);d=d^1}da=o+16|0;return d&1}ua();X()}function Nj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;i=da-32|0;da=i;d=(e&1073741823)!=(e|0)?-1:e<<2;l=ta(ra(d),0,d);o=a+8|0;d=H[a+40>>2];g=H[d>>2];a:{h=H[d+4>>2]-g|0;if((h|0)<5){break a}f=h>>>2|0;d=f-1|0;if(d>>>0>2>>>0){q=H[a+36>>2];p=H[a+32>>2];r=e&-2;s=e&1;while(1){t=N(d,e);b:{c:{g=H[(d<<2)+g>>2];if((g|0)==-1){break c}g=H[H[p+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}k=H[q>>2];h=H[p>>2];m=H[k+(H[h+(g<<2)>>2]<<2)>>2];j=g+1|0;j=(j>>>0)%3|0?j:g-2|0;if((j|0)!=-1){j=H[h+(j<<2)>>2]}else{j=-1}d:{e:{if((g>>>0)%3|0){g=g-1|0;break e}g=g+2|0;n=-1;if((g|0)==-1){break d}}n=H[h+(g<<2)>>2]}if((d|0)<=(m|0)){break c}g=H[(j<<2)+k>>2];if((g|0)>=(d|0)){break c}h=H[k+(n<<2)>>2];if((h|0)>=(d|0)){break c}f:{if((e|0)<=0){break f}h=N(e,h);k=N(e,g);m=N(e,m);g=0;n=0;if((e|0)!=1){while(1){H[(g<<2)+l>>2]=(H[(g+h<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2];j=g|1;H[(j<<2)+l>>2]=(H[(h+j<<2)+b>>2]+H[(j+k<<2)+b>>2]|0)-H[(j+m<<2)+b>>2];g=g+2|0;n=n+2|0;if((r|0)!=(n|0)){continue}break}}if(!s){break f}H[(g<<2)+l>>2]=(H[(g+h<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2]}g=H[l>>2];h=H[l+4>>2];break b}h=(N(f-2|0,e)<<2)+b|0;g=H[h>>2];h=H[h+4>>2]}k=t<<2;m=k+b|0;j=H[m+4>>2];H[i+16>>2]=H[m>>2];H[i+20>>2]=j;H[i+8>>2]=g;H[i+12>>2]=h;ab(i+24|0,o,i+16|0,i+8|0);g=c+k|0;H[g>>2]=H[i+24>>2];H[g+4>>2]=H[i+28>>2];if((f|0)<3){break a}f=d;h=H[a+40>>2];g=H[h>>2];d=d-1|0;if(d>>>0>2]-g>>2>>>0){continue}break}}xa();X()}if((e|0)>0){ta(l,0,e<<2)}a=H[l>>2];d=H[l+4>>2];e=H[b+4>>2];H[i+16>>2]=H[b>>2];H[i+20>>2]=e;H[i+8>>2]=a;H[i+12>>2]=d;ab(i+24|0,o,i+16|0,i+8|0);H[c>>2]=H[i+24>>2];H[c+4>>2]=H[i+28>>2];qa(l);da=i+32|0;return 1}function _h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=da+-64|0;da=e;a:{b:{c:{d:{e:{f:{if(!b){break f}f=tb(c);if(f>>>0>=4294967280){break e}g:{h:{if(f>>>0>=11){g=f+16&-16;a=ra(g);H[e+56>>2]=g|-2147483648;H[e+48>>2]=a;H[e+52>>2]=f;break h}F[e+59|0]=f;a=e+48|0;if(!f){break g}}sa(a,c,f)}F[a+f|0]=0;f=tb(d);if(f>>>0>=4294967280){break d}i:{j:{if(f>>>0>=11){g=f+16&-16;a=ra(g);H[e+40>>2]=g|-2147483648;H[e+32>>2]=a;H[e+36>>2]=f;break j}F[e+43|0]=f;a=e+32|0;if(!f){break i}}sa(a,d,f)}F[a+f|0]=0;f=tb(c);if(f>>>0>=4294967280){break c}k:{l:{if(f>>>0>=11){g=f+16&-16;a=ra(g);H[e+24>>2]=g|-2147483648;H[e+16>>2]=a;H[e+20>>2]=f;break l}F[e+27|0]=f;a=e+16|0;if(!f){break k}}sa(a,c,f)}F[a+f|0]=0;c=tb(d);if(c>>>0>=4294967280){break b}m:{n:{if(c>>>0>=11){f=c+16&-16;a=ra(f);H[e+8>>2]=f|-2147483648;H[e>>2]=a;H[e+4>>2]=c;break n}F[e+11|0]=c;a=e;if(!c){break m}}sa(a,d,c)}F[a+c|0]=0;a=da-48|0;da=a;c=sb(b,e+16|0);if((c|0)!=(b+4|0)){lc(b,c)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;c=F[e+11|0];hb(a,(c|0)<0?H[e+4>>2]:c&255);c=I[e+11|0];d=c<<24>>24<0;sa(H[a>>2],d?H[e>>2]:e,d?H[e+4>>2]:c);o:{if(F[e+27|0]>=0){H[a+24>>2]=H[e+24>>2];c=H[e+20>>2];H[a+16>>2]=H[e+16>>2];H[a+20>>2]=c;break o}La(a+16|0,H[e+16>>2],H[e+20>>2])}H[a+36>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;hb(a+28|0,H[a+4>>2]-H[a>>2]|0);c=H[a>>2];sa(H[a+28>>2],c,H[a+4>>2]-c|0);c=a+16|0;kc(a+40|0,b,c,c);c=H[a+28>>2];if(c){H[a+32>>2]=c;qa(c)}if(F[a+27|0]<0){qa(H[a+16>>2])}c=H[a>>2];if(c){H[a+4>>2]=c;qa(c)}da=a+48|0;if(F[e+11|0]<0){qa(H[e>>2])}if(F[e+27|0]<0){qa(H[e+16>>2])}if(F[e+43|0]<0){qa(H[e+32>>2])}if(F[e+59|0]>=0){break f}qa(H[e+48>>2])}da=e- -64|0;a=(b|0)!=0;break a}lb();X()}lb();X()}lb();X()}lb();X()}return a|0}function Aa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=da-32|0;da=g;d=H[a>>2];e=H[d>>2];c=H[d+4>>2];j=+(e>>>0)+ +(c>>>0)*4294967296;c=H[d+12>>2]+c|0;d=H[d+8>>2];e=d+e|0;c=e>>>0>>0?c+1|0:c;d=!(c|e);j=j/(+((d?1:e)>>>0)+ +((d?0:c)>>>0)*4294967296)*256+.5;a:{if(j<4294967296&j>=0){c=~~j>>>0;break a}c=0}c=c>>>0<255?c:255;k=!(c&255)+c|0;F[g+23|0]=k;i=H[a+16>>2];n=H[a+12>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;b:{c:{c=(i-n<<1)- -64|0;if(c){if((c|0)<0){break c}h=ra(c);H[g+8>>2]=h;d=c+h|0;H[g+16>>2]=d;ta(h,0,c);H[g+12>>2]=d}c=H[a+28>>2]-1|0;if((c|0)<0){e=4096;break b}l=0-k|0;o=l&255;p=H[a+24>>2];e=4096;while(1){m=p&1<>>0<=e>>>0){F[f+h|0]=e;f=f+1|0;e=e>>>8|0}q=256-d|0;d=(d<<3)+12800|0;Rk(H[d>>2],0,e,0);e=((m?0:o)+e|0)+N(q,ea+e>>>H[d+4>>2]|0)|0;c=c-1|0;if((c|0)>=0){continue}break}break b}ua();X()}if((i|0)!=(n|0)){l=0-k|0;o=l&255;while(1){i=i-4|0;p=H[i>>2];c=31;while(1){d=c;m=p&1<>>0<=e>>>0){F[f+h|0]=e;f=f+1|0;e=e>>>8|0}q=256-c|0;c=(c<<3)+12800|0;Rk(H[c>>2],0,e,0);e=((m?0:o)+e|0)+N(q,ea+e>>>H[c+4>>2]|0)|0;c=d-1|0;if(d){continue}break}if((i|0)!=(n|0)){continue}break}}c=e-4096|0;d:{if(c>>>0<=63){F[f+h|0]=c;f=f+1|0;break d}if(c>>>0<=16383){c=f+h|0;d=e+12288|0;F[c|0]=d;F[c+1|0]=d>>>8;f=f+2|0;break d}if(c>>>0>4194303){break d}c=f+h|0;d=e+8384512|0;F[c|0]=d;F[c+2|0]=d>>>16;F[c+1|0]=d>>>8;f=f+3|0}c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){va(b,H[b+4>>2],g+23|0,g+24|0)}Fa(f,b);c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){va(b,H[b+4>>2],h,f+h|0)}H[g+24>>2]=0;H[g+28>>2]=0;Kd(a,g+24|0);H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=H[a+12>>2];if(h){qa(h)}da=g+32|0}function Yj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=da-32|0;da=h;d=(e&1073741823)!=(e|0)?-1:e<<2;l=ta(ra(d),0,d);p=a+8|0;d=H[a+40>>2];g=H[d>>2];a:{n=H[d+4>>2]-g|0;if((n|0)<5){break a}f=n>>>2|0;d=f-1|0;if(d>>>0>2>>>0){q=H[a+36>>2];n=H[a+32>>2];r=e&-2;s=e&1;while(1){t=N(d,e);b:{c:{g=H[(d<<2)+g>>2];if((g|0)==-1|H[H[n>>2]+(g>>>3&536870908)>>2]>>>g&1){break c}g=H[H[H[n+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}k=H[q>>2];i=H[n+28>>2];m=H[k+(H[i+(g<<2)>>2]<<2)>>2];if((m|0)>=(d|0)){break c}j=g+1|0;j=H[k+(H[i+(((j>>>0)%3|0?j:g-2|0)<<2)>>2]<<2)>>2];if((j|0)>=(d|0)){break c}g=H[k+(H[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(d|0)){break c}d:{if((e|0)<=0){break d}i=N(e,g);k=N(e,j);m=N(e,m);g=0;o=0;if((e|0)!=1){while(1){H[(g<<2)+l>>2]=(H[(g+i<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2];j=g|1;H[(j<<2)+l>>2]=(H[(i+j<<2)+b>>2]+H[(j+k<<2)+b>>2]|0)-H[(j+m<<2)+b>>2];g=g+2|0;o=o+2|0;if((r|0)!=(o|0)){continue}break}}if(!s){break d}H[(g<<2)+l>>2]=(H[(g+i<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2]}g=H[l>>2];i=H[l+4>>2];break b}i=(N(f-2|0,e)<<2)+b|0;g=H[i>>2];i=H[i+4>>2]}k=t<<2;m=k+b|0;j=H[m+4>>2];H[h+16>>2]=H[m>>2];H[h+20>>2]=j;H[h+8>>2]=g;H[h+12>>2]=i;ab(h+24|0,p,h+16|0,h+8|0);g=c+k|0;H[g>>2]=H[h+24>>2];H[g+4>>2]=H[h+28>>2];if((f|0)<3){break a}f=d;i=H[a+40>>2];g=H[i>>2];d=d-1|0;if(d>>>0>2]-g>>2>>>0){continue}break}}xa();X()}if((e|0)>0){ta(l,0,e<<2)}a=H[l>>2];d=H[l+4>>2];e=H[b+4>>2];H[h+16>>2]=H[b>>2];H[h+20>>2]=e;H[h+8>>2]=a;H[h+12>>2]=d;ab(h+24|0,p,h+16|0,h+8|0);H[c>>2]=H[h+24>>2];H[c+4>>2]=H[h+28>>2];qa(l);da=h+32|0;return 1}function Ee(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=da-16|0;da=k;H[k+8>>2]=c;e=H[a+12>>2];d=H[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=H[a+16>>2];d=H[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=ta(e,0,d)+d|0}H[a+12>>2]=d;break a}b:{c:{d:{h=H[a+8>>2];j=d-h>>2;e=j+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>2>>>0<536870911?e>>>0>l>>>0?e:l:1073741823;if(g){if(g>>>0>=1073741824){break d}i=ra(g<<2)}e=(j<<2)+i|0;j=f<<2;f=ta(e,0,j);j=f+j|0;g=(g<<2)+i|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=H[d>>2];H[d>>2]=0;e=e-4|0;H[e>>2]=f;if((d|0)!=(h|0)){continue}break}H[a+16>>2]=g;f=H[a+12>>2];H[a+12>>2]=j;d=H[a+8>>2];H[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=H[f>>2];H[f>>2]=0;if(e){Ra(e)}if((d|0)!=(f|0)){continue}break}break b}ua();X()}wa(1604);X()}H[a+16>>2]=g;H[a+12>>2]=j;H[a+8>>2]=f}if(d){qa(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=H[e>>2];H[e>>2]=0;if(c){Ra(c)}if((d|0)!=(e|0)){continue}break}c=H[k+8>>2]}H[a+12>>2]=d}e:{f:{d=H[c+56>>2];g:{if((d|0)>4){break g}e=N(d,12)+a|0;d=H[e+24>>2];if((d|0)!=H[e+28>>2]){H[d>>2]=b;H[e+24>>2]=d+4;break g}f=H[e+20>>2];h=d-f|0;i=h>>2;d=i+1|0;if(d>>>0>=1073741824){break f}g=h>>1;g=i>>>0<536870911?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break e}d=ra(g<<2)}else{d=0}i=d+(i<<2)|0;H[i>>2]=b;if((h|0)>0){sa(d,f,h)}H[e+20>>2]=d;H[e+24>>2]=i+4;H[e+28>>2]=d+(g<<2);if(!f){break g}qa(f)}H[c+60>>2]=b;a=H[a+8>>2];H[k+8>>2]=0;b=a+(b<<2)|0;a=H[b>>2];H[b>>2]=c;if(a){Ra(a)}a=H[k+8>>2];H[k+8>>2]=0;if(a){Ra(a)}da=k+16|0;return}ua();X()}wa(1604);X()}function Fe(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=O(0);j=H[c>>2];g=j^318;a:{b:{f=H[b+4>>2];if(!f){break b}h=Uk(f);c:{if(h>>>0>=2){e=g;if(f>>>0<=e>>>0){e=(g>>>0)%(f>>>0)|0}c=H[H[b>>2]+(e<<2)>>2];if(!c){break b}if(h>>>0<=1){break c}while(1){c=H[c>>2];if(!c){break b}h=H[c+4>>2];if((h|0)!=(g|0)){if(f>>>0<=h>>>0){h=(h>>>0)%(f>>>0)|0}if((e|0)!=(h|0)){break b}}if(H[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&g;c=H[H[b>>2]+(e<<2)>>2];if(!c){break b}}h=f-1|0;while(1){c=H[c>>2];if(!c){break b}k=H[c+4>>2];if((k|0)!=(g|0)&(h&k)!=(e|0)){break b}if(H[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=ra(16);H[c+8>>2]=H[d>>2];d=H[d+4>>2];H[c+4>>2]=g;H[c+12>>2]=d;H[c>>2]=0;l=O(H[b+12>>2]+1>>>0);i=L[b+16>>2];d:{if(!(f?l>O(i*O(f>>>0)):1)){break d}h=(f-1&f)!=0|f>>>0<3|f<<1;d=2;i=O(U(O(l/i)));e:{if(i=O(0)){e=~~i>>>0;break e}e=0}e=e>>>0>h>>>0?e:h;f:{if((e|0)==1){break f}if(!(e&e-1)){d=e;break f}d=Ma(e);f=H[b+4>>2]}g:{if(d>>>0<=f>>>0){if(d>>>0>=f>>>0){break g}h=f>>>0<3;i=O(U(O(O(K[b+12>>2])/L[b+16>>2])));h:{if(i=O(0)){e=~~i>>>0;break h}e=0}i:{j:{if(h){break j}if(Uk(f)>>>0>1){break j}e=e>>>0<2?e:1<<32-Q(e-1|0);break i}e=Ma(e)}d=d>>>0>>0?e:d;if(f>>>0<=d>>>0){break g}}se(b,d)}f=H[b+4>>2];d=f-1|0;if(!(d&f)){e=d&g;break d}if(f>>>0>g>>>0){e=g;break d}e=(g>>>0)%(f>>>0)|0}g=H[b>>2]+(e<<2)|0;d=H[g>>2];k:{if(!d){H[c>>2]=H[b+8>>2];H[b+8>>2]=c;H[g>>2]=b+8;d=H[c>>2];if(!d){break k}d=H[d+4>>2];g=f-1|0;l:{if(!(g&f)){d=d&g;break l}if(d>>>0>>0){break l}d=(d>>>0)%(f>>>0)|0}H[H[b>>2]+(d<<2)>>2]=c;break k}H[c>>2]=H[d>>2];H[d>>2]=c}H[b+12>>2]=H[b+12>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function Df(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=O(0);h=H[c>>2];a:{b:{e=H[b+4>>2];if(!e){break b}g=Uk(e);c:{if(g>>>0>=2){f=h;if(f>>>0>=e>>>0){f=(h>>>0)%(e>>>0)|0}c=H[H[b>>2]+(f<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=H[c>>2];if(!c){break b}g=H[c+4>>2];if((g|0)!=(h|0)){if(e>>>0<=g>>>0){g=(g>>>0)%(e>>>0)|0}if((f|0)!=(g|0)){break b}}if(H[c+8>>2]!=(h|0)){continue}break}b=0;break a}f=e-1&h;c=H[H[b>>2]+(f<<2)>>2];if(!c){break b}}g=e-1|0;while(1){c=H[c>>2];if(!c){break b}j=H[c+4>>2];if((j|0)!=(h|0)&(g&j)!=(f|0)){break b}if(H[c+8>>2]!=(h|0)){continue}break}b=0;break a}c=ra(16);d=H[H[d>>2]>>2];H[c+12>>2]=0;H[c+8>>2]=d;H[c+4>>2]=h;H[c>>2]=0;k=O(H[b+12>>2]+1>>>0);i=L[b+16>>2];d:{if(!(e?k>O(i*O(e>>>0)):1)){break d}g=(e-1&e)!=0|e>>>0<3|e<<1;f=2;i=O(U(O(k/i)));e:{if(i=O(0)){d=~~i>>>0;break e}d=0}d=d>>>0>g>>>0?d:g;f:{if((d|0)==1){break f}if(!(d&d-1)){f=d;break f}f=Ma(d);e=H[b+4>>2]}g:{if(e>>>0>=f>>>0){if(e>>>0<=f>>>0){break g}g=e>>>0<3;i=O(U(O(O(K[b+12>>2])/L[b+16>>2])));h:{if(i=O(0)){d=~~i>>>0;break h}d=0}i:{j:{if(g){break j}if(Uk(e)>>>0>1){break j}d=d>>>0<2?d:1<<32-Q(d-1|0);break i}d=Ma(d)}f=d>>>0>f>>>0?d:f;if(f>>>0>=e>>>0){break g}}se(b,f)}e=H[b+4>>2];d=e-1|0;if(!(d&e)){f=d&h;break d}if(e>>>0>h>>>0){f=h;break d}f=(h>>>0)%(e>>>0)|0}f=H[b>>2]+(f<<2)|0;d=H[f>>2];k:{if(!d){H[c>>2]=H[b+8>>2];H[b+8>>2]=c;H[f>>2]=b+8;d=H[c>>2];if(!d){break k}d=H[d+4>>2];f=e-1|0;l:{if(!(f&e)){d=d&f;break l}if(d>>>0>>0){break l}d=(d>>>0)%(e>>>0)|0}H[H[b>>2]+(d<<2)>>2]=c;break k}H[c>>2]=H[d>>2];H[d>>2]=c}H[b+12>>2]=H[b+12>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function qk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;H[a+8>>2]=e;H[a- -64>>2]=f;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ha(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;j=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;g=0;d=f;while(1){h=(i<<2)+b|0;k=H[h+4>>2];l=H[h>>2];o=(l|0)<(d|0);d=o?l:d;h=(d|0)>(k|0);d=h?k:d;f=o?f:(f|0)<(l|0)?l:f;f=h?f:(f|0)<(k|0)?k:f;i=i+2|0;g=g+2|0;if((n|0)!=(g|0)){continue}break}}if(!j){break c}h=H[(i<<2)+b>>2];g=(h|0)<(d|0);d=g?h:d;f=g?f:(f|0)<(h|0)?h:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}f=H[a+56>>2];d=H[f>>2];e:{f=H[f+4>>2]-d|0;if((f|0)<=0){break e}n=f>>>2|0;i=n-1|0;if(i>>>0>2>>>0){k=a+60|0;h=a+68|0;while(1){Ag(k,H[(i<<2)+d>>2],b,i);d=H[a+8>>2];if((d|0)>0){f=N(e,i)<<2;l=f+c|0;o=b+f|0;p=0;g=h;while(1){j=H[a+32>>2];f=0;if((d|0)>0){while(1){m=f<<2;q=H[m+g>>2];d=H[a+16>>2];f:{if((q|0)>(d|0)){H[j+m>>2]=d;break f}m=j+m|0;d=H[a+12>>2];if((d|0)>(q|0)){H[m>>2]=d;break f}H[m>>2]=q}f=f+1|0;if((f|0)>2]){continue}break}}f=p<<2;d=f+l|0;f=H[f+o>>2]-H[f+j>>2]|0;H[d>>2]=f;g:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break g}f=f-H[a+20>>2]|0}H[d>>2]=f}g=j;d=H[a+8>>2];p=p+1|0;if((d|0)>(p|0)){continue}break}}if((n|0)<2){break e}n=i;f=H[a+56>>2];d=H[f>>2];i=i-1|0;if(i>>>0>2]-d>>2>>>0){continue}break}}xa();X()}return 1}function gk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;H[a+8>>2]=e;H[a- -64>>2]=f;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ha(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;j=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;g=0;d=f;while(1){h=(i<<2)+b|0;k=H[h+4>>2];l=H[h>>2];o=(l|0)<(d|0);d=o?l:d;h=(d|0)>(k|0);d=h?k:d;f=o?f:(f|0)<(l|0)?l:f;f=h?f:(f|0)<(k|0)?k:f;i=i+2|0;g=g+2|0;if((n|0)!=(g|0)){continue}break}}if(!j){break c}h=H[(i<<2)+b>>2];g=(h|0)<(d|0);d=g?h:d;f=g?f:(f|0)<(h|0)?h:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}f=H[a+56>>2];d=H[f>>2];e:{f=H[f+4>>2]-d|0;if((f|0)<=0){break e}n=f>>>2|0;i=n-1|0;if(i>>>0>2>>>0){k=a+60|0;h=a+68|0;while(1){vg(k,H[(i<<2)+d>>2],b,i);d=H[a+8>>2];if((d|0)>0){f=N(e,i)<<2;l=f+c|0;o=b+f|0;p=0;g=h;while(1){j=H[a+32>>2];f=0;if((d|0)>0){while(1){m=f<<2;q=H[m+g>>2];d=H[a+16>>2];f:{if((q|0)>(d|0)){H[j+m>>2]=d;break f}m=j+m|0;d=H[a+12>>2];if((d|0)>(q|0)){H[m>>2]=d;break f}H[m>>2]=q}f=f+1|0;if((f|0)>2]){continue}break}}f=p<<2;d=f+l|0;f=H[f+o>>2]-H[f+j>>2]|0;H[d>>2]=f;g:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break g}f=f-H[a+20>>2]|0}H[d>>2]=f}g=j;d=H[a+8>>2];p=p+1|0;if((d|0)>(p|0)){continue}break}}if((n|0)<2){break e}n=i;f=H[a+56>>2];d=H[f>>2];i=i-1|0;if(i>>>0>2]-d>>2>>>0){continue}break}}xa();X()}return 1}function Nd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;H[a+4>>2]=b;g=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];H[a+12>>2]=c;H[a+8>>2]=g;a:{if((fa[H[H[a>>2]+32>>2]](a)|0)==1&H[H[a+8>>2]+28>>2]-1>>>0>5){break a}g=c;b=H[b+48>>2];h=da-16|0;da=h;d=ra(32);H[h>>2]=d;H[h+4>>2]=17;H[h+8>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[1688];c=I[1684]|I[1685]<<8|(I[1686]<<16|I[1687]<<24);e=I[1680]|I[1681]<<8|(I[1682]<<16|I[1683]<<24);F[d+8|0]=e;F[d+9|0]=e>>>8;F[d+10|0]=e>>>16;F[d+11|0]=e>>>24;F[d+12|0]=c;F[d+13|0]=c>>>8;F[d+14|0]=c>>>16;F[d+15|0]=c>>>24;c=I[1676]|I[1677]<<8|(I[1678]<<16|I[1679]<<24);e=I[1672]|I[1673]<<8|(I[1674]<<16|I[1675]<<24);F[d|0]=e;F[d+1|0]=e>>>8;F[d+2|0]=e>>>16;F[d+3|0]=e>>>24;F[d+4|0]=c;F[d+5|0]=c>>>8;F[d+6|0]=c>>>16;F[d+7|0]=c>>>24;e=b+16|0;f=H[e>>2];b:{if(!f){break b}c=e;while(1){i=(g|0)>H[f+16>>2];c=i?c:f;f=H[(i<<2)+f>>2];if(f){continue}break}if((c|0)==(e|0)|(g|0)>2]){break b}f=H[c+24>>2];if(!f){break b}c=c+20|0;while(1){g=I[f+27|0];e=g<<24>>24<0;g=e?H[f+20>>2]:g;i=g>>>0<17;c:{d:{k=i?g:17;e:{if(k){j=f+16|0;e=e?H[j>>2]:j;j=Ca(d,e,k);f:{if(!j){if(g>>>0<=17){break f}break c}if((j|0)<0){break c}}g=Ca(e,d,k);if(!g){break e}if((g|0)<0){break d}b=c;break b}if(g>>>0>17){break c}}if(i){break d}b=c;break b}f=f+4|0}f=H[f>>2];if(f){continue}break}}b=gb(b,h,-1);if(F[h+11|0]<0){qa(H[h>>2])}da=h+16|0;b=fa[H[H[a>>2]+48>>2]](a,(b|0)==-1?-1:b>>>0>6?-2:b)|0;c=H[a+36>>2];H[a+36>>2]=b;e=1;if(c){fa[H[H[c>>2]+4>>2]](c);b=H[a+36>>2]}if(!b){break a}if(fa[H[H[a>>2]+36>>2]](a,b)|0){break a}b=H[a+36>>2];H[a+36>>2]=0;if(!b){break a}fa[H[H[b>>2]+4>>2]](b)}return e|0}function Jd(a){var b=0,c=0,d=0,e=0;e=da-16|0;da=e;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;b=a+16|0;H[b>>2]=0;H[b+4>>2]=0;H[a+12>>2]=b;a=a+24|0;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;b=ra(32);H[e>>2]=b;H[e+4>>2]=20;H[e+8>>2]=-2147483616;F[b+20|0]=0;c=I[1471]|I[1472]<<8|(I[1473]<<16|I[1474]<<24);F[b+16|0]=c;F[b+17|0]=c>>>8;F[b+18|0]=c>>>16;F[b+19|0]=c>>>24;c=I[1467]|I[1468]<<8|(I[1469]<<16|I[1470]<<24);d=I[1463]|I[1464]<<8|(I[1465]<<16|I[1466]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1459]|I[1460]<<8|(I[1461]<<16|I[1462]<<24);d=I[1455]|I[1456]<<8|(I[1457]<<16|I[1458]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;wb(a,e,1);if(F[e+11|0]<0){qa(H[e>>2])}b=ra(32);H[e>>2]=b;H[e+4>>2]=22;H[e+8>>2]=-2147483616;F[b+22|0]=0;c=I[1450]|I[1451]<<8|(I[1452]<<16|I[1453]<<24);d=I[1446]|I[1447]<<8|(I[1448]<<16|I[1449]<<24);F[b+14|0]=d;F[b+15|0]=d>>>8;F[b+16|0]=d>>>16;F[b+17|0]=d>>>24;F[b+18|0]=c;F[b+19|0]=c>>>8;F[b+20|0]=c>>>16;F[b+21|0]=c>>>24;c=I[1444]|I[1445]<<8|(I[1446]<<16|I[1447]<<24);d=I[1440]|I[1441]<<8|(I[1442]<<16|I[1443]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1436]|I[1437]<<8|(I[1438]<<16|I[1439]<<24);d=I[1432]|I[1433]<<8|(I[1434]<<16|I[1435]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;wb(a,e,1);if(F[e+11|0]<0){qa(H[e>>2])}da=e+16|0}function uc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=da-112|0;da=c;d=ra(120);i=H[a+8>>2];H[d+12>>2]=0;H[d+16>>2]=0;H[d>>2]=11240;H[d+4>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+8>>2]=11452;f=d- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[d+72>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+88>>2]=0;H[d+116>>2]=0;H[d+112>>2]=b;H[d+108>>2]=i;H[d+104>>2]=0;H[d+96>>2]=0;H[d+100>>2]=0;f=H[a+12>>2];H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;g=c+32|0;H[g>>2]=0;H[g+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;e=c- -64|0;H[e>>2]=0;H[e+4>>2]=0;H[c+72>>2]=0;H[c+76>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+88>>2]=0;H[c+104>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+8>>2]=11452;H[c+96>>2]=0;H[c+100>>2]=0;H[c+12>>2]=f;e=H[f>>2];h=H[f+4>>2];F[c+111|0]=0;j=g;g=c+111|0;Ta(j,(h-e>>2>>>0)/3|0,g);e=H[c+12>>2];h=H[e+28>>2];e=H[e+24>>2];F[c+111|0]=0;Ta(c+44|0,h-e>>2,g);H[c+28>>2]=d;H[c+24>>2]=i;H[c+20>>2]=b;H[c+16>>2]=f;H[d+116>>2]=a+72;b=d+8|0;a=c+8|0;sc(b,a);a:{if((a|0)==(b|0)){H[d+92>>2]=H[a+84>>2];break a}Sb(d+56|0,H[a+48>>2],H[a+52>>2]);Sb(d+68|0,H[a+60>>2],H[a- -64>>2]);Sb(d+80|0,H[a+72>>2],H[a+76>>2]);H[d+92>>2]=H[a+84>>2];eb(d+96|0,H[a+88>>2],H[a+92>>2])}H[c+8>>2]=11452;a=H[c+96>>2];if(a){H[c+100>>2]=a;qa(a)}a=H[c+80>>2];if(a){H[c+84>>2]=a;qa(a)}a=H[c+68>>2];if(a){H[c+72>>2]=a;qa(a)}a=H[c+56>>2];if(a){H[c+60>>2]=a;qa(a)}H[c+8>>2]=11688;a=H[c+44>>2];if(a){qa(a)}a=H[c+32>>2];if(a){qa(a)}da=c+112|0;return d}function Re(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=H[a+8>>2];g=H[a+4>>2];if((e-g|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=g;e=N(b,12)-12|0;f=((e>>>0)/12|0)+1&3;if(f){while(1){j=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=j;H[d+8>>2]=H[c+8>>2];d=d+12|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}g=N(b,12)+g|0;if(e>>>0<36){break a}while(1){b=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=b;H[d+8>>2]=H[c+8>>2];H[d+20>>2]=H[c+8>>2];b=H[c+4>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=b;H[d+32>>2]=H[c+8>>2];b=H[c+4>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=b;b=H[c+4>>2];H[d+36>>2]=H[c>>2];H[d+40>>2]=b;H[d+44>>2]=H[c+8>>2];d=d+48|0;if((g|0)!=(d|0)){continue}break}}H[a+4>>2]=g;return}b:{f=H[a>>2];i=(g-f|0)/12|0;d=i+b|0;if(d>>>0<357913942){e=(e-f|0)/12|0;f=e<<1;f=e>>>0<178956970?d>>>0>f>>>0?d:f:357913941;if(f){if(f>>>0>=357913942){break b}j=ra(N(f,12))}e=N(i,12)+j|0;d=e;b=N(b,12);i=b-12|0;k=((i>>>0)/12|0)+1&3;if(k){d=e;while(1){l=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=l;H[d+8>>2]=H[c+8>>2];d=d+12|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}h=b+e|0;if(i>>>0>=36){while(1){b=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=b;H[d+8>>2]=H[c+8>>2];H[d+20>>2]=H[c+8>>2];b=H[c+4>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=b;H[d+32>>2]=H[c+8>>2];b=H[c+4>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=b;b=H[c+4>>2];H[d+36>>2]=H[c>>2];H[d+40>>2]=b;H[d+44>>2]=H[c+8>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}b=H[a>>2];c=g-b|0;d=e+N((c|0)/-12|0,12)|0;if((c|0)>0){sa(d,b,c)}H[a+8>>2]=N(f,12)+j;H[a+4>>2]=h;H[a>>2]=d;if(b){qa(b)}return}ua();X()}wa(1604);X()}function Zf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{b:{c:{d:{e:{l=a+4|0;f:{if((l|0)==(b|0)){break f}f=I[b+27|0];h=f<<24>>24<0;i=I[e+11|0];n=i<<24>>24;g=(n|0)<0;f=h?H[b+20>>2]:f;i=g?H[e+4>>2]:i;j=f>>>0>>0;k=j?f:i;if(k){g=g?H[e>>2]:e;m=b+16|0;h=h?H[m>>2]:m;m=Ca(g,h,k);if(!m){if(f>>>0>i>>>0){break f}break e}if((m|0)>=0){break e}break f}if(f>>>0<=i>>>0){break d}}h=H[b>>2];d=b;g:{h:{if(H[a>>2]==(b|0)){break h}i:{if(h){f=h;while(1){d=f;f=H[f+4>>2];if(f){continue}break}break i}d=b+8|0;if(H[H[b+8>>2]>>2]==(b|0)){while(1){f=H[d>>2];d=f+8|0;if((f|0)==H[H[f+8>>2]>>2]){continue}break}}d=H[d>>2]}g=I[e+11|0];f=g<<24>>24<0;j=I[d+27|0];i=j<<24>>24<0;j:{g=f?H[e+4>>2]:g;j=i?H[d+20>>2]:j;k=g>>>0>>0?g:j;if(k){l=d+16|0;f=Ca(i?H[l>>2]:l,f?H[e>>2]:e,k);if(f){break j}}if(g>>>0>j>>>0){break h}break g}if((f|0)>=0){break g}}if(!h){H[c>>2]=b;return b}H[c>>2]=d;return d+4|0}return Yf(a,c,e)}f=Ca(h,g,k);if(f){break c}}if(j){break b}break a}if((f|0)>=0){break a}}h=H[b+4>>2];k:{if(h){f=h;while(1){d=f;f=H[f>>2];if(f){continue}break}break k}d=H[b+8>>2];if(H[d>>2]==(b|0)){break k}f=b+8|0;while(1){g=H[f>>2];f=g+8|0;d=H[g+8>>2];if((g|0)!=H[d>>2]){continue}break}}l:{m:{if((d|0)==(l|0)){break m}g=I[d+27|0];f=g<<24>>24<0;n:{g=f?H[d+20>>2]:g;j=g>>>0>>0?g:i;if(j){k=d+16|0;f=Ca((n|0)<0?H[e>>2]:e,f?H[k>>2]:k,j);if(f){break n}}if(g>>>0>i>>>0){break m}break l}if((f|0)>=0){break l}}if(!h){H[c>>2]=b;return b+4|0}H[c>>2]=d;return d}return Yf(a,c,e)}H[c>>2]=b;H[d>>2]=b;return d}function Ce(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);e=H[a>>2];H[a>>2]=d;if(e){qa(e)}H[a+4>>2]=b;if(b-1>>>0>=3){f=b&-4;e=0;while(1){d=c<<2;H[d+H[a>>2]>>2]=0;H[H[a>>2]+(d|4)>>2]=0;H[H[a>>2]+(d|8)>>2]=0;H[H[a>>2]+(d|12)>>2]=0;c=c+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=b&3;if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}}f=H[a+8>>2];if(!f){break b}e=a+8|0;g=H[f+4>>2];d=Uk(b);c:{if(d>>>0<=1){g=b-1&g;break c}if(b>>>0>g>>>0){break c}g=(g>>>0)%(b>>>0)|0}H[H[a>>2]+(g<<2)>>2]=e;e=H[f>>2];if(!e){break b}q=b-1|0;r=d>>>0>1;while(1){c=H[e+4>>2];d:{if(!r){c=c&q;break d}if(b>>>0>c>>>0){break d}c=(c>>>0)%(b>>>0)|0}e:{if((c|0)==(g|0)){f=e;break e}f:{g:{k=c<<2;d=k+H[a>>2]|0;if(H[d>>2]){j=0;c=H[e>>2];if(!c){d=e;break f}d=H[a+24>>2];m=H[d+8>>2];d=H[d+12>>2]-m|0;if((d|0)<=0){break g}l=d>>2;s=(l|0)>1?l:1;n=H[e+8>>2];d=e;while(1){j=c;o=H[c+8>>2];c=0;p=1;while(1){i=o;h=H[(c<<2)+m>>2];if(I[h+84|0]){h=n}else{h=H[h+68>>2];i=H[h+(o<<2)>>2];h=H[h+(n<<2)>>2]}if((h|0)==(i|0)){c=c+1|0;p=(l|0)>(c|0);if((c|0)!=(s|0)){continue}}break}if(p){break f}d=j;c=H[d>>2];if(c){continue}break}j=0;break f}H[d>>2]=f;f=e;g=c;break e}while(1){d=c;c=H[c>>2];if(c){continue}break}}H[f>>2]=j;H[d>>2]=H[H[H[a>>2]+k>>2]>>2];H[H[H[a>>2]+k>>2]>>2]=e}e=H[f>>2];if(e){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}wa(1604);X()}function $d(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=da-32|0;da=g;n=a+4|0;a=sb(a,b);a:{if((n|0)==(a|0)){break a}b:{if(F[a+39|0]>=0){H[g+24>>2]=H[a+36>>2];b=H[a+32>>2];H[g+16>>2]=H[a+28>>2];H[g+20>>2]=b;break b}La(g+16|0,H[a+28>>2],H[a+32>>2])}b=I[g+27|0];a=b<<24>>24;if(!(!((a|0)<0?H[g+20>>2]:b)|(c|0)<=0)){b=0;a=(a|0)<0?H[g+16>>2]:g+16|0;while(1){c:{m=da-16|0;da=m;xe(m,a,g+12|0,0);h=H[m>>2];l=H[m+4>>2];i=da-32|0;da=i;o=H[m+12>>2];j=o&2147483647;f=j;e=f-1065418752|0;k=f-1082064896|0;j=H[m+8>>2];d:{if((e|0)==(k|0)&j>>>0>>0|e>>>0>>0){f=(o&33554431)<<7|j>>>25;e=0;n=e;k=j&33554431;if(!(!e&(k|0)==16777216?!(h|l):!e&k>>>0<16777216)){e=f+1073741825|0;break d}e=f+1073741824|0;if(k^16777216|h|(l|n)){break d}e=(f&1)+e|0;break d}if(!(!j&(f|0)==2147418112?!(h|l):f>>>0<2147418112)){e=((o&33554431)<<7|j>>>25)&4194303|2143289344;break d}e=2139095040;if(f>>>0>1082064895){break d}e=0;f=f>>>16|0;if(f>>>0<16145){break d}e=o&65535|65536;Wa(i+16|0,h,l,j,e,f-16129|0);Lb(i,h,l,j,e,16257-f|0);h=H[i+8>>2];e=(H[i+12>>2]&33554431)<<7|h>>>25;k=H[i>>2]|(H[i+16>>2]|H[i+24>>2]|(H[i+20>>2]|H[i+28>>2]))!=0;l=H[i+4>>2];f=0;h=h&33554431;if(!(!f&(h|0)==16777216?!(k|l):!f&h>>>0<16777216)){e=e+1|0;break d}if(h^16777216|k|(f|l)){break d}e=(e&1)+e|0}da=i+32|0;da=m+16|0;n=a;a=H[g+12>>2];if((n|0)==(a|0)){break c}H[(b<<2)+d>>2]=o&-2147483648|e;b=b+1|0;if((c|0)!=(b|0)){continue}}break}a=I[g+27|0]}if(a<<24>>24>=0){break a}qa(H[g+16>>2])}da=g+32|0}function va(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=d-c|0;if((h|0)<=0){return}a:{f=H[a+8>>2];i=H[a+4>>2];if((h|0)<=(f-i|0)){j=i-b|0;if((j|0)>=(h|0)){g=i;f=d;break a}g=i;f=c+j|0;if((f|0)!=(d|0)){e=f;while(1){F[g|0]=I[e|0];g=g+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=g;if((j|0)>0){break a}return}e=H[a>>2];d=h+(i-e|0)|0;if((d|0)>=0){g=b-e|0;f=f-e|0;j=f<<1;f=f>>>0<1073741823?d>>>0>j>>>0?d:j:2147483647;if(f){d=ra(f)}else{d=0}c=sa(g+d|0,c,h);if((g|0)>0){sa(d,e,g)}c=c+h|0;if((b|0)!=(i|0)){g=(b^-1)+i|0;h=i-b&7;if(h){e=0;while(1){F[c|0]=I[b|0];c=c+1|0;b=b+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if(g>>>0>=7){while(1){F[c|0]=I[b|0];F[c+1|0]=I[b+1|0];F[c+2|0]=I[b+2|0];F[c+3|0]=I[b+3|0];F[c+4|0]=I[b+4|0];F[c+5|0]=I[b+5|0];F[c+6|0]=I[b+6|0];F[c+7|0]=I[b+7|0];c=c+8|0;b=b+8|0;if((i|0)!=(b|0)){continue}break}}e=H[a>>2]}H[a+8>>2]=d+f;H[a+4>>2]=c;H[a>>2]=d;if(e){qa(e)}return}ua();X()}e=g;d=e-h|0;if(i>>>0>d>>>0){while(1){F[e|0]=I[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}H[a+4>>2]=e;a=g-(b+h|0)|0;if(a){Ia(g-a|0,b,a)}if((c|0)==(f|0)){return}a=(c^-1)+f|0;g=f-c&7;b:{if(!g){e=b;break b}d=0;e=b;while(1){F[e|0]=I[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){F[e|0]=I[c|0];F[e+1|0]=I[c+1|0];F[e+2|0]=I[c+2|0];F[e+3|0]=I[c+3|0];F[e+4|0]=I[c+4|0];F[e+5|0]=I[c+5|0];F[e+6|0]=I[c+6|0];F[e+7|0]=I[c+7|0];e=e+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}function xf(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=10612;c=H[a+336>>2];if(c){b=H[a+340>>2];if((c|0)==(b|0)){b=c}else{while(1){d=b-12|0;e=H[d>>2];if(e){H[b-8>>2]=e;qa(e)}b=d;if((c|0)!=(b|0)){continue}break}b=H[a+336>>2]}H[a+340>>2]=c;qa(b)}b=H[a+304>>2];if(b){H[a+308>>2]=b;qa(b)}b=H[a+292>>2];if(b){H[a+296>>2]=b;qa(b)}c=H[a+280>>2];H[a+280>>2]=0;if(c){d=c-4|0;b=H[d>>2];if(b){b=c+(b<<5)|0;while(1){b=za(b-32|0);if((c|0)!=(b|0)){continue}break}}qa(d)}b=H[a+268>>2];if(b){H[a+272>>2]=b;qa(b)}b=H[a+244>>2];H[a+244>>2]=0;if(b){qa(b)}b=H[a+232>>2];if(b){H[a+236>>2]=b;qa(b)}za(a+200|0);b=H[a+184>>2];if(b){H[a+188>>2]=b;qa(b)}c=H[a+172>>2];if(c){b=H[a+176>>2];if((c|0)==(b|0)){b=c}else{while(1){d=H[b-20>>2];if(d){H[b-16>>2]=d;qa(d)}d=H[b-32>>2];if(d){H[b-28>>2]=d;qa(d)}Yb(b-132|0);b=b-136|0;if((c|0)!=(b|0)){continue}break}b=H[a+172>>2]}H[a+176>>2]=c;qa(b)}b=H[a+152>>2];if(b){H[a+156>>2]=b;qa(b)}b=H[a+140>>2];if(b){qa(b)}b=H[a+128>>2];if(b){while(1){c=H[b>>2];qa(b);b=c;if(b){continue}break}}b=H[a+120>>2];H[a+120>>2]=0;if(b){qa(b)}b=H[a+108>>2];if(b){H[a+112>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+84>>2];if(b){qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;qa(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;qa(b)}b=H[a+28>>2];if(b){qa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+12>>2];H[a+12>>2]=0;if(b){Zb(a+12|0,b)}return a|0}function Kk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+8>>2]-H[a+4>>2]>>2;b=H[a+40>>2];c=H[a+36>>2];d=b-c>>2;a:{if(e>>>0>d>>>0){g=e-d|0;c=H[a+44>>2];b=H[a+40>>2];if(g>>>0<=c-b>>2>>>0){if(g){i=b;b=g<<2;b=ta(i,0,b)+b|0}H[a+40>>2]=b;break a}b:{c:{d:{j=H[a+36>>2];e=b-j>>2;f=e+g|0;if(f>>>0<1073741824){d=c-j|0;c=d>>1;d=d>>2>>>0<536870911?c>>>0>>0?f:c:1073741823;if(d){if(d>>>0>=1073741824){break d}i=ra(d<<2)}h=(e<<2)+i|0;c=g<<2;f=ta(h,0,c);e=c+f|0;d=(d<<2)+i|0;if((b|0)==(j|0)){break c}while(1){b=b-4|0;c=H[b>>2];H[b>>2]=0;h=h-4|0;H[h>>2]=c;if((b|0)!=(j|0)){continue}break}H[a+44>>2]=d;d=H[a+40>>2];H[a+40>>2]=e;b=H[a+36>>2];H[a+36>>2]=h;if((b|0)==(d|0)){break b}while(1){d=d-4|0;c=H[d>>2];H[d>>2]=0;if(c){fa[H[H[c>>2]+4>>2]](c)}if((b|0)!=(d|0)){continue}break}break b}ua();X()}wa(1604);X()}H[a+44>>2]=d;H[a+40>>2]=e;H[a+36>>2]=f}if(b){qa(b)}break a}if(d>>>0<=e>>>0){break a}c=c+(e<<2)|0;if((c|0)!=(b|0)){while(1){b=b-4|0;d=H[b>>2];H[b>>2]=0;if(d){fa[H[H[d>>2]+4>>2]](d)}if((b|0)!=(c|0)){continue}break}}H[a+40>>2]=c}if(H[a+8>>2]==H[a+4>>2]){return 1}b=0;while(1){e=fa[H[H[a>>2]+56>>2]](a,b)|0;d=b<<2;c=d+H[a+36>>2]|0;f=H[c>>2];H[c>>2]=e;if(f){fa[H[H[f>>2]+4>>2]](f)}c=H[d+H[a+36>>2]>>2];if(c){if(!(!(H[H[a+48>>2]+(b>>>3&536870908)>>2]>>>b&1)|K[a+52>>2]<=b>>>0)){F[c+28|0]=1}b=b+1|0;if(b>>>0>2]-H[a+4>>2]>>2>>>0){continue}}break}return(c|0)!=0|0}function se(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{c:{d:{if(b){if(b>>>0>=1073741824){break d}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=0;if(b-1>>>0>=3){g=b&-4;while(1){c=d<<2;H[c+H[a>>2]>>2]=0;H[H[a>>2]+(c|4)>>2]=0;H[H[a>>2]+(c|8)>>2]=0;H[H[a>>2]+(c|12)>>2]=0;d=d+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=b&3;if(c){while(1){H[H[a>>2]+(d<<2)>>2]=0;d=d+1|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}e=H[a+8>>2];if(!e){break a}c=a+8|0;g=H[e+4>>2];d=Uk(b);if(d>>>0<2){break c}g=b>>>0<=g>>>0?(g>>>0)%(b>>>0)|0:g;H[H[a>>2]+(g<<2)>>2]=c;c=H[e>>2];if(!c){break a}if(d>>>0<=1){break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((g|0)==(f|0)){e=c;break e}d=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=e;e=c;g=f;break e}while(1){f=d;d=H[d>>2];if(H[c+8>>2]==H[d+8>>2]?d:0){continue}break}H[e>>2]=d;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break a}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0;break a}wa(1604);X()}g=b-1&g;H[H[a>>2]+(g<<2)>>2]=c;c=H[e>>2];if(!c){break a}}h=b-1|0;while(1){b=h&H[c+4>>2];f:{if((b|0)==(g|0)){e=c;break f}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=d;d=H[b>>2];if(H[c+8>>2]==H[d+8>>2]?d:0){continue}break}H[e>>2]=d;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break f}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}}}function Nc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=da-16|0;da=d;h=da-16|0;da=h;le(d);da=h+16|0;Sc(d,I[d+11|0]>>>7|0?(H[d+8>>2]&2147483647)-1|0:10);i=da-16|0;da=i;l=+b;if(I[d+11|0]>>>7|0){h=H[d+4>>2]}else{h=I[d+11|0]}while(1){a:{if(I[d+11|0]>>>7|0){e=H[d>>2]}else{e=d}c=e;M[i>>3]=l;k=da-16|0;da=k;H[k+12>>2]=i;f=da-160|0;da=f;e=-1;g=h+1|0;H[f+148>>2]=g?g-1|0:0;j=g?c:f+158|0;H[f+144>>2]=j;c=ta(f,0,144);H[c+76>>2]=-1;H[c+36>>2]=370;H[c+80>>2]=-1;H[c+44>>2]=c+159;H[c+84>>2]=c+144;b:{if((g|0)<0){H[4736]=61;break b}F[j|0]=0;g=0;f=da-208|0;da=f;H[f+204>>2]=i;e=f+160|0;ta(e,0,40);H[f+200>>2]=H[f+204>>2];c:{if((ve(0,f+200|0,f+80|0,e)|0)<0){e=-1;break c}m=H[c+76>>2]>=0;j=H[c>>2];if(H[c+72>>2]<=0){H[c>>2]=j&-33}d:{e:{f:{if(!H[c+48>>2]){H[c+48>>2]=80;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;g=H[c+44>>2];H[c+44>>2]=f;break f}if(H[c+16>>2]){break e}}e=-1;if(be(c)){break d}}e=ve(c,f+200|0,f+80|0,f+160|0)}if(g){fa[H[c+36>>2]](c,0,0)|0;H[c+48>>2]=0;H[c+44>>2]=g;H[c+28>>2]=0;H[c+16>>2]=0;g=H[c+20>>2];H[c+20>>2]=0;e=g?e:-1}g=H[c>>2];H[c>>2]=g|j&32;e=g&32?-1:e;if(!m){break c}}da=f+208|0}da=c+160|0;da=k+16|0;g:{if((e|0)>=0){if(e>>>0<=h>>>0){break a}h=e;break g}h=h<<1|1}Sc(d,h);continue}break}Sc(d,e);h=H[d+4>>2];H[a>>2]=H[d>>2];H[a+4>>2]=h;H[a+8>>2]=H[d+8>>2];le(d);da=i+16|0;if(I[d+11|0]>>>7|0){qa(H[d>>2])}da=d+16|0}function ab(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=H[b+16>>2];e=H[c+4>>2]-g|0;H[c>>2]=0|H[c>>2]-g;H[c+4>>2]=e;e=H[d+4>>2]-g|0;f=H[d>>2]-g|0;H[d>>2]=j|f;H[d+4>>2]=e;h=H[b+16>>2];g=e>>31;j=g+e^g;g=f>>31;if((h|0)<(j+(g+f^g)|0)){i=H[c+4>>2];k=H[c>>2];a:{b:{if((k|0)>=0){e=1;g=1;if((i|0)>=0){break a}f=1;e=-1;g=-1;if(k){break b}break a}f=-1;e=-1;g=-1;if((i|0)<=0){break a}}e=(i|0)<=0?-1:1;g=f}f=1;j=-1;l=k<<1;k=N(g,h);l=l-k|0;g=(N(e,g)|0)>=0;e=N(e,h);H[c+4>>2]=((g?0-l|0:l)+e|0)/2;e=(i<<1)-e|0;H[c>>2]=(k+(g?0-e|0:e)|0)/2;g=H[d+4>>2];i=H[d>>2];c:{d:{if((i|0)>=0){e=1;if((g|0)>=0){break c}j=1;f=-1;e=-1;if(i){break d}break c}f=-1;e=-1;if((g|0)<=0){break c}}f=(g|0)<=0?-1:1;e=j}h=i<<1;j=H[b+16>>2];i=N(j,e);h=h-i|0;l=0-h|0;k=h;h=(N(e,f)|0)>=0;f=N(f,j);e=((h?l:k)+f|0)/2|0;H[d+4>>2]=e;f=(g<<1)-f|0;f=(i+(h?0-f|0:f)|0)/2|0;H[d>>2]=f}e:{f:{g:{h:{i:{j:{if(f){if((f|0)>=0){break j}if((e|0)>0){break h}break e}if(e){break i}e=0;f=0;break e}if((e|0)<0){break g}e=0-H[c+4>>2]|0;H[c>>2]=0-H[c>>2];H[c+4>>2]=e;f=0-H[d>>2]|0;e=0-H[d+4>>2]|0;break f}if((e|0)<=0){break g}}e=H[c>>2];H[c>>2]=0-H[c+4>>2];H[c+4>>2]=e;f=0-H[d+4>>2]|0;e=H[d>>2];break f}e=0-H[c>>2]|0;H[c>>2]=H[c+4>>2];H[c+4>>2]=e;f=H[d+4>>2];e=0-H[d>>2]|0}H[d>>2]=f;H[d+4>>2]=e}d=H[c>>2];b=H[b+4>>2];c=H[c+4>>2]-e|0;H[a+4>>2]=(b&c>>31)+c;c=a;a=d-f|0;H[c>>2]=(b&a>>31)+a}function Ze(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;a=0;a:{if(!b|!d|(c|0)<0){break a}f=H[b+8>>2];if(H[b+12>>2]-f>>2<=(c|0)){break a}if(!H[b+4>>2]){a=ra(36);H[a+4>>2]=0;H[a+8>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;e=a+16|0;H[e>>2]=0;H[e+4>>2]=0;H[a>>2]=a+4;H[a+32>>2]=0;H[a+12>>2]=e;H[b+4>>2]=a}a=H[H[f+(c<<2)>>2]+60>>2];e=ra(28);Wc(e,d);H[e+24>>2]=a;a=H[b+4>>2];c=da-16|0;da=c;H[c+8>>2]=e;b:{if(!e){H[c+8>>2]=0;break b}b=H[a+28>>2];c:{if(b>>>0>2]){H[c+8>>2]=0;H[b>>2]=e;H[a+28>>2]=b+4;break c}b=0;d:{e:{f:{e=H[a+24>>2];f=H[a+28>>2]-e>>2;d=f+1|0;if(d>>>0<1073741824){e=H[a+32>>2]-e|0;g=e>>1;d=e>>2>>>0<536870911?d>>>0>g>>>0?d:g:1073741823;if(d){if(d>>>0>=1073741824){break f}b=ra(d<<2)}g=H[c+8>>2];H[c+8>>2]=0;e=(f<<2)+b|0;H[e>>2]=g;f=(d<<2)+b|0;g=e+4|0;b=H[a+28>>2];d=H[a+24>>2];if((b|0)==(d|0)){break e}while(1){b=b-4|0;h=H[b>>2];H[b>>2]=0;e=e-4|0;H[e>>2]=h;if((b|0)!=(d|0)){continue}break}H[a+32>>2]=f;b=H[a+28>>2];H[a+28>>2]=g;d=H[a+24>>2];H[a+24>>2]=e;if((b|0)==(d|0)){break d}while(1){b=b-4|0;a=H[b>>2];H[b>>2]=0;if(a){pb(a+12|0,H[a+16>>2]);ob(a,H[a+4>>2]);qa(a)}if((b|0)!=(d|0)){continue}break}break d}ua();X()}wa(1604);X()}H[a+32>>2]=f;H[a+28>>2]=g;H[a+24>>2]=e}if(d){qa(d)}}a=H[c+8>>2];H[c+8>>2]=0;if(!a){break b}pb(a+12|0,H[a+16>>2]);ob(a,H[a+4>>2]);qa(a)}da=c+16|0;a=1}return a|0}function Gf(a,b){var c=0,d=0,e=0,f=0,g=0;e=-1;c=(b|0)==-1;d=-1;a:{if(c){break a}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}f=c?-1:(b>>>0)/3|0;g=H[a+28>>2]+(f>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break b}c=(c>>>0)/3|0;if(H[H[a+28>>2]+(c>>>3&268435452)>>2]>>>c&1){break b}f=H[a+172>>2];if((f|0)==H[a+176>>2]){break b}g=1<>>5<<2;while(1){Ja(H[a+280>>2]+(c<<5)|0,(g&H[b+H[(N(c,136)+f|0)+4>>2]>>2])!=0);c=c+1|0;f=H[a+172>>2];if(c>>>0<(H[a+176>>2]-f|0)/136>>>0){continue}break}}c:{if((e|0)==-1){break c}b=H[H[H[a+12>>2]+12>>2]+(e<<2)>>2];if((b|0)==-1){break c}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break c}b=H[a+172>>2];if((b|0)==H[a+176>>2]){break c}f=1<>>5<<2;while(1){Ja(H[a+280>>2]+(c<<5)|0,(f&H[e+H[(N(c,136)+b|0)+4>>2]>>2])!=0);c=c+1|0;b=H[a+172>>2];if(c>>>0<(H[a+176>>2]-b|0)/136>>>0){continue}break}}d:{if((d|0)==-1){break d}b=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2];if((b|0)==-1){break d}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break d}b=H[a+172>>2];if((b|0)==H[a+176>>2]){break d}e=1<>>5<<2;while(1){Ja(H[a+280>>2]+(c<<5)|0,(e&H[d+H[(N(c,136)+b|0)+4>>2]>>2])!=0);c=c+1|0;b=H[a+172>>2];if(c>>>0<(H[a+176>>2]-b|0)/136>>>0){continue}break}}}function ac(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=da-48|0;da=e;f=a+16|0;d=H[f>>2];a:{b:{if(!d){break b}g=H[b>>2];c=f;while(1){h=(g|0)>H[d+16>>2];c=h?c:d;d=H[(h<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)){break b}if((g|0)>=H[c+16>>2]){break a}}h=e+24|0;H[h+4>>2]=0;H[h+8>>2]=0;i=h+4|0;H[h>>2]=i;b=H[b>>2];j=e+16|0;d=j;H[d>>2]=0;H[d+4>>2]=0;H[e+8>>2]=b;H[e+12>>2]=d;c=H[h>>2];if((i|0)!=(c|0)){g=e+8|4;while(1){b=c;d=c+16|0;_f(e+40|0,g,j,d,d);d=H[c+4>>2];c:{if(!d){c=H[b+8>>2];if((b|0)==H[c>>2]){break c}d=b+8|0;while(1){b=H[d>>2];d=b+8|0;c=H[b+8>>2];if((b|0)!=H[c>>2]){continue}break}break c}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(i|0)){continue}break}}d=H[f>>2];d:{if(d){f=a+16|0;g=H[e+8>>2];while(1){b=H[d+16>>2];e:{if((b|0)>(g|0)){c=H[d>>2];if(c){break e}f=d;break d}if((b|0)>=(g|0)){break d}f=d+4|0;c=H[d+4>>2];if(!c){break d}d=f}f=d;d=c;continue}}d=f}c=H[f>>2];if(!c){c=ra(32);H[c+16>>2]=H[e+8>>2];H[c+20>>2]=H[e+12>>2];i=c+24|0;g=H[e+16>>2];H[i>>2]=g;b=H[e+20>>2];H[c+28>>2]=b;f:{if(!b){H[c+20>>2]=i;break f}H[g+8>>2]=i;H[e+16>>2]=0;H[e+20>>2]=0;H[e+12>>2]=j}H[c+8>>2]=d;H[c>>2]=0;H[c+4>>2]=0;H[f>>2]=c;b=H[H[a+12>>2]>>2];if(b){H[a+12>>2]=b;b=H[f>>2]}else{b=c}xb(H[a+16>>2],b);H[a+20>>2]=H[a+20>>2]+1}Oa(e+8|4,H[e+16>>2]);Oa(h,H[h+4>>2])}da=e+48|0;return c+20|0}function Tf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=da-16|0;da=l;g=H[b+28>>2];h=H[b+24>>2];H[a+8>>2]=h;H[a+12>>2]=g;g=H[b+20>>2];H[a>>2]=H[b+16>>2];H[a+4>>2]=g;g=H[b+36>>2];H[a+16>>2]=H[b+32>>2];H[a+20>>2]=g;H[a+8>>2]=d+h;a:{b:{if((d|0)>0){g=H[b>>2];while(1){f=H[b+4>>2]-g>>2;h=H[(i<<2)+c>>2];if(f>>>0<=h>>>0){H[l+12>>2]=0;j=h+1|0;c:{if(j>>>0>f>>>0){Na(b,j-f|0,l+12|0);break c}if(f>>>0<=j>>>0){break c}H[b+4>>2]=(j<<2)+g}g=H[b>>2]}j=(h<<2)+g|0;f=H[j>>2];d:{if((f|0)>=2){k=+(f|0);k=ya(k)*k;break d}k=0;if(f){break d}H[a+16>>2]=H[a+16>>2]+1;if(h>>>0<=K[a+12>>2]){break d}H[a+12>>2]=h}h=f+1|0;H[j>>2]=h;m=+(h|0);n=a,o=ya(m)*m-k+M[a>>3],M[n>>3]=o;i=i+1|0;if((i|0)!=(d|0)){continue}break}if(e){break b}if((d|0)<=0){break a}a=H[b>>2];e=0;i=0;if(d-1>>>0>=3){h=d&-4;g=0;while(1){b=i<<2;f=a+(H[b+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;f=a+(H[(b|4)+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;f=a+(H[(b|8)+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;b=a+(H[(b|12)+c>>2]<<2)|0;H[b>>2]=H[b>>2]-1;i=i+4|0;g=g+4|0;if((h|0)!=(g|0)){continue}break}}b=d&3;if(!b){break a}while(1){d=a+(H[(i<<2)+c>>2]<<2)|0;H[d>>2]=H[d>>2]-1;i=i+1|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}break a}if(!e){break a}}c=H[a+4>>2];H[b+16>>2]=H[a>>2];H[b+20>>2]=c;H[b+32>>2]=H[a+16>>2];c=H[a+12>>2];H[b+24>>2]=H[a+8>>2];H[b+28>>2]=c}da=l+16|0}function Za(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;f=da-16|0;da=f;Fa(H[a+12>>2],b);c=1;a:{if(!H[a+12>>2]){break a}m=f+15|0;n=f+16|0;while(1){b:{c:{e=H[a>>2];i=H[e+(h<<3)>>2];if(i>>>0>=64){d=1;if(i>>>0<16384){break c}if(i>>>0<=4194303){d=2;break c}break a}c=0;d=0;if(i){break c}while(1){d:{if(H[(e+(c+h<<3)|0)+8>>2]){d=c;break d}d=c+1|0;if(H[(e+(h+d<<3)|0)+8>>2]){break d}d=c+2|0;if(H[(e+(h+d<<3)|0)+8>>2]){break d}d=63;c=c+3|0;if((c|0)!=63){continue}}break}F[f+15|0]=d<<2|3;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){va(b,H[b+4>>2],f+15|0,n)}h=d+h|0;break b}F[f+14|0]=i<<2|d;e=H[b+20>>2];if(!H[b+16>>2]&(e|0)<=0|(e|0)<0){va(b,H[b+4>>2],f+14|0,m)}if(!c){break b}e=H[b+16>>2];c=H[b+20>>2];if(!!e&(c|0)>=0|(c|0)>0){break b}o=d>>>0>1?d:1;k=0;while(1){k=k+1|0;l=i>>>(k<<3)-2|0;F[f+13|0]=l;e:{if(!!e&(c|0)>=0|(c|0)>0){break e}g=H[b+8>>2];d=H[b+4>>2];if((g-d|0)>0){F[d|0]=I[f+13|0];H[b+4>>2]=d+1;break e}e=H[b>>2];d=d-e|0;c=d+1|0;if((c|0)>=0){g=g-e|0;j=g<<1;g=g>>>0<1073741823?c>>>0>j>>>0?c:j:2147483647;if(g){c=ra(g)}else{c=0}j=c+d|0;F[j|0]=l;if((d|0)>0){sa(c,e,d)}H[b+8>>2]=c+g;H[b+4>>2]=j+1;H[b>>2]=c;if(!e){break e}qa(e);break e}ua();X()}if((k|0)==(o|0)){break b}e=H[b+16>>2];c=H[b+20>>2];continue}}c=1;h=h+1|0;if(h>>>0>2]){continue}break}}da=f+16|0}function Hf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;f=d-c|0;if((f|0)<=0){return}a:{j=f>>2;e=H[a+8>>2];i=H[a+4>>2];if((j|0)<=e-i>>2){h=i-b|0;g=h>>2;if((g|0)>=(j|0)){e=i;g=d;break a}e=i;g=(g<<2)+c|0;if((g|0)!=(d|0)){f=g;while(1){H[e>>2]=H[f>>2];e=e+4|0;f=f+4|0;if((f|0)!=(d|0)){continue}break}}H[a+4>>2]=e;if((h|0)>0){break a}return}b:{h=H[a>>2];g=j+(i-h>>2)|0;if(g>>>0<1073741824){e=e-h|0;d=e>>1;g=e>>2>>>0<536870911?d>>>0>>0?g:d:1073741823;if(g){if(g>>>0>=1073741824){break b}d=ra(g<<2)}else{d=0}e=b-h|0;c=sa(d+(e>>2<<2)|0,c,f&-4);if((e|0)>0){sa(d,h,e)}e=c+(j<<2)|0;if((b|0)!=(i|0)){while(1){H[e>>2]=H[b>>2];e=e+4|0;b=b+4|0;if((i|0)!=(b|0)){continue}break}}H[a+8>>2]=d+(g<<2);H[a+4>>2]=e;H[a>>2]=d;if(h){qa(h)}return}ua();X()}wa(1604);X()}f=j<<2;j=e-(f+b|0)|0;d=e;f=e-f|0;if(i>>>0>f>>>0){h=f;while(1){H[d>>2]=H[h>>2];d=d+4|0;h=h+4|0;if(i>>>0>h>>>0){continue}break}}H[a+4>>2]=d;c:{if(!j){break c}i=j-4|0;a=(i>>>2|0)+1&3;if(a){d=0;while(1){e=e-4|0;f=f-4|0;H[e>>2]=H[f>>2];d=d+1|0;if((a|0)!=(d|0)){continue}break}}if(i>>>0<12){break c}while(1){H[e-4>>2]=H[f-4>>2];H[e-8>>2]=H[f-8>>2];H[e-12>>2]=H[f-12>>2];e=e-16|0;f=f-16|0;H[e>>2]=H[f>>2];if((b|0)!=(f|0)){continue}break}}if((c|0)==(g|0)){return}e=b;while(1){H[e>>2]=H[c>>2];e=e+4|0;c=c+4|0;if((g|0)!=(c|0)){continue}break}} -function Fk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+16>>2];a:{if(H[a+20>>2]-e>>2<=(b|0)){break a}i=H[e+(b<<2)>>2];if((i|0)<0){break a}if(K[a+52>>2]<=i>>>0){b:{b=da-16|0;da=b;c:{f=H[a+52>>2];c=i+1|0;d:{if(f>>>0>>0){e=c-f|0;g=H[a+56>>2];d=g<<5;e:{if(!(e>>>0>d>>>0|f>>>0>d-e>>>0)){H[a+52>>2]=c;d=f&31;c=H[a+48>>2]+(f>>>3&536870908)|0;break e}H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;if((c|0)<0){break c}if(d>>>0<=1073741822){c=c+31&-32;d=g<<6;h=c>>>0>d>>>0?c:d}else{h=2147483647}Ib(b,h);d=H[a+52>>2];H[b+4>>2]=d+e;f=H[a+48>>2];c=H[b>>2];f:{if((d|0)<=0){d=0;break f}h=d>>>5|0;g=h<<2;c=Ia(c,f,g)+g|0;d=d-(h<<5)|0;g:{if((d|0)<=0){d=0;break g}h=-1>>>32-d|0;H[c>>2]=H[c>>2]&(h^-1)|h&H[f+g>>2]}f=H[a+48>>2]}H[a+48>>2]=H[b>>2];H[b>>2]=f;g=H[a+52>>2];H[a+52>>2]=H[b+4>>2];H[b+4>>2]=g;g=H[a+56>>2];H[a+56>>2]=H[b+8>>2];H[b+8>>2]=g;if(!f){break e}qa(f)}if(!e){break d}if(d){f=32-d|0;g=f>>>0>e>>>0?e:f;H[c>>2]=H[c>>2]&(-1<>>f-g^-1);e=e-g|0;c=c+4|0}h=c;c=e>>>5<<2;d=ta(h,0,c);e=e&31;if(!e){break d}c=c+d|0;H[c>>2]=H[c>>2]&(-1>>>32-e^-1);break d}H[a+52>>2]=c}da=b+16|0;break b}ua();X()}}c=1;b=H[a+48>>2]+(i>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];a=H[a+36>>2];if(b-a>>2>>>0<=i>>>0){break a}F[H[a+(i<<2)>>2]+28|0]=1}return c|0}function ye(a){var b=0,c=0,d=0,e=0,f=0;a:{b:{c:{d:{e:{b=H[a+4>>2];f:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break f}b=Sa(a)}switch(b-43|0){case 0:case 2:break e;default:break d}}f=(b|0)==45;b=H[a+4>>2];g:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break g}b=Sa(a)}e=b-58|0;if(e>>>0>4294967285){break c}if(H[a+116>>2]<0){break b}H[a+4>>2]=H[a+4>>2]-1;break b}e=b-58|0}if(e>>>0<4294967286){break b}e=b-48|0;if(e>>>0<10){while(1){d=(N(d,10)+b|0)-48|0;c=(d|0)<214748364;b=H[a+4>>2];h:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break h}b=Sa(a)}e=b-48|0;if(c&e>>>0<=9){continue}break}c=d>>31}i:{if(e>>>0>=10){break i}while(1){c=Rk(d,c,10,0);d=c+b|0;b=ea;b=c>>>0>d>>>0?b+1|0:b;c=d;d=c-48|0;c=b-(c>>>0<48)|0;b=H[a+4>>2];j:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break j}b=Sa(a)}e=b-48|0;if(e>>>0>9){break i}if(d>>>0<2061584302&(c|0)<=21474836|(c|0)<21474836){continue}break}}if(e>>>0<10){while(1){b=H[a+4>>2];k:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break k}b=Sa(a)}if(b-48>>>0<10){continue}break}}b=H[a+116>>2];if((b|0)>0|(b|0)>=0){H[a+4>>2]=H[a+4>>2]-1}a=d;d=f?0-a|0:a;c=f?0-(((a|0)!=0)+c|0)|0:c;break a}c=-2147483648;if(H[a+116>>2]<0){break a}H[a+4>>2]=H[a+4>>2]-1;ea=-2147483648;return 0}ea=c;return d}function Zd(a,b){var c=0,d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[a+8>>2]=b;H[a>>2]=0;c=a+12|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+60>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;c=a- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[c+16>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+100>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+112>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;g=a+140|0;a:{b:{if(b){if(b>>>0<1073741824){break b}ua();X()}H[a+116>>2]=0;H[a+120>>2]=0;H[a+132>>2]=0;H[a+136>>2]=0;H[a+124>>2]=0;H[a+128>>2]=0;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;c=1;break a}c=b<<2;d=ra(c);H[a+104>>2]=d;f=c+d|0;H[a+112>>2]=f;ta(d,0,c);H[a+124>>2]=0;H[a+116>>2]=0;H[a+120>>2]=0;H[a+108>>2]=f;d=ra(c);H[a+116>>2]=d;f=c+d|0;H[a+124>>2]=f;ta(d,0,c);H[a+136>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=f;d=ra(c);H[a+128>>2]=d;f=c+d|0;H[a+136>>2]=f;ta(d,0,c);H[a+132>>2]=f;d=ra(c);H[e>>2]=d;f=c+d|0;H[e+8>>2]=f;ta(d,0,c);H[e+4>>2]=f;c=b<<5|1}Nb(g,c,e);d=H[e>>2];if(d){H[e+4>>2]=d;qa(d)}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if(b){b=b<<2;d=ra(b);H[e>>2]=d;f=b+d|0;H[e+8>>2]=f;ta(d,0,b);H[e+4>>2]=f}Nb(a+152|0,c,e);b=H[e>>2];if(b){H[e+4>>2]=b;qa(b)}da=e+16|0;return a}function Bi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=da-16|0;da=f;fa[H[H[b>>2]+64>>2]](a,b);if(!H[a>>2]){if(F[a+15|0]<0){qa(H[a+4>>2])}g=H[b+48>>2];c=ra(32);H[f>>2]=c;H[f+4>>2]=29;H[f+8>>2]=-2147483616;F[c+29|0]=0;d=I[1420]|I[1421]<<8|(I[1422]<<16|I[1423]<<24);e=I[1416]|I[1417]<<8|(I[1418]<<16|I[1419]<<24);F[c+21|0]=e;F[c+22|0]=e>>>8;F[c+23|0]=e>>>16;F[c+24|0]=e>>>24;F[c+25|0]=d;F[c+26|0]=d>>>8;F[c+27|0]=d>>>16;F[c+28|0]=d>>>24;d=I[1415]|I[1416]<<8|(I[1417]<<16|I[1418]<<24);e=I[1411]|I[1412]<<8|(I[1413]<<16|I[1414]<<24);F[c+16|0]=e;F[c+17|0]=e>>>8;F[c+18|0]=e>>>16;F[c+19|0]=e>>>24;F[c+20|0]=d;F[c+21|0]=d>>>8;F[c+22|0]=d>>>16;F[c+23|0]=d>>>24;d=I[1407]|I[1408]<<8|(I[1409]<<16|I[1410]<<24);e=I[1403]|I[1404]<<8|(I[1405]<<16|I[1406]<<24);F[c+8|0]=e;F[c+9|0]=e>>>8;F[c+10|0]=e>>>16;F[c+11|0]=e>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1399]|I[1400]<<8|(I[1401]<<16|I[1402]<<24);e=I[1395]|I[1396]<<8|(I[1397]<<16|I[1398]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;c=Qb(g,f,0);if(F[f+11|0]<0){qa(H[f>>2])}if(c){fa[H[H[b>>2]+68>>2]](b)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}da=f+16|0}function Ab(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=H[a+8>>2];e=H[a>>2];if(d-e>>2>>>0>=b>>>0){g=H[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){H[d>>2]=H[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){d=a;a=b-h|0;if(a){a=(a<<2)+g|0;while(1){H[g>>2]=H[c>>2];g=g+4|0;if((a|0)!=(g|0)){continue}break}}else{a=g}H[d+4>>2]=a;return}H[a+4>>2]=e+(b<<2);return}if(e){H[a+4>>2]=e;qa(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>2>>>0<536870911?b>>>0>e>>>0?b:e:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=ra(d);H[a>>2]=e;H[a+8>>2]=d+e;c=H[c>>2];d=e;b=b<<2;g=b-4|0;h=(g>>>2|0)+1&7;if(h){while(1){H[d>>2]=c;d=d+4|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}b=b+e|0;if(g>>>0>=28){while(1){H[d+28>>2]=c;H[d+24>>2]=c;H[d+20>>2]=c;H[d+16>>2]=c;H[d+12>>2]=c;H[d+8>>2]=c;H[d+4>>2]=c;H[d>>2]=c;d=d+32|0;if((b|0)!=(d|0)){continue}break}}H[a+4>>2]=b;return}ua();X()}function Kd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=H[a+8>>2];d=H[a>>2];if(c-d>>3>>>0>=2){f=H[a+4>>2];h=f-d>>3;g=h>>>0<2?h:2;b:{if(!g){break b}j=g-1|0;i=g&7;c:{if(!i){c=d;break c}c=d;while(1){k=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=k;g=g-1|0;c=c+8|0;e=e+1|0;if((e|0)!=(i|0)){continue}break}}if(j>>>0<7){break b}while(1){e=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=e;e=H[b+4>>2];H[c+8>>2]=H[b>>2];H[c+12>>2]=e;e=H[b+4>>2];H[c+16>>2]=H[b>>2];H[c+20>>2]=e;e=H[b+4>>2];H[c+24>>2]=H[b>>2];H[c+28>>2]=e;e=H[b+4>>2];H[c+32>>2]=H[b>>2];H[c+36>>2]=e;e=H[b+4>>2];H[c+40>>2]=H[b>>2];H[c+44>>2]=e;e=H[b+4>>2];H[c+48>>2]=H[b>>2];H[c+52>>2]=e;e=H[b+4>>2];H[c+56>>2]=H[b>>2];H[c+60>>2]=e;c=c- -64|0;g=g-8|0;if(g){continue}break}}if(h>>>0<2){d=a;a=2-h|0;if(a){a=(a<<3)+f|0;while(1){c=H[b+4>>2];H[f>>2]=H[b>>2];H[f+4>>2]=c;f=f+8|0;if((a|0)!=(f|0)){continue}break}}else{a=f}H[d+4>>2]=a;return}break a}if(d){H[a+4>>2]=d;qa(d);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;c=0}d=c>>2;d=c>>3>>>0<268435455?d>>>0<2?2:d:536870911;if(d>>>0<536870912){c=d<<3;d=ra(c);H[a>>2]=d;H[a+8>>2]=c+d;e=H[b>>2];f=H[b+4>>2];c=d;b=0;while(1){H[c>>2]=e;H[c+4>>2]=f;c=c+8|0;b=b+1|0;if((b|0)!=2){continue}break}break a}ua();X()}H[a+4>>2]=d+16}function vh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;Ee(a,b,c);c=H[a+84>>2];d=H[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=H[a+92>>2];c=H[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=(d<<2)-4|0;g=(f>>>2|0)+1&7;if(g){while(1){H[b>>2]=1;b=b+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}c=(d<<2)+c|0;if(f>>>0<28){break c}while(1){H[b+24>>2]=1;H[b+28>>2]=1;H[b+16>>2]=1;H[b+20>>2]=1;H[b+8>>2]=1;H[b+12>>2]=1;H[b>>2]=1;H[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}H[a+88>>2]=c;break b}d:{f=H[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;i=e>>1;e=e>>2>>>0<536870911?b>>>0>i>>>0?b:i:1073741823;if(e){if(e>>>0>=1073741824){break d}g=ra(e<<2)}c=(c<<2)+g|0;b=c;d=d<<2;i=d-4|0;k=(i>>>2|0)+1&7;if(k){b=c;while(1){H[b>>2]=1;b=b+4|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}c=c+d|0;if(i>>>0>=28){while(1){H[b+24>>2]=1;H[b+28>>2]=1;H[b+16>>2]=1;H[b+20>>2]=1;H[b+8>>2]=1;H[b+12>>2]=1;H[b>>2]=1;H[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){sa(g,f,j)}H[a+92>>2]=(e<<2)+g;H[a+88>>2]=c;H[a+84>>2]=g;if(f){qa(f)}break b}ua();X()}wa(1604);X()}return}if(b>>>0>=d>>>0){break a}H[a+88>>2]=c+(b<<2)}}function fb(a){var b=0,c=0,d=0,e=0,f=0;e=da-16|0;da=e;b=ra(16);H[e>>2]=b;H[e+4>>2]=14;H[e+8>>2]=-2147483632;F[b+14|0]=0;c=I[1761]|I[1762]<<8|(I[1763]<<16|I[1764]<<24);d=I[1757]|I[1758]<<8|(I[1759]<<16|I[1760]<<24);F[b+6|0]=d;F[b+7|0]=d>>>8;F[b+8|0]=d>>>16;F[b+9|0]=d>>>24;F[b+10|0]=c;F[b+11|0]=c>>>8;F[b+12|0]=c>>>16;F[b+13|0]=c>>>24;c=I[1755]|I[1756]<<8|(I[1757]<<16|I[1758]<<24);d=I[1751]|I[1752]<<8|(I[1753]<<16|I[1754]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;f=gb(a,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}b=ra(16);H[e>>2]=b;H[e+4>>2]=14;H[e+8>>2]=-2147483632;F[b+14|0]=0;c=I[1776]|I[1777]<<8|(I[1778]<<16|I[1779]<<24);d=I[1772]|I[1773]<<8|(I[1774]<<16|I[1775]<<24);F[b+6|0]=d;F[b+7|0]=d>>>8;F[b+8|0]=d>>>16;F[b+9|0]=d>>>24;F[b+10|0]=c;F[b+11|0]=c>>>8;F[b+12|0]=c>>>16;F[b+13|0]=c>>>24;c=I[1770]|I[1771]<<8|(I[1772]<<16|I[1773]<<24);d=I[1766]|I[1767]<<8|(I[1768]<<16|I[1769]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;a=gb(a,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}da=e+16|0;a=(a|0)>(f|0)?a:f;return(a|0)==-1?5:a}function Wd(a,b){var c=0,d=0,e=0,f=0,g=0;d=da-16|0;da=d;H[a+8>>2]=b;H[a>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;H[a+28>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+48>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+68>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+88>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+100>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;g=a+128|0;a:{b:{if(b){if(b>>>0<1073741824){break b}ua();X()}H[a+104>>2]=0;H[a+108>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;e=1;break a}e=b<<2;c=ra(e);H[a+92>>2]=c;f=c+e|0;H[a+100>>2]=f;ta(c,0,e);H[a+112>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+96>>2]=f;c=ra(e);H[a+104>>2]=c;f=c+e|0;H[a+112>>2]=f;ta(c,0,e);H[a+124>>2]=0;H[a+116>>2]=0;H[a+120>>2]=0;H[a+108>>2]=f;c=ra(e);H[a+116>>2]=c;f=c+e|0;H[a+124>>2]=f;ta(c,0,e);H[a+120>>2]=f;c=ra(e);H[d>>2]=c;f=c+e|0;H[d+8>>2]=f;ta(c,0,e);H[d+4>>2]=f;e=b<<5|1}Nb(g,e,d);c=H[d>>2];if(c){H[d+4>>2]=c;qa(c)}H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;if(b){b=b<<2;c=ra(b);H[d>>2]=c;f=b+c|0;H[d+8>>2]=f;ta(c,0,b);H[d+4>>2]=f}Nb(a+140|0,e,d);b=H[d>>2];if(b){H[d+4>>2]=b;qa(b)}da=d+16|0;return a}function qc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=-1;a:{if((b|0)==-1){h=H[a+12>>2];i=h+12|0;d=1;g=-1;break a}b:{c:{if((b>>>0)%3|0){e=b-1|0;h=H[a+12>>2];i=h+12|0;break c}h=H[a+12>>2];i=h+12|0;e=b+2|0;if((e|0)!=-1){break c}d=1;break b}g=H[h+12>>2];while(1){f=e;d=H[g+(e<<2)>>2];if((d|0)!=-1){f=-1;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)!=-1){continue}}break}d=(d|0)!=-1;g=-1;if((b|0)==-1){break a}}g=H[H[h>>2]+(b<<2)>>2]}b=0;if(c){b=H[a+84>>2]+(g>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2]+(g<<2)>>2];e=H[a+140>>2]+(c>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0){e=f-1|0;break e}e=f+2|0;if((e|0)!=-1){break e}f=-3;break d}c=H[H[h>>2]+(e<<2)>>2]}if((c|0)!=(g|0)){j=H[a+84>>2];while(1){a=f;f=(c>>>3&536870908)+j|0;H[f>>2]=H[f>>2]|1<>>0)%3|0?d:a-2|0;if((d|0)==-1){break f}e=H[i>>2];while(1){a=H[e+(d<<2)>>2];if((a|0)!=-1){d=a+1|0;d=(d>>>0)%3|0?d:a-2|0;if((d|0)!=-1){continue}break f}break}g:{if((d>>>0)%3|0){e=d-1|0;break g}e=d+2|0;if((e|0)!=-1){break g}f=-3;break f}c=H[H[h>>2]+(e<<2)>>2];f=d}b=b+1|0;if((c|0)!=(g|0)){continue}break}}}function Lf(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{b:{b=H[a+12>>2];c=H[b+4>>2]-H[b>>2]|0;if(!c){break b}j=a+140|0;c=c>>2;k=c>>>0>1?c:1;while(1){c:{if(nc(b,(e>>>0)/3|0)){break c}b=H[a+12>>2];if(H[H[b+12>>2]+(e<<2)>>2]!=-1){break c}f=H[a+152>>2];d=e+1|0;d=(d>>>0)%3|0?d:e-2|0;if((d|0)!=-1){b=H[H[b>>2]+(d<<2)>>2]}else{b=-1}c=b<<2;if(H[f+c>>2]!=-1){break c}g=-1;h=H[a+144>>2];b=h;d=H[a+148>>2];if((b|0)==d<<5){if((h+1|0)<0){break a}if(h>>>0<=1073741822){b=h+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Ib(j,b);f=H[a+152>>2];g=H[c+f>>2];b=H[a+144>>2]}H[a+144>>2]=b+1;d=H[a+140>>2]+(b>>>3&536870908)|0;i=H[d>>2];m=d,n=Vk(b)&i,H[m>>2]=n;if((g|0)!=-1){break c}i=H[a+12>>2];c=c+f|0;b=e;while(1){d=b;H[c>>2]=h;b=-1;g=-1;d:{if((d|0)==-1){break d}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break d}l=H[i+12>>2];while(1){d=H[(c<<2)+l>>2];if((d|0)!=-1){c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)!=-1){continue}break d}break}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){g=H[H[i>>2]+(b<<2)>>2]}b=c}c=(g<<2)+f|0;if(H[c>>2]==-1){continue}break}}e=e+1|0;if((k|0)==(e|0)){break b}b=H[a+12>>2];continue}}return 1}ua();X()}function eg(a,b,c){var d=0,e=0,f=0,g=0;f=da-16|0;da=f;d=ra(16);H[f>>2]=d;H[f+4>>2]=14;H[f+8>>2]=-2147483632;F[d+14|0]=0;g=I[1761]|I[1762]<<8|(I[1763]<<16|I[1764]<<24);e=I[1757]|I[1758]<<8|(I[1759]<<16|I[1760]<<24);F[d+6|0]=e;F[d+7|0]=e>>>8;F[d+8|0]=e>>>16;F[d+9|0]=e>>>24;F[d+10|0]=g;F[d+11|0]=g>>>8;F[d+12|0]=g>>>16;F[d+13|0]=g>>>24;g=I[1755]|I[1756]<<8|(I[1757]<<16|I[1758]<<24);e=I[1751]|I[1752]<<8|(I[1753]<<16|I[1754]<<24);F[d|0]=e;F[d+1|0]=e>>>8;F[d+2|0]=e>>>16;F[d+3|0]=e>>>24;F[d+4|0]=g;F[d+5|0]=g>>>8;F[d+6|0]=g>>>16;F[d+7|0]=g>>>24;d=a+4|0;wb(d,f,b);if(F[f+11|0]<0){qa(H[f>>2])}a=ra(16);H[f>>2]=a;H[f+4>>2]=14;H[f+8>>2]=-2147483632;F[a+14|0]=0;e=I[1776]|I[1777]<<8|(I[1778]<<16|I[1779]<<24);b=I[1772]|I[1773]<<8|(I[1774]<<16|I[1775]<<24);F[a+6|0]=b;F[a+7|0]=b>>>8;F[a+8|0]=b>>>16;F[a+9|0]=b>>>24;F[a+10|0]=e;F[a+11|0]=e>>>8;F[a+12|0]=e>>>16;F[a+13|0]=e>>>24;e=I[1770]|I[1771]<<8|(I[1772]<<16|I[1773]<<24);b=I[1766]|I[1767]<<8|(I[1768]<<16|I[1769]<<24);F[a|0]=b;F[a+1|0]=b>>>8;F[a+2|0]=b>>>16;F[a+3|0]=b>>>24;F[a+4|0]=e;F[a+5|0]=e>>>8;F[a+6|0]=e>>>16;F[a+7|0]=e>>>24;wb(d,f,c);if(F[f+11|0]<0){qa(H[f>>2])}da=f+16|0}function Na(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=H[a+8>>2];e=H[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=(b<<2)-4|0;h=(g>>>2|0)+1&7;if(h){while(1){H[d>>2]=H[c>>2];d=d+4|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}e=(b<<2)+e|0;if(g>>>0<28){break a}while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=e;return}b:{g=H[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;j=f>>1;f=f>>2>>>0<536870911?d>>>0>j>>>0?d:j:1073741823;if(f){if(f>>>0>=1073741824){break b}h=ra(f<<2)}e=(e<<2)+h|0;d=e;b=b<<2;j=b-4|0;l=(j>>>2|0)+1&7;if(l){d=e;while(1){H[d>>2]=H[c>>2];d=d+4|0;i=i+1|0;if((l|0)!=(i|0)){continue}break}}b=b+e|0;if(j>>>0>=28){while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;if((b|0)!=(d|0)){continue}break}}if((k|0)>0){sa(h,g,k)}H[a+8>>2]=(f<<2)+h;H[a+4>>2]=b;H[a>>2]=h;if(g){qa(g)}return}ua();X()}wa(1604);X()}function zf(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=10560;e=H[a+280>>2];H[a+280>>2]=0;if(e){d=e-4|0;b=H[d>>2];if(b){c=(b<<5)+e|0;while(1){c=za(c-32|0);if((e|0)!=(c|0)){continue}break}}qa(d)}b=H[a+268>>2];if(b){H[a+272>>2]=b;qa(b)}b=H[a+244>>2];H[a+244>>2]=0;if(b){qa(b)}b=H[a+232>>2];if(b){H[a+236>>2]=b;qa(b)}za(a+200|0);b=H[a+184>>2];if(b){H[a+188>>2]=b;qa(b)}d=H[a+172>>2];if(d){c=H[a+176>>2];if((d|0)==(c|0)){b=d}else{while(1){b=H[c-20>>2];if(b){H[c-16>>2]=b;qa(b)}b=H[c-32>>2];if(b){H[c-28>>2]=b;qa(b)}Yb(c-132|0);c=c-136|0;if((d|0)!=(c|0)){continue}break}b=H[a+172>>2]}H[a+176>>2]=d;qa(b)}b=H[a+152>>2];if(b){H[a+156>>2]=b;qa(b)}b=H[a+140>>2];if(b){qa(b)}c=H[a+128>>2];if(c){while(1){b=H[c>>2];qa(c);c=b;if(b){continue}break}}b=H[a+120>>2];H[a+120>>2]=0;if(b){qa(b)}b=H[a+108>>2];if(b){H[a+112>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+84>>2];if(b){qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;qa(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;qa(b)}b=H[a+28>>2];if(b){qa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+12>>2];H[a+12>>2]=0;if(b){Zb(a+12|0,b)}return a|0}function Sa(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=H[a+112>>2];d=H[a+116>>2];f=!!(c|d);b=c;a:{i=f;f=H[a+4>>2];e=H[a+44>>2];c=f-e|0;h=c;g=c+H[a+120>>2]|0;c=H[a+124>>2]+(c>>31)|0;c=g>>>0>>0?c+1|0:c;if(!(i&(b>>>0<=g>>>0&(c|0)>=(d|0)|(c|0)>(d|0)))){d=da-16|0;da=d;f=-1;b=H[a+72>>2];H[a+72>>2]=b-1|b;if(H[a+20>>2]!=H[a+28>>2]){fa[H[a+36>>2]](a,0,0)|0}H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;b=H[a>>2];b:{if(b&4){H[a>>2]=b|32;b=-1;break b}e=H[a+44>>2]+H[a+48>>2]|0;H[a+8>>2]=e;H[a+4>>2]=e;b=b<<27>>31}c:{if(b){break c}if((fa[H[a+32>>2]](a,d+15|0,1)|0)!=1){break c}f=I[d+15|0]}da=d+16|0;if((f|0)>=0){break a}e=H[a+44>>2];f=H[a+4>>2]}H[a+112>>2]=-1;H[a+116>>2]=-1;H[a+104>>2]=f;b=e-f|0;d=b+g|0;c=(b>>31)+c|0;H[a+120>>2]=d;H[a+124>>2]=d>>>0>>0?c+1|0:c;return-1}d=g+1|0;c=d?c:c+1|0;g=H[a+4>>2];e=H[a+8>>2];b=H[a+112>>2];h=H[a+116>>2];d:{if(!(b|h)){break d}i=b-d|0;b=h-(c+(d>>>0>b>>>0)|0)|0;j=e-g|0;h=j>>31;if((b|0)>=(h|0)&i>>>0>=j>>>0|(b|0)>(h|0)){break d}e=g+i|0}H[a+104>>2]=e;b=H[a+44>>2];e=b-g|0;d=e+d|0;c=(e>>31)+c|0;H[a+120>>2]=d;H[a+124>>2]=d>>>0>>0?c+1|0:c;if(b>>>0>=g>>>0){F[g-1|0]=f}return f}function sa(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){$(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){F[c|0]=I[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){H[c>>2]=H[b>>2];H[c+4>>2]=H[b+4>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=H[b+12>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=H[b+20>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=H[b+28>>2];H[c+32>>2]=H[b+32>>2];H[c+36>>2]=H[b+36>>2];H[c+40>>2]=H[b+40>>2];H[c+44>>2]=H[b+44>>2];H[c+48>>2]=H[b+48>>2];H[c+52>>2]=H[b+52>>2];H[c+56>>2]=H[b+56>>2];H[c+60>>2]=H[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){H[c>>2]=H[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){F[c|0]=I[b|0];F[c+1|0]=I[b+1|0];F[c+2|0]=I[b+2|0];F[c+3|0]=I[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){F[c|0]=I[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function qi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=da-16|0;da=d;a:{b:{c=H[a+8>>2];c:{if((c|0)==H[a+12>>2]){c=ra(76);pe(c,b);H[c+36>>2]=0;H[c+40>>2]=0;H[c>>2]=2312;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+64>>2]=0;H[c+68>>2]=0;H[c+72>>2]=0;H[d+8>>2]=c;b=H[a+12>>2];d:{if(b>>>0>2]){H[d+8>>2]=0;H[b>>2]=c;H[a+12>>2]=b+4;break d}rc(a+8|0,d+8|0)}a=H[d+8>>2];H[d+8>>2]=0;if(!a){break c}fa[H[H[a>>2]+4>>2]](a);break c}c=H[c>>2];a=H[c+8>>2];e:{if((a|0)!=H[c+12>>2]){H[a>>2]=b;H[c+8>>2]=a+4;break e}e=H[c+4>>2];f=a-e|0;h=f>>2;a=h+1|0;if(a>>>0>=1073741824){break b}g=f>>1;g=h>>>0<536870911?a>>>0>g>>>0?a:g:1073741823;if(g){if(g>>>0>=1073741824){break a}a=ra(g<<2)}else{a=0}h=a+(h<<2)|0;H[h>>2]=b;if((f|0)>0){sa(a,e,f)}H[c+12>>2]=a+(g<<2);H[c+8>>2]=h+4;H[c+4>>2]=a;if(!e){break e}qa(e)}a=H[c+16>>2];e=H[c+20>>2]-a>>2;f:{if((e|0)>(b|0)){break f}H[d+12>>2]=-1;f=b+1|0;if(f>>>0>e>>>0){Na(c+16|0,f-e|0,d+12|0);a=H[c+16>>2];break f}if(e>>>0<=f>>>0){break f}H[c+20>>2]=(f<<2)+a}H[(b<<2)+a>>2]=(H[c+8>>2]-H[c+4>>2]>>2)-1}da=d+16|0;return 1}ua();X()}wa(1604);X()}function Yh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a=da-32|0;da=a;a:{b:{c:{d:{if(!b){break d}f=tb(c);if(f>>>0>=4294967280){break c}e:{f:{if(f>>>0>=11){h=f+16&-16;g=ra(h);H[a+24>>2]=h|-2147483648;H[a+16>>2]=g;H[a+20>>2]=f;break f}F[a+27|0]=f;g=a+16|0;if(!f){break e}}sa(g,c,f)}F[f+g|0]=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;if(e){if((e|0)<0){break b}c=e<<2;e=ra(c);H[a>>2]=e;f=c+e|0;H[a+8>>2]=f;sa(e,d,c);H[a+4>>2]=f}c=da-48|0;da=c;d=sb(b,a+16|0);if((d|0)!=(b+4|0)){lc(b,d)}H[c>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;d=H[a+4>>2]-H[a>>2]|0;hb(c,d);sa(H[c>>2],H[a>>2],d);g:{if(F[a+27|0]>=0){H[c+24>>2]=H[a+24>>2];d=H[a+20>>2];H[c+16>>2]=H[a+16>>2];H[c+20>>2]=d;break g}La(c+16|0,H[a+16>>2],H[a+20>>2])}H[c+36>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;hb(c+28|0,H[c+4>>2]-H[c>>2]|0);d=H[c>>2];sa(H[c+28>>2],d,H[c+4>>2]-d|0);d=c+16|0;kc(c+40|0,b,d,d);d=H[c+28>>2];if(d){H[c+32>>2]=d;qa(d)}if(F[c+27|0]<0){qa(H[c+16>>2])}d=H[c>>2];if(d){H[c+4>>2]=d;qa(d)}da=c+48|0;c=H[a>>2];if(c){H[a+4>>2]=c;qa(c)}if(F[a+27|0]>=0){break d}qa(H[a+16>>2])}da=a+32|0;a=(b|0)!=0;break a}lb();X()}ua();X()}return a|0}function Rb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{e=H[a+124>>2];c:{if(!e){break c}f=H[a+120>>2];i=Uk(e);h=e-1&d;d:{if(i>>>0<=1){break d}h=d;if(d>>>0>>0){break d}h=(d>>>0)%(e>>>0)|0}f=H[f+(h<<2)>>2];if(!f){break c}g=H[f>>2];if(!g){break c}e:{if(i>>>0<=1){f=e-1|0;while(1){e=H[g+4>>2];f:{if((e|0)!=(d|0)){if((h|0)==(e&f)){break f}break c}if(H[g+8>>2]==(d|0)){break e}}g=H[g>>2];if(g){continue}break}break c}while(1){f=H[g+4>>2];g:{if((f|0)!=(d|0)){if(e>>>0<=f>>>0){f=(f>>>0)%(e>>>0)|0}if((f|0)==(h|0)){break g}break c}if(H[g+8>>2]==(d|0)){break e}}g=H[g>>2];if(g){continue}break}break c}h=H[g+12>>2];if((h|0)==-1){break c}g=c&1;c=H[a+112>>2];if((c|0)!=H[a+116>>2]){F[c+8|0]=g;H[c+4>>2]=b;H[c>>2]=h;H[a+112>>2]=c+12;return}d=H[a+108>>2];f=c-d|0;c=(f|0)/12|0;e=c+1|0;if(e>>>0>=357913942){break b}i=c<<1;e=c>>>0<178956970?e>>>0>i>>>0?e:i:357913941;if(e>>>0>=357913942){break a}e=N(e,12);i=ra(e);c=i+N(c,12)|0;F[c+8|0]=g;H[c+4>>2]=b;H[c>>2]=h;b=c+N((f|0)/-12|0,12)|0;if((f|0)>0){sa(b,d,f)}H[a+116>>2]=e+i;H[a+112>>2]=c+12;H[a+108>>2]=b;if(!d){break c}qa(d)}return}ua();X()}wa(1604);X()}function wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=da-48|0;da=f;e=da-32|0;da=e;i=e+21|0;d=i;l=e+32|0;if(!((d|0)==(l|0)|(c|0)>=0)){F[d|0]=45;d=d+1|0;c=0-c|0}a:{b:{h=l-d|0;if((h|0)<=9){g=N(32-Q(c|1)|0,1233)>>>12|0;if((h|0)<((g-(K[(g<<2)+16208>>2]>c>>>0)|0)+1|0)){break b}}h=e;c:{if(c>>>0<=99999999){d:{if(c>>>0<=9999){c=je(d,c);break d}g=d;d=(c>>>0)/1e4|0;c=ic(je(g,d),c-N(d,1e4)|0)}break c}g=(c>>>0)/1e8|0;j=c-N(g,1e8)|0;c=(j>>>0)/1e4|0;c=ic(ic(ke(d,g),c),j-N(c,1e4)|0)}H[h+8>>2]=c;c=0;break a}H[e+8>>2]=l;c=61}H[e+12>>2]=c;g=da-16|0;da=g;h=da-16|0;da=h;c=f+8|0;e:{j=H[e+8>>2];e=j-i|0;if(e>>>0<=4294967279){f:{if(e>>>0<=10){F[c+11|0]=e;d=c;break f}if(e>>>0>=11){k=e+16&-16;d=k-1|0;d=(d|0)==11?k:d}else{d=10}k=d+1|0;d=ra(k);H[c>>2]=d;H[c+8>>2]=k|-2147483648;H[c+4>>2]=e}while(1){if((i|0)!=(j|0)){F[d|0]=I[i|0];d=d+1|0;i=i+1|0;continue}break}F[h+15|0]=0;F[d|0]=I[h+15|0];da=h+16|0;break e}lb();X()}da=g+16|0;da=l;H[f+32>>2]=b;Id(f+40|0,a,b,f+32|0);a=H[f+40>>2];if(F[a+39|0]<0){qa(H[a+28>>2])}b=H[f+12>>2];H[a+28>>2]=H[f+8>>2];H[a+32>>2]=b;H[a+36>>2]=H[f+16>>2];da=f+48|0}function gc(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{b:{g=a+16|0;d=H[g>>2];if(!d){break b}h=H[b>>2];b=g;while(1){f=(h|0)>H[d+16>>2];b=f?b:d;d=H[(f<<2)+d>>2];if(d){continue}break}if((b|0)==(g|0)|(h|0)>2]){break b}d=H[b+24>>2];if(!d){break a}a=I[c+11|0];b=a<<24>>24<0;g=b?H[c>>2]:c;a=b?H[c+4>>2]:a;while(1){b=I[d+27|0];c=b<<24>>24<0;b=c?H[d+20>>2]:b;h=b>>>0>>0;c:{d:{f=h?b:a;e:{if(f){e=d+16|0;c=c?H[e>>2]:e;e=Ca(g,c,f);f:{if(!e){if(a>>>0>=b>>>0){break f}break c}if((e|0)<0){break c}}b=Ca(c,g,f);if(!b){break e}if((b|0)<0){break d}return 1}if(a>>>0>>0){break c}}if(h){break d}return 1}d=d+4|0}d=H[d>>2];if(d){continue}break}break a}d=H[a+4>>2];if(!d){break a}a=I[c+11|0];b=a<<24>>24<0;g=b?H[c>>2]:c;a=b?H[c+4>>2]:a;while(1){b=I[d+27|0];c=b<<24>>24<0;b=c?H[d+20>>2]:b;h=b>>>0>>0;g:{h:{f=h?b:a;i:{if(f){e=d+16|0;c=c?H[e>>2]:e;e=Ca(g,c,f);j:{if(!e){if(a>>>0>=b>>>0){break j}break g}if((e|0)<0){break g}}b=Ca(c,g,f);if(!b){break i}if((b|0)<0){break h}return 1}if(a>>>0>>0){break g}}if(h){break h}return 1}d=d+4|0}d=H[d>>2];if(d){continue}break}}return 0}function Tk(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=Q(d)-Q(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;ea=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>Wk(d)|0;ea=0;break a}if(!(g-1&g)){break f}h=(Q(g)+33|0)-Q(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;ea=0;break a}c=Q(d)-Q(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=Wk(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<>>d}ea=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;j=b>>>f|0}else{c=b>>>f|0;j=((1<>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<>>32-e|b<>>31;f=f<<1|j>>>31;i=l-(f+(c>>>0>e>>>0)|0)>>31;k=g&i;j=c-k|0;f=f-((d&i)+(c>>>0>>0)|0)|0;b=b<<1|a>>>31;a=m|a<<1;i=i&1;m=i;h=h-1|0;if(h){continue}break}}ea=b<<1|a>>>31;a=i|a<<1;break a}a=0;b=0}ea=b}return a}function Mb(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=32-b|0;c=c<>2];g=32-e|0;d:{if((g|0)>=(b|0)){b=b+e|0;H[a+16>>2]=b;g=H[a+12>>2]|c>>>e;H[a+12>>2]=g;if((b|0)!=32){break d}b=H[a+4>>2];e:{if((b|0)!=H[a+8>>2]){H[b>>2]=g;H[a+4>>2]=b+4;break e}c=H[a>>2];e=b-c|0;f=e>>2;b=f+1|0;if(b>>>0>=1073741824){break c}d=e>>1;d=f>>>0<536870911?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break b}b=ra(d<<2)}else{b=0}f=b+(f<<2)|0;H[f>>2]=g;if((e|0)>0){sa(b,c,e)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=f+4;H[a>>2]=b;if(!c){break e}qa(c)}H[a+12>>2]=0;H[a+16>>2]=0;return}b=b-g|0;H[a+16>>2]=b;h=c>>>d|0;g=H[a+12>>2]|h>>>b;H[a+12>>2]=g;b=H[a+4>>2];f:{if((b|0)!=H[a+8>>2]){H[b>>2]=g;H[a+4>>2]=b+4;break f}c=H[a>>2];e=b-c|0;f=e>>2;b=f+1|0;if(b>>>0>=1073741824){break c}d=e>>1;d=f>>>0<536870911?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break a}b=ra(d<<2)}else{b=0}f=b+(f<<2)|0;H[f>>2]=g;if((e|0)>0){sa(b,c,e)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=f+4;H[a>>2]=b;if(!c){break f}qa(c)}H[a+12>>2]=h<<32-H[a+16>>2]}return}ua();X()}wa(1604);X()}wa(1604);X()}function Ke(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=da-16|0;da=e;a:{d=Ge(a);b:{if(!d){a=0;break b}b=H[a+100>>2];g=H[a+96>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;f=b-g|0;b=(f|0)/12|0;c:{if(!f){break c}if(b>>>0>=357913942){break a}c=ra(f);H[e>>2]=c;H[e+8>>2]=c+N(b,12);a=0;h=c;c=N((f-12>>>0)/12|0,12)+12|0;f=ta(h,0,c);H[e+4>>2]=c+f;if(I[d+84|0]){d=b>>>0>1?b:1;i=d&1;if(b>>>0>=2){j=d&-2;b=0;while(1){c=N(a,12);d=c+g|0;h=H[d+4>>2];k=H[d>>2];c=c+f|0;H[c+8>>2]=H[d+8>>2];H[c>>2]=k;H[c+4>>2]=h;c=N(a|1,12);d=c+g|0;h=H[d+8>>2];k=H[d+4>>2];c=c+f|0;H[c>>2]=H[d>>2];H[c+4>>2]=k;H[c+8>>2]=h;a=a+2|0;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!i){break c}b=N(a,12);a=b+g|0;g=H[a+4>>2];d=H[a>>2];b=b+f|0;H[b+8>>2]=H[a+8>>2];H[b>>2]=d;H[b+4>>2]=g;break c}i=b>>>0>1?b:1;a=H[d+68>>2];b=0;while(1){c=N(b,12);d=c+g|0;j=H[a+(H[d>>2]<<2)>>2];h=H[a+(H[d+4>>2]<<2)>>2];c=c+f|0;H[c+8>>2]=H[a+(H[d+8>>2]<<2)>>2];H[c+4>>2]=h;H[c>>2]=j;b=b+1|0;if((i|0)!=(b|0)){continue}break}}a=Oe(e);b=H[e>>2];if(!b){break b}H[e+4>>2]=b;qa(b)}da=e+16|0;return a}ua();X()}function ya(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;A(+a);c=v(1)|0;b=v(0)|0;d=c-1072604335|0;if((d|0)==135337|d>>>0<135337){if(!b&(c|0)==1072693248){return 0}f=M[2081];a=a+-1;A(+a);b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);g=+z();h=f*g;e=a*a;i=e*(a*M[2090]+M[2089]);j=h+i;l=e*e;return j+(l*(l*(e*(a*M[2098]+M[2097])+(a*M[2096]+M[2095]))+(e*(a*M[2094]+M[2093])+(a*M[2092]+M[2091])))+((a-g)*f+a*M[2082]+(i+(h-j))))}d=c>>>16|0;a:{if(d-32752>>>0<=4294934559){if(!(c&2147483647|b)){b=da-16|0;M[b+8>>3]=-1;return M[b+8>>3]/0}if(!b&(c|0)==2146435072){break a}if(!(!(d&32768)&(d&32752)!=32752)){a=a-a;return a/a}A(+(a*4503599627370496));c=v(1)|0;b=v(0)|0;c=c-54525952|0}d=c-1072037888|0;k=(d>>>14&63)<<4;f=M[k+16800>>3]+ +(d>>20);g=M[2081];a=M[k+16792>>3];x(0,b-0|0);x(1,c-((d&-1048576)+(b>>>0>>0)|0)|0);a=a*(+z()-M[k+17816>>3]-M[k+17824>>3]);A(+a);b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);h=+z();i=g*h;j=f+i;e=a*a;a=j+(e*(e*e*(a*M[2088]+M[2087])+(e*(a*M[2086]+M[2085])+(a*M[2084]+M[2083])))+((a-h)*g+M[2082]*a+(i+(f-j))))}return a}function Uf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=da-16|0;da=j;H[j+8>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{b:{e=c+1|0;if(e>>>0>=c>>>0){if(e>>>0>=1073741824){break b}h=ra(e<<2);ta(h,0,(c<<2)+4|0)}c:{if((b|0)<=0){break c}e=0;if(b-1>>>0>=3){k=b&-4;while(1){f=e<<2;i=(H[f+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;i=(H[(f|4)+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;i=(H[(f|8)+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;f=(H[(f|12)+a>>2]<<2)+h|0;H[f>>2]=H[f>>2]+1;e=e+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}f=b&3;if(!f){break c}while(1){k=(H[(e<<2)+a>>2]<<2)+h|0;H[k>>2]=H[k>>2]+1;e=e+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}e=0;if((c|0)<0){a=0;break a}o=+(b|0);a=0;while(1){b=H[(e<<2)+h>>2];if((b|0)>0){n=+(b|0);g=n*ya(n/o)+g;a=a+1|0}b=(c|0)==(e|0);e=e+1|0;if(!b){continue}break}break a}ua();X()}if(d){H[d>>2]=a}if(h){qa(h)}g=-g;d:{if(P(g)<0x8000000000000000){b=P(g)>=1?~~(g>0?R(T(g*2.3283064365386963e-10),4294967295):U((g-+(~~g>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~g>>>0;break d}b=-2147483648;a=0}da=j+16|0;ea=b;return a}function Be(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=H[a+12>>2];g=H[a+8>>2];j=m-g|0;e=H[c>>2];n=H[c+4>>2];a:{if((e|0)==(n|0)){break a}p=H[b>>2];if((j|0)<=0){while(1){b=H[(H[e>>2]<<2)+p>>2];d=b>>>0>>0?d:b+1|0;e=e+4|0;if((n|0)!=(e|0)){continue}break}break a}b=j>>2;b=(b|0)>1?b:1;r=b&2147483646;s=b&1;t=(j|0)<8;while(1){c=H[e>>2];k=c<<2;l=H[p+k>>2];if(l>>>0>=d>>>0){d=0;i=0;if(!t){while(1){q=d<<2;h=H[q+g>>2];f=H[h+68>>2];b=c;b=I[h+84|0]?b:H[f+k>>2];h=f;f=l<<2;H[h+f>>2]=b;h=f;b=H[(q|4)+g>>2];f=H[b+68>>2];H[h+f>>2]=I[b+84|0]?c:H[f+k>>2];d=d+2|0;i=i+2|0;if((r|0)!=(i|0)){continue}break}}if(s){b=H[(d<<2)+g>>2];d=H[b+68>>2];i=d+(l<<2)|0;if(!I[b+84|0]){c=H[d+k>>2]}H[i>>2]=c}d=l+1|0}e=e+4|0;if((n|0)!=(e|0)){continue}break}}if((j|0)>0){while(1){b=H[(o<<2)+g>>2];F[b+84|0]=0;e=H[b+68>>2];c=H[b+72>>2]-e>>2;b:{if(c>>>0>>0){Na(b+68|0,d-c|0,15040);g=H[a+8>>2];m=H[a+12>>2];break b}if(c>>>0<=d>>>0){break b}H[b+72>>2]=e+(d<<2)}o=o+1|0;if((o|0)>2){continue}break}}}function xb(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);F[b+12|0]=c;a:{if(c){break a}while(1){d=H[b+8>>2];if(I[d+12|0]){break a}b:{c=H[d+8>>2];e=H[c>>2];c:{if((d|0)==(e|0)){e=H[c+4>>2];if(!(!e|I[e+12|0])){break b}d:{if(H[d>>2]==(b|0)){b=d;break d}b=H[d+4>>2];a=H[b>>2];H[d+4>>2]=a;if(a){H[a+8>>2]=d;c=H[d+8>>2]}H[b+8>>2]=c;a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b>>2]=d;H[d+8>>2]=b;c=H[b+8>>2]}F[b+12|0]=1;F[c+12|0]=0;a=H[c>>2];b=H[a+4>>2];H[c>>2]=b;if(b){H[b+8>>2]=c}H[a+8>>2]=H[c+8>>2];b=H[c+8>>2];H[((H[b>>2]!=(c|0))<<2)+b>>2]=a;H[a+4>>2]=c;b=c+8|0;break c}if(!(I[e+12|0]|!e)){break b}e:{if(H[d>>2]!=(b|0)){b=d;break e}a=H[b+4>>2];H[d>>2]=a;if(a){H[a+8>>2]=d;c=H[d+8>>2]}H[b+8>>2]=c;a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b+4>>2]=d;H[d+8>>2]=b;c=H[b+8>>2]}F[b+12|0]=1;F[c+12|0]=0;a=H[c+4>>2];b=H[a>>2];H[c+4>>2]=b;if(b){H[b+8>>2]=c}H[a+8>>2]=H[c+8>>2];b=H[c+8>>2];H[((H[b>>2]!=(c|0))<<2)+b>>2]=a;H[a>>2]=c;b=c+8|0}H[b>>2]=a;break a}F[d+12|0]=1;d=(a|0)==(c|0);F[c+12|0]=d;F[e+12|0]=1;b=c;if(!d){continue}break}}}function kb(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=da-32|0;da=b;c=H[a+16>>2];a:{if(c>>>0>=113){H[a+16>>2]=c-113;c=H[a+4>>2];H[b+8>>2]=H[c>>2];H[a+4>>2]=c+4;ec(a,b+8|0);break a}b:{c:{d:{e:{e=H[a+8>>2];f=e-H[a+4>>2]>>2;d=H[a+12>>2];c=d-H[a>>2]|0;if(f>>>0>2>>>0){if((d|0)==(e|0)){break e}g=b,h=ra(4068),H[g+8>>2]=h;ec(a,b+8|0);break a}H[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=ra(d);H[b+8>>2]=c;e=c+(f<<2)|0;H[b+16>>2]=e;H[b+20>>2]=c+d;H[b+12>>2]=e;g=b,h=ra(4068),H[g+4>>2]=h;ec(b+8|0,b+4|0);d=H[a+8>>2];if((d|0)==H[a+4>>2]){c=d;break b}while(1){d=d-4|0;Qd(b+8|0,d);if(H[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=ra(4068),H[g+8>>2]=h;c=b+8|0;Qd(a,c);d=H[a+4>>2];H[b+8>>2]=H[d>>2];H[a+4>>2]=d+4;ec(a,c);break a}wa(1604);X()}c=H[a+8>>2]}e=H[a>>2];H[a>>2]=H[b+8>>2];H[b+8>>2]=e;H[a+4>>2]=H[b+12>>2];H[b+12>>2]=d;H[a+8>>2]=H[b+16>>2];H[b+16>>2]=c;f=H[a+12>>2];H[a+12>>2]=H[b+20>>2];H[b+20>>2]=f;if((c|0)!=(d|0)){H[b+16>>2]=c+(((c-d|0)-4>>>2^-1)<<2)}if(!e){break a}qa(e)}da=b+32|0}function Vj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=da-16|0;da=k;if(H[c+28>>2]==9){d=H[a+4>>2];g=F[c+24|0];e=g<<2;f=ra((g&1073741823)!=(g|0)?-1:e);l=k+8|0;H[l>>2]=1065353216;i=L[a+20>>2];d=-1<0){L[l>>2]=i/O(d|0)}o=(d|0)>0;a:{if(!o){break a}j=H[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){sa(H[H[c+64>>2]>>2]+d|0,f,e);d=d+e|0;sa(d+H[H[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}sa(H[H[c+64>>2]>>2]+d|0,f,e);break a}p=H[H[b>>2]>>2]+H[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=H[a+8>>2];i=L[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;L[h+f>>2]=O(i*O(H[q>>2]))+L[h+m>>2];h=h|4;L[h+f>>2]=O(i*O(H[q+4>>2]))+L[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;L[b+f>>2]=O(i*O(H[(d<<2)+p>>2]))+L[b+m>>2];d=d+1|0}sa(H[H[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}qa(f)}da=k+16|0;return o|0}function Sc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(I[a+11|0]>>>7|0){d=H[a+4>>2]}else{d=I[a+11|0]}if(d>>>0>>0){i=da-16|0;da=i;h=b-d|0;if(h){e=I[a+11|0]>>>7|0?(H[a+8>>2]&2147483647)-1|0:10;if(I[a+11|0]>>>7|0){b=H[a+4>>2]}else{b=I[a+11|0]}j=b+h|0;if(e-b>>>0>>0){b:{g=da-16|0;da=g;c=j-e|0;if(c>>>0<=-17-e>>>0){if(I[a+11|0]>>>7|0){d=H[a>>2]}else{d=a}c:{if(e>>>0<2147483623){H[g+8>>2]=e<<1;H[g+12>>2]=c+e;c=da-16|0;da=c;da=c+16|0;c=g+8|0;f=g+12|0;c=H[(K[f>>2]>2]?c:f)>>2];if(c>>>0>=11){f=c+16&-16;c=f-1|0;c=(c|0)==11?f:c}else{c=10}break c}c=-18}f=c+1|0;c=ra(f);if(b){Eb(c,d,b)}if((e|0)!=10){qa(d)}H[a>>2]=c;H[a+8>>2]=f|-2147483648;da=g+16|0;break b}lb();X()}}d=b;if(I[a+11|0]>>>7|0){b=H[a>>2]}else{b=a}d=d+b|0;if(h){ta(d,0,h)}d:{if(I[a+11|0]>>>7|0){H[a+4>>2]=j;break d}F[a+11|0]=j}F[i+15|0]=0;F[b+j|0]=I[i+15|0]}da=i+16|0;break a}d=da-16|0;da=d;e:{if(I[a+11|0]>>>7|0){e=H[a>>2];F[d+15|0]=0;F[b+e|0]=I[d+15|0];H[a+4>>2]=b;break e}F[d+14|0]=0;F[a+b|0]=I[d+14|0];F[a+11|0]=b}da=d+16|0}}function rk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=H[b+88>>2];if(!(!c|H[c>>2]!=1)){d=H[c+8>>2];H[a+4>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);d=F[b+24|0];e=H[a+8>>2];f=H[a+12>>2]-e>>2;a:{if(d>>>0>f>>>0){Ha(a+8|0,d-f|0);d=F[b+24|0];e=H[a+8>>2];break a}if(d>>>0>=f>>>0){break a}H[a+12>>2]=(d<<2)+e}k=1;f=H[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){g=d<<2;c=b+f|0;H[g+e>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[(g|4)+e>>2]=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);H[(g|8)+e>>2]=I[c+8|0]|I[c+9|0]<<8|(I[c+10|0]<<16|I[c+11|0]<<24);H[(g|12)+e>>2]=I[c+12|0]|I[c+13|0]<<8|(I[c+14|0]<<16|I[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+f|0;H[(d<<2)+e>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+f|0;H[c+20>>2]=I[a|0]|I[a+1|0]<<8|(I[a+2|0]<<16|I[a+3|0]<<24)}return k|0}function sf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=da-16|0;da=d;a:{b:{c:{if(!b){c=ra(76);b=ra(12);H[b+8>>2]=H[H[a+4>>2]+80>>2];H[b>>2]=12420;H[b+4>>2]=0;c=Hc(c,b,0);H[d+8>>2]=c;b=H[a+12>>2];d:{if(b>>>0>2]){H[d+8>>2]=0;H[b>>2]=c;H[a+12>>2]=b+4;break d}rc(a+8|0,d+8|0)}a=H[d+8>>2];H[d+8>>2]=0;if(!a){break c}fa[H[H[a>>2]+4>>2]](a);break c}c=H[H[a+8>>2]>>2];a=H[c+8>>2];e:{if((a|0)!=H[c+12>>2]){H[a>>2]=b;H[c+8>>2]=a+4;break e}e=H[c+4>>2];f=a-e|0;h=f>>2;a=h+1|0;if(a>>>0>=1073741824){break b}g=f>>1;g=h>>>0<536870911?a>>>0>g>>>0?a:g:1073741823;if(g){if(g>>>0>=1073741824){break a}a=ra(g<<2)}else{a=0}h=a+(h<<2)|0;H[h>>2]=b;if((f|0)>0){sa(a,e,f)}H[c+12>>2]=a+(g<<2);H[c+8>>2]=h+4;H[c+4>>2]=a;if(!e){break e}qa(e)}a=H[c+16>>2];e=H[c+20>>2]-a>>2;f:{if((e|0)>(b|0)){break f}H[d+12>>2]=-1;f=b+1|0;if(f>>>0>e>>>0){Na(c+16|0,f-e|0,d+12|0);a=H[c+16>>2];break f}if(e>>>0<=f>>>0){break f}H[c+20>>2]=(f<<2)+a}H[(b<<2)+a>>2]=(H[c+8>>2]-H[c+4>>2]>>2)-1}da=d+16|0;return 1}ua();X()}wa(1604);X()}function qe(a,b,c,d){var e=0,f=0,g=0,h=0;g=da-32|0;da=g;e=d&2147483647;h=e;f=e-1006698496|0;e=e-1140785152|0;a:{if((f|0)==(e|0)&0|e>>>0>f>>>0){e=d<<4|c>>>28;f=c<<4|b>>>28;c=e;b=b&268435455;if((b|0)==134217728&(a|0)!=0|b>>>0>134217728){e=c+1073741824|0;a=f+1|0;e=a?e:e+1|0;f=a;break a}e=c+1073741824|0;if(b^134217728|a){break a}b=f&1;a=b+f|0;e=a>>>0>>0?e+1|0:e;f=a;break a}if(!(!c&(h|0)==2147418112?!(a|b):h>>>0<2147418112)){e=c;c=d<<4|e>>>28;f=e<<4|b>>>28;e=c&524287|2146959360;break a}f=0;e=2146435072;if(h>>>0>1140785151){break a}e=0;h=h>>>16|0;if(h>>>0<15249){break a}e=d&65535|65536;Wa(g+16|0,a,b,c,e,h-15233|0);Lb(g,a,b,c,e,15361-h|0);e=H[g+4>>2];h=e;a=H[g+8>>2];c=H[g+12>>2]<<4|a>>>28;f=a<<4|e>>>28;e=c;a=h&268435455;b=H[g>>2]|(H[g+16>>2]|H[g+24>>2]|(H[g+20>>2]|H[g+28>>2]))!=0;if((a|0)==134217728&(b|0)!=0|a>>>0>134217728){a=f+1|0;e=a?e:e+1|0;f=a;break a}if(a^134217728|b){break a}a=f+(f&1)|0;e=a>>>0>>0?e+1|0:e;f=a}da=g+32|0;x(0,f|0);x(1,d&-2147483648|e);return+z()}function Jc(a){var b=0,c=0,d=0,e=0;c=H[a+1176>>2];if(c){b=H[a+1180>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+1176>>2]}H[a+1180>>2]=c;qa(b)}c=H[a+1164>>2];if(c){b=H[a+1168>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+1164>>2]}H[a+1168>>2]=c;qa(b)}b=H[a+1152>>2];if(b){H[a+1156>>2]=b;qa(b)}b=H[a+1140>>2];if(b){H[a+1144>>2]=b;qa(b)}b=H[a+1128>>2];if(b){H[a+1132>>2]=b;qa(b)}yb(a+1108|0);yb(a+1088|0);yb(a+1068|0);za(a+1036|0);a=a+12|0;za(a+992|0);za(a+960|0);za(a+928|0);za(a+896|0);za(a+864|0);za(a+832|0);za(a+800|0);za(a+768|0);za(a+736|0);za(a+704|0);za(a+672|0);za(a+640|0);za(a+608|0);za(a+576|0);za(a+544|0);za(a+512|0);za(a+480|0);za(a+448|0);za(a+416|0);za(a+384|0);za(a+352|0);za(a+320|0);za(a+288|0);za(a+256|0);za(a+224|0);za(a+192|0);za(a+160|0);za(a+128|0);za(a+96|0);za(a- -64|0);za(a+32|0);za(a)}function qb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;g=H[(H[H[a+8>>2]+96>>2]+N(d,12)|0)+(c-N(d,3)<<2)>>2];e=H[H[a+12>>2]+4>>2];d=H[e+4>>2];a:{if((d|0)!=H[e+8>>2]){H[d>>2]=g;H[e+4>>2]=d+4;break a}b:{h=H[e>>2];i=d-h|0;j=i>>2;d=j+1|0;if(d>>>0<1073741824){f=i>>1;f=j>>>0<536870911?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break b}d=ra(f<<2)}else{d=0}j=d+(j<<2)|0;H[j>>2]=g;if((i|0)>0){sa(d,h,i)}H[e+8>>2]=d+(f<<2);H[e+4>>2]=j+4;H[e>>2]=d;if(h){qa(h)}break a}ua();X()}wa(1604);X()}e=H[a+4>>2];d=H[e+4>>2];c:{d:{e:{if((d|0)!=H[e+8>>2]){H[d>>2]=c;H[e+4>>2]=d+4;break e}h=H[e>>2];i=d-h|0;g=i>>2;d=g+1|0;if(d>>>0>=1073741824){break d}f=i>>1;f=g>>>0<536870911?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break c}d=ra(f<<2)}else{d=0}g=d+(g<<2)|0;H[g>>2]=c;if((i|0)>0){sa(d,h,i)}H[e+8>>2]=d+(f<<2);H[e+4>>2]=g+4;H[e>>2]=d;if(!h){break e}qa(h)}a=H[a+4>>2];H[H[a+12>>2]+(b<<2)>>2]=H[a+24>>2];H[a+24>>2]=H[a+24>>2]+1;return}ua();X()}wa(1604);X()}function Nf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=da+-64|0;da=c;d=ra(80);i=H[a+8>>2];H[d+12>>2]=0;H[d+16>>2]=0;H[d>>2]=11708;H[d+4>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+76>>2]=0;H[d+72>>2]=b;H[d+68>>2]=i;H[d- -64>>2]=0;j=d+56|0;e=j;H[e>>2]=0;H[e+4>>2]=0;H[d+8>>2]=11872;e=H[a+12>>2];H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;f=c+24|0;H[f>>2]=0;H[f+4>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+56>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=11872;H[c+4>>2]=e;g=H[e>>2];h=H[e+4>>2];F[c+63|0]=0;k=f;f=c+63|0;Ta(k,(h-g>>2>>>0)/3|0,f);g=H[c+4>>2];h=H[g+28>>2];g=H[g+24>>2];F[c+63|0]=0;Ta(c+36|0,h-g>>2,f);H[c+20>>2]=d;H[c+16>>2]=i;H[c+12>>2]=b;H[c+8>>2]=e;H[d+76>>2]=a+72;sc(d+8|0,c);Sb(j,H[c+48>>2],H[c+52>>2]);H[c>>2]=11872;a=H[c+48>>2];if(a){H[c+52>>2]=a;qa(a)}H[c>>2]=11688;a=H[c+36>>2];if(a){qa(a)}a=H[c+24>>2];if(a){qa(a)}da=c- -64|0;return d}function Ga(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=1;a:{b:{c:{d:{switch(b-a>>2){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;f=b-4|0;b=H[f>>2];if(d>>>0<=b>>>0){break b}e=d;d=H[a>>2];if(e>>>0<=d>>>0){break b}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break c}H[a>>2]=b;H[f>>2]=d;return 1;case 3:Da(a,a+4|0,b-4|0,c);return 1;case 4:Ua(a,a+4|0,a+8|0,b-4|0,c);return 1;case 5:Ea(a,a+4|0,a+8|0,a+12|0,b-4|0,c);return 1;case 0:case 1:break c;default:break d}}f=a+8|0;Da(a,a+4|0,f,c);e=a+12|0;if((e|0)==(b|0)){break c}c=H[c>>2];h=H[c>>2];i=H[c+4>>2]-h>>3;e:{while(1){d=e;j=H[d>>2];if(j>>>0>=i>>>0){break a}e=H[f>>2];if(i>>>0<=e>>>0){break a}g=d;k=h+(j<<3)|0;if(K[k>>2]>2]){while(1){f:{H[g>>2]=e;c=f;if((c|0)==(a|0)){c=a;break f}f=c-4|0;e=H[f>>2];if(i>>>0<=e>>>0){break a}g=c;if(K[k>>2]>2]){continue}}break}H[c>>2]=j;l=l+1|0;if((l|0)==8){break e}}f=d;e=d+4|0;if((e|0)!=(b|0)){continue}break}return 1}g=(d+4|0)==(b|0)}return g}xa();X()}xa();X()}function Of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=H[d+80>>2];e=da-48|0;da=e;a=H[a+4>>2];a:{if(a-31>>>0<4294967267){break a}i=H[H[d>>2]>>2]+H[d+48>>2]|0;H[e+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;H[e+24>>2]=a;H[e+32>>2]=(a|0)/2;L[e+28>>2]=O(2)/O(a|0);g=H[c>>2];if((g|0)!=H[c+4>>2]){a=0;d=0;while(1){f=H[(d<<2)+g>>2];h=e+36|0;j=H[H[b>>2]>>2];l=H[b+48>>2];g=H[b+44>>2];k=H[b+40>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}f=Rk(k,g,f,0)+l|0;sa(h,f+j|0,k);hf(e+16|0,h,e+12|0,e+8|0);g=a<<2;H[g+i>>2]=H[e+12>>2];H[(g|4)+i>>2]=H[e+8>>2];f=1;a=a+2|0;d=d+1|0;g=H[c>>2];if(d>>>0>2]-g>>2>>>0){continue}break}break a}if(!h){f=1;break a}d=0;a=0;while(1){j=e+36|0;c=H[H[b>>2]>>2];f=H[b+40>>2];g=H[b+48>>2]+Rk(f,H[b+44>>2],I[b+84|0]?a:H[H[b+68>>2]+(a<<2)>>2],0)|0;sa(j,c+g|0,f);hf(e+16|0,j,e+12|0,e+8|0);c=d<<2;H[c+i>>2]=H[e+12>>2];H[(c|4)+i>>2]=H[e+8>>2];d=d+2|0;f=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}da=e+48|0;return f|0}function kc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=H[b+4>>2];a:{b:{if(f){g=I[c+11|0];e=g<<24>>24<0;k=e?H[c>>2]:c;e=e?H[c+4>>2]:g;g=b+4|0;while(1){c=I[f+27|0];h=c<<24>>24<0;c=h?H[f+20>>2]:c;l=c>>>0>>0;c:{d:{e:{f:{g:{j=l?c:e;h:{if(j){i=f+16|0;h=h?H[i>>2]:i;i=Ca(k,h,j);if(!i){if(c>>>0>e>>>0){break h}break g}if((i|0)>=0){break g}break h}if(c>>>0<=e>>>0){break f}}c=H[f>>2];if(c){break c}break b}c=Ca(h,k,j);if(c){break e}}if(l){break d}break a}if((c|0)>=0){break a}}g=f+4|0;c=H[f+4>>2];if(!c){break a}f=g}g=f;f=c;continue}}f=b+4|0}g=f}c=H[g>>2];if(c){b=0}else{c=ra(40);H[c+24>>2]=H[d+8>>2];e=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=e;H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[c+36>>2]=0;e=c+28|0;H[e>>2]=0;H[e+4>>2]=0;hb(e,H[d+16>>2]-H[d+12>>2]|0);h=H[e>>2];e=H[d+12>>2];sa(h,e,H[d+16>>2]-e|0);H[c+8>>2]=f;H[c>>2]=0;H[c+4>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}xb(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function ti(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=H[a+4>>2];b=H[b+12>>2]-H[b+8>>2]|0;a:{if((b|0)>0){while(1){if(fa[H[H[a>>2]+36>>2]](a,c)|0){b=H[a+4>>2];b=H[b+12>>2]-H[b+8>>2]>>2;c=c+1|0;if((b|0)>(c|0)){continue}break a}break}return 0}b=b>>2}h=a+20|0;d=H[a+20>>2];c=H[a+24>>2]-d>>2;b:{if(c>>>0>>0){Ha(h,b-c|0);break b}if(b>>>0>=c>>>0){break b}H[a+24>>2]=d+(b<<2)}i=H[a+8>>2];a=H[a+12>>2]-i|0;if(!a){return 1}a=a>>2;k=a>>>0>1?a:1;c=0;while(1){a=H[(c<<2)+i>>2];b=H[a+4>>2];a=H[a+8>>2]-b|0;c:{if(!a){break c}d=H[h>>2];a=a>>2;e=a>>>0>1?a:1;j=e&3;f=0;a=0;if(e-1>>>0>=3){l=e&-4;g=0;while(1){e=a<<2;H[d+(H[e+b>>2]<<2)>>2]=c;H[d+(H[b+(e|4)>>2]<<2)>>2]=c;H[d+(H[b+(e|8)>>2]<<2)>>2]=c;H[d+(H[b+(e|12)>>2]<<2)>>2]=c;a=a+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}if(!j){break c}while(1){H[d+(H[b+(a<<2)>>2]<<2)>>2]=c;a=a+1|0;f=f+1|0;if((f|0)!=(j|0)){continue}break}}c=c+1|0;if((k|0)!=(c|0)){continue}break}return 1}function Qi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=H[a+12>>2];c=H[a+108>>2];e=H[c+80>>2];F[b+84|0]=0;f=H[b+68>>2];d=H[b+72>>2]-f>>2;a:{if(d>>>0>>0){Na(b+68|0,e-d|0,11440);c=H[a+108>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=f+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=H[l>>2]+(N(c,3)<<2)|0;h=H[d>>2];if((h|0)==-1){break b}f=N(c,12)+k|0;g=H[f>>2];if(g>>>0>=e>>>0){break b}j=H[H[a+112>>2]+12>>2];i=H[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=H[b+68>>2];H[h+(g<<2)>>2]=i;g=H[d+4>>2];if((g|0)==-1){break b}i=H[f+4>>2];if(i>>>0>=e>>>0){break b}g=H[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}H[h+(i<<2)>>2]=g;d=H[d+8>>2];if((d|0)==-1){break b}f=H[f+8>>2];if(f>>>0>=e>>>0){break b}d=H[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}H[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Pi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=da-16|0;da=g;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+28>>2]-H[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=ra(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){sa(c,d,e)}H[b+8>>2]=h;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}qa(d)}b=H[a+12>>2];d=H[b+28>>2];b=H[b+24>>2];H[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=H[c>>2];d=H[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){Na(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}H[a+100>>2]=e+(b<<2)}e=a+8|0;b=H[a+116>>2];d:{if(b){c=H[b>>2];if((c|0)==H[b+4>>2]){d=1;break d}b=0;while(1){d=wf(e,H[(b<<2)+c>>2]);if(!d){break d}f=H[a+116>>2];c=H[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=H[a+12>>2];a=H[a+4>>2]-H[a>>2]>>2;if(a>>>0<3){break d}a=(a>>>0)/3|0;b=0;while(1){d=wf(e,N(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}da=g+16|0;return d|0}wa(1604);X()}function Zc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=c-b|0;e=H[a+8>>2];d=H[a>>2];if(f>>>0<=e-d>>>0){h=H[a+4>>2]-d|0;e=h+b|0;g=f>>>0>h>>>0?e:c;a:{if((g|0)==(b|0)){break a}k=(b^-1)+g|0;i=g-b&7;if(i){while(1){F[d|0]=I[b|0];d=d+1|0;b=b+1|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){F[d|0]=I[b|0];F[d+1|0]=I[b+1|0];F[d+2|0]=I[b+2|0];F[d+3|0]=I[b+3|0];F[d+4|0]=I[b+4|0];F[d+5|0]=I[b+5|0];F[d+6|0]=I[b+6|0];F[d+7|0]=I[b+7|0];d=d+8|0;b=b+8|0;if((g|0)!=(b|0)){continue}break}}if(f>>>0>h>>>0){b=H[a+4>>2];if((c|0)!=(g|0)){while(1){F[b|0]=I[e|0];b=b+1|0;e=e+1|0;if((e|0)!=(c|0)){continue}break}}H[a+4>>2]=b;return}H[a+4>>2]=d;return}if(d){H[a+4>>2]=d;qa(d);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;e=0}b:{if((f|0)<0){break b}d=e<<1;e=e>>>0<1073741823?d>>>0>>0?f:d:2147483647;if((e|0)<0){break b}d=ra(e);H[a>>2]=d;H[a+4>>2]=d;H[a+8>>2]=d+e;if((b|0)!=(c|0)){d=sa(d,b,f)+f|0}H[a+4>>2]=d;return}ua();X()}function Ii(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=H[a+12>>2];c=H[a+68>>2];e=H[c+80>>2];F[b+84|0]=0;f=H[b+68>>2];d=H[b+72>>2]-f>>2;a:{if(d>>>0>>0){Na(b+68|0,e-d|0,11440);c=H[a+68>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=f+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=H[l>>2]+(N(c,3)<<2)|0;h=H[d>>2];if((h|0)==-1){break b}f=N(c,12)+k|0;g=H[f>>2];if(g>>>0>=e>>>0){break b}j=H[H[a+72>>2]+12>>2];i=H[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=H[b+68>>2];H[h+(g<<2)>>2]=i;g=H[d+4>>2];if((g|0)==-1){break b}i=H[f+4>>2];if(i>>>0>=e>>>0){break b}g=H[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}H[h+(i<<2)>>2]=g;d=H[d+8>>2];if((d|0)==-1){break b}f=H[f+8>>2];if(f>>>0>=e>>>0){break b}d=H[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}H[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function vj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=H[a+12>>2];h=H[a+8>>2];d=f-h>>2;b=F[b+24|0];a:{if(d>>>0>>0){Ha(a+8|0,b-d|0);h=H[a+8>>2];f=H[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;H[a+12>>2]=f}b=0;i=H[c+20>>2];e=H[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=H[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>K[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}sa(h,e+H[c>>2]|0,d);d=H[c+20>>2];e=f+H[c+16>>2]|0;d=e>>>0>>0?d+1|0:d;g=e;H[c+16>>2]=e;H[c+20>>2]=d;e=H[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>K[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+H[c>>2]|0;H[a+20>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);d=H[c+20>>2];g=H[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;H[c+16>>2]=e;H[c+20>>2]=f;e=H[c+12>>2];if((f|0)>=(e|0)&j>>>0>=K[c+8>>2]|(f|0)>(e|0)){break b}e=I[j+H[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;H[c+16>>2]=f;H[c+20>>2]=d;if(e-1>>>0>29){break b}H[a+4>>2]=e;b=1}return b|0}function Id(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=H[b+4>>2];a:{b:{if(e){g=I[c+11|0];f=g<<24>>24<0;j=f?H[c>>2]:c;f=f?H[c+4>>2]:g;g=b+4|0;while(1){c=I[e+27|0];h=c<<24>>24<0;c=h?H[e+20>>2]:c;l=c>>>0>>0;c:{d:{e:{f:{g:{k=l?c:f;h:{if(k){i=e+16|0;h=h?H[i>>2]:i;i=Ca(j,h,k);if(!i){if(c>>>0>f>>>0){break h}break g}if((i|0)>=0){break g}break h}if(c>>>0<=f>>>0){break f}}c=H[e>>2];if(c){break c}break b}c=Ca(h,j,k);if(c){break e}}if(l){break d}break a}if((c|0)>=0){break a}}g=e+4|0;c=H[e+4>>2];if(!c){break a}e=g}g=e;e=c;continue}}e=b+4|0}g=e}c=H[g>>2];if(c){b=0}else{c=ra(40);f=c+16|0;d=H[d>>2];i:{if(F[d+11|0]>=0){j=H[d+4>>2];H[f>>2]=H[d>>2];H[f+4>>2]=j;H[f+8>>2]=H[d+8>>2];break i}La(f,H[d>>2],H[d+4>>2])}H[c+8>>2]=e;H[c>>2]=0;H[c+4>>2]=0;H[c+36>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}xb(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function ec(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{e=H[a+8>>2];b:{if((e|0)!=H[a+12>>2]){break b}d=H[a+4>>2];g=H[a>>2];if(d>>>0>g>>>0){g=((d-g>>2)+1|0)/-2<<2;c=g+d|0;f=e-d|0;if(f){Ia(c,d,f);d=H[a+4>>2]}e=c+f|0;H[a+8>>2]=e;H[a+4>>2]=d+g;break b}c=e-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}f=c<<2;h=ra(f);l=h+f|0;i=e-d|0;f=(c&-4)+h|0;e=f;c:{if(!i){break c}j=i-4|0;k=(j>>>2|0)+1&7;d:{if(!k){c=f;break d}e=0;c=f;while(1){H[c>>2]=H[d>>2];d=d+4|0;c=c+4|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}e=f+i|0;if(j>>>0<28){break c}while(1){H[c>>2]=H[d>>2];H[c+4>>2]=H[d+4>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=H[d+12>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=H[d+20>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=H[d+28>>2];d=d+32|0;c=c+32|0;if((e|0)!=(c|0)){continue}break}}H[a+12>>2]=l;H[a+8>>2]=e;H[a+4>>2]=f;H[a>>2]=h;if(!g){break b}qa(g);e=H[a+8>>2]}H[e>>2]=H[b>>2];H[a+8>>2]=H[a+8>>2]+4;return}wa(1604);X()}function _b(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=da-32|0;da=e;f=H[b>>2]+H[a+40>>2]|0;d=H[a+32>>2];c=d-4194304|0;a:{if(c>>>0<=63){F[H[a+24>>2]+H[a+28>>2]|0]=c;c=H[a+28>>2]+1|0;break a}if(c>>>0<=16383){c=H[a+24>>2]+H[a+28>>2]|0;d=d-4177920|0;F[c|0]=d;F[c+1|0]=d>>>8;c=H[a+28>>2]+2|0;break a}if(c>>>0<=4194303){c=H[a+24>>2]+H[a+28>>2]|0;d=d+4194304|0;F[c+2|0]=d>>>16;F[c+1|0]=d>>>8;F[c|0]=d;c=H[a+28>>2]+3|0;break a}if(c>>>0<=1073741823){c=H[a+24>>2]+H[a+28>>2]|0;d=d-1077936128|0;F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=H[a+28>>2]+4|0;break a}c=H[a+28>>2]}H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;h=c;d=c>>31;Bb(c,d,e);g=H[e+4>>2]-H[e>>2]|0;Ia(g+f|0,f,c);sa(f,H[e>>2],g);c=H[a+44>>2];f=b;i=H[a+40>>2];a=d;b=h+g|0;a=b>>>0>>0?a+1|0:a;d=b;b=i+d|0;Pa(f,b);a=H[e+12>>2];H[e+12>>2]=0;if(a){qa(a)}a=H[e>>2];if(a){H[e+4>>2]=a;qa(a)}da=e+32|0}function Di(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=H[a+12>>2];c=H[a+68>>2];e=H[c+80>>2];F[b+84|0]=0;g=H[b+68>>2];d=H[b+72>>2]-g>>2;a:{if(d>>>0>>0){Na(b+68|0,e-d|0,11440);c=H[a+68>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=g+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;l=c>>>0>1?c:1;m=H[h+28>>2];c=0;b:{while(1){d=(N(c,3)<<2)+m|0;g=H[d>>2];if((g|0)==-1){break b}h=N(c,12)+k|0;i=H[h>>2];if(i>>>0>=e>>>0){break b}f=g<<2;g=H[H[a+72>>2]+12>>2];f=H[f+g>>2];if(f>>>0>=e>>>0){break b}j=i<<2;i=H[b+68>>2];H[j+i>>2]=f;f=H[d+4>>2];if((f|0)==-1){break b}j=H[h+4>>2];if(j>>>0>=e>>>0){break b}f=H[g+(f<<2)>>2];if(f>>>0>=e>>>0){break b}H[i+(j<<2)>>2]=f;d=H[d+8>>2];if((d|0)==-1){break b}h=H[h+8>>2];if(h>>>0>=e>>>0){break b}d=H[g+(d<<2)>>2];if(d>>>0>=e>>>0){break b}H[i+(h<<2)>>2]=d;c=c+1|0;if((l|0)!=(c|0)){continue}break}return 1}return 0}function Qd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{g=H[a+4>>2];b:{if((g|0)!=H[a>>2]){c=g;break b}d=H[a+8>>2];c=H[a+12>>2];if(d>>>0>>0){f=((c-d>>2)+1|0)/2<<2;c=f+d|0;e=d-g|0;if(e){c=c-e|0;Ia(c,g,e);d=H[a+8>>2]}H[a+4>>2]=c;H[a+8>>2]=d+f;break b}c=c-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}e=c<<2;h=ra(e);l=h+e|0;c=(c+3&-4)+h|0;f=c;i=d-g|0;c:{if(!i){break c}d=c;e=g;j=i-4|0;k=(j>>>2|0)+1&7;if(k){f=0;while(1){H[d>>2]=H[e>>2];e=e+4|0;d=d+4|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}f=c+i|0;if(j>>>0<28){break c}while(1){H[d>>2]=H[e>>2];H[d+4>>2]=H[e+4>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=H[e+12>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=H[e+20>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=H[e+28>>2];e=e+32|0;d=d+32|0;if((f|0)!=(d|0)){continue}break}}H[a+12>>2]=l;H[a+8>>2]=f;H[a+4>>2]=c;H[a>>2]=h;if(!g){break b}qa(g);c=H[a+4>>2]}H[c-4>>2]=H[b>>2];H[a+4>>2]=H[a+4>>2]-4;return}wa(1604);X()}function Cb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=da-32|0;da=e;f=H[b>>2]+H[a+40>>2]|0;c=H[a+32>>2];d=c-16384|0;a:{if(d>>>0<=63){F[H[a+24>>2]+H[a+28>>2]|0]=d;c=H[a+28>>2]+1|0;break a}if(d>>>0<=16383){d=H[a+24>>2]+H[a+28>>2]|0;F[d|0]=c;F[d+1|0]=c>>>8;c=H[a+28>>2]+2|0;break a}if(d>>>0<=4194303){d=H[a+24>>2]+H[a+28>>2]|0;c=c+8372224|0;F[d+2|0]=c>>>16;F[d+1|0]=c>>>8;F[d|0]=c;c=H[a+28>>2]+3|0;break a}if(d>>>0<=1073741823){d=H[a+24>>2]+H[a+28>>2]|0;c=c-1073758208|0;F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;c=H[a+28>>2]+4|0;break a}c=H[a+28>>2]}H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;h=c;d=c>>31;Bb(c,d,e);g=H[e+4>>2]-H[e>>2]|0;Ia(g+f|0,f,c);sa(f,H[e>>2],g);c=H[a+44>>2];f=b;i=H[a+40>>2];a=d;b=h+g|0;a=b>>>0>>0?a+1|0:a;d=b;b=i+d|0;Pa(f,b);a=H[e+12>>2];H[e+12>>2]=0;if(a){qa(a)}a=H[e>>2];if(a){H[e+4>>2]=a;qa(a)}da=e+32|0}function qh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0;a:{if(H[c+28>>2]!=9|I[c+24|0]!=3){break a}a=H[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=H[c+80>>2];if(!j){break a}k=O(O(2)/O((1<>2]>>2]+H[c+48>>2]|0;a=H[H[b>>2]>>2]+H[b+48>>2]|0;b=0;while(1){g=O(0);l=O(0);m=O(0);e=O(O(O(H[a>>2])*k)+O(-1));f=O(O(O(H[a+4>>2])*k)+O(-1));i=O(O(O(1)-O(P(e)))-O(P(f)));h=O(S(O(-i),O(0)));n=O(-h);f=O(f+(f>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;d=(B(l),v(2));F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;d=(B(g),v(2));F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function hf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+L[b>>2];k=+L[b+4>>2];l=+L[b+8>>2];g=P(j)+P(k)+P(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=H[a+16>>2];l=+(h|0);g=T(j*l+.5);b:{if(P(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=f+m^f;g=T(k*l+.5);c:{if(P(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+(f+b^b)|0)|0;i=(b|0)<0?0:b;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=H[a+8>>2];e=f+h|0;break d}b=f>>31;b=b+f^b;a=H[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}f=(a|0)!=(e|0);if(!(b|f)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((b|0)>=(h|0)|f)){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}H[c>>2]=a;H[d>>2]=b}function Xh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,f=0,g=0,h=0;f=da-16|0;da=f;a:{b:{c:{if(!b){break c}g=tb(c);if(g>>>0>=4294967280){break b}d:{e:{if(g>>>0>=11){h=g+16&-16;a=ra(h);H[f+8>>2]=h|-2147483648;H[f>>2]=a;H[f+4>>2]=g;break e}F[f+11|0]=g;a=f;if(!g){break d}}sa(a,c,g)}F[a+g|0]=0;g=da-16|0;da=g;M[g+8>>3]=d;e=da-32|0;da=e;a=sb(b,f);if((a|0)!=(b+4|0)){lc(b,a)}c=H[g+8>>2];a=H[g+12>>2];f:{if(F[f+11|0]>=0){H[e+8>>2]=H[f+8>>2];h=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=h;break f}La(e,H[f>>2],H[f+4>>2])}H[e+20>>2]=0;H[e+12>>2]=0;H[e+16>>2]=0;hb(e+12|0,8);h=H[e+12>>2];F[h|0]=c;F[h+1|0]=c>>>8;F[h+2|0]=c>>>16;F[h+3|0]=c>>>24;F[h+4|0]=a;F[h+5|0]=a>>>8;F[h+6|0]=a>>>16;F[h+7|0]=a>>>24;kc(e+24|0,b,e,e);a=H[e+12>>2];if(a){H[e+16>>2]=a;qa(a)}if(F[e+11|0]<0){qa(H[e>>2])}da=e+32|0;da=g+16|0;if(F[f+11|0]>=0){break c}qa(H[f>>2])}da=f+16|0;a=(b|0)!=0;break a}lb();X()}return a|0}function Mf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;b=H[H[a+184>>2]+(b<<2)>>2];F[c+15|0]=b;e=H[H[a+4>>2]+44>>2];d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){va(e,H[e+4>>2],c+15|0,c+16|0);b=I[c+15|0]}a:{b:{c:{if(b<<24>>24<0){e=H[a+68>>2];break c}b=H[H[a+172>>2]+N(b&255,136)>>2];d=fa[H[H[a>>2]+40>>2]](a)|0;f=H[a+172>>2]+N(F[c+15|0],136)|0;e=H[f+132>>2];d:{switch(H[H[H[d+56>>2]+84>>2]+(b<<2)>>2]){case 0:break c;case 1:break d;default:break b}}if(!I[f+28|0]){break b}}b=H[H[a+4>>2]+44>>2];F[c+14|0]=0;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+14|0,c+15|0);break a}b=H[H[a+4>>2]+44>>2];F[c+13|0]=1;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+13|0,c+14|0)}a=H[H[a+4>>2]+44>>2];F[c+12|0]=e;b=H[a+20>>2];if(!H[a+16>>2]&(b|0)<=0|(b|0)<0){va(a,H[a+4>>2],c+12|0,c+13|0)}da=c+16|0;return 1}function sc(a,b){var c=0,d=0;c=H[b+8>>2];H[a+4>>2]=H[b+4>>2];H[a+8>>2]=c;H[a+20>>2]=H[b+20>>2];c=H[b+16>>2];H[a+12>>2]=H[b+12>>2];H[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=H[b+28>>2];if(c){c:{if(H[a+32>>2]<<5>>>0>=c>>>0){d=H[a+24>>2];break c}d=H[a+24>>2];if(d){qa(d);H[a+32>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;c=H[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=ra(c<<2);H[a+32>>2]=c;H[a+28>>2]=0;H[a+24>>2]=d;c=H[b+28>>2]}Ia(d,H[b+24>>2],(c-1>>>3&536870908)+4|0);c=H[b+28>>2]}else{c=0}H[a+28>>2]=c;c=H[b+40>>2];if(c){d:{if(H[a+44>>2]<<5>>>0>=c>>>0){d=H[a+36>>2];break d}d=H[a+36>>2];if(d){qa(d);H[a+44>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;c=H[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=ra(c<<2);H[a+44>>2]=c;H[a+40>>2]=0;H[a+36>>2]=d;c=H[b+40>>2]}Ia(d,H[b+36>>2],(c-1>>>3&536870908)+4|0);b=H[b+40>>2]}else{b=0}H[a+40>>2]=b}return}ua();X()}ua();X()}function Xc(a,b,c){var d=0,e=0,f=0,g=0;Fa(H[c+8>>2],b);d=H[c>>2];g=c+4|0;if((d|0)!=(g|0)){while(1){f=d;if(!Ie(b,d+16|0)){return}d=H[f+32>>2]-H[f+28>>2]|0;Fa(d,b);e=H[b+20>>2];if(!H[b+16>>2]&(e|0)<=0|(e|0)<0){e=H[f+28>>2];va(b,H[b+4>>2],e,e+d|0)}e=H[f+4>>2];a:{if(!e){d=H[f+8>>2];if((f|0)==H[d>>2]){break a}e=f+8|0;while(1){f=H[e>>2];e=f+8|0;d=H[f+8>>2];if((f|0)!=H[d>>2]){continue}break}break a}while(1){d=e;e=H[d>>2];if(e){continue}break}}if((d|0)!=(g|0)){continue}break}}Fa(H[c+20>>2],b);d=H[c+12>>2];f=c+16|0;if((d|0)==(f|0)){return}while(1){c=d;if(!Ie(b,d+16|0)){return}Xc(a,b,H[c+28>>2]);e=H[c+4>>2];b:{if(!e){d=H[c+8>>2];if((c|0)==H[d>>2]){break b}e=c+8|0;while(1){c=H[e>>2];e=c+8|0;d=H[c+8>>2];if((c|0)!=H[d>>2]){continue}break}break b}while(1){d=e;e=H[d>>2];if(e){continue}break}}if((d|0)!=(f|0)){continue}break}}function Qg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if((fa[H[H[b>>2]+20>>2]](b)|0)>0){while(1){d=Ub(H[H[a+4>>2]+4>>2],fa[H[H[b>>2]+24>>2]](b,i)|0);if((d|0)!=-1){c=H[a+20>>2];c:{if((c|0)!=H[a+24>>2]){H[c>>2]=d;H[a+20>>2]=c+4;break c}e=H[a+16>>2];h=c-e|0;g=h>>2;c=g+1|0;if(c>>>0>=1073741824){break b}f=h>>1;f=g>>>0<536870911?c>>>0>f>>>0?c:f:1073741823;if(f){if(f>>>0>=1073741824){break a}c=ra(f<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=d;if((h|0)>0){sa(c,e,h)}H[a+24>>2]=c+(f<<2);H[a+20>>2]=g+4;H[a+16>>2]=c;if(!e){break c}qa(e)}c=H[a+4>>2];d:{if((d|0)<0){break d}e=H[c+4>>2];if(H[e+12>>2]-H[e+8>>2]>>2<=(d|0)){break d}c=H[H[c+8>>2]+(H[H[c+20>>2]+(d<<2)>>2]<<2)>>2];fa[H[H[c>>2]+32>>2]](c,d)|0}i=i+1|0;if((fa[H[H[b>>2]+20>>2]](b)|0)>(i|0)){continue}}break}a=(d|0)!=-1}else{a=1}return a|0}ua();X()}wa(1604);X()}function Zh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=da-16|0;da=e;a:{b:{c:{if(!b){break c}f=tb(c);if(f>>>0>=4294967280){break b}d:{e:{if(f>>>0>=11){g=f+16&-16;a=ra(g);H[e+8>>2]=g|-2147483648;H[e>>2]=a;H[e+4>>2]=f;break e}F[e+11|0]=f;a=e;if(!f){break d}}sa(a,c,f)}F[a+f|0]=0;f=da-16|0;da=f;H[f+12>>2]=d;a=da-32|0;da=a;c=sb(b,e);if((c|0)!=(b+4|0)){lc(b,c)}c=H[f+12>>2];f:{if(F[e+11|0]>=0){H[a+8>>2]=H[e+8>>2];d=H[e+4>>2];H[a>>2]=H[e>>2];H[a+4>>2]=d;break f}La(a,H[e>>2],H[e+4>>2])}H[a+20>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;hb(a+12|0,4);d=H[a+12>>2];F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;kc(a+24|0,b,a,a);c=H[a+12>>2];if(c){H[a+16>>2]=c;qa(c)}if(F[a+11|0]<0){qa(H[a>>2])}da=a+32|0;da=f+16|0;if(F[e+11|0]>=0){break c}qa(H[e>>2])}da=e+16|0;a=(b|0)!=0;break a}lb();X()}return a|0}function Ff(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=H[a+112>>2]-H[a+108>>2]|0;e=(d|0)/12|0;Fa(e,H[H[a+4>>2]+44>>2]);if(d){f=e>>>0>1?e:1;d=0;while(1){b=H[a+108>>2]+N(d,12)|0;Fa(H[b+4>>2]-c|0,H[H[a+4>>2]+44>>2]);Fa(H[b+4>>2]-H[b>>2]|0,H[H[a+4>>2]+44>>2]);c=H[b+4>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}d=0;gd(H[H[a+4>>2]+44>>2],e,0,0);a:{b=H[H[a+4>>2]+44>>2];f=H[b+16>>2];c=H[b+20>>2];if(!f&(c|0)<=0|(c|0)<0){break a}h=e>>>0>1?e:1;while(1){if(!!f&(c|0)>=0|(c|0)>0){f=I[(H[a+108>>2]+N(d,12)|0)+8|0];e=H[b+12>>2];c=H[e+4>>2];b=c>>>3|0;g=b+H[e>>2]|0;i=I[g|0];c=c&7;j=g,k=Vk(c)&i,F[j|0]=k;b=b+H[e>>2]|0;F[b|0]=I[b|0]|(f&1)<>2]=H[e+4>>2]+1}d=d+1|0;if((h|0)==(d|0)){break a}b=H[H[a+4>>2]+44>>2];f=H[b+16>>2];c=H[b+20>>2];continue}}fd(H[H[a+4>>2]+44>>2])}return 1}function Je(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=da-16|0;da=e;b=H[a+100>>2];g=H[a+96>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;f=b-g|0;b=(f|0)/12|0;a:{b:{if(!f){break b}if(b>>>0>=357913942){break a}c=ra(f);H[e>>2]=c;H[e+8>>2]=c+N(b,12);a=0;d=c;c=N((f-12>>>0)/12|0,12)+12|0;f=ta(d,0,c);H[e+4>>2]=c+f;c=b>>>0>1?b:1;j=c&1;if(b>>>0>=2){k=c&-2;b=0;while(1){d=N(a,12);c=d+g|0;h=H[c+4>>2];i=H[c>>2];d=d+f|0;H[d+8>>2]=H[c+8>>2];H[d>>2]=i;H[d+4>>2]=h;d=N(a|1,12);c=d+g|0;h=H[c+8>>2];i=H[c+4>>2];d=d+f|0;H[d>>2]=H[c>>2];H[d+4>>2]=i;H[d+8>>2]=h;a=a+2|0;b=b+2|0;if((k|0)!=(b|0)){continue}break}}if(!j){break b}b=N(a,12);a=b+g|0;g=H[a+4>>2];c=H[a>>2];b=b+f|0;H[b+8>>2]=H[a+8>>2];H[b>>2]=c;H[b+4>>2]=g}b=Oe(e);a=H[e>>2];if(a){H[e+4>>2]=a;qa(a)}da=e+16|0;return b}ua();X()}function ib(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=da-16|0;da=f;a:{b:{c=H[a+4>>2];c:{if((c|0)!=H[a+8>>2]){H[c>>2]=H[a+12>>2];d=c+4|0;H[a+4>>2]=d;break c}g=H[a>>2];h=c-g|0;d=h>>2;c=d+1|0;if(c>>>0>=1073741824){break b}e=h>>1;e=d>>>0<536870911?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>=1073741824){break a}c=ra(e<<2)}else{c=0}d=c+(d<<2)|0;H[d>>2]=H[a+12>>2];d=d+4|0;if((h|0)>0){sa(c,g,h)}H[a+8>>2]=c+(e<<2);H[a+4>>2]=d;H[a>>2]=c;if(!g){break c}qa(g);d=H[a+4>>2]}c=d;d=H[a>>2];H[f+12>>2]=c-d;c=H[b+20>>2];d:{if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break d}va(b,H[b+4>>2],f+12|0,f+16|0);d=H[a>>2];c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break d}va(b,H[b+4>>2],d,H[f+12>>2]+d|0);d=H[a>>2]}H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=d;da=f+16|0;return}ua();X()}wa(1604);X()}function ie(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=da-16|0;da=c;Fa(H[a+8>>2]-H[a+4>>2]>>2,b);e=H[a+4>>2];if((e|0)!=H[a+8>>2]){h=c+13|0;i=c+14|0;j=c+15|0;k=c+16|0;while(1){e=H[H[H[a+32>>2]+8>>2]+(H[(g<<2)+e>>2]<<2)>>2];F[c+15|0]=H[e+56>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+15|0,k);d=H[b+20>>2];f=H[b+16>>2];F[c+14|0]=H[e+28>>2];if(!!f&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+14|0,j);d=H[b+20>>2];f=H[b+16>>2];F[c+13|0]=I[e+24|0];if(!!f&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+13|0,i);d=H[b+20>>2];f=H[b+16>>2];F[c+12|0]=I[e+32|0];if(!!f&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+12|0,h)}Fa(H[e+60>>2],b);g=g+1|0;e=H[a+4>>2];if(g>>>0>2]-e>>2>>>0){continue}break}}da=c+16|0;return 1}function bk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=da-16|0;da=e;H[e+12>>2]=c;if(!(!Nd(a,b,c)|I[H[a+8>>2]+24|0]!=3)){f=H[b+48>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=17;H[e+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];c=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);d=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);d=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;b=yc(f,e+12|0,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}if((b|0)>0){H[a+44>>2]=b}d=(b|0)>0}da=e+16|0;return d|0}function Ia(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return sa(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}F[d|0]=I[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;F[d|0]=I[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;H[c+a>>2]=H[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;F[c+a|0]=I[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){H[d>>2]=H[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){F[d|0]=I[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function Jf(a,b,c){var d=0,e=0,f=0,g=0;a:{b=N(b,3);if((b|0)==-1){break a}b:{e=H[a+12>>2];f=H[e+12>>2];d=b<<2;c:{if(H[f+d>>2]==-1){break c}a=H[a+152>>2];e=H[e>>2];if(H[a+(H[e+d>>2]<<2)>>2]!=-1){break b}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break a}d=b<<2;if(H[d+f>>2]==-1){break c}if(H[a+(H[d+e>>2]<<2)>>2]!=-1){break b}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break a}d=b<<2;if(H[d+f>>2]==-1){break c}if(H[a+(H[d+e>>2]<<2)>>2]!=-1){break b}g=1;a=b+1|0;b=(a>>>0)%3|0?a:b-2|0}H[c>>2]=b;return g}while(1){d:{a=b;e:{if((b>>>0)%3|0){b=a-1|0;break e}b=a+2|0;if((b|0)==-1){break d}}b=H[(b<<2)+f>>2];if((b|0)==-1){break d}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){continue}}break}H[c>>2]=a+((a>>>0)%3|0?-1:2);return 0}H[c>>2]=-1;return 0}function te(a,b,c){a:{switch(b-9|0){case 0:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];return;case 6:b=H[c>>2];H[c>>2]=b+4;b=G[b>>1];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 7:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=J[b>>1];H[a+4>>2]=0;return;case 8:b=H[c>>2];H[c>>2]=b+4;b=F[b|0];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 9:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=I[b|0];H[a+4>>2]=0;return;case 16:b=H[c>>2]+7&-8;H[c>>2]=b+8;M[a>>3]=M[b>>3];return;case 17:fa[369](a,c);default:return;case 1:case 4:case 14:b=H[c>>2];H[c>>2]=b+4;b=H[b>>2];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];H[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=H[c>>2]+7&-8;H[c>>2]=b+8;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c}function ze(a,b,c,d,e,f){var g=0;g=da-80|0;da=g;a:{if((f|0)>=16384){Ka(g+32|0,b,c,d,e,0,0,0,2147352576);d=H[g+40>>2];e=H[g+44>>2];b=H[g+32>>2];c=H[g+36>>2];if(f>>>0<32767){f=f-16383|0;break a}Ka(g+16|0,b,c,d,e,0,0,0,2147352576);f=(f>>>0<49149?f:49149)-32766|0;d=H[g+24>>2];e=H[g+28>>2];b=H[g+16>>2];c=H[g+20>>2];break a}if((f|0)>-16383){break a}Ka(g- -64|0,b,c,d,e,0,0,0,7471104);d=H[g+72>>2];e=H[g+76>>2];b=H[g+64>>2];c=H[g+68>>2];if(f>>>0>4294934644){f=f+16269|0;break a}Ka(g+48|0,b,c,d,e,0,0,0,7471104);f=(f>>>0>4294918376?f:-48920)+32538|0;d=H[g+56>>2];e=H[g+60>>2];b=H[g+48>>2];c=H[g+52>>2]}Ka(g,b,c,d,e,0,0,0,f+16383<<16);b=H[g+12>>2];H[a+8>>2]=H[g+8>>2];H[a+12>>2]=b;b=H[g+4>>2];H[a>>2]=H[g>>2];H[a+4>>2]=b;da=g+80|0}function Ja(a,b){var c=0,d=0,e=0,f=0;c=H[a>>2];a:{if(b){b=H[c+12>>2];d=H[c+8>>2]+1|0;b=d?b:b+1|0;H[c+8>>2]=d;H[c+12>>2]=b;b=H[a+28>>2];H[a+24>>2]=H[a+24>>2]|1<>2];d=H[c>>2]+1|0;b=d?b:b+1|0;H[c>>2]=d;H[c+4>>2]=b;b=H[a+28>>2]}b=b+1|0;H[a+28>>2]=b;b:{c:{if((b|0)==32){b=H[a+16>>2];d:{if((b|0)!=H[a+20>>2]){H[b>>2]=H[a+24>>2];H[a+16>>2]=b+4;break d}c=H[a+12>>2];d=b-c|0;f=d>>2;b=f+1|0;if(b>>>0>=1073741824){break c}e=d>>1;e=f>>>0<536870911?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>=1073741824){break b}b=ra(e<<2)}else{b=0}f=b+(f<<2)|0;H[f>>2]=H[a+24>>2];if((d|0)>0){sa(b,c,d)}H[a+20>>2]=b+(e<<2);H[a+16>>2]=f+4;H[a+12>>2]=b;if(!c){break d}qa(c)}H[a+24>>2]=0;H[a+28>>2]=0}return}ua();X()}wa(1604);X()}function ta(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}F[a|0]=b;e=a+c|0;F[e-1|0]=b;if(c>>>0<3){break a}F[a+2|0]=b;F[a+1|0]=b;F[e-3|0]=b;F[e-2|0]=b;if(c>>>0<7){break a}F[a+3|0]=b;F[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=N(b&255,16843009);H[f>>2]=d;b=c-e&-4;c=b+f|0;H[c-4>>2]=d;if(b>>>0<9){break a}H[f+8>>2]=d;H[f+4>>2]=d;H[c-8>>2]=d;H[c-12>>2]=d;if(b>>>0<25){break a}H[f+24>>2]=d;H[f+20>>2]=d;H[f+16>>2]=d;H[f+12>>2]=d;H[c-16>>2]=d;H[c-20>>2]=d;H[c-24>>2]=d;H[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=Rk(d,0,1,1);e=ea;b=b+f|0;while(1){H[b+24>>2]=d;H[b+28>>2]=e;H[b+16>>2]=d;H[b+20>>2]=e;H[b+8>>2]=d;H[b+12>>2]=e;H[b>>2]=d;H[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function gg(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=da-16|0;da=g;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;d=a+16|0;H[d>>2]=0;H[d+4>>2]=0;H[a+12>>2]=d;d=a+24|0;H[d+4>>2]=0;H[d+8>>2]=0;H[d>>2]=d+4;if((b+4|0)!=(a|0)){Tb(a,H[b+4>>2],b+8|0)}if((d|0)!=(b+28|0)){Tb(d,H[b+28>>2],b+32|0)}H[g+12>>2]=0;a:{f=H[c+8>>2];if((H[c+12>>2]-f|0)<=0){break a}d=b+20|0;b=H[d>>2];if(!b){break a}while(1){b:{if(!b){break b}h=H[H[(e<<2)+f>>2]+56>>2];e=d;while(1){f=H[b+16>>2]<(h|0);e=f?e:b;b=H[(f<<2)+b>>2];if(b){continue}break}if((d|0)==(e|0)|H[e+16>>2]>(h|0)){break b}b=ac(a,g+12|0);if((b|0)==(e+20|0)){break b}Tb(b,H[e+20>>2],e+24|0)}e=H[g+12>>2]+1|0;H[g+12>>2]=e;f=H[c+8>>2];if(H[c+12>>2]-f>>2<=(e|0)){break a}b=H[d>>2];continue}}da=g+16|0}function Ci(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+56>>2]-H[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=ra(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){sa(c,d,e)}H[b+8>>2]=g;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}qa(d)}e=a+8|0;b=H[a+76>>2];c:{if(b){d=H[b>>2];if((d|0)==H[b+4>>2]){return 1}b=0;while(1){c=uf(e,H[(b<<2)+d>>2]);if(!c){break c}f=H[a+76>>2];d=H[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=H[H[a+12>>2]+64>>2];a=H[a+4>>2]-H[a>>2]>>2;if(a>>>0<3){break c}a=(a>>>0)/3|0;b=0;while(1){c=uf(e,N(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(1604);X()}function Hi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+28>>2]-H[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=ra(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){sa(c,d,e)}H[b+8>>2]=g;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}qa(d)}e=a+8|0;b=H[a+76>>2];c:{if(b){d=H[b>>2];if((d|0)==H[b+4>>2]){return 1}b=0;while(1){c=vf(e,H[(b<<2)+d>>2]);if(!c){break c}f=H[a+76>>2];d=H[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=H[a+12>>2];a=H[a+4>>2]-H[a>>2]>>2;if(a>>>0<3){break c}a=(a>>>0)/3|0;b=0;while(1){c=vf(e,N(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}wa(1604);X()}function Pf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=da-16|0;da=h;a:{b:{c=H[a+8>>2];c:{if((c|0)!=H[a+12>>2]){H[c>>2]=b;H[a+8>>2]=c+4;break c}d=H[a+4>>2];e=c-d|0;g=e>>2;c=g+1|0;if(c>>>0>=1073741824){break b}f=e>>1;f=g>>>0<536870911?c>>>0>f>>>0?c:f:1073741823;if(f){if(f>>>0>=1073741824){break a}c=ra(f<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=b;if((e|0)>0){sa(c,d,e)}H[a+12>>2]=c+(f<<2);H[a+8>>2]=g+4;H[a+4>>2]=c;if(!d){break c}qa(d)}c=H[a+16>>2];d=H[a+20>>2]-c>>2;d:{if((d|0)>(b|0)){break d}H[h+12>>2]=-1;e=b+1|0;if(e>>>0>d>>>0){Na(a+16|0,e-d|0,h+12|0);c=H[a+16>>2];break d}if(d>>>0<=e>>>0){break d}H[a+20>>2]=(e<<2)+c}H[(b<<2)+c>>2]=(H[a+8>>2]-H[a+4>>2]>>2)-1;da=h+16|0;return}ua();X()}wa(1604);X()}function Ak(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[b+4>>2]-H[b>>2]>>2;f=H[a+8>>2];i=F[f+24|0];d=i;g=da+-64|0;da=g;h=tc(g);d=N(d,H[3716]);nd(h,H[H[a+8>>2]+56>>2],0,i,5,d,d>>31);j=ra(96);ld(yf(j,h),e);d=H[a+32>>2];H[a+32>>2]=j;if(d){Ra(d)}a:{if(!c){break a}d=H[a+32>>2];F[d+84|0]=0;h=H[d+68>>2];e=H[d+72>>2]-h>>2;if(e>>>0>>0){Na(d+68|0,c-e|0,2764);break a}if(c>>>0>=e>>>0){break a}H[d+72>>2]=h+(c<<2)}da=g- -64|0;c=H[b>>2];d=H[b+4>>2];if((c|0)==(d|0)){return 1}a=H[a+32>>2];g=H[H[a>>2]>>2]+H[a+48>>2]|0;b=0;while(1){a=H[c>>2];if(!I[f+84|0]){a=H[H[f+68>>2]+(a<<2)>>2]}a=Kc(f,a,F[f+24|0],g+(b<<2)|0);if(a){b=b+i|0;c=c+4|0;if((d|0)!=(c|0)){continue}}break}return a|0}function yc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=a+16|0;e=H[f>>2];a:{if(!e){break a}h=H[b>>2];b=f;while(1){g=(h|0)>H[e+16>>2];b=g?b:e;e=H[(g<<2)+e>>2];if(e){continue}break}if((b|0)==(f|0)|(h|0)>2]){break a}e=H[b+24>>2];if(!e){break a}f=I[c+11|0];g=f<<24>>24<0;h=g?H[c>>2]:c;f=g?H[c+4>>2]:f;g=b+20|0;while(1){b=I[e+27|0];i=b<<24>>24<0;b=i?H[e+20>>2]:b;l=b>>>0>>0;b:{c:{k=l?b:f;d:{if(k){j=e+16|0;i=i?H[j>>2]:j;j=Ca(h,i,k);e:{if(!j){if(b>>>0<=f>>>0){break e}break b}if((j|0)<0){break b}}b=Ca(i,h,k);if(!b){break d}if((b|0)<0){break c}return gb(g,c,d)}if(b>>>0>f>>>0){break b}}if(l){break c}return gb(g,c,d)}e=e+4|0}e=H[e>>2];if(e){continue}break}}return gb(a,c,d)}function qg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=da-48|0;da=d;H[d+40>>2]=H[a- -64>>2];c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){va(b,H[b+4>>2],d+40|0,d+44|0)}c=d+8|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);if(H[d+40>>2]>0){f=1;while(1){g=f;f=H[H[a+60>>2]+(e>>>3&536870908)>>2]>>>e|0;Ja(c,(g^f^-1)&1);f=f&1;e=e+1|0;if((e|0)>2]){continue}break}}Aa(c,b);H[d+44>>2]=H[a+12>>2];e=H[b+20>>2];a:{if(!!H[b+16>>2]&(e|0)>=0|(e|0)>0){break a}f=d+48|0;va(b,H[b+4>>2],d+44|0,f);e=H[b+20>>2];g=H[b+16>>2];H[d+44>>2]=H[a+24>>2];if(!!g&(e|0)>=0|(e|0)>0){break a}va(b,H[b+4>>2],d+44|0,f)}za(c);da=d+48|0;return 1}function rc(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{d=H[a>>2];g=H[a+4>>2]-d>>2;e=g+1|0;if(e>>>0<1073741824){d=H[a+8>>2]-d|0;f=d>>1;d=d>>2>>>0<536870911?e>>>0>f>>>0?e:f:1073741823;if(d){if(d>>>0>=1073741824){break c}c=ra(d<<2)}f=H[b>>2];H[b>>2]=0;e=(g<<2)+c|0;H[e>>2]=f;d=(d<<2)+c|0;g=e+4|0;b=H[a>>2];c=H[a+4>>2];if((b|0)==(c|0)){break b}while(1){c=c-4|0;f=H[c>>2];H[c>>2]=0;e=e-4|0;H[e>>2]=f;if((b|0)!=(c|0)){continue}break}H[a+8>>2]=d;c=H[a+4>>2];H[a+4>>2]=g;b=H[a>>2];H[a>>2]=e;if((b|0)==(c|0)){break a}while(1){c=c-4|0;a=H[c>>2];H[c>>2]=0;if(a){fa[H[H[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}ua();X()}wa(1604);X()}H[a+8>>2]=d;H[a+4>>2]=g;H[a>>2]=e}if(b){qa(b)}}function Bg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=da-48|0;da=d;H[d+40>>2]=H[a+80>>2];c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){va(b,H[b+4>>2],d+40|0,d+44|0)}c=d+8|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ba(c);if(H[d+40>>2]>0){f=1;while(1){g=f;f=H[H[a+76>>2]+(e>>>3&536870908)>>2]>>>e|0;Ja(c,(g^f^-1)&1);f=f&1;e=e+1|0;if((e|0)>2]){continue}break}}Aa(c,b);H[d+44>>2]=H[a+12>>2];e=H[b+20>>2];a:{if(!!H[b+16>>2]&(e|0)>=0|(e|0)>0){break a}f=d+48|0;va(b,H[b+4>>2],d+44|0,f);e=H[b+20>>2];g=H[b+16>>2];H[d+44>>2]=H[a+16>>2];if(!!g&(e|0)>=0|(e|0)>0){break a}va(b,H[b+4>>2],d+44|0,f)}za(c);da=d+48|0;return 1}function Da(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=H[d>>2];d=H[e>>2];a:{e=H[e+4>>2]-d>>3;i=H[b>>2];if(e>>>0<=i>>>0){break a}h=H[a>>2];if(h>>>0>=e>>>0){break a}g=H[c>>2];k=H[d+(i<<3)>>2];j=d+(h<<3)|0;b:{c:{if(k>>>0>=K[j>>2]){if(e>>>0<=g>>>0){break a}f=0;if(K[d+(g<<3)>>2]>=k>>>0){break b}H[b>>2]=g;H[c>>2]=i;c=H[b>>2];if(c>>>0>=e>>>0){break a}j=e;e=H[a>>2];if(j>>>0<=e>>>0){break a}f=1;if(K[d+(c<<3)>>2]>=K[d+(e<<3)>>2]){break b}H[a>>2]=c;H[b>>2]=e;break c}if(e>>>0<=g>>>0){break a}if(K[d+(g<<3)>>2]>>0){H[a>>2]=g;H[c>>2]=h;return 1}H[a>>2]=i;H[b>>2]=h;a=H[c>>2];if(a>>>0>=e>>>0){break a}f=1;if(K[d+(a<<3)>>2]>=K[j>>2]){break b}H[b>>2]=a;H[c>>2]=h}f=2}return f}xa();X()}function Ea(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;i=Ua(a,b,c,d,f);g=H[f>>2];f=H[g>>2];a:{g=H[g+4>>2]-f>>3;h=H[e>>2];if(g>>>0<=h>>>0){break a}j=H[d>>2];if(j>>>0>=g>>>0){break a}if(K[f+(h<<3)>>2]>2]){H[d>>2]=h;H[e>>2]=j;e=H[d>>2];if(e>>>0>=g>>>0){break a}h=H[c>>2];if(h>>>0>=g>>>0){break a}if(K[f+(e<<3)>>2]>=K[f+(h<<3)>>2]){return i+1|0}H[c>>2]=e;H[d>>2]=h;d=H[c>>2];if(d>>>0>=g>>>0){break a}e=H[b>>2];if(e>>>0>=g>>>0){break a}if(K[f+(d<<3)>>2]>=K[f+(e<<3)>>2]){return i+2|0}H[b>>2]=d;H[c>>2]=e;c=H[b>>2];if(c>>>0>=g>>>0){break a}d=H[a>>2];if(d>>>0>=g>>>0){break a}if(K[f+(c<<3)>>2]>=K[f+(d<<3)>>2]){return i+3|0}H[a>>2]=c;H[b>>2]=d;i=i+4|0}return i}xa();X()}function ld(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(H[a+64>>2]){break a}d=ra(32);H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;c=H[a+64>>2];H[a+64>>2]=d;if(!c){break a}d=H[c>>2];if(d){H[c+4>>2]=d;qa(d)}qa(c)}d=H[a+64>>2];c=H[a+28>>2]-1|0;if(c>>>0<=10){c=H[(c<<2)+14848>>2]}else{c=-1}c=N(c,F[a+24|0]);g=c;f=c>>31;e=Rk(c,f,b,0);c=0;b:{if((ea|0)<0){break b}hb(d,e);c=H[d+28>>2];e=H[d+24>>2]+1|0;c=e?c:c+1|0;H[d+24>>2]=e;H[d+28>>2]=c;c=1}if(c){d=H[a+64>>2];H[a>>2]=d;c=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=c;c=H[d+24>>2];d=H[d+28>>2];H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=g;H[a+44>>2]=f;H[a+16>>2]=c;H[a+20>>2]=d;H[a+80>>2]=b}}function ik(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;H[b>>2]=1;f=b+8|0;c=H[b+8>>2];d=H[b+12>>2]-c|0;if(d>>>0<=4294967291){oc(f,d+4|0);c=H[f>>2]}c=c+d|0;d=H[a+4>>2];F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=H[a+8>>2];if((c|0)!=H[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=H[b+8>>2];e=H[b+12>>2]-c|0;if(e>>>0<=4294967291){oc(f,e+4|0);c=H[f>>2]}c=c+e|0;e=H[g>>2];F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;d=d+1|0;c=H[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=H[b+12>>2];b=H[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){oc(f,c+4|0);b=H[f>>2]}b=b+c|0;a=H[a+20>>2];F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24}function Ta(a,b,c){var d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[a+4>>2]=0;a:{b:{if(!b){break b}g=H[a+8>>2];d=g<<5;c:{if(d>>>0>=b>>>0){H[a+4>>2]=b;break c}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=b+31&-32;d=g<<6;d=d>>>0>>0?f:d}else{d=2147483647}Ib(e,d);f=H[a>>2];H[a>>2]=H[e>>2];H[e>>2]=f;d=H[a+4>>2];H[a+4>>2]=b;H[e+4>>2]=d;d=H[a+8>>2];H[a+8>>2]=H[e+8>>2];H[e+8>>2]=d;if(!f){break c}qa(f)}f=b>>>5|0;d=f<<2;a=H[a>>2];if(I[c|0]){a=ta(a,255,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;H[a>>2]=H[a>>2]|-1>>>32-b;break b}a=ta(a,0,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;H[a>>2]=H[a>>2]&(-1>>>32-b^-1)}da=e+16|0;return}ua();X()}function dg(a,b,c){var d=0,e=0,f=0;d=da-16|0;da=d;H[d+12>>2]=b;b=ra(32);H[d>>2]=b;H[d+4>>2]=17;H[d+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];e=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);f=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=f;F[b+9|0]=f>>>8;F[b+10|0]=f>>>16;F[b+11|0]=f>>>24;F[b+12|0]=e;F[b+13|0]=e>>>8;F[b+14|0]=e>>>16;F[b+15|0]=e>>>24;e=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);f=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=f;F[b+1|0]=f>>>8;F[b+2|0]=f>>>16;F[b+3|0]=f>>>24;F[b+4|0]=e;F[b+5|0]=e>>>8;F[b+6|0]=e>>>16;F[b+7|0]=e>>>24;wb(ac(a+4|0,d+12|0),d,c);if(F[d+11|0]<0){qa(H[d>>2])}da=d+16|0}function Ec(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){f=H[a+4>>2]-e|0;d=f+b|0;h=f>>2;i=h>>>0>>0?d:c;f=i-b|0;if(f){Ia(e,b,f)}if(g>>>0>h>>>0){b=H[a+4>>2];if((c|0)!=(i|0)){while(1){H[b>>2]=H[d>>2];b=b+4|0;d=d+4|0;if((d|0)!=(c|0)){continue}break}}H[a+4>>2]=b;return}H[a+4>>2]=e+f;return}if(e){H[a+4>>2]=e;qa(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}e=d>>1;d=d>>2>>>0<536870911?e>>>0>>0?g:e:1073741823;if(d>>>0>=1073741824){break a}e=d<<2;d=ra(e);H[a>>2]=d;H[a+4>>2]=d;H[a+8>>2]=d+e;if((b|0)!=(c|0)){c=b;b=f&-4;d=sa(d,c,b)+b|0}H[a+4>>2]=d;return}ua();X()}function jg(a,b){var c=0,d=0,e=0,f=0;d=da-16|0;da=d;a:{if((fb(H[b+48>>2])|0)>9){break a}if((fa[H[H[b>>2]+8>>2]](b)|0)!=1){break a}a=H[H[H[b+4>>2]+8>>2]+(a<<2)>>2];c=H[a+56>>2];if((c|0)==3){c=5;if((fb(H[b+48>>2])|0)<4){break a}c=H[a+56>>2]}a=fb(H[b+48>>2]);if((c|0)==1){b:{if((a|0)>3){break b}e=d,f=Ub(H[b+4>>2],0),H[e+12>>2]=f;a=Ge(H[b+4>>2]);if(!a){break b}a=H[a+28>>2]-1|0;if(1279>>>a&a>>>0<11){c=6;break a}b=H[b+48>>2];a=bc(d,1357);b=yc(b,d+12|0,a,-1);if(F[a+11|0]<0){qa(H[a>>2])}c=6;if((b|0)>0){break a}}c=0;break a}c=0;if((a|0)>7){break a}c=1;if((fb(H[b+48>>2])|0)>1){break a}c=K[H[b+4>>2]+80>>2]<40?1:4}da=d+16|0;return c}function Cj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;f=da-32|0;da=f;a=a+8|0;d=d-e|0;if((d|0)>0){i=0-e<<2;while(1){j=d<<2;g=j+b|0;h=g+i|0;k=H[h>>2];h=H[h+4>>2];l=H[g+4>>2];H[f+16>>2]=H[g>>2];H[f+20>>2]=l;H[f+8>>2]=k;H[f+12>>2]=h;ab(f+24|0,a,f+16|0,f+8|0);g=c+j|0;H[g>>2]=H[f+24>>2];H[g+4>>2]=H[f+28>>2];d=d-e|0;if((d|0)>0){continue}break}}d=(e&1073741823)!=(e|0)?-1:e<<2;d=ta(ra(d),0,d);e=H[d>>2];g=H[d+4>>2];i=H[b+4>>2];H[f+16>>2]=H[b>>2];H[f+20>>2]=i;H[f+8>>2]=e;H[f+12>>2]=g;ab(f+24|0,a,f+16|0,f+8|0);H[c>>2]=H[f+24>>2];H[c+4>>2]=H[f+28>>2];qa(d);da=f+32|0;return 1}function Sb(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){f=H[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){H[e>>2]=H[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>0){f=sa(f,d,b)+b|0}H[a+4>>2]=f;return}H[a+4>>2]=e;return}if(e){H[a+4>>2]=e;qa(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>2>>>0<536870911?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=ra(e);H[a>>2]=c;H[a+4>>2]=c;H[a+8>>2]=c+e;if(f){c=sa(c,b,f)+f|0}H[a+4>>2]=c;return}ua();X()}function fd(a){var b=0,c=0,d=0,e=0,f=0;c=da-32|0;da=c;b=H[a+20>>2];e=H[a+16>>2];if(!!e&(b|0)>=0|(b|0)>0){b=H[H[a+12>>2]+4>>2]+7|0;d=b>>>0<7?1:d;f=d<<29|b>>>3;b=d>>>3|0;if(I[a+24|0]){d=H[a+4>>2];F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=0;H[c+4>>2]=0;Bb(f,b,c);d=d-e|0;b=d-8|0;e=H[c+4>>2]-H[c>>2]|0;Ia(b+e|0,d,f);sa(b,H[c>>2],e);b=8-e|0;d=b+H[a+16>>2]|0;e=H[a+20>>2];H[a+16>>2]=d;H[a+20>>2]=b>>>0>d>>>0?e+1|0:e;b=H[c+12>>2];H[c+12>>2]=0;if(b){qa(b)}b=H[c>>2];if(b){H[c+4>>2]=b;qa(b)}b=H[a+16>>2]}else{b=e}hb(a,f-b+(H[a+4>>2]-H[a>>2])|0);H[a+16>>2]=0;H[a+20>>2]=0}da=c+32|0}function bg(a,b){var c=0,d=0,e=0,f=0;f=da-16|0;da=f;c=ra(16);H[f>>2]=c;H[f+4>>2]=15;H[f+8>>2]=-2147483632;F[c+15|0]=0;d=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);e=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+7|0]=e;F[c+8|0]=e>>>8;F[c+9|0]=e>>>16;F[c+10|0]=e>>>24;F[c+11|0]=d;F[c+12|0]=d>>>8;F[c+13|0]=d>>>16;F[c+14|0]=d>>>24;d=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);e=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;wb(a+4|0,f,b);if(F[f+11|0]<0){qa(H[f>>2])}da=f+16|0}function Wh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a=da-16|0;da=a;a:{if(!b){break a}H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=b+96|0;g=H[b+96>>2];e=(H[b+100>>2]-g|0)/12|0;b:{if(e>>>0>>0){Re(h,c-e|0,a);break b}if(c>>>0>>0){H[b+100>>2]=g+N(c,12)}if(!c){break a}}g=H[h>>2];e=0;while(1){i=N(e,12);f=i+d|0;j=H[f>>2];k=H[f+8>>2];l=H[f+4>>2];f=(H[b+100>>2]-g|0)/12|0;c:{if(f>>>0>e>>>0){e=e+1|0;break c}H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;e=e+1|0;Re(h,e-f|0,a);g=H[h>>2]}f=g+i|0;H[f+8>>2]=k;H[f+4>>2]=l;H[f>>2]=j;if((c|0)!=(e|0)){continue}break}}da=a+16|0;return(b|0)!=0|0}function Rj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=da-32|0;da=g;H[a+48>>2]=f;d=H[a+40>>2];h=H[d>>2];a:{i=H[d+4>>2]-h|0;if((i|0)<=0){break a}d=i>>>2|0;f=d-1|0;if(f>>>0>2>>>0){i=a+8|0;m=a+44|0;while(1){Ag(m,H[(f<<2)+h>>2],b,f);h=H[a+52>>2];j=H[a+56>>2];k=N(e,f)<<2;l=k+b|0;n=H[l+4>>2];H[g+16>>2]=H[l>>2];H[g+20>>2]=n;H[g+8>>2]=h;H[g+12>>2]=j;ab(g+24|0,i,g+16|0,g+8|0);h=c+k|0;H[h>>2]=H[g+24>>2];H[h+4>>2]=H[g+28>>2];if(d>>>0<2){break a}d=f;j=H[a+40>>2];h=H[j>>2];f=f-1|0;if(f>>>0>2]-h>>2>>>0){continue}break}}xa();X()}da=g+32|0;return 1}function Gj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=da-32|0;da=g;H[a+48>>2]=f;d=H[a+40>>2];h=H[d>>2];a:{i=H[d+4>>2]-h|0;if((i|0)<=0){break a}d=i>>>2|0;f=d-1|0;if(f>>>0>2>>>0){i=a+8|0;m=a+44|0;while(1){vg(m,H[(f<<2)+h>>2],b,f);h=H[a+52>>2];j=H[a+56>>2];k=N(e,f)<<2;l=k+b|0;n=H[l+4>>2];H[g+16>>2]=H[l>>2];H[g+20>>2]=n;H[g+8>>2]=h;H[g+12>>2]=j;ab(g+24|0,i,g+16|0,g+8|0);h=c+k|0;H[h>>2]=H[g+24>>2];H[h+4>>2]=H[g+28>>2];if(d>>>0<2){break a}d=f;j=H[a+40>>2];h=H[j>>2];f=f-1|0;if(f>>>0>2]-h>>2>>>0){continue}break}}xa();X()}da=g+32|0;return 1}function Kb(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0;i=1;j=d&2147483647;l=j;k=(j|0)==2147418112;a:{if(k&!c?a|b:k&(c|0)!=0|j>>>0>2147418112){break a}j=h&2147483647;k=(j|0)==2147418112;if(k&!g?e|f:k&(g|0)!=0|j>>>0>2147418112){break a}if(!(a|e|(c|g)|(b|f|(j|l)))){return 0}i=d&h;if((i|0)>0|(i|0)>=0){i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>>0|b>>>0>>0:c>>>0>>0&(d|0)<=(h|0)|(d|0)<(h|0)){break a}return(a^e|c^g|(b^f|d^h))!=0}i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>e>>>0|b>>>0>f>>>0:c>>>0>g>>>0&(d|0)>=(h|0)|(d|0)>(h|0)){break a}i=(a^e|c^g|(b^f|d^h))!=0}return i}function Yf(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+4|0;a:{a=H[a+4>>2];if(a){e=I[c+11|0];d=e<<24>>24<0;i=d?H[c>>2]:c;e=d?H[c+4>>2]:e;while(1){c=I[a+27|0];d=c<<24>>24<0;c=d?H[a+20>>2]:c;j=c>>>0>>0;b:{c:{d:{e:{f:{h=j?c:e;g:{if(h){g=a+16|0;d=d?H[g>>2]:g;g=Ca(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>=0){break f}break g}if(c>>>0<=e>>>0){break e}}c=H[a>>2];if(c){break b}H[b>>2]=a;return a}c=Ca(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>=0){break a}}f=a+4|0;c=H[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}H[b>>2]=f;return f}H[b>>2]=a;return f}function yf(a,b){var c=0;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;c=H[b+60>>2];H[a+56>>2]=H[b+56>>2];H[a+60>>2]=c;c=H[b+52>>2];H[a+48>>2]=H[b+48>>2];H[a+52>>2]=c;c=H[b+44>>2];H[a+40>>2]=H[b+40>>2];H[a+44>>2]=c;c=H[b+36>>2];H[a+32>>2]=H[b+32>>2];H[a+36>>2]=c;c=H[b+28>>2];H[a+24>>2]=H[b+24>>2];H[a+28>>2]=c;c=H[b+20>>2];H[a+16>>2]=H[b+16>>2];H[a+20>>2]=c;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c;H[a+88>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;F[a+77|0]=0;F[a+78|0]=0;F[a+79|0]=0;F[a+80|0]=0;F[a+81|0]=0;F[a+82|0]=0;F[a+83|0]=0;F[a+84|0]=0;return a}function sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;a=H[a+4>>2];a:{b:{if(!a){break b}d=I[b+11|0];c=d<<24>>24<0;i=c?H[b>>2]:b;e=c?H[b+4>>2]:d;c=g;while(1){b=I[a+27|0];j=b<<24>>24<0;h=j?H[a+20>>2]:b;f=h>>>0>e>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Ca(j?H[b>>2]:b,i,d);if(b){break c}}b=e>>>0>h>>>0?-1:f}c=(b|0)<0?c:a;a=H[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=I[c+27|0];f=a<<24>>24<0;d:{d=f?H[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=Ca(i,f?H[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>=0){break a}}c=g}return c}function Xd(a){var b=0,c=0,d=0,e=0;c=H[a+152>>2];if(c){b=H[a+156>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+152>>2]}H[a+156>>2]=c;qa(b)}c=H[a+140>>2];if(c){b=H[a+144>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+140>>2]}H[a+144>>2]=c;qa(b)}b=H[a+128>>2];if(b){H[a+132>>2]=b;qa(b)}b=H[a+116>>2];if(b){H[a+120>>2]=b;qa(b)}b=H[a+104>>2];if(b){H[a+108>>2]=b;qa(b)}yb(a+84|0);yb(a- -64|0);yb(a+44|0);za(a+12|0)}function Rc(a,b,c,d,e,f,g,h){var i=0,j=0,k=0;i=da-16|0;da=i;if((b^-1)-17>>>0>=c>>>0){if(I[a+11|0]>>>7|0){k=H[a>>2]}else{k=a}a:{if(b>>>0<2147483623){H[i+8>>2]=b<<1;H[i+12>>2]=b+c;c=da-16|0;da=c;da=c+16|0;c=i+8|0;j=i+12|0;c=H[(K[j>>2]>2]?c:j)>>2];if(c>>>0>=11){j=c+16&-16;c=j-1|0;c=(c|0)==11?j:c}else{c=10}break a}c=-18}j=c+1|0;c=ra(j);if(e){Eb(c,k,e)}if(g){Eb(c+e|0,h,g)}d=d-(e+f|0)|0;if(d){Eb((c+e|0)+g|0,(e+k|0)+f|0,d)}if((b|0)!=10){qa(k)}H[a>>2]=c;H[a+8>>2]=j|-2147483648;b=a;a=d+(e+g|0)|0;H[b+4>>2]=a;F[i+7|0]=0;F[a+c|0]=I[i+7|0];da=i+16|0;return}lb();X()}function Ud(a){var b=0,c=0,d=0,e=0;c=H[a+140>>2];if(c){b=H[a+144>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+140>>2]}H[a+144>>2]=c;qa(b)}c=H[a+128>>2];if(c){b=H[a+132>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+128>>2]}H[a+132>>2]=c;qa(b)}b=H[a+116>>2];if(b){H[a+120>>2]=b;qa(b)}b=H[a+104>>2];if(b){H[a+108>>2]=b;qa(b)}b=H[a+92>>2];if(b){H[a+96>>2]=b;qa(b)}yb(a+72|0);yb(a+52|0);yb(a+32|0);yb(a+12|0)}function fc(a,b){var c=0,d=0,e=0,f=0;c=H[a+16>>2];if(b){H[a+12>>2]=H[a+12>>2]|-2147483648>>>c}b=c+1|0;H[a+16>>2]=b;a:{b:{if((b|0)==32){b=H[a+4>>2];c:{if((b|0)!=H[a+8>>2]){H[b>>2]=H[a+12>>2];H[a+4>>2]=b+4;break c}c=H[a>>2];f=b-c|0;e=f>>2;b=e+1|0;if(b>>>0>=1073741824){break b}d=f>>1;d=e>>>0<536870911?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break a}b=ra(d<<2)}else{b=0}e=b+(e<<2)|0;H[e>>2]=H[a+12>>2];if((f|0)>0){sa(b,c,f)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=e+4;H[a>>2]=b;if(!c){break c}qa(c)}H[a+12>>2]=0;H[a+16>>2]=0}return}ua();X()}wa(1604);X()}function dh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(ub(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(ub(a,H[b>>2],e)){if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+32>>2]=d;b:{if(H[b+44>>2]==4){break b}G[b+52>>1]=0;a=H[a+8>>2];fa[H[H[a>>2]+20>>2]](a,b,c,c,1,e);if(I[b+53|0]){H[b+44>>2]=3;if(!I[b+52|0]){break b}break a}H[b+44>>2]=4}H[b+20>>2]=c;H[b+40>>2]=H[b+40>>2]+1;if(H[b+36>>2]!=1|H[b+24>>2]!=2){break a}F[b+54|0]=1;return}a=H[a+8>>2];fa[H[H[a>>2]+24>>2]](a,b,c,d,e)}}function Nb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}d=N(b,12);b=ra(d);H[a>>2]=b;H[a+4>>2]=b;e=b+d|0;H[a+8>>2]=e;f=H[c>>2];c=H[c+4>>2]-f|0;c:{if(!c){c=b;b=d-12|0;ta(c,0,(b-((b>>>0)%12|0)|0)+12|0);break c}if((c|0)<0){break a}g=c>>2<<2;h=c>>>2<<2;while(1){H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;d=ra(c);H[b>>2]=d;H[b+4>>2]=d;H[b+8>>2]=d+g;i=b,j=sa(d,f,c)+h|0,H[i+4>>2]=j;b=b+12|0;if((e|0)!=(b|0)){continue}break}}H[a+4>>2]=e}return}ua();X()}H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;ua();X()}function eb(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){d=H[a+4>>2]-e|0;f=d>>2;d=f>>>0>>0?b+d|0:c;h=d-b|0;if(h){Ia(e,b,h)}if(f>>>0>>0){b=H[a+4>>2];c=c-d|0;if((c|0)>0){b=sa(b,d,c)+c|0}H[a+4>>2]=b;return}H[a+4>>2]=e+h;return}if(e){H[a+4>>2]=e;qa(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>2>>>0<536870911?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=ra(e);H[a>>2]=c;H[a+4>>2]=c;H[a+8>>2]=c+e;if(f){c=sa(c,b,f)+f|0}H[a+4>>2]=c;return}ua();X()}function _f(a,b,c,d,e){var f=0,g=0,h=0;f=da-16|0;da=f;g=Zf(b,c,f+12|0,f+8|0,d);c=H[g>>2];if(c){b=0}else{c=ra(40);d=c+16|0;a:{if(F[e+11|0]>=0){h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;H[d+8>>2]=H[e+8>>2];break a}La(d,H[e>>2],H[e+4>>2])}d=c+28|0;b:{if(F[e+23|0]>=0){e=e+12|0;h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;H[d+8>>2]=H[e+8>>2];break b}La(d,H[e+12>>2],H[e+16>>2])}H[c+8>>2]=H[f+12>>2];H[c>>2]=0;H[c+4>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}xb(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c;da=f+16|0}function Kf(a){var b=0,c=0,d=0,e=0;Ba(a);c=H[a+84>>2];a:{if((c|0)<=0){break a}b=c<<5;d=ra((c|0)!=(c&134217727)?-1:b|4);H[d>>2]=c;d=d+4|0;c=d+b|0;b=d;while(1){H[b>>2]=0;H[b+4>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;b=b+32|0;if((c|0)!=(b|0)){continue}break}e=H[a+80>>2];H[a+80>>2]=d;if(e){c=e-4|0;d=H[c>>2];if(d){b=(d<<5)+e|0;while(1){b=za(b-32|0);if((e|0)!=(b|0)){continue}break}}qa(c)}if(H[a+84>>2]<=0){break a}b=0;while(1){Ba(H[a+80>>2]+(b<<5)|0);b=b+1|0;if((b|0)>2]){continue}break}}}function ge(a,b,c){var d=0,e=0,f=0;d=da+-64|0;da=d;f=H[a>>2];e=H[f-4>>2];f=H[f-8>>2];H[d+20>>2]=0;H[d+16>>2]=b;H[d+12>>2]=a;H[d+8>>2]=c;b=0;ta(d+24|0,0,39);a=a+f|0;a:{if(ub(e,c,0)){H[d+56>>2]=1;fa[H[H[e>>2]+20>>2]](e,d+8|0,a,a,1,0);b=H[d+32>>2]==1?a:0;break a}fa[H[H[e>>2]+24>>2]](e,d+8|0,a,1,0);b:{switch(H[d+44>>2]){case 0:b=H[d+48>>2]==1?H[d+36>>2]==1?H[d+40>>2]==1?H[d+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(H[d+32>>2]!=1){if(H[d+48>>2]|H[d+36>>2]!=1|H[d+40>>2]!=1){break a}}b=H[d+24>>2]}da=d- -64|0;return b}function vb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=da-16|0;da=f;A(+b);g=v(1)|0;d=v(0)|0;c=g&2147483647;e=c+-1048576|0;a:{if((e|0)==2145386495|e>>>0<2145386495){h=d<<28;e=c>>>4|0;c=(c&15)<<28|d>>>4;d=e+1006632960|0;break a}if((c|0)==2146435072|c>>>0>2146435072){h=d<<28;c=(g&15)<<28|d>>>4;d=g>>>4|2147418112;break a}if(!(c|d)){c=0;d=0;break a}e=c;c=c?Q(c):Q(d)+32|0;Wa(f,d,e,0,0,c+49|0);i=H[f>>2];h=H[f+4>>2];e=15372-c<<16;c=H[f+8>>2];d=e|H[f+12>>2]^65536}H[a>>2]=i;H[a+4>>2]=h;H[a+8>>2]=c;H[a+12>>2]=g&-2147483648|d;da=f+16|0}function Oh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=da-48|0;da=f;a:{if(!b){a=0;break a}e=f+16|0;H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;g=0;b:{if((Ub(b,0)|0)==-1){break b}if(c){g=0;if(!(fa[H[H[b>>2]+16>>2]](b)|0)){break b}fa[H[H[b>>2]+20>>2]](b)}hg(f,a,b,e);a=H[f>>2];if(F[f+15|0]<0){qa(H[f+4>>2])}g=0;if(a){break b}Zc(d,H[e>>2],H[e+4>>2]);g=H[e+4>>2]-H[e>>2]|0}a=g;b=H[e+12>>2];H[e+12>>2]=0;if(b){qa(b)}b=H[e>>2];if(!b){break a}H[e+4>>2]=b;qa(b)}da=f+48|0;return a|0}function Ua(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=Da(a,b,c,e);f=H[e>>2];e=H[f>>2];a:{f=H[f+4>>2]-e>>3;g=H[d>>2];if(f>>>0<=g>>>0){break a}i=H[c>>2];if(i>>>0>=f>>>0){break a}if(K[e+(g<<3)>>2]>2]){H[c>>2]=g;H[d>>2]=i;d=H[c>>2];if(d>>>0>=f>>>0){break a}g=H[b>>2];if(g>>>0>=f>>>0){break a}if(K[e+(d<<3)>>2]>=K[e+(g<<3)>>2]){return h+1|0}H[b>>2]=d;H[c>>2]=g;c=H[b>>2];if(c>>>0>=f>>>0){break a}d=H[a>>2];if(d>>>0>=f>>>0){break a}if(K[e+(c<<3)>>2]>=K[e+(d<<3)>>2]){return h+2|0}H[a>>2]=c;H[b>>2]=d;h=h+3|0}return h}xa();X()}function Rd(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=2312;b=H[a+60>>2];if(b){c=H[a- -64>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-4|0;d=H[c>>2];H[c>>2]=0;if(d){Ra(d)}if((b|0)!=(c|0)){continue}break}c=H[a+60>>2]}H[a+64>>2]=b;qa(c)}b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}b=H[a+36>>2];if(b){c=H[a+40>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-24|0;fa[H[H[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}c=H[a+36>>2]}H[a+40>>2]=b;qa(c)}H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;qa(b)}return a|0}function Ph(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=da-48|0;da=e;a:{if(!b){a=0;break a}d=e+16|0;H[d>>2]=0;H[d+4>>2]=0;F[d+24|0]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;f=0;b:{if((Ub(b,0)|0)==-1){break b}f=0;if(!(fa[H[H[b>>2]+16>>2]](b)|0)){break b}fa[H[H[b>>2]+20>>2]](b);fg(e,a,b,d);a=H[e>>2];if(F[e+15|0]<0){qa(H[e+4>>2])}f=0;if(a){break b}Zc(c,H[d>>2],H[d+4>>2]);f=H[d+4>>2]-H[d>>2]|0}a=f;b=H[d+12>>2];H[d+12>>2]=0;if(b){qa(b)}b=H[d>>2];if(!b){break a}H[d+4>>2]=b;qa(b)}da=e+48|0;return a|0}function Rg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=H[a+8>>2];d=H[e+40>>2];g=ra((d|0)>=0?d:-1);a:{f=H[b>>2];h=H[b+4>>2];if((f|0)==(h|0)){break a}k=d+g|0;while(1){d=H[(i<<2)+f>>2];l=H[H[e>>2]>>2];m=H[e+48>>2];j=H[e+40>>2];n=H[e+44>>2];if(!I[e+84|0]){d=H[H[e+68>>2]+(d<<2)>>2]}d=Rk(j,n,d,0)+m|0;e=sa(g,d+l|0,j);d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){va(c,H[c+4>>2],e,k);h=H[b+4>>2];f=H[b>>2]}i=i+1|0;if(i>>>0>=h-f>>2>>>0){break a}e=H[a+8>>2];continue}}qa(g);return 1}function Lb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;a:{if(f&64){c=f+-64|0;b=c&31;if((c&63)>>>0>=32){c=0;b=e>>>b|0}else{c=e>>>b|0;b=((1<>>b}d=0;e=0;break a}if(!f){break a}i=d;h=64-f|0;g=h&31;if((h&63)>>>0>=32){h=i<>>32-g|e<>>0>=32){g=0;b=c>>>b|0}else{g=c>>>b|0;b=((1<>>b}b=j|b;c=g|h;g=d;d=f&31;if((f&63)>>>0>=32){h=0;d=e>>>d|0}else{h=e>>>d|0;d=((1<>>d}e=h}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e}function Ib(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=da-16|0;da=c;a:{b:{if(H[a+8>>2]<<5>>>0>=b>>>0){break b}H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;if((b|0)<0){break a}g=(b-1>>>5|0)+1|0;e=ra(g<<2);H[c+8>>2]=g;H[c>>2]=e;f=H[a>>2];b=H[a+4>>2];H[c+4>>2]=b;H[((b>>>0<33?0:b-1>>>5|0)<<2)+e>>2]=0;c:{if((b|0)<=0){break c}h=b>>>5|0;d=h<<2;i=Ia(e,f,d);b=b-(h<<5)|0;if((b|0)<=0){break c}d=d+i|0;b=-1>>>32-b|0;H[d>>2]=H[d>>2]&(b^-1)|b&H[(h<<2)+f>>2]}H[a+8>>2]=g;H[a>>2]=e;if(!f){break b}qa(f)}da=c+16|0;return}ua();X()}function Ie(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=da-16|0;da=c;e=I[b+11|0];e=e<<24>>24<0?H[b+4>>2]:e;a:{if(e>>>0>255){break a}if(!e){F[c+15|0]=0;b=H[a+20>>2];if(!!H[a+16>>2]&(b|0)>=0|(b|0)>0){break a}va(a,H[a+4>>2],c+15|0,c+16|0);break a}F[c+14|0]=e;d=H[a+20>>2];if(!!H[a+16>>2]&(d|0)>=0|(d|0)>0){break a}va(a,H[a+4>>2],c+14|0,c+15|0);d=H[a+20>>2];if(!!H[a+16>>2]&(d|0)>=0|(d|0)>0){break a}g=a;h=H[a+4>>2];a=I[b+11|0];d=a<<24>>24<0;f=d?H[b>>2]:b;va(g,h,f,(d?H[b+4>>2]:a)+f|0)}da=c+16|0;return e>>>0<256}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=da-48|0;da=d;e=H[a+4>>2];a:{if(!e){break a}if(b){if(!(fa[H[H[e>>2]+16>>2]](e)|0)){break a}b=H[a+4>>2];fa[H[H[b>>2]+20>>2]](b)}b=d+16|0;H[b>>2]=0;H[b+4>>2]=0;F[b+24|0]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;Hd(d,H[a>>2],b);a=H[d>>2];if(F[d+15|0]<0){qa(H[d+4>>2])}if(!a){Zc(c,H[b>>2],H[b+4>>2]);f=H[b+4>>2]-H[b>>2]|0}a=H[b+12>>2];H[b+12>>2]=0;if(a){qa(a)}a=H[b>>2];if(!a){break a}H[b+4>>2]=a;qa(a)}da=d+48|0;return f|0}function Wa(a,b,c,d,e,f){var g=0,h=0,i=0;a:{if(f&64){d=b;e=f+-64|0;b=e&31;if((e&63)>>>0>=32){e=d<>>32-b|c<>>0>=32){h=g<>>32-d|e<>>0>=32){e=0;b=c>>>d|0}else{e=c>>>d|0;b=((1<>>d}d=i|b;e=e|h;b=f&31;if((f&63)>>>0>=32){h=g<>>32-b|c<>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e}function Ya(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=a+8|0;Da(a,a+4|0,e,c);a:{d=a+12|0;if((d|0)!=(b|0)){c=H[c>>2];f=H[c>>2];g=H[c+4>>2]-f>>3;while(1){h=H[d>>2];if(h>>>0>=g>>>0){break a}i=d;d=H[e>>2];if(g>>>0<=d>>>0){break a}c=i;j=(h<<3)+f|0;if(K[j>>2]>2]){while(1){b:{H[c>>2]=d;c=e;if((c|0)==(a|0)){c=a;break b}e=c-4|0;d=H[e>>2];if(g>>>0<=d>>>0){break a}if(K[j>>2]>2]){continue}}break}H[c>>2]=h}e=i;d=e+4|0;if((d|0)!=(b|0)){continue}break}}return}xa();X()}function Pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((fa[H[H[b>>2]+20>>2]](b)|0)<=0){return 1}a:{while(1){d=Ub(H[H[a+4>>2]+4>>2],fa[H[H[b>>2]+24>>2]](b,e)|0);if((d|0)==-1){break a}c=H[a+4>>2];f=0;b:{if((d|0)<0){break b}g=H[c+4>>2];if(H[g+12>>2]-H[g+8>>2]>>2<=(d|0)){break b}c=H[H[c+8>>2]+(H[H[c+20>>2]+(d<<2)>>2]<<2)>>2];f=fa[H[H[c>>2]+36>>2]](c,d)|0}if(!(fa[H[H[b>>2]+28>>2]](b,f)|0)){break a}e=e+1|0;if((fa[H[H[b>>2]+20>>2]](b)|0)>(e|0)){continue}break}return 1}return 0}function Sd(a,b){Aa(a,b);Aa(a+32|0,b);Aa(a- -64|0,b);Aa(a+96|0,b);Aa(a+128|0,b);Aa(a+160|0,b);Aa(a+192|0,b);Aa(a+224|0,b);Aa(a+256|0,b);Aa(a+288|0,b);Aa(a+320|0,b);Aa(a+352|0,b);Aa(a+384|0,b);Aa(a+416|0,b);Aa(a+448|0,b);Aa(a+480|0,b);Aa(a+512|0,b);Aa(a+544|0,b);Aa(a+576|0,b);Aa(a+608|0,b);Aa(a+640|0,b);Aa(a+672|0,b);Aa(a+704|0,b);Aa(a+736|0,b);Aa(a+768|0,b);Aa(a+800|0,b);Aa(a+832|0,b);Aa(a+864|0,b);Aa(a+896|0,b);Aa(a+928|0,b);Aa(a+960|0,b);Aa(a+992|0,b);Aa(a+1024|0,b)}function re(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!H[H[4773]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){F[a+1|0]=b&63|128;F[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){F[a+2|0]=b&63|128;F[a|0]=b>>>12|224;F[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){F[a+3|0]=b&63|128;F[a|0]=b>>>18|240;F[a+2|0]=b>>>6&63|128;F[a+1|0]=b>>>12&63|128;a=4;break a}}H[4736]=25;a=-1}else{a=1}break a}F[a|0]=b;a=1}return a}function lg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a=H[a+4>>2];if(a){c=I[b+11|0];d=c<<24>>24<0;g=d?H[b>>2]:b;b=d?H[b+4>>2]:c;while(1){c=I[a+27|0];d=c<<24>>24<0;c=d?H[a+20>>2]:c;h=c>>>0>>0;a:{b:{f=h?c:b;c:{if(f){e=a+16|0;d=d?H[e>>2]:e;e=Ca(g,d,f);d:{if(!e){if(b>>>0>=c>>>0){break d}break a}if((e|0)<0){break a}}c=Ca(d,g,f);if(!c){break c}if((c|0)<0){break b}return 1}if(b>>>0>>0){break a}}if(h){break b}return 1}a=a+4|0}a=H[a>>2];if(a){continue}break}}return 0}function $a(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0;h=Rk(b,c,h,i);i=ea;j=h;h=Rk(d,e,f,g);e=j+h|0;d=ea+i|0;i=e;h=i>>>0>>0?d+1|0:d;j=i;k=g;e=0;l=c;d=0;i=Rk(g,e,c,d);g=j+i|0;c=ea+h|0;j=g;g=g>>>0>>0?c+1|0:c;h=f;c=0;i=b;f=Rk(h,c,i,0);b=ea;d=Rk(h,c,l,d);b=b+d|0;c=ea;c=b>>>0>>0?c+1|0:c;h=c;c=c+j|0;d=g;d=c>>>0>>0?d+1|0:d;h=c;c=d;d=Rk(i,m,k,e)+b|0;e=ea;e=b>>>0>d>>>0?e+1|0:e;g=a;i=e;h=i+h|0;H[g+8>>2]=h;H[g+12>>2]=h>>>0>>0?c+1|0:c;H[g>>2]=f;H[g+4>>2]=d}function mc(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=14980;b=H[a+68>>2];if(b){H[a+72>>2]=b;qa(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}b=H[a+44>>2];if(b){H[a+48>>2]=b;qa(b)}b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){Ra(b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}b=H[a+4>>2];H[a+4>>2]=0;if(b){Se(b)}return a|0}function Kg(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=2524;b=H[a+72>>2];H[a+72>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;qa(b)}b=H[a+48>>2];if(b){qa(b)}d=H[a+36>>2];if(d){c=H[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+36>>2]}H[a+40>>2]=d;qa(b)}H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;qa(b)}return a|0}function Ha(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+8>>2];c=H[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ta(c,0,b)+b|0}H[a+4>>2]=c;return}a:{f=H[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>2>>>0<536870911?d>>>0>i>>>0?d:i:1073741823;if(d){if(d>>>0>=1073741824){break a}c=ra(d<<2)}b=b<<2;b=ta((h<<2)+c|0,0,b)+b|0;if((g|0)>0){sa(c,f,g)}H[a+8>>2]=(d<<2)+c;H[a+4>>2]=b;H[a>>2]=c;if(f){qa(f)}return}ua();X()}wa(1604);X()}function _a(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+8>>2];c=H[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=ta(c,0,b)+b|0}H[a+4>>2]=c;return}a:{f=H[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>3>>>0<268435455?d>>>0>i>>>0?d:i:536870911;if(d){if(d>>>0>=536870912){break a}c=ra(d<<3)}b=b<<3;b=ta((h<<3)+c|0,0,b)+b|0;if((g|0)>0){sa(c,f,g)}H[a+8>>2]=(d<<3)+c;H[a+4>>2]=b;H[a>>2]=c;if(f){qa(f)}return}ua();X()}wa(1604);X()}function hb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{c=H[a+4>>2];e=H[a>>2];f=c-e|0;b:{if(f>>>0>>0){g=b-f|0;d=H[a+8>>2];if(g>>>0<=d-c>>>0){if(g){c=ta(c,0,g)+g|0}H[a+4>>2]=c;return}if((b|0)<0){break a}c=0;d=d-e|0;h=d<<1;d=d>>>0<1073741823?b>>>0>h>>>0?b:h:2147483647;if(d){c=ra(d)}ta(c+f|0,0,g);if((f|0)>0){sa(c,e,f)}H[a+8>>2]=c+d;H[a+4>>2]=b+c;H[a>>2]=c;if(!e){break b}qa(e);return}if(b>>>0>=f>>>0){break b}H[a+4>>2]=b+e}return}ua();X()}function Uc(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=-1;f=d&2147483647;i=f;g=(f|0)==2147418112;a:{if(g&!c?a|b:g&(c|0)!=0|f>>>0>2147418112){break a}f=e&2147483647;g=(f|0)==2147418112;if(g?0:g&0|f>>>0>2147418112){break a}if(!(a|c|(f|i|b))){return 0}f=d&e;if((f|0)>0|(f|0)>=0){if(!c&(d|0)==(e|0)?0:(d|0)<(e|0)){break a}return(a|c|(d^e|b))!=0}if(!c&(d|0)==(e|0)?a|b:(c|0)!=0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}h=(a|c|(d^e|b))!=0}return h}function ig(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=da-16|0;da=d;e=H[a+4>>2];a:{if((e|0)==-1){break a}c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break a}va(b,H[b+4>>2],H[a+8>>2],H[a+12>>2]);c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break a}c=a+20|0;va(b,H[b+4>>2],c,c+4|0);c=H[b+20>>2];f=H[b+16>>2];F[d+15|0]=H[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}va(b,H[b+4>>2],d+15|0,d+16|0)}da=d+16|0;return(e|0)!=-1|0}function vi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=H[a+8>>2];b:{if((b|0)<0){break b}c=H[a+4>>2];e=H[c>>2];d=H[c+4>>2]-e>>2;c:{if(d>>>0>>0){Ha(c,b-d|0);f=H[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}H[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=H[a+4>>2];c=H[a>>2];e=H[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}H[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}xa();X()}function Td(a){Ba(a);Ba(a+32|0);Ba(a- -64|0);Ba(a+96|0);Ba(a+128|0);Ba(a+160|0);Ba(a+192|0);Ba(a+224|0);Ba(a+256|0);Ba(a+288|0);Ba(a+320|0);Ba(a+352|0);Ba(a+384|0);Ba(a+416|0);Ba(a+448|0);Ba(a+480|0);Ba(a+512|0);Ba(a+544|0);Ba(a+576|0);Ba(a+608|0);Ba(a+640|0);Ba(a+672|0);Ba(a+704|0);Ba(a+736|0);Ba(a+768|0);Ba(a+800|0);Ba(a+832|0);Ba(a+864|0);Ba(a+896|0);Ba(a+928|0);Ba(a+960|0);Ba(a+992|0);Ba(a+1024|0)}function fg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=da-96|0;da=e;f=Wf(e+40|0,c);gg(e,b,c);Vf(f,e);Oa(e+24|0,H[e+28>>2]);rb(e+12|0,H[e+16>>2]);Oa(e,H[e+4>>2]);Hd(a,f,d);if(!H[a>>2]){if(F[a+15|0]<0){qa(H[a+4>>2])}H[b+40>>2]=H[f+40>>2];H[b+44>>2]=H[f+44>>2];H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}H[f>>2]=10284;Oa(f+28|0,H[f+32>>2]);rb(f+16|0,H[f+20>>2]);Oa(f+4|0,H[f+8>>2]);da=e+96|0}function kj(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=10432;b=H[a+64>>2];H[a+64>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}return a|0}function Va(a,b,c){var d=0,e=0,f=0;if(!(I[a|0]&32)){a:{d=b;b=a;a=H[b+16>>2];b:{if(!a){if(be(b)){break b}a=H[b+16>>2]}f=H[b+20>>2];if(a-f>>>0>>0){fa[H[b+36>>2]](b,d,c)|0;break a}c:{if(H[b+80>>2]<0){break c}a=c;while(1){e=a;if(!a){break c}a=e-1|0;if(I[d+a|0]!=10){continue}break}if(fa[H[b+36>>2]](b,d,e)>>>0>>0){break b}d=d+e|0;c=c-e|0;f=H[b+20>>2]}sa(f,d,c);H[b+20>>2]=H[b+20>>2]+c}}}}function jj(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=10432;b=H[a+64>>2];H[a+64>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}qa(a)}function Pk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=da-16|0;da=d;f=ie(a,b);a:{if(!f){break a}c=H[a+36>>2];if((c|0)==H[a+40>>2]){break a}g=d+16|0;while(1){c=H[(e<<2)+c>>2];h=d,i=fa[H[H[c>>2]+32>>2]](c)|0,F[h+15|0]=i;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){va(b,H[b+4>>2],d+15|0,g)}e=e+1|0;c=H[a+36>>2];if(e>>>0>2]-c>>2>>>0){continue}break}}da=d+16|0;return f|0}function Qc(a,b,c){var d=0,e=0,f=0;f=da-16|0;da=f;d=I[a+11|0]>>>7|0?(H[a+8>>2]&2147483647)-1|0:10;if(I[a+11|0]>>>7|0){e=H[a+4>>2]}else{e=I[a+11|0]}a:{if(d-e>>>0>=c>>>0){if(!c){break a}if(I[a+11|0]>>>7|0){d=H[a>>2]}else{d=a}Eb(d+e|0,b,c);b=c+e|0;b:{if(I[a+11|0]>>>7|0){H[a+4>>2]=b;break b}F[a+11|0]=b}F[f+15|0]=0;F[b+d|0]=I[f+15|0];break a}Rc(a,d,(c+e|0)-d|0,e,e,0,c,b)}da=f+16|0}function Yg(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+36>>2];if((c|0)!=H[a+40>>2]){while(1){c=N(d,24)+c|0;fa[H[H[c>>2]+28>>2]](c,b)|0;d=d+1|0;c=H[a+36>>2];if(d>>>0<(H[a+40>>2]-c|0)/24>>>0){continue}break}}c=H[a+48>>2];if((c|0)!=H[a+52>>2]){d=0;while(1){c=H[(d<<2)+c>>2];Fa((c|0)>=0?c<<1:(c^-1)<<1|1,b);d=d+1|0;c=H[a+48>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}return 1}function Qf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=H[a+172>>2];c=H[a+176>>2]-d|0;e=(c|0)/136|0;a:{if(!c){break a}c=0;b:{c:{d:{if(H[d>>2]!=(b|0)){f=e>>>0>1?e:1;while(1){c=c+1|0;if((f|0)==(c|0)){break d}if(H[N(c,136)+d>>2]!=(b|0)){continue}break}b=c>>>0>>0}else{b=1}if(b){break c}break a}if(c>>>0>>0){break b}break a}d=(N(c,136)+d|0)+104|0}return d|0}return a+40|0}function Yc(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=pc(ra(96));md(g,b,d<<24>>24,f,c);b=Vc(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];sa(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,(N(d,h)<<2)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function Te(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=pc(ra(96));md(g,b,d<<24>>24,f,c);b=Vc(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];sa(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,(N(d,h)<<1)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function vc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=da+-64|0;da=d;e=fa[H[H[a>>2]+44>>2]](a,b)|0;a=fa[H[H[a>>2]+40>>2]](a,b)|0;f=tc(d);g=H[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=H[(a<<2)+14848>>2]}else{a=-1}a=N(a,e);nd(f,g,0,h,i,a,a>>31);a=yf(ra(96),f);ld(a,c);F[a+84|0]=1;H[a+72>>2]=H[a+68>>2];H[a+60>>2]=H[b+60>>2];da=d- -64|0;return a|0}function Bb(a,b,c){var d=0,e=0,f=0;d=da-16|0;da=d;F[d+15|0]=a&127;a:{if(!b&a>>>0>=128|b){F[d+15|0]=a|128;f=H[c+20>>2];e=0;if(!!H[c+16>>2]&(f|0)>=0|(f|0)>0){break a}va(c,H[c+4>>2],d+15|0,d+16|0);e=Bb((b&127)<<25|a>>>7,b>>>7|0,c);break a}b=H[c+16>>2];a=H[c+20>>2];if(!b&(a|0)<=0|(a|0)<0){va(c,H[c+4>>2],d+15|0,d+16|0)}e=!b&(a|0)<=0|(a|0)<0}a=e;da=d+16|0;return a}function ch(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(ub(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(!ub(a,H[b>>2],e)){break a}if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+20>>2]=c;H[b+32>>2]=d;H[b+40>>2]=H[b+40>>2]+1;if(!(H[b+36>>2]!=1|H[b+24>>2]!=2)){F[b+54|0]=1}H[b+44>>2]=4}}function Ue(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=pc(ra(96));md(g,b,d<<24>>24,f,c);b=Vc(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];sa(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,N(d,h)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function gd(a,b,c,d){var e=0;a:{e=H[a+20>>2];if(!!H[a+16>>2]&(e|0)>=0|(e|0)>0|(!b&(c|0)<=0|(c|0)<0)){break a}F[a+24|0]=d;b=b+7|0;c=b>>>0<7?c+1|0:c;e=b;b=c>>>3|0;c=(c&7)<<29|e>>>3;H[a+16>>2]=c;H[a+20>>2]=b;e=c;b=H[a+4>>2]-H[a>>2]|0;c=b+8|0;c=d?c:b;b=e+c|0;hb(a,b);d=H[a>>2];b=ra(8);H[b+4>>2]=0;H[b>>2]=c+d;c=H[a+12>>2];H[a+12>>2]=b;if(!c){break a}qa(c)}}function md(a,b,c,d,e){var f=0,g=0,h=0;f=ra(32);H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;g=H[a+64>>2];H[a+64>>2]=f;if(g){f=H[g>>2];if(f){H[g+4>>2]=f;qa(f)}qa(g);f=H[a+64>>2]}h=b;g=d-1|0;if(g>>>0<=10){b=H[(g<<2)+14848>>2]}else{b=-1}b=N(b,c);nd(a,h,f,c,d,b,b>>31);ld(a,e);F[a+84|0]=1;H[a+72>>2]=H[a+68>>2]}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=H[a+84>>2];f=H[e+4>>2];g=H[a+28>>2];d=H[a+20>>2]-g|0;d=d>>>0>f>>>0?f:d;if(d){sa(H[e>>2],g,d);H[e>>2]=d+H[e>>2];f=H[e+4>>2]-d|0;H[e+4>>2]=f}d=H[e>>2];f=c>>>0>f>>>0?f:c;if(f){sa(d,b,f);d=f+H[e>>2]|0;H[e>>2]=d;H[e+4>>2]=H[e+4>>2]-f}F[d|0]=0;b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;return c|0}function ee(a,b,c,d){F[a+53|0]=1;a:{if(H[a+4>>2]!=(c|0)){break a}F[a+52|0]=1;c=H[a+16>>2];b:{if(!c){H[a+36>>2]=1;H[a+24>>2]=d;H[a+16>>2]=b;if(H[a+48>>2]!=1){break a}if((d|0)==1){break b}break a}if((b|0)==(c|0)){c=H[a+24>>2];if((c|0)==2){H[a+24>>2]=d;c=d}if(H[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}H[a+36>>2]=H[a+36>>2]+1}F[a+54|0]=1}}function nc(a,b){var c=0,d=0,e=0,f=0;d=1;a:{if((b|0)==-1){break a}b=N(b,3);if((b|0)==-1){break a}d=-1;e=H[a>>2];a=e+(b<<2)|0;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){d=H[(c<<2)+e>>2]}a=H[a>>2];f=(a|0)==(d|0);b:{c:{if((b>>>0)%3|0){b=b-1|0;break c}b=b+2|0;c=-1;if((b|0)==-1){break b}}c=H[(b<<2)+e>>2]}d=f|(c|0)==(a|0)|(d|0)==(c|0)}return d}function hh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da+-64|0;da=e;d=1;a:{if(ub(a,b,0)){break a}d=0;if(!b){break a}b=ge(b,16452,16500);d=0;if(!b){break a}d=e+8|0;ta(d|4,0,52);H[e+56>>2]=1;H[e+20>>2]=-1;H[e+16>>2]=a;H[e+8>>2]=b;fa[H[H[b>>2]+28>>2]](b,d,H[c>>2],1);a=H[e+32>>2];if((a|0)==1){H[c>>2]=H[e+24>>2]}d=(a|0)==1}da=e- -64|0;return d|0}function Mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;H[a+32>>2]=c;H[a+28>>2]=b;a:{if(!(fa[H[H[a>>2]+52>>2]](a)|0)){break a}e=H[a+4>>2];if((e|0)==H[a+8>>2]){return 1}c=0;while(1){d=c<<2;f=H[d+H[a+36>>2]>>2];d=fa[H[H[f>>2]+8>>2]](f,b,H[d+e>>2])|0;if(!d){break a}c=c+1|0;e=H[a+4>>2];if(c>>>0>2]-e>>2>>>0){continue}break}}return d|0}function Fa(a,b){var c=0,d=0,e=0;c=da-16|0;da=c;F[c+15|0]=a&127;a:{if(a>>>0>=128){F[c+15|0]=a|128;d=H[b+20>>2];e=0;if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+15|0,c+16|0);e=Fa(a>>>7|0,b);break a}d=H[b+16>>2];a=H[b+20>>2];if(!d&(a|0)<=0|(a|0)<0){va(b,H[b+4>>2],c+15|0,c+16|0)}e=!d&(a|0)<=0|(a|0)<0}d=e;da=c+16|0;return d}function dj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=da-16|0;da=d;H[a+4>>2]=b;b=H[b+64>>2];e=H[b>>2];b=H[b+4>>2];F[d+15|0]=0;Ta(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=H[a+4>>2];e=H[b+56>>2];b=H[b+52>>2];F[d+14|0]=0;Ta(a+36|0,e-b>>2,d+14|0);b=H[c+12>>2];H[a+16>>2]=H[c+8>>2];H[a+20>>2]=b;b=H[c+4>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=b;da=d+16|0}function pe(a,b){var c=0,d=0,e=0;c=da-16|0;da=c;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=2216;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;d=ra(4);H[d>>2]=b;e=d+4|0;H[a+12>>2]=e;H[a+8>>2]=e;H[a+4>>2]=d;H[c+12>>2]=-1;Na(a+16|0,b+1|0,c+12|0);H[H[a+16>>2]+(b<<2)>>2]=(H[a+8>>2]-H[a+4>>2]>>2)-1;da=c+16|0}function Ai(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}return a|0}function Ne(a){H[a>>2]=0;H[a+4>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;F[a+24|0]=1;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+68>>2]=a}function jc(a){var b=0,c=0,d=0,e=0;while(1){b=a;a=b+1|0;c=F[b|0];if((c|0)==32|c-9>>>0<5){continue}break}a:{b:{c:{c=F[b|0];switch(c-43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=F[a|0];b=a}if(c-48>>>0<10){while(1){d=(N(d,10)-F[b|0]|0)+48|0;a=F[b+1|0];b=b+1|0;if(a-48>>>0<10){continue}break}}return e?d:0-d|0}function Ui(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=da-16|0;da=d;H[a+4>>2]=b;e=H[b>>2];b=H[b+4>>2];F[d+15|0]=0;Ta(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=H[a+4>>2];e=H[b+28>>2];b=H[b+24>>2];F[d+14|0]=0;Ta(a+36|0,e-b>>2,d+14|0);b=H[c+12>>2];H[a+16>>2]=H[c+8>>2];H[a+20>>2]=b;b=H[c+4>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=b;da=d+16|0}function jd(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}qa(a)}function xg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+8|0,c+12|0)}Aa(a+112|0,b);da=c+16|0;return 1}function mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+8|0,c+12|0)}Aa(a+96|0,b);da=c+16|0;return 1}function Lc(a){var b=0;b=1;a:{if((a|0)>=1024){b=8.98846567431158e307;if(a>>>0<2047){a=a-1023|0;break a}b=Z;a=(a>>>0<3069?a:3069)-2046|0;break a}if((a|0)>-1023){break a}b=2.004168360008973e-292;if(a>>>0>4294965304){a=a+969|0;break a}b=0;a=(a>>>0>4294964336?a:-2960)+1938|0}x(0,0);x(1,a+1023<<20);return b*+z()}function yk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+8|0,c+12|0)}da=c+16|0;return 1}function Zj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+8|0,c+12|0)}da=c+16|0;return 1}function yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;Be(a,b,c);d=H[a+96>>2];a=H[a+100>>2]-d|0;if(a){b=H[b>>2];a=(a|0)/12|0;e=a>>>0>1?a:1;c=0;while(1){a=N(c,12)+d|0;H[a>>2]=H[b+(H[a>>2]<<2)>>2];H[a+4>>2]=H[b+(H[a+4>>2]<<2)>>2];H[a+8>>2]=H[b+(H[a+8>>2]<<2)>>2];c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function Ca(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(H[a>>2]!=H[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=I[a|0];e=I[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function Se(a){var b=0,c=0,d=0;if(a){d=H[a+24>>2];if(d){c=H[a+28>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){pb(b+12|0,H[b+16>>2]);ob(b,H[b+4>>2]);qa(b)}if((d|0)!=(c|0)){continue}break}b=H[a+24>>2]}H[a+28>>2]=d;qa(b)}pb(a+12|0,H[a+16>>2]);ob(a,H[a+4>>2]);qa(a)}}function db(a,b){var c=0,d=0,e=0,f=0;d=da-16|0;da=d;a:{if(!b){b=0;break a}c=b>>31;e=c+b^c;c=Q(e);Wa(d,e,0,0,0,c+81|0);e=0+H[d+8>>2]|0;c=(H[d+12>>2]^65536)+(16414-c<<16)|0;c=e>>>0>>0?c+1|0:c;f=b&-2147483648|c;c=H[d+4>>2];b=H[d>>2]}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=e;H[a+12>>2]=f;da=d+16|0}function Si(a){a=a|0;var b=0;H[a+8>>2]=11452;H[a>>2]=11240;b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){H[a+84>>2]=b;qa(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;qa(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function wg(a){a=a|0;var b=0;H[a>>2]=5104;b=H[a+152>>2];if(b){H[a+156>>2]=b;qa(b)}b=H[a+112>>2];if(b){H[a+116>>2]=b;qa(b)}b=H[a+96>>2];if(b){qa(b)}b=H[a+84>>2];if(b){qa(b)}b=H[a+72>>2];if(b){qa(b)}b=H[a+60>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Ri(a){a=a|0;var b=0;H[a+8>>2]=11452;H[a>>2]=11240;b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){H[a+84>>2]=b;qa(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;qa(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function Fg(a){a=a|0;var b=0;H[a>>2]=3540;b=H[a+152>>2];if(b){H[a+156>>2]=b;qa(b)}b=H[a+112>>2];if(b){H[a+116>>2]=b;qa(b)}b=H[a+96>>2];if(b){qa(b)}b=H[a+84>>2];if(b){qa(b)}b=H[a+72>>2];if(b){qa(b)}b=H[a+60>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function tb(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!I[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=H[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=I[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function Wg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=H[c+8>>2];e=H[c+16>>2];g=H[c+12>>2];f=g;d=H[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=I[e+H[c>>2]|0];i=e+1|0;f=i?d:d+1|0;H[c+16>>2]=i;H[c+20>>2]=f;H[a+4>>2]=b}return e>>>0>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function ub(a,b,c){var d=0;if(!c){return H[a+4>>2]==H[b+4>>2]}if((a|0)==(b|0)){return 1}d=H[a+4>>2];a=I[d|0];c=H[b+4>>2];b=I[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=I[c+1|0];a=I[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function Fb(a){var b=0,c=0;c=H[a+8>>2];if((c|0)>=2){b=+(c|0);b=U(b*ya(b)-M[a>>3]);if(P(b)<0x8000000000000000){ea=P(b)>=1?~~(b>0?R(T(b*2.3283064365386963e-10),4294967295):U((b-+(~~b>>>0>>>0))*2.3283064365386963e-10))>>>0:0;return~~b>>>0}a=-2147483648}else{a=0}ea=a;return 0}function Ti(a){a=a|0;var b=0;H[a>>2]=11452;b=H[a+88>>2];if(b){H[a+92>>2]=b;qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;qa(b)}b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Lh(a){a=a|0;var b=0,c=0,d=0;b=ra(8);H[b+4>>2]=a;H[b>>2]=0;a:{b:{c:{if(!a){break c}c=ge(a,15032,14952);if(!c){break c}d=ra(56);Wf(d,c);a=H[b>>2];H[b>>2]=d;if(a){break b}break a}c=ra(56);Xf(c,a);a=H[b>>2];H[b>>2]=c;if(!a){break a}}fa[H[H[a>>2]+4>>2]](a)}return b|0}function Ob(a,b){var c=0,d=0,e=0,f=0;c=da-16|0;da=c;a:{if(!b){b=0;break a}d=b;b=Q(b);Wa(c,d,0,0,0,b+81|0);e=16414-b<<16;b=0;d=b+H[c+8>>2]|0;e=e+(H[c+12>>2]^65536)|0;e=b>>>0>d>>>0?e+1|0:e;f=d;d=H[c>>2];b=H[c+4>>2]}H[a>>2]=d;H[a+4>>2]=b;H[a+8>>2]=f;H[a+12>>2]=e;da=c+16|0}function Oi(a){a=a|0;var b=0;H[a>>2]=11452;b=H[a+88>>2];if(b){H[a+92>>2]=b;qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;qa(b)}b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function Pb(a,b,c){var d=0,e=0,f=0;a:{if(!b){d=a;break a}while(1){d=Tk(a,b,10,0);f=ea;e=Rk(d,f,10,0);c=c-1|0;F[c|0]=a-e|48;e=b>>>0>9;a=d;b=f;if(e){continue}break}}if(d){while(1){c=c-1|0;a=(d>>>0)/10|0;F[c|0]=d-N(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function yj(a){a=a|0;var b=0;H[a+40>>2]=1140;H[a>>2]=10016;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ra(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function hg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=da-96|0;da=e;f=Xf(e+40|0,c);gg(e,b,c);Vf(f,e);Oa(e+24|0,H[e+28>>2]);rb(e+12|0,H[e+16>>2]);Oa(e,H[e+4>>2]);Hd(a,f,d);H[f>>2]=10284;Oa(f+28|0,H[f+32>>2]);rb(f+16|0,H[f+20>>2]);Oa(f+4|0,H[f+8>>2]);da=e+96|0}function ne(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=da-16|0;da=f;d=da-16|0;da=d;b=b-a>>2;while(1){if(b){H[d+12>>2]=a;e=b>>>1|0;H[d+12>>2]=H[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=H[d+12>>2];g=K[e>>2]>2];b=g?h:b;a=g?e+4|0:a;continue}break}da=d+16|0;da=f+16|0;return a}function Yb(a){var b=0;b=H[a+84>>2];if(b){H[a+88>>2]=b;qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;qa(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;qa(b)}b=H[a+28>>2];if(b){H[a+32>>2]=b;qa(b)}b=H[a+12>>2];if(b){qa(b)}a=H[a>>2];if(a){qa(a)}}function xj(a){a=a|0;var b=0;H[a+40>>2]=1140;H[a>>2]=10016;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ra(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}qa(a)}function Zb(a,b){if(b){a=H[b+76>>2];if(a){H[b+80>>2]=a;qa(a)}a=H[b- -64>>2];if(a){H[b+68>>2]=a;qa(a)}a=H[b+48>>2];if(a){H[b+52>>2]=a;qa(a)}a=H[b+24>>2];if(a){H[b+28>>2]=a;qa(a)}a=H[b+12>>2];if(a){H[b+16>>2]=a;qa(a)}a=H[b>>2];if(a){H[b+4>>2]=a;qa(a)}qa(b)}}function La(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<=10){d=a;F[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=ra(e);H[a>>2]=d;H[a+8>>2]=e|-2147483648;H[a+4>>2]=c}Eb(d,b,c+1|0);return}lb();X()}function Ok(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+72>>2];a:{if(!c){break a}H[c+4>>2]=a+60;if(!(fa[H[H[c>>2]+12>>2]](c)|0)){break a}if(!(fa[H[H[a>>2]+40>>2]](a)|0)){break a}if(!(fa[H[H[a>>2]+44>>2]](a,b)|0)){break a}d=fa[H[H[a>>2]+48>>2]](a,b)|0}return d|0}function zj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da-16|0;da=e;d=a+40|0;c=vc(d,H[a+8>>2],H[b+4>>2]-H[b>>2]>>2);d=Ld(d,H[a+8>>2],b,c);a:{if(d){b=H[a+32>>2];H[a+32>>2]=c;if(!b){break a}Ra(b);break a}H[e+8>>2]=0;if(!c){break a}Ra(c)}da=e+16|0;return d|0}function $j(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da-16|0;da=e;d=a+40|0;c=vc(d,H[a+8>>2],H[b+4>>2]-H[b>>2]>>2);d=Of(d,H[a+8>>2],b,c);a:{if(d){b=H[a+32>>2];H[a+32>>2]=c;if(!b){break a}Ra(b);break a}H[e+8>>2]=0;if(!c){break a}Ra(c)}da=e+16|0;return d|0}function nd(a,b,c,d,e,f,g){var h=0;H[a>>2]=c;if(c){h=H[c+20>>2];H[a+8>>2]=H[c+16>>2];H[a+12>>2]=h;h=H[c+28>>2];H[a+16>>2]=H[c+24>>2];H[a+20>>2]=h}H[a+56>>2]=b;H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=f;H[a+44>>2]=g;F[a+32|0]=0;H[a+28>>2]=e;F[a+24|0]=d}function we(a,b){var c=0,d=0,e=0;A(+a);d=v(1)|0;e=v(0)|0;c=d>>>20&2047;if((c|0)!=2047){if(!c){if(a==0){c=0}else{a=we(a*0x10000000000000000,b);c=H[b>>2]+-64|0}H[b>>2]=c;return a}H[b>>2]=c-1022;x(0,e|0);x(1,d&-2146435073|1071644672);a=+z()}return a}function Mk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=H[a+36>>2];if((c|0)==H[a+40>>2]){return 1}f=a+60|0;while(1){c=H[(d<<2)+c>>2];e=fa[H[H[c>>2]+20>>2]](c,f,b)|0;if(e){d=d+1|0;c=H[a+36>>2];if(d>>>0>2]-c>>2>>>0){continue}}break}return e|0}function Rf(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+172>>2];a=H[a+176>>2]-c|0;if(a){a=(a|0)/136|0;d=a>>>0>1?a:1;a=0;while(1){if(H[N(a,136)+c>>2]==(b|0)){a=N(a,136)+c|0;return(I[a+100|0]?a+4|0:0)|0}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return 0}function Od(a){H[a+32>>2]=0;H[a+12>>2]=-1;H[a+4>>2]=0;H[a+8>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=2420;F[a+21|0]=0;F[a+22|0]=0;F[a+23|0]=0;F[a+24|0]=0;F[a+25|0]=0;F[a+26|0]=0;F[a+27|0]=0;F[a+28|0]=0;H[a+36>>2]=0;H[a>>2]=2652;return a}function Nk(a){a=a|0;var b=0,c=0,d=0,e=0;b=H[a+36>>2];if((b|0)==H[a+40>>2]){return 1}e=a+60|0;while(1){b=H[(c<<2)+b>>2];d=fa[H[H[b>>2]+16>>2]](b,e)|0;if(d){c=c+1|0;b=H[a+36>>2];if(c>>>0>2]-b>>2>>>0){continue}}break}return d|0}function ue(a){var b=0,c=0,d=0;if(F[H[a>>2]]-48>>>0>=10){return 0}while(1){d=H[a>>2];c=-1;if(b>>>0<=214748364){c=F[d|0]-48|0;b=N(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}H[a>>2]=d+1;b=c;if(F[d+1|0]-48>>>0<10){continue}break}return b}function qf(a,b){a=a|0;b=b|0;var c=0,d=0;c=da-16|0;da=c;H[c+12>>2]=H[H[b+4>>2]+80>>2];b=H[b+44>>2];d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){va(b,H[b+4>>2],c+12|0,c+16|0)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=c+16|0}function Xj(a){a=a|0;var b=0;H[a>>2]=7020;b=H[a+136>>2];if(b){H[a+140>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){qa(b)}b=H[a+68>>2];if(b){qa(b)}b=H[a+56>>2];if(b){qa(b)}b=H[a+44>>2];if(b){qa(b)}return a|0}function Mj(a){a=a|0;var b=0;H[a>>2]=8668;b=H[a+136>>2];if(b){H[a+140>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){qa(b)}b=H[a+68>>2];if(b){qa(b)}b=H[a+56>>2];if(b){qa(b)}b=H[a+44>>2];if(b){qa(b)}return a|0}function Ra(a){a=a|0;var b=0,c=0;if(a){b=H[a+88>>2];H[a+88>>2]=0;if(b){c=H[b+8>>2];if(c){H[b+12>>2]=c;qa(c)}qa(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;qa(b)}b=H[a+64>>2];H[a+64>>2]=0;if(b){c=H[b>>2];if(c){H[b+4>>2]=c;qa(c)}qa(b)}qa(a)}}function Lk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=H[a+36>>2];if((c|0)==H[a+40>>2]){return 1}while(1){c=H[(d<<2)+c>>2];e=fa[H[H[c>>2]+24>>2]](c,b)|0;if(e){d=d+1|0;c=H[a+36>>2];if(d>>>0>2]-c>>2>>>0){continue}}break}return e|0}function Wj(a){a=a|0;var b=0;H[a>>2]=7020;b=H[a+136>>2];if(b){H[a+140>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){qa(b)}b=H[a+68>>2];if(b){qa(b)}b=H[a+56>>2];if(b){qa(b)}b=H[a+44>>2];if(b){qa(b)}qa(a)}function Lj(a){a=a|0;var b=0;H[a>>2]=8668;b=H[a+136>>2];if(b){H[a+140>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){qa(b)}b=H[a+68>>2];if(b){qa(b)}b=H[a+56>>2];if(b){qa(b)}b=H[a+44>>2];if(b){qa(b)}qa(a)}function si(a){a=a|0;var b=0,c=0,d=0;b=H[a+32>>2];d=H[a+36>>2];if((b|0)==(d|0)){return 1}while(1){c=H[H[a+8>>2]+(H[b>>2]<<2)>>2];c=fa[H[H[c>>2]+20>>2]](c,H[a+44>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function bc(a,b){var c=0,d=0,e=0;c=tb(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=ra(e);H[a+8>>2]=e|-2147483648;H[a>>2]=d;H[a+4>>2]=c;break b}F[a+11|0]=c;d=a;if(!c){break a}}sa(d,b,c)}F[c+d|0]=0;return a}lb();X()}function Sk(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=Tk(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;ea=(g^ea)-((a>>>0>>0)+g|0)|0;return b}function Pc(a,b,c){var d=0,e=0,f=0;e=da-16|0;da=e;d=H[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=H[a>>2];H[a+4>>2]=c;Eb(d,b,c);F[e+15|0]=0;F[c+d|0]=I[e+15|0];break a}f=a;a=H[a+4>>2];Rc(f,d-1|0,(c-d|0)+1|0,a,0,a,c,b)}da=e+16|0}function ae(a,b){a=a|0;b=b|0;var c=0,d=0;c=da-16|0;da=c;a=H[a+4>>2];a:{if((a|0)==-1){break a}F[c+15|0]=a;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}va(b,H[b+4>>2],c+15|0,c+16|0)}da=c+16|0;return(a|0)!=-1|0}function Rk(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=N(e,f);g=c&65535;h=a&65535;i=N(g,h);f=(i>>>16|0)+N(f,g)|0;e=(f&65535)+N(e,h)|0;ea=(N(b,c)+j|0)+N(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function za(a){var b=0,c=0;c=da-16|0;da=c;H[c+8>>2]=0;H[c+12>>2]=0;Kd(a,c+8|0);H[a+24>>2]=0;H[a+28>>2]=0;b=H[a+12>>2];H[a+16>>2]=b;if(b){H[a+16>>2]=b;qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=c+16|0;return a}function fe(a,b,c){var d=0;d=H[a+16>>2];if(!d){H[a+36>>2]=1;H[a+24>>2]=c;H[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(H[a+24>>2]!=2){break a}H[a+24>>2]=c;return}F[a+54|0]=1;H[a+24>>2]=2;H[a+36>>2]=H[a+36>>2]+1}}function Hj(a,b){a=a|0;b=b|0;var c=0,d=0;H[b>>2]=2;c=H[b+8>>2];d=H[b+12>>2]-c|0;if(d>>>0<=4294967291){oc(b+8|0,d+4|0);c=H[b+8>>2]}b=c+d|0;a=H[a+4>>2];F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24}function wa(a){var b=0,c=0,d=0,e=0,f=0;b=ca(8)|0;H[b>>2]=16256;H[b>>2]=16300;c=tb(a);d=ra(c+13|0);H[d+8>>2]=0;H[d+4>>2]=c;H[d>>2]=c;e=b,f=sa(d+12|0,a,c+1|0),H[e+4>>2]=f;H[b>>2]=16348;ba(b|0,16380,13);X()}function Xa(a,b,c,d,e){var f=0;f=da-256|0;da=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;ta(f,b&255,d?c:256);if(!d){while(1){Va(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}Va(a,f,c)}da=f+256|0}function Ek(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[a+16>>2];c=0;a:{if(H[a+20>>2]-d>>2<=(b|0)){break a}b=H[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=H[H[a+36>>2]+(b<<2)>>2];b=H[a+32>>2];c=b?b:H[a+8>>2]}return c|0}function Hk(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[a+16>>2];c=0;a:{if(H[a+20>>2]-d>>2<=(b|0)){break a}b=H[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=H[H[a+36>>2]+(b<<2)>>2];c=H[a+20>>2]-H[a+16>>2]>>2}return c|0}function Gk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=-1;e=H[a+16>>2];a:{if(H[a+20>>2]-e>>2<=(b|0)){break a}b=H[(b<<2)+e>>2];if((b|0)<0){break a}d=H[H[H[H[a+36>>2]+(b<<2)>>2]+16>>2]+(c<<2)>>2]}return d|0}function nf(a,b){var c=O(0),d=0;b=sb(a,b);if((b|0)!=(a+4|0)){a=da-16|0;da=a;xe(a,F[b+39|0]<0?H[b+28>>2]:b+28|0,0,1);d=qe(H[a>>2],H[a+4>>2],H[a+8>>2],H[a+12>>2]);da=a+16|0;c=O(d)}else{c=O(1)}return c}function Ig(a){a=a|0;var b=0;H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ra(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function Wb(a){H[a+52>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=12484;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;return a}function Hg(a){a=a|0;var b=0;H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ra(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}qa(a)}function pc(a){tc(a);H[a+64>>2]=0;H[a+68>>2]=0;H[a+88>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;F[a+77|0]=0;F[a+78|0]=0;F[a+79|0]=0;F[a+80|0]=0;F[a+81|0]=0;F[a+82|0]=0;F[a+83|0]=0;F[a+84|0]=0;return a}function tc(a){H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+28>>2]=9;F[a+24|0]=1;H[a+56>>2]=-1;H[a+60>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;return a}function be(a){var b=0;b=H[a+72>>2];H[a+72>>2]=b-1|b;b=H[a>>2];if(b&8){H[a>>2]=b|32;return-1}H[a+4>>2]=0;H[a+8>>2]=0;b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;H[a+16>>2]=b+H[a+48>>2];return 0}function Tc(a,b,c,d,e,f,g,h,i){var j=0;j=da-16|0;da=j;cb(j,b,c,d,e,f,g,h,i^-2147483648);d=H[j>>2];c=H[j+4>>2];b=H[j+12>>2];H[a+8>>2]=H[j+8>>2];H[a+12>>2]=b;H[a>>2]=d;H[a+4>>2]=c;da=j+16|0}function je(a,b){var c=0;if(b>>>0<=99){return ke(a,b)}if(b>>>0<=999){c=(b>>>0)/100|0;F[a|0]=c+48;a=a+1|0;b=J[(b-N(c,100)<<1)+16e3>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}return ic(a,b)}function uh(a,b){a=a|0;b=b|0;var c=0,d=0;De(a,b);a:{if((b|0)<0){break a}c=H[a+88>>2];d=H[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){Ia(b,d,c)}H[a+88>>2]=b+c}}function ad(a,b,c){a=a|0;b=b|0;c=c|0;a=0;a:{if(H[b+4>>2]|!b){break a}a=ra(36);Wc(a,c);H[a+32>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;c=H[b+4>>2];H[b+4>>2]=a;a=1;if(!c){break a}Se(c)}return a|0}function Hc(a,b,c){pe(a,c);H[a+36>>2]=0;H[a+40>>2]=0;H[a>>2]=2524;H[a+44>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+72>>2]=b;return a}function Oc(a,b,c){var d=0,e=0;d=da-16|0;da=d;a:{if(c>>>0<=10){F[a+11|0]=c;Eb(a,b,c);F[d+15|0]=0;F[a+c|0]=I[d+15|0];break a}e=a;a=I[a+11|0];Rc(e,10,c-10|0,a,0,a,c,b)}da=d+16|0}function Ki(a){a=a|0;var b=0;H[a+8>>2]=11872;H[a>>2]=11708;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function Jb(a){var b=0,c=0;b=H[4710];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ga()<<16>>>0){if(!(aa(a|0)|0)){break a}}H[4710]=a;return b}H[4736]=48;return-1}function Fi(a){a=a|0;var b=0;H[a+8>>2]=10904;H[a>>2]=12e3;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11156;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function Ji(a){a=a|0;var b=0;H[a+8>>2]=11872;H[a>>2]=11708;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function Ei(a){a=a|0;var b=0;H[a+8>>2]=10904;H[a>>2]=12e3;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11156;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function pb(a,b){if(b){pb(a,H[b>>2]);pb(a,H[b+4>>2]);a=H[b+28>>2];H[b+28>>2]=0;if(a){pb(a+12|0,H[a+16>>2]);ob(a,H[a+4>>2]);qa(a)}if(F[b+27|0]<0){qa(H[b+16>>2])}qa(b)}}function $g(a,b){a=a|0;b=b|0;var c=0;a:{if(!(fa[H[H[a>>2]+40>>2]](a)|0)){break a}if(!(fa[H[H[a>>2]+44>>2]](a,b)|0)){break a}c=fa[H[H[a>>2]+48>>2]](a,b)|0}return c|0}function ic(a,b){var c=0,d=0;c=(b>>>0)/100|0;d=J[(c<<1)+16e3>>1];F[a|0]=d;F[a+1|0]=d>>>8;a=a+2|0;b=J[(b-N(c,100)<<1)+16e3>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}function lj(a){a=a|0;var b=0;a:{b=H[a+64>>2];if(!b){break a}b=fa[H[H[b>>2]+32>>2]](b)|0;if(!b){break a}H[a+60>>2]=((H[b+4>>2]-H[b>>2]>>2>>>0)/3|0)-H[b+40>>2]}}function Qk(a,b){a=a|0;b=b|0;var c=0;b=H[b+88>>2];if(!(!b|H[b>>2]!=2)){c=a;a=H[b+8>>2];H[c+4>>2]=I[a|0]|I[a+1|0]<<8|(I[a+2|0]<<16|I[a+3|0]<<24);c=1}return c|0}function cj(a){a=a|0;var b=0;H[a>>2]=10904;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11156;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Li(a){a=a|0;var b=0;H[a>>2]=11872;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function mf(a,b){var c=0;a:{c=a+4|0;a=sb(a,b);if((c|0)==(a|0)){break a}a=jc(F[a+39|0]<0?H[a+28>>2]:a+28|0);if((a|0)==-1){break a}return(a|0)!=0}return 0}function Xi(a){a=a|0;var b=0;H[a>>2]=10904;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11156;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function Qb(a,b,c){var d=0;d=a+4|0;a=sb(a,b);a:{if((d|0)==(a|0)){break a}a=jc(F[a+39|0]<0?H[a+28>>2]:a+28|0);if((a|0)==-1){break a}c=(a|0)!=0}return c}function Gi(a){a=a|0;var b=0;H[a>>2]=11872;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function bh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(ub(a,H[b+8>>2],f)){ee(b,c,d,e);return}a=H[a+8>>2];fa[H[H[a>>2]+20>>2]](a,b,c,d,e,f)}function zg(a){a=a|0;var b=0;a:{if(!H[a- -64>>2]|!H[a+68>>2]|(!H[a+44>>2]|!H[a+48>>2])){break a}if(!H[a+52>>2]){break a}b=H[a+56>>2]!=0}return b|0}function og(a){a=a|0;var b=0;a:{if(!H[a+48>>2]|!H[a+52>>2]|(!H[a+28>>2]|!H[a+32>>2])){break a}if(!H[a+36>>2]){break a}b=H[a+40>>2]!=0}return b|0}function hi(){var a=0;a=ra(108);He(a);H[a+84>>2]=0;H[a+88>>2]=0;H[a>>2]=14908;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;return a|0}function Ub(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=N(b,12)+a|0;a=H[b+20>>2];if((H[b+24>>2]-a|0)<=0){break a}c=H[a>>2]}return c}function Ge(a){var b=0,c=0;b=H[a+20>>2];a:{if((H[a+24>>2]-b|0)<=0){break a}b=H[b>>2];if((b|0)==-1){break a}c=H[H[a+8>>2]+(b<<2)>>2]}return c}function xh(a){a=a|0;var b=0;H[a>>2]=14908;b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+84>>2];if(b){H[a+88>>2]=b;qa(b)}mc(a);return a|0}function oh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b;b=H[b>>2]+7&-8;H[c>>2]=b+16;d=a,e=qe(H[b>>2],H[b+4>>2],H[b+8>>2],H[b+12>>2]),M[d>>3]=e}function Ba(a){var b=0;b=da-16|0;da=b;H[b+8>>2]=0;H[b+12>>2]=0;Kd(a,b+8|0);H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=H[a+12>>2];da=b+16|0}function wh(a){a=a|0;var b=0;H[a>>2]=14908;b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+84>>2];if(b){H[a+88>>2]=b;qa(b)}mc(a);qa(a)}function tk(a){a=a|0;var b=0;H[a>>2]=3788;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function ob(a,b){if(b){ob(a,H[b>>2]);ob(a,H[b+4>>2]);a=H[b+28>>2];if(a){H[b+32>>2]=a;qa(a)}if(F[b+27|0]<0){qa(H[b+16>>2])}qa(b)}}function jk(a){a=a|0;var b=0;H[a>>2]=5340;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Og(a){a=a|0;var b=0;H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ra(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function fh(a){a=a|0;var b=0;H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;qa(b)}return a|0}function ei(){var a=0,b=0;a=ra(24);H[a+4>>2]=0;H[a+8>>2]=0;b=a+16|0;H[b>>2]=0;H[b+4>>2]=0;H[a>>2]=a+4;H[a+12>>2]=b;return a|0}function eh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(ub(a,H[b+8>>2],0)){fe(b,c,d);return}a=H[a+8>>2];fa[H[H[a>>2]+28>>2]](a,b,c,d)}function sk(a){a=a|0;var b=0;H[a>>2]=3788;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function hk(a){a=a|0;var b=0;H[a>>2]=5340;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function Ng(a){a=a|0;var b=0;H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Ra(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}qa(a)}function ra(a){var b=0;a=a?a:1;a:{while(1){b=de(a);if(b){break a}b=H[4779];if(b){fa[b|0]();continue}break}_();X()}return b}function Oa(a,b){if(b){Oa(a,H[b>>2]);Oa(a,H[b+4>>2]);if(F[b+39|0]<0){qa(H[b+28>>2])}if(F[b+27|0]<0){qa(H[b+16>>2])}qa(b)}}function Mc(a){a=a|0;var b=0,c=0;H[a>>2]=16300;b=H[a+4>>2]-12|0;c=H[b+8>>2]-1|0;H[b+8>>2]=c;if((c|0)<0){qa(b)}return a|0}function Ac(a,b){a=a|0;b=b|0;var c=0;a:{switch(b|0){case 1:b=1;case 0:H[a+28>>2]=b;c=1;break;default:break a}}return c|0}function pg(a,b,c,d,e){var f=0;f=b-1|0;if(f>>>0<=29){H[a+4>>2]=b;eb(a+8|0,c,(d<<2)+c|0);L[a+20>>2]=e}return f>>>0<30}function pk(a){a=a|0;var b=0;H[a>>2]=4024;za(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function fk(a){a=a|0;var b=0;H[a>>2]=5564;za(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Xf(a,b){H[a>>2]=10284;Jd(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=0;H[a+48>>2]=b;H[a>>2]=10380;return a}function Wf(a,b){H[a>>2]=10284;Jd(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=b;H[a+48>>2]=b;H[a>>2]=10380;return a}function Ug(a,b,c){a=a|0;b=b|0;c=c|0;H[a+4>>2]=b;b=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];H[a+12>>2]=c;H[a+8>>2]=b;return 1}function Ae(a,b,c,d,e,f,g,h,i){H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e&65535|(i>>>16&32768|e>>>16&32767)<<16}function sg(a){a=a|0;var b=0;if(!(!H[a+44>>2]|!H[a+28>>2]|(!H[a+32>>2]|!H[a+36>>2]))){b=H[a+40>>2]!=0}return b|0}function Dg(a){a=a|0;var b=0;if(!(!H[a+60>>2]|!H[a+44>>2]|(!H[a+48>>2]|!H[a+52>>2]))){b=H[a+56>>2]!=0}return b|0}function ke(a,b){if(b>>>0<=9){F[a|0]=b+48;return a+1|0}b=J[(b<<1)+16e3>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}function Mh(a){a=a|0;if(a){H[a>>2]=10360;Oa(a+28|0,H[a+32>>2]);$b(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);qa(a)}}function ok(a){a=a|0;var b=0;H[a>>2]=4024;za(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function ek(a){a=a|0;var b=0;H[a>>2]=5564;za(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function Hb(a,b){var c=0,d=0;if(!(!a|!b|(a|0)==(b|0))){c=+(b>>>0)/+(a>>>0);d=1-c;c=-(c*ya(c)+d*ya(d))}return c}function wj(a){a=a|0;H[a>>2]=10284;Oa(a+28|0,H[a+32>>2]);rb(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);return a|0}function uj(a){a=a|0;H[a>>2]=10360;Oa(a+28|0,H[a+32>>2]);$b(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);return a|0}function of(a,b){var c=0;c=a+4|0;a=sb(a,b);if((c|0)==(a|0)){return-1}return jc(F[a+39|0]<0?H[a+28>>2]:a+28|0)}function oc(a,b){var c=0,d=0;hb(a,b);b=H[a+28>>2];c=b;d=b+1|0;b=H[a+24>>2]+1|0;H[a+24>>2]=b;H[a+28>>2]=b?c:d}function gb(a,b,c){var d=0;d=a+4|0;a=sb(a,b);if((d|0)!=(a|0)){c=jc(F[a+39|0]<0?H[a+28>>2]:a+28|0)}return c}function Vh(){var a=0;a=ra(48);H[a>>2]=10360;Jd(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a>>2]=10144;return a|0}function ag(a){a=a|0;H[a>>2]=10360;Oa(a+28|0,H[a+32>>2]);$b(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);qa(a)}function $f(a){a=a|0;H[a>>2]=10284;Oa(a+28|0,H[a+32>>2]);rb(a+16|0,H[a+20>>2]);Oa(a+4|0,H[a+8>>2]);qa(a)}function Wi(a){a=a|0;var b=0;H[a>>2]=11156;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Ni(a){a=a|0;var b=0;H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Vc(a,b){fa[H[H[a>>2]+8>>2]](a,H[a+12>>2]-H[a+8>>2]>>2,b);return(H[a+12>>2]-H[a+8>>2]>>2)-1|0}function xc(a){a=a|0;var b=0;if(!(!H[a+36>>2]|(!H[a+28>>2]|!H[a+32>>2]))){b=H[a+40>>2]!=0}return b|0}function Gc(a){a=a|0;var b=0;if(!(!H[a+52>>2]|(!H[a+44>>2]|!H[a+48>>2]))){b=H[a+56>>2]!=0}return b|0}function Vi(a){a=a|0;var b=0;H[a>>2]=11156;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function Mi(a){a=a|0;var b=0;H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function yg(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a- -64>>2]=b;c=1}return c|0}function yb(a){var b=0;H[a+12>>2]=0;H[a+16>>2]=0;b=H[a>>2];H[a+4>>2]=b;if(b){H[a+4>>2]=b;qa(b)}}function rg(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+44>>2]=b;c=1}return c|0}function ng(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+48>>2]=b;c=1}return c|0}function ah(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(ub(a,H[b+8>>2],f)){ee(b,c,d,e)}}function Cg(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+60>>2]=b;c=1}return c|0}function le(a){var b=0;b=a;a=0;while(1){if((a|0)!=3){H[(a<<2)+b>>2]=0;a=a+1|0;continue}break}}function zk(a){a=a|0;var b=0;H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Ch(a){a=a|0;var b=0;if(a){b=H[a>>2];H[a>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}qa(a)}}function tj(a){a=a|0;var b=0;H[a>>2]=1140;b=H[a+8>>2];if(b){H[a+12>>2]=b;qa(b)}return a|0}function xi(a){a=a|0;var b=0;b=a;a=H[a+56>>2];H[b+60>>2]=(H[a+100>>2]-H[a+96>>2]|0)/12}function df(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Ue(b,c,d,e,f,1)|0}function cf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Ue(b,c,d,e,f,2)|0}function cd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Yc(b,c,d,e,f,9)|0}function bd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Yc(b,c,d,e,f,5)|0}function af(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Te(b,c,d,e,f,3)|0}function _e(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Yc(b,c,d,e,f,6)|0}function Md(a){a=a|0;var b=0;H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function $e(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Te(b,c,d,e,f,4)|0}function sj(a){a=a|0;var b=0;H[a>>2]=1140;b=H[a+8>>2];if(b){H[a+12>>2]=b;qa(b)}qa(a)}function Ih(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=O(f);cg(H[a>>2],b,c,d,e,f)}function rb(a,b){if(b){rb(a,H[b>>2]);rb(a,H[b+4>>2]);Oa(b+20|0,H[b+24>>2]);qa(b)}}function $b(a,b){if(b){$b(a,H[b>>2]);$b(a,H[b+4>>2]);Oa(b+20|0,H[b+24>>2]);qa(b)}}function nj(a,b){a=a|0;b=b|0;var c=0;c=a;a=H[b+64>>2];fa[H[H[a>>2]+28>>2]](c,a)}function Jj(a){a=a|0;var b=0;H[a>>2]=8928;b=H[a+60>>2];if(b){qa(b)}return a|0} -function gh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(ub(a,H[b+8>>2],0)){fe(b,c,d)}}function Uk(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function Tj(a){a=a|0;var b=0;H[a>>2]=7292;b=H[a+60>>2];if(b){qa(b)}return a|0}function Sh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=O(f);cg(a,b,c,d,e,f)}function pj(a,b){a=a|0;b=b|0;a=H[a+64>>2];return fa[H[H[a>>2]+20>>2]](a,b)|0}function oj(a,b){a=a|0;b=b|0;a=H[a+64>>2];return fa[H[H[a>>2]+24>>2]](a,b)|0}function hj(a,b){a=a|0;b=b|0;a=H[a+64>>2];return fa[H[H[a>>2]+12>>2]](a,b)|0}function gj(a,b){a=a|0;b=b|0;a=H[a+64>>2];return fa[H[H[a>>2]+16>>2]](a,b)|0}function Bf(a,b){a=a|0;b=b|0;return H[H[a+28>>2]+(b>>>3&536870908)>>2]>>>b&1}function ri(a,b){a=a|0;b=b|0;H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}function ci(){var a=0;a=ra(12);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;return a|0}function $h(a){a=a|0;var b=0;if(a){b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}qa(a)}}function Vk(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function Sg(a,b,c){a=a|0;b=b|0;c=c|0;return fa[H[H[a>>2]+44>>2]](a,b,c)|0}function Sj(a){a=a|0;var b=0;H[a>>2]=7292;b=H[a+60>>2];if(b){qa(b)}qa(a)}function Ij(a){a=a|0;var b=0;H[a>>2]=8928;b=H[a+60>>2];if(b){qa(b)}qa(a)}function wi(a,b){a=a|0;b=b|0;F[b+84|0]=1;H[b+72>>2]=H[b+68>>2];return 1}function nh(a,b,c){a=a|0;b=b|0;c=c|0;H[a+32>>2]=c;H[a+28>>2]=b;return 1}function di(a){a=a|0;if(a){pb(a+12|0,H[a+16>>2]);ob(a,H[a+4>>2]);qa(a)}}function ij(a){a=a|0;a=H[a+64>>2];return fa[H[H[a>>2]+32>>2]](a)|0}function Tg(a,b){a=a|0;b=b|0;H[a+12>>2]=-1;H[a+8>>2]=b;return 1}function tf(a){Wb(a);H[a+56>>2]=0;H[a+60>>2]=0;H[a>>2]=12180}function gi(a){a=a|0;return(H[a+100>>2]-H[a+96>>2]|0)/12|0}function Qj(a){a=a|0;H[a>>2]=7552;za(a+96|0);return a|0}function Fj(a){a=a|0;H[a>>2]=9176;za(a+96|0);return a|0}function Wk(a){if(a){return 31-Q(a-1^a)|0}return 32} -function Jh(a,b,c){a=a|0;b=b|0;c=c|0;dg(H[a>>2],b,c)}function Hh(a,b,c){a=a|0;b=b|0;c=c|0;eg(H[a>>2],b,c)}function He(a){H[a>>2]=14980;ta(a+4|0,0,80);return a}function yi(a){a=a|0;H[a+52>>2]=H[H[a+56>>2]+80>>2]}function jf(a){a=a|0;return H[a+12>>2]-H[a+8>>2]>>2}function pf(a){a=a|0;H[a+52>>2]=H[H[a+4>>2]+80>>2]}function ff(a){a=a|0;if(a){fa[H[H[a>>2]+4>>2]](a)}}function bi(a,b){a=a|0;b=b|0;return F[H[a>>2]+b|0]}function ak(a,b){a=a|0;b=b|0;return ae(a+40|0,b)|0}function Pj(a){a=a|0;H[a>>2]=7552;za(a+96|0);qa(a)}function Ej(a){a=a|0;H[a>>2]=9176;za(a+96|0);qa(a)}function Aj(a,b){a=a|0;b=b|0;return ig(a+40|0,b)|0}function ai(a){a=a|0;return H[a+4>>2]-H[a>>2]|0}function Th(a,b,c){a=a|0;b=b|0;c=c|0;dg(a,b,c)}function Rh(a,b,c){a=a|0;b=b|0;c=c|0;eg(a,b,c)}function rj(a,b){a=a|0;b=b|0;return F[b+24|0]}function _g(a,b,c){a=a|0;b=b|0;c=c|0;return-1}function Eh(a){a=a|0;return H[H[a>>2]+40>>2]}function Dh(a){a=a|0;return H[H[a>>2]+44>>2]}function Kh(a,b){a=a|0;b=b|0;bg(H[a>>2],b)}function Gh(a,b){a=a|0;b=b|0;Qe(H[a>>2],b)}function fi(a,b){a=a|0;b=b|0;H[a+80>>2]=b}function ni(a){a=a|0;return H[a+56>>2]}function ki(a){a=a|0;return H[a+48>>2]}function kf(a){a=a|0;return H[a+40>>2]}function ji(a){a=a|0;return H[a+60>>2]}function ed(a){a=a|0;return H[a+80>>2]}function cc(a){a=a|0;return H[a+28>>2]}function Nh(a){a=a|0;return H[a+44>>2]}function Lg(){H[4773]=18980;H[4755]=42}function Cf(a){a=a|0;return H[a+12>>2]}function wk(a,b){a=a|0;b=b|0;return 2}function mi(a){a=a|0;return F[a+24|0]}function li(a){a=a|0;return I[a+32|0]}function hc(a,b){a=a|0;b=b|0;return 1}function dc(a){a=a|0;return H[a+4>>2]}function bb(a,b){a=a|0;b=b|0;return 0}function Jg(a,b){a=a|0;b=b|0;return 6}function Gg(a,b){a=a|0;b=b|0;return-1}function Uh(a,b){a=a|0;b=b|0;bg(a,b)}function Qh(a,b){a=a|0;b=b|0;Qe(a,b)}function Eb(a,b,c){if(c){sa(a,b,c)}}function wc(a,b,c,d){Tf(a,b,c,d,1)}function Gb(a,b,c,d){Tf(a,b,c,d,0)}function pi(){return tc(ra(64))|0}function oi(){return pc(ra(96))|0}function ii(){return He(ra(84))|0}function Vb(a){a=a|0;if(a){qa(a)}}function kh(a){a=a|0;return 1476}function ih(a){a=a|0;Mc(a);qa(a)}function zb(a){a=a|0;return a|0}function vk(a){a=a|0;qa(Fg(a))}function rh(a){a=a|0;qa(mc(a))}function lk(a){a=a|0;qa(wg(a))}function jh(a){a=a|0;qa(Mc(a))}function Zi(a){a=a|0;qa(zf(a))}function Yi(a){a=a|0;qa(xf(a))}function Vg(a){a=a|0;qa(Rd(a))}function Ik(a){a=a|0;qa(Kg(a))}function ug(a){a=a|0;return 3}function jb(a){a=a|0;return 0}function Qa(a){a=a|0;return 1}function Pd(a){a=a|0;return 2}function Fc(a){a=a|0;return 4}function Dc(a){a=a|0;return 5}function Cc(a){a=a|0;return 6}function dd(){return ra(1)|0}function ua(){wa(1425);X()}function nb(a){a=a|0;qa(a)}function lb(){wa(1584);X()}function Pa(a,b){hb(a,b)}function Db(a){a=a|0;X()}function zh(){return 4}function xa(){me();X()}function _c(){return 1}function We(){return-1}function Bh(){return 2}function Ah(){return 3}function $c(){return 0}function me(){_();X()}function he(a){a=a|0}function lh(){X()} +function Yd(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0;D=da-48|0;da=D;a:{b:{c:{d:{e:{if((b|0)<0){break e}if(!b){j=1;break e}if(b>>>0>=1073741824){break b}f=b<<2;w=ra(f);H[D+36>>2]=w;H[D+32>>2]=w;f=f+w|0;i=(c|0)>1?c:1;j=i-1|0;s=j&-4;t=j&3;E=i-2>>>0>2;h=w;n=h;while(1){j=H[(q<<2)+a>>2];f:{if((c|0)<2){break f}p=0;m=1;if(E){while(1){k=(m+q<<2)+a|0;x=H[k+12>>2];v=H[k+8>>2];A=H[k+4>>2];k=H[k>>2];j=j>>>0>>0?k:j;j=j>>>0>>0?A:j;j=j>>>0>>0?v:j;j=j>>>0>>0?x:j;m=m+4|0;p=p+4|0;if((s|0)!=(p|0)){continue}break}}p=0;if(!t){break f}while(1){k=H[(m+q<<2)+a>>2];j=j>>>0>>0?k:j;m=m+1|0;p=p+1|0;if((t|0)!=(p|0)){continue}break}}k=j?(Q(j)^31)+1|0:1;g:{if(f>>>0>n>>>0){H[n>>2]=k;n=n+4|0;H[D+36>>2]=n;break g}p=n-h|0;n=p>>2;m=n+1|0;if(m>>>0>=1073741824){break c}f=f-h|0;x=f>>1;f=f>>>0<2147483644?m>>>0>x>>>0?m:x:1073741823;if(f){if(f>>>0>=1073741824){break d}w=ra(f<<2)}else{w=0}m=w+(n<<2)|0;H[m>>2]=k;n=m+4|0;if((p|0)>0){sa(w,h,p)}f=(f<<2)+w|0;H[D+36>>2]=n;if(h){qa(h)}h=w}l=j>>>0>l>>>0?j:l;q=i+q|0;if((q|0)<(b|0)){continue}break}H[D+40>>2]=f;H[D+32>>2]=w;m=0;H[D+24>>2]=0;H[D+16>>2]=0;H[D+20>>2]=0;c=n-w|0;if(c){if((c|0)<0){break a}m=ra(c);H[D+16>>2]=m;H[D+24>>2]=(c>>2<<2)+m;c=sa(m,w,c)+c|0}else{c=0}f=c-m|0;c=f>>2;h:{if(!f){break h}f=c>>>0>1?c:1;h=f&3;q=0;i:{if(f-1>>>0<3){j=0;break i}t=f&-4;j=0;p=0;while(1){f=r;r=j<<2;n=H[r+m>>2];f=f+n|0;k=f>>>0>>0?g+1|0:g;n=H[(r|4)+m>>2];g=n+f|0;f=k;f=g>>>0>>0?f+1|0:f;k=H[(r|8)+m>>2];g=k+g|0;f=g>>>0>>0?f+1|0:f;r=H[(r|12)+m>>2];g=r+g|0;k=g>>>0>>0?f+1|0:f;r=g;g=k;j=j+4|0;p=p+4|0;if((t|0)!=(p|0)){continue}break}}if(!h){break h}while(1){f=g;p=H[(j<<2)+m>>2];k=p+r|0;r=k;g=k>>>0

>>0?f+1|0:f;j=j+1|0;q=q+1|0;if((h|0)!=(q|0)){continue}break}}t=Cg(m,c,32,D);q=ea;n=H[D>>2];if(m){H[D+20>>2]=m;qa(m)}s=Cg(a,b,l,D);E=ea;h=H[D>>2];x=(l-h|0)/64|0;j:{if(d){c=ra(32);f=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);j=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+14|0]=j;F[c+15|0]=j>>>8;F[c+16|0]=j>>>16;F[c+17|0]=j>>>24;F[c+18|0]=f;F[c+19|0]=f>>>8;F[c+20|0]=f>>>16;F[c+21|0]=f>>>24;f=I[1740]|I[1741]<<8|(I[1742]<<16|I[1743]<<24);j=I[1736]|I[1737]<<8|(I[1738]<<16|I[1739]<<24);F[c+8|0]=j;F[c+9|0]=j>>>8;F[c+10|0]=j>>>16;F[c+11|0]=j>>>24;F[c+12|0]=f;F[c+13|0]=f>>>8;F[c+14|0]=f>>>16;F[c+15|0]=f>>>24;f=I[1732]|I[1733]<<8|(I[1734]<<16|I[1735]<<24);j=I[1728]|I[1729]<<8|(I[1730]<<16|I[1731]<<24);F[c|0]=j;F[c+1|0]=j>>>8;F[c+2|0]=j>>>16;F[c+3|0]=j>>>24;F[c+4|0]=f;F[c+5|0]=f>>>8;F[c+6|0]=f>>>16;F[c+7|0]=f>>>24;F[c+22|0]=0;j=H[d+4>>2];if(j){while(1){f=I[j+27|0];k=f<<24>>24<0;f=k?H[j+20>>2]:f;p=f>>>0<22;k:{l:{m=p?f:22;m:{n:{if(m){v=j+16|0;k=k?H[v>>2]:v;v=Ga(c,k,m);o:{if(!v){if(f>>>0<=22){break o}break k}if((v|0)<0){break k}}f=Ga(k,c,m);if(!f){break n}if((f|0)>=0){break m}break l}if(f>>>0>22){break k}}if(p){break l}}qa(c);c=ra(32);H[D>>2]=c;H[D+4>>2]=22;H[D+8>>2]=-2147483616;F[c+22|0]=0;g=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);f=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+14|0]=f;F[c+15|0]=f>>>8;F[c+16|0]=f>>>16;F[c+17|0]=f>>>24;F[c+18|0]=g;F[c+19|0]=g>>>8;F[c+20|0]=g>>>16;F[c+21|0]=g>>>24;g=I[1740]|I[1741]<<8|(I[1742]<<16|I[1743]<<24);f=I[1736]|I[1737]<<8|(I[1738]<<16|I[1739]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1732]|I[1733]<<8|(I[1734]<<16|I[1735]<<24);f=I[1728]|I[1729]<<8|(I[1730]<<16|I[1731]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;m=Df(d,D);if(F[D+11|0]>=0){break j}qa(H[D>>2]);break j}j=j+4|0}j=H[j>>2];if(j){continue}break}}qa(c)}if((Q(l>>>0>1?l:1)^30)>>>0<18){g=xl(r,g,i,0);c=g+t|0;f=ea+q|0;f=c>>>0>>0?f+1|0:f;k=c;c=n<<3;g=c>>31;p=g<<1|c>>>31;g=c<<1;c=k+g|0;k=f+p|0;k=c>>>0>>0?k+1|0:k;g=c;c=h+x<<3;f=c>>31;r=c;j=h<<3;p=j;c=j+s|0;j=(j>>31)+E|0;j=c>>>0

>>0?j+1|0:j;p=c;c=r+c|0;f=f+j|0;f=c>>>0

>>0?f+1|0:f;m=(f|0)<=(k|0)&c>>>0<=g>>>0|(f|0)<(k|0)}else{m=0}}F[D|0]=m;c=H[e+20>>2];if(!H[e+16>>2]&(c|0)<=0|(c|0)<0){wa(e,H[e+4>>2],D,D+1|0)}j=0;p:{q:{switch(m|0){case 0:l=0;w=da-336|0;da=w;ta(w+80|0,0,256);c=H[D+32>>2];d=H[D+36>>2]-c|0;r:{if(!d){break r}d=d>>2;d=d>>>0>1?d:1;m=d&3;if(d-1>>>0>=3){r=d&-4;while(1){k=w+80|0;g=l<<2;d=k+(H[g+c>>2]<<3)|0;f=H[d+4>>2];p=H[d>>2]+1|0;f=p?f:f+1|0;H[d>>2]=p;H[d+4>>2]=f;d=k+(H[c+(g|4)>>2]<<3)|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=k+(H[c+(g|8)>>2]<<3)|0;d=H[f+4>>2];p=H[f>>2]+1|0;d=p?d:d+1|0;H[f>>2]=p;H[f+4>>2]=d;d=k+(H[c+(g|12)>>2]<<3)|0;f=H[d+4>>2];g=H[d>>2]+1|0;f=g?f:f+1|0;H[d>>2]=g;H[d+4>>2]=f;l=l+4|0;j=j+4|0;if((r|0)!=(j|0)){continue}break}}if(!m){break r}j=0;while(1){d=(w+80|0)+(H[c+(l<<2)>>2]<<3)|0;p=H[d+4>>2];g=H[d>>2]+1|0;p=g?p:p+1|0;H[d>>2]=g;H[d+4>>2]=p;l=l+1|0;j=j+1|0;if((m|0)!=(j|0)){continue}break}}c=w+48|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[w+8>>2]=0;H[w+12>>2]=0;H[w+16>>2]=0;H[w+20>>2]=0;H[w+24>>2]=0;H[w+28>>2]=0;H[w+32>>2]=0;H[w>>2]=0;H[w+4>>2]=0;H[w+40>>2]=0;H[w+44>>2]=0;Ag(w,w+80|0,32,e);f=H[w+16>>2];d=H[w+20>>2];g=H[e+4>>2]-H[e>>2]|0;H[w+40>>2]=g;H[w+44>>2]=0;p=d<<1|f>>>31;f=(f<<1)+39|0;d=p;d=f>>>0<39?d+1|0:d;k=d>>>3|0;d=g+((d&7)<<29|f>>>3)|0;f=k;f=d>>>0>>0?f+1|0:f;d=d+8|0;Na(e,d);d=H[e>>2];H[w+28>>2]=0;H[w+32>>2]=16384;H[w+24>>2]=d+H[w+40>>2];d=c;c=b;yd(d,c<<5,c>>31<<5|c>>>27,0);b=c-i|0;if((b|0)>=0){k=(i|0)<=0;c=b;while(1){l=H[w+32>>2];m=H[D+32>>2];f=H[w>>2]+(H[m+((c|0)/(i|0)<<2)>>2]<<3)|0;g=H[f>>2];j=g<<10;if(l>>>0>=j>>>0){while(1){p=H[w+28>>2];H[w+28>>2]=p+1;F[p+H[w+24>>2]|0]=l;l=H[w+32>>2]>>>8|0;H[w+32>>2]=l;if(j>>>0<=l>>>0){continue}break}m=H[D+32>>2]}r=H[f+4>>2];f=(l>>>0)/(g>>>0)|0;H[w+32>>2]=r+((f<<12)+(l-N(f,g)|0)|0);p=b-c|0;f=(p|0)/(i|0)|0;s:{if(k){break s}r=H[d+16>>2];g=H[d+20>>2];if(!r&(g|0)<=0|(g|0)<0){break s}f=H[(f<<2)+m>>2];m=0;while(1){if(!(!r&(g|0)<=0|(g|0)<0|(f|0)<=0)){r=H[(m+p<<2)+a>>2];g=H[d+12>>2];h=H[g+4>>2];j=0;while(1){t=h>>>3|0;l=t+H[g>>2]|0;q=I[l|0];h=h&7;G=l,J=Bl(h)&q,F[G|0]=J;t=t+H[g>>2]|0;F[t|0]=I[t|0]|(r>>>j&1)<>2]+1|0;H[g+4>>2]=h;j=j+1|0;if((f|0)!=(j|0)){continue}break}}m=m+1|0;if((i|0)==(m|0)){break s}r=H[d+16>>2];g=H[d+20>>2];continue}}c=c-i|0;if((c|0)>=0){continue}break}}Ab(w,e);xd(d);a=H[e+20>>2];if(!H[e+16>>2]&(a|0)<=0|(a|0)<0){wa(e,H[e+4>>2],H[d>>2],H[d+4>>2])}a=H[w>>2];if(a){H[w+4>>2]=a;qa(a)}a=H[d+12>>2];H[d+12>>2]=0;if(a){qa(a)}a=H[d>>2];if(a){H[d+4>>2]=a;qa(a)}da=w+336|0;j=1;w=H[D+32>>2];break p;case 1:break q;default:break p}}E=da-32|0;da=E;m=1;t:{if((h|0)>0){c=Q(h);if((c^30)>>>0>17){break t}m=32-c|0}u:{if(!d){break u}c=ra(48);F[c+32|0]=I[1582];g=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[c+24|0]=f;F[c+25|0]=f>>>8;F[c+26|0]=f>>>16;F[c+27|0]=f>>>24;F[c+28|0]=g;F[c+29|0]=g>>>8;F[c+30|0]=g>>>16;F[c+31|0]=g>>>24;g=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[c+16|0]=f;F[c+17|0]=f>>>8;F[c+18|0]=f>>>16;F[c+19|0]=f>>>24;F[c+20|0]=g;F[c+21|0]=g>>>8;F[c+22|0]=g>>>16;F[c+23|0]=g>>>24;g=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;F[c+33|0]=0;j=H[d+4>>2];if(j){v:{while(1){g=I[j+27|0];f=g<<24>>24<0;g=f?H[j+20>>2]:g;k=g>>>0<33;w:{x:{p=k?g:33;y:{z:{if(p){r=j+16|0;f=f?H[r>>2]:r;r=Ga(c,f,p);A:{if(!r){if(g>>>0<=33){break A}break w}if((r|0)<0){break w}}g=Ga(f,c,p);if(!g){break z}if((g|0)>=0){break y}break x}if(g>>>0>33){break w}}if(k){break x}}qa(c);c=ra(48);H[E+16>>2]=c;H[E+20>>2]=33;H[E+24>>2]=-2147483600;F[c+33|0]=0;F[c+32|0]=I[1582];g=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[c+24|0]=f;F[c+25|0]=f>>>8;F[c+26|0]=f>>>16;F[c+27|0]=f>>>24;F[c+28|0]=g;F[c+29|0]=g>>>8;F[c+30|0]=g>>>16;F[c+31|0]=g>>>24;g=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[c+16|0]=f;F[c+17|0]=f>>>8;F[c+18|0]=f>>>16;F[c+19|0]=f>>>24;F[c+20|0]=g;F[c+21|0]=g>>>8;F[c+22|0]=g>>>16;F[c+23|0]=g>>>24;g=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;c=Df(d,E+16|0);if(F[E+27|0]<0){qa(H[E+16>>2])}if((c|0)>3){break v}m=m-2|0;break u}j=j+4|0}j=H[j>>2];if(j){continue}break}qa(c);break u}if(c>>>0<=5){m=m-1|0;break u}if(c>>>0>=10){m=m+2|0;break u}m=(c>>>0>7)+m|0;break u}qa(c)}c=(m|0)>1?m:1;c=c>>>0<18?c:18;F[E+15|0]=c;d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){wa(e,H[e+4>>2],E+15|0,E+16|0)}j=0;B:{switch(c-1|0){case 0:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;C:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}D:{if((b|0)<=0){break D}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;c=(H[t+(c|12)>>2]<<3)+q|0;p=H[c+4>>2];d=H[c>>2]+1|0;p=d?p:p+1|0;H[c>>2]=d;H[c+4>>2]=p;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}f=b&3;if(!f){break D}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;E:{if((d|0)<=0){break E}n=d&3;F:{if(d-1>>>0<3){h=0;break F}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;f=g+A|0;p=k+r|0;f=p>>>0>>0?f+1|0:f;k=p;g=y+k|0;p=d+f|0;p=g>>>0>>0?p+1|0:p;d=g+x|0;f=l+p|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break E}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=d+r|0;d=a+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;G:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break G}if(d>>>0<=f>>>0){break G}H[i+4>>2]=(f<<3)+a}l=0;n=0;H:{I:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;J:{if(o<4294967296&o>=0){d=~~o>>>0;break J}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break I}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;K:{if((c|0)<0){break K}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break K}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;L:{if((g|0)<=512){$b(l,a,s+24|0,d,0,0);break L}h=d>>>0<536870911?d:536870911;M:{while(1){g=ra(h<<2);if(g){break M}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}$b(l,a,s+24|0,d,0,0);break L}$b(l,a,s+24|0,d,g,h);qa(g)}N:{O:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break O}P:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;Q:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));R:{if(P(u)<2147483648){g=~~u;break R}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Q}d=(a|0)>1;a=a-1|0;if(d){continue}break Q}break}if((a|0)==(c|0)){break P}}if((m|0)<=0){break N}l=H[s+8>>2];continue}}if(n>>>0<4097){break O}while(1)continue}qa(l);break H}if(!l){break I}}qa(l)}if((c|0)<0){break H}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break H}h=0;o=0;S:{if((c|0)<0){break S}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break S}a=h<<3;c=H[a+g>>2];if(!c){break S}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*.000244140625)+o}o=U(-o);T:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break T}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;f=a>>>0<39?f+1|0:f;a=c+((f&7)<<29|a>>>3)|0;j=f>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Ab(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break C}j=1;break t;case 1:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;U:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}V:{if((b|0)<=0){break V}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break V}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;f=H[c+4>>2];j=H[c>>2]+1|0;f=j?f:f+1|0;H[c>>2]=j;H[c+4>>2]=f;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;W:{if((d|0)<=0){break W}l=d&3;X:{if(d-1>>>0<3){h=0;break X}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=j;j=f;f=k;r=f+r|0;k=g+A|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;j=f+j|0;j=d>>>0>>0?j+1|0:j;g=d;d=d+v|0;p=j+p|0;r=d;g=d>>>0>>0?p+1|0:p;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break W}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=a+g|0;d=d+r|0;f=d>>>0>>0?f+1|0:f;r=d;g=f;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Y:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break Y}if(d>>>0<=f>>>0){break Y}H[i+4>>2]=(f<<3)+a}l=0;n=0;Z:{_:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;$:{if(o<4294967296&o>=0){d=~~o>>>0;break $}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break _}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;aa:{if((c|0)<0){break aa}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break aa}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;ba:{if((g|0)<=512){_b(l,a,s+24|0,d,0,0);break ba}h=d>>>0<536870911?d:536870911;ca:{while(1){g=ra(h<<2);if(g){break ca}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}_b(l,a,s+24|0,d,0,0);break ba}_b(l,a,s+24|0,d,g,h);qa(g)}da:{ea:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break ea}fa:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;ga:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));ha:{if(P(u)<2147483648){g=~~u;break ha}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break ga}d=(a|0)>1;a=a-1|0;if(d){continue}break ga}break}if((a|0)==(c|0)){break fa}}if((m|0)<=0){break da}l=H[s+8>>2];continue}}if(n>>>0<4097){break ea}while(1)continue}qa(l);break Z}if(!l){break _}}qa(l)}if((c|0)<0){break Z}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break Z}h=0;o=0;ia:{if((c|0)<0){break ia}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break ia}a=h<<3;c=H[a+g>>2];if(!c){break ia}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*.000244140625)+o}o=U(-o);ja:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break ja}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;j=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?j+1|0:j;a=c+((k&7)<<29|a>>>3)|0;p=k>>>3|0;p=a>>>0>>0?p+1|0:p;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Ab(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break U}j=1;break t;case 2:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;ka:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}la:{if((b|0)<=0){break la}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;f=(H[t+(c|8)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}d=b&3;if(!d){break la}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;ma:{if((d|0)<=0){break ma}n=d&3;na:{if(d-1>>>0<3){h=0;break na}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=j;j=d;y=p;d=g+A|0;p=k+r|0;d=p>>>0>>0?d+1|0:d;k=p;g=y+k|0;j=d+j|0;j=g>>>0>>0?j+1|0:j;d=g+x|0;p=f+j|0;p=d>>>0>>0?p+1|0:p;g=d;d=d+v|0;f=l+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break ma}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;oa:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break oa}if(d>>>0<=f>>>0){break oa}H[i+4>>2]=(f<<3)+a}l=0;n=0;pa:{qa:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;ra:{if(o<4294967296&o>=0){d=~~o>>>0;break ra}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break qa}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;sa:{if((c|0)<0){break sa}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break sa}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;ta:{if((g|0)<=512){Zb(l,a,s+24|0,d,0,0);break ta}h=d>>>0<536870911?d:536870911;ua:{while(1){g=ra(h<<2);if(g){break ua}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Zb(l,a,s+24|0,d,0,0);break ta}Zb(l,a,s+24|0,d,g,h);qa(g)}va:{wa:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break wa}xa:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;ya:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));za:{if(P(u)<2147483648){g=~~u;break za}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break ya}d=(a|0)>1;a=a-1|0;if(d){continue}break ya}break}if((a|0)==(c|0)){break xa}}if((m|0)<=0){break va}l=H[s+8>>2];continue}}if(n>>>0<4097){break wa}while(1)continue}qa(l);break pa}if(!l){break qa}}qa(l)}if((c|0)<0){break pa}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break pa}h=0;o=0;Aa:{if((c|0)<0){break Aa}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Aa}a=h<<3;c=H[a+g>>2];if(!c){break Aa}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*.000244140625)+o}o=U(-o);Ba:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ba}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;p=a<<1|d>>>31;a=(d<<1)+39|0;d=p;d=a>>>0<39?d+1|0:d;a=c+((d&7)<<29|a>>>3)|0;f=d>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Ab(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break ka}j=1;break t;case 3:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Ca:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}Da:{if((b|0)<=0){break Da}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;c=(H[t+(c|12)>>2]<<3)+q|0;p=H[c+4>>2];d=H[c>>2]+1|0;p=d?p:p+1|0;H[c>>2]=d;H[c+4>>2]=p;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}f=b&3;if(!f){break Da}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Ea:{if((d|0)<=0){break Ea}n=d&3;Fa:{if(d-1>>>0<3){h=0;break Fa}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;f=g+A|0;p=k+r|0;f=p>>>0>>0?f+1|0:f;k=p;g=y+k|0;p=d+f|0;p=g>>>0>>0?p+1|0:p;d=g+x|0;f=l+p|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break Ea}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=d+r|0;d=a+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Ga:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break Ga}if(d>>>0<=f>>>0){break Ga}H[i+4>>2]=(f<<3)+a}l=0;n=0;Ha:{Ia:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;Ja:{if(o<4294967296&o>=0){d=~~o>>>0;break Ja}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break Ia}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;Ka:{if((c|0)<0){break Ka}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Ka}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;La:{if((g|0)<=512){Yb(l,a,s+24|0,d,0,0);break La}h=d>>>0<536870911?d:536870911;Ma:{while(1){g=ra(h<<2);if(g){break Ma}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Yb(l,a,s+24|0,d,0,0);break La}Yb(l,a,s+24|0,d,g,h);qa(g)}Na:{Oa:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break Oa}Pa:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;Qa:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Ra:{if(P(u)<2147483648){g=~~u;break Ra}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Qa}d=(a|0)>1;a=a-1|0;if(d){continue}break Qa}break}if((a|0)==(c|0)){break Pa}}if((m|0)<=0){break Na}l=H[s+8>>2];continue}}if(n>>>0<4097){break Oa}while(1)continue}qa(l);break Ha}if(!l){break Ia}}qa(l)}if((c|0)<0){break Ha}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break Ha}h=0;o=0;Sa:{if((c|0)<0){break Sa}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Sa}a=h<<3;c=H[a+g>>2];if(!c){break Sa}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*.000244140625)+o}o=U(-o);Ta:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ta}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;f=a>>>0<39?f+1|0:f;a=c+((f&7)<<29|a>>>3)|0;j=f>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Ab(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Ca}j=1;break t;case 4:c=0;h=0;m=0;q=0;g=da+-64|0;da=g;H[g+56>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;Ua:{d=l+1|0;if(d>>>0>=l>>>0){if(d>>>0>=536870912){break a}d=d<<3;c=ra(d);H[g+48>>2]=c;h=c+d|0;H[g+56>>2]=h;ta(c,0,(l<<3)+8|0);H[g+52>>2]=h}Va:{if((b|0)<=0){break Va}l=0;if(b-1>>>0>=3){p=b&-4;while(1){d=l<<2;j=(H[d+a>>2]<<3)+c|0;f=H[j+4>>2];k=H[j>>2]+1|0;f=k?f:f+1|0;H[j>>2]=k;H[j+4>>2]=f;j=(H[(d|4)+a>>2]<<3)+c|0;f=H[j+4>>2];k=H[j>>2]+1|0;f=k?f:f+1|0;H[j>>2]=k;H[j+4>>2]=f;f=(H[(d|8)+a>>2]<<3)+c|0;k=H[f+4>>2];j=H[f>>2]+1|0;k=j?k:k+1|0;H[f>>2]=j;H[f+4>>2]=k;d=(H[(d|12)+a>>2]<<3)+c|0;f=H[d+4>>2];j=H[d>>2]+1|0;f=j?f:f+1|0;H[d>>2]=j;H[d+4>>2]=f;l=l+4|0;m=m+4|0;if((p|0)!=(m|0)){continue}break}}j=b&3;if(!j){break Va}while(1){d=(H[(l<<2)+a>>2]<<3)+c|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;l=l+1|0;q=q+1|0;if((j|0)!=(q|0)){continue}break}}H[g+8>>2]=0;H[g+12>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;H[g+32>>2]=0;H[g>>2]=0;H[g+4>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;Ag(g,c,h-c>>3,e);f=H[g+16>>2];c=H[g+20>>2];d=H[e+4>>2]-H[e>>2]|0;H[g+40>>2]=d;H[g+44>>2]=0;j=f;f=c<<1|f>>>31;c=(j<<1)+39|0;k=c>>>0<39?f+1|0:f;c=d+((k&7)<<29|c>>>3)|0;f=k>>>3|0;f=c>>>0>>0?f+1|0:f;c=c+8|0;Na(e,c);c=H[e>>2];H[g+28>>2]=0;H[g+32>>2]=16384;H[g+24>>2]=c+H[g+40>>2];if((b|0)>0){l=16384;while(1){c=b-1|0;f=H[g>>2]+(H[(c<<2)+a>>2]<<3)|0;d=H[f>>2];j=d<<10;if(j>>>0<=l>>>0){while(1){k=H[g+28>>2];H[g+28>>2]=k+1;F[k+H[g+24>>2]|0]=l;l=H[g+32>>2]>>>8|0;H[g+32>>2]=l;if(j>>>0<=l>>>0){continue}break}}k=H[f+4>>2];f=(l>>>0)/(d>>>0)|0;l=k+((f<<12)+(l-N(d,f)|0)|0)|0;H[g+32>>2]=l;d=(b|0)>1;b=c;if(d){continue}break}}Ab(g,e);a=H[g>>2];if(a){H[g+4>>2]=a;qa(a)}a=H[g+48>>2];if(a){qa(a)}da=g- -64|0;break Ua}j=1;break t;case 5:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Wa:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}Xa:{if((b|0)<=0){break Xa}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Xa}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Ya:{if((d|0)<=0){break Ya}n=d&3;Za:{if(d-1>>>0<3){h=0;break Za}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;p=g+A|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=y+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break Ya}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;_a:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break _a}if(d>>>0<=f>>>0){break _a}H[i+4>>2]=(f<<3)+a}l=0;n=0;$a:{ab:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;bb:{if(o<4294967296&o>=0){d=~~o>>>0;break bb}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break ab}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;cb:{if((c|0)<0){break cb}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break cb}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;db:{if((g|0)<=512){Xb(l,a,s+24|0,d,0,0);break db}h=d>>>0<536870911?d:536870911;eb:{while(1){g=ra(h<<2);if(g){break eb}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Xb(l,a,s+24|0,d,0,0);break db}Xb(l,a,s+24|0,d,g,h);qa(g)}fb:{gb:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break gb}hb:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;ib:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));jb:{if(P(u)<2147483648){g=~~u;break jb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break ib}d=(a|0)>1;a=a-1|0;if(d){continue}break ib}break}if((a|0)==(c|0)){break hb}}if((m|0)<=0){break fb}l=H[s+8>>2];continue}}if(n>>>0<4097){break gb}while(1)continue}qa(l);break $a}if(!l){break ab}}qa(l)}if((c|0)<0){break $a}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break $a}h=0;o=0;kb:{if((c|0)<0){break kb}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break kb}a=h<<3;c=H[a+g>>2];if(!c){break kb}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*.000244140625)+o}o=U(-o);lb:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break lb}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Ab(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Wa}j=1;break t;case 6:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;mb:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}nb:{if((b|0)<=0){break nb}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|8)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break nb}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;ob:{if((d|0)<=0){break ob}l=d&3;pb:{if(d-1>>>0<3){h=0;break pb}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=j;j=f;f=d;d=g+A|0;r=k+r|0;d=r>>>0>>0?d+1|0:d;k=r;g=k+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;j=f+j|0;j=d>>>0>>0?j+1|0:j;g=d;d=d+v|0;f=j+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break ob}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;p=a+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;qb:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break qb}if(d>>>0<=f>>>0){break qb}H[i+4>>2]=(f<<3)+a}l=0;n=0;rb:{sb:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;tb:{if(o<4294967296&o>=0){d=~~o>>>0;break tb}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break sb}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;ub:{if((c|0)<0){break ub}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break ub}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;vb:{if((g|0)<=512){Wb(l,a,s+24|0,d,0,0);break vb}h=d>>>0<536870911?d:536870911;wb:{while(1){g=ra(h<<2);if(g){break wb}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Wb(l,a,s+24|0,d,0,0);break vb}Wb(l,a,s+24|0,d,g,h);qa(g)}xb:{yb:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break yb}zb:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;Ab:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Bb:{if(P(u)<2147483648){g=~~u;break Bb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Ab}d=(a|0)>1;a=a-1|0;if(d){continue}break Ab}break}if((a|0)==(c|0)){break zb}}if((m|0)<=0){break xb}l=H[s+8>>2];continue}}if(n>>>0<4097){break yb}while(1)continue}qa(l);break rb}if(!l){break sb}}qa(l)}if((c|0)<0){break rb}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break rb}h=0;o=0;Cb:{if((c|0)<0){break Cb}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Cb}a=h<<3;c=H[a+g>>2];if(!c){break Cb}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*.000244140625)+o}o=U(-o);Db:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Db}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;j=a<<1|d>>>31;a=(d<<1)+39|0;d=j;d=a>>>0<39?d+1|0:d;f=d>>>3|0;a=c+((d&7)<<29|a>>>3)|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Ab(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break mb}j=1;break t;case 7:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Eb:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}Fb:{if((b|0)<=0){break Fb}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}f=b&3;if(!f){break Fb}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Gb:{if((d|0)<=0){break Gb}l=d&3;Hb:{if(d-1>>>0<3){h=0;break Hb}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=j;j=k;r=j+r|0;k=g+A|0;k=j>>>0>r>>>0?k+1|0:k;g=r+n|0;j=d+k|0;j=g>>>0>>0?j+1|0:j;d=g+x|0;f=f+j|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;f=f+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break Gb}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=d+r|0;d=a+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Ib:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break Ib}if(d>>>0<=f>>>0){break Ib}H[i+4>>2]=(f<<3)+a}l=0;n=0;Jb:{Kb:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;Lb:{if(o<4294967296&o>=0){d=~~o>>>0;break Lb}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break Kb}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;Mb:{if((c|0)<0){break Mb}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Mb}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Nb:{if((g|0)<=512){Vb(l,a,s+24|0,d,0,0);break Nb}h=d>>>0<536870911?d:536870911;Ob:{while(1){g=ra(h<<2);if(g){break Ob}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Vb(l,a,s+24|0,d,0,0);break Nb}Vb(l,a,s+24|0,d,g,h);qa(g)}Pb:{Qb:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break Qb}Rb:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;Sb:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Tb:{if(P(u)<2147483648){g=~~u;break Tb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Sb}d=(a|0)>1;a=a-1|0;if(d){continue}break Sb}break}if((a|0)==(c|0)){break Rb}}if((m|0)<=0){break Pb}l=H[s+8>>2];continue}}if(n>>>0<4097){break Qb}while(1)continue}qa(l);break Jb}if(!l){break Kb}}qa(l)}if((c|0)<0){break Jb}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break Jb}h=0;o=0;Ub:{if((c|0)<0){break Ub}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Ub}a=h<<3;c=H[a+g>>2];if(!c){break Ub}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*.000244140625)+o}o=U(-o);Vb:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Vb}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;f=k>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}Ab(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Eb}j=1;break t;case 8:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Wb:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}Xb:{if((b|0)<=0){break Xb}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Xb}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Yb:{if((d|0)<=0){break Yb}n=d&3;Zb:{if(d-1>>>0<3){h=0;break Zb}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;p=g+A|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=y+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break Yb}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;_b:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break _b}if(d>>>0<=f>>>0){break _b}H[i+4>>2]=(f<<3)+a}l=0;n=0;$b:{ac:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*8192+.5;bc:{if(o<4294967296&o>=0){d=~~o>>>0;break bc}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==8192){break ac}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;cc:{if((c|0)<0){break cc}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break cc}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;dc:{if((g|0)<=512){Ub(l,a,s+24|0,d,0,0);break dc}h=d>>>0<536870911?d:536870911;ec:{while(1){g=ra(h<<2);if(g){break ec}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Ub(l,a,s+24|0,d,0,0);break dc}Ub(l,a,s+24|0,d,g,h);qa(g)}fc:{gc:{if((n|0)<8192){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -8192;break gc}hc:{if((c|0)>0){m=n+-8192|0;while(1){o=8192/+(n|0);j=H[i>>2];a=c;ic:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));jc:{if(P(u)<2147483648){g=~~u;break jc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==8192){n=8192;break ic}d=(a|0)>1;a=a-1|0;if(d){continue}break ic}break}if((a|0)==(c|0)){break hc}}if((m|0)<=0){break fc}l=H[s+8>>2];continue}}if(n>>>0<8193){break gc}while(1)continue}qa(l);break $b}if(!l){break ac}}qa(l)}if((c|0)<0){break $b}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=8192){break $b}h=0;o=0;kc:{if((c|0)<0){break kc}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.0001220703125)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*.0001220703125)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break kc}a=h<<3;c=H[a+g>>2];if(!c){break kc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*.0001220703125)+o}o=U(-o);lc:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break lc}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=32768;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=32768;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<13)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];b=d-32768|0;mc:{if(b>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=b;b=H[i+28>>2]+1|0;break mc}if(b>>>0<=16383){b=H[i+24>>2]+H[i+28>>2]|0;d=d-16384|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[i+28>>2]+2|0;break mc}if(b>>>0<=4194303){b=H[i+24>>2]+H[i+28>>2]|0;d=d+8355840|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[i+28>>2]+3|0;break mc}if(b>>>0<=1073741823){b=H[i+24>>2]+H[i+28>>2]|0;d=d-1073774592|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[i+28>>2]+4|0;break mc}b=H[i+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;zb(b,f,a);d=H[a+4>>2]-H[a>>2]|0;xa(d+c|0,c,b);sa(c,H[a>>2],d);g=H[i+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[i+40>>2]|0;Na(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=a+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Wb}j=1;break t;case 9:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;nc:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}oc:{if((b|0)<=0){break oc}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break oc}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;pc:{if((d|0)<=0){break pc}l=d&3;qc:{if(d-1>>>0<3){h=0;break qc}A=d&-4;h=0;while(1){C=h|1;f=(C<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];n=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];x=H[k>>2];y=c;c=(h<<3)+q|0;v=H[c+4>>2];k=H[c>>2];c=j|x?z:f|n?B:d|p?C:!(v|k)?y:h;y=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=y+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((A|0)!=(a|0)){continue}break}}if(!l){break pc}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;j=a+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;rc:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break rc}if(d>>>0<=f>>>0){break rc}H[i+4>>2]=(f<<3)+a}l=0;n=0;sc:{tc:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*32768+.5;uc:{if(o<4294967296&o>=0){d=~~o>>>0;break uc}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==32768){break tc}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;vc:{if((c|0)<0){break vc}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break vc}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;wc:{if((g|0)<=512){Tb(l,a,s+24|0,d,0,0);break wc}h=d>>>0<536870911?d:536870911;xc:{while(1){g=ra(h<<2);if(g){break xc}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Tb(l,a,s+24|0,d,0,0);break wc}Tb(l,a,s+24|0,d,g,h);qa(g)}yc:{zc:{if((n|0)<32768){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+32768;break zc}Ac:{if((c|0)>0){m=n-32768|0;while(1){o=32768/+(n|0);j=H[i>>2];a=c;Bc:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Cc:{if(P(u)<2147483648){g=~~u;break Cc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==32768){n=32768;break Bc}d=(a|0)>1;a=a-1|0;if(d){continue}break Bc}break}if((a|0)==(c|0)){break Ac}}if((m|0)<=0){break yc}l=H[s+8>>2];continue}}if(n>>>0<32769){break zc}while(1)continue}qa(l);break sc}if(!l){break tc}}qa(l)}if((c|0)<0){break sc}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=32768){break sc}h=0;o=0;Dc:{if((c|0)<0){break Dc}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*30517578125e-15)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*30517578125e-15)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Dc}a=h<<3;c=H[a+g>>2];if(!c){break Dc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*30517578125e-15)+o}o=U(-o);Ec:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ec}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=131072;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=131072;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<15)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}b=da-32|0;da=b;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];a=d-131072|0;Fc:{if(a>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=a;a=H[i+28>>2]+1|0;break Fc}if(a>>>0<=16383){a=H[i+24>>2]+H[i+28>>2]|0;d=d-114688|0;F[a|0]=d;F[a+1|0]=d>>>8;a=H[i+28>>2]+2|0;break Fc}if(a>>>0<=4194303){a=H[i+24>>2]+H[i+28>>2]|0;d=d+8257536|0;F[a+2|0]=d>>>16;F[a+1|0]=d>>>8;F[a|0]=d;a=H[i+28>>2]+3|0;break Fc}if(a>>>0<=1073741823){a=H[i+24>>2]+H[i+28>>2]|0;d=d-1073872896|0;F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;a=H[i+28>>2]+4|0;break Fc}a=H[i+28>>2]}H[b>>2]=0;H[b+4>>2]=0;F[b+24|0]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;f=a>>31;zb(a,f,b);d=H[b+4>>2]-H[b>>2]|0;xa(d+c|0,c,a);sa(c,H[b>>2],d);g=H[i+44>>2];c=a+d|0;f=c>>>0>>0?f+1|0:f;a=c+H[i+40>>2]|0;Na(e,a);a=H[b+12>>2];H[b+12>>2]=0;if(a){qa(a)}a=H[b>>2];if(a){H[b+4>>2]=a;qa(a)}da=b+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break nc}j=1;break t;case 10:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Gc:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}Hc:{if((b|0)<=0){break Hc}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|4)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;k=H[c+4>>2];d=H[c>>2]+1|0;k=d?k:k+1|0;H[c>>2]=d;H[c+4>>2]=k;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Hc}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;f=H[c+4>>2];j=H[c>>2]+1|0;f=j?f:f+1|0;H[c>>2]=j;H[c+4>>2]=f;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Ic:{if((d|0)<=0){break Ic}l=d&3;Jc:{if(d-1>>>0<3){h=0;break Jc}A=d&-4;h=0;while(1){C=h|1;f=(C<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];n=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];x=H[k>>2];y=c;c=(h<<3)+q|0;v=H[c+4>>2];k=H[c>>2];c=j|x?z:f|n?B:d|p?C:!(v|k)?y:h;y=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;g=y+r|0;k=d+p|0;k=g>>>0>>0?k+1|0:k;d=g+n|0;f=f+k|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+x|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;h=h+4|0;a=a+4|0;if((A|0)!=(a|0)){continue}break}}if(!l){break Ic}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=a+g|0;d=d+r|0;f=d>>>0>>0?f+1|0:f;r=d;g=f;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Kc:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break Kc}if(d>>>0<=f>>>0){break Kc}H[i+4>>2]=(f<<3)+a}l=0;n=0;Lc:{Mc:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*65536+.5;Nc:{if(o<4294967296&o>=0){d=~~o>>>0;break Nc}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==65536){break Mc}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;Oc:{if((c|0)<0){break Oc}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Oc}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Pc:{if((g|0)<=512){Sb(l,a,s+24|0,d,0,0);break Pc}h=d>>>0<536870911?d:536870911;Qc:{while(1){g=ra(h<<2);if(g){break Qc}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Sb(l,a,s+24|0,d,0,0);break Pc}Sb(l,a,s+24|0,d,g,h);qa(g)}Rc:{Sc:{if((n|0)<65536){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+65536;break Sc}Tc:{if((c|0)>0){m=n-65536|0;while(1){o=65536/+(n|0);j=H[i>>2];a=c;Uc:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Vc:{if(P(u)<2147483648){g=~~u;break Vc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==65536){n=65536;break Uc}d=(a|0)>1;a=a-1|0;if(d){continue}break Uc}break}if((a|0)==(c|0)){break Tc}}if((m|0)<=0){break Rc}l=H[s+8>>2];continue}}if(n>>>0<65537){break Sc}while(1)continue}qa(l);break Lc}if(!l){break Mc}}qa(l)}if((c|0)<0){break Lc}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=65536){break Lc}h=0;o=0;Wc:{if((c|0)<0){break Wc}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*152587890625e-16)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*152587890625e-16)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Wc}a=h<<3;c=H[a+g>>2];if(!c){break Wc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*152587890625e-16)+o}o=U(-o);Xc:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Xc}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;d=p>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=262144;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=262144;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<16)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}b=da-32|0;da=b;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];a=d-262144|0;Yc:{if(a>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=a;a=H[i+28>>2]+1|0;break Yc}if(a>>>0<=16383){a=H[i+24>>2]+H[i+28>>2]|0;d=d-245760|0;F[a|0]=d;F[a+1|0]=d>>>8;a=H[i+28>>2]+2|0;break Yc}if(a>>>0<=4194303){a=H[i+24>>2]+H[i+28>>2]|0;d=d+8126464|0;F[a+2|0]=d>>>16;F[a+1|0]=d>>>8;F[a|0]=d;a=H[i+28>>2]+3|0;break Yc}if(a>>>0<=1073741823){a=H[i+24>>2]+H[i+28>>2]|0;d=d-1074003968|0;F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;a=H[i+28>>2]+4|0;break Yc}a=H[i+28>>2]}H[b>>2]=0;H[b+4>>2]=0;F[b+24|0]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;f=a>>31;zb(a,f,b);d=H[b+4>>2]-H[b>>2]|0;xa(d+c|0,c,a);sa(c,H[b>>2],d);g=H[i+44>>2];c=a+d|0;f=c>>>0>>0?f+1|0:f;a=c+H[i+40>>2]|0;Na(e,a);a=H[b+12>>2];H[b+12>>2]=0;if(a){qa(a)}a=H[b>>2];if(a){H[b+4>>2]=a;qa(a)}da=b+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Gc}j=1;break t;case 11:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Zc:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}_c:{if((b|0)<=0){break _c}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}f=b&3;if(!f){break _c}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;$c:{if((d|0)<=0){break $c}n=d&3;ad:{if(d-1>>>0<3){h=0;break ad}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=j;y=p;p=g+A|0;j=k+r|0;p=j>>>0>>0?p+1|0:p;k=j;g=y+j|0;j=d+p|0;j=g>>>0>>0?j+1|0:j;d=g+x|0;f=f+j|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;k=f+l|0;r=d;g=d>>>0>>0?k+1|0:k;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break $c}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=d+r|0;d=a+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;bd:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break bd}if(d>>>0<=f>>>0){break bd}H[i+4>>2]=(f<<3)+a}l=0;n=0;cd:{dd:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*262144+.5;ed:{if(o<4294967296&o>=0){d=~~o>>>0;break ed}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==262144){break dd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;fd:{if((c|0)<0){break fd}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break fd}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;gd:{if((g|0)<=512){Rb(l,a,s+24|0,d,0,0);break gd}h=d>>>0<536870911?d:536870911;hd:{while(1){g=ra(h<<2);if(g){break hd}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Rb(l,a,s+24|0,d,0,0);break gd}Rb(l,a,s+24|0,d,g,h);qa(g)}id:{jd:{if((n|0)<262144){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+262144;break jd}kd:{if((c|0)>0){m=n-262144|0;while(1){o=262144/+(n|0);j=H[i>>2];a=c;ld:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));md:{if(P(u)<2147483648){g=~~u;break md}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==262144){n=262144;break ld}d=(a|0)>1;a=a-1|0;if(d){continue}break ld}break}if((a|0)==(c|0)){break kd}}if((m|0)<=0){break id}l=H[s+8>>2];continue}}if(n>>>0<262145){break jd}while(1)continue}qa(l);break cd}if(!l){break dd}}qa(l)}if((c|0)<0){break cd}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=262144){break cd}h=0;o=0;nd:{if((c|0)<0){break nd}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*3814697265625e-18)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*3814697265625e-18)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break nd}a=h<<3;c=H[a+g>>2];if(!c){break nd}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*3814697265625e-18)+o}o=U(-o);od:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break od}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;k=p>>>3|0;k=a>>>0>>0?k+1|0:k;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=1048576;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=1048576;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<18)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];b=d+-1048576|0;pd:{if(b>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=b;b=H[i+28>>2]+1|0;break pd}if(b>>>0<=16383){b=H[i+24>>2]+H[i+28>>2]|0;d=d-1032192|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[i+28>>2]+2|0;break pd}if(b>>>0<=4194303){b=H[i+24>>2]+H[i+28>>2]|0;d=d+7340032|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[i+28>>2]+3|0;break pd}if(b>>>0<=1073741823){b=H[i+24>>2]+H[i+28>>2]|0;d=d-1074790400|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[i+28>>2]+4|0;break pd}b=H[i+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;zb(b,f,a);d=H[a+4>>2]-H[a>>2]|0;xa(d+c|0,c,b);sa(c,H[a>>2],d);g=H[i+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[i+40>>2]|0;Na(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=a+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Zc}j=1;break t;case 12:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;qd:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}rd:{if((b|0)<=0){break rd}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break rd}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;sd:{if((d|0)<=0){break sd}n=d&3;td:{if(d-1>>>0<3){h=0;break td}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;p=g+A|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=y+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break sd}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;ud:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break ud}if(d>>>0<=f>>>0){break ud}H[i+4>>2]=(f<<3)+a}l=0;n=0;vd:{wd:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*524288+.5;xd:{if(o<4294967296&o>=0){d=~~o>>>0;break xd}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==524288){break wd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;yd:{if((c|0)<0){break yd}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break yd}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;zd:{if((g|0)<=512){Qb(l,a,s+24|0,d,0,0);break zd}h=d>>>0<536870911?d:536870911;Ad:{while(1){g=ra(h<<2);if(g){break Ad}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Qb(l,a,s+24|0,d,0,0);break zd}Qb(l,a,s+24|0,d,g,h);qa(g)}Bd:{Cd:{if((n|0)<524288){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+524288;break Cd}Dd:{if((c|0)>0){m=n-524288|0;while(1){o=524288/+(n|0);j=H[i>>2];a=c;Ed:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Fd:{if(P(u)<2147483648){g=~~u;break Fd}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==524288){n=524288;break Ed}d=(a|0)>1;a=a-1|0;if(d){continue}break Ed}break}if((a|0)==(c|0)){break Dd}}if((m|0)<=0){break Bd}l=H[s+8>>2];continue}}if(n>>>0<524289){break Cd}while(1)continue}qa(l);break vd}if(!l){break wd}}qa(l)}if((c|0)<0){break vd}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=524288){break vd}h=0;o=0;Gd:{if((c|0)<0){break Gd}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*19073486328125e-19)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*19073486328125e-19)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Gd}a=h<<3;c=H[a+g>>2];if(!c){break Gd}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*19073486328125e-19)+o}o=U(-o);Hd:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Hd}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=2097152;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=2097152;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<19)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];b=d-2097152|0;Id:{if(b>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=b;b=H[i+28>>2]+1|0;break Id}if(b>>>0<=16383){b=H[i+24>>2]+H[i+28>>2]|0;d=d-2080768|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[i+28>>2]+2|0;break Id}if(b>>>0<=4194303){b=H[i+24>>2]+H[i+28>>2]|0;d=d+6291456|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[i+28>>2]+3|0;break Id}if(b>>>0<=1073741823){b=H[i+24>>2]+H[i+28>>2]|0;d=d-1075838976|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[i+28>>2]+4|0;break Id}b=H[i+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;zb(b,f,a);d=H[a+4>>2]-H[a>>2]|0;xa(d+c|0,c,b);sa(c,H[a>>2],d);g=H[i+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[i+40>>2]|0;Na(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=a+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break qd}j=1;break t;case 13:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Jd:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}Kd:{if((b|0)<=0){break Kd}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Kd}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Ld:{if((d|0)<=0){break Ld}l=d&3;Md:{if(d-1>>>0<3){h=0;break Md}A=d&-4;h=0;while(1){C=h|1;f=(C<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];n=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];x=H[k>>2];y=c;c=(h<<3)+q|0;v=H[c+4>>2];k=H[c>>2];c=j|x?z:f|n?B:d|p?C:!(v|k)?y:h;y=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=y+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((A|0)!=(a|0)){continue}break}}if(!l){break Ld}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;j=a+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Nd:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break Nd}if(d>>>0<=f>>>0){break Nd}H[i+4>>2]=(f<<3)+a}l=0;n=0;Od:{Pd:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;Qd:{if(o<4294967296&o>=0){d=~~o>>>0;break Qd}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break Pd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;Rd:{if((c|0)<0){break Rd}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Rd}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Sd:{if((g|0)<=512){Pb(l,a,s+24|0,d,0,0);break Sd}h=d>>>0<536870911?d:536870911;Td:{while(1){g=ra(h<<2);if(g){break Td}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Pb(l,a,s+24|0,d,0,0);break Sd}Pb(l,a,s+24|0,d,g,h);qa(g)}Ud:{Vd:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break Vd}Wd:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;Xd:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Yd:{if(P(u)<2147483648){g=~~u;break Yd}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break Xd}d=(a|0)>1;a=a-1|0;if(d){continue}break Xd}break}if((a|0)==(c|0)){break Wd}}if((m|0)<=0){break Ud}l=H[s+8>>2];continue}}if(n>>>0<1048577){break Vd}while(1)continue}qa(l);break Od}if(!l){break Pd}}qa(l)}if((c|0)<0){break Od}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break Od}h=0;o=0;Zd:{if((c|0)<0){break Zd}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Zd}a=h<<3;c=H[a+g>>2];if(!c){break Zd}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);_d:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break _d}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}qc(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Jd}j=1;break t;case 14:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;$d:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}ae:{if((b|0)<=0){break ae}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break ae}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;be:{if((d|0)<=0){break be}l=d&3;ce:{if(d-1>>>0<3){h=0;break ce}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=f;f=k;r=f+r|0;k=g+A|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+p|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+v|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break be}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;p=a+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;de:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break de}if(d>>>0<=f>>>0){break de}H[i+4>>2]=(f<<3)+a}l=0;n=0;ee:{fe:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;ge:{if(o<4294967296&o>=0){d=~~o>>>0;break ge}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break fe}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;he:{if((c|0)<0){break he}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break he}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;ie:{if((g|0)<=512){Ob(l,a,s+24|0,d,0,0);break ie}h=d>>>0<536870911?d:536870911;je:{while(1){g=ra(h<<2);if(g){break je}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Ob(l,a,s+24|0,d,0,0);break ie}Ob(l,a,s+24|0,d,g,h);qa(g)}ke:{le:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break le}me:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;ne:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));oe:{if(P(u)<2147483648){g=~~u;break oe}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break ne}d=(a|0)>1;a=a-1|0;if(d){continue}break ne}break}if((a|0)==(c|0)){break me}}if((m|0)<=0){break ke}l=H[s+8>>2];continue}}if(n>>>0<1048577){break le}while(1)continue}qa(l);break ee}if(!l){break fe}}qa(l)}if((c|0)<0){break ee}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break ee}h=0;o=0;pe:{if((c|0)<0){break pe}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break pe}a=h<<3;c=H[a+g>>2];if(!c){break pe}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);qe:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break qe}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;d=k>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}qc(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break $d}j=1;break t;case 15:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;re:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}se:{if((b|0)<=0){break se}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];j=H[d>>2]+1|0;f=j?f:f+1|0;H[d>>2]=j;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}d=b&3;if(!d){break se}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;te:{if((d|0)<=0){break te}n=d&3;ue:{if(d-1>>>0<3){h=0;break ue}B=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];x=H[f>>2];l=h|2;j=(l<<3)+q|0;f=H[j+4>>2];v=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];A=H[k>>2];y=c;c=(h<<3)+q|0;C=H[c+4>>2];k=H[c>>2];c=j|A?z:f|v?l:d|x?p:!(C|k)?y:h;p=j;l=f;j=g+C|0;f=k+r|0;j=f>>>0>>0?j+1|0:j;k=f;g=f+x|0;f=d+j|0;f=g>>>0>>0?f+1|0:f;j=g;g=g+v|0;d=f+l|0;d=g>>>0>>0?d+1|0:d;j=g;g=g+A|0;f=d+p|0;r=g;g=g>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((B|0)!=(a|0)){continue}break}}if(!n){break te}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;ve:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break ve}if(d>>>0<=f>>>0){break ve}H[i+4>>2]=(f<<3)+a}l=0;n=0;we:{xe:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;ye:{if(o<4294967296&o>=0){d=~~o>>>0;break ye}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break xe}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;ze:{if((c|0)<0){break ze}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break ze}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Ae:{if((g|0)<=512){Nb(l,a,s+24|0,d,0,0);break Ae}h=d>>>0<536870911?d:536870911;Be:{while(1){g=ra(h<<2);if(g){break Be}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Nb(l,a,s+24|0,d,0,0);break Ae}Nb(l,a,s+24|0,d,g,h);qa(g)}Ce:{De:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break De}Ee:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;Fe:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Ge:{if(P(u)<2147483648){g=~~u;break Ge}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break Fe}d=(a|0)>1;a=a-1|0;if(d){continue}break Fe}break}if((a|0)==(c|0)){break Ee}}if((m|0)<=0){break Ce}l=H[s+8>>2];continue}}if(n>>>0<1048577){break De}while(1)continue}qa(l);break we}if(!l){break xe}}qa(l)}if((c|0)<0){break we}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break we}h=0;o=0;He:{if((c|0)<0){break He}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break He}a=h<<3;c=H[a+g>>2];if(!c){break He}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);Ie:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ie}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;g=d;d=a<<1|d>>>31;a=(g<<1)+39|0;j=a>>>0<39?d+1|0:d;f=j>>>3|0;a=c+((j&7)<<29|a>>>3)|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}qc(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break re}j=1;break t;case 16:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Je:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}Ke:{if((b|0)<=0){break Ke}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Ke}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Le:{if((d|0)<=0){break Le}l=d&3;Me:{if(d-1>>>0<3){h=0;break Me}A=d&-4;h=0;while(1){C=h|1;f=(C<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];n=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];x=H[k>>2];y=c;c=(h<<3)+q|0;v=H[c+4>>2];k=H[c>>2];c=j|x?z:f|n?B:d|p?C:!(v|k)?y:h;y=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=y+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((A|0)!=(a|0)){continue}break}}if(!l){break Le}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;j=a+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Ne:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break Ne}if(d>>>0<=f>>>0){break Ne}H[i+4>>2]=(f<<3)+a}l=0;n=0;Oe:{Pe:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;Qe:{if(o<4294967296&o>=0){d=~~o>>>0;break Qe}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break Pe}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;Re:{if((c|0)<0){break Re}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Re}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Se:{if((g|0)<=512){Mb(l,a,s+24|0,d,0,0);break Se}h=d>>>0<536870911?d:536870911;Te:{while(1){g=ra(h<<2);if(g){break Te}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Mb(l,a,s+24|0,d,0,0);break Se}Mb(l,a,s+24|0,d,g,h);qa(g)}Ue:{Ve:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break Ve}We:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;Xe:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Ye:{if(P(u)<2147483648){g=~~u;break Ye}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break Xe}d=(a|0)>1;a=a-1|0;if(d){continue}break Xe}break}if((a|0)==(c|0)){break We}}if((m|0)<=0){break Ue}l=H[s+8>>2];continue}}if(n>>>0<1048577){break Ve}while(1)continue}qa(l);break Oe}if(!l){break Pe}}qa(l)}if((c|0)<0){break Oe}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break Oe}h=0;o=0;Ze:{if((c|0)<0){break Ze}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Ze}a=h<<3;c=H[a+g>>2];if(!c){break Ze}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);_e:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break _e}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}qc(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break Je}j=1;break t;case 17:break B;default:break t}}t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;$e:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=ra(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;ta(q,0,(l<<3)+8|0);H[i+52>>2]=h}af:{if((b|0)<=0){break af}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break af}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;bf:{if((d|0)<=0){break bf}l=d&3;cf:{if(d-1>>>0<3){h=0;break cf}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=f;f=k;r=f+r|0;k=g+A|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+p|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+v|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break bf}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;p=a+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;df:{if(d>>>0>>0){Ya(i,f-d|0);a=H[i>>2];break df}if(d>>>0<=f>>>0){break df}H[i+4>>2]=(f<<3)+a}l=0;n=0;ef:{ff:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;gf:{if(o<4294967296&o>=0){d=~~o>>>0;break gf}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break ff}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=ra(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=ta(l,0,a)+a|0;H[s+12>>2]=a}h=0;hf:{if((c|0)<0){break hf}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break hf}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;jf:{if((g|0)<=512){Lb(l,a,s+24|0,d,0,0);break jf}h=d>>>0<536870911?d:536870911;kf:{while(1){g=ra(h<<2);if(g){break kf}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Lb(l,a,s+24|0,d,0,0);break jf}Lb(l,a,s+24|0,d,g,h);qa(g)}lf:{mf:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break mf}nf:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;of:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));pf:{if(P(u)<2147483648){g=~~u;break pf}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break of}d=(a|0)>1;a=a-1|0;if(d){continue}break of}break}if((a|0)==(c|0)){break nf}}if((m|0)<=0){break lf}l=H[s+8>>2];continue}}if(n>>>0<1048577){break mf}while(1)continue}qa(l);break ef}if(!l){break ff}}qa(l)}if((c|0)<0){break ef}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break ef}h=0;o=0;qf:{if((c|0)<0){break qf}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*za(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break qf}a=h<<3;c=H[a+g>>2];if(!c){break qf}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*za(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);rf:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break rf}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;Xa(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;d=k>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;Na(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}qc(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;qa(a)}a=H[i+48>>2];if(a){qa(a)}da=i- -64|0;break $e}j=1}da=E+32|0}if(!w){break e}H[D+36>>2]=w;qa(w)}da=D+48|0;return j}H[D+32>>2]=w;ya(1604);X()}H[D+40>>2]=f;H[D+32>>2]=w;break a}ya(1604);X()}va();X()}function Bh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,P=O(0),R=0,S=0,T=0,U=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,ea=0,fa=0;e=da-1696|0;da=e;d=10-bb(H[H[a+28>>2]+48>>2])|0;d=(d|0)<6?d:6;c=H[a+72>>2];F[e+1695|0]=(d&255)==6?(c|0)>15?5:d:d;d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){wa(b,H[b+4>>2],e+1695|0,e+1696|0);c=H[a+72>>2]}f=H[a+28>>2];s=H[H[f+4>>2]+80>>2];H[e+1684>>2]=0;H[e+1676>>2]=0;H[e+1680>>2]=0;H[e+1664>>2]=s;H[e+1668>>2]=c;H[e+1672>>2]=c<<2;a:{t=N(c,s);if(t){if(t>>>0>=1073741824){break a}d=t<<2;i=ra(d);H[e+1676>>2]=i;g=d+i|0;H[e+1684>>2]=g;ta(i,0,d);H[e+1680>>2]=g}H[e+1688>>2]=i;d=H[a+4>>2];b:{if((d|0)!=H[a+8>>2]){t=0;while(1){c=H[H[H[f+4>>2]+8>>2]+(H[(j<<2)+d>>2]<<2)>>2];d=H[c+28>>2];if(d-1>>>0>=6){if((d|0)!=9){break b}c=H[H[a+60>>2]+(m<<2)>>2];if(!c){break b}m=m+1|0;d=H[c+28>>2]}c:{d:{switch(d-1|0){case 5:d=0;if(!s){break c}while(1){h=(H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],d)<<2)|0;i=H[H[c>>2]>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],I[c+84|0]?d:H[H[c+68>>2]+(d<<2)>>2],0)|0;sa(h,i+f|0,F[c+24|0]<<2);d=d+1|0;if((s|0)!=(d|0)){continue}break};break c;case 0:case 2:case 4:d=F[c+24|0];H[e+464>>2]=0;H[e+456>>2]=0;H[e+460>>2]=0;e:{if(!d){d=0;H[e+1648>>2]=0;break e}if((d|0)<0){break a}f=d<<2;i=ra(f);H[e+456>>2]=i;H[e+464>>2]=f+i;d=0;ta(i,0,f);f=F[c+24|0];H[e+1656>>2]=0;H[e+1648>>2]=0;H[e+1652>>2]=0;if(!f){break e}if((f|0)<0){break a}f=f<<2;d=ra(f);H[e+1648>>2]=d;ta(d,0,f)}f=0;if(s){while(1){o=H[e+456>>2];_c(c,I[c+84|0]?f:H[H[c+68>>2]+(f<<2)>>2],F[c+24|0],o);i=H[e+1648>>2];g=F[c+24|0];f:{if((g|0)<=0){break f}h=H[a+48>>2];d=0;if((g|0)!=1){l=g&-2;q=0;while(1){x=d<<2;H[x+i>>2]=H[o+x>>2]-H[h+(d+t<<2)>>2];x=d|1;B=x<<2;H[B+i>>2]=H[o+B>>2]-H[h+(t+x<<2)>>2];d=d+2|0;q=q+2|0;if((l|0)!=(q|0)){continue}break}}if(!(g&1)){break f}l=d<<2;H[l+i>>2]=H[l+o>>2]-H[h+(d+t<<2)>>2]}sa((H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],f)<<2)|0,i,g<<2);f=f+1|0;if((s|0)!=(f|0)){continue}break}d=H[e+1648>>2]}f=F[c+24|0];if(d){qa(d)}d=H[e+456>>2];if(d){qa(d)}t=f+t|0;break c;default:break d}}i=F[c+24|0];d=0;H[e+464>>2]=0;H[e+456>>2]=0;H[e+460>>2]=0;f=0;if(i){if((i|0)<0){break a}i=i<<2;f=ra(i);H[e+456>>2]=f;ta(f,0,i)}if(s){while(1){f=I[c+84|0]?d:H[H[c+68>>2]+(d<<2)>>2];i=F[c+24|0];h=0;o=H[e+456>>2];g:{if(!o){break g}h:{i:{switch(H[c+28>>2]-1|0){case 0:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=F[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 1:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=I[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 2:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=G[f>>1];f=f+2|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 3:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=J[f>>1];f=f+2|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 4:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=H[f>>2];f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 5:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=H[f>>2];f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 6:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}g=H[f>>2];if(H[f+4>>2]){break g}H[o+(h<<2)>>2]=g;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 7:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}g=H[f>>2];if(H[f+4>>2]){break g}H[o+(h<<2)>>2]=g;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 8:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}x=o+(h<<2)|0;P=L[f>>2];j:{if(P=O(0)){k=~~P>>>0;break j}k=0}H[x>>2]=k;f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 9:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}x=o+(h<<2)|0;R=M[f>>3];k:{if(R<4294967296&R>=0){k=~~R>>>0;break k}k=0}H[x>>2]=k;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 10:break i;default:break g}}g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=I[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)>=(i|0)){break g}}ta(o+(g<<2)|0,0,i-g<<2)}sa((H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],d)<<2)|0,o,F[c+24|0]<<2);d=d+1|0;if((s|0)!=(d|0)){continue}break}f=H[e+456>>2]}if(!f){break c}qa(f)}j=j+1|0;d=H[a+4>>2];if(j>>>0>2]-d>>2>>>0){n=F[c+24|0]+n|0;f=H[a+28>>2];continue}break}c=H[a+72>>2];t=N(s,c);i=H[e+1688>>2]}d=0;l:{if((t|0)<=0){break l}a=t&1;m:{if((t|0)==1){f=0;break m}g=t&-2;f=0;t=0;while(1){o=f<<2;s=H[o+i>>2];if(s){s=Q(s);d=(s^31)<(d|0)?d:32-s|0}o=H[(o|4)+i>>2];if(o){o=Q(o);d=(o^31)<(d|0)?d:32-o|0}f=f+2|0;t=t+2|0;if((g|0)!=(t|0)){continue}break}}if(!a){break l}a=H[(f<<2)+i>>2];if(!a){break l}a=Q(a);d=(a^31)<(d|0)?d:32-a|0}n:{o:{switch(I[e+1695|0]){case 6:m=Yc(e+456|0,c);a=H[e+1668>>2];H[e+448>>2]=a;H[e+432>>2]=a;H[e+32>>2]=a;H[e+16>>2]=a;H[e+440>>2]=0;H[e+424>>2]=H[e+1664>>2];a=e+1664|0;H[e+444>>2]=a;c=H[e+444>>2];H[e+24>>2]=H[e+440>>2];H[e+28>>2]=c;H[e+428>>2]=a;H[e+1648>>2]=d;a=H[e+428>>2];H[e+8>>2]=H[e+424>>2];H[e+12>>2]=a;l=da-32|0;da=l;H[m>>2]=H[e+1648>>2];a=H[e+8>>2]-H[e+24>>2]|0;H[m+4>>2]=a;d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){a=m+4|0;wa(b,H[b+4>>2],m,a);d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){wa(b,H[b+4>>2],a,a+4|0)}a=H[a>>2]}if(a){U=m+12|0;ke(U);V=m+1068|0;a=V;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];W=m+1088|0;a=W;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];Y=m+1108|0;a=Y;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];H[l+24>>2]=H[e+32>>2];a=H[e+28>>2];H[l+16>>2]=H[e+24>>2];H[l+20>>2]=a;H[l+8>>2]=H[e+16>>2];a=H[e+12>>2];H[l>>2]=H[e+8>>2];H[l+4>>2]=a;d=0;h=0;j=da+-64|0;da=j;c=H[m+8>>2];H[j+48>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;if(c){if(c>>>0>=1073741824){break a}a=c<<2;d=ra(a);H[j+40>>2]=d;h=a+d|0;H[j+48>>2]=h;ta(d,0,a);H[j+44>>2]=h}a=H[m+1164>>2];f=H[a>>2];if(f){H[a+4>>2]=f;qa(f);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;c=H[m+8>>2];h=H[j+44>>2];d=H[j+40>>2]}H[a+4>>2]=h;H[a>>2]=d;H[a+8>>2]=H[j+48>>2];d=0;H[j+48>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;a=0;p:{if(c){if(c>>>0>=1073741824){break a}c=c<<2;a=ra(c);H[j+40>>2]=a;d=a+c|0;H[j+48>>2]=d;ta(a,0,c);H[j+44>>2]=d}c=H[m+1176>>2];f=H[c>>2];if(f){H[c+4>>2]=f;qa(f);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;d=H[j+44>>2];a=H[j+40>>2]}H[c+4>>2]=d;H[c>>2]=a;H[c+8>>2]=H[j+48>>2];g=H[l+4>>2];o=H[l+8>>2];t=H[l+20>>2];s=H[l+24>>2];d=H[l>>2];c=H[l+16>>2];H[j+56>>2]=0;H[j+60>>2]=0;H[j+48>>2]=0;H[j+52>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;gb(j+40|0);a=H[j+56>>2]+H[j+60>>2]|0;f=(a>>>0)/113|0;a=H[H[j+44>>2]+(f<<2)>>2]+N(a-N(f,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=d-c;H[a+24>>2]=0;H[a+12>>2]=d;H[a+4>>2]=t;H[a+8>>2]=s;H[a>>2]=c;H[a+16>>2]=g;H[a+20>>2]=o;a=H[j+60>>2];c=a+1|0;H[j+60>>2]=c;if(a>>>0<=c>>>0){_=m+1068|0;$=m+1108|0;B=t;x=s;aa=s&-4;Z=s&3;ba=s-1>>>0<3;while(1){n=H[j+44>>2];d=H[j+56>>2];h=c-1|0;a=d+h|0;f=(a>>>0)/113|0;a=H[n+(f<<2)>>2]+N(a-N(f,113)|0,36)|0;S=H[a+32>>2];i=H[a+12>>2];f=H[a>>2];H[j+60>>2]=h;a=H[j+48>>2];h=a-n|0;if(((h?N(h>>2,113)-1|0:0)-(c+d|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[j+48>>2]=H[j+48>>2]-4}H[l+16>>2]=f;H[l>>2]=i;a=H[m+1164>>2];d=H[m+1176>>2];H[j+32>>2]=H[l+24>>2];c=H[l+20>>2];H[j+24>>2]=H[l+16>>2];H[j+28>>2]=c;H[j+16>>2]=H[l+8>>2];c=H[l+4>>2];H[j+8>>2]=H[l>>2];H[j+12>>2]=c;T=N(S,12);u=a+T|0;c=u;D=d+T|0;a=D;n=0;q:{r:{s:{t:{p=H[j+8>>2];d=H[j+24>>2];v=p-d|0;if(v>>>0>=64){if(!H[m+8>>2]){d=0;break r}z=H[m+1140>>2];A=H[a>>2];E=H[m+1128>>2];if((d|0)!=(p|0)){break t}a=0;while(1){d=a<<2;c=d+E|0;H[c>>2]=0;h=d+z|0;d=H[m>>2]-H[d+A>>2]|0;H[h>>2]=d;if(d){d=H[c>>2];h=v-d|0;H[c>>2]=d>>>0>h>>>0?d:h}a=a+1|0;c=H[m+8>>2];if(a>>>0>>0){continue}break}break s}d=0;h=H[m+8>>2];if(h>>>0<2){break q}c=H[a>>2];a=h-1|0;n=a&3;q=0;u:{if(h-2>>>0<3){a=1;break u}p=a&-4;a=1;h=0;while(1){v=a+3|0;r=a+2|0;w=a+1|0;d=K[c+(d<<2)>>2]>K[c+(a<<2)>>2]?a:d;d=K[c+(d<<2)>>2]>K[c+(w<<2)>>2]?w:d;d=K[c+(d<<2)>>2]>K[c+(r<<2)>>2]?r:d;d=K[c+(d<<2)>>2]>K[c+(v<<2)>>2]?v:d;a=a+4|0;h=h+4|0;if((p|0)!=(h|0)){continue}break}}if(!n){break q}while(1){d=K[c+(d<<2)>>2]>K[c+(a<<2)>>2]?a:d;a=a+1|0;q=q+1|0;if((n|0)!=(q|0)){continue}break}break q}y=H[j+28>>2];C=H[c>>2];ca=v&1;h=d+1|0;ea=(p|0)!=(h|0);k=H[j+32>>2];fa=N(k,d)<<2;while(1){a=n<<2;q=a+E|0;H[q>>2]=0;c=H[m>>2]-H[a+A>>2]|0;H[a+z>>2]=c;if(c){r=H[a+C>>2]+(1<>2]|0;c=H[q>>2];if(ca){c=(r>>>0>K[w+fa>>2])+c|0;H[q>>2]=c;a=h}else{a=d}if(ea){while(1){c=(r>>>0>K[w+(N(a,k)<<2)>>2])+c|0;H[q>>2]=c;c=c+(r>>>0>K[w+(N(k,a+1|0)<<2)>>2])|0;H[q>>2]=c;a=a+2|0;if((p|0)!=(a|0)){continue}break}}a=v-c|0;H[q>>2]=a>>>0>>0?c:a}c=H[m+8>>2];n=n+1|0;if(c>>>0>n>>>0){continue}break}}if(!c){d=0;break r}n=H[m+1128>>2];q=H[m+1140>>2];v=c&1;v:{if((c|0)==1){a=0;c=0;d=0;break v}r=c&-2;a=0;c=0;d=0;h=0;while(1){p=a<<2;if(H[p+q>>2]){w=H[n+p>>2];p=w>>>0>c>>>0;c=p?w:c;d=p?a:d}w=a|1;p=w<<2;if(H[p+q>>2]){z=H[n+p>>2];p=z>>>0>c>>>0;c=p?z:c;d=p?w:d}a=a+2|0;h=h+2|0;if((r|0)!=(h|0)){continue}break}}if(!v){break r}h=a<<2;if(!H[h+q>>2]){break r}d=K[h+n>>2]>c>>>0?a:d}bc(m+1088|0,4,d)}c=d;n=c<<2;d=H[m>>2]-H[n+H[D>>2]>>2]|0;w:{x:{if(!d){break x}y:{z:{v=i-f|0;if(v>>>0<=2){i=H[m+1152>>2];H[i>>2]=c;d=1;a=H[m+8>>2];if(a>>>0>1){break z}break y}a=H[m+1164>>2];E=S+1|0;w=N(E,12);h=a+w|0;if((h|0)!=(u|0)){db(h,H[u>>2],H[u+4>>2]);a=H[m+1164>>2]}a=n+H[a+w>>2]|0;q=H[a>>2]+(1<>2]=q;a=f;A:{if((i|0)==(a|0)){break A}D=H[B+24>>2];d=f;a=i;if(!x){if(q>>>0>K[n+D>>2]){break A}while(1){a=a-1|0;if((d|0)==(a|0)){a=d;break A}if(q>>>0<=K[(n+H[g+24>>2]|0)+(N(a,o)<<2)>>2]){continue}d=d+1|0;if((d|0)!=(a|0)){continue}break}break A}while(1){u=D+(N(d,x)<<2)|0;if(q>>>0>K[u+n>>2]){d=d+1|0;if((d|0)!=(a|0)){continue}break A}while(1){a=a-1|0;if((d|0)==(a|0)){a=d;break A}p=H[g+24>>2]+(N(a,o)<<2)|0;if(q>>>0<=K[p+n>>2]){continue}break}z=0;h=0;A=0;if(!ba){while(1){r=h<<2;k=r+u|0;y=H[k>>2];C=k;k=p+r|0;H[C>>2]=H[k>>2];H[k>>2]=y;k=r|4;y=k+u|0;C=H[y>>2];k=p+k|0;H[y>>2]=H[k>>2];H[k>>2]=C;k=r|8;y=k+u|0;C=H[y>>2];k=p+k|0;H[y>>2]=H[k>>2];H[k>>2]=C;r=r|12;k=r+u|0;y=H[k>>2];r=p+r|0;H[k>>2]=H[r>>2];H[r>>2]=y;h=h+4|0;A=A+4|0;if((aa|0)!=(A|0)){continue}break}}if(Z){while(1){r=h<<2;A=r+u|0;k=H[A>>2];r=p+r|0;H[A>>2]=H[r>>2];H[r>>2]=k;h=h+1|0;z=z+1|0;if((Z|0)!=(z|0)){continue}break}}d=d+1|0;if((d|0)!=(a|0)){continue}break}}q=a-f|0;u=i-a|0;if((q|0)!=(u|0)){xc($,q>>>0>>0)}d=Q(v);p=d^31;h=v>>>1|0;B:{if(q>>>0>>0){if(!p){break B}v=h-q|0;d=1<<30-d;h=0;while(1){Fa((m+(h<<5)|0)+12|0,(d&v)!=0);d=d>>>1|0;h=h+1|0;if((p|0)!=(h|0)){continue}break}break B}if(!p){break B}v=h-u|0;d=1<<30-d;h=0;while(1){Fa((m+(h<<5)|0)+12|0,(d&v)!=0);d=d>>>1|0;h=h+1|0;if((p|0)!=(h|0)){continue}break}}k=n;d=H[m+1176>>2];h=d+T|0;n=H[h>>2];p=k+n|0;H[p>>2]=H[p>>2]+1;db(d+w|0,n,H[h+4>>2]);if((a|0)!=(f|0)){d=H[j+60>>2]+H[j+56>>2]|0;h=H[j+44>>2];n=H[j+48>>2]-h|0;if((d|0)==((n?N(n>>2,113)-1|0:0)|0)){gb(j+40|0);h=H[j+44>>2];d=H[j+56>>2]+H[j+60>>2]|0}n=h;h=(d>>>0)/113|0;d=H[n+(h<<2)>>2]+N(d-N(h,113)|0,36)|0;H[d+32>>2]=S;H[d+28>>2]=q;H[d+24>>2]=c;H[d+12>>2]=a;H[d+4>>2]=t;H[d+8>>2]=s;H[d>>2]=f;H[d+20>>2]=x;H[d+16>>2]=B;H[j+60>>2]=H[j+60>>2]+1}if((a|0)==(i|0)){break x}d=H[j+60>>2]+H[j+56>>2]|0;h=H[j+44>>2];f=H[j+48>>2]-h|0;if((d|0)==((f?N(f>>2,113)-1|0:0)|0)){gb(j+40|0);h=H[j+44>>2];d=H[j+56>>2]+H[j+60>>2]|0}f=(d>>>0)/113|0;d=H[(f<<2)+h>>2]+N(d-N(f,113)|0,36)|0;H[d+32>>2]=E;H[d+28>>2]=u;H[d+24>>2]=c;H[d+12>>2]=i;H[d+8>>2]=x;H[d+4>>2]=B;H[d>>2]=a;H[d+16>>2]=g;H[d+20>>2]=o;c=H[j+60>>2]+1|0;H[j+60>>2]=c;break w}while(1){c=(a-1|0)==(c|0)?0:c+1|0;H[i+(d<<2)>>2]=c;a=H[m+8>>2];d=d+1|0;if(a>>>0>d>>>0){continue}break}}h=0;d=a;if(!v){break x}while(1){C:{if(!d){d=0;break C}i=H[B+24>>2]+(N(H[B+4>>2],f+h|0)<<2)|0;c=0;while(1){d=H[H[m+1152>>2]+(c<<2)>>2]<<2;n=H[m>>2]-H[d+H[D>>2]>>2]|0;if(n){bc(_,n,H[d+i>>2]);a=H[m+8>>2]}d=a;c=c+1|0;if(a>>>0>c>>>0){continue}break}}h=h+1|0;if((v|0)!=(h|0)){continue}break}}c=H[j+60>>2]}if(c){continue}break}}H[j+60>>2]=0;f=H[j+48>>2];c=H[j+44>>2];a=f-c|0;if(a>>>0>=9){while(1){qa(H[c>>2]);c=H[j+44>>2]+4|0;H[j+44>>2]=c;f=H[j+48>>2];a=f-c|0;if(a>>>0>8){continue}break}}d=56;D:{switch((a>>>2|0)-1|0){case 1:d=113;case 0:H[j+56>>2]=d;break;default:break D}}E:{if((c|0)==(f|0)){break E}while(1){qa(H[c>>2]);c=c+4|0;if((f|0)!=(c|0)){continue}break}a=H[j+48>>2];d=H[j+44>>2];if((a|0)==(d|0)){break E}H[j+48>>2]=a+(((a-d|0)-4>>>2^-1)<<2)}a=H[j+40>>2];if(a){qa(a)}da=j- -64|0;break p}je(U,b);fb(V,b);fb(W,b);fb(Y,b)}da=l+32|0;Zc(m);break n;case 5:c=Yc(e+456|0,c);a=H[e+1668>>2];H[e+416>>2]=a;H[e+400>>2]=a;H[e- -64>>2]=a;H[e+48>>2]=a;H[e+408>>2]=0;H[e+392>>2]=H[e+1664>>2];a=e+1664|0;H[e+412>>2]=a;f=H[e+412>>2];H[e+56>>2]=H[e+408>>2];H[e+60>>2]=f;H[e+396>>2]=a;H[e+1648>>2]=d;a=H[e+396>>2];H[e+40>>2]=H[e+392>>2];H[e+44>>2]=a;a=re(c,e+56|0,e+40|0,e+1648|0,b);Zc(c);if(a){break n}break b;case 4:c=Yc(e+456|0,c);a=H[e+1668>>2];H[e+384>>2]=a;H[e+368>>2]=a;H[e+96>>2]=a;H[e+80>>2]=a;H[e+376>>2]=0;H[e+360>>2]=H[e+1664>>2];a=e+1664|0;H[e+380>>2]=a;f=H[e+380>>2];H[e+88>>2]=H[e+376>>2];H[e+92>>2]=f;H[e+364>>2]=a;H[e+1648>>2]=d;a=H[e+364>>2];H[e+72>>2]=H[e+360>>2];H[e+76>>2]=a;a=re(c,e+88|0,e+72|0,e+1648|0,b);Zc(c);if(a){break n}break b;case 3:c=qe(e+456|0,c);a=H[e+1668>>2];H[e+352>>2]=a;H[e+336>>2]=a;H[e+128>>2]=a;H[e+112>>2]=a;H[e+344>>2]=0;H[e+328>>2]=H[e+1664>>2];a=e+1664|0;H[e+348>>2]=a;f=H[e+348>>2];H[e+120>>2]=H[e+344>>2];H[e+124>>2]=f;H[e+332>>2]=a;H[e+1648>>2]=d;a=H[e+332>>2];H[e+104>>2]=H[e+328>>2];H[e+108>>2]=a;a=pe(c,e+120|0,e+104|0,e+1648|0,b);oe(c);if(a){break n}break b;case 2:c=qe(e+456|0,c);a=H[e+1668>>2];H[e+320>>2]=a;H[e+304>>2]=a;H[e+160>>2]=a;H[e+144>>2]=a;H[e+312>>2]=0;H[e+296>>2]=H[e+1664>>2];a=e+1664|0;H[e+316>>2]=a;f=H[e+316>>2];H[e+152>>2]=H[e+312>>2];H[e+156>>2]=f;H[e+300>>2]=a;H[e+1648>>2]=d;a=H[e+300>>2];H[e+136>>2]=H[e+296>>2];H[e+140>>2]=a;a=pe(c,e+152|0,e+136|0,e+1648|0,b);oe(c);if(a){break n}break b;case 1:c=ne(e+456|0,c);a=H[e+1668>>2];H[e+288>>2]=a;H[e+272>>2]=a;H[e+192>>2]=a;H[e+176>>2]=a;H[e+280>>2]=0;H[e+264>>2]=H[e+1664>>2];a=e+1664|0;H[e+284>>2]=a;f=H[e+284>>2];H[e+184>>2]=H[e+280>>2];H[e+188>>2]=f;H[e+268>>2]=a;H[e+1648>>2]=d;a=H[e+268>>2];H[e+168>>2]=H[e+264>>2];H[e+172>>2]=a;a=me(c,e+184|0,e+168|0,e+1648|0,b);le(c);if(a){break n}break b;case 0:break o;default:break b}}c=ne(e+456|0,c);a=H[e+1668>>2];H[e+256>>2]=a;H[e+240>>2]=a;H[e+224>>2]=a;H[e+208>>2]=a;H[e+248>>2]=0;H[e+232>>2]=H[e+1664>>2];a=e+1664|0;H[e+252>>2]=a;f=H[e+252>>2];H[e+216>>2]=H[e+248>>2];H[e+220>>2]=f;H[e+236>>2]=a;H[e+1648>>2]=d;a=H[e+236>>2];H[e+200>>2]=H[e+232>>2];H[e+204>>2]=a;a=me(c,e+216|0,e+200|0,e+1648|0,b);le(c);if(!a){break b}}u=1}a=H[e+1676>>2];if(a){H[e+1680>>2]=a;qa(a)}da=e+1696|0;return u|0}va();X()}function Ne(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,G=0,J=0,L=0,M=0;y=da-160|0;da=y;H[y+60>>2]=b;H[y+20>>2]=b;H[y+24>>2]=-1;g=y+16|0;H[g+112>>2]=0;H[g+116>>2]=0;i=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=i;H[g+124>>2]=i>>31;H[g+104>>2]=H[g+8>>2];t=da-48|0;da=t;if(d>>>0<=2){a:{d=d<<2;x=H[d+17308>>2];E=H[d+17296>>2];while(1){d=H[g+4>>2];b:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break b}i=Qa(g)}if((i|0)==32|i-9>>>0<5){continue}break}p=1;c:{d:{switch(i-43|0){case 0:case 2:break d;default:break c}}p=(i|0)==45?-1:1;d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break c}i=Qa(g)}e:{f:{while(1){if(F[h+1266|0]==(i|32)){g:{if(h>>>0>6){break g}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break g}i=Qa(g)}h=h+1|0;if((h|0)!=8){continue}break f}break}if((h|0)!=3){if((h|0)==8){break f}if(h>>>0<4){break e}if((h|0)==8){break f}}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(h>>>0<4){break f}d=(d|0)<0;while(1){if(!d){H[g+4>>2]=H[g+4>>2]-1}h=h-1|0;if(h>>>0>3){continue}break}}l=da-16|0;da=l;m=(B(O(O(p|0)*O(Z))),v(2));d=m&2147483647;h:{if(d-8388608>>>0<=2130706431){s=d<<25;i=(d>>>7|0)+1065353216|0;break h}s=m<<25;i=m>>>7|2147418112;if(d>>>0>=2139095040){break h}s=0;i=0;if(!d){break h}j=d;d=Q(d);Ta(l,j,0,0,0,d+81|0);j=H[l>>2];k=H[l+4>>2];s=H[l+8>>2];i=H[l+12>>2]^65536|16265-d<<16}H[t>>2]=j;H[t+4>>2]=k;H[t+8>>2]=s;H[t+12>>2]=m&-2147483648|i;da=l+16|0;j=H[t+8>>2];k=H[t+12>>2];l=H[t>>2];m=H[t+4>>2];break a}i:{j:{k:{if(h){break k}h=0;while(1){if(F[h+1546|0]!=(i|32)){break k}l:{if(h>>>0>1){break l}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break l}i=Qa(g)}h=h+1|0;if((h|0)!=3){continue}break}break j}m:{switch(h|0){case 0:n:{if((i|0)!=48){break n}d=H[g+4>>2];o:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break o}d=Qa(g)}if((d&-33)==88){f=da-432|0;da=f;d=H[g+4>>2];p:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0];break p}h=Qa(g)}q:{r:{while(1){if((h|0)!=48){s:{if((h|0)!=46){break q}d=H[g+4>>2];if((d|0)==H[g+104>>2]){break s}H[g+4>>2]=d+1;h=I[d|0];break r}}else{d=H[g+4>>2];if((d|0)!=H[g+104>>2]){w=1;H[g+4>>2]=d+1;h=I[d|0]}else{w=1;h=Qa(g)}continue}break}h=Qa(g)}e=1;if((h|0)!=48){break q}while(1){d=s;s=d-1|0;u=u-!d|0;d=H[g+4>>2];t:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0];break t}h=Qa(g)}if((h|0)==48){continue}break}w=1}m=1073676288;u:{while(1){v:{d=h|32;w:{x:{i=h-48|0;if(i>>>0<10){break x}if((h|0)!=46&d-97>>>0>=6){break u}if((h|0)!=46){break x}if(e){break v}e=1;s=j;u=k;break w}d=(h|0)>57?d-87|0:i;y:{if((k|0)<=0&j>>>0<=7|(k|0)<0){o=d+(o<<4)|0;break y}if(!k&j>>>0<=28){cb(f+48|0,d);Ha(f+32|0,C,D,l,m,0,0,0,1073414144);C=H[f+32>>2];D=H[f+36>>2];l=H[f+40>>2];m=H[f+44>>2];Ha(f+16|0,H[f+48>>2],H[f+52>>2],H[f+56>>2],H[f+60>>2],C,D,l,m);ab(f,H[f+16>>2],H[f+20>>2],H[f+24>>2],H[f+28>>2],n,r,z,A);z=H[f+8>>2];A=H[f+12>>2];n=H[f>>2];r=H[f+4>>2];break y}if(q|!d){break y}Ha(f+80|0,C,D,l,m,0,0,0,1073610752);ab(f- -64|0,H[f+80>>2],H[f+84>>2],H[f+88>>2],H[f+92>>2],n,r,z,A);z=H[f+72>>2];A=H[f+76>>2];q=1;n=H[f+64>>2];r=H[f+68>>2]}d=j+1|0;k=d?k:k+1|0;j=d;w=1}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0]}else{h=Qa(g)}continue}break}h=46}z:{if(!w){d=H[g+116>>2];if((d|0)>0|(d|0)>=0){A:{d=H[g+4>>2];H[g+4>>2]=d-1;H[g+4>>2]=d-2;if(!e){break A}H[g+4>>2]=d-3}}rb(f+96|0,+(p|0)*0);n=H[f+96>>2];r=H[f+100>>2];j=H[f+108>>2];d=H[f+104>>2];break z}if((k|0)<=0&j>>>0<=7|(k|0)<0){l=j;m=k;while(1){o=o<<4;d=l+1|0;m=d?m:m+1|0;l=d;if((d|0)!=8|m){continue}break}}B:{C:{D:{if((h&-33)==80){l=Oe(g);d=ea;m=d;if(l|(d|0)!=-2147483648){break B}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){break D}break C}l=0;m=0;if(H[g+116>>2]<0){break B}}H[g+4>>2]=H[g+4>>2]-1}l=0;m=0}if(!o){rb(f+112|0,+(p|0)*0);n=H[f+112>>2];r=H[f+116>>2];j=H[f+124>>2];d=H[f+120>>2];break z}d=e?s:j;k=(e?u:k)<<2|d>>>30;d=l+(d<<2)|0;h=k+m|0;h=d>>>0>>0?h+1|0:h;j=d-32|0;k=h-(d>>>0<32)|0;d=k;if(j>>>0>0-x>>>0&(d|0)>=0|(d|0)>0){H[4739]=68;cb(f+160|0,p);Ha(f+144|0,H[f+160>>2],H[f+164>>2],H[f+168>>2],H[f+172>>2],-1,-1,-1,2147418111);Ha(f+128|0,H[f+144>>2],H[f+148>>2],H[f+152>>2],H[f+156>>2],-1,-1,-1,2147418111);n=H[f+128>>2];r=H[f+132>>2];j=H[f+140>>2];d=H[f+136>>2];break z}d=x-226|0;i=d>>31;if((k|0)>=(i|0)&d>>>0<=j>>>0|(i|0)<(k|0)){if((o|0)>=0){while(1){ab(f+416|0,n,r,z,A,0,0,0,-1073807360);i=id(n,r,z,A,1073610752);d=(i|0)<0;ab(f+400|0,n,r,z,A,d?n:H[f+416>>2],d?r:H[f+420>>2],d?z:H[f+424>>2],d?A:H[f+428>>2]);d=j;j=d-1|0;k=k-!d|0;z=H[f+408>>2];A=H[f+412>>2];n=H[f+400>>2];r=H[f+404>>2];o=o<<1|(i|0)>=0;if((o|0)>=0){continue}break}}h=k-((x>>31)+(j>>>0>>0)|0)|0;d=(j-x|0)+32|0;h=d>>>0<32?h+1|0:h;i=d>>>0>>0&(h|0)<=0|(h|0)<0?(d|0)>0?d:0:E;E:{if((i|0)>=113){cb(f+384|0,p);s=H[f+392>>2];u=H[f+396>>2];C=H[f+384>>2];D=H[f+388>>2];k=0;d=0;break E}rb(f+352|0,jd(144-i|0));cb(f+336|0,p);C=H[f+336>>2];D=H[f+340>>2];s=H[f+344>>2];u=H[f+348>>2];Re(f+368|0,H[f+352>>2],H[f+356>>2],H[f+360>>2],H[f+364>>2],C,D,s,u);G=H[f+376>>2];J=H[f+380>>2];k=H[f+372>>2];d=H[f+368>>2]}i=!(o&1)&((Kb(n,r,z,A,0,0,0,0)|0)!=0&(i|0)<32);dc(f+320|0,i+o|0);Ha(f+304|0,C,D,s,u,H[f+320>>2],H[f+324>>2],H[f+328>>2],H[f+332>>2]);h=d;ab(f+272|0,H[f+304>>2],H[f+308>>2],H[f+312>>2],H[f+316>>2],d,k,G,J);d=i;Ha(f+288|0,C,D,s,u,d?0:n,d?0:r,d?0:z,d?0:A);ab(f+256|0,H[f+288>>2],H[f+292>>2],H[f+296>>2],H[f+300>>2],H[f+272>>2],H[f+276>>2],H[f+280>>2],H[f+284>>2]);hd(f+240|0,H[f+256>>2],H[f+260>>2],H[f+264>>2],H[f+268>>2],h,k,G,J);d=H[f+240>>2];i=H[f+244>>2];h=H[f+248>>2];k=H[f+252>>2];if(!Kb(d,i,h,k,0,0,0,0)){H[4739]=68}Qe(f+224|0,d,i,h,k,j);n=H[f+224>>2];r=H[f+228>>2];j=H[f+236>>2];d=H[f+232>>2];break z}H[4739]=68;cb(f+208|0,p);Ha(f+192|0,H[f+208>>2],H[f+212>>2],H[f+216>>2],H[f+220>>2],0,0,0,65536);Ha(f+176|0,H[f+192>>2],H[f+196>>2],H[f+200>>2],H[f+204>>2],0,0,0,65536);n=H[f+176>>2];r=H[f+180>>2];j=H[f+188>>2];d=H[f+184>>2]}H[t+16>>2]=n;H[t+20>>2]=r;H[t+24>>2]=d;H[t+28>>2]=j;da=f+432|0;j=H[t+24>>2];k=H[t+28>>2];l=H[t+16>>2];m=H[t+20>>2];break a}if(H[g+116>>2]<0){break n}H[g+4>>2]=H[g+4>>2]-1}f=p;h=0;p=0;e=da-8976|0;da=e;J=x+E|0;M=0-J|0;F:{G:{while(1){if((i|0)!=48){H:{if((i|0)!=46){break F}d=H[g+4>>2];if((d|0)==H[g+104>>2]){break H}H[g+4>>2]=d+1;i=I[d|0];break G}}else{d=H[g+4>>2];if((d|0)!=H[g+104>>2]){h=1;H[g+4>>2]=d+1;i=I[d|0]}else{h=1;i=Qa(g)}continue}break}i=Qa(g)}q=1;if((i|0)!=48){break F}while(1){d=j;j=d-1|0;k=k-!d|0;d=H[g+4>>2];I:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break I}i=Qa(g)}if((i|0)==48){continue}break}h=1}H[e+784>>2]=0;J:{K:{d=(i|0)==46;n=i-48|0;L:{M:{N:{if(!(!d&n>>>0>9)){while(1){O:{if(d&1){if(!q){j=l;k=m;q=1;break O}d=!h;break N}d=l+1|0;m=d?m:m+1|0;l=d;if((p|0)<=2044){G=(i|0)==48?G:l;d=(e+784|0)+(p<<2)|0;if(w){n=(N(H[d>>2],10)+i|0)-48|0}H[d>>2]=n;h=1;i=w+1|0;d=(i|0)==9;w=d?0:i;p=d+p|0;break O}if((i|0)==48){break O}H[e+8960>>2]=H[e+8960>>2]|1;G=18396}d=H[g+4>>2];P:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break P}i=Qa(g)}d=(i|0)==46;n=i-48|0;if(d|n>>>0<10){continue}break}}j=q?j:l;k=q?k:m;if(!(!h|(i&-33)!=69)){n=Oe(g);d=ea;r=d;Q:{if(n|(d|0)!=-2147483648){break Q}n=0;r=0;if(H[g+116>>2]<0){break Q}H[g+4>>2]=H[g+4>>2]-1}if(!h){break L}k=k+r|0;d=j+n|0;k=d>>>0>>0?k+1|0:k;j=d;break K}d=!h;if((i|0)<0){break M}}if(H[g+116>>2]<0){break M}H[g+4>>2]=H[g+4>>2]-1}if(!d){break K}}H[4739]=28;l=0;m=0;H[g+112>>2]=0;H[g+116>>2]=0;d=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=d;H[g+124>>2]=d>>31;H[g+104>>2]=H[g+8>>2];j=0;d=0;break J}d=H[e+784>>2];if(!d){rb(e,+(f|0)*0);l=H[e>>2];m=H[e+4>>2];j=H[e+12>>2];d=H[e+8>>2];break J}if(!(l>>>0>9&(m|0)>=0|(m|0)>0|((j|0)!=(l|0)|(k|0)!=(m|0))|(d>>>E|0?(E|0)<=30:0))){cb(e+48|0,f);dc(e+32|0,d);Ha(e+16|0,H[e+48>>2],H[e+52>>2],H[e+56>>2],H[e+60>>2],H[e+32>>2],H[e+36>>2],H[e+40>>2],H[e+44>>2]);l=H[e+16>>2];m=H[e+20>>2];j=H[e+28>>2];d=H[e+24>>2];break J}if(j>>>0>(x|0)/-2>>>0&(k|0)>=0|(k|0)>0){H[4739]=68;cb(e+96|0,f);Ha(e+80|0,H[e+96>>2],H[e+100>>2],H[e+104>>2],H[e+108>>2],-1,-1,-1,2147418111);Ha(e- -64|0,H[e+80>>2],H[e+84>>2],H[e+88>>2],H[e+92>>2],-1,-1,-1,2147418111);l=H[e+64>>2];m=H[e+68>>2];j=H[e+76>>2];d=H[e+72>>2];break J}d=x-226|0;i=j>>>0>>0;d=d>>31;if(i&(k|0)<=(d|0)|(d|0)>(k|0)){H[4739]=68;cb(e+144|0,f);Ha(e+128|0,H[e+144>>2],H[e+148>>2],H[e+152>>2],H[e+156>>2],0,0,0,65536);Ha(e+112|0,H[e+128>>2],H[e+132>>2],H[e+136>>2],H[e+140>>2],0,0,0,65536);l=H[e+112>>2];m=H[e+116>>2];j=H[e+124>>2];d=H[e+120>>2];break J}if(w){if((w|0)<=8){d=(e+784|0)+(p<<2)|0;o=H[d>>2];while(1){o=N(o,10);w=w+1|0;if((w|0)!=9){continue}break}H[d>>2]=o}p=p+1|0}R:{q=j;if((G|0)>(j|0)|(G|0)>=9|(j|0)>17){break R}if((q|0)==9){cb(e+192|0,f);dc(e+176|0,H[e+784>>2]);Ha(e+160|0,H[e+192>>2],H[e+196>>2],H[e+200>>2],H[e+204>>2],H[e+176>>2],H[e+180>>2],H[e+184>>2],H[e+188>>2]);l=H[e+160>>2];m=H[e+164>>2];j=H[e+172>>2];d=H[e+168>>2];break J}if((q|0)<=8){cb(e+272|0,f);dc(e+256|0,H[e+784>>2]);Ha(e+240|0,H[e+272>>2],H[e+276>>2],H[e+280>>2],H[e+284>>2],H[e+256>>2],H[e+260>>2],H[e+264>>2],H[e+268>>2]);cb(e+224|0,H[(0-q<<2)+17296>>2]);Fe(e+208|0,H[e+240>>2],H[e+244>>2],H[e+248>>2],H[e+252>>2],H[e+224>>2],H[e+228>>2],H[e+232>>2],H[e+236>>2]);l=H[e+208>>2];m=H[e+212>>2];j=H[e+220>>2];d=H[e+216>>2];break J}d=(N(q,-3)+E|0)+27|0;j=H[e+784>>2];if(j>>>d|0?(d|0)<=30:0){break R}cb(e+352|0,f);dc(e+336|0,j);Ha(e+320|0,H[e+352>>2],H[e+356>>2],H[e+360>>2],H[e+364>>2],H[e+336>>2],H[e+340>>2],H[e+344>>2],H[e+348>>2]);cb(e+304|0,H[(q<<2)+17224>>2]);Ha(e+288|0,H[e+320>>2],H[e+324>>2],H[e+328>>2],H[e+332>>2],H[e+304>>2],H[e+308>>2],H[e+312>>2],H[e+316>>2]);l=H[e+288>>2];m=H[e+292>>2];j=H[e+300>>2];d=H[e+296>>2];break J}while(1){i=p;p=i-1|0;if(!H[(e+784|0)+(p<<2)>>2]){continue}break}w=0;d=(q|0)%9|0;S:{if(!d){d=0;break S}j=(q|0)>=0?d:d+9|0;T:{if(!i){d=0;i=0;break T}h=H[(0-j<<2)+17296>>2];m=1e9/(h|0)|0;n=0;o=0;d=0;while(1){k=n;l=(e+784|0)+(o<<2)|0;p=H[l>>2];n=(p>>>0)/(h>>>0)|0;k=k+n|0;H[l>>2]=k;k=!k&(d|0)==(o|0);d=k?d+1&2047:d;q=k?q-9|0:q;n=N(m,p-N(h,n)|0);o=o+1|0;if((o|0)!=(i|0)){continue}break}if(!n){break T}H[(e+784|0)+(i<<2)>>2]=n;i=i+1|0}q=(q-j|0)+9|0}while(1){p=(e+784|0)+(d<<2)|0;U:{while(1){if(((q|0)!=36|K[p>>2]>=10384593)&(q|0)>=36){break U}h=i+2047|0;n=0;while(1){l=h&2047;g=(e+784|0)+(l<<2)|0;j=H[g>>2];m=j>>>3|0;k=j<<29;j=k+n|0;h=m;h=j>>>0>>0?h+1|0:h;k=h;if(!h&j>>>0<1000000001){n=0}else{h=j;n=zl(h,k,1e9,0);j=h-xl(n,ea,1e9,0)|0}H[g>>2]=j;i=(l|0)!=(i-1&2047)?i:(d|0)==(l|0)?i:j?i:l;h=l-1|0;if((d|0)!=(l|0)){continue}break}w=w-29|0;if(!n){continue}break}d=d-1&2047;if((i|0)==(d|0)){j=e+784|0;h=j+((i+2046&2047)<<2)|0;i=i-1&2047;H[h>>2]=H[h>>2]|H[j+(i<<2)>>2]}q=q+9|0;H[(e+784|0)+(d<<2)>>2]=n;continue}break}V:{W:while(1){j=i+1&2047;m=(e+784|0)+((i-1&2047)<<2)|0;while(1){k=(q|0)>45?9:1;X:{while(1){h=d;o=0;Y:{while(1){Z:{d=h+o&2047;if((d|0)==(i|0)){break Z}d=H[(e+784|0)+(d<<2)>>2];l=H[(o<<2)+17248>>2];if(d>>>0>>0){break Z}if(d>>>0>l>>>0){break Y}o=o+1|0;if((o|0)!=4){continue}}break}if((q|0)!=36){break Y}j=0;k=0;o=0;l=0;m=0;while(1){d=h+o&2047;if((d|0)==(i|0)){i=i+1&2047;H[(e+(i<<2)|0)+780>>2]=0}dc(e+768|0,H[(e+784|0)+(d<<2)>>2]);Ha(e+752|0,j,k,l,m,0,0,1342177280,1075633366);ab(e+736|0,H[e+752>>2],H[e+756>>2],H[e+760>>2],H[e+764>>2],H[e+768>>2],H[e+772>>2],H[e+776>>2],H[e+780>>2]);l=H[e+744>>2];m=H[e+748>>2];j=H[e+736>>2];k=H[e+740>>2];o=o+1|0;if((o|0)!=4){continue}break}cb(e+720|0,f);Ha(e+704|0,j,k,l,m,H[e+720>>2],H[e+724>>2],H[e+728>>2],H[e+732>>2]);l=H[e+712>>2];m=H[e+716>>2];j=0;k=0;n=H[e+704>>2];r=H[e+708>>2];g=w+113|0;p=g-x|0;q=(p|0)<(E|0);d=q?(p|0)>0?p:0:E;if((d|0)<=112){break X}break V}w=k+w|0;d=i;if((h|0)==(d|0)){continue}break}p=1e9>>>k|0;n=-1<>2];l=l+(o>>>k|0)|0;H[g>>2]=l;l=!l&(d|0)==(h|0);d=l?d+1&2047:d;q=l?q-9|0:q;o=N(p,n&o);h=h+1&2047;if((h|0)!=(i|0)){continue}break}if(!o){continue}if((d|0)!=(j|0)){H[(e+784|0)+(i<<2)>>2]=o;i=j;continue W}H[m>>2]=H[m>>2]|1;d=j;continue}break}break}rb(e+656|0,jd(225-d|0));Re(e+688|0,H[e+656>>2],H[e+660>>2],H[e+664>>2],H[e+668>>2],n,r,l,m);z=H[e+696>>2];A=H[e+700>>2];C=H[e+688>>2];D=H[e+692>>2];rb(e+640|0,jd(113-d|0));Pe(e+672|0,n,r,l,m,H[e+640>>2],H[e+644>>2],H[e+648>>2],H[e+652>>2]);j=H[e+672>>2];k=H[e+676>>2];s=H[e+680>>2];u=H[e+684>>2];hd(e+624|0,n,r,l,m,j,k,s,u);ab(e+608|0,C,D,z,A,H[e+624>>2],H[e+628>>2],H[e+632>>2],H[e+636>>2]);l=H[e+616>>2];m=H[e+620>>2];n=H[e+608>>2];r=H[e+612>>2]}x=h+4&2047;_:{if((x|0)==(i|0)){break _}x=H[(e+784|0)+(x<<2)>>2];$:{if(x>>>0<=499999999){if(!x&(h+5&2047)==(i|0)){break $}rb(e+496|0,+(f|0)*.25);ab(e+480|0,j,k,s,u,H[e+496>>2],H[e+500>>2],H[e+504>>2],H[e+508>>2]);s=H[e+488>>2];u=H[e+492>>2];j=H[e+480>>2];k=H[e+484>>2];break $}if((x|0)!=5e8){rb(e+592|0,+(f|0)*.75);ab(e+576|0,j,k,s,u,H[e+592>>2],H[e+596>>2],H[e+600>>2],H[e+604>>2]);s=H[e+584>>2];u=H[e+588>>2];j=H[e+576>>2];k=H[e+580>>2];break $}L=+(f|0);if((h+5&2047)==(i|0)){rb(e+528|0,L*.5);ab(e+512|0,j,k,s,u,H[e+528>>2],H[e+532>>2],H[e+536>>2],H[e+540>>2]);s=H[e+520>>2];u=H[e+524>>2];j=H[e+512>>2];k=H[e+516>>2];break $}rb(e+560|0,L*.75);ab(e+544|0,j,k,s,u,H[e+560>>2],H[e+564>>2],H[e+568>>2],H[e+572>>2]);s=H[e+552>>2];u=H[e+556>>2];j=H[e+544>>2];k=H[e+548>>2]}if((d|0)>111){break _}Pe(e+464|0,j,k,s,u,0,0,0,1073676288);if(Kb(H[e+464>>2],H[e+468>>2],H[e+472>>2],H[e+476>>2],0,0,0,0)){break _}ab(e+448|0,j,k,s,u,0,0,0,1073676288);s=H[e+456>>2];u=H[e+460>>2];j=H[e+448>>2];k=H[e+452>>2]}ab(e+432|0,n,r,l,m,j,k,s,u);hd(e+416|0,H[e+432>>2],H[e+436>>2],H[e+440>>2],H[e+444>>2],C,D,z,A);l=H[e+424>>2];m=H[e+428>>2];n=H[e+416>>2];r=H[e+420>>2];aa:{if((-2-J|0)>=(g&2147483647)){break aa}H[e+408>>2]=l;H[e+412>>2]=m&2147483647;H[e+400>>2]=n;H[e+404>>2]=r;Ha(e+384|0,n,r,l,m,0,0,0,1073610752);f=H[e+400>>2];x=H[e+404>>2];g=H[e+408>>2];o=H[e+412>>2];i=id(f,x,g,o,1081081856);h=(i|0)<0;l=h?l:H[e+392>>2];m=h?m:H[e+396>>2];n=h?n:H[e+384>>2];r=h?r:H[e+388>>2];w=((i|0)>=0)+w|0;if((w+110|0)<=(M|0)){if((((id(f,x,g,o,1081081856)|0)<0?q:q&(d|0)!=(p|0))|0)!=1){break aa}if(!Kb(j,k,s,u,0,0,0,0)){break aa}}H[4739]=68}Qe(e+368|0,n,r,l,m,w);l=H[e+368>>2];m=H[e+372>>2];j=H[e+380>>2];d=H[e+376>>2]}H[t+40>>2]=d;H[t+44>>2]=j;H[t+32>>2]=l;H[t+36>>2]=m;da=e+8976|0;j=H[t+40>>2];k=H[t+44>>2];l=H[t+32>>2];m=H[t+36>>2];break a;case 3:break j;default:break m}}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}H[4739]=28;break i}ba:{d=H[g+4>>2];ca:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break ca}d=Qa(g)}if((d|0)==40){h=1;break ba}k=2147450880;if(H[g+116>>2]<0){break a}H[g+4>>2]=H[g+4>>2]-1;break a}while(1){da:{d=H[g+4>>2];ea:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break ea}d=Qa(g)}if(!(d-48>>>0<10|d-65>>>0<26|(d|0)==95)){if(d-97>>>0>=26){break da}}h=h+1|0;continue}break}k=2147450880;if((d|0)==41){break a}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(!h){break a}while(1){h=h-1|0;if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(h){continue}break}break a}H[g+112>>2]=0;H[g+116>>2]=0;d=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=d;H[g+124>>2]=d>>31;H[g+104>>2]=H[g+8>>2]}}H[y>>2]=l;H[y+4>>2]=m;H[y+8>>2]=j;H[y+12>>2]=k;da=t+48|0;d=H[y+8>>2];j=H[y+12>>2];i=H[y>>2];h=H[y+4>>2];if(c){H[c>>2]=((H[y+20>>2]+H[y+136>>2]|0)-H[y+60>>2]|0)+b}H[a+8>>2]=d;H[a+12>>2]=j;H[a>>2]=i;H[a+4>>2]=h;da=y+160|0}function Zk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ia=0;h=da-224|0;da=h;H[a+8>>2]=e;g=a+32|0;l=H[g>>2];f=H[a+36>>2]-l>>2;a:{if(f>>>0>>0){Ea(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=l+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;k=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;d=f;while(1){l=(i<<2)+b|0;g=H[l+4>>2];l=H[l>>2];u=(l|0)<(d|0);d=u?l:d;m=(d|0)>(g|0);d=m?g:d;f=u?f:(f|0)<(l|0)?l:f;f=m?f:(f|0)<(g|0)?g:f;i=i+2|0;j=j+2|0;if((n|0)!=(j|0)){continue}break}}if(!k){break c}g=H[(i<<2)+b>>2];l=(g|0)<(d|0);d=l?g:d;f=l?f:(f|0)<(g|0)?g:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}d=d+1|0;H[a+20>>2]=d;f=d>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}_=H[a+52>>2];v=H[a+48>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;e:{if(!e){f=0;d=0;break e}Ea(h+144|0,e);f=H[h+156>>2];d=H[h+160>>2]}d=d-f>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}H[h+160>>2]=(e<<2)+f;break f}Ea(h+144|12,e-d|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}H[h+172>>2]=f+(e<<2);break g}Ea(h+168|0,e-d|0)}h:{i:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;j:{k:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break k}d=1;break j}Ea(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break i}d=e<<2;f=ra(d);H[h+128>>2]=f;g=d+f|0;H[h+136>>2]=g;ta(f,0,d);H[h+132>>2]=g;d=0}J=a+152|0;g=H[a+152>>2];f=H[a+156>>2]-g>>2;l:{if(f>>>0>>0){Ea(J,e-f|0);break l}if(e>>>0>=f>>>0){break l}H[a+156>>2]=g+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;r=ra(d);y=ta(r,0,d)+d|0}f=H[a+56>>2];d=H[f>>2];f=H[f+4>>2]-d|0;if((f|0)<5){break h}E=f>>>2|0;g=E-1|0;if(g>>>0>2>>>0){K=a+112|0;$=h+125|0;aa=h+36|0;ba=h+24|0;S=e<<2;L=y-r|0;V=L&-4;B=L>>2;M=e&-2;O=e&1;ca=e&-4;W=e&3;G=e-1|0;while(1){u=g;j=H[(g<<2)+d>>2];d=(j>>>0)%3|0;l=0;m:{if((j|0)==-1){break m}g=0;f=j+2|0;w=(d|0)!=0|(f|0)!=-1;k=1;q=d?j-1|0:f;p=1<>>5|0;z=H[v>>2];d=j;while(1){n:{if(H[z+(d>>>3&536870908)>>2]>>>d&1){break n}f=H[H[H[v+64>>2]+12>>2]+(d<<2)>>2];if((f|0)==-1){break n}i=H[_>>2];l=H[v+28>>2];n=H[i+(H[l+(f<<2)>>2]<<2)>>2];if((n|0)>=(u|0)){break n}m=f+1|0;m=H[i+(H[l+(((m>>>0)%3|0?m:f-2|0)<<2)>>2]<<2)>>2];if((m|0)>=(u|0)){break n}f=H[i+(H[l+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(u|0)){break n}o:{if(!e){break o}l=H[(h+144|0)+N(g,12)>>2];i=N(e,f);m=N(e,m);n=N(e,n);f=0;x=0;if(G){while(1){H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+m<<2)+b>>2]|0)-H[(f+n<<2)+b>>2];o=f|1;H[l+(o<<2)>>2]=(H[(i+o<<2)+b>>2]+H[(m+o<<2)+b>>2]|0)-H[(n+o<<2)+b>>2];f=f+2|0;x=x+2|0;if((M|0)!=(x|0)){continue}break}}if(!O){break o}H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+m<<2)+b>>2]|0)-H[(f+n<<2)+b>>2]}l=4;g=g+1|0;if((g|0)==4){break m}}p:{if(k&1){l=d-2|0;f=d+1|0;d=-1;f=(f>>>0)%3|0?f:l;if((f|0)==-1|H[H[v>>2]+(f>>>3&536870908)>>2]>>>f&1){break p}f=H[H[H[v+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break p}d=f+1|0;d=(d>>>0)%3|0?d:f-2|0;break p}q:{if((d>>>0)%3|0){f=d-1|0;break q}f=d+2|0;d=-1;if((f|0)==-1){break p}}d=-1;if(H[H[v>>2]+(f>>>3&536870908)>>2]>>>f&1){break p}f=H[H[H[v+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break p}if((f>>>0)%3|0){d=f-1|0;break p}d=f+2|0}if((d|0)==(j|0)){l=g;break m}if(!((k^1)&1|(d|0)!=-1)){if(!w){l=g;break m}if(p&H[H[v>>2]+(C<<2)>>2]){l=g;break m}d=H[H[H[v+64>>2]+12>>2]+(q<<2)>>2];if((d|0)==-1){l=g;break m}k=0;d=(d>>>0)%3|0?d-1|0:d+2|0}l=g;if((d|0)!=-1){continue}break}}g=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Y=N(e,u)<<2;C=Y+b|0;m=(N(E-2|0,e)<<2)+b|0;i=H[a+152>>2];d=0;if(e){while(1){j=g<<2;f=H[j+m>>2]-H[j+C>>2]|0;H[j+r>>2]=f;H[i+j>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;j=d;d=f>>31;d=j+(d+f^d)|0;g=g+1|0;if((g|0)!=(e|0)){continue}break}}f=h+200|0;Fb(f,K,i,e);g=Eb(f);j=ea;n=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;i=f<<3;k=i;f=g+i|0;i=(g>>31)+(i>>31)|0;i=f>>>0>>0?i+1|0:i;k=f;g=n+f|0;f=i+j|0;f=g>>>0>>0?f+1|0:f;j=g;Q=(l|0)>0;r:{if(!Q){z=l-1|0;break r}z=l-1|0;k=z<<3;g=k+(h+48|0)|0;n=g;i=l+H[g>>2]|0;g=H[g+4>>2];g=i>>>0>>0?g+1|0:g;H[n>>2]=i;H[n+4>>2]=g;t=U(Gb(i,H[k+(h+80|0)>>2])*(+(i>>>0)+ +(g|0)*4294967296));s:{if(P(t)<0x8000000000000000){i=P(t)>=1?~~(t>0?R(T(t*2.3283064365386963e-10),4294967295):U((t-+(~~t>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~t>>>0;break s}i=-2147483648;g=0}g=g+j|0;j=g}x=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=j;H[h+12>>2]=d;db(ba,m,m+S|0);Vc(aa,r,y);d=z<<3;n=d+(h+80|0)|0;fa=h+200|0;t:{u:{v:{w:{if((l|0)>0){f=h+124|0;o=f+l|0;q=o-2|0;m=o-1|0;ga=!l|(m|0)==(f|0);Z=d+(h+48|0)|0;w=1;while(1){x=x+1|0;if((l|0)>0){ta(h+124|0,1,l)}ta(h+124|0,0,x);x:{y:while(1){if(e){ta(H[h+128>>2],0,S)}A=0;k=0;if((l|0)>0){while(1){if(!I[(h+124|0)+k|0]){z:{if(!e){break z}d=H[h+128>>2];g=H[(h+144|0)+N(k,12)>>2];i=0;f=0;j=0;if(G>>>0>2){while(1){p=f<<2;s=p+d|0;H[s>>2]=H[s>>2]+H[g+p>>2];s=p|4;D=s+d|0;H[D>>2]=H[D>>2]+H[g+s>>2];s=p|8;D=s+d|0;H[D>>2]=H[D>>2]+H[g+s>>2];p=p|12;s=p+d|0;H[s>>2]=H[s>>2]+H[g+p>>2];f=f+4|0;j=j+4|0;if((ca|0)!=(j|0)){continue}break}}if(!W){break z}while(1){j=f<<2;p=j+d|0;H[p>>2]=H[p>>2]+H[g+j>>2];f=f+1|0;i=i+1|0;if((W|0)!=(i|0)){continue}break}}A=1<>2];A:{B:{C:{if(e){f=0;d=0;if(G){break C}break B}j=H[a+152>>2];i=0;break A}while(1){j=f<<2;i=j+g|0;H[i>>2]=H[i>>2]/(w|0);j=(j|4)+g|0;H[j>>2]=H[j>>2]/(w|0);f=f+2|0;d=d+2|0;if((M|0)!=(d|0)){continue}break}}if(O){d=(f<<2)+g|0;H[d>>2]=H[d>>2]/(w|0)}j=H[a+152>>2];g=H[h+128>>2];d=0;i=0;if(!e){break A}while(1){k=d<<2;f=H[k+g>>2]-H[k+C>>2]|0;H[k+r>>2]=f;H[j+k>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;k=f;f=f>>31;i=(k+f^f)+i|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=h+200|0;Fb(d,K,j,e);f=Eb(d);k=f;f=H[d+12>>2];d=H[d+16>>2];f=(((f-d|0)+1|0)/64|0)+d<<3;j=d<<3;d=f+j|0;d=k+d|0;f=d;if(Q){d=H[Z+4>>2];j=H[Z>>2];t=U(Gb(j,H[n>>2]+w|0)*(+(j>>>0)+ +(d|0)*4294967296));D:{if(P(t)<0x8000000000000000){d=~~t>>>0;break D}d=0}f=d+f|0}d=H[h+8>>2];if(!((d|0)<=(f|0)&((d|0)<(f|0)|(i|0)>=H[h+12>>2]))){H[h+20>>2]=w;F[h+16|0]=A;H[h+8>>2]=f;H[h+12>>2]=i;j=H[h+132>>2];k=j-g|0;i=k>>2;d=H[h+32>>2];f=H[h+24>>2];E:{if(i>>>0<=d-f>>2>>>0){k=H[h+28>>2]-f|0;d=k+g|0;p=k>>2;A=p>>>0>>0?d:j;k=A-g|0;if(k){xa(f,g,k)}if(i>>>0>p>>>0){f=H[h+28>>2];if((j|0)==(A|0)){break E}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}break E}f=f+k|0;break E}if(f){H[h+28>>2]=f;qa(f);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;d=0}if((k|0)<0){break w}f=d>>1;d=d>>>0<2147483644?f>>>0>>0?i:f:1073741823;if(d>>>0>=1073741824){break w}d=d<<2;f=ra(d);H[h+24>>2]=f;H[h+28>>2]=f;H[h+32>>2]=d+f;if((g|0)==(j|0)){break E}d=k&-4;f=sa(f,g,d)+d|0}H[h+28>>2]=f;d=H[h+44>>2];f=H[h+36>>2];F:{if(d-f>>2>>>0>=B>>>0){g=H[h+40>>2]-f|0;d=g+r|0;j=g>>2;i=j>>>0>>0?d:y;g=i-r|0;if(g){xa(f,r,g)}if(j>>>0>>0){f=H[h+40>>2];if((i|0)==(y|0)){break F}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((y|0)!=(d|0)){continue}break}break F}f=f+g|0;break F}if(f){H[h+40>>2]=f;qa(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;d=0}if((L|0)<0){break v}f=d>>1;d=d>>>0<2147483644?f>>>0>>0?B:f:1073741823;if(d>>>0>=1073741824){break v}d=d<<2;f=ra(d);H[h+36>>2]=f;H[h+44>>2]=d+f;if((r|0)==(y|0)){break F}f=sa(f,r,V)+V|0}H[h+40>>2]=f}if(ga){break x}g=-1;j=I[m|0];f=j;while(1){i=f&255;d=g-1|0;k=d+o|0;f=I[k|0];if(i>>>0>f>>>0){i=m;d=o;if((j&255)>>>0<=f>>>0){while(1){j=i;i=i-1|0;p=d-2|0;d=j;if(I[p|0]<=f>>>0){continue}break}j=1}d=g+o|0;F[k|0]=j;F[i|0]=f;f=m;if((g|0)==-1){continue y}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}continue y}g=d;if((k|0)!=(h+124|0)){continue}break}break}if(m>>>0<=h+124>>>0){break x}d=I[h+124|0];F[h+124|0]=j;F[m|0]=d;d=$;f=q;if(d>>>0>=f>>>0){break x}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}}w=w+1|0;if((l|0)!=(x|0)){continue}break}}if(Q){f=H[h+20>>2];g=f;d=f+H[n>>2]|0;f=H[n+4>>2]+(f>>31)|0;H[n>>2]=d;H[n+4>>2]=d>>>0>>0?f+1|0:f}d=H[J>>2];if(!e){break t}g=H[h+36>>2];f=0;j=0;if(!G){break u}while(1){m=f<<2;i=H[m+g>>2];H[d+m>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;m=m|4;i=H[m+g>>2];H[d+m>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;f=f+2|0;j=j+2|0;if((M|0)!=(j|0)){continue}break}break u}va();X()}va();X()}if(O){j=g;g=f<<2;f=H[j+g>>2];H[d+g>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1}d=H[J>>2]}Oc(fa,K,d,e);G:{if((l|0)<=0){break G}i=N(z,12)+a|0;j=i- -64|0;d=0;while(1){H:{g=H[i+68>>2];m=g<<5;f=H[j>>2];I:{if(!(I[h+16|0]>>>d&1)){J:{K:{if((f|0)!=(m|0)){break K}if((f+1|0)<0){break H}L:{if(f>>>0<=1073741822){m=f+32&-32;g=g<<6;g=g>>>0>>0?m:g;if(g>>>0<=f>>>0){break K}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break L}La();X()}g=-1;if(f>>>0>2147483646){break J}g=2147483647}k=(g-1>>>5|0)+1|0;g=ra(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=g;m=H[i+60>>2];M:{N:{if(f>>>0>=33){H[g+(f-1>>>3&536870908)>>2]=0;break N}H[g>>2]=0;if(!f){break M}}o=f>>>5|0;n=o<<2;q=xa(g,m,n);o=f-(o<<5)|0;if((o|0)<=0){break M}q=n+q|0;o=-1>>>32-o|0;H[q>>2]=H[q>>2]&(o^-1)|o&H[m+n>>2]}H[i+60>>2]=g;H[j>>2]=f;H[i+68>>2]=k;if(!m){break K}qa(m);f=H[j>>2]}g=f}H[j>>2]=g+1;f=H[i+60>>2]+(g>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0<=1073741822){m=f+32&-32;g=g<<6;g=g>>>0>>0?m:g;if(g>>>0<=f>>>0){break P}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break Q}La();X()}g=-1;if(f>>>0>2147483646){break O}g=2147483647}k=(g-1>>>5|0)+1|0;g=ra(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=g;m=H[i+60>>2];R:{S:{if(f>>>0>=33){H[g+(f-1>>>3&536870908)>>2]=0;break S}H[g>>2]=0;if(!f){break R}}o=f>>>5|0;n=o<<2;q=xa(g,m,n);o=f-(o<<5)|0;if((o|0)<=0){break R}q=n+q|0;o=-1>>>32-o|0;H[q>>2]=H[q>>2]&(o^-1)|o&H[m+n>>2]}H[i+60>>2]=g;H[j>>2]=f;H[i+68>>2]=k;if(!m){break P}qa(m);f=H[j>>2]}g=f}H[j>>2]=g+1;f=H[i+60>>2]+(g>>>3&536870908)|0;m=H[f>>2];ha=f,ia=Bl(g)&m,H[ha>>2]=ia}d=d+1|0;if((l|0)!=(d|0)){continue}break G}break}La();X()}k=H[h+24>>2];d=H[a+8>>2];if((d|0)>0){m=c+Y|0;g=0;j=k;while(1){l=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;i=H[d+j>>2];n=H[a+16>>2];T:{if((i|0)>(n|0)){H[d+l>>2]=n;break T}d=d+l|0;n=H[a+12>>2];if((n|0)>(i|0)){H[d>>2]=n;break T}H[d>>2]=i}f=f+1|0;if((f|0)>2]){continue}break}}f=g<<2;d=f+m|0;f=H[f+C>>2]-H[f+l>>2]|0;H[d>>2]=f;U:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break U}f=f-H[a+20>>2]|0}H[d>>2]=f}j=l;d=H[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}}d=H[h+36>>2];if(d){H[h+40>>2]=d;qa(d);k=H[h+24>>2]}if(k){H[h+28>>2]=k;qa(k)}if((E|0)<3){break h}E=u;f=H[a+56>>2];d=H[f>>2];g=u-1|0;if(g>>>0>2]-d>>2>>>0){continue}break}}ua();X()}va();X()}j=H[h+144>>2];if(e){ta(j,0,e<<2);j=H[h+144>>2]}d=H[a+8>>2];if((d|0)>0){g=0;while(1){e=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;l=H[d+j>>2];i=H[a+16>>2];V:{if((l|0)>(i|0)){H[d+e>>2]=i;break V}d=d+e|0;i=H[a+12>>2];if((i|0)>(l|0)){H[d>>2]=i;break V}H[d>>2]=l}f=f+1|0;if((f|0)>2]){continue}break}}f=g<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;W:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break W}f=f-H[a+20>>2]|0}H[d>>2]=f}j=e;d=H[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}}if(r){qa(r)}a=H[h+128>>2];if(a){H[h+132>>2]=a;qa(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;qa(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;qa(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;qa(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;qa(a)}da=h+224|0;return 1}function Pk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ia=0;h=da-224|0;da=h;H[a+8>>2]=e;g=a+32|0;l=H[g>>2];f=H[a+36>>2]-l>>2;a:{if(f>>>0>>0){Ea(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=l+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;o=g&1;d:{if((d|0)==2){d=f;break d}m=g&-2;d=f;while(1){l=(i<<2)+b|0;g=H[l+4>>2];l=H[l>>2];v=(l|0)<(d|0);d=v?l:d;k=(d|0)>(g|0);d=k?g:d;f=v?f:(f|0)<(l|0)?l:f;f=k?f:(f|0)<(g|0)?g:f;i=i+2|0;j=j+2|0;if((m|0)!=(j|0)){continue}break}}if(!o){break c}g=H[(i<<2)+b>>2];l=(g|0)<(d|0);d=l?g:d;f=l?f:(f|0)<(g|0)?g:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}d=d+1|0;H[a+20>>2]=d;f=d>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}_=H[a+52>>2];Q=H[a+48>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;e:{if(!e){f=0;d=0;break e}Ea(h+144|0,e);f=H[h+156>>2];d=H[h+160>>2]}d=d-f>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}H[h+160>>2]=(e<<2)+f;break f}Ea(h+144|12,e-d|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}H[h+172>>2]=f+(e<<2);break g}Ea(h+168|0,e-d|0)}h:{i:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;j:{k:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break k}d=1;break j}Ea(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break i}d=e<<2;f=ra(d);H[h+128>>2]=f;g=d+f|0;H[h+136>>2]=g;ta(f,0,d);H[h+132>>2]=g;d=0}E=a+152|0;g=H[a+152>>2];f=H[a+156>>2]-g>>2;l:{if(f>>>0>>0){Ea(E,e-f|0);break l}if(e>>>0>=f>>>0){break l}H[a+156>>2]=g+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;s=ra(d);x=ta(s,0,d)+d|0}f=H[a+56>>2];d=H[f>>2];f=H[f+4>>2]-d|0;if((f|0)<5){break h}B=f>>>2|0;g=B-1|0;if(g>>>0>2>>>0){G=a+112|0;$=h+125|0;aa=h+36|0;ba=h+24|0;S=e<<2;J=x-s|0;V=J&-4;z=J>>2;K=e&-2;L=e&1;ca=e&-4;W=e&3;C=e-1|0;while(1){v=g;j=H[(g<<2)+d>>2];d=(j>>>0)%3|0;l=0;m:{if((j|0)==-1){break m}g=0;f=j+2|0;p=(d|0)!=0|(f|0)!=-1;k=H[Q+12>>2];r=k+((d?j-1|0:f)<<2)|0;q=1;d=j;while(1){f=H[k+(d<<2)>>2];n:{if((f|0)==-1){break n}i=-1;o=H[_>>2];l=H[Q>>2];m=o+(H[l+(f<<2)>>2]<<2)|0;n=f+1|0;n=(n>>>0)%3|0?n:f-2|0;if((n|0)!=-1){i=H[l+(n<<2)>>2]}m=H[m>>2];o:{p:{if((f>>>0)%3|0){f=f-1|0;break p}f=f+2|0;n=-1;if((f|0)==-1){break o}}n=H[l+(f<<2)>>2]}if((m|0)>=(v|0)){break n}f=H[o+(i<<2)>>2];if((f|0)>=(v|0)){break n}i=H[o+(n<<2)>>2];if((i|0)>=(v|0)){break n}l=H[(h+144|0)+N(g,12)>>2];q:{if(!e){break q}i=N(e,i);o=N(e,f);m=N(e,m);f=0;w=0;if(C){while(1){H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+o<<2)+b>>2]|0)-H[(f+m<<2)+b>>2];n=f|1;H[l+(n<<2)>>2]=(H[(i+n<<2)+b>>2]+H[(o+n<<2)+b>>2]|0)-H[(m+n<<2)+b>>2];f=f+2|0;w=w+2|0;if((K|0)!=(w|0)){continue}break}}if(!L){break q}H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+o<<2)+b>>2]|0)-H[(f+m<<2)+b>>2]}l=4;g=g+1|0;if((g|0)==4){break m}}r:{if(q&1){f=d+1|0;d=(f>>>0)%3|0?f:d-2|0;i=-1;if((d|0)==-1){break r}d=H[k+(d<<2)>>2];i=-1;if((d|0)==-1){break r}f=d+1|0;i=(f>>>0)%3|0?f:d-2|0;break r}s:{if((d>>>0)%3|0){f=d-1|0;break s}f=d+2|0;i=-1;if((f|0)==-1){break r}}d=H[k+(f<<2)>>2];i=-1;if((d|0)==-1){break r}i=d-1|0;if((d>>>0)%3|0){break r}i=d+2|0}d=i;if((j|0)==(d|0)){l=g;break m}if(!((q^1)&1|(d|0)!=-1)){if(!p){l=g;break m}d=H[r>>2];if((d|0)==-1){l=g;break m}q=0;d=(d>>>0)%3|0?d-1|0:d+2|0}l=g;if((d|0)!=-1){continue}break}}g=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Y=N(e,v)<<2;M=Y+b|0;j=(N(B-2|0,e)<<2)+b|0;k=H[a+152>>2];d=0;if(e){while(1){i=g<<2;f=H[i+j>>2]-H[i+M>>2]|0;H[i+s>>2]=f;H[i+k>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;i=d;d=f>>31;d=i+(d+f^d)|0;g=g+1|0;if((g|0)!=(e|0)){continue}break}}f=h+200|0;Fb(f,G,k,e);g=Eb(f);k=ea;m=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;i=f<<3;o=i;f=g+i|0;i=(g>>31)+(i>>31)|0;i=f>>>0>>0?i+1|0:i;o=f;g=m+f|0;f=i+k|0;f=g>>>0>>0?f+1|0:f;i=g;O=(l|0)>0;t:{if(!O){D=l-1|0;break t}D=l-1|0;o=D<<3;g=o+(h+48|0)|0;m=g;k=l+H[g>>2]|0;g=H[g+4>>2];g=k>>>0>>0?g+1|0:g;H[m>>2]=k;H[m+4>>2]=g;u=U(Gb(k,H[o+(h+80|0)>>2])*(+(k>>>0)+ +(g|0)*4294967296));u:{if(P(u)<0x8000000000000000){k=P(u)>=1?~~(u>0?R(T(u*2.3283064365386963e-10),4294967295):U((u-+(~~u>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~u>>>0;break u}k=-2147483648;g=0}g=g+i|0;i=g}w=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=i;H[h+12>>2]=d;db(ba,j,j+S|0);Vc(aa,s,x);d=D<<3;o=d+(h+80|0)|0;fa=h+200|0;v:{w:{x:{y:{if((l|0)>0){f=h+124|0;m=f+l|0;n=m-2|0;k=m-1|0;ga=!l|(k|0)==(f|0);Z=d+(h+48|0)|0;q=1;while(1){w=w+1|0;if((l|0)>0){ta(h+124|0,1,l)}ta(h+124|0,0,w);z:{A:while(1){if(e){ta(H[h+128>>2],0,S)}y=0;g=0;if((l|0)>0){while(1){if(!I[(h+124|0)+g|0]){B:{if(!e){break B}d=H[h+128>>2];p=H[(h+144|0)+N(g,12)>>2];i=0;f=0;j=0;if(C>>>0>2){while(1){r=f<<2;t=r+d|0;H[t>>2]=H[t>>2]+H[p+r>>2];t=r|4;A=t+d|0;H[A>>2]=H[A>>2]+H[p+t>>2];t=r|8;A=t+d|0;H[A>>2]=H[A>>2]+H[p+t>>2];r=r|12;t=r+d|0;H[t>>2]=H[t>>2]+H[p+r>>2];f=f+4|0;j=j+4|0;if((ca|0)!=(j|0)){continue}break}}if(!W){break B}while(1){j=f<<2;r=j+d|0;H[r>>2]=H[r>>2]+H[j+p>>2];f=f+1|0;i=i+1|0;if((W|0)!=(i|0)){continue}break}}y=1<>2];C:{D:{E:{if(e){f=0;d=0;if(C){break E}break D}j=H[a+152>>2];i=0;break C}while(1){i=f<<2;j=i+g|0;H[j>>2]=H[j>>2]/(q|0);i=(i|4)+g|0;H[i>>2]=H[i>>2]/(q|0);f=f+2|0;d=d+2|0;if((K|0)!=(d|0)){continue}break}}if(L){d=(f<<2)+g|0;H[d>>2]=H[d>>2]/(q|0)}j=H[a+152>>2];g=H[h+128>>2];d=0;i=0;if(!e){break C}while(1){p=d<<2;f=H[p+g>>2]-H[p+M>>2]|0;H[p+s>>2]=f;H[j+p>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;p=f;f=f>>31;i=(p+f^f)+i|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=h+200|0;Fb(d,G,j,e);f=Eb(d);p=f;f=H[d+12>>2];d=H[d+16>>2];f=(((f-d|0)+1|0)/64|0)+d<<3;j=d<<3;d=f+j|0;d=p+d|0;f=d;if(O){d=H[Z+4>>2];j=H[Z>>2];u=U(Gb(j,H[o>>2]+q|0)*(+(j>>>0)+ +(d|0)*4294967296));F:{if(P(u)<0x8000000000000000){d=~~u>>>0;break F}d=0}f=d+f|0}d=H[h+8>>2];if(!((d|0)<=(f|0)&((d|0)<(f|0)|(i|0)>=H[h+12>>2]))){H[h+20>>2]=q;F[h+16|0]=y;H[h+8>>2]=f;H[h+12>>2]=i;i=H[h+132>>2];p=i-g|0;j=p>>2;d=H[h+32>>2];f=H[h+24>>2];G:{if(j>>>0<=d-f>>2>>>0){p=H[h+28>>2]-f|0;d=p+g|0;r=p>>2;y=r>>>0>>0?d:i;p=y-g|0;if(p){xa(f,g,p)}if(j>>>0>r>>>0){f=H[h+28>>2];if((i|0)==(y|0)){break G}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}break G}f=f+p|0;break G}if(f){H[h+28>>2]=f;qa(f);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;d=0}if((p|0)<0){break y}f=d>>1;d=d>>>0<2147483644?f>>>0>>0?j:f:1073741823;if(d>>>0>=1073741824){break y}d=d<<2;f=ra(d);H[h+24>>2]=f;H[h+28>>2]=f;H[h+32>>2]=d+f;if((g|0)==(i|0)){break G}d=p&-4;f=sa(f,g,d)+d|0}H[h+28>>2]=f;d=H[h+44>>2];f=H[h+36>>2];H:{if(d-f>>2>>>0>=z>>>0){g=H[h+40>>2]-f|0;d=g+s|0;i=g>>2;j=i>>>0>>0?d:x;g=j-s|0;if(g){xa(f,s,g)}if(i>>>0>>0){f=H[h+40>>2];if((j|0)==(x|0)){break H}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((x|0)!=(d|0)){continue}break}break H}f=f+g|0;break H}if(f){H[h+40>>2]=f;qa(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;d=0}if((J|0)<0){break x}f=d>>1;d=d>>>0<2147483644?f>>>0>>0?z:f:1073741823;if(d>>>0>=1073741824){break x}d=d<<2;f=ra(d);H[h+36>>2]=f;H[h+44>>2]=d+f;if((s|0)==(x|0)){break H}f=sa(f,s,V)+V|0}H[h+40>>2]=f}if(ga){break z}g=-1;j=I[k|0];f=j;while(1){i=f&255;d=g-1|0;p=d+m|0;f=I[p|0];if(i>>>0>f>>>0){i=k;d=m;if((j&255)>>>0<=f>>>0){while(1){j=i;i=i-1|0;r=d-2|0;d=j;if(I[r|0]<=f>>>0){continue}break}j=1}d=g+m|0;F[p|0]=j;F[i|0]=f;f=k;if((g|0)==-1){continue A}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}continue A}g=d;if((p|0)!=(h+124|0)){continue}break}break}if(k>>>0<=h+124>>>0){break z}d=I[h+124|0];F[h+124|0]=j;F[k|0]=d;d=$;f=n;if(d>>>0>=f>>>0){break z}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}}q=q+1|0;if((l|0)!=(w|0)){continue}break}}if(O){f=H[h+20>>2];g=f;d=f+H[o>>2]|0;f=H[o+4>>2]+(f>>31)|0;H[o>>2]=d;H[o+4>>2]=d>>>0>>0?f+1|0:f}d=H[E>>2];if(!e){break v}g=H[h+36>>2];f=0;j=0;if(!C){break w}while(1){k=f<<2;i=H[k+g>>2];H[d+k>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;k=k|4;i=H[k+g>>2];H[d+k>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;f=f+2|0;j=j+2|0;if((K|0)!=(j|0)){continue}break}break w}va();X()}va();X()}if(L){j=g;g=f<<2;f=H[j+g>>2];H[d+g>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1}d=H[E>>2]}Oc(fa,G,d,e);I:{if((l|0)<=0){break I}j=N(D,12)+a|0;i=j- -64|0;d=0;while(1){J:{g=H[j+68>>2];k=g<<5;f=H[i>>2];K:{if(!(I[h+16|0]>>>d&1)){L:{M:{if((f|0)!=(k|0)){break M}if((f+1|0)<0){break J}N:{if(f>>>0<=1073741822){k=f+32&-32;g=g<<6;g=g>>>0>>0?k:g;if(g>>>0<=f>>>0){break M}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break N}La();X()}g=-1;if(f>>>0>2147483646){break L}g=2147483647}o=(g-1>>>5|0)+1|0;g=ra(o<<2);H[h+208>>2]=o;H[h+204>>2]=0;H[h+200>>2]=g;k=H[j+60>>2];O:{P:{if(f>>>0>=33){H[g+(f-1>>>3&536870908)>>2]=0;break P}H[g>>2]=0;if(!f){break O}}n=f>>>5|0;m=n<<2;q=xa(g,k,m);n=f-(n<<5)|0;if((n|0)<=0){break O}q=m+q|0;n=-1>>>32-n|0;H[q>>2]=H[q>>2]&(n^-1)|n&H[k+m>>2]}H[j+60>>2]=g;H[i>>2]=f;H[j+68>>2]=o;if(!k){break M}qa(k);f=H[i>>2]}g=f}H[i>>2]=g+1;f=H[j+60>>2]+(g>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0<=1073741822){k=f+32&-32;g=g<<6;g=g>>>0>>0?k:g;if(g>>>0<=f>>>0){break R}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break S}La();X()}g=-1;if(f>>>0>2147483646){break Q}g=2147483647}o=(g-1>>>5|0)+1|0;g=ra(o<<2);H[h+208>>2]=o;H[h+204>>2]=0;H[h+200>>2]=g;k=H[j+60>>2];T:{U:{if(f>>>0>=33){H[g+(f-1>>>3&536870908)>>2]=0;break U}H[g>>2]=0;if(!f){break T}}n=f>>>5|0;m=n<<2;q=xa(g,k,m);n=f-(n<<5)|0;if((n|0)<=0){break T}q=m+q|0;n=-1>>>32-n|0;H[q>>2]=H[q>>2]&(n^-1)|n&H[k+m>>2]}H[j+60>>2]=g;H[i>>2]=f;H[j+68>>2]=o;if(!k){break R}qa(k);f=H[i>>2]}g=f}H[i>>2]=g+1;f=H[j+60>>2]+(g>>>3&536870908)|0;k=H[f>>2];ha=f,ia=Bl(g)&k,H[ha>>2]=ia}d=d+1|0;if((l|0)!=(d|0)){continue}break I}break}La();X()}g=H[h+24>>2];d=H[a+8>>2];if((d|0)>0){o=c+Y|0;i=0;j=g;while(1){l=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;k=H[d+j>>2];m=H[a+16>>2];V:{if((k|0)>(m|0)){H[d+l>>2]=m;break V}d=d+l|0;m=H[a+12>>2];if((m|0)>(k|0)){H[d>>2]=m;break V}H[d>>2]=k}f=f+1|0;if((f|0)>2]){continue}break}}f=i<<2;d=f+o|0;f=H[f+M>>2]-H[f+l>>2]|0;H[d>>2]=f;W:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break W}f=f-H[a+20>>2]|0}H[d>>2]=f}j=l;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}d=H[h+36>>2];if(d){H[h+40>>2]=d;qa(d);g=H[h+24>>2]}if(g){H[h+28>>2]=g;qa(g)}if((B|0)<3){break h}B=v;f=H[a+56>>2];d=H[f>>2];g=v-1|0;if(g>>>0>2]-d>>2>>>0){continue}break}}ua();X()}va();X()}j=H[h+144>>2];if(e){ta(j,0,e<<2);j=H[h+144>>2]}d=H[a+8>>2];if((d|0)>0){i=0;while(1){e=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;g=H[d+j>>2];l=H[a+16>>2];X:{if((g|0)>(l|0)){H[d+e>>2]=l;break X}d=d+e|0;l=H[a+12>>2];if((l|0)>(g|0)){H[d>>2]=l;break X}H[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}}f=i<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;Y:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break Y}f=f-H[a+20>>2]|0}H[d>>2]=f}j=e;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}if(s){qa(s)}a=H[h+128>>2];if(a){H[h+132>>2]=a;qa(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;qa(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;qa(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;qa(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;qa(a)}da=h+224|0;return 1}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=da-32|0;da=k;c=H[b+8>>2];a:{b:{if(I[b+352|0]){e=af(c);c=H[b+12>>2];H[b+12>>2]=e;if(!c){break a}d=b+12|0;break b}e=bf(c);c=H[b+12>>2];H[b+12>>2]=e;if(!c){break a}d=b+12|0}pc(d,c)}c:{c=H[b+12>>2];d:{if(!(H[c+40>>2]!=((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)?c:0)){b=ra(32);c=I[1972]|I[1973]<<8|(I[1974]<<16|I[1975]<<24);e=I[1968]|I[1969]<<8|(I[1970]<<16|I[1971]<<24);F[b+21|0]=e;F[b+22|0]=e>>>8;F[b+23|0]=e>>>16;F[b+24|0]=e>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1967]|I[1968]<<8|(I[1969]<<16|I[1970]<<24);e=I[1963]|I[1964]<<8|(I[1965]<<16|I[1966]<<24);F[b+16|0]=e;F[b+17|0]=e>>>8;F[b+18|0]=e>>>16;F[b+19|0]=e>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1959]|I[1960]<<8|(I[1961]<<16|I[1962]<<24);e=I[1955]|I[1956]<<8|(I[1957]<<16|I[1958]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1951]|I[1952]<<8|(I[1953]<<16|I[1954]<<24);e=I[1947]|I[1948]<<8|(I[1949]<<16|I[1950]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;Ia(a+4|0,b,29);qa(b);break d}i=b+200|0;H[i+128>>2]=2;H[i+132>>2]=7;H[i+64>>2]=b;c=fa[H[H[b>>2]+32>>2]](b)|0;H[i+88>>2]=c;e=H[c+28>>2]-H[c+24>>2]>>2;c=H[i+108>>2];d=H[i+104>>2];f=c-d>>2;e:{if(e>>>0>f>>>0){Ea(i+104|0,e-f|0);d=H[i+104>>2];c=H[i+108>>2];break e}if(e>>>0>=f>>>0){break e}c=(e<<2)+d|0;H[i+108>>2]=c}if((c|0)!=(d|0)){d=0;while(1){p=H[i+104>>2];r=p+(d<<2)|0;c=H[i+88>>2];j=-1;g=d;f:{if((d|0)==-1){break f}j=0;d=H[H[c+24>>2]+(g<<2)>>2];if((d|0)==-1){break f}o=H[c+12>>2];e=1;c=d;while(1){j=j+1|0;f=e;g:{if(e&255){e=0;h=c+1|0;c=(h>>>0)%3|0?h:c-2|0;if((c|0)==-1){c=d;break g}h=H[o+(c<<2)>>2];if((h|0)==-1){c=d;break g}c=d;q=h+1|0;h=(q>>>0)%3|0?q:h-2|0;if((h|0)==-1){break g}e=f;c=h;if((d|0)!=(c|0)){break g}break f}h:{if((c>>>0)%3|0){c=c-1|0;break h}c=c+2|0;if((c|0)==-1){break f}}c=H[o+(c<<2)>>2];if((c|0)==-1){break f}c=(c>>>0)%3|0?c-1|0:c+2|0;e=0}if((c|0)!=-1){continue}break}}H[r>>2]=j;d=g+1|0;if(d>>>0>2]-p>>2>>>0){continue}break}}d=H[i+88>>2];c=H[d>>2];e=H[d+4>>2]-c>>2;f=H[i+92>>2];g=H[i+96>>2]-f>>2;i:{if(e>>>0>g>>>0){Ea(i+92|0,e-g|0);f=H[i+92>>2];d=H[i+88>>2];c=H[d>>2];break i}if(e>>>0>=g>>>0){break i}H[i+96>>2]=(e<<2)+f}e=H[d+4>>2]-c|0;j:{if(!e){break j}e=e>>2;e=e>>>0>1?e:1;g=e&3;d=0;if(e-1>>>0>=3){h=e&-4;while(1){e=d<<2;H[e+f>>2]=H[c+e>>2];j=e|4;H[j+f>>2]=H[c+j>>2];j=e|8;H[j+f>>2]=H[c+j>>2];e=e|12;H[e+f>>2]=H[c+e>>2];d=d+4|0;l=l+4|0;if((h|0)!=(l|0)){continue}break}}if(!g){break j}while(1){e=d<<2;H[e+f>>2]=H[c+e>>2];d=d+1|0;t=t+1|0;if((g|0)!=(t|0)){continue}break}}d=(H[i+132>>2]-H[i+128>>2]|0)+1|0;c=H[i+140>>2];e=H[i+136>>2];g=(c-e|0)/12|0;k:{if(d>>>0>g>>>0){f=0;c=d-g|0;h=H[i+144>>2];e=H[i+140>>2];if(c>>>0<=(h-e|0)/12>>>0){if(c){c=N((N(c,12)-12>>>0)/12|0,12)+12|0;e=ta(e,0,c)+c|0}H[i+140>>2]=e;break k}l:{m:{n:{g=H[i+136>>2];l=(e-g|0)/12|0;d=l+c|0;if(d>>>0<357913942){h=(h-g|0)/12|0;j=h<<1;h=h>>>0<178956970?d>>>0>j>>>0?d:j:357913941;if(h){if(h>>>0>=357913942){break n}f=ra(N(h,12))}d=N(l,12)+f|0;l=N((N(c,12)-12>>>0)/12|0,12)+12|0;c=ta(d,0,l);l=c+l|0;f=N(h,12)+f|0;if((e|0)==(g|0)){break m}while(1){d=d-12|0;e=e-12|0;H[d>>2]=H[e>>2];H[d+4>>2]=H[e+4>>2];H[d+8>>2]=H[e+8>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if((e|0)!=(g|0)){continue}break}H[i+144>>2]=f;c=H[i+140>>2];H[i+140>>2]=l;e=H[i+136>>2];H[i+136>>2]=d;if((c|0)==(e|0)){break l}while(1){d=c-12|0;f=H[d>>2];if(f){H[c-8>>2]=f;qa(f)}c=d;if((e|0)!=(c|0)){continue}break}break l}va();X()}ya(1604);X()}H[i+144>>2]=f;H[i+140>>2]=l;H[i+136>>2]=c}if(e){qa(e)}break k}if(d>>>0>>0){d=e+N(d,12)|0;if((d|0)!=(c|0)){while(1){e=c-12|0;f=H[e>>2];if(f){H[c-8>>2]=f;qa(f)}c=e;if((d|0)!=(c|0)){continue}break}}H[i+140>>2]=d}}c=H[b+12>>2];Da((H[c+28>>2]-H[c+24>>2]>>2)-H[c+44>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+12>>2];Da(((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)-H[c+40>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+8>>2];e=H[c+100>>2];c=H[c+96>>2];F[k+16|0]=0;l=b+28|0;d=(e-c|0)/12|0;c=k+16|0;Ra(l,d,c);e=H[b+12>>2];d=H[e+28>>2];e=H[e+24>>2];H[k+16>>2]=-1;yb(b+52|0,d-e>>2,c);e=H[b+40>>2];H[b+44>>2]=e;c=H[b+12>>2];d=H[c+4>>2]-H[c>>2]>>2;d=d-((d>>>0)%3|0)|0;o:{if(d>>>0<=H[b+48>>2]-e>>2>>>0){break o}if(d>>>0>=1073741824){break c}f=d<<2;d=ra(f);H[b+44>>2]=d;H[b+40>>2]=d;H[b+48>>2]=d+f;if(!e){break o}qa(e);c=H[b+12>>2]}e=H[c+28>>2];c=H[c+24>>2];F[k+16|0]=0;Ra(b+84|0,e-c>>2,k+16|0);H[b+164>>2]=-1;H[b+168>>2]=0;H[b+100>>2]=H[b+96>>2];H[b+112>>2]=H[b+108>>2];if(H[b+132>>2]){c=H[b+128>>2];if(c){while(1){e=H[c>>2];qa(c);c=e;if(c){continue}break}}c=0;H[b+128>>2]=0;e=H[b+124>>2];p:{if(!e){break p}if(e-1>>>0>=3){g=e&-4;d=0;while(1){f=c<<2;H[f+H[b+120>>2]>>2]=0;H[H[b+120>>2]+(f|4)>>2]=0;H[H[b+120>>2]+(f|8)>>2]=0;H[H[b+120>>2]+(f|12)>>2]=0;c=c+4|0;d=d+4|0;if((g|0)!=(d|0)){continue}break}}e=e&3;if(!e){break p}while(1){H[H[b+120>>2]+(c<<2)>>2]=0;c=c+1|0;m=m+1|0;if((e|0)!=(m|0)){continue}break}}H[b+132>>2]=0}H[b+144>>2]=0;c=H[b+12>>2];e=H[c+28>>2];c=H[c+24>>2];H[k+16>>2]=-1;yb(b+152|0,e-c>>2,k+16|0);c=H[b+72>>2];H[b+76>>2]=c;e=H[b+12>>2];e=H[e+4>>2]-H[e>>2]|0;d=(e>>2>>>0)/3|0;q:{if(d>>>0<=H[b+80>>2]-c>>2>>>0){break q}if((e|0)<0){break c}d=d<<2;e=ra(d);H[b+76>>2]=e;H[b+72>>2]=e;H[b+80>>2]=d+e;if(!c){break q}qa(c)}H[b- -64>>2]=0;if(!bg(b)){b=ra(32);c=I[1912]|I[1913]<<8|(I[1914]<<16|I[1915]<<24);e=I[1908]|I[1909]<<8|(I[1910]<<16|I[1911]<<24);F[b+21|0]=e;F[b+22|0]=e>>>8;F[b+23|0]=e>>>16;F[b+24|0]=e>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1907]|I[1908]<<8|(I[1909]<<16|I[1910]<<24);e=I[1903]|I[1904]<<8|(I[1905]<<16|I[1906]<<24);F[b+16|0]=e;F[b+17|0]=e>>>8;F[b+18|0]=e>>>16;F[b+19|0]=e>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1899]|I[1900]<<8|(I[1901]<<16|I[1902]<<24);e=I[1895]|I[1896]<<8|(I[1897]<<16|I[1898]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1891]|I[1892]<<8|(I[1893]<<16|I[1894]<<24);e=I[1887]|I[1888]<<8|(I[1889]<<16|I[1890]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;Ia(a+4|0,b,29);qa(b);break d}r:{if(I[b+352|0]){break r}c=H[b+8>>2];e=H[c+12>>2]-H[c+8>>2]|0;d=e>>2;c=d-1|0;f=H[b+176>>2];h=H[b+172>>2];g=(f-h|0)/136|0;s:{if(c>>>0>g>>>0){Wf(b+172|0,c-g|0);break s}if(c>>>0>=g>>>0){break s}c=h+N(c,136)|0;if((c|0)!=(f|0)){while(1){g=H[f-20>>2];if(g){H[f-16>>2]=g;qa(g)}g=H[f-32>>2];if(g){H[f-28>>2]=g;qa(g)}oc(f-132|0);f=f-136|0;if((c|0)!=(f|0)){continue}break}}H[b+176>>2]=c}if((e|0)==4|(e|0)<=0){break r}h=(d|0)>1?d:1;f=0;d=0;t:{while(1){m=H[H[H[b+8>>2]+8>>2]+(f<<2)>>2];if(H[m+56>>2]){j=N(d,136);c=j+H[b+172>>2]|0;H[c>>2]=f;e=H[c+104>>2];H[c+108>>2]=e;g=H[b+12>>2];g=H[g+4>>2]-H[g>>2]|0;o=g>>2;u:{if(o>>>0<=H[c+112>>2]-e>>2>>>0){break u}if((g|0)<0){break t}g=ra(g);H[c+104>>2]=g;H[c+108>>2]=g;H[c+112>>2]=g+(o<<2);if(!e){break u}qa(e)}c=j+H[b+172>>2]|0;H[c+128>>2]=0;cf(c+4|0,H[b+8>>2],H[b+12>>2],m);d=d+1|0}f=f+1|0;if((h|0)!=(f|0)){continue}break}break r}ya(1604);X()}c=(H[b+176>>2]-H[b+172>>2]|0)/136|0;F[k+31|0]=c;e=H[H[b+4>>2]+44>>2];d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){wa(e,H[e+4>>2],k+31|0,k+32|0);c=I[k+31|0]}H[b+284>>2]=c&255;c=H[b+12>>2];d=H[c>>2];c=H[c+4>>2];ag(i);H[k+24>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;e=0;v:{w:{x:{y:{c=c-d|0;if((c|0)>0){c=c>>>2|0;o=c>>>0>1?c:1;c=0;while(1){d=(c>>>0)/3|0;p=d>>>5<<2;r=1<>2]>>2]&r){break z}if(Fc(H[b+12>>2],d)){break z}H[k>>2]=0;d=$f(b,d,k);Fa(i,d);g=H[k>>2];if(d){h=-1;f=-1;m=-1;A:{if((g|0)==-1){break A}j=H[H[b+12>>2]>>2];d=j+(g<<2)|0;h=g+1|0;h=(h>>>0)%3|0?h:g-2|0;if((h|0)!=-1){f=H[j+(h<<2)>>2]}h=H[d>>2];B:{if((g>>>0)%3|0){d=g-1|0;break B}d=g+2|0;m=-1;if((d|0)==-1){break A}}m=H[j+(d<<2)>>2]}d=H[b+84>>2];j=d+(h>>>3&536870908)|0;H[j>>2]=H[j>>2]|1<>>3&536870908)|0;H[h>>2]=H[h>>2]|1<>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>2];h=H[b+104>>2];C:{if(d>>>0>>0){H[d>>2]=1;H[b+100>>2]=d+4;break C}f=H[b+96>>2];m=d-f|0;j=m>>2;d=j+1|0;if(d>>>0>=1073741824){break y}h=h-f|0;q=h>>1;h=h>>>0<2147483644?d>>>0>q>>>0?d:q:1073741823;if(h){if(h>>>0>=1073741824){break c}d=ra(h<<2)}else{d=0}j=d+(j<<2)|0;H[j>>2]=1;if((m|0)>0){sa(d,f,m)}H[b+104>>2]=d+(h<<2);H[b+100>>2]=j+4;H[b+96>>2]=d;if(!f){break C}qa(f)}d=p+H[l>>2]|0;H[d>>2]=r|H[d>>2];h=-1;if((g|0)!=-1){d=g+1|0;h=(d>>>0)%3|0?d:g-2|0}D:{if(n>>>0>>0){H[n>>2]=h;n=n+4|0;H[k+20>>2]=n;break D}m=n-e|0;n=m>>2;d=n+1|0;if(d>>>0>=1073741824){break x}f=s-e|0;j=f>>1;f=f>>>0<2147483644?d>>>0>j>>>0?d:j:1073741823;if(f){if(f>>>0>=1073741824){break c}d=ra(f<<2)}else{d=0}n=d+(n<<2)|0;H[n>>2]=h;s=d+(f<<2)|0;n=n+4|0;if((m|0)>0){sa(d,e,m)}H[k+24>>2]=s;H[k+20>>2]=n;H[k+16>>2]=d;if(e){qa(e)}e=d}if((g|0)==-1){break z}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)==-1){break z}d=H[H[H[b+12>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break z}f=(d>>>0)/3|0;if(H[H[l>>2]+(f>>>3&268435452)>>2]>>>f&1){break z}if(Sf(b,d)){break z}break w}if((g|0)!=-1){d=g+1|0;d=(d>>>0)%3|0?d:g-2|0}else{d=-1}Hc(b,d,1);if(!Sf(b,H[k>>2])){break w}}c=c+1|0;if((o|0)!=(c|0)){continue}break}}f=b+72|0;c=H[b+72>>2];d=H[b+76>>2];E:{if((c|0)==(d|0)){break E}m=d-4|0;if(m>>>0<=c>>>0){break E}while(1){g=H[c>>2];H[c>>2]=H[m>>2];H[m>>2]=g;c=c+4|0;m=m-4|0;if(c>>>0>>0){continue}break}}Zf(f,d,e,n);F:{if(H[b+172>>2]==H[b+176>>2]){break F}c=H[b+8>>2];d=H[c+100>>2];c=H[c+96>>2];F[k|0]=0;Ra(l,(d-c|0)/12|0,k);c=H[b+72>>2];d=H[b+76>>2];if((c|0)==(d|0)){break F}while(1){Yf(b,H[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}c=i+32|0;Ba(i,c);d=H[i+80>>2];G:{if(!d){break G}l=1;if(H[i+84>>2]<=0){break G}Ba(d,c);if(H[i+84>>2]<2){break G}while(1){Ba(H[i+80>>2]+(l<<5)|0,c);l=l+1|0;if((l|0)>2]){continue}break}}l=H[i+136>>2];if((l|0)!=H[i+140>>2]){d=0;while(1){f=N(d,12);g=f+l|0;Da(H[g+4>>2]-H[g>>2]>>2,c);l=H[i+136>>2];g=f+l|0;f=H[g>>2];g=H[g+4>>2]-f|0;if(g){Yd(f,g>>2,1,0,c);l=H[i+136>>2]}d=d+1|0;if(d>>>0<(H[i+140>>2]-l|0)/12>>>0){continue}break}}Da(H[b+324>>2],H[H[b+4>>2]+44>>2]);Da(H[b+168>>2],H[H[b+4>>2]+44>>2]);if(!Xf(b)){b=tc(k,2029);H[a>>2]=-1;a=a+4|0;if(F[b+11|0]>=0){b=H[k+4>>2];H[a>>2]=H[k>>2];H[a+4>>2]=b;H[a+8>>2]=H[k+8>>2];break v}Ia(a,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break v}qa(H[b>>2]);break v}c=H[H[b+4>>2]+44>>2];d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){wa(c,H[c+4>>2],H[b+232>>2],H[b+236>>2])}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break v}va();X()}va();X()}b=ra(48);c=I[1847]|I[1848]<<8|(I[1849]<<16|I[1850]<<24);d=I[1843]|I[1844]<<8|(I[1845]<<16|I[1846]<<24);F[b+24|0]=d;F[b+25|0]=d>>>8;F[b+26|0]=d>>>16;F[b+27|0]=d>>>24;F[b+28|0]=c;F[b+29|0]=c>>>8;F[b+30|0]=c>>>16;F[b+31|0]=c>>>24;c=I[1839]|I[1840]<<8|(I[1841]<<16|I[1842]<<24);d=I[1835]|I[1836]<<8|(I[1837]<<16|I[1838]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1831]|I[1832]<<8|(I[1833]<<16|I[1834]<<24);d=I[1827]|I[1828]<<8|(I[1829]<<16|I[1830]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1823]|I[1824]<<8|(I[1825]<<16|I[1826]<<24);d=I[1819]|I[1820]<<8|(I[1821]<<16|I[1822]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+32|0]=0;H[a>>2]=-1;Ia(a+4|0,b,32);qa(b)}if(!e){break d}qa(e)}da=k+32|0;return}ya(1604);X()}function yk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ia=0,ja=0;h=da-240|0;da=h;$=H[a+36>>2];u=H[a+32>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;if(e){Ea(h+144|0,e);i=H[h+160>>2];d=H[h+156>>2]}else{d=0}f=i-d>>2;a:{if(f>>>0>=e>>>0){if(e>>>0>=f>>>0){break a}H[h+160>>2]=d+(e<<2);break a}Ea(h+144|12,e-f|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}H[h+172>>2]=f+(e<<2);break b}Ea(h+168|0,e-d|0)}c:{d:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;e:{f:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break f}d=1;break e}Ea(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break d}d=e<<2;f=ra(d);H[h+128>>2]=f;i=d+f|0;H[h+136>>2]=i;ta(f,0,d);H[h+132>>2]=i;d=0}J=a+136|0;i=H[a+136>>2];f=H[a+140>>2]-i>>2;g:{if(f>>>0>>0){Ea(J,e-f|0);break g}if(e>>>0>=f>>>0){break g}H[a+140>>2]=i+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;r=ra(d);x=ta(r,0,d)+d|0}S=a+8|0;d=H[a+40>>2];i=H[d>>2];d=H[d+4>>2]-i|0;if((d|0)<5){break c}E=d>>>2|0;f=E-1|0;if(f>>>0>2>>>0){K=a+96|0;aa=h+125|0;ba=h+36|0;ca=h+24|0;V=e<<2;L=x-r|0;W=L&-4;C=L>>2;M=e&-2;O=e&1;fa=e&-4;Y=e&3;G=e-1|0;while(1){y=f;j=H[(f<<2)+i>>2];i=(j>>>0)%3|0;d=0;h:{if((j|0)==-1){break h}f=0;d=j+2|0;v=(i|0)!=0|(d|0)!=-1;m=1;q=i?j-1|0:d;z=1<>>5|0;A=H[u>>2];i=j;while(1){i:{if(H[A+(i>>>3&536870908)>>2]>>>i&1){break i}d=H[H[H[u+64>>2]+12>>2]+(i<<2)>>2];if((d|0)==-1){break i}l=H[$>>2];g=H[u+28>>2];o=H[l+(H[g+(d<<2)>>2]<<2)>>2];if((o|0)>=(y|0)){break i}k=d+1|0;k=H[l+(H[g+(((k>>>0)%3|0?k:d-2|0)<<2)>>2]<<2)>>2];if((k|0)>=(y|0)){break i}g=H[l+(H[g+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(y|0)){break i}j:{if(!e){break j}d=H[(h+144|0)+N(f,12)>>2];l=N(e,g);k=N(e,k);o=N(e,o);g=0;w=0;if(G){while(1){H[d+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+o<<2)+b>>2];n=g|1;H[d+(n<<2)>>2]=(H[(l+n<<2)+b>>2]+H[(k+n<<2)+b>>2]|0)-H[(o+n<<2)+b>>2];g=g+2|0;w=w+2|0;if((M|0)!=(w|0)){continue}break}}if(!O){break j}H[d+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+o<<2)+b>>2]}d=4;f=f+1|0;if((f|0)==4){break h}}k:{if(m&1){g=i-2|0;d=i+1|0;i=-1;d=(d>>>0)%3|0?d:g;if((d|0)==-1|H[H[u>>2]+(d>>>3&536870908)>>2]>>>d&1){break k}d=H[H[H[u+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break k}i=d+1|0;i=(i>>>0)%3|0?i:d-2|0;break k}l:{if((i>>>0)%3|0){g=i-1|0;break l}g=i+2|0;i=-1;if((g|0)==-1){break k}}i=-1;if(H[H[u>>2]+(g>>>3&536870908)>>2]>>>g&1){break k}d=H[H[H[u+64>>2]+12>>2]+(g<<2)>>2];if((d|0)==-1){break k}if((d>>>0)%3|0){i=d-1|0;break k}i=d+2|0}if((i|0)==(j|0)){d=f;break h}if(!((m^1)&1|(i|0)!=-1)){if(!v){d=f;break h}if(z&H[H[u>>2]+(p<<2)>>2]){d=f;break h}d=H[H[H[u+64>>2]+12>>2]+(q<<2)>>2];if((d|0)==-1){d=f;break h}m=0;i=(d>>>0)%3|0?d-1|0:d+2|0}d=f;if((i|0)!=-1){continue}break}}f=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Z=N(e,y)<<2;z=Z+b|0;l=(N(E-2|0,e)<<2)+b|0;k=H[a+136>>2];i=0;if(e){while(1){j=f<<2;g=H[j+l>>2]-H[j+z>>2]|0;H[j+r>>2]=g;H[j+k>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;j=i;i=g>>31;i=j+(i+g^i)|0;f=f+1|0;if((f|0)!=(e|0)){continue}break}}f=h+200|0;Fb(f,K,k,e);g=Eb(f);k=ea;n=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;j=f<<3;o=j;f=g+j|0;j=(g>>31)+(j>>31)|0;j=f>>>0>>0?j+1|0:j;o=f;f=n+f|0;g=j+k|0;j=f;f=f>>>0>>0?g+1|0:g;Q=(d|0)>0;m:{if(!Q){A=d-1|0;break m}A=d-1|0;o=A<<3;g=o+(h+48|0)|0;n=g;k=d+H[g>>2]|0;g=H[g+4>>2];g=d>>>0>k>>>0?g+1|0:g;H[n>>2]=k;H[n+4>>2]=g;t=U(Gb(k,H[o+(h+80|0)>>2])*(+(k>>>0)+ +(g|0)*4294967296));n:{if(P(t)<0x8000000000000000){k=P(t)>=1?~~(t>0?R(T(t*2.3283064365386963e-10),4294967295):U((t-+(~~t>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~t>>>0;break n}k=-2147483648;g=0}g=g+j|0;j=g}w=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=j;H[h+12>>2]=i;db(ca,l,l+V|0);Vc(ba,r,x);f=A<<3;o=f+(h+80|0)|0;ga=h+200|0;o:{p:{q:{r:{if((d|0)>0){i=h+124|0;n=i+d|0;q=n-2|0;l=n-1|0;ha=!d|(l|0)==(i|0);_=f+(h+48|0)|0;v=1;while(1){w=w+1|0;if((d|0)>0){ta(h+124|0,1,d)}ta(h+124|0,0,w);s:{t:while(1){if(e){ta(H[h+128>>2],0,V)}B=0;m=0;if((d|0)>0){while(1){if(!I[(h+124|0)+m|0]){u:{if(!e){break u}f=H[h+128>>2];i=H[(h+144|0)+N(m,12)>>2];j=0;g=0;k=0;if(G>>>0>2){while(1){p=g<<2;s=p+f|0;H[s>>2]=H[s>>2]+H[i+p>>2];s=p|4;D=s+f|0;H[D>>2]=H[D>>2]+H[i+s>>2];s=p|8;D=s+f|0;H[D>>2]=H[D>>2]+H[i+s>>2];p=p|12;s=p+f|0;H[s>>2]=H[s>>2]+H[i+p>>2];g=g+4|0;k=k+4|0;if((fa|0)!=(k|0)){continue}break}}if(!Y){break u}while(1){k=g<<2;p=k+f|0;H[p>>2]=H[p>>2]+H[i+k>>2];g=g+1|0;j=j+1|0;if((Y|0)!=(j|0)){continue}break}}B=1<>2];v:{w:{x:{if(e){g=0;i=0;if(G){break x}break w}k=H[a+136>>2];j=0;break v}while(1){j=g<<2;k=j+f|0;H[k>>2]=H[k>>2]/(v|0);j=(j|4)+f|0;H[j>>2]=H[j>>2]/(v|0);g=g+2|0;i=i+2|0;if((M|0)!=(i|0)){continue}break}}if(O){f=(g<<2)+f|0;H[f>>2]=H[f>>2]/(v|0)}k=H[a+136>>2];f=H[h+128>>2];i=0;j=0;if(!e){break v}while(1){m=i<<2;g=H[m+f>>2]-H[m+z>>2]|0;H[m+r>>2]=g;H[k+m>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;m=g;g=g>>31;j=(m+g^g)+j|0;i=i+1|0;if((i|0)!=(e|0)){continue}break}}i=h+200|0;Fb(i,K,k,e);g=Eb(i);m=g;g=H[i+12>>2];i=H[i+16>>2];g=(((g-i|0)+1|0)/64|0)+i<<3;k=i<<3;i=g+k|0;i=m+i|0;g=i;if(Q){i=H[_+4>>2];k=H[_>>2];t=U(Gb(k,H[o>>2]+v|0)*(+(k>>>0)+ +(i|0)*4294967296));y:{if(P(t)<0x8000000000000000){i=~~t>>>0;break y}i=0}g=i+g|0}i=H[h+8>>2];if(!((i|0)<=(g|0)&((g|0)>(i|0)|(j|0)>=H[h+12>>2]))){H[h+20>>2]=v;F[h+16|0]=B;H[h+8>>2]=g;H[h+12>>2]=j;j=H[h+132>>2];m=j-f|0;k=m>>2;i=H[h+32>>2];g=H[h+24>>2];z:{if(k>>>0<=i-g>>2>>>0){m=H[h+28>>2]-g|0;i=m+f|0;p=m>>2;B=p>>>0>>0?i:j;m=B-f|0;if(m){xa(g,f,m)}if(k>>>0>p>>>0){g=H[h+28>>2];if((j|0)==(B|0)){break z}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}break z}g=g+m|0;break z}if(g){H[h+28>>2]=g;qa(g);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;i=0}if((m|0)<0){break r}g=i>>1;i=i>>>0<2147483644?g>>>0>>0?k:g:1073741823;if(i>>>0>=1073741824){break r}i=i<<2;g=ra(i);H[h+24>>2]=g;H[h+28>>2]=g;H[h+32>>2]=g+i;if((f|0)==(j|0)){break z}j=f;f=m&-4;g=sa(g,j,f)+f|0}H[h+28>>2]=g;i=H[h+44>>2];f=H[h+36>>2];A:{if(i-f>>2>>>0>=C>>>0){g=H[h+40>>2]-f|0;i=g+r|0;j=g>>2;k=j>>>0>>0?i:x;g=k-r|0;if(g){xa(f,r,g)}if(j>>>0>>0){g=H[h+40>>2];if((k|0)==(x|0)){break A}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((x|0)!=(i|0)){continue}break}break A}g=f+g|0;break A}if(f){H[h+40>>2]=f;qa(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;i=0}if((L|0)<0){break q}f=i>>1;f=i>>>0<2147483644?f>>>0>>0?C:f:1073741823;if(f>>>0>=1073741824){break q}f=f<<2;g=ra(f);H[h+36>>2]=g;H[h+44>>2]=f+g;if((r|0)==(x|0)){break A}g=sa(g,r,W)+W|0}H[h+40>>2]=g}if(ha){break s}f=-1;k=I[l|0];g=k;while(1){j=g&255;i=f-1|0;m=i+n|0;g=I[m|0];if(j>>>0>g>>>0){j=l;i=n;if((k&255)>>>0<=g>>>0){while(1){k=j;j=j-1|0;p=i-2|0;i=k;if(I[p|0]<=g>>>0){continue}break}k=1}i=f+n|0;F[m|0]=k;F[j|0]=g;g=l;if((f|0)==-1){continue t}while(1){f=I[i|0];F[i|0]=I[g|0];F[g|0]=f;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}continue t}f=i;if((m|0)!=(h+124|0)){continue}break}break}if(l>>>0<=h+124>>>0){break s}f=I[h+124|0];F[h+124|0]=k;F[l|0]=f;g=q;i=aa;if(g>>>0<=i>>>0){break s}while(1){f=I[i|0];F[i|0]=I[g|0];F[g|0]=f;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}}v=v+1|0;if((d|0)!=(w|0)){continue}break}}if(Q){f=H[h+20>>2];g=f;i=g+H[o>>2]|0;f=H[o+4>>2]+(g>>31)|0;H[o>>2]=i;H[o+4>>2]=g>>>0>i>>>0?f+1|0:f}f=H[J>>2];if(!e){break o}i=H[h+36>>2];g=0;k=0;if(!G){break p}while(1){l=g<<2;j=H[l+i>>2];H[f+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+i>>2];H[f+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;g=g+2|0;k=k+2|0;if((M|0)!=(k|0)){continue}break}break p}va();X()}va();X()}if(O){g=g<<2;i=H[g+i>>2];H[f+g>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1}f=H[J>>2]}Oc(ga,K,f,e);B:{if((d|0)<=0){break B}j=N(A,12)+a|0;i=0;while(1){C:{f=H[j+52>>2];l=f<<5;g=H[j+48>>2];D:{if(!(I[h+16|0]>>>i&1)){E:{F:{if((g|0)!=(l|0)){break F}if((g+1|0)<0){break C}G:{if(g>>>0<=1073741822){l=g+32&-32;f=f<<6;f=f>>>0>>0?l:f;if(g>>>0>=f>>>0){break F}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((f|0)>=0){break G}La();X()}f=-1;if(g>>>0>2147483646){break E}f=2147483647}k=(f-1>>>5|0)+1|0;f=ra(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=f;l=H[j+44>>2];H:{I:{if(g>>>0>=33){H[f+(g-1>>>3&536870908)>>2]=0;break I}H[f>>2]=0;if(!g){break H}}n=g>>>5|0;o=n<<2;q=xa(f,l,o);n=g-(n<<5)|0;if((n|0)<=0){break H}q=o+q|0;n=-1>>>32-n|0;H[q>>2]=H[q>>2]&(n^-1)|n&H[l+o>>2]}H[j+44>>2]=f;H[j+48>>2]=g;H[j+52>>2]=k;if(!l){break F}qa(l);g=H[j+48>>2]}f=g}H[j+48>>2]=f+1;g=H[j+44>>2]+(f>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>0<=1073741822){l=g+32&-32;f=f<<6;f=f>>>0>>0?l:f;if(g>>>0>=f>>>0){break K}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((f|0)>=0){break L}La();X()}f=-1;if(g>>>0>2147483646){break J}f=2147483647}k=(f-1>>>5|0)+1|0;f=ra(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=f;l=H[j+44>>2];M:{N:{if(g>>>0>=33){H[f+(g-1>>>3&536870908)>>2]=0;break N}H[f>>2]=0;if(!g){break M}}n=g>>>5|0;o=n<<2;q=xa(f,l,o);n=g-(n<<5)|0;if((n|0)<=0){break M}q=o+q|0;n=-1>>>32-n|0;H[q>>2]=H[q>>2]&(n^-1)|n&H[l+o>>2]}H[j+44>>2]=f;H[j+48>>2]=g;H[j+52>>2]=k;if(!l){break K}qa(l);g=H[j+48>>2]}f=g}H[j+48>>2]=f+1;g=H[j+44>>2]+(f>>>3&536870908)|0;l=H[g>>2];ia=g,ja=Bl(f)&l,H[ia>>2]=ja}i=i+1|0;if((i|0)!=(d|0)){continue}break B}break}La();X()}d=H[h+24>>2];f=H[d>>2];d=H[d+4>>2];i=H[z+4>>2];H[h+232>>2]=H[z>>2];H[h+236>>2]=i;H[h+224>>2]=f;H[h+228>>2]=d;_a(h+200|0,S,h+232|0,h+224|0);d=c+Z|0;H[d>>2]=H[h+200>>2];H[d+4>>2]=H[h+204>>2];d=H[h+36>>2];if(d){H[h+40>>2]=d;qa(d)}d=H[h+24>>2];if(d){H[h+28>>2]=d;qa(d)}if((E|0)<3){break c}E=y;d=H[a+40>>2];i=H[d>>2];f=y-1|0;if(f>>>0>2]-i>>2>>>0){continue}break}}ua();X()}va();X()}a=H[h+144>>2];if(e){ta(a,0,e<<2);a=H[h+144>>2]}d=H[a>>2];a=H[a+4>>2];e=H[b+4>>2];H[h+200>>2]=H[b>>2];H[h+204>>2]=e;H[h+232>>2]=d;H[h+236>>2]=a;_a(h+8|0,S,h+200|0,h+232|0);H[c>>2]=H[h+8>>2];H[c+4>>2]=H[h+12>>2];if(r){qa(r)}a=H[h+128>>2];if(a){H[h+132>>2]=a;qa(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;qa(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;qa(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;qa(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;qa(a)}da=h+240|0;return 1}function mk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ia=0,ja=0;h=da-240|0;da=h;$=H[a+36>>2];Q=H[a+32>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;if(e){Ea(h+144|0,e);i=H[h+160>>2];d=H[h+156>>2]}else{d=0}f=i-d>>2;a:{if(f>>>0>=e>>>0){if(e>>>0>=f>>>0){break a}H[h+160>>2]=d+(e<<2);break a}Ea(h+144|12,e-f|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}H[h+172>>2]=f+(e<<2);break b}Ea(h+168|0,e-d|0)}c:{d:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;e:{f:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break f}d=1;break e}Ea(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break d}d=e<<2;f=ra(d);H[h+128>>2]=f;i=d+f|0;H[h+136>>2]=i;ta(f,0,d);H[h+132>>2]=i;d=0}G=a+136|0;i=H[a+136>>2];f=H[a+140>>2]-i>>2;g:{if(f>>>0>>0){Ea(G,e-f|0);break g}if(e>>>0>=f>>>0){break g}H[a+140>>2]=i+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;r=ra(d);v=ta(r,0,d)+d|0}S=a+8|0;d=H[a+40>>2];i=H[d>>2];f=H[d+4>>2]-i|0;if((f|0)<5){break c}C=f>>>2|0;d=C-1|0;if(d>>>0>2>>>0){J=a+96|0;aa=h+125|0;ba=h+36|0;ca=h+24|0;V=e<<2;K=v-r|0;W=K&-4;A=K>>2;L=e&-2;M=e&1;fa=e&-4;Y=e&3;D=e-1|0;while(1){w=d;j=H[(d<<2)+i>>2];i=(j>>>0)%3|0;f=0;h:{if((j|0)==-1){break h}d=0;f=j+2|0;x=(i|0)!=0|(f|0)!=-1;l=H[Q+12>>2];y=l+((i?j-1|0:f)<<2)|0;s=1;i=j;while(1){f=H[l+(i<<2)>>2];i:{if((f|0)==-1){break i}o=H[$>>2];k=H[Q>>2];p=H[o+(H[k+(f<<2)>>2]<<2)>>2];g=f+1|0;g=(g>>>0)%3|0?g:f-2|0;if((g|0)!=-1){n=H[k+(g<<2)>>2]}else{n=-1}j:{k:{if((f>>>0)%3|0){g=f-1|0;break k}g=f+2|0;m=-1;if((g|0)==-1){break j}}m=H[k+(g<<2)>>2]}if((p|0)>=(w|0)){break i}f=H[(n<<2)+o>>2];if((f|0)>=(w|0)){break i}g=H[o+(m<<2)>>2];if((g|0)>=(w|0)){break i}k=H[(h+144|0)+N(d,12)>>2];l:{if(!e){break l}o=N(e,g);n=N(e,f);p=N(e,p);g=0;f=0;if(D){while(1){H[k+(g<<2)>>2]=(H[(g+o<<2)+b>>2]+H[(g+n<<2)+b>>2]|0)-H[(g+p<<2)+b>>2];m=g|1;H[k+(m<<2)>>2]=(H[(m+o<<2)+b>>2]+H[(m+n<<2)+b>>2]|0)-H[(m+p<<2)+b>>2];g=g+2|0;f=f+2|0;if((L|0)!=(f|0)){continue}break}}if(!M){break l}H[k+(g<<2)>>2]=(H[(g+o<<2)+b>>2]+H[(g+n<<2)+b>>2]|0)-H[(g+p<<2)+b>>2]}f=4;d=d+1|0;if((d|0)==4){break h}}m:{if(s&1){g=i+1|0;i=(g>>>0)%3|0?g:i-2|0;f=-1;if((i|0)==-1){break m}i=H[l+(i<<2)>>2];f=-1;if((i|0)==-1){break m}f=i+1|0;f=(f>>>0)%3|0?f:i-2|0;break m}n:{if((i>>>0)%3|0){g=i-1|0;break n}g=i+2|0;f=-1;if((g|0)==-1){break m}}i=H[l+(g<<2)>>2];f=-1;if((i|0)==-1){break m}f=i-1|0;if((i>>>0)%3|0){break m}f=i+2|0}i=f;if((j|0)==(i|0)){f=d;break h}if(!((s^1)&1|(i|0)!=-1)){if(!x){f=d;break h}f=H[y>>2];if((f|0)==-1){f=d;break h}s=0;i=(f>>>0)%3|0?f-1|0:f+2|0}f=d;if((i|0)!=-1){continue}break}}d=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Z=N(e,w)<<2;x=Z+b|0;l=(N(C-2|0,e)<<2)+b|0;k=H[a+136>>2];i=0;if(e){while(1){j=d<<2;g=H[j+l>>2]-H[j+x>>2]|0;H[j+r>>2]=g;H[j+k>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;j=i;i=g>>31;i=j+(i+g^i)|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=h+200|0;Fb(d,J,k,e);g=Eb(d);k=ea;n=g;g=H[d+12>>2];d=H[d+16>>2];g=(((g-d|0)+1|0)/64|0)+d<<3;j=d<<3;o=j;d=g+j|0;j=(g>>31)+(j>>31)|0;j=d>>>0>>0?j+1|0:j;o=d;d=n+d|0;g=j+k|0;j=d;d=d>>>0>>0?g+1|0:g;O=(f|0)>0;o:{if(!O){E=f-1|0;break o}E=f-1|0;o=E<<3;g=o+(h+48|0)|0;n=g;k=f+H[g>>2]|0;g=H[g+4>>2];g=f>>>0>k>>>0?g+1|0:g;H[n>>2]=k;H[n+4>>2]=g;u=U(Gb(k,H[o+(h+80|0)>>2])*(+(k>>>0)+ +(g|0)*4294967296));p:{if(P(u)<0x8000000000000000){k=P(u)>=1?~~(u>0?R(T(u*2.3283064365386963e-10),4294967295):U((u-+(~~u>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~u>>>0;break p}k=-2147483648;g=0}g=g+j|0;j=g}y=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=j;H[h+12>>2]=i;db(ca,l,l+V|0);Vc(ba,r,v);d=E<<3;o=d+(h+80|0)|0;ga=h+200|0;q:{r:{s:{t:{if((f|0)>0){i=h+124|0;n=i+f|0;p=n-2|0;l=n-1|0;ha=!f|(l|0)==(i|0);_=d+(h+48|0)|0;s=1;while(1){y=y+1|0;if((f|0)>0){ta(h+124|0,1,f)}ta(h+124|0,0,y);u:{v:while(1){if(e){ta(H[h+128>>2],0,V)}z=0;d=0;if((f|0)>0){while(1){if(!I[(h+124|0)+d|0]){w:{if(!e){break w}i=H[h+128>>2];m=H[(h+144|0)+N(d,12)>>2];j=0;g=0;k=0;if(D>>>0>2){while(1){q=g<<2;t=q+i|0;H[t>>2]=H[t>>2]+H[m+q>>2];t=q|4;B=t+i|0;H[B>>2]=H[B>>2]+H[m+t>>2];t=q|8;B=t+i|0;H[B>>2]=H[B>>2]+H[m+t>>2];q=q|12;t=q+i|0;H[t>>2]=H[t>>2]+H[m+q>>2];g=g+4|0;k=k+4|0;if((fa|0)!=(k|0)){continue}break}}if(!Y){break w}while(1){k=g<<2;q=k+i|0;H[q>>2]=H[q>>2]+H[k+m>>2];g=g+1|0;j=j+1|0;if((Y|0)!=(j|0)){continue}break}}z=1<>2];x:{y:{z:{if(e){g=0;i=0;if(D){break z}break y}k=H[a+136>>2];j=0;break x}while(1){j=g<<2;k=j+d|0;H[k>>2]=H[k>>2]/(s|0);j=(j|4)+d|0;H[j>>2]=H[j>>2]/(s|0);g=g+2|0;i=i+2|0;if((L|0)!=(i|0)){continue}break}}if(M){d=(g<<2)+d|0;H[d>>2]=H[d>>2]/(s|0)}k=H[a+136>>2];d=H[h+128>>2];i=0;j=0;if(!e){break x}while(1){m=i<<2;g=H[m+d>>2]-H[m+x>>2]|0;H[m+r>>2]=g;H[k+m>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;m=g;g=g>>31;j=(m+g^g)+j|0;i=i+1|0;if((i|0)!=(e|0)){continue}break}}i=h+200|0;Fb(i,J,k,e);g=Eb(i);m=g;g=H[i+12>>2];i=H[i+16>>2];g=(((g-i|0)+1|0)/64|0)+i<<3;k=i<<3;i=g+k|0;i=m+i|0;g=i;if(O){i=H[_+4>>2];k=H[_>>2];u=U(Gb(k,H[o>>2]+s|0)*(+(k>>>0)+ +(i|0)*4294967296));A:{if(P(u)<0x8000000000000000){i=~~u>>>0;break A}i=0}g=i+g|0}i=H[h+8>>2];if(!((i|0)<=(g|0)&((g|0)>(i|0)|(j|0)>=H[h+12>>2]))){H[h+20>>2]=s;F[h+16|0]=z;H[h+8>>2]=g;H[h+12>>2]=j;j=H[h+132>>2];m=j-d|0;k=m>>2;i=H[h+32>>2];g=H[h+24>>2];B:{if(k>>>0<=i-g>>2>>>0){m=H[h+28>>2]-g|0;i=m+d|0;q=m>>2;z=q>>>0>>0?i:j;m=z-d|0;if(m){xa(g,d,m)}if(k>>>0>q>>>0){g=H[h+28>>2];if((j|0)==(z|0)){break B}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}break B}g=g+m|0;break B}if(g){H[h+28>>2]=g;qa(g);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;i=0}if((m|0)<0){break t}g=i>>1;i=i>>>0<2147483644?g>>>0>>0?k:g:1073741823;if(i>>>0>=1073741824){break t}i=i<<2;g=ra(i);H[h+24>>2]=g;H[h+28>>2]=g;H[h+32>>2]=g+i;if((d|0)==(j|0)){break B}j=d;d=m&-4;g=sa(g,j,d)+d|0}H[h+28>>2]=g;i=H[h+44>>2];d=H[h+36>>2];C:{if(i-d>>2>>>0>=A>>>0){g=H[h+40>>2]-d|0;i=g+r|0;j=g>>2;k=j>>>0>>0?i:v;g=k-r|0;if(g){xa(d,r,g)}if(j>>>0>>0){g=H[h+40>>2];if((k|0)==(v|0)){break C}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((v|0)!=(i|0)){continue}break}break C}g=d+g|0;break C}if(d){H[h+40>>2]=d;qa(d);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;i=0}if((K|0)<0){break s}d=i>>1;d=i>>>0<2147483644?d>>>0>>0?A:d:1073741823;if(d>>>0>=1073741824){break s}d=d<<2;g=ra(d);H[h+36>>2]=g;H[h+44>>2]=d+g;if((r|0)==(v|0)){break C}g=sa(g,r,W)+W|0}H[h+40>>2]=g}if(ha){break u}d=-1;k=I[l|0];g=k;while(1){j=g&255;i=d-1|0;m=i+n|0;g=I[m|0];if(j>>>0>g>>>0){j=l;i=n;if((k&255)>>>0<=g>>>0){while(1){k=j;j=j-1|0;q=i-2|0;i=k;if(I[q|0]<=g>>>0){continue}break}k=1}i=d+n|0;F[m|0]=k;F[j|0]=g;g=l;if((d|0)==-1){continue v}while(1){d=I[i|0];F[i|0]=I[g|0];F[g|0]=d;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}continue v}d=i;if((m|0)!=(h+124|0)){continue}break}break}if(l>>>0<=h+124>>>0){break u}d=I[h+124|0];F[h+124|0]=k;F[l|0]=d;g=p;i=aa;if(g>>>0<=i>>>0){break u}while(1){d=I[i|0];F[i|0]=I[g|0];F[g|0]=d;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}}s=s+1|0;if((f|0)!=(y|0)){continue}break}}if(O){d=H[h+20>>2];g=d;i=g+H[o>>2]|0;d=H[o+4>>2]+(g>>31)|0;H[o>>2]=i;H[o+4>>2]=g>>>0>i>>>0?d+1|0:d}d=H[G>>2];if(!e){break q}i=H[h+36>>2];g=0;k=0;if(!D){break r}while(1){l=g<<2;j=H[l+i>>2];H[d+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+i>>2];H[d+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;g=g+2|0;k=k+2|0;if((L|0)!=(k|0)){continue}break}break r}va();X()}va();X()}if(M){g=g<<2;i=H[g+i>>2];H[d+g>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1}d=H[G>>2]}Oc(ga,J,d,e);D:{if((f|0)<=0){break D}j=N(E,12)+a|0;i=0;while(1){E:{d=H[j+52>>2];l=d<<5;g=H[j+48>>2];F:{if(!(I[h+16|0]>>>i&1)){G:{H:{if((g|0)!=(l|0)){break H}if((g+1|0)<0){break E}I:{if(g>>>0<=1073741822){l=g+32&-32;d=d<<6;d=d>>>0>>0?l:d;if(g>>>0>=d>>>0){break H}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((d|0)>=0){break I}La();X()}d=-1;if(g>>>0>2147483646){break G}d=2147483647}k=(d-1>>>5|0)+1|0;d=ra(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=d;l=H[j+44>>2];J:{K:{if(g>>>0>=33){H[d+(g-1>>>3&536870908)>>2]=0;break K}H[d>>2]=0;if(!g){break J}}n=g>>>5|0;o=n<<2;p=xa(d,l,o);n=g-(n<<5)|0;if((n|0)<=0){break J}p=o+p|0;n=-1>>>32-n|0;H[p>>2]=H[p>>2]&(n^-1)|n&H[l+o>>2]}H[j+44>>2]=d;H[j+48>>2]=g;H[j+52>>2]=k;if(!l){break H}qa(l);g=H[j+48>>2]}d=g}H[j+48>>2]=d+1;g=H[j+44>>2]+(d>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>0<=1073741822){l=g+32&-32;d=d<<6;d=d>>>0>>0?l:d;if(g>>>0>=d>>>0){break M}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((d|0)>=0){break N}La();X()}d=-1;if(g>>>0>2147483646){break L}d=2147483647}k=(d-1>>>5|0)+1|0;d=ra(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=d;l=H[j+44>>2];O:{P:{if(g>>>0>=33){H[d+(g-1>>>3&536870908)>>2]=0;break P}H[d>>2]=0;if(!g){break O}}n=g>>>5|0;o=n<<2;p=xa(d,l,o);n=g-(n<<5)|0;if((n|0)<=0){break O}p=o+p|0;n=-1>>>32-n|0;H[p>>2]=H[p>>2]&(n^-1)|n&H[l+o>>2]}H[j+44>>2]=d;H[j+48>>2]=g;H[j+52>>2]=k;if(!l){break M}qa(l);g=H[j+48>>2]}d=g}H[j+48>>2]=d+1;g=H[j+44>>2]+(d>>>3&536870908)|0;l=H[g>>2];ia=g,ja=Bl(d)&l,H[ia>>2]=ja}i=i+1|0;if((i|0)!=(f|0)){continue}break D}break}La();X()}d=H[h+24>>2];f=H[d>>2];d=H[d+4>>2];i=H[x+4>>2];H[h+232>>2]=H[x>>2];H[h+236>>2]=i;H[h+224>>2]=f;H[h+228>>2]=d;_a(h+200|0,S,h+232|0,h+224|0);d=c+Z|0;H[d>>2]=H[h+200>>2];H[d+4>>2]=H[h+204>>2];d=H[h+36>>2];if(d){H[h+40>>2]=d;qa(d)}d=H[h+24>>2];if(d){H[h+28>>2]=d;qa(d)}if((C|0)<3){break c}C=w;f=H[a+40>>2];i=H[f>>2];d=w-1|0;if(d>>>0>2]-i>>2>>>0){continue}break}}ua();X()}va();X()}a=H[h+144>>2];if(e){ta(a,0,e<<2);a=H[h+144>>2]}d=H[a>>2];a=H[a+4>>2];e=H[b+4>>2];H[h+200>>2]=H[b>>2];H[h+204>>2]=e;H[h+232>>2]=d;H[h+236>>2]=a;_a(h+8|0,S,h+200|0,h+232|0);H[c>>2]=H[h+8>>2];H[c+4>>2]=H[h+12>>2];if(r){qa(r)}a=H[h+128>>2];if(a){H[h+132>>2]=a;qa(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;qa(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;qa(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;qa(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;qa(a)}da=h+240|0;return 1}function Ce(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=da-16|0;da=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=H[4782];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=H[b+19176>>2];a=f+8|0;c=H[f+8>>2];b=b+19168|0;l:{if((c|0)==(b|0)){m=19128,n=Bl(d)&e,H[m>>2]=n;break l}H[c+12>>2]=b;H[b+8>>2]=c}b=d<<3;H[f+4>>2]=b|3;b=b+f|0;H[b+4>>2]=H[b+4>>2]|1;break a}k=H[4784];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=H[a+19176>>2];b=H[g+8>>2];a=a+19168|0;m:{if((b|0)==(a|0)){e=Bl(c)&e;H[4782]=e;break m}H[b+12>>2]=a;H[a+8>>2]=b}a=g+8|0;H[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;H[d+4>>2]=f|1;H[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+19168|0;g=H[4787];b=1<>2]}H[c+8>>2]=g;H[b+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=b}H[4787]=d;H[4784]=f;break a}j=H[4783];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=H[((c|a)+(b>>>a|0)<<2)+19432>>2];d=(H[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=H[c+16>>2];if(!a){a=H[c+20>>2];if(!a){break o}}c=(H[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=H[b+24>>2];f=H[b+12>>2];if((f|0)!=(b|0)){a=H[b+8>>2];H[a+12>>2]=f;H[f+8>>2]=a;break b}c=b+20|0;a=H[c>>2];if(!a){a=H[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=H[c>>2];if(a){continue}c=f+16|0;a=H[f+16>>2];if(a){continue}break}H[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=H[4783];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=H[(e<<2)+19432>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(H[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=H[c+20>>2];c=H[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=H[((c|a)+(b>>>a|0)<<2)+19432>>2]}if(!a){break q}}while(1){b=(H[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=H[a+16>>2];if(b){a=b}else{a=H[a+20>>2]}if(a){continue}break}}if(!f|H[4784]-h>>>0<=d>>>0){break k}e=H[f+24>>2];b=H[f+12>>2];if((f|0)!=(b|0)){a=H[f+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break c}c=f+20|0;a=H[c>>2];if(!a){a=H[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=H[c>>2];if(a){continue}c=b+16|0;a=H[b+16>>2];if(a){continue}break}H[g>>2]=0;break c}c=H[4784];if(c>>>0>=h>>>0){d=H[4787];b=c-h|0;u:{if(b>>>0>=16){H[4784]=b;a=d+h|0;H[4787]=a;H[a+4>>2]=b|1;H[c+d>>2]=b;H[d+4>>2]=h|3;break u}H[4787]=0;H[4784]=0;H[d+4>>2]=c|3;a=c+d|0;H[a+4>>2]=H[a+4>>2]|1}a=d+8|0;break a}i=H[4785];if(i>>>0>h>>>0){b=i-h|0;H[4785]=b;c=H[4788];a=c+h|0;H[4788]=a;H[a+4>>2]=b|1;H[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(H[4900]){c=H[4902]}else{H[4903]=-1;H[4904]=-1;H[4901]=4096;H[4902]=4096;H[4900]=l+12&-16^1431655768;H[4905]=0;H[4893]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=H[4892];if(d){b=H[4890];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(I[19572]&4){break f}v:{w:{d=H[4788];if(d){a=19576;while(1){b=H[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=H[a+8>>2];if(a){continue}break}}b=Ib(0);if((b|0)==-1){break g}e=c;d=H[4901];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=H[4892];if(d){a=H[4890];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=Ib(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=Ib(e);if((b|0)==(H[a>>2]+H[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=H[4902];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((Ib(b)|0)!=-1){e=b+e|0;b=a;break e}Ib(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}H[4893]=H[4893]|4}if(c>>>0>2147483646){break d}b=Ib(c);a=Ib(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=H[4890]+e|0;H[4890]=a;if(a>>>0>K[4891]){H[4891]=a}x:{y:{z:{g=H[4788];if(g){a=19576;while(1){d=H[a>>2];c=H[a+4>>2];if((d+c|0)==(b|0)){break z}a=H[a+8>>2];if(a){continue}break}break y}a=H[4786];if(!(a>>>0<=b>>>0?a:0)){H[4786]=b}a=0;H[4895]=e;H[4894]=b;H[4790]=-1;H[4791]=H[4900];H[4897]=0;while(1){d=a<<3;c=d+19168|0;H[d+19176>>2]=c;H[d+19180>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[4785]=c;a=a+b|0;H[4788]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[4789]=H[4904];break x}if(I[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}H[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;H[4788]=c;b=H[4785]+e|0;a=b-a|0;H[4785]=a;H[c+4>>2]=a|1;H[(b+g|0)+4>>2]=40;H[4789]=H[4904];break x}if(K[4786]>b>>>0){H[4786]=b}c=b+e|0;a=19576;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=H[a>>2]){a=H[a+8>>2];if(a){continue}break F}break}if(!(I[a+12|0]&8)){break E}}a=19576;while(1){c=H[a>>2];if(c>>>0<=g>>>0){f=c+H[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=H[a+8>>2];continue}}H[a>>2]=b;H[a+4>>2]=H[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;H[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){H[4788]=i;a=H[4785]+c|0;H[4785]=a;H[i+4>>2]=a|1;break B}if(H[4787]==(e|0)){H[4787]=i;a=H[4784]+c|0;H[4784]=a;H[i+4>>2]=a|1;H[a+i>>2]=a;break B}a=H[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=H[e+8>>2];a=a>>>3|0;b=H[e+12>>2];if((b|0)==(d|0)){m=19128,n=H[4782]&Bl(a),H[m>>2]=n;break G}H[d+12>>2]=b;H[b+8>>2]=d;break G}h=H[e+24>>2];b=H[e+12>>2];H:{if((e|0)!=(b|0)){a=H[e+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break H}I:{a=e+20|0;d=H[a>>2];if(d){break I}a=e+16|0;d=H[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=H[a>>2];if(d){continue}a=b+16|0;d=H[b+16>>2];if(d){continue}break}H[f>>2]=0}if(!h){break G}d=H[e+28>>2];a=(d<<2)+19432|0;J:{if(H[a>>2]==(e|0)){H[a>>2]=b;if(b){break J}m=19132,n=H[4783]&Bl(d),H[m>>2]=n;break G}H[h+(H[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}H[b+24>>2]=h;a=H[e+16>>2];if(a){H[b+16>>2]=a;H[a+24>>2]=b}a=H[e+20>>2];if(!a){break G}H[b+20>>2]=a;H[a+24>>2]=b}e=e+g|0;c=c+g|0}H[e+4>>2]=H[e+4>>2]&-2;H[i+4>>2]=c|1;H[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+19168|0;c=H[4782];a=1<>2]}H[b+8>>2]=i;H[a+12>>2]=i;H[i+12>>2]=b;H[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}H[i+28>>2]=a;H[i+16>>2]=0;H[i+20>>2]=0;f=(a<<2)+19432|0;d=H[4783];b=1<>2]=i;H[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[f>>2];while(1){d=b;if((H[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=H[f+16>>2];if(b){continue}break}H[f+16>>2]=i;H[i+24>>2]=d}H[i+12>>2]=i;H[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[4785]=c;a=a+b|0;H[4788]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[4789]=H[4904];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;H[c+4>>2]=27;a=H[4897];H[c+16>>2]=H[4896];H[c+20>>2]=a;a=H[4895];H[c+8>>2]=H[4894];H[c+12>>2]=a;H[4896]=c+8;H[4895]=e;H[4894]=b;H[4897]=0;a=c+24|0;while(1){H[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}H[c+4>>2]=H[c+4>>2]&-2;f=c-g|0;H[g+4>>2]=f|1;H[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+19168|0;c=H[4782];a=1<>2]}H[b+8>>2]=g;H[a+12>>2]=g;H[g+12>>2]=b;H[g+8>>2]=a;break x}a=31;H[g+16>>2]=0;H[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}H[g+28>>2]=a;d=(a<<2)+19432|0;c=H[4783];b=1<>2]=g;H[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[d>>2];while(1){c=b;if((f|0)==(H[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=H[d+16>>2];if(b){continue}break}H[d+16>>2]=g;H[g+24>>2]=c}H[g+12>>2]=g;H[g+8>>2]=g;break x}a=H[d+8>>2];H[a+12>>2]=i;H[d+8>>2]=i;H[i+24>>2]=0;H[i+12>>2]=d;H[i+8>>2]=a}a=j+8|0;break a}a=H[c+8>>2];H[a+12>>2]=g;H[c+8>>2]=g;H[g+24>>2]=0;H[g+12>>2]=c;H[g+8>>2]=a}a=H[4785];if(a>>>0<=h>>>0){break d}b=a-h|0;H[4785]=b;c=H[4788];a=c+h|0;H[4788]=a;H[a+4>>2]=b|1;H[c+4>>2]=h|3;a=c+8|0;break a}H[4739]=48;a=0;break a}O:{if(!e){break O}c=H[f+28>>2];a=(c<<2)+19432|0;P:{if(H[a>>2]==(f|0)){H[a>>2]=b;if(b){break P}j=Bl(c)&j;H[4783]=j;break O}H[e+(H[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}H[b+24>>2]=e;a=H[f+16>>2];if(a){H[b+16>>2]=a;H[a+24>>2]=b}a=H[f+20>>2];if(!a){break O}H[b+20>>2]=a;H[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;H[f+4>>2]=a|3;a=a+f|0;H[a+4>>2]=H[a+4>>2]|1;break Q}H[f+4>>2]=h|3;e=f+h|0;H[e+4>>2]=d|1;H[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+19168|0;c=H[4782];a=1<>2]}H[b+8>>2]=e;H[a+12>>2]=e;H[e+12>>2]=b;H[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}H[e+28>>2]=a;H[e+16>>2]=0;H[e+20>>2]=0;b=(a<<2)+19432|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=H[b>>2];while(1){b=h;if((H[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=H[c+16>>2];if(h){continue}break}H[c+16>>2]=e}H[e+24>>2]=b;H[e+12>>2]=e;H[e+8>>2]=e;break Q}a=H[b+8>>2];H[a+12>>2]=e;H[b+8>>2]=e;H[e+24>>2]=0;H[e+12>>2]=b;H[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=H[b+28>>2];a=(c<<2)+19432|0;V:{if(H[a>>2]==(b|0)){H[a>>2]=f;if(f){break V}m=19132,n=Bl(c)&j,H[m>>2]=n;break U}H[i+(H[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}H[f+24>>2]=i;a=H[b+16>>2];if(a){H[f+16>>2]=a;H[a+24>>2]=f}a=H[b+20>>2];if(!a){break U}H[f+20>>2]=a;H[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;H[b+4>>2]=a|3;a=a+b|0;H[a+4>>2]=H[a+4>>2]|1;break W}H[b+4>>2]=h|3;f=b+h|0;H[f+4>>2]=d|1;H[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+19168|0;g=H[4787];a=1<>2]}H[c+8>>2]=g;H[a+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=a}H[4787]=f;H[4784]=d}a=b+8|0}da=l+16|0;return a|0}function Gj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=da-32|0;da=j;c=H[b+8>>2];a:{b:{if(I[b+288|0]){c=af(c);d=H[b+12>>2];H[b+12>>2]=c;if(!d){break a}c=b+12|0;break b}c=bf(c);d=H[b+12>>2];H[b+12>>2]=c;if(!d){break a}c=b+12|0}pc(c,d)}c:{c=H[b+12>>2];d:{if(!(H[c+40>>2]!=((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)?c:0)){b=ra(32);c=I[1972]|I[1973]<<8|(I[1974]<<16|I[1975]<<24);d=I[1968]|I[1969]<<8|(I[1970]<<16|I[1971]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1967]|I[1968]<<8|(I[1969]<<16|I[1970]<<24);d=I[1963]|I[1964]<<8|(I[1965]<<16|I[1966]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1959]|I[1960]<<8|(I[1961]<<16|I[1962]<<24);d=I[1955]|I[1956]<<8|(I[1957]<<16|I[1958]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1951]|I[1952]<<8|(I[1953]<<16|I[1954]<<24);d=I[1947]|I[1948]<<8|(I[1949]<<16|I[1950]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;Ia(a+4|0,b,29);qa(b);break d}H[b+264>>2]=b;Da((H[c+28>>2]-H[c+24>>2]>>2)-H[c+44>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+12>>2];Da(((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)-H[c+40>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+8>>2];d=H[c+100>>2];c=H[c+96>>2];F[j+16|0]=0;o=b+28|0;d=(d-c|0)/12|0;c=j+16|0;Ra(o,d,c);d=H[b+12>>2];f=H[d+28>>2];d=H[d+24>>2];H[j+16>>2]=-1;yb(b+52|0,f-d>>2,c);c=H[b+40>>2];H[b+44>>2]=c;d=H[b+12>>2];f=H[d+4>>2]-H[d>>2]>>2;f=f-((f>>>0)%3|0)|0;e:{if(f>>>0<=H[b+48>>2]-c>>2>>>0){break e}if(f>>>0>=1073741824){break c}g=f<<2;f=ra(g);H[b+44>>2]=f;H[b+40>>2]=f;H[b+48>>2]=f+g;if(!c){break e}qa(c);d=H[b+12>>2]}c=H[d+28>>2];d=H[d+24>>2];F[j+16|0]=0;Ra(b+84|0,c-d>>2,j+16|0);H[b+164>>2]=-1;H[b+168>>2]=0;H[b+100>>2]=H[b+96>>2];H[b+112>>2]=H[b+108>>2];if(H[b+132>>2]){d=H[b+128>>2];if(d){while(1){c=H[d>>2];qa(d);d=c;if(c){continue}break}}d=0;H[b+128>>2]=0;c=H[b+124>>2];f:{if(!c){break f}if(c-1>>>0>=3){g=c&-4;while(1){f=d<<2;H[f+H[b+120>>2]>>2]=0;H[H[b+120>>2]+(f|4)>>2]=0;H[H[b+120>>2]+(f|8)>>2]=0;H[H[b+120>>2]+(f|12)>>2]=0;d=d+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}c=c&3;if(!c){break f}while(1){H[H[b+120>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}H[b+132>>2]=0}H[b+144>>2]=0;c=H[b+12>>2];d=H[c+28>>2];c=H[c+24>>2];H[j+16>>2]=-1;yb(b+152|0,d-c>>2,j+16|0);c=H[b+72>>2];H[b+76>>2]=c;d=H[b+12>>2];d=H[d+4>>2]-H[d>>2]|0;f=(d>>2>>>0)/3|0;g:{if(f>>>0<=H[b+80>>2]-c>>2>>>0){break g}if((d|0)<0){break c}f=f<<2;d=ra(f);H[b+76>>2]=d;H[b+72>>2]=d;H[b+80>>2]=d+f;if(!c){break g}qa(c)}H[b- -64>>2]=0;if(!bg(b)){b=ra(32);c=I[1912]|I[1913]<<8|(I[1914]<<16|I[1915]<<24);d=I[1908]|I[1909]<<8|(I[1910]<<16|I[1911]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1907]|I[1908]<<8|(I[1909]<<16|I[1910]<<24);d=I[1903]|I[1904]<<8|(I[1905]<<16|I[1906]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1899]|I[1900]<<8|(I[1901]<<16|I[1902]<<24);d=I[1895]|I[1896]<<8|(I[1897]<<16|I[1898]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1891]|I[1892]<<8|(I[1893]<<16|I[1894]<<24);d=I[1887]|I[1888]<<8|(I[1889]<<16|I[1890]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;Ia(a+4|0,b,29);qa(b);break d}c=b;h:{if(I[b+288|0]){break h}b=H[c+8>>2];f=H[b+12>>2]-H[b+8>>2]|0;e=f>>2;d=e-1|0;b=H[c+176>>2];i=H[c+172>>2];g=(b-i|0)/136|0;i:{if(d>>>0>g>>>0){Wf(c+172|0,d-g|0);break i}if(d>>>0>=g>>>0){break i}d=i+N(d,136)|0;if((d|0)!=(b|0)){while(1){g=H[b-20>>2];if(g){H[b-16>>2]=g;qa(g)}g=H[b-32>>2];if(g){H[b-28>>2]=g;qa(g)}oc(b-132|0);b=b-136|0;if((d|0)!=(b|0)){continue}break}}H[c+176>>2]=d}if((f|0)==4|(f|0)<=0){break h}i=(e|0)>1?e:1;b=0;f=0;j:{while(1){h=H[H[H[c+8>>2]+8>>2]+(b<<2)>>2];if(H[h+56>>2]){l=N(f,136);d=l+H[c+172>>2]|0;H[d>>2]=b;e=H[d+104>>2];H[d+108>>2]=e;g=H[c+12>>2];g=H[g+4>>2]-H[g>>2]|0;p=g>>2;k:{if(p>>>0<=H[d+112>>2]-e>>2>>>0){break k}if((g|0)<0){break j}g=ra(g);H[d+104>>2]=g;H[d+108>>2]=g;H[d+112>>2]=g+(p<<2);if(!e){break k}qa(e)}d=l+H[c+172>>2]|0;H[d+128>>2]=0;cf(d+4|0,H[c+8>>2],H[c+12>>2],h);f=f+1|0}b=b+1|0;if((i|0)!=(b|0)){continue}break}break h}ya(1604);X()}b=(H[c+176>>2]-H[c+172>>2]|0)/136|0;F[j+31|0]=b;d=H[H[c+4>>2]+44>>2];f=H[d+20>>2];if(!H[d+16>>2]&(f|0)<=0|(f|0)<0){wa(d,H[d+4>>2],j+31|0,j+32|0);b=I[j+31|0]}H[c+284>>2]=b&255;b=H[c+12>>2];d=H[b>>2];b=H[b+4>>2];g=c+200|0;ag(g);H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;f=0;l:{m:{n:{o:{b=b-d|0;if((b|0)>0){b=b>>>2|0;r=b>>>0>1?b:1;d=0;while(1){b=(d>>>0)/3|0;p=b>>>5<<2;q=1<>2]+p>>2]){break p}if(Fc(H[c+12>>2],b)){break p}H[j>>2]=0;b=$f(c,b,j);Fa(g,b);e=H[j>>2];if(b){i=-1;b=-1;l=-1;q:{if((e|0)==-1){break q}m=H[H[c+12>>2]>>2];i=m+(e<<2)|0;h=e+1|0;h=(h>>>0)%3|0?h:e-2|0;if((h|0)!=-1){b=H[m+(h<<2)>>2]}i=H[i>>2];r:{if((e>>>0)%3|0){h=e-1|0;break r}h=e+2|0;l=-1;if((h|0)==-1){break q}}l=H[m+(h<<2)>>2]}h=H[c+84>>2];m=h+(i>>>3&536870908)|0;H[m>>2]=H[m>>2]|1<>>3&536870908)|0;H[i>>2]=H[i>>2]|1<>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];h=H[c+104>>2];s:{if(b>>>0>>0){H[b>>2]=1;H[c+100>>2]=b+4;break s}i=H[c+96>>2];l=b-i|0;m=l>>2;b=m+1|0;if(b>>>0>=1073741824){break o}s=m<<2;h=h-i|0;m=h>>1;h=h>>>0<2147483644?b>>>0>m>>>0?b:m:1073741823;if(h){if(h>>>0>=1073741824){break c}b=ra(h<<2)}else{b=0}m=s+b|0;H[m>>2]=1;if((l|0)>0){sa(b,i,l)}H[c+104>>2]=b+(h<<2);H[c+100>>2]=m+4;H[c+96>>2]=b;if(!i){break s}qa(i)}b=H[o>>2]+p|0;H[b>>2]=H[b>>2]|q;i=-1;if((e|0)!=-1){b=e+1|0;i=(b>>>0)%3|0?b:e-2|0}t:{if(k>>>0>>0){H[k>>2]=i;k=k+4|0;H[j+20>>2]=k;break t}h=k-f|0;l=h>>2;b=l+1|0;if(b>>>0>=1073741824){break n}k=n-f|0;n=k>>1;k=k>>>0<2147483644?b>>>0>n>>>0?b:n:1073741823;if(k){if(k>>>0>=1073741824){break c}b=ra(k<<2)}else{b=0}l=b+(l<<2)|0;H[l>>2]=i;n=b+(k<<2)|0;k=l+4|0;if((h|0)>0){sa(b,f,h)}H[j+24>>2]=n;H[j+20>>2]=k;H[j+16>>2]=b;if(f){qa(f)}f=b}if((e|0)==-1){break p}b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;if((b|0)==-1){break p}b=H[H[H[c+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=(b>>>0)/3|0;if(H[H[o>>2]+(e>>>3&268435452)>>2]>>>e&1){break p}if(_f(c,b)){break p}break m}if((e|0)!=-1){b=e+1|0;b=(b>>>0)%3|0?b:e-2|0}else{b=-1}Hc(c,b,1);if(!_f(c,H[j>>2])){break m}}d=d+1|0;if((r|0)!=(d|0)){continue}break}}i=c+72|0;d=H[c+72>>2];b=H[c+76>>2];u:{if((d|0)==(b|0)){break u}e=b-4|0;if(e>>>0<=d>>>0){break u}while(1){h=H[d>>2];H[d>>2]=H[e>>2];H[e>>2]=h;d=d+4|0;e=e-4|0;if(d>>>0>>0){continue}break}}Zf(i,b,f,k);v:{if(H[c+172>>2]==H[c+176>>2]){break v}b=H[c+8>>2];d=H[b+100>>2];b=H[b+96>>2];F[j|0]=0;Ra(o,(d-b|0)/12|0,j);d=H[c+72>>2];b=H[c+76>>2];if((d|0)==(b|0)){break v}while(1){Yf(c,H[d>>2]);d=d+4|0;if((b|0)!=(d|0)){continue}break}}h=g+32|0;b=H[g+64>>2];b=H[(fa[H[H[b>>2]+40>>2]](b)|0)+56>>2];yd(h,N((H[b+100>>2]-H[b+96>>2]|0)/12|0,3),0,1);w:{e=H[g+68>>2];d=H[g+72>>2]-e|0;if((d|0)<=0){break w}b=H[g+52>>2];i=b;k=H[g+48>>2];if(!k&(b|0)<=0|(b|0)<0){break w}b=d>>2;while(1){d=b-1|0;x:{if(!k&(i|0)<=0|(i|0)<0){break x}o=H[(d<<2)+e>>2];if(!(171>>>o&1)){break x}l=H[(o<<2)+11168>>2];e=H[g+44>>2];i=H[e+4>>2];k=0;while(1){n=i>>>3|0;p=n+H[e>>2]|0;m=I[p|0];i=i&7;t=p,u=Bl(i)&m,F[t|0]=u;n=n+H[e>>2]|0;F[n|0]=I[n|0]|(o>>>k&1)<>2]+1|0;H[e+4>>2]=i;k=k+1|0;if((l|0)!=(k|0)){continue}break}}if((b|0)<2){break w}k=H[g+48>>2];i=H[g+52>>2];e=H[g+68>>2];b=d;continue}}xd(h);b=c+232|0;Ba(g,b);e=H[c+280>>2];y:{if(!e){break y}d=1;if(H[c+284>>2]<=0){break y}Ba(e,b);if(H[c+284>>2]<2){break y}while(1){Ba(H[c+280>>2]+(d<<5)|0,b);d=d+1|0;if((d|0)>2]){continue}break}}Da(H[c+272>>2]-H[c+268>>2]>>2,H[H[c+4>>2]+44>>2]);Da(H[c+168>>2],H[H[c+4>>2]+44>>2]);if(!Xf(c)){b=tc(j,2029);H[a>>2]=-1;a=a+4|0;if(F[b+11|0]>=0){b=H[j+4>>2];H[a>>2]=H[j>>2];H[a+4>>2]=b;H[a+8>>2]=H[j+8>>2];break l}Ia(a,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break l}qa(H[b>>2]);break l}b=H[H[c+4>>2]+44>>2];d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){wa(b,H[b+4>>2],H[c+232>>2],H[c+236>>2])}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break l}va();X()}va();X()}b=ra(48);c=I[1847]|I[1848]<<8|(I[1849]<<16|I[1850]<<24);d=I[1843]|I[1844]<<8|(I[1845]<<16|I[1846]<<24);F[b+24|0]=d;F[b+25|0]=d>>>8;F[b+26|0]=d>>>16;F[b+27|0]=d>>>24;F[b+28|0]=c;F[b+29|0]=c>>>8;F[b+30|0]=c>>>16;F[b+31|0]=c>>>24;c=I[1839]|I[1840]<<8|(I[1841]<<16|I[1842]<<24);d=I[1835]|I[1836]<<8|(I[1837]<<16|I[1838]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1831]|I[1832]<<8|(I[1833]<<16|I[1834]<<24);d=I[1827]|I[1828]<<8|(I[1829]<<16|I[1830]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1823]|I[1824]<<8|(I[1825]<<16|I[1826]<<24);d=I[1819]|I[1820]<<8|(I[1821]<<16|I[1822]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+32|0]=0;H[a>>2]=-1;Ia(a+4|0,b,32);qa(b)}if(!f){break d}qa(f)}da=j+32|0;return}ya(1604);X()}function ef(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;v=da-16|0;da=v;d=ra(88);H[d>>2]=0;H[d+4>>2]=0;H[d+56>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;b=d- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[d+72>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+60>>2]=d;u=da-16|0;da=u;H[d+80>>2]=0;H[d+84>>2]=0;b=H[d+76>>2];H[d+76>>2]=0;if(b){qa(b)}H[d+68>>2]=0;H[d+72>>2]=0;c=d- -64|0;b=H[c>>2];H[c>>2]=0;if(b){qa(b)}e=H[a>>2];b=H[a+4>>2]-e|0;k=(b|0)/12|0;c=N(k,3);i=H[d>>2];f=H[d+4>>2]-i>>2;a:{if(c>>>0>f>>>0){Ea(d,c-f|0);e=H[a>>2];b=H[a+4>>2]-e|0;k=(b|0)/12|0;i=H[d>>2];break a}if(c>>>0>=f>>>0){break a}H[d+4>>2]=(c<<2)+i}if(b){f=k>>>0>1?k:1;a=0;while(1){c=N(a,12);b=c+i|0;c=c+e|0;H[b>>2]=H[c>>2];H[b+4>>2]=H[c+4>>2];H[b+8>>2]=H[c+8>>2];a=a+1|0;if((f|0)!=(a|0)){continue}break}}H[u+12>>2]=-1;g=da-48|0;da=g;b:{s=u+12|0;c:{if(!s){break c}e=H[d+4>>2];n=H[d>>2];b=e-n|0;m=b>>2;c=H[d+12>>2];a=H[d+16>>2]-c>>2;d:{if(m>>>0>a>>>0){Ma(d+12|0,m-a|0,14896);e=H[d+4>>2];n=H[d>>2];b=e-n|0;m=b>>2;break d}if(a>>>0<=m>>>0){break d}H[d+16>>2]=c+(m<<2)}c=0;H[g+40>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;e:{f:{g:{if(!b){H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;break g}h:{if((b|0)>=0){c=ra(b);H[g+36>>2]=c;H[g+32>>2]=c;H[g+40>>2]=(m<<2)+c;a=c;b=0;while(1){i=H[(b<<2)+n>>2];a=a-c>>2;i:{if(i>>>0>>0){break i}H[g+16>>2]=0;f=i+1|0;if(f>>>0>a>>>0){Ma(g+32|0,f-a|0,g+16|0);n=H[d>>2];e=H[d+4>>2];c=H[g+32>>2];break i}if(a>>>0<=f>>>0){break i}H[g+36>>2]=(f<<2)+c}a=(i<<2)+c|0;H[a>>2]=H[a>>2]+1;b=b+1|0;a=e-n|0;m=a>>2;if(b>>>0>=m>>>0){break h}a=H[g+36>>2];continue}}break b}H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;if(!a){break g}if(a>>>0>=2147483645){break f}b=a<<1;a=ra(b);H[g+16>>2]=a;e=a+(m<<3)|0;H[g+24>>2]=e;ta(a,255,b);H[g+20>>2]=e}e=0;H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;a=H[g+36>>2]-c|0;i=a>>2;j:{k:{if(!a){break k}if((a|0)<0){break j}l=ra(a);H[g>>2]=l;a=i<<2;b=a+l|0;H[g+8>>2]=b;a=ta(l,0,a);H[g+4>>2]=b;f=i>>>0>1?i:1;k=f&3;b=0;if(f-1>>>0>=3){p=f&-4;while(1){f=h<<2;H[f+a>>2]=b;t=f|4;b=H[c+f>>2]+b|0;H[t+a>>2]=b;r=f|8;b=b+H[c+t>>2]|0;H[r+a>>2]=b;f=f|12;b=b+H[c+r>>2]|0;H[f+a>>2]=b;b=b+H[c+f>>2]|0;h=h+4|0;j=j+4|0;if((p|0)!=(j|0)){continue}break}}if(!k){break k}while(1){f=h<<2;H[f+a>>2]=b;h=h+1|0;b=H[c+f>>2]+b|0;o=o+1|0;if((k|0)!=(o|0)){continue}break}}if(!m){break e}t=H[d+12>>2];while(1){w=e<<2;b=w+n|0;j=-1;f=e+1|0;a=(f>>>0)%3|0?f:e-2|0;if((a|0)!=-1){j=H[(a<<2)+n>>2]}a=H[b>>2];l:{m:{if(!((e>>>0)%3|0)){o=-1;b=e+2|0;if((b|0)!=-1){o=H[(b<<2)+n>>2]}if(!((a|0)==(j|0)|(a|0)==(o|0))&(j|0)!=(o|0)){break m}H[d+40>>2]=H[d+40>>2]+1;e=e+3|0;break l}o=H[b-4>>2]}b=o<<2;r=H[b+c>>2];n:{o:{if((r|0)<=0){break o}k=H[g+16>>2];b=H[b+l>>2];h=0;while(1){p=k+(b<<3)|0;q=H[p>>2];if((q|0)==-1){break o}p:{if((j|0)!=(q|0)){break p}p=H[p+4>>2];if((p|0)!=-1){q=H[(p<<2)+n>>2]}else{q=-1}if((q|0)==(a|0)){break p}while(1){q:{a=b;h=h+1|0;if((r|0)<=(h|0)){break q}q=k+(a<<3)|0;b=a+1|0;x=k+(b<<3)|0;y=H[x>>2];H[q>>2]=y;H[q+4>>2]=H[x+4>>2];if((y|0)!=-1){continue}}break}H[k+(a<<3)>>2]=-1;if((p|0)==-1){break o}H[t+w>>2]=p;H[t+(p<<2)>>2]=e;break n}b=b+1|0;h=h+1|0;if((r|0)!=(h|0)){continue}break}}a=j<<2;k=H[a+c>>2];if((k|0)<=0){break n}j=H[g+16>>2];b=H[a+l>>2];h=0;while(1){a=j+(b<<3)|0;if(H[a>>2]==-1){H[a>>2]=o;H[a+4>>2]=e;break n}b=b+1|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}e=f}if(e>>>0>>0){continue}break}break e}va();X()}va();X()}H[s>>2]=i;if(l){qa(l)}a=H[g+16>>2];if(a){H[g+20>>2]=a;qa(a)}a=H[g+32>>2];if(!a){break c}H[g+36>>2]=a;qa(a)}da=g+48|0;t=(s|0)!=0;if(t){h=da-32|0;da=h;m=H[d>>2];a=H[d+4>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;r:{s:{b=a-m|0;t:{if(!b){break t}if((b|0)<0){break s}c=b>>2;f=c-1>>>5|0;g=f+1|0;e=ra(g<<2);H[h+24>>2]=g;H[h+16>>2]=e;H[h+20>>2]=c;H[e+((b>>>0<132?0:f)<<2)>>2]=0;b=c>>>5<<2;e=ta(e,0,b);c=c&31;if(!c){break t}b=b+e|0;H[b>>2]=H[b>>2]&(-1>>>32-c^-1)}H[h+8>>2]=0;H[h>>2]=0;while(1){u:{p=0;e=0;if((a|0)==(m|0)){break u}while(1){i=H[h+16>>2];v:{if(H[i+(e>>>3&536870908)>>2]>>>e&1){break v}c=H[h>>2];H[h+4>>2]=c;b=H[d+12>>2];a=e;while(1){w:{f=a+1|0;g=a;a=(f>>>0)%3|0?f:a-2|0;if((a|0)==-1){break w}a=H[b+(a<<2)>>2];if((a|0)==-1){break w}f=a+1|0;a=(f>>>0)%3|0?f:a-2|0;if((e|0)==(a|0)|(a|0)==-1){break w}if(!(H[(a>>>3&536870908)+i>>2]>>>a&1)){continue}}break}b=c;k=g;x:{y:{z:{while(1){a=(k>>>3&536870908)+i|0;H[a>>2]=H[a>>2]|1<>>0)%3|0?a:k-2|0;r=(k>>>0)%3|0;n=(r?-1:2)+k|0;l=n<<2;A:{if((b|0)==(c|0)){break A}s=H[(f<<2)+m>>2];j=H[d+12>>2];a=b;if((n|0)!=-1){q=j+l|0;while(1){B:{if((s|0)!=H[a>>2]){break B}i=H[a+4>>2];o=H[q>>2];if((i|0)==(o|0)){break B}c=-1;a=-1;if((i|0)==-1){break x}break y}a=a+8|0;if((c|0)!=(a|0)){continue}break}break A}while(1){if((s|0)==H[a>>2]){o=-1;n=-1;i=H[a+4>>2];if((i|0)!=-1){break y}}a=a+8|0;if((c|0)!=(a|0)){continue}break}}l=H[l+m>>2];C:{if(H[h+8>>2]!=(c|0)){H[c>>2]=l;H[c+4>>2]=f;c=c+8|0;H[h+4>>2]=c;break C}i=c-b|0;c=i>>3;a=c+1|0;if(a>>>0>=536870912){break z}j=i>>2;j=i>>>0<2147483640?a>>>0>j>>>0?a:j:536870911;if(j){if(j>>>0>=536870912){break b}a=ra(j<<3)}else{a=0}c=a+(c<<3)|0;H[c>>2]=l;H[c+4>>2]=f;c=c+8|0;if((i|0)>0){sa(a,b,i)}H[h+8>>2]=a+(j<<3);H[h+4>>2]=c;H[h>>2]=a;if(!b){break C}qa(b)}D:{E:{if(r){a=k-1|0;break E}a=k+2|0;if((a|0)==-1){break D}}a=H[H[d+12>>2]+(a<<2)>>2];if((a|0)==-1){break D}k=a+((a>>>0)%3|0?-1:2)|0;if((g|0)==(k|0)|(k|0)==-1){break D}m=H[d>>2];b=H[h>>2];i=H[h+16>>2];continue}break}m=H[d>>2];break v}va();X()}c=i;a=H[j+(c<<2)>>2]}if((o|0)!=-1){H[j+(o<<2)>>2]=-1}if((a|0)!=-1){H[H[d+12>>2]+(a<<2)>>2]=-1}a=H[d+12>>2];H[a+(n<<2)>>2]=-1;H[a+(c<<2)>>2]=-1;p=1}e=e+1|0;a=H[d+4>>2];if(e>>>0>2>>>0){continue}break}if(p){continue}}break}a=H[h>>2];if(a){qa(a)}a=H[h+16>>2];if(a){qa(a)}da=h+32|0;break r}La();X()}n=0;h=da-32|0;da=h;a=H[u+12>>2];H[d+36>>2]=a;m=d+24|0;F:{G:{H:{I:{J:{K:{L:{c=H[d+24>>2];b=H[d+28>>2]-c>>2;M:{N:{if(b>>>0>>0){Ma(m,a-b|0,14896);H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;break N}if(a>>>0>>0){H[d+28>>2]=c+(a<<2)}e=0;H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;if(!a){break M}}if((a|0)<0){break L}b=a-1>>>5|0;c=b+1|0;e=ra(c<<2);H[h+24>>2]=c;H[h+16>>2]=e;H[h+20>>2]=a;H[((a>>>0<33?0:b)<<2)+e>>2]=0;b=a>>>5<<2;c=ta(e,0,b);f=a&31;if(!f){break M}b=b+c|0;H[b>>2]=H[b>>2]&(-1>>>32-f^-1)}l=H[d>>2];k=H[d+4>>2];H[h+8>>2]=0;H[h>>2]=0;H[h+4>>2]=0;b=k-l|0;if(!b){break F}if((b|0)<0){break K}c=b>>2;f=c-1>>>5|0;g=f+1|0;j=ra(g<<2);H[h+8>>2]=g;H[h>>2]=j;H[h+4>>2]=c;o=0;H[((b>>>0<132?0:f)<<2)+j>>2]=0;f=c>>>5<<2;g=ta(j,0,f);c=c&31;if(c){f=f+g|0;H[f>>2]=H[f>>2]&(-1>>>32-c^-1)}if(b>>>0<12){break F}while(1){s=N(o,3);c=(s<<2)+l|0;b=H[c>>2];i=-1;f=s+1|0;if((f|0)!=-1){i=H[(f<<2)+l>>2]}O:{if((b|0)==(i|0)){break O}f=b;b=H[c+8>>2];if((f|0)==(b|0)){break O}p=0;if((b|0)==(i|0)){break O}while(1){c=p+s|0;if(!(H[(c>>>3&536870908)+j>>2]>>>c&1)){b=H[(c<<2)+l>>2];i=1<>>5|0;k=i&H[(j<<2)+e>>2];if(k){e=H[d+28>>2];P:{if((e|0)!=H[d+32>>2]){H[e>>2]=-1;H[d+28>>2]=e+4;break P}g=H[m>>2];f=e-g|0;j=f>>2;e=j+1|0;if(e>>>0>=1073741824){break J}i=f>>1;i=f>>>0<2147483644?e>>>0>i>>>0?e:i:1073741823;if(i){if(i>>>0>=1073741824){break b}e=ra(i<<2)}else{e=0}j=e+(j<<2)|0;H[j>>2]=-1;if((f|0)>0){sa(e,g,f)}H[d+32>>2]=e+(i<<2);H[d+28>>2]=j+4;H[d+24>>2]=e;if(!g){break P}qa(g)}e=H[d+52>>2];Q:{if((e|0)!=H[d+56>>2]){H[e>>2]=b;H[d+52>>2]=e+4;break Q}g=H[d+48>>2];f=e-g|0;j=f>>2;e=j+1|0;if(e>>>0>=1073741824){break I}i=f>>1;i=f>>>0<2147483644?e>>>0>i>>>0?e:i:1073741823;if(i){if(i>>>0>=1073741824){break b}e=ra(i<<2)}else{e=0}j=e+(j<<2)|0;H[j>>2]=b;if((f|0)>0){sa(e,g,f)}H[d+56>>2]=e+(i<<2);H[d+52>>2]=j+4;H[d+48>>2]=e;if(!g){break Q}qa(g)}i=H[h+20>>2];b=H[h+24>>2];if((i|0)==b<<5){if((i+1|0)<0){break H}e=h+16|0;if(i>>>0<=1073741822){f=i+32&-32;b=b<<6;b=b>>>0>>0?f:b}else{b=2147483647}Hb(e,b);i=H[h+20>>2]}H[h+20>>2]=i+1;b=H[h+16>>2]+(i>>>3&536870908)|0;e=H[b>>2];z=b,A=Bl(i)&e,H[z>>2]=A;i=1<>>5|0;b=a;a=a+1|0}f=a;e=H[h+16>>2];a=e+(j<<2)|0;H[a>>2]=H[a>>2]|i;r=H[d+24>>2]+(b<<2)|0;i=H[d+12>>2];l=H[d>>2];j=H[h>>2];a=c;R:{S:{T:{U:{V:{W:{while(1){if((a|0)==-1){break W}g=(a>>>3&536870908)+j|0;H[g>>2]=H[g>>2]|1<>2]=a;if(k){H[(a<<2)+l>>2]=b}q=a+1|0;a=(q>>>0)%3|0?q:a-2|0;g=-1;X:{if((a|0)==-1){break X}a=H[i+(a<<2)>>2];g=-1;if((a|0)==-1){break X}g=a+1|0;g=(g>>>0)%3|0?g:a-2|0}a=g;if((c|0)!=(a|0)){continue}break}if((c|0)!=-1){break R}a=1;break V}if((c>>>0)%3|0){a=c-1|0;break V}a=c+2|0;if((a|0)==-1){break U}}a=H[i+(a<<2)>>2];if((a|0)==-1){break U}if(!((a>>>0)%3|0)){break T}a=a-1|0;l=H[d>>2];j=H[h>>2];break S}l=H[d>>2];j=H[h>>2];break R}l=H[d>>2];j=H[h>>2];a=a+2|0;if((a|0)==-1){break R}}c=H[d+12>>2];while(1){g=(a>>>3&536870908)+j|0;H[g>>2]=H[g>>2]|1<>2]=b}Y:{if((a>>>0)%3|0){a=a-1|0;break Y}a=a+2|0;if((a|0)==-1){break R}}a=H[c+(a<<2)>>2];if((a|0)==-1){break R}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=f}p=p+1|0;if((p|0)!=3){continue}break}l=H[d>>2];k=H[d+4>>2]}o=o+1|0;if(o>>>0<(k-l>>2>>>0)/3>>>0){continue}break}break G}La();X()}La();X()}va();X()}va();X()}La();X()}e=H[h+16>>2]}H[d+44>>2]=0;a=H[h+20>>2];if(a){b=a&31;c=(a>>>3&536870908)+e|0;a=e;j=0;while(1){if(!(H[a>>2]>>>n&1)){j=j+1|0;H[d+44>>2]=j}f=(n|0)==31;n=f?0:n+1|0;a=(f<<2)+a|0;if((c|0)!=(a|0)|(b|0)!=(n|0)){continue}break}}a=H[h>>2];if(a){qa(a);e=H[h+16>>2]}if(e){qa(e)}da=h+32|0}da=u+16|0;if(!t){H[v+8>>2]=0;pc(v+8|0,d);d=0}da=v+16|0;return d}ya(1604);X()}function cf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=da-16|0;da=e;a:{b:{if(c){H[a+88>>2]=0;H[a+92>>2]=0;f=H[a+84>>2];H[a+84>>2]=0;if(f){qa(f)}H[a+76>>2]=0;H[a+80>>2]=0;f=H[a+72>>2];H[a+72>>2]=0;if(f){qa(f)}f=H[c>>2];g=H[c+4>>2];F[e+15|0]=0;Ra(a,g-f>>2,e+15|0);f=H[c+28>>2];g=H[c+24>>2];F[e+14|0]=0;Ra(a+12|0,f-g>>2,e+14|0);yb(a+28|0,H[c+4>>2]-H[c>>2]>>2,14964);g=H[c+28>>2]-H[c+24>>2]|0;h=g>>2;f=H[a+52>>2];c:{if(h>>>0<=H[a+60>>2]-f>>2>>>0){break c}if((g|0)<0){break a}j=H[a+56>>2];g=ra(g);i=g+(h<<2)|0;h=j-f|0;j=h+g|0;if((h|0)>0){sa(g,f,h)}H[a+60>>2]=i;H[a+56>>2]=j;H[a+52>>2]=g;if(!f){break c}qa(f)}g=H[c+28>>2]-H[c+24>>2]|0;h=g>>2;f=H[a+40>>2];d:{if(h>>>0<=H[a+48>>2]-f>>2>>>0){break d}if((g|0)<0){break a}j=H[a+44>>2];g=ra(g);i=g+(h<<2)|0;h=j-f|0;j=h+g|0;if((h|0)>0){sa(g,f,h)}H[a+48>>2]=i;H[a+44>>2]=j;H[a+40>>2]=g;if(!f){break d}qa(f)}F[a+24|0]=1;H[a+64>>2]=c}da=e+16|0;c=(c|0)!=0;break b}if(c){H[a+88>>2]=0;H[a+92>>2]=0;c=H[a+84>>2];H[a+84>>2]=0;if(c){qa(c)}H[a+76>>2]=0;H[a+80>>2]=0;c=H[a+72>>2];H[a+72>>2]=0;if(c){qa(c)}g=H[a+64>>2];if(H[g+4>>2]!=H[g>>2]){c=0;while(1){m=(c>>>0)/3|0;e=Fc(g,m);g=H[a+64>>2];e:{if(e){break e}i=H[H[g+12>>2]+(c<<2)>>2];f:{g:{if((i|0)==-1){e=H[a>>2]+(c>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?f:c-2|0;if((f|0)!=-1){e=H[H[g>>2]+(f<<2)>>2]}j=H[a+12>>2];f=j+(e>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0)%3|0){e=c-1|0;break g}h=-1;e=c+2|0;if((e|0)!=-1){break g}break f}if(c>>>0>i>>>0){break e}e=-1;l=I[d+84|0];h=-1;k=c+1|0;n=c-2|0;j=(k>>>0)%3|0?k:n;if((j|0)>=0){f=(j>>>0)/3|0;h=H[(H[b+96>>2]+N(f,12)|0)+(j-N(f,3)<<2)>>2]}f=i+((i>>>0)%3|0?-1:2)|0;if((f|0)>=0){e=(f>>>0)/3|0;e=H[(H[b+96>>2]+N(e,12)|0)+(f-N(e,3)<<2)>>2]}if(!l){o=H[d+68>>2];e=H[o+(e<<2)>>2];h=H[(h<<2)+o>>2]}if((e|0)==(h|0)){e=-1;h=-1;if((j|0)!=-1){h=j+1|0;h=(h>>>0)%3|0?h:j-2|0}h:{if((f|0)==-1){break h}if((f>>>0)%3|0){e=f-1|0;break h}e=f+2|0}j=-1;f=-1;if((h|0)>=0){f=(h>>>0)/3|0;f=H[(H[b+96>>2]+N(f,12)|0)+(h-N(f,3)<<2)>>2]}if((e|0)>=0){h=(e>>>0)/3|0;j=H[(H[b+96>>2]+N(h,12)|0)+(e-N(h,3)<<2)>>2]}if(!l){e=H[d+68>>2];j=H[e+(j<<2)>>2];f=H[e+(f<<2)>>2]}if((f|0)==(j|0)){break e}}F[a+24|0]=0;e=H[a>>2];f=e+(c>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?k:n;if((e|0)!=-1){f=H[H[g>>2]+(e<<2)>>2]}j=H[a+12>>2];e=j+(f>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>2]+(e<<2)>>2]}e=(f>>>3&536870908)+j|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?e:i-2|0;if((e|0)!=-1){h=H[H[g>>2]+(e<<2)>>2]}e=(h>>>3&536870908)+j|0;H[e>>2]=H[e>>2]|1<>>0)%3|0){e=i-1|0;break g}h=-1;e=i+2|0;if((e|0)==-1){break f}}h=H[H[g>>2]+(e<<2)>>2]}e=(h>>>3&536870908)+j|0;H[e>>2]=H[e>>2]|1<>>0>2]-H[g>>2]>>2>>>0){continue}break}}if(!(!b|!d)){j=b;b=0;h=0;f=a;H[f+56>>2]=H[f+52>>2];H[f+44>>2]=H[f+40>>2];k:{l:{m:{g=H[f+64>>2];e=H[g+24>>2];if((e|0)!=H[g+28>>2]){while(1){a=b;c=H[(h<<2)+e>>2];n:{if((c|0)==-1){break n}if((c|0)<0){e=-1}else{b=(c>>>0)/3|0;e=H[(H[j+96>>2]+N(b,12)|0)+(c-N(b,3)<<2)>>2]}e=I[d+84|0]?e:H[H[d+68>>2]+(e<<2)>>2];b=H[f+56>>2];i=H[f+60>>2];o:{if(b>>>0>>0){H[b>>2]=e;H[f+56>>2]=b+4;break o}g=H[f+52>>2];k=b-g|0;l=k>>2;b=l+1|0;if(b>>>0>=1073741824){break m}i=i-g|0;m=i>>1;i=i>>>0<2147483644?b>>>0>m>>>0?b:m:1073741823;if(i){if(i>>>0>=1073741824){break a}b=ra(i<<2)}else{b=0}l=b+(l<<2)|0;H[l>>2]=e;if((k|0)>0){sa(b,g,k)}H[f+60>>2]=b+(i<<2);H[f+56>>2]=l+4;H[f+52>>2]=b;if(!g){break o}qa(g)}p:{if(!(H[H[f+12>>2]+(h>>>3&536870908)>>2]>>>h&1)){break p}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1){break p}g=H[f>>2];if(H[g+(b>>>3&536870908)>>2]>>>b&1){break p}b=H[H[H[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)==-1){break p}i=H[f+64>>2];while(1){c=e;b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;if((b|0)==-1|H[g+(b>>>3&536870908)>>2]>>>b&1){break p}b=H[H[i+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)!=-1){continue}break}}H[H[f+28>>2]+(c<<2)>>2]=a;b=H[f+44>>2];q:{if((b|0)!=H[f+48>>2]){H[b>>2]=c;H[f+44>>2]=b+4;break q}g=H[f+40>>2];e=b-g|0;k=e>>2;b=k+1|0;if(b>>>0>=1073741824){break l}i=e>>1;i=e>>>0<2147483644?b>>>0>i>>>0?b:i:1073741823;if(i){if(i>>>0>=1073741824){break a}b=ra(i<<2)}else{b=0}k=b+(k<<2)|0;H[k>>2]=c;if((e|0)>0){sa(b,g,e)}H[f+48>>2]=b+(i<<2);H[f+44>>2]=k+4;H[f+40>>2]=b;if(!g){break q}qa(g)}b=a+1|0;g=H[f+64>>2];r:{if((c>>>0)%3|0){e=c-1|0;break r}e=c+2|0;if((e|0)==-1){break n}}e=H[H[g+12>>2]+(e<<2)>>2];if((e|0)==-1){break n}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1|(c|0)==(e|0)){break n}while(1){g=e+1|0;g=(g>>>0)%3|0?g:e-2|0;if(H[H[f>>2]+(g>>>3&536870908)>>2]>>>g&1){g=(e|0)<0?-1:H[(H[j+96>>2]+N((e>>>0)/3|0,12)|0)+((e>>>0)%3<<2)>>2];g=I[d+84|0]?g:H[H[d+68>>2]+(g<<2)>>2];a=H[f+56>>2];k=H[f+60>>2];s:{if(a>>>0>>0){H[a>>2]=g;H[f+56>>2]=a+4;break s}i=H[f+52>>2];l=a-i|0;m=l>>2;a=m+1|0;if(a>>>0>=1073741824){break m}k=k-i|0;n=k>>1;k=k>>>0<2147483644?a>>>0>n>>>0?a:n:1073741823;if(k){if(k>>>0>=1073741824){break a}a=ra(k<<2)}else{a=0}m=a+(m<<2)|0;H[m>>2]=g;if((l|0)>0){sa(a,i,l)}H[f+60>>2]=a+(k<<2);H[f+56>>2]=m+4;H[f+52>>2]=a;if(!i){break s}qa(i)}g=b+1|0;a=H[f+44>>2];t:{if((a|0)!=H[f+48>>2]){H[a>>2]=e;H[f+44>>2]=a+4;break t}k=H[f+40>>2];i=a-k|0;m=i>>2;a=m+1|0;if(a>>>0>=1073741824){break l}l=i>>1;l=i>>>0<2147483644?a>>>0>l>>>0?a:l:1073741823;if(l){if(l>>>0>=1073741824){break a}a=ra(l<<2)}else{a=0}m=a+(m<<2)|0;H[m>>2]=e;if((i|0)>0){sa(a,k,i)}H[f+48>>2]=a+(l<<2);H[f+44>>2]=m+4;H[f+40>>2]=a;if(!k){break t}qa(k)}a=b;b=g}H[H[f+28>>2]+(e<<2)>>2]=a;g=H[f+64>>2];u:{if((e>>>0)%3|0){e=e-1|0;break u}e=e+2|0;if((e|0)==-1){break n}}e=H[H[g+12>>2]+(e<<2)>>2];if((e|0)==-1){break n}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1){break n}if((c|0)!=(e|0)){continue}break}}h=h+1|0;e=H[g+24>>2];if(h>>>0>2]-e>>2>>>0){continue}break}}break k}va();X()}va();X()}return}b=0;j=0;f=a;H[f+56>>2]=H[f+52>>2];H[f+44>>2]=H[f+40>>2];v:{w:{x:{e=H[f+64>>2];c=H[e+24>>2];if((c|0)!=H[e+28>>2]){while(1){a=b;d=H[(j<<2)+c>>2];y:{if((d|0)==-1){break y}b=H[f+56>>2];z:{if((b|0)!=H[f+60>>2]){H[b>>2]=a;H[f+56>>2]=b+4;break z}e=H[f+52>>2];c=b-e|0;h=c>>2;b=h+1|0;if(b>>>0>=1073741824){break x}g=c>>1;g=c>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break a}b=ra(g<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=a;if((c|0)>0){sa(b,e,c)}H[f+60>>2]=b+(g<<2);H[f+56>>2]=h+4;H[f+52>>2]=b;if(!e){break z}qa(e)}A:{if(!(H[H[f+12>>2]+(j>>>3&536870908)>>2]>>>j&1)){break A}b=d+1|0;b=(b>>>0)%3|0?b:d-2|0;if((b|0)==-1){break A}e=H[f>>2];if(H[e+(b>>>3&536870908)>>2]>>>b&1){break A}b=H[H[H[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break A}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break A}g=H[f+64>>2];while(1){d=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|H[e+(b>>>3&536870908)>>2]>>>b&1){break A}b=H[H[g+12>>2]+(b<<2)>>2];if((b|0)==-1){break A}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}H[H[f+28>>2]+(d<<2)>>2]=a;b=H[f+44>>2];B:{if((b|0)!=H[f+48>>2]){H[b>>2]=d;H[f+44>>2]=b+4;break B}e=H[f+40>>2];c=b-e|0;h=c>>2;b=h+1|0;if(b>>>0>=1073741824){break w}g=c>>1;g=c>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break a}b=ra(g<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=d;if((c|0)>0){sa(b,e,c)}H[f+48>>2]=b+(g<<2);H[f+44>>2]=h+4;H[f+40>>2]=b;if(!e){break B}qa(e)}b=a+1|0;e=H[f+64>>2];C:{if((d>>>0)%3|0){c=d-1|0;break C}c=d+2|0;if((c|0)==-1){break y}}c=H[H[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break y}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(d|0)){break y}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(H[H[f>>2]+(e>>>3&536870908)>>2]>>>e&1){a=H[f+56>>2];D:{if((a|0)!=H[f+60>>2]){H[a>>2]=b;H[f+56>>2]=a+4;break D}g=H[f+52>>2];e=a-g|0;i=e>>2;a=i+1|0;if(a>>>0>=1073741824){break x}h=e>>1;h=e>>>0<2147483644?a>>>0>h>>>0?a:h:1073741823;if(h){if(h>>>0>=1073741824){break a}a=ra(h<<2)}else{a=0}i=a+(i<<2)|0;H[i>>2]=b;if((e|0)>0){sa(a,g,e)}H[f+60>>2]=a+(h<<2);H[f+56>>2]=i+4;H[f+52>>2]=a;if(!g){break D}qa(g)}e=b+1|0;a=H[f+44>>2];E:{if((a|0)!=H[f+48>>2]){H[a>>2]=c;H[f+44>>2]=a+4;break E}h=H[f+40>>2];g=a-h|0;k=g>>2;a=k+1|0;if(a>>>0>=1073741824){break w}i=g>>1;i=g>>>0<2147483644?a>>>0>i>>>0?a:i:1073741823;if(i){if(i>>>0>=1073741824){break a}a=ra(i<<2)}else{a=0}k=a+(k<<2)|0;H[k>>2]=c;if((g|0)>0){sa(a,h,g)}H[f+48>>2]=a+(i<<2);H[f+44>>2]=k+4;H[f+40>>2]=a;if(!h){break E}qa(h)}a=b;b=e}H[H[f+28>>2]+(c<<2)>>2]=a;e=H[f+64>>2];F:{if((c>>>0)%3|0){c=c-1|0;break F}c=c+2|0;if((c|0)==-1){break y}}c=H[H[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break y}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break y}if((c|0)!=(d|0)){continue}break}}j=j+1|0;c=H[e+24>>2];if(j>>>0>2]-c>>2>>>0){continue}break}}break v}va();X()}va();X()}}return}ya(1604);X()}function Dh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0;e=da+-64|0;da=e;h=H[a+28>>2];g=H[h+4>>2];l=H[a+8>>2];b=H[a+4>>2];c=l-b|0;a:{if(!c){break a}c=c>>2;j=c>>>0>1?c:1;i=j&3;f=H[g+8>>2];c=0;if(j-1>>>0>=3){j=j&-4;while(1){m=d;d=c<<2;d=(((m+F[H[f+(H[d+b>>2]<<2)>>2]+24|0]|0)+F[H[f+(H[(d|4)+b>>2]<<2)>>2]+24|0]|0)+F[H[f+(H[(d|8)+b>>2]<<2)>>2]+24|0]|0)+F[H[f+(H[(d|12)+b>>2]<<2)>>2]+24|0]|0;c=c+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}if(!i){break a}while(1){d=F[H[f+(H[(c<<2)+b>>2]<<2)>>2]+24|0]+d|0;c=c+1|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}n=H[g+80>>2];H[a+72>>2]=d;b:{c:{if((b|0)==(l|0)){c=1;break c}while(1){b=H[(o<<2)+b>>2];H[e+60>>2]=b;d:{e:{f:{j=H[H[g+8>>2]+(b<<2)>>2];switch(H[j+28>>2]-1|0){case 0:case 2:case 4:break e;case 8:break f;default:break d}}H[e+36>>2]=-1;H[e+32>>2]=1140;H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;f=H[h+48>>2];b=ra(32);H[e+16>>2]=b;H[e+20>>2]=17;H[e+24>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];c=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);d=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);d=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;h=xb(f,e+60|0,e+16|0,-1);if(F[e+27|0]<0){qa(H[e+16>>2])}g:{if((h|0)<=0){break g}g=H[H[a+28>>2]+48>>2];b=ra(32);H[e+16>>2]=b;H[e+20>>2]=19;H[e+24>>2]=-2147483616;f=0;F[b+19|0]=0;c=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;c=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);d=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);d=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;h:{if(!yc(g,e+60|0,e+16|0)){break h}f=H[H[a+28>>2]+48>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=18;H[e+8>>2]=-2147483616;F[b+18|0]=0;c=I[1706]|I[1707]<<8;F[b+16|0]=c;F[b+17|0]=c>>>8;c=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);d=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);d=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;f=yc(f,e+60|0,e);if(F[e+11|0]>=0){break h}qa(H[e>>2])}if(F[e+27|0]<0){qa(H[e+16>>2])}i:{if(f){c=F[j+24|0];b=0;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;if(c){if((c|0)<0){break b}c=c<<2;b=ra(c);H[e+16>>2]=b;d=b+c|0;H[e+24>>2]=d;ta(b,0,c);H[e+20>>2]=d}g=H[H[a+28>>2]+48>>2];c=ra(32);H[e>>2]=c;H[e+4>>2]=19;H[e+8>>2]=-2147483616;F[c+19|0]=0;d=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[c+15|0]=d;F[c+16|0]=d>>>8;F[c+17|0]=d>>>16;F[c+18|0]=d>>>24;d=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);f=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);f=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;ue(g,e+60|0,e,F[j+24|0],b);if(F[e+11|0]<0){qa(H[e>>2])}g=H[H[a+28>>2]+48>>2];c=ra(32);H[e>>2]=c;H[e+4>>2]=18;H[e+8>>2]=-2147483616;F[c+18|0]=0;d=I[1706]|I[1707]<<8;F[c+16|0]=d;F[c+17|0]=d>>>8;d=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);f=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);f=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;p=te(g,e+60|0,e);if(F[e+11|0]<0){qa(H[e>>2])}Vg(e+32|0,h,b,F[j+24|0],p);if(!b){break i}qa(b);break i}if(!Tg(e+32|0,j,h)){break g}}b=H[a+40>>2];j:{if((b|0)!=H[a+44>>2]){H[b>>2]=1140;c=H[e+36>>2];H[b+16>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+4>>2]=c;d=H[e+44>>2]-H[e+40>>2]|0;if(d){if((d|0)<0){break b}c=ra(d);H[b+8>>2]=c;H[b+12>>2]=c;H[b+16>>2]=c+(d>>2<<2);f=H[e+40>>2];d=H[e+44>>2]-f|0;if((d|0)>0){c=sa(c,f,d)+d|0}H[b+12>>2]=c}L[b+20>>2]=L[e+52>>2];H[a+40>>2]=b+24;break j}f=0;k:{l:{m:{c=H[a+40>>2];h=H[a+36>>2];d=(c-h|0)/24|0;b=d+1|0;if(b>>>0<178956971){g=(H[a+44>>2]-h|0)/24|0;i=g<<1;g=g>>>0<89478485?b>>>0>i>>>0?b:i:178956970;if(g){if(g>>>0>=178956971){break m}f=ra(N(g,24))}b=N(d,24)+f|0;H[b>>2]=1140;d=H[e+36>>2];H[b+16>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+4>>2]=d;l=H[e+40>>2];d=H[e+44>>2]-l|0;if(d){if((d|0)<0){break b}i=ra(d);H[b+8>>2]=i;H[b+16>>2]=i+(d>>2<<2);q=b,r=sa(i,l,d)+d|0,H[q+12>>2]=r}d=N(g,24)+f|0;L[b+20>>2]=L[e+52>>2];f=b+24|0;if((c|0)==(h|0)){break l}while(1){b=b-24|0;H[b>>2]=1140;H[b+4>>2]=H[c-20>>2];g=c-16|0;H[b+8>>2]=H[g>>2];H[b+12>>2]=H[c-12>>2];i=c-8|0;H[b+16>>2]=H[i>>2];H[i>>2]=0;H[g>>2]=0;H[g+4>>2]=0;L[b+20>>2]=L[c-4>>2];c=c-24|0;if((h|0)!=(c|0)){continue}break}H[a+44>>2]=d;d=H[a+40>>2];H[a+40>>2]=f;c=H[a+36>>2];H[a+36>>2]=b;if((c|0)==(d|0)){break k}while(1){d=d-24|0;fa[H[H[d>>2]>>2]](d)|0;if((c|0)!=(d|0)){continue}break}break k}break b}ya(1604);X()}H[a+44>>2]=d;H[a+40>>2]=f;H[a+36>>2]=b}if(c){qa(c)}}b=e+32|0;c=Nc(b,j,n);H[e>>2]=c;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;be(b,j,e+16|0,c);b=H[e+16>>2];if(b){H[e+20>>2]=b;qa(b)}b=H[a+64>>2];n:{if(b>>>0>2]){c=H[e>>2];H[e>>2]=0;H[b>>2]=c;H[a+64>>2]=b+4;break n}b=0;o:{p:{q:{d=H[a+60>>2];f=H[a+64>>2]-d>>2;c=f+1|0;if(c>>>0<1073741824){d=H[a+68>>2]-d|0;j=d>>1;c=d>>>0<2147483644?c>>>0>j>>>0?c:j:1073741823;if(c){if(c>>>0>=1073741824){break q}b=ra(c<<2)}j=H[e>>2];H[e>>2]=0;d=(f<<2)+b|0;H[d>>2]=j;f=(c<<2)+b|0;j=d+4|0;b=H[a+64>>2];c=H[a+60>>2];if((b|0)==(c|0)){break p}while(1){b=b-4|0;h=H[b>>2];H[b>>2]=0;d=d-4|0;H[d>>2]=h;if((b|0)!=(c|0)){continue}break}H[a+68>>2]=f;b=H[a+64>>2];H[a+64>>2]=j;c=H[a+60>>2];H[a+60>>2]=d;if((b|0)==(c|0)){break o}while(1){b=b-4|0;d=H[b>>2];H[b>>2]=0;if(d){Pa(d)}if((b|0)!=(c|0)){continue}break}break o}break b}ya(1604);X()}H[a+68>>2]=f;H[a+64>>2]=j;H[a+60>>2]=d}if(c){qa(c)}}b=H[e>>2];H[e>>2]=0;if(b){Pa(b)}H[e+32>>2]=1140;b=H[e+40>>2];if(!b){break d}H[e+44>>2]=b;qa(b);break d}H[e+32>>2]=1140;a=H[e+40>>2];if(a){H[e+44>>2]=a;qa(a)}c=0;break c}d=F[j+24|0];H[e+40>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;r:{if(!d){f=0;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;d=0;break r}if((d|0)<0){break b}b=d<<2;f=ra(b);H[e+32>>2]=f;h=b+f|0;H[e+40>>2]=h;c=0;b=f;g=d&7;if(g){while(1){H[b>>2]=2147483647;b=b+4|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if((d-1&1073741823)>>>0>=7){while(1){H[b+24>>2]=2147483647;H[b+28>>2]=2147483647;H[b+16>>2]=2147483647;H[b+20>>2]=2147483647;H[b+8>>2]=2147483647;H[b+12>>2]=2147483647;H[b>>2]=2147483647;H[b+4>>2]=2147483647;b=b+32|0;if((h|0)!=(b|0)){continue}break}}H[e+36>>2]=h;b=F[j+24|0];d=0;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;if(!b){break r}if((b|0)<0){break b}b=b<<2;d=ra(b);H[e+16>>2]=d;c=b+d|0;H[e+24>>2]=c;ta(d,0,b);H[e+20>>2]=c}h=I[j+24|0];g=0;b=d;if(H[j+80>>2]){while(1){c=d;_c(j,g,h<<24>>24,b);h=F[j+24|0];s:{if((h|0)<=0){break s}b=0;if((h|0)!=1){l=h&-2;d=0;while(1){i=b<<2;k=i+f|0;m=H[c+i>>2];if(H[k>>2]>(m|0)){H[k>>2]=m}i=i|4;k=i+f|0;i=H[c+i>>2];if(H[k>>2]>(i|0)){H[k>>2]=i}b=b+2|0;d=d+2|0;if((l|0)!=(d|0)){continue}break}}if(!(h&1)){break s}b=b<<2;d=b+f|0;b=H[b+c>>2];if(H[d>>2]<=(b|0)){break s}H[d>>2]=b}g=g+1|0;if(g>>>0>2]){d=H[e+16>>2];f=H[e+32>>2];b=c;continue}break}d=c}b=0;t:{if(h<<24>>24<=0){break t}u:{while(1){v:{l=(b<<2)+f|0;c=H[a+52>>2];w:{if((c|0)!=H[a+56>>2]){H[c>>2]=H[l>>2];H[a+52>>2]=c+4;break w}g=H[a+48>>2];h=c-g|0;k=h>>2;c=k+1|0;if(c>>>0>=1073741824){break v}i=h>>1;i=h>>>0<2147483644?c>>>0>i>>>0?c:i:1073741823;if(i){if(i>>>0>=1073741824){break u}c=ra(i<<2)}else{c=0}k=c+(k<<2)|0;H[k>>2]=H[l>>2];if((h|0)>0){sa(c,g,h)}H[a+56>>2]=c+(i<<2);H[a+52>>2]=k+4;H[a+48>>2]=c;if(!g){break w}qa(g)}b=b+1|0;if((b|0)>2];if(o>>>0>=H[a+8>>2]-b>>2>>>0){break c}h=H[a+28>>2];g=H[h+4>>2];continue}}da=e- -64|0;return c|0}va();X()}function Ad(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=O(0);e=da-112|0;da=e;H[e+88>>2]=0;H[e+92>>2]=0;H[e+80>>2]=0;H[e+84>>2]=0;H[e+96>>2]=1065353216;c=H[a+80>>2];H[e+40>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=ra(d);H[e+32>>2]=g;c=d+g|0;H[e+40>>2]=c;ta(g,0,d);H[e+36>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;h=c+d|0;c=I[h+12|0]|I[h+13|0]<<8|(I[h+14|0]<<16|I[h+15|0]<<24);H[e+72>>2]=I[h+8|0]|I[h+9|0]<<8|(I[h+10|0]<<16|I[h+11|0]<<24);H[e+76>>2]=c;c=I[h+4|0]|I[h+5|0]<<8|(I[h+6|0]<<16|I[h+7|0]<<24);H[e+64>>2]=I[h|0]|I[h+1|0]<<8|(I[h+2|0]<<16|I[h+3|0]<<24);H[e+68>>2]=c;f=I[h|0]|I[h+1|0]<<8|(I[h+2|0]<<16|I[h+3|0]<<24);d=I[h+4|0]|I[h+5|0]<<8|(I[h+6|0]<<16|I[h+7|0]<<24);c=I[h+12|0]|I[h+13|0]<<8|(I[h+14|0]<<16|I[h+15|0]<<24);H[e+56>>2]=I[h+8|0]|I[h+9|0]<<8|(I[h+10|0]<<16|I[h+11|0]<<24);H[e+60>>2]=c;H[e+48>>2]=f;H[e+52>>2]=d;d=0;i=H[e+84>>2];c:{if(!i){break c}h=H[e+80>>2];j=H[e+60>>2]^(H[e+56>>2]^(H[e+52>>2]^(H[e+48>>2]^318)+239)+239)+239;c=j&i-1;f=Al(i);d:{if(f>>>0<=1){break d}c=j;if(c>>>0>>0){break d}c=(j>>>0)%(i>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){k=H[e+60>>2];p=H[e+56>>2];n=H[e+52>>2];m=H[e+48>>2];while(1){f=H[c+4>>2];f:{if((f|0)!=(j|0)){if(f>>>0>=i>>>0){f=(f>>>0)%(i>>>0)|0}if((h|0)!=(f|0)){break c}break f}f=H[c+8>>2];g:{if((f|0)!=(m|0)){f=(f|0)==(m|0);break g}f=H[c+12>>2];if((f|0)!=(n|0)){f=(f|0)==(n|0);break g}f=H[c+16>>2];if((f|0)!=(p|0)){f=(f|0)==(p|0);break g}f=(k|0)==H[c+20>>2]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}m=i-1|0;k=H[e+60>>2];i=H[e+56>>2];p=H[e+52>>2];n=H[e+48>>2];while(1){f=H[c+4>>2];h:{if((f|0)!=(j|0)){if((h|0)!=(f&m)){break c}break h}f=H[c+8>>2];if((f|0)!=(n|0)){if((f|0)!=(n|0)){break h}break e}f=H[c+12>>2];if((f|0)!=(p|0)){if((f|0)!=(p|0)){break h}break e}f=H[c+16>>2];if((f|0)!=(i|0)){if((f|0)!=(i|0)){break h}break e}if((k|0)==H[c+20>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+24>>2];break i}c=H[e+60>>2];H[e+16>>2]=H[e+56>>2];H[e+20>>2]=c;c=H[e+52>>2];H[e+8>>2]=H[e+48>>2];H[e+12>>2]=c;H[e+24>>2]=r;c=0;h=H[e+20>>2]^(H[e+16>>2]^(H[e+12>>2]^(H[e+8>>2]^318)+239)+239)+239;j:{k:{l=e+80|0;g=H[l+4>>2];if(!g){break k}d=Al(g);l:{if(d>>>0>=2){c=h;if(g>>>0<=c>>>0){c=(h>>>0)%(g>>>0)|0}i=H[H[l>>2]+(c<<2)>>2];if(!i){break k}if(d>>>0<2){break l}f=H[e+20>>2];m=H[e+16>>2];k=H[e+12>>2];j=H[e+8>>2];while(1){i=H[i>>2];if(!i){break k}d=H[i+4>>2];if((d|0)!=(h|0)){if(d>>>0>=g>>>0){d=(d>>>0)%(g>>>0)|0}if((c|0)!=(d|0)){break k}}d=H[i+8>>2];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=H[i+12>>2];if((d|0)!=(k|0)){d=(d|0)==(k|0);break m}d=H[i+16>>2];if((d|0)!=(m|0)){d=(d|0)==(m|0);break m}d=(f|0)==H[i+20>>2]}if(!d){continue}break}c=0;break j}c=h&g-1;i=H[H[l>>2]+(c<<2)>>2];if(!i){break k}}j=g-1|0;f=H[e+20>>2];n=H[e+16>>2];m=H[e+12>>2];k=H[e+8>>2];while(1){i=H[i>>2];if(!i){break k}d=H[i+4>>2];if((d|0)!=(h|0)&(d&j)!=(c|0)){break k}d=H[i+8>>2];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=H[i+12>>2];if((d|0)!=(m|0)){d=(d|0)==(m|0);break n}d=H[i+16>>2];if((d|0)!=(n|0)){d=(d|0)==(n|0);break n}d=(f|0)==H[i+20>>2]}if(!d){continue}break}c=0;break j}i=ra(28);d=H[e+20>>2];H[i+16>>2]=H[e+16>>2];H[i+20>>2]=d;d=H[e+12>>2];H[i+8>>2]=H[e+8>>2];H[i+12>>2]=d;d=H[e+24>>2];H[i>>2]=0;H[i+4>>2]=h;H[i+24>>2]=d;q=O(H[l+12>>2]+1>>>0);u=L[l+16>>2];o:{if(q>O(u*O(g>>>0))?0:g){break o}d=(g-1&g)!=0|g>>>0<3|g<<1;c=2;q=O(U(O(q/u)));p:{if(q=O(0)){f=~~q>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ja(d);g=H[l+4>>2]}r:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break r}f=g>>>0<3;q=O(U(O(O(K[l+12>>2])/L[l+16>>2])));s:{if(q=O(0)){d=~~q>>>0;break s}d=0}t:{u:{if(f){break u}if(Al(g)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ja(d)}c=c>>>0>>0?d:c;if(g>>>0<=c>>>0){break r}}d=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=ra(k<<2);g=H[l>>2];H[l>>2]=c;if(g){qa(g)}H[l+4>>2]=k;if(k-1>>>0>=3){c=k&-4;g=0;while(1){f=d<<2;H[f+H[l>>2]>>2]=0;H[H[l>>2]+(f|4)>>2]=0;H[H[l>>2]+(f|8)>>2]=0;H[H[l>>2]+(f|12)>>2]=0;d=d+4|0;g=g+4|0;if((c|0)!=(g|0)){continue}break}}c=k&3;if(c){while(1){H[H[l>>2]+(d<<2)>>2]=0;d=d+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}g=H[l+8>>2];if(!g){break v}c=l+8|0;f=H[g+4>>2];d=Al(k);if(d>>>0<2){break x}f=f>>>0>=k>>>0?(f>>>0)%(k>>>0)|0:f;H[H[l>>2]+(f<<2)>>2]=c;c=H[g>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((f|0)==(j|0)){g=c;break z}d=c;p=j<<2;m=p+H[l>>2]|0;if(!H[m>>2]){H[m>>2]=g;g=c;f=j;break z}while(1){j=d;d=H[d>>2];if(d){n=H[c+8>>2];m=H[d+8>>2];A:{if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}n=H[c+12>>2];m=H[d+12>>2];if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}n=H[c+16>>2];m=H[d+16>>2];if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}m=H[c+20>>2]==H[d+20>>2]}if(m){continue}}break}H[g>>2]=d;H[j>>2]=H[H[p+H[l>>2]>>2]>>2];H[H[p+H[l>>2]>>2]>>2]=c}c=H[g>>2];if(c){continue}break}break v}c=H[l>>2];H[l>>2]=0;if(c){qa(c)}H[l+4>>2]=0;break v}ya(1604);X()}f=k-1&f;H[H[l>>2]+(f<<2)>>2]=c;c=H[g>>2];if(!c){break v}}n=k-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(f|0)){g=c;break B}d=c;p=j<<2;k=p+H[l>>2]|0;if(H[k>>2]){while(1){j=d;d=H[d>>2];if(d){m=H[c+8>>2];k=H[d+8>>2];C:{if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}m=H[c+12>>2];k=H[d+12>>2];if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}m=H[c+16>>2];k=H[d+16>>2];if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}k=H[c+20>>2]==H[d+20>>2]}if(k){continue}}break}H[g>>2]=d;H[j>>2]=H[H[p+H[l>>2]>>2]>>2];H[H[p+H[l>>2]>>2]>>2]=c;break B}H[k>>2]=g;g=c;f=j}c=H[g>>2];if(c){continue}break}}}g=H[l+4>>2];c=g-1|0;if(!(c&g)){c=c&h;break o}if(g>>>0>h>>>0){c=h;break o}c=(h>>>0)%(g>>>0)|0}c=H[l>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[i>>2]=H[l+8>>2];H[l+8>>2]=i;H[c>>2]=l+8;c=H[i>>2];if(!c){break D}c=H[c+4>>2];d=g-1|0;E:{if(!(d&g)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(g>>>0)|0}H[H[l>>2]+(c<<2)>>2]=i;break D}H[i>>2]=H[d>>2];H[d>>2]=i}H[l+12>>2]=H[l+12>>2]+1;c=1}F[e+108|0]=c;H[e+104>>2]=i;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,e- -64|0,c);g=H[e+32>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){j=H[a+68>>2];b=H[a+72>>2]-j|0;if(!b){break F}h=H[e+32>>2];b=b>>2;c=b>>>0>1?b:1;o=c&3;b=0;if(c-1>>>0>=3){d=c&-4;g=0;while(1){f=b<<2;c=f+j|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;g=g+4|0;if((d|0)!=(g|0)){continue}break}}if(!o){break F}while(1){c=j+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;t=t+1|0;if((o|0)!=(t|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}j=H[e+32>>2];b=0;if(c-1>>>0>=3){f=c&-4;g=0;while(1){h=b<<2;H[h+d>>2]=H[h+j>>2];o=h|4;H[o+d>>2]=H[j+o>>2];o=h|8;H[o+d>>2]=H[j+o>>2];o=h|12;H[o+d>>2]=H[j+o>>2];b=b+4|0;g=g+4|0;if((f|0)!=(g|0)){continue}break}}g=c&3;if(!g){break F}while(1){c=b<<2;H[c+d>>2]=H[c+j>>2];b=b+1|0;t=t+1|0;if((g|0)!=(t|0)){continue}break}}H[a+80>>2]=r}a=H[e+32>>2];if(a){qa(a)}b=H[e+88>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[e+80>>2];H[e+80>>2]=0;if(a){qa(a)}da=e+112|0;return r}va();X()}function Fe(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,N=0;l=da-336|0;da=l;m=i&65535;p=d;q=e&65535;s=(e^i)&-2147483648;k=h;x=i>>>16&32767;y=e>>>16&32767;a:{b:{if(x-32767>>>0>4294934529&y-32767>>>0>=4294934530){break b}j=e&2147483647;if(!(!d&(j|0)==2147418112?!(b|c):j>>>0<2147418112)){o=d;s=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){o=h;s=i|32768;b=f;c=g;break a}if(!(b|d|(j^2147418112|c))){if(!(f|h|(e^2147418112|g))){b=0;c=0;s=2147450880;break a}s=s|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){b=0;c=0;break a}if(!(b|d|(c|j))){b=!(f|h|(e|g));o=b?0:o;s=b?2147450880:s;b=0;c=0;break a}if(!(f|h|(e|g))){s=s|2147418112;b=0;c=0;break a}if((j|0)==65535|j>>>0<65535){i=b;d=!(p|q);h=d<<6;j=Q(d?b:p)+32|0;b=Q(d?c:q);b=h+((b|0)==32?j:b)|0;Ta(l+320|0,i,c,p,q,b-15|0);n=16-b|0;p=H[l+328>>2];q=H[l+332>>2];c=H[l+324>>2];b=H[l+320>>2]}if(e>>>0>65535){break b}d=!(k|m);e=d<<6;h=Q(d?f:k)+32|0;d=Q(d?g:m);d=e+((d|0)==32?h:d)|0;Ta(l+304|0,f,g,k,m,d-15|0);n=(d+n|0)-16|0;k=H[l+312>>2];m=H[l+316>>2];f=H[l+304>>2];g=H[l+308>>2]}e=m|65536;z=e;A=k;d=k;k=e<<15|d>>>17;d=d<<15|g>>>17;h=0-d|0;e=k;i=1963258675-(e+((d|0)!=0)|0)|0;Za(l+288|0,d,e,0,0,h,i,0,0);j=H[l+296>>2];Za(l+272|0,0-j|0,0-(H[l+300>>2]+((j|0)!=0)|0)|0,0,0,h,i,0,0);h=H[l+280>>2];i=h<<1|H[l+276>>2]>>>31;h=H[l+284>>2]<<1|h>>>31;Za(l+256|0,i,h,0,0,d,e,0,0);j=h;h=H[l+264>>2];Za(l+240|0,i,j,0,0,0-h|0,0-(H[l+268>>2]+((h|0)!=0)|0)|0,0,0);h=H[l+248>>2];i=h<<1|H[l+244>>2]>>>31;h=H[l+252>>2]<<1|h>>>31;Za(l+224|0,i,h,0,0,d,e,0,0);j=h;h=H[l+232>>2];Za(l+208|0,i,j,0,0,0-h|0,0-(H[l+236>>2]+((h|0)!=0)|0)|0,0,0);h=H[l+216>>2];i=h<<1|H[l+212>>2]>>>31;h=H[l+220>>2]<<1|h>>>31;Za(l+192|0,i,h,0,0,d,e,0,0);e=h;h=H[l+200>>2];Za(l+176|0,i,e,0,0,0-h|0,0-(H[l+204>>2]+((h|0)!=0)|0)|0,0,0);i=d;h=H[l+184>>2];d=h<<1|H[l+180>>2]>>>31;e=d-1|0;h=(H[l+188>>2]<<1|h>>>31)-!d|0;Za(l+160|0,i,k,0,0,e,h,0,0);d=f;j=g<<15|d>>>17;Za(l+144|0,d<<15,j,0,0,e,h,0,0);k=H[l+172>>2];m=H[l+160>>2];B=H[l+152>>2];d=m+B|0;i=H[l+164>>2];j=i+H[l+156>>2]|0;j=d>>>0>>0?j+1|0:j;m=(i|0)==(j|0)&d>>>0>>0|i>>>0>j>>>0;i=m+H[l+168>>2]|0;k=i>>>0>>0?k+1|0:k;m=!j&d>>>0>1|(j|0)!=0;i=m+i|0;k=i>>>0>>0?k+1|0:k;Za(l+112|0,e,h,0,0,0-i|0,0-(((i|0)!=0)+k|0)|0,0,0);Za(l+128|0,1-d|0,0-((d>>>0>1)+j|0)|0,0,0,e,h,0,0);G=(y-x|0)+n|0;e=H[l+116>>2];w=e;d=H[l+112>>2];j=e<<1|d>>>31;m=d<<1;n=j;d=j;h=H[l+140>>2];u=h;e=H[l+136>>2];j=h<<1|e>>>31;i=e<<1|H[l+132>>2]>>>31;h=i+m|0;j=d+j|0;j=h>>>0>>0?j+1|0:j;i=h;e=j;j=j-(h>>>0<13927)|0;r=j;k=q|65536;L=k;B=p;j=p;k=k<<1|j>>>31;p=j<<1|c>>>31;d=0;j=d|k;q=j;v=xl(r,d,j,0);d=ea;t=d;j=b;d=c<<1|j>>>31;x=j<<1;y=d;h=h-13927|0;j=(e|0)==(r|0)&h>>>0>>0|e>>>0>r>>>0;e=(e|0)==(n|0)&i>>>0>>0|e>>>0>>0;d=H[l+120>>2];k=H[l+124>>2]<<1|d>>>31;i=d<<1;m=j;n=e;e=u>>>31|0;d=e+(w>>>31|i)|0;j=k;j=d>>>0>>0?j+1|0:j;e=d;d=n+d|0;j=d>>>0>>0?j+1|0:j;e=d;d=m+d|0;k=d>>>0>>0?j+1|0:j;e=d;d=d-1|0;C=k-!e|0;D=0;i=xl(y,o,C,D);e=i+v|0;k=ea+t|0;k=e>>>0>>0?k+1|0:k;m=(k|0)==(t|0)&e>>>0>>0|k>>>0>>0;v=d;i=xl(d,0,p,0);d=i+e|0;j=ea+k|0;j=d>>>0>>0?j+1|0:j;n=d;i=j;e=(j|0)==(k|0)&d>>>0>>0|j>>>0>>0;d=m+e|0;k=0;k=d>>>0>>0?1:k;e=xl(q,o,C,D);d=e+d|0;j=ea+k|0;u=d;d=d>>>0>>0?j+1|0:j;m=xl(q,o,v,o);k=ea;w=xl(C,D,p,o);e=w+m|0;j=ea+k|0;j=e>>>0>>0?j+1|0:j;w=e;e=j;j=(k|0)==(j|0)&m>>>0>w>>>0|j>>>0>>0;m=u+e|0;d=d+j|0;j=m;m=j>>>0>>0?d+1|0:d;u=j;e=0;d=e+n|0;j=i+w|0;j=d>>>0>>0?j+1|0:j;e=j;k=(j|0)==(i|0)&d>>>0>>0|i>>>0>j>>>0;i=u+k|0;j=m;u=i;i=i>>>0>>0?j+1|0:j;n=d;m=e;w=h;h=xl(h,0,p,o);e=ea;t=xl(r,o,y,o);d=t+h|0;j=ea+e|0;j=d>>>0>>0?j+1|0:j;e=(e|0)==(j|0)&d>>>0>>0|e>>>0>j>>>0;h=j;E=u;t=e;F=x&-2;k=xl(v,o,F,0);e=k+d|0;j=ea+j|0;j=e>>>0>>0?j+1|0:j;u=e;k=e;e=j;h=(j|0)==(h|0)&d>>>0>k>>>0|h>>>0>j>>>0;d=t+h|0;k=0;k=d>>>0>>0?1:k;j=d;h=n+d|0;d=k+m|0;d=h>>>0>>0?d+1|0:d;t=h;j=h;h=d;k=(d|0)==(m|0)&j>>>0>>0|d>>>0>>0;d=E+k|0;j=i;M=d;n=d>>>0>>0?j+1|0:j;I=xl(q,o,w,o);E=ea;i=xl(C,D,F,o);d=i+I|0;j=ea+E|0;j=d>>>0>>0?j+1|0:j;C=d;k=xl(r,o,p,o);i=d+k|0;m=j;d=j+ea|0;d=i>>>0>>0?d+1|0:d;J=i;j=xl(y,o,v,o);i=i+j|0;k=ea+d|0;D=i;k=i>>>0>>0?k+1|0:k;i=k;v=0;N=(d|0)==(k|0)&D>>>0>>0|d>>>0>k>>>0;j=(d|0)==(m|0)&C>>>0>J>>>0|d>>>0>>0;d=j+((m|0)==(E|0)&C>>>0>>0|m>>>0>>0)|0;k=0;d=N+d|0;m=i|0;k=m+t|0;j=(d|v)+h|0;v=k;d=k;j=d>>>0>>0?j+1|0:j;m=j;h=(h|0)==(j|0)&d>>>0>>0|h>>>0>j>>>0;d=h+M|0;j=n;E=d;h=d>>>0>>0?j+1|0:j;t=xl(r,o,F,o);r=ea;k=xl(y,o,w,o);d=k+t|0;j=ea+r|0;j=d>>>0>>0?j+1|0:j;n=0;k=(j|0)==(r|0)&d>>>0>>0|j>>>0>>0;r=j;d=j+u|0;j=(k|n)+e|0;n=d;j=d>>>0>>0?j+1|0:j;u=(e|0)==(j|0)&d>>>0>>0|e>>>0>j>>>0;i=0;e=i+d|0;d=j;k=D+d|0;k=e>>>0>>0?k+1|0:k;e=(d|0)==(k|0)&e>>>0>>0|d>>>0>k>>>0;d=u+e|0;j=0;j=d>>>0>>0?1:j;e=d;d=d+v|0;j=j+m|0;j=d>>>0>>0?j+1|0:j;e=j;j=(m|0)==(j|0)&d>>>0>>0|j>>>0>>0;i=j+E|0;k=h;h=i;k=h>>>0>>0?k+1|0:k;i=k;c:{if((k|0)==131071|k>>>0<131071){Za(l+80|0,d,e,h,i,f,g,A,z);j=b<<17;b=0;c=H[l+88>>2];n=b-c|0;k=H[l+80>>2];m=H[l+84>>2];B=(k|m)!=0;r=n-B|0;n=(j-(H[l+92>>2]+(b>>>0>>0)|0)|0)-(n>>>0>>0)|0;b=k;k=0-k|0;m=0-(((b|0)!=0)+m|0)|0;b=G+16382|0;break c}k=h<<31;d=(e&1)<<31|d>>>1;e=e>>>1|k;h=(i&1)<<31|h>>>1;i=i>>>1|0;Za(l+96|0,d,e,h,i,f,g,A,z);q=0;m=H[l+104>>2];n=q-m|0;k=H[l+96>>2];p=H[l+100>>2];x=(k|p)!=0;r=n-x|0;n=((b<<16)-(H[l+108>>2]+(m>>>0>q>>>0)|0)|0)-(n>>>0>>0)|0;j=k;k=0-j|0;m=0-(((j|0)!=0)+p|0)|0;x=b;y=c;p=B;q=L;b=G+16383|0}if((b|0)>=32767){s=s|2147418112;b=0;c=0;break a}d:{if((b|0)>0){c=r;j=n<<1|c>>>31;r=c<<1|m>>>31;n=j;p=h;q=i&65535|b<<16;j=m<<1|k>>>31;b=k<<1;break d}if((b|0)<=-113){b=0;c=0;break a}Jb(l- -64|0,d,e,h,i,1-b|0);Ta(l+48|0,x,y,p,q,b+112|0);d=H[l+64>>2];e=H[l+68>>2];p=H[l+72>>2];q=H[l+76>>2];Za(l+32|0,f,g,A,z,d,e,p,q);c=H[l+40>>2];i=c<<1;c=H[l+44>>2]<<1|c>>>31;b=H[l+56>>2];h=H[l+36>>2];n=h>>>31|i;i=b-n|0;n=H[l+60>>2]-((b>>>0>>0)+c|0)|0;c=H[l+32>>2];k=h<<1|c>>>31;c=c<<1;j=H[l+52>>2];b=H[l+48>>2];h=(k|0)==(j|0)&c>>>0>b>>>0|j>>>0>>0;r=i-h|0;n=n-(h>>>0>i>>>0)|0;h=b;b=h-c|0;j=j-((c>>>0>h>>>0)+k|0)|0}Za(l+16|0,f,g,A,z,3,0,0,0);Za(l,f,g,A,z,5,0,0,0);h=d;m=p;p=d&1;c=b+p|0;d=0;k=j+d|0;k=b>>>0>c>>>0?k+1|0:k;i=c;c=k;g=(k|0)==(g|0)&i>>>0>f>>>0|g>>>0>>0;d=(d|0)==(k|0)&i>>>0

>>0|d>>>0>k>>>0;b=d+r|0;j=n;j=b>>>0>>0?j+1|0:j;f=b;d=b;b=j;g=(d|0)==(A|0)&(j|0)==(z|0)?g:(z|0)==(j|0)&d>>>0>A>>>0|j>>>0>z>>>0;d=h+g|0;k=e;k=d>>>0>>0?k+1|0:k;g=(e|0)==(k|0)&d>>>0>>0|e>>>0>k>>>0;e=m+g|0;j=q;j=e>>>0>>0?j+1|0:j;g=e;e=d;m=g;d=H[l+20>>2];h=(d|0)==(c|0)&K[l+16>>2]>>0|c>>>0>d>>>0;d=H[l+28>>2];g=H[l+24>>2];h=j>>>0<2147418112&((f|0)==(g|0)&(b|0)==(d|0)?h:(d|0)==(b|0)&g>>>0>>0|b>>>0>d>>>0);g=e+h|0;d=k;d=g>>>0>>0?d+1|0:d;h=(d|0)==(k|0)&e>>>0>g>>>0|d>>>0>>0;e=m+h|0;k=e>>>0>>0?j+1|0:j;h=e;e=H[l+4>>2];i=(e|0)==(c|0)&K[l>>2]>>0|c>>>0>e>>>0;c=H[l+12>>2];e=H[l+8>>2];c=k>>>0<2147418112&((e|0)==(f|0)&(b|0)==(c|0)?i:(c|0)==(b|0)&e>>>0>>0|b>>>0>c>>>0);b=c+g|0;j=b>>>0>>0?d+1|0:d;c=j;f=(d|0)==(j|0)&b>>>0>>0|d>>>0>j>>>0;e=h+f|0;d=k;o=e|o;s=s|(e>>>0>>0?d+1|0:d)}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=o;H[a+12>>2]=s;da=l+336|0}function fl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=da-48|0;da=k;c=H[a+4>>2];g=H[a+12>>2];H[k+40>>2]=0;a=k;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;l=H[H[H[c+4>>2]+8>>2]+(g<<2)>>2];d=a+8|0;if((b|0)==-1){b=Ug(g,c)}a:{if((b|0)==-2){break a}if((fa[H[H[c>>2]+8>>2]](c)|0)==1){j=da-32|0;da=j;f=H[H[H[c+4>>2]+8>>2]+(g<<2)>>2];b:{c:{d:{if((fa[H[H[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break d}h=fa[H[H[c>>2]+52>>2]](c)|0;a=fa[H[H[c>>2]+60>>2]](c,g)|0;if(!h|!a){break d}e=fa[H[H[c>>2]+56>>2]](c,g)|0;if(e){c=H[c+56>>2];H[j+20>>2]=e;H[j+16>>2]=c;H[j+28>>2]=a;H[j+24>>2]=a+12;e=j+16|0;a=0;e:{f:{switch(b-1|0){case 0:a=ra(60);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=ra(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=sa(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;H[a>>2]=2776;break e;case 3:a=ra(168);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=ra(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=sa(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=3540;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+144>>2]=0;H[a+160>>2]=0;H[a+152>>2]=0;H[a+156>>2]=0;break e;case 4:a=ra(104);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=ra(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=sa(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+8>>2];c=H[e+12>>2];H[a+84>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=3788;H[a+52>>2]=b;H[a+56>>2]=c;b=H[e+4>>2];H[a+88>>2]=H[e>>2];H[a+92>>2]=b;b=H[e+12>>2];H[a+96>>2]=H[e+8>>2];H[a+100>>2]=b;break e;case 5:break f;default:break e}}a=ra(144);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;g:{h:{c=H[d+28>>2]-H[d+24>>2]|0;if(c){if((c|0)<0){break h}b=ra(c);H[a+32>>2]=b;H[a+36>>2]=b;H[a+40>>2]=b+(c>>2<<2);f=H[d+24>>2];c=H[d+28>>2]-f|0;if((c|0)>0){b=sa(b,f,c)+c|0}H[a+36>>2]=b}H[a>>2]=3428;b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+60>>2]=4652;H[a>>2]=4024;b=H[e+4>>2];H[a+72>>2]=H[e>>2];H[a+76>>2]=b;b=H[e+12>>2];H[a+80>>2]=H[e+8>>2];H[a+84>>2]=b;H[a+104>>2]=1065353216;H[a+108>>2]=-1;H[a+96>>2]=-1;H[a+100>>2]=-1;H[a+88>>2]=1;H[a+92>>2]=-1;H[a+60>>2]=4260;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;break g}va();X()}break e}e=a;break d}e=H[c+56>>2];H[j+20>>2]=h;H[j+16>>2]=e;H[j+28>>2]=a;H[j+24>>2]=a+12;e=j+16|0;a=0;i:{j:{switch(b-1|0){case 0:a=ra(60);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=ra(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=sa(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;H[a>>2]=4680;break i;case 3:a=ra(168);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=ra(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=sa(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=5104;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+144>>2]=0;H[a+160>>2]=0;H[a+152>>2]=0;H[a+156>>2]=0;break i;case 4:a=ra(104);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=ra(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=sa(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+8>>2];c=H[e+12>>2];H[a+84>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=5340;H[a+52>>2]=b;H[a+56>>2]=c;b=H[e+4>>2];H[a+88>>2]=H[e>>2];H[a+92>>2]=b;b=H[e+12>>2];H[a+96>>2]=H[e+8>>2];H[a+100>>2]=b;break i;case 5:break j;default:break i}}a=ra(144);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;k:{l:{c=H[d+28>>2]-H[d+24>>2]|0;if(c){if((c|0)<0){break l}b=ra(c);H[a+32>>2]=b;H[a+36>>2]=b;H[a+40>>2]=b+(c>>2<<2);f=H[d+24>>2];c=H[d+28>>2]-f|0;if((c|0)>0){b=sa(b,f,c)+c|0}H[a+36>>2]=b}H[a>>2]=5048;b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+60>>2]=6148;H[a>>2]=5564;b=H[e+4>>2];H[a+72>>2]=H[e>>2];H[a+76>>2]=b;b=H[e+12>>2];H[a+80>>2]=H[e+8>>2];H[a+84>>2]=b;H[a+104>>2]=1065353216;H[a+108>>2]=-1;H[a+96>>2]=-1;H[a+100>>2]=-1;H[a+88>>2]=1;H[a+92>>2]=-1;H[a+60>>2]=5784;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;break k}va();X()}break i}e=a}da=j+32|0;break b}va();X()}if(e){break a}}e=ra(44);H[e+4>>2]=l;H[e>>2]=3484;a=H[d+8>>2];b=H[d+12>>2];c=H[d+16>>2];j=H[d+20>>2];f=H[d>>2];g=H[d+4>>2];H[e+40>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+24>>2]=c;H[e+28>>2]=j;H[e+16>>2]=a;H[e+20>>2]=b;H[e+8>>2]=f;H[e+12>>2]=g;m:{a=H[d+28>>2];d=H[d+24>>2];a=a-d|0;if(a){if((a|0)<0){break m}b=ra(a);H[e+32>>2]=b;H[e+40>>2]=b+(a>>2<<2);m=e,n=sa(b,d,a)+a|0,H[m+36>>2]=n}H[e>>2]=6176;break a}va();X()}a=H[k+32>>2];if(a){H[k+36>>2]=a;qa(a)}da=k+48|0;return e|0}function of(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da-80|0;da=f;H[f+56>>2]=0;H[f+60>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+64>>2]=1065353216;c=H[a+80>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=ra(d);H[f+16>>2]=g;c=d+g|0;H[f+24>>2]=c;ta(g,0,d);H[f+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+d|0;d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[f+32>>2]=c;H[f+36>>2]=d;H[f+40>>2]=c;H[f+44>>2]=d;d=0;n=H[f+52>>2];c:{if(!n){break c}h=H[f+48>>2];m=J[f+38>>1]^(J[f+36>>1]^(J[f+34>>1]^(J[f+32>>1]^318)+239)+239)+239;c=m&n-1;e=Al(n);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(n>>>0)|0}l=h;h=c;c=H[l+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){o=J[f+32>>1];j=J[f+34>>1];i=J[f+36>>1];l=J[f+38>>1];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=n>>>0){e=(e>>>0)%(n>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=J[c+8>>1];g:{if((e|0)!=(o|0)){e=(e|0)==(o|0);break g}e=J[c+10>>1];if((e|0)!=(j|0)){e=(e|0)==(j|0);break g}e=J[c+12>>1];if((e|0)!=(i|0)){e=(e|0)==(i|0);break g}e=(l|0)==J[c+14>>1]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}i=n-1|0;n=J[f+32>>1];o=J[f+34>>1];j=J[f+36>>1];l=J[f+38>>1];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&i)){break c}break h}e=J[c+8>>1];if((e|0)!=(n|0)){if((e|0)!=(n|0)){break h}break e}e=J[c+10>>1];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=J[c+12>>1];if((e|0)!=(j|0)){if((e|0)!=(j|0)){break h}break e}if((l|0)==J[c+14>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+16>>2];break i}H[f+8>>2]=r;c=H[f+36>>2];H[f>>2]=H[f+32>>2];H[f+4>>2]=c;c=0;m=J[f+6>>1]^(J[f+4>>1]^(J[f+2>>1]^(J[f>>1]^318)+239)+239)+239;j:{k:{k=f+48|0;e=H[k+4>>2];if(!e){break k}d=Al(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}if(d>>>0<2){break l}j=J[f>>1];i=J[f+2>>1];l=J[f+4>>1];h=J[f+6>>1];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[g+8>>1];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=J[g+10>>1];if((d|0)!=(i|0)){d=(d|0)==(i|0);break m}d=J[g+12>>1];if((d|0)!=(l|0)){d=(d|0)==(l|0);break m}d=(h|0)==J[g+14>>1]}if(!d){continue}break}c=0;break j}c=m&e-1;g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}}l=e-1|0;o=J[f>>1];j=J[f+2>>1];i=J[f+4>>1];h=J[f+6>>1];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)&(d&l)!=(c|0)){break k}d=J[g+8>>1];n:{if((d|0)!=(o|0)){d=(d|0)==(o|0);break n}d=J[g+10>>1];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=J[g+12>>1];if((d|0)!=(i|0)){d=(d|0)==(i|0);break n}d=(h|0)==J[g+14>>1]}if(!d){continue}break}c=0;break j}g=ra(20);d=H[f+4>>2];H[g+8>>2]=H[f>>2];H[g+12>>2]=d;d=H[f+8>>2];H[g+4>>2]=m;H[g+16>>2]=d;H[g>>2]=0;p=O(H[k+12>>2]+1>>>0);u=L[k+16>>2];o:{if(p>O(u*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(p/u)));p:{if(p=O(0)){h=~~p>>>0;break p}h=0}d=d>>>0>>0?h:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ja(d);e=H[k+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}h=e>>>0<3;p=O(U(O(O(K[k+12>>2])/L[k+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(h){break u}if(Al(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ja(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}d=0;l=0;i=c;v:{w:{x:{y:{if(c){if(i>>>0>=1073741824){break y}c=ra(i<<2);e=H[k>>2];H[k>>2]=c;if(e){qa(e)}H[k+4>>2]=i;if(i-1>>>0>=3){c=i&-4;e=0;while(1){h=d<<2;H[h+H[k>>2]>>2]=0;H[H[k>>2]+(h|4)>>2]=0;H[H[k>>2]+(h|8)>>2]=0;H[H[k>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=i&3;if(c){while(1){H[H[k>>2]+(d<<2)>>2]=0;d=d+1|0;l=l+1|0;if((c|0)!=(l|0)){continue}break}}e=H[k+8>>2];if(!e){break v}c=k+8|0;h=H[e+4>>2];d=Al(i);if(d>>>0<2){break x}h=h>>>0>=i>>>0?(h>>>0)%(i>>>0)|0:h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){l=H[c+4>>2];if(i>>>0<=l>>>0){l=(l>>>0)%(i>>>0)|0}z:{if((h|0)==(l|0)){e=c;break z}d=c;n=l<<2;j=n+H[k>>2]|0;if(!H[j>>2]){H[j>>2]=e;e=c;h=l;break z}while(1){l=d;d=H[d>>2];if(d){o=J[c+8>>1];j=J[d+8>>1];A:{if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=J[c+10>>1];j=J[d+10>>1];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=J[c+12>>1];j=J[d+12>>1];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}j=J[c+14>>1]==J[d+14>>1]}if(j){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[k>>2];H[k>>2]=0;if(c){qa(c)}H[k+4>>2]=0;break v}ya(1604);X()}h=i-1&h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=i-1|0;while(1){l=o&H[c+4>>2];B:{if((l|0)==(h|0)){e=c;break B}d=c;n=l<<2;i=n+H[k>>2]|0;if(H[i>>2]){while(1){l=d;d=H[d>>2];if(d){j=J[c+8>>1];i=J[d+8>>1];C:{if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=J[c+10>>1];i=J[d+10>>1];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=J[c+12>>1];i=J[d+12>>1];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}i=J[c+14>>1]==J[d+14>>1]}if(i){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c;break B}H[i>>2]=e;e=c;h=l}c=H[e>>2];if(c){continue}break}}}e=H[k+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[k>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[g>>2]=H[k+8>>2];H[k+8>>2]=g;H[c>>2]=k+8;c=H[g>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[k>>2]+(c<<2)>>2]=g;break D}H[g>>2]=H[d>>2];H[d>>2]=g}H[k+12>>2]=H[k+12>>2]+1;c=1}F[f+76|0]=c;H[f+72>>2]=g;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,f+40|0,c);g=H[f+16>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break F}m=H[f+16>>2];b=b>>2;c=b>>>0>1?b:1;q=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){h=b<<2;c=h+l|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|4)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|8)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|12)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!q){break F}while(1){c=l+(b<<2)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((q|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);g=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+g}if(!c){break F}m=H[f+16>>2];e=0;b=0;if(c-1>>>0>=3){q=c&-4;while(1){h=b<<2;H[h+g>>2]=H[h+m>>2];d=h|4;H[d+g>>2]=H[d+m>>2];d=h|8;H[d+g>>2]=H[d+m>>2];d=h|12;H[d+g>>2]=H[d+m>>2];b=b+4|0;t=t+4|0;if((q|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+g>>2]=H[c+m>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=r}a=H[f+16>>2];if(a){qa(a)}b=H[f+56>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[f+48>>2];H[f+48>>2]=0;if(a){qa(a)}da=f+80|0;return r}va();X()}function Bd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da-96|0;da=f;H[f+72>>2]=0;H[f+76>>2]=0;H[f+64>>2]=0;H[f+68>>2]=0;H[f+80>>2]=1065353216;c=H[a+80>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}e=c<<2;n=ra(e);H[f+16>>2]=n;c=e+n|0;H[f+24>>2]=c;ta(n,0,e);H[f+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+d|0;H[f+56>>2]=I[d+8|0]|I[d+9|0]<<8|(I[d+10|0]<<16|I[d+11|0]<<24);c=I[d+4|0]|I[d+5|0]<<8|(I[d+6|0]<<16|I[d+7|0]<<24);H[f+48>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);H[f+52>>2]=c;e=I[d+4|0]|I[d+5|0]<<8|(I[d+6|0]<<16|I[d+7|0]<<24);c=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);H[f+40>>2]=I[d+8|0]|I[d+9|0]<<8|(I[d+10|0]<<16|I[d+11|0]<<24);H[f+32>>2]=c;H[f+36>>2]=e;e=0;c=f- -64|0;o=H[c+4>>2];c:{if(!o){break c}h=H[c>>2];m=H[f+40>>2]^(H[f+36>>2]^(H[f+32>>2]^318)+239)+239;c=m&o-1;d=Al(o);d:{if(d>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(d>>>0>=2){k=H[f+40>>2];g=H[f+36>>2];l=H[f+32>>2];while(1){d=H[c+4>>2];f:{if((d|0)!=(m|0)){if(d>>>0>=o>>>0){d=(d>>>0)%(o>>>0)|0}if((d|0)!=(h|0)){break c}break f}d=H[c+8>>2];g:{if((d|0)!=(l|0)){d=(d|0)==(l|0);break g}d=H[c+12>>2];if((d|0)!=(g|0)){d=(d|0)==(g|0);break g}d=(k|0)==H[c+16>>2]}if(d){break e}}c=H[c>>2];if(c){continue}break}break c}l=o-1|0;k=H[f+40>>2];o=H[f+36>>2];g=H[f+32>>2];while(1){d=H[c+4>>2];h:{if((d|0)!=(m|0)){if((h|0)!=(d&l)){break c}break h}d=H[c+8>>2];if((d|0)!=(g|0)){if((d|0)!=(g|0)){break h}break e}d=H[c+12>>2];if((d|0)!=(o|0)){if((d|0)!=(o|0)){break h}break e}if((k|0)==H[c+16>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}e=c}i:{if(e){H[(s<<2)+n>>2]=H[e+20>>2];break i}H[f+8>>2]=H[f+40>>2];c=H[f+36>>2];H[f>>2]=H[f+32>>2];H[f+4>>2]=c;H[f+12>>2]=r;c=0;m=H[f+8>>2]^(H[f+4>>2]^(H[f>>2]^318)+239)+239;j:{k:{i=f- -64|0;g=H[i+4>>2];if(!g){break k}e=Al(g);l:{if(e>>>0>=2){c=m;if(g>>>0<=c>>>0){c=(m>>>0)%(g>>>0)|0}j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}if(e>>>0<2){break l}d=H[f+8>>2];k=H[f+4>>2];h=H[f>>2];while(1){j=H[j>>2];if(!j){break k}e=H[j+4>>2];if((e|0)!=(m|0)){if(e>>>0>=g>>>0){e=(e>>>0)%(g>>>0)|0}if((c|0)!=(e|0)){break k}}e=H[j+8>>2];m:{if((e|0)!=(h|0)){e=(e|0)==(h|0);break m}e=H[j+12>>2];if((e|0)!=(k|0)){e=(e|0)==(k|0);break m}e=(d|0)==H[j+16>>2]}if(!e){continue}break}c=0;break j}c=m&g-1;j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}}h=g-1|0;d=H[f+8>>2];l=H[f+4>>2];k=H[f>>2];while(1){j=H[j>>2];if(!j){break k}e=H[j+4>>2];if((e|0)!=(m|0)&(e&h)!=(c|0)){break k}e=H[j+8>>2];n:{if((e|0)!=(k|0)){e=(e|0)==(k|0);break n}e=H[j+12>>2];if((e|0)!=(l|0)){e=(e|0)==(l|0);break n}e=(d|0)==H[j+16>>2]}if(!e){continue}break}c=0;break j}j=ra(24);H[j+16>>2]=H[f+8>>2];e=H[f+4>>2];H[j+8>>2]=H[f>>2];H[j+12>>2]=e;e=H[f+12>>2];H[j>>2]=0;H[j+4>>2]=m;H[j+20>>2]=e;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(u>O(p*O(g>>>0))?0:g){break o}e=(g-1&g)!=0|g>>>0<3|g<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){d=~~p>>>0;break p}d=0}e=d>>>0>e>>>0?d:e;q:{if((e|0)==1){break q}if(!(e&e-1)){c=e;break q}c=Ja(e);g=H[i+4>>2]}r:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break r}d=g>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){e=~~p>>>0;break s}e=0}t:{u:{if(d){break u}if(Al(g)>>>0>1){break u}e=e>>>0<2?e:1<<32-Q(e-1|0);break t}e=Ja(e)}c=c>>>0>>0?e:c;if(g>>>0<=c>>>0){break r}}d=0;k=0;l=c;v:{w:{x:{y:{if(c){if(l>>>0>=1073741824){break y}c=ra(l<<2);e=H[i>>2];H[i>>2]=c;if(e){qa(e)}H[i+4>>2]=l;if(l-1>>>0>=3){c=l&-4;e=0;while(1){h=d<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=l&3;if(c){while(1){H[H[i>>2]+(d<<2)>>2]=0;d=d+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}e=H[i+8>>2];if(!e){break v}c=i+8|0;h=H[e+4>>2];d=Al(l);if(d>>>0<2){break x}h=h>>>0>=l>>>0?(h>>>0)%(l>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){k=H[c+4>>2];if(l>>>0<=k>>>0){k=(k>>>0)%(l>>>0)|0}z:{if((h|0)==(k|0)){e=c;break z}d=c;n=k<<2;g=n+H[i>>2]|0;if(!H[g>>2]){H[g>>2]=e;e=c;h=k;break z}while(1){k=d;d=H[d>>2];if(d){o=H[c+8>>2];g=H[d+8>>2];A:{if((o|0)!=(g|0)){g=(g|0)==(o|0);break A}o=H[c+12>>2];g=H[d+12>>2];if((o|0)!=(g|0)){g=(g|0)==(o|0);break A}g=H[c+16>>2]==H[d+16>>2]}if(g){continue}}break}H[e>>2]=d;H[k>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}ya(1604);X()}h=l-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=l-1|0;while(1){k=o&H[c+4>>2];B:{if((k|0)==(h|0)){e=c;break B}d=c;n=k<<2;l=n+H[i>>2]|0;if(H[l>>2]){while(1){k=d;d=H[d>>2];if(d){g=H[c+8>>2];l=H[d+8>>2];C:{if((g|0)!=(l|0)){g=(g|0)==(l|0);break C}g=H[c+12>>2];l=H[d+12>>2];if((g|0)!=(l|0)){g=(g|0)==(l|0);break C}g=H[c+16>>2]==H[d+16>>2]}if(g){continue}}break}H[e>>2]=d;H[k>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[l>>2]=e;e=c;h=k}c=H[e>>2];if(c){continue}break}}}g=H[i+4>>2];c=g-1|0;if(!(c&g)){c=c&m;break o}if(g>>>0>m>>>0){c=m;break o}c=(m>>>0)%(g>>>0)|0}c=H[i>>2]+(c<<2)|0;e=H[c>>2];D:{if(!e){H[j>>2]=H[i+8>>2];H[i+8>>2]=j;H[c>>2]=i+8;c=H[j>>2];if(!c){break D}c=H[c+4>>2];e=g-1|0;E:{if(!(e&g)){c=c&e;break E}if(c>>>0>>0){break E}c=(c>>>0)%(g>>>0)|0}H[H[i>>2]+(c<<2)>>2]=j;break D}H[j>>2]=H[e>>2];H[e>>2]=j}H[i+12>>2]=H[i+12>>2]+1;c=1}F[f+92|0]=c;H[f+88>>2]=j;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,f+48|0,c);n=H[f+16>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[f+16>>2];b=b>>2;c=b>>>0>1?b:1;d=c&3;b=0;if(c-1>>>0>=3){e=c&-4;n=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;n=n+4|0;if((e|0)!=(n|0)){continue}break}}if(!d){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;t=t+1|0;if((d|0)!=(t|0)){continue}break}break F}F[a+84|0]=0;e=H[a+68>>2];b=H[a+72>>2]-e>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);e=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+e}if(!c){break F}m=H[f+16>>2];b=0;if(c-1>>>0>=3){q=c&-4;n=0;while(1){h=b<<2;H[h+e>>2]=H[h+m>>2];d=h|4;H[d+e>>2]=H[d+m>>2];d=h|8;H[d+e>>2]=H[d+m>>2];d=h|12;H[d+e>>2]=H[d+m>>2];b=b+4|0;n=n+4|0;if((q|0)!=(n|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];b=b+1|0;t=t+1|0;if((d|0)!=(t|0)){continue}break}}H[a+80>>2]=r}a=H[f+16>>2];if(a){qa(a)}b=H[f+72>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[f+64>>2];H[f+64>>2]=0;if(a){qa(a)}da=f+96|0;return r}va();X()}function Bf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da+-64|0;da=f;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+48>>2]=1065353216;c=H[a+80>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=ra(d);H[f+8>>2]=g;c=d+g|0;H[f+16>>2]=c;ta(g,0,d);H[f+12>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+e|0;c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[f+24>>2]=c;H[f+28>>2]=c;d=0;n=H[f+36>>2];c:{if(!n){break c}h=H[f+32>>2];m=I[f+27|0]^(I[f+26|0]^(I[f+25|0]^(I[f+24|0]^318)+239)+239)+239;c=m&n-1;e=Al(n);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(n>>>0)|0}l=h;h=c;c=H[l+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){o=I[f+24|0];j=I[f+25|0];i=I[f+26|0];l=I[f+27|0];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=n>>>0){e=(e>>>0)%(n>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=I[c+8|0];g:{if((e|0)!=(o|0)){e=(e|0)==(o|0);break g}e=I[c+9|0];if((e|0)!=(j|0)){e=(e|0)==(j|0);break g}e=I[c+10|0];if((e|0)!=(i|0)){e=(e|0)==(i|0);break g}e=(l|0)==I[c+11|0]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}i=n-1|0;n=I[f+24|0];o=I[f+25|0];j=I[f+26|0];l=I[f+27|0];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&i)){break c}break h}e=I[c+8|0];if((e|0)!=(n|0)){if((e|0)!=(n|0)){break h}break e}e=I[c+9|0];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=I[c+10|0];if((e|0)!=(j|0)){if((e|0)!=(j|0)){break h}break e}if((l|0)==I[c+11|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+12>>2];break i}H[f+4>>2]=r;H[f>>2]=H[f+24>>2];c=0;m=I[f+3|0]^(I[f+2|0]^(I[f+1|0]^(I[f|0]^318)+239)+239)+239;j:{k:{k=f+32|0;e=H[k+4>>2];if(!e){break k}d=Al(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}if(d>>>0<2){break l}j=I[f|0];i=I[f+1|0];l=I[f+2|0];h=I[f+3|0];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[g+8|0];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=I[g+9|0];if((d|0)!=(i|0)){d=(d|0)==(i|0);break m}d=I[g+10|0];if((d|0)!=(l|0)){d=(d|0)==(l|0);break m}d=(h|0)==I[g+11|0]}if(!d){continue}break}c=0;break j}c=m&e-1;g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}}l=e-1|0;o=I[f|0];j=I[f+1|0];i=I[f+2|0];h=I[f+3|0];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)&(d&l)!=(c|0)){break k}d=I[g+8|0];n:{if((d|0)!=(o|0)){d=(d|0)==(o|0);break n}d=I[g+9|0];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=I[g+10|0];if((d|0)!=(i|0)){d=(d|0)==(i|0);break n}d=(h|0)==I[g+11|0]}if(!d){continue}break}c=0;break j}g=ra(16);H[g+8>>2]=H[f>>2];d=H[f+4>>2];H[g+4>>2]=m;H[g+12>>2]=d;H[g>>2]=0;p=O(H[k+12>>2]+1>>>0);u=L[k+16>>2];o:{if(p>O(u*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(p/u)));p:{if(p=O(0)){h=~~p>>>0;break p}h=0}d=d>>>0>>0?h:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ja(d);e=H[k+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}h=e>>>0<3;p=O(U(O(O(K[k+12>>2])/L[k+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(h){break u}if(Al(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ja(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}d=0;l=0;i=c;v:{w:{x:{y:{if(c){if(i>>>0>=1073741824){break y}c=ra(i<<2);e=H[k>>2];H[k>>2]=c;if(e){qa(e)}H[k+4>>2]=i;if(i-1>>>0>=3){c=i&-4;e=0;while(1){h=d<<2;H[h+H[k>>2]>>2]=0;H[H[k>>2]+(h|4)>>2]=0;H[H[k>>2]+(h|8)>>2]=0;H[H[k>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=i&3;if(c){while(1){H[H[k>>2]+(d<<2)>>2]=0;d=d+1|0;l=l+1|0;if((c|0)!=(l|0)){continue}break}}e=H[k+8>>2];if(!e){break v}c=k+8|0;h=H[e+4>>2];d=Al(i);if(d>>>0<2){break x}h=h>>>0>=i>>>0?(h>>>0)%(i>>>0)|0:h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){l=H[c+4>>2];if(i>>>0<=l>>>0){l=(l>>>0)%(i>>>0)|0}z:{if((h|0)==(l|0)){e=c;break z}d=c;n=l<<2;j=n+H[k>>2]|0;if(!H[j>>2]){H[j>>2]=e;e=c;h=l;break z}while(1){l=d;d=H[d>>2];if(d){o=I[c+8|0];j=I[d+8|0];A:{if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=I[c+9|0];j=I[d+9|0];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=I[c+10|0];j=I[d+10|0];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}j=I[c+11|0]==I[d+11|0]}if(j){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[k>>2];H[k>>2]=0;if(c){qa(c)}H[k+4>>2]=0;break v}ya(1604);X()}h=i-1&h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=i-1|0;while(1){l=o&H[c+4>>2];B:{if((l|0)==(h|0)){e=c;break B}d=c;n=l<<2;i=n+H[k>>2]|0;if(H[i>>2]){while(1){l=d;d=H[d>>2];if(d){j=I[c+8|0];i=I[d+8|0];C:{if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=I[c+9|0];i=I[d+9|0];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=I[c+10|0];i=I[d+10|0];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}i=I[c+11|0]==I[d+11|0]}if(i){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c;break B}H[i>>2]=e;e=c;h=l}c=H[e>>2];if(c){continue}break}}}e=H[k+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[k>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[g>>2]=H[k+8>>2];H[k+8>>2]=g;H[c>>2]=k+8;c=H[g>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[k>>2]+(c<<2)>>2]=g;break D}H[g>>2]=H[d>>2];H[d>>2]=g}H[k+12>>2]=H[k+12>>2]+1;c=1}F[f+60|0]=c;H[f+56>>2]=g;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,f+28|0,c);g=H[f+8>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break F}m=H[f+8>>2];b=b>>2;c=b>>>0>1?b:1;q=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){h=b<<2;c=h+l|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|4)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|8)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|12)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!q){break F}while(1){c=l+(b<<2)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((q|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);g=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+g}if(!c){break F}m=H[f+8>>2];e=0;b=0;if(c-1>>>0>=3){q=c&-4;while(1){h=b<<2;H[h+g>>2]=H[h+m>>2];d=h|4;H[d+g>>2]=H[d+m>>2];d=h|8;H[d+g>>2]=H[d+m>>2];d=h|12;H[d+g>>2]=H[d+m>>2];b=b+4|0;t=t+4|0;if((q|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+g>>2]=H[c+m>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=r}a=H[f+8>>2];if(a){qa(a)}b=H[f+40>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[f+32>>2];H[f+32>>2]=0;if(a){qa(a)}da=f- -64|0;return r}va();X()}function pe(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,O=0;r=da-32|0;da=r;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;n=H[e+20>>2];if(!H[e+16>>2]&(n|0)<=0|(n|0)<0){d=a+4|0;wa(e,H[e+4>>2],a,d);n=H[e+20>>2];if(!H[e+16>>2]&(n|0)<=0|(n|0)<0){wa(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){D=a+12|0;Ca(D);E=a+44|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];F=a- -64|0;d=F;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];G=a+84|0;d=G;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[r+24>>2]=H[b+8>>2];d=H[b+4>>2];H[r+16>>2]=H[b>>2];H[r+20>>2]=d;H[r+8>>2]=H[c+8>>2];b=H[c+4>>2];H[r>>2]=H[c>>2];H[r+4>>2]=b;b=0;f=da-32|0;da=f;d=a;h=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(h){if(h>>>0>=1073741824){break b}a=h<<2;b=ra(a);H[f+8>>2]=b;k=a+b|0;H[f+16>>2]=k;ta(b,0,a);H[f+12>>2]=k}a=H[d+140>>2];c=H[a>>2];if(c){H[a+4>>2]=c;qa(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=H[d+8>>2];k=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=k;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(h){if(h>>>0>=1073741824){break c}c=h<<2;a=ra(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;ta(a,0,c);H[f+12>>2]=b}c=H[d+152>>2];n=H[c>>2];if(n){H[c+4>>2]=n;qa(n);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];z=H[r+4>>2];A=H[r+8>>2];x=H[r+20>>2];v=H[r+24>>2];n=H[r>>2];c=H[r+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;gb(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;b=(a>>>0)/113|0;a=H[H[f+12>>2]+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=n-c;H[a+24>>2]=0;H[a+12>>2]=n;H[a+4>>2]=x;H[a+8>>2]=v;H[a>>2]=c;H[a+16>>2]=z;H[a+20>>2]=A;a=H[f+28>>2];h=a+1|0;H[f+28>>2]=h;if(a>>>0<=h>>>0){J=d+44|0;m=d+12|0;L=d+84|0;M=v&-4;I=v&3;O=v-1>>>0<3;while(1){q=H[f+12>>2];g=H[f+24>>2];k=h-1|0;a=g+k|0;b=(a>>>0)/113|0;a=H[q+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;C=H[a+32>>2];b=H[a+24>>2];n=H[a+12>>2];c=H[a>>2];H[f+28>>2]=k;a=H[f+16>>2];k=a-q|0;if(((k?N(k>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}h=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;k=h<<2;B=N(C,12);q=B+H[d+152>>2]|0;b=H[d>>2]-H[k+H[q>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{p=n-c|0;if(p>>>0<=2){g=H[d+128>>2];H[g>>2]=h;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}g=H[d+140>>2];a=g+B|0;j=g;g=B+12|0;db(j+g|0,H[a>>2],H[a+4>>2]);a=H[g+H[d+140>>2]>>2]+k|0;q=H[a>>2]+(1<>2]=q;a=c;h:{if((n|0)==(a|0)){break h}o=H[x+24>>2];b=c;a=n;if(!v){if(q>>>0>K[k+o>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(q>>>0<=K[(H[z+24>>2]+k|0)+(N(a,A)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){s=o+(N(b,v)<<2)|0;if(q>>>0>K[s+k>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}i=H[z+24>>2]+(N(a,A)<<2)|0;if(q>>>0<=K[i+k>>2]){continue}break}t=0;g=0;u=0;if(!O){while(1){l=g<<2;j=l+s|0;w=H[j>>2];y=j;j=i+l|0;H[y>>2]=H[j>>2];H[j>>2]=w;j=l|4;w=j+s|0;y=H[w>>2];j=i+j|0;H[w>>2]=H[j>>2];H[j>>2]=y;j=l|8;w=j+s|0;y=H[w>>2];j=i+j|0;H[w>>2]=H[j>>2];H[j>>2]=y;l=l|12;j=l+s|0;w=H[j>>2];l=i+l|0;H[j>>2]=H[l>>2];H[l>>2]=w;g=g+4|0;u=u+4|0;if((M|0)!=(u|0)){continue}break}}if(I){while(1){l=g<<2;u=l+s|0;j=H[u>>2];l=i+l|0;H[u>>2]=H[l>>2];H[l>>2]=j;g=g+1|0;t=t+1|0;if((I|0)!=(t|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}q=a-c|0;s=n-a|0;if((q|0)!=(s|0)){xc(L,q>>>0>>0)}b=H[m>>2];g=H[b+12>>2];j=H[b+8>>2];i=(p>>>1|0)-(q>>>0>>0?q:s)|0;i=i<<8&16711680|i<<24|(i>>>8&65280|i>>>24);i=i>>>4&252645135|(i&252645135)<<4;i=i>>>2&858993459|(i&858993459)<<2;t=i>>>1&1431655765|(i&1431655765)<<1;i=Q(p)^31;o=32-i|0;p=t>>>o|0;t=Al(p);l=j+t|0;H[b+8>>2]=l;H[b+12>>2]=l>>>0>>0?g+1|0:g;g=i-t|0;t=g;l=g+H[b>>2]|0;g=H[b+4>>2]+(g>>31)|0;H[b>>2]=l;H[b+4>>2]=l>>>0>>0?g+1|0:g;i:{j:{k:{l:{m:{b=H[m+28>>2];t=32-b|0;n:{if((t|0)>=(i|0)){g=b+i|0;H[m+28>>2]=g;i=-1>>>o<>2]&(i^-1)|i&p<>2]=l;if((g|0)!=32){break i}b=H[m+16>>2];if((b|0)!=H[m+20>>2]){H[b>>2]=l;H[m+16>>2]=b+4;b=0;g=0;break n}i=H[m+12>>2];g=b-i|0;o=g>>2;b=o+1|0;if(b>>>0>=1073741824){break m}p=g>>1;p=g>>>0<2147483644?b>>>0>p>>>0?b:p:1073741823;if(p){if(p>>>0>=1073741824){break l}b=ra(p<<2)}else{b=0}o=b+(o<<2)|0;H[o>>2]=l;if((g|0)>0){sa(b,i,g)}H[m+20>>2]=b+(p<<2);H[m+16>>2]=o+4;H[m+12>>2]=b;b=0;if(!i){g=0;break n}qa(i);g=0;break n}u=H[m+24>>2]&(-1<>2]=u;b=H[m+16>>2];o:{if((b|0)!=H[m+20>>2]){H[b>>2]=u;H[m+16>>2]=b+4;break o}l=H[m+12>>2];g=b-l|0;j=g>>2;b=j+1|0;if(b>>>0>=1073741824){break k}o=g>>1;o=g>>>0<2147483644?b>>>0>o>>>0?b:o:1073741823;if(o){if(o>>>0>=1073741824){break j}b=ra(o<<2)}else{b=0}j=b+(j<<2)|0;H[j>>2]=u;if((g|0)>0){sa(b,l,g)}H[m+20>>2]=b+(o<<2);H[m+16>>2]=j+4;H[m+12>>2]=b;if(!l){break o}qa(l)}g=i-t|0;b=-1>>>32-g&p>>>t}H[m+28>>2]=g;H[m+24>>2]=b;break i}va();X()}ya(1604);X()}va();X()}ya(1604);X()}j=k;b=H[d+152>>2];g=b+B|0;k=H[g>>2];i=j+k|0;H[i>>2]=H[i>>2]+1;i=C+1|0;db(b+N(i,12)|0,k,H[g+4>>2]);if((a|0)!=(c|0)){k=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];b=H[f+16>>2]-g|0;if((k|0)==((b?N(b>>2,113)-1|0:0)|0)){gb(f+8|0);k=H[f+24>>2]+H[f+28>>2]|0;g=H[f+12>>2]}b=(k>>>0)/113|0;b=H[g+(b<<2)>>2]+N(k-N(b,113)|0,36)|0;H[b+32>>2]=C;H[b+28>>2]=q;H[b+24>>2]=h;H[b+12>>2]=a;H[b+4>>2]=x;H[b+8>>2]=v;H[b>>2]=c;H[b+20>>2]=v;H[b+16>>2]=x;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(n|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;k=H[f+12>>2];g=H[f+16>>2]-k|0;if((b|0)==((g?N(g>>2,113)-1|0:0)|0)){gb(f+8|0);k=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}g=(b>>>0)/113|0;b=H[(g<<2)+k>>2]+N(b-N(g,113)|0,36)|0;H[b+32>>2]=i;H[b+28>>2]=s;H[b+24>>2]=h;H[b+12>>2]=n;H[b+8>>2]=v;H[b+4>>2]=x;H[b>>2]=a;H[b+16>>2]=z;H[b+20>>2]=A;h=H[f+28>>2]+1|0;H[f+28>>2]=h;break d}while(1){h=(a-1|0)==(h|0)?0:h+1|0;H[g+(b<<2)>>2]=h;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}if(!p|!a){break e}g=0;b=1;while(1){h=0;p:{if(!b){b=0;break p}k=H[x+24>>2]+(N(H[x+4>>2],c+g|0)<<2)|0;while(1){b=H[H[d+128>>2]+(h<<2)>>2]<<2;s=H[d>>2]-H[b+H[q>>2]>>2]|0;if(s){bc(J,s,H[b+k>>2]);a=H[d+8>>2]}b=a;h=h+1|0;if(b>>>0>h>>>0){continue}break}}g=g+1|0;if((p|0)!=(g|0)){continue}break}}h=H[f+28>>2]}if(h){continue}break}}H[r+16>>2]=c;H[r>>2]=n;H[f+28>>2]=0;a=H[f+16>>2];h=H[f+12>>2];c=a-h|0;if(c>>>0>=9){while(1){qa(H[h>>2]);h=H[f+12>>2]+4|0;H[f+12>>2]=h;a=H[f+16>>2];c=a-h|0;if(c>>>0>8){continue}break}}b=56;q:{switch((c>>>2|0)-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break q}}r:{if((a|0)==(h|0)){break r}while(1){qa(H[h>>2]);h=h+4|0;if((h|0)!=(a|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break r}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){qa(a)}da=f+32|0;break a}va();X()}va();X()}Ba(D,e);fb(E,e);fb(F,e);fb(G,e)}da=r+32|0;return 1}function rf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=O(0);g=da-80|0;da=g;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+64>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;ta(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+e|0;G[g+44>>1]=I[d+4|0]|I[d+5|0]<<8;H[g+40>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);c=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);G[g+36>>1]=I[d+4|0]|I[d+5|0]<<8;H[g+32>>2]=c;d=0;o=H[g+52>>2];c:{if(!o){break c}h=H[g+48>>2];m=J[g+36>>1]^(J[g+34>>1]^(J[g+32>>1]^318)+239)+239;c=m&o+262143;e=Al(o);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){f=J[g+32>>1];k=J[g+34>>1];j=J[g+36>>1];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=o>>>0){e=(e>>>0)%(o>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=J[c+8>>1];g:{if((e|0)!=(f|0)){e=(e|0)==(f|0);break g}e=J[c+10>>1];if((e|0)!=(k|0)){e=(e|0)==(k|0);break g}e=(j|0)==J[c+12>>1]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}k=o-1|0;o=J[g+32>>1];f=J[g+34>>1];j=J[g+36>>1];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&k)){break c}break h}e=J[c+8>>1];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=J[c+10>>1];if((e|0)!=(f|0)){if((e|0)!=(f|0)){break h}break e}if((j|0)==J[c+12>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+16>>2];break i}G[g+4>>1]=J[g+36>>1];H[g>>2]=H[g+32>>2];H[g+8>>2]=r;c=0;m=J[g+4>>1]^(J[g+2>>1]^(J[g>>1]^318)+239)+239;j:{k:{i=g+48|0;f=H[i+4>>2];if(!f){break k}d=Al(f);l:{if(d>>>0>=2){c=m;if(f>>>0<=c>>>0){c=(m>>>0)%(f>>>0)|0}l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}if(d>>>0<2){break l}j=J[g>>1];h=J[g+2>>1];e=J[g+4>>1];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)){if(d>>>0>=f>>>0){d=(d>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[l+8>>1];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=J[l+10>>1];if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(e|0)==J[l+12>>1]}if(!d){continue}break}c=0;break j}c=m&f+262143;l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}}h=f-1|0;k=J[g>>1];j=J[g+2>>1];e=J[g+4>>1];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=J[l+8>>1];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=J[l+10>>1];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(e|0)==J[l+12>>1]}if(!d){continue}break}c=0;break j}l=ra(20);G[l+12>>1]=J[g+4>>1];H[l+8>>2]=H[g>>2];d=H[g+8>>2];H[l>>2]=0;H[l+4>>2]=m;H[l+16>>2]=d;t=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(t>O(p*O(f>>>0))?0:f){break o}d=(f-1&f)!=0|f>>>0<3|f<<1;c=2;p=O(U(O(t/p)));p:{if(p=O(0)){e=~~p>>>0;break p}e=0}d=d>>>0>>0?e:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ja(d);f=H[i+4>>2]}r:{if(c>>>0<=f>>>0){if(c>>>0>=f>>>0){break r}e=f>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(e){break u}if(Al(f)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ja(d)}c=c>>>0>>0?d:c;if(f>>>0<=c>>>0){break r}}e=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=ra(k<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=k;if(k-1>>>0>=3){c=k&-4;d=0;while(1){h=e<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;e=e+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[i>>2]+(e<<2)>>2]=0;e=e+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];e=Al(k);if(e>>>0<2){break x}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(e>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}e=c;n=j<<2;f=n+H[i>>2]|0;if(!H[f>>2]){H[f>>2]=d;d=c;h=j;break z}while(1){j=e;e=H[e>>2];if(e){o=J[c+8>>1];f=J[e+8>>1];A:{if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}o=J[c+10>>1];f=J[e+10>>1];if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}f=J[c+12>>1]==J[e+12>>1]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}ya(1604);X()}h=k-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}o=k-1|0;while(1){j=o&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}e=c;n=j<<2;k=n+H[i>>2]|0;if(H[k>>2]){while(1){j=e;e=H[e>>2];if(e){f=J[c+8>>1];k=J[e+8>>1];C:{if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=J[c+10>>1];k=J[e+10>>1];if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=J[c+12>>1]==J[e+12>>1]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[k>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}f=H[i+4>>2];c=f-1|0;if(!(c&f)){c=c&m;break o}if(f>>>0>m>>>0){c=m;break o}c=(m>>>0)%(f>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[l>>2]=H[i+8>>2];H[i+8>>2]=l;H[c>>2]=i+8;c=H[l>>2];if(!c){break D}c=H[c+4>>2];d=f-1|0;E:{if(!(d&f)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=l;break D}H[l>>2]=H[d>>2];H[d>>2]=l}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+76|0]=c;H[g+72>>2]=l;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,g+40|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;e=c&3;n=0;b=0;if(c-1>>>0>=3){d=c&-4;f=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;f=f+4|0;if((d|0)!=(f|0)){continue}break}}if(!e){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}m=H[g+16>>2];n=0;b=0;if(c-1>>>0>=3){q=c&-4;f=0;while(1){h=b<<2;H[h+d>>2]=H[h+m>>2];e=h|4;H[e+d>>2]=H[e+m>>2];e=h|8;H[e+d>>2]=H[e+m>>2];e=h|12;H[e+d>>2]=H[e+m>>2];b=b+4|0;f=f+4|0;if((q|0)!=(f|0)){continue}break}}e=c&3;if(!e){break F}while(1){c=b<<2;H[c+d>>2]=H[c+m>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}}H[a+80>>2]=r}a=H[g+16>>2];if(a){qa(a)}b=H[g+56>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+48>>2];H[g+48>>2]=0;if(a){qa(a)}da=g+80|0;return r}va();X()}function Ef(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+8>>2]=n;c=d+n|0;H[g+16>>2]=c;ta(n,0,d);H[g+12>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+e|0;F[g+30|0]=I[d+2|0];G[g+28>>1]=I[d|0]|I[d+1|0]<<8;c=I[d|0]|I[d+1|0]<<8;F[g+26|0]=I[d+2|0];G[g+24>>1]=c;d=0;o=H[g+36>>2];c:{if(!o){break c}h=H[g+32>>2];m=I[g+26|0]^(I[g+25|0]^(I[g+24|0]^318)+239)+239;c=m&o-1;e=Al(o);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){f=I[g+24|0];k=I[g+25|0];j=I[g+26|0];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=o>>>0){e=(e>>>0)%(o>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=I[c+8|0];g:{if((e|0)!=(f|0)){e=(e|0)==(f|0);break g}e=I[c+9|0];if((e|0)!=(k|0)){e=(e|0)==(k|0);break g}e=(j|0)==I[c+10|0]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}k=o-1|0;o=I[g+24|0];f=I[g+25|0];j=I[g+26|0];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&k)){break c}break h}e=I[c+8|0];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=I[c+9|0];if((e|0)!=(f|0)){if((e|0)!=(f|0)){break h}break e}if((j|0)==I[c+10|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}F[g+2|0]=I[g+26|0];G[g>>1]=J[g+24>>1];H[g+4>>2]=r;c=0;m=I[g+2|0]^(I[g+1|0]^(I[g|0]^318)+239)+239;j:{k:{i=g+32|0;f=H[i+4>>2];if(!f){break k}d=Al(f);l:{if(d>>>0>=2){c=m;if(f>>>0<=c>>>0){c=(m>>>0)%(f>>>0)|0}l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}if(d>>>0<2){break l}j=I[g|0];h=I[g+1|0];e=I[g+2|0];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)){if(d>>>0>=f>>>0){d=(d>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[l+8|0];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=I[l+9|0];if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(e|0)==I[l+10|0]}if(!d){continue}break}c=0;break j}c=m&f-1;l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}}h=f-1|0;k=I[g|0];j=I[g+1|0];e=I[g+2|0];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=I[l+8|0];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=I[l+9|0];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(e|0)==I[l+10|0]}if(!d){continue}break}c=0;break j}l=ra(16);F[l+10|0]=I[g+2|0];G[l+8>>1]=J[g>>1];d=H[g+4>>2];H[l>>2]=0;H[l+4>>2]=m;H[l+12>>2]=d;t=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(t>O(p*O(f>>>0))?0:f){break o}d=(f-1&f)!=0|f>>>0<3|f<<1;c=2;p=O(U(O(t/p)));p:{if(p=O(0)){e=~~p>>>0;break p}e=0}d=d>>>0>>0?e:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ja(d);f=H[i+4>>2]}r:{if(c>>>0<=f>>>0){if(c>>>0>=f>>>0){break r}e=f>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(e){break u}if(Al(f)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ja(d)}c=c>>>0>>0?d:c;if(f>>>0<=c>>>0){break r}}e=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=ra(k<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=k;if(k-1>>>0>=3){c=k&-4;d=0;while(1){h=e<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;e=e+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[i>>2]+(e<<2)>>2]=0;e=e+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];e=Al(k);if(e>>>0<2){break x}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(e>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}e=c;n=j<<2;f=n+H[i>>2]|0;if(!H[f>>2]){H[f>>2]=d;d=c;h=j;break z}while(1){j=e;e=H[e>>2];if(e){o=I[c+8|0];f=I[e+8|0];A:{if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}o=I[c+9|0];f=I[e+9|0];if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}f=I[c+10|0]==I[e+10|0]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}ya(1604);X()}h=k-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}o=k-1|0;while(1){j=o&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}e=c;n=j<<2;k=n+H[i>>2]|0;if(H[k>>2]){while(1){j=e;e=H[e>>2];if(e){f=I[c+8|0];k=I[e+8|0];C:{if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=I[c+9|0];k=I[e+9|0];if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=I[c+10|0]==I[e+10|0]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[k>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}f=H[i+4>>2];c=f-1|0;if(!(c&f)){c=c&m;break o}if(f>>>0>m>>>0){c=m;break o}c=(m>>>0)%(f>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[l>>2]=H[i+8>>2];H[i+8>>2]=l;H[c>>2]=i+8;c=H[l>>2];if(!c){break D}c=H[c+4>>2];d=f-1|0;E:{if(!(d&f)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=l;break D}H[l>>2]=H[d>>2];H[d>>2]=l}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=l;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,r)|0,g+28|0,c);n=H[g+8>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+8>>2];b=b>>2;c=b>>>0>1?b:1;e=c&3;n=0;b=0;if(c-1>>>0>=3){d=c&-4;f=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;f=f+4|0;if((d|0)!=(f|0)){continue}break}}if(!e){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}m=H[g+8>>2];n=0;b=0;if(c-1>>>0>=3){q=c&-4;f=0;while(1){h=b<<2;H[h+d>>2]=H[h+m>>2];e=h|4;H[e+d>>2]=H[e+m>>2];e=h|8;H[e+d>>2]=H[e+m>>2];e=h|12;H[e+d>>2]=H[e+m>>2];b=b+4|0;f=f+4|0;if((q|0)!=(f|0)){continue}break}}e=c&3;if(!e){break F}while(1){c=b<<2;H[c+d>>2]=H[c+m>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}}H[a+80>>2]=r}a=H[g+8>>2];if(a){qa(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){qa(a)}da=g- -64|0;return r}va();X()}function Cd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da-80|0;da=g;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+64>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;ta(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+d|0;d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[g+32>>2]=c;H[g+36>>2]=d;H[g+40>>2]=c;H[g+44>>2]=d;d=0;l=H[g+52>>2];c:{if(!l){break c}h=H[g+48>>2];m=H[g+36>>2]^(H[g+32>>2]^318)+239;c=m&l-1;f=Al(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){k=H[g+36>>2];e=H[g+32>>2];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=H[c+8>>2];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(k|0)==H[c+12>>2]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;k=H[g+36>>2];l=H[g+32>>2];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=H[c+8>>2];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((k|0)==H[c+12>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+16>>2];break i}H[g+8>>2]=q;c=H[g+36>>2];H[g>>2]=H[g+32>>2];H[g+4>>2]=c;c=0;m=H[g+4>>2]^(H[g>>2]^318)+239;j:{k:{i=g+48|0;e=H[i+4>>2];if(!e){break k}d=Al(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}if(d>>>0<2){break l}f=H[g+4>>2];h=H[g>>2];while(1){j=H[j>>2];if(!j){break k}d=H[j+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=H[j+8>>2];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==H[j+12>>2]}if(!d){continue}break}c=0;break j}c=m&e-1;j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}}h=e-1|0;f=H[g+4>>2];k=H[g>>2];while(1){j=H[j>>2];if(!j){break k}d=H[j+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=H[j+8>>2];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=(f|0)==H[j+12>>2]}if(!d){continue}break}c=0;break j}j=ra(20);d=H[g+4>>2];H[j+8>>2]=H[g>>2];H[j+12>>2]=d;d=H[g+8>>2];H[j+4>>2]=m;H[j+16>>2]=d;H[j>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(u>O(p*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ja(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Al(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ja(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;k=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=ra(e<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Al(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){k=H[c+4>>2];if(e>>>0<=k>>>0){k=(k>>>0)%(e>>>0)|0}z:{if((h|0)==(k|0)){d=c;break z}f=c;r=k<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=k;break z}while(1){k=f;f=H[f>>2];if(f){n=H[c+8>>2];l=H[f+8>>2];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=H[c+12>>2]==H[f+12>>2]}if(l){continue}}break}H[d>>2]=f;H[k>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}ya(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){k=n&H[c+4>>2];B:{if((k|0)==(h|0)){d=c;break B}f=c;r=k<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){k=f;f=H[f>>2];if(f){l=H[c+8>>2];e=H[f+8>>2];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=H[c+12>>2]==H[f+12>>2]}if(e){continue}}break}H[d>>2]=f;H[k>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=k}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[j>>2]=H[i+8>>2];H[i+8>>2]=j;H[c>>2]=i+8;c=H[j>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=j;break D}H[j>>2]=H[d>>2];H[d>>2]=j}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+76|0]=c;H[g+72>>2]=j;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,q)|0,g+40|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+16>>2];if(a){qa(a)}b=H[g+56>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+48>>2];H[g+48>>2]=0;if(a){qa(a)}da=g+80|0;return q}va();X()}function wf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+8>>2]=n;c=d+n|0;H[g+16>>2]=c;ta(n,0,d);H[g+12>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+f|0;c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[g+24>>2]=c;H[g+28>>2]=c;d=0;l=H[g+36>>2];c:{if(!l){break c}h=H[g+32>>2];m=J[g+26>>1]^(J[g+24>>1]^318)+239;c=m&l+131071;f=Al(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){e=J[g+24>>1];j=J[g+26>>1];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=J[c+8>>1];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(j|0)==J[c+10>>1]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;l=J[g+24>>1];j=J[g+26>>1];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=J[c+8>>1];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((j|0)==J[c+10>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}H[g+4>>2]=q;H[g>>2]=H[g+24>>2];c=0;m=J[g+2>>1]^(J[g>>1]^318)+239;j:{k:{i=g+32|0;e=H[i+4>>2];if(!e){break k}d=Al(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}if(d>>>0<2){break l}h=J[g>>1];f=J[g+2>>1];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[k+8>>1];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==J[k+10>>1]}if(!d){continue}break}c=0;break j}c=m&e+131071;k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}}h=e-1|0;j=J[g>>1];f=J[g+2>>1];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=J[k+8>>1];n:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(f|0)==J[k+10>>1]}if(!d){continue}break}c=0;break j}k=ra(16);H[k+8>>2]=H[g>>2];d=H[g+4>>2];H[k+4>>2]=m;H[k+12>>2]=d;H[k>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(u>O(p*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ja(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Al(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ja(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;j=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=ra(e<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Al(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){j=H[c+4>>2];if(e>>>0<=j>>>0){j=(j>>>0)%(e>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}f=c;r=j<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=j;break z}while(1){j=f;f=H[f>>2];if(f){n=J[c+8>>1];l=J[f+8>>1];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=J[c+10>>1]==J[f+10>>1]}if(l){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}ya(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}f=c;r=j<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){j=f;f=H[f>>2];if(f){l=J[c+8>>1];e=J[f+8>>1];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=J[c+10>>1]==J[f+10>>1]}if(e){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[k>>2]=H[i+8>>2];H[i+8>>2]=k;H[c>>2]=i+8;c=H[k>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=k;break D}H[k>>2]=H[d>>2];H[d>>2]=k}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=k;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,q)|0,g+28|0,c);n=H[g+8>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+8>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+8>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+8>>2];if(a){qa(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){qa(a)}da=g- -64|0;return q}va();X()}function Hf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=ra(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;ta(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+f|0;c=I[c|0]|I[c+1|0]<<8;G[g+28>>1]=c;G[g+30>>1]=c;d=0;l=H[g+36>>2];c:{if(!l){break c}h=H[g+32>>2];m=I[g+29|0]^(I[g+28|0]^318)+239;c=m&l+1023;f=Al(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){e=I[g+28|0];j=I[g+29|0];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=I[c+8|0];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(j|0)==I[c+9|0]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;l=I[g+28|0];j=I[g+29|0];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=I[c+8|0];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((j|0)==I[c+9|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}H[g+12>>2]=q;G[g+8>>1]=J[g+28>>1];c=0;m=I[g+9|0]^(I[g+8|0]^318)+239;j:{k:{i=g+32|0;e=H[i+4>>2];if(!e){break k}d=Al(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}if(d>>>0<2){break l}h=I[g+8|0];f=I[g+9|0];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[k+8|0];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==I[k+9|0]}if(!d){continue}break}c=0;break j}c=m&e+1023;k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}}h=e-1|0;j=I[g+8|0];f=I[g+9|0];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=I[k+8|0];n:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(f|0)==I[k+9|0]}if(!d){continue}break}c=0;break j}k=ra(16);G[k+8>>1]=J[g+8>>1];d=H[g+12>>2];H[k+4>>2]=m;H[k+12>>2]=d;H[k>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(u>O(p*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Ja(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Al(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Ja(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;j=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=ra(e<<2);d=H[i>>2];H[i>>2]=c;if(d){qa(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Al(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){j=H[c+4>>2];if(e>>>0<=j>>>0){j=(j>>>0)%(e>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}f=c;r=j<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=j;break z}while(1){j=f;f=H[f>>2];if(f){n=I[c+8|0];l=I[f+8|0];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=I[c+9|0]==I[f+9|0]}if(l){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){qa(c)}H[i+4>>2]=0;break v}ya(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}f=c;r=j<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){j=f;f=H[f>>2];if(f){l=I[c+8|0];e=I[f+8|0];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=I[c+9|0]==I[f+9|0]}if(e){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[k>>2]=H[i+8>>2];H[i+8>>2]=k;H[c>>2]=i+8;c=H[k>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=k;break D}H[k>>2]=H[d>>2];H[d>>2]=k}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=k;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,q)|0,g+30|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+16>>2];if(a){qa(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];qa(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){qa(a)}da=g- -64|0;return q}va();X()}function Th(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0;l=da-560|0;da=l;H[l+44>>2]=0;A(+b);g=v(1)|0;v(0)|0;a:{if((g|0)<0){s=1;w=1285;b=-b;A(+b);g=v(1)|0;v(0)|0;break a}if(e&2048){s=1;w=1288;break a}s=e&1;w=s?1291:1286;z=!s}b:{if((g&2146435072)==2146435072){d=s+3|0;Ua(a,32,c,d,e&-65537);Sa(a,w,s);f=f&32;Sa(a,b!=b?f?1546:1787:f?1597:1791,3);Ua(a,32,c,d,e^8192);i=(c|0)>(d|0)?c:d;break b}u=l+16|0;c:{d:{e:{b=Le(b,l+44|0);b=b+b;if(b!=0){g=H[l+44>>2];H[l+44>>2]=g-1;r=f|32;if((r|0)!=97){break e}break c}r=f|32;if((r|0)==97){break c}k=H[l+44>>2];m=(d|0)<0?6:d;break d}k=g-29|0;H[l+44>>2]=k;b=b*268435456;m=(d|0)<0?6:d}p=(k|0)<0?l+48|0:l+336|0;h=p;while(1){if(b<4294967296&b>=0){d=~~b>>>0}else{d=0}H[h>>2]=d;h=h+4|0;b=(b-+(d>>>0))*1e9;if(b!=0){continue}break}f:{if((k|0)<=0){d=k;g=h;j=p;break f}j=p;d=k;while(1){d=d>>>0<29?d:29;g=h-4|0;g:{if(j>>>0>g>>>0){break g}i=0;while(1){o=H[g>>2];n=d&31;x=i;if((d&63)>>>0>=32){i=o<>>32-n;o=o<>>0>>0?i+1|0:i;i=zl(n,i,1e9,0);o=xl(i,ea,1e9,0);H[g>>2]=n-o;g=g-4|0;if(j>>>0<=g>>>0){continue}break}if(!i){break g}j=j-4|0;H[j>>2]=i}while(1){g=h;if(j>>>0>>0){h=g-4|0;if(!H[h>>2]){continue}}break}d=H[l+44>>2]-d|0;H[l+44>>2]=d;h=g;if((d|0)>0){continue}break}}h=(m+25>>>0)/9|0;if((d|0)<0){t=h+1|0;n=(r|0)==102;while(1){d=0-d|0;i=d>>>0<9?d:9;h:{if(g>>>0>j>>>0){o=1e9>>>i|0;y=-1<>2];H[h>>2]=x+(d>>>i|0);d=N(o,d&y);h=h+4|0;if(h>>>0>>0){continue}break}h=H[j>>2];if(!d){break h}H[g>>2]=d;g=g+4|0;break h}h=H[j>>2]}d=i+H[l+44>>2]|0;H[l+44>>2]=d;j=(!h<<2)+j|0;h=n?p:j;g=g-h>>2>(t|0)?h+(t<<2)|0:g;if((d|0)<0){continue}break}}d=0;i:{if(g>>>0<=j>>>0){break i}d=N(p-j>>2,9);h=10;i=H[j>>2];if(i>>>0<10){break i}while(1){d=d+1|0;h=N(h,10);if(i>>>0>=h>>>0){continue}break}}h=(m-((r|0)==102?0:d)|0)-((r|0)==103&(m|0)!=0)|0;if((h|0)<(N(g-p>>2,9)-9|0)){i=h+9216|0;n=(i|0)/9|0;k=((((k|0)<0?4:292)+l|0)+(n<<2)|0)-4048|0;h=10;i=i-N(n,9)|0;if((i|0)<=7){while(1){h=N(h,10);i=i+1|0;if((i|0)!=8){continue}break}}n=H[k>>2];t=(n>>>0)/(h>>>0)|0;i=n-N(h,t)|0;o=k+4|0;j:{if(!i&(o|0)==(g|0)){break j}k:{if(!(t&1)){b=9007199254740992;if(!(F[k-4|0]&1)|((h|0)!=1e9|j>>>0>=k>>>0)){break k}}b=9007199254740994}q=(g|0)==(o|0)?1:1.5;o=h>>>1|0;q=i>>>0>>0?.5:(o|0)==(i|0)?q:1.5;if(!(I[w|0]!=45|z)){q=-q;b=-b}i=n-i|0;H[k>>2]=i;if(b+q==b){break j}d=h+i|0;H[k>>2]=d;if(d>>>0>=1e9){while(1){H[k>>2]=0;k=k-4|0;if(k>>>0>>0){j=j-4|0;H[j>>2]=0}d=H[k>>2]+1|0;H[k>>2]=d;if(d>>>0>999999999){continue}break}}d=N(p-j>>2,9);h=10;i=H[j>>2];if(i>>>0<10){break j}while(1){d=d+1|0;h=N(h,10);if(i>>>0>=h>>>0){continue}break}}h=k+4|0;g=g>>>0>h>>>0?h:g}while(1){h=g;i=g>>>0<=j>>>0;if(!i){g=h-4|0;if(!H[g>>2]){continue}}break}l:{if((r|0)!=103){k=e&8;break l}g=m?m:1;k=(g|0)>(d|0)&(d|0)>-5;m=(k?d^-1:-1)+g|0;f=(k?-1:-2)+f|0;k=e&8;if(k){break l}g=-9;m:{if(i){break m}n=H[h-4>>2];if(!n){break m}i=10;g=0;if((n>>>0)%10|0){break m}while(1){k=g;g=g+1|0;i=N(i,10);if(!((n>>>0)%(i>>>0)|0)){continue}break}g=k^-1}i=N(h-p>>2,9);if((f&-33)==70){k=0;g=(g+i|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g;break l}k=0;g=((d+i|0)+g|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g}i=-1;r=k|m;if(((r?2147483645:2147483646)|0)<(m|0)){break b}n=(((r|0)!=0)+m|0)+1|0;o=f&-33;n:{if((o|0)==70){if((2147483647-n|0)<(d|0)){break b}g=(d|0)>0?d:0;break n}g=d>>31;g=ec(g+d^g,0,u);if((u-g|0)<=1){while(1){g=g-1|0;F[g|0]=48;if((u-g|0)<2){continue}break}}t=g-2|0;F[t|0]=f;F[g-1|0]=(d|0)<0?45:43;g=u-t|0;if((g|0)>(2147483647-n|0)){break b}}d=g+n|0;if((d|0)>(s^2147483647)){break b}f=d+s|0;Ua(a,32,c,f,e);Sa(a,w,s);Ua(a,48,c,f,e^65536);o:{p:{q:{if((o|0)==70){g=l+16|0;d=g|8;k=g|9;i=j>>>0>p>>>0?p:j;j=i;while(1){g=ec(H[j>>2],0,k);r:{if((i|0)!=(j|0)){if(l+16>>>0>=g>>>0){break r}while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}break r}if((g|0)!=(k|0)){break r}F[l+24|0]=48;g=d}Sa(a,g,k-g|0);j=j+4|0;if(p>>>0>=j>>>0){continue}break}if(r){Sa(a,2125,1)}if((m|0)<=0|h>>>0<=j>>>0){break q}while(1){g=ec(H[j>>2],0,k);if(g>>>0>l+16>>>0){while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}}Sa(a,g,(m|0)<9?m:9);g=m-9|0;j=j+4|0;if(h>>>0<=j>>>0){break p}d=(m|0)>9;m=g;if(d){continue}break}break p}s:{if((m|0)<0){break s}i=h>>>0>j>>>0?h:j+4|0;d=l+16|0;p=d|9;d=d|8;h=j;while(1){g=ec(H[h>>2],0,p);if((p|0)==(g|0)){F[l+24|0]=48;g=d}t:{if((h|0)!=(j|0)){if(l+16>>>0>=g>>>0){break t}while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}break t}Sa(a,g,1);g=g+1|0;if(!(k|m)){break t}Sa(a,2125,1)}x=g;g=p-g|0;Sa(a,x,(g|0)<(m|0)?g:m);m=m-g|0;h=h+4|0;if(i>>>0<=h>>>0){break s}if((m|0)>=0){continue}break}}Ua(a,48,m+18|0,18,0);Sa(a,t,u-t|0);break o}g=m}Ua(a,48,g+9|0,9,0)}Ua(a,32,c,f,e^8192);i=(c|0)>(f|0)?c:f;break b}m=(f<<26>>31&9)+w|0;u:{if(d>>>0>11){break u}g=12-d|0;q=16;while(1){q=q*16;g=g-1|0;if(g){continue}break}if(I[m|0]==45){b=-(q+(-b-q));break u}b=b+q-q}h=H[l+44>>2];g=h>>31;g=ec(g^g+h,0,u);if((u|0)==(g|0)){F[l+15|0]=48;g=l+15|0}k=s|2;j=f&32;h=H[l+44>>2];p=g-2|0;F[p|0]=f+15;F[g-1|0]=(h|0)<0?45:43;i=e&8;h=l+16|0;while(1){f=h;if(P(b)<2147483648){g=~~b}else{g=-2147483648}F[h|0]=j|I[g+17792|0];b=(b-+(g|0))*16;h=f+1|0;if(!(!((d|0)>0|i)&b==0|(h-(l+16|0)|0)!=1)){F[f+1|0]=46;h=f+2|0}if(b!=0){continue}break}i=-1;n=u-p|0;f=n+k|0;if((2147483645-f|0)<(d|0)){break b}v:{w:{if(!d){break w}j=h-(l+16|0)|0;if((j-2|0)>=(d|0)){break w}g=d+2|0;break v}j=h-(l+16|0)|0;g=j}d=g+f|0;Ua(a,32,c,d,e);Sa(a,m,k);Ua(a,48,c,d,e^65536);Sa(a,l+16|0,j);Ua(a,48,g-j|0,0,0);Sa(a,p,n);Ua(a,32,c,d,e^8192);i=(c|0)>(d|0)?c:d}da=l+560|0;return i|0}function Ke(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=da-80|0;da=f;H[f+76>>2]=1601;v=f+55|0;r=f+56|0;a:{b:{c:{d:{e:while(1){if((2147483647-m|0)<(e|0)){break d}m=e+m|0;f:{g:{h:{l=H[f+76>>2];e=l;k=I[e|0];if(k){while(1){i:{g=k&255;j:{if(!g){k=e;break j}if((g|0)!=37){break i}k=e;while(1){if(I[e+1|0]!=37){break j}g=e+2|0;H[f+76>>2]=g;k=k+1|0;h=I[e+2|0];e=g;if((h|0)==37){continue}break}}e=k-l|0;u=2147483647-m|0;if((e|0)>(u|0)){break d}if(a){Sa(a,l,e)}if(e){continue e}p=-1;g=1;e=H[f+76>>2];if(!(F[e+1|0]-48>>>0>=10|I[e+2|0]!=36)){p=F[e+1|0]-48|0;t=1;g=3}e=g+e|0;H[f+76>>2]=e;n=0;i=F[e|0];h=i-32|0;k:{if(h>>>0>31){g=e;break k}g=e;j=1<>2]=g;n=j|n;i=F[e+1|0];h=i-32|0;if(h>>>0>=32){break k}e=g;j=1<>>0>=10){break n}e=H[f+76>>2];if(I[e+2|0]!=36){break n}H[((F[e+1|0]<<2)+d|0)-192>>2]=10;o=H[((F[e+1|0]<<3)+c|0)-384>>2];t=1;e=e+3|0;break m}if(t){break h}t=0;o=0;if(a){e=H[b>>2];H[b>>2]=e+4;o=H[e>>2]}e=H[f+76>>2]+1|0}H[f+76>>2]=e;if((o|0)>=0){break l}o=0-o|0;n=n|8192;break l}o=Je(f+76|0);if((o|0)<0){break d}e=H[f+76>>2]}g=0;j=-1;q=0;o:{if(I[e|0]!=46){break o}if(I[e+1|0]==42){p:{q:{if(F[e+2|0]-48>>>0>=10){break q}e=H[f+76>>2];if(I[e+3|0]!=36){break q}H[((F[e+2|0]<<2)+d|0)-192>>2]=10;j=H[((F[e+2|0]<<3)+c|0)-384>>2];e=e+4|0;break p}if(t){break h}if(a){e=H[b>>2];H[b>>2]=e+4;j=H[e>>2]}else{j=0}e=H[f+76>>2]+2|0}H[f+76>>2]=e;q=(j^-1)>>>31|0;break o}H[f+76>>2]=e+1;j=Je(f+76|0);e=H[f+76>>2];q=1}while(1){s=g;k=28;if(F[e|0]-123>>>0<4294967238){break c}i=e+1|0;H[f+76>>2]=i;g=F[e|0];e=i;g=I[(g+N(s,58)|0)+17263|0];if(g-1>>>0<8){continue}break}r:{s:{if((g|0)!=27){if(!g){break c}if((p|0)>=0){H[(p<<2)+d>>2]=g;e=(p<<3)+c|0;g=H[e+4>>2];H[f+64>>2]=H[e>>2];H[f+68>>2]=g;break s}if(!a){break f}Ie(f- -64|0,g,b);i=H[f+76>>2];break r}if((p|0)>=0){break c}}e=0;if(!a){continue e}}h=n&-65537;g=n&8192?h:n;n=0;p=1275;k=r;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{e=F[i-1|0];e=s?(e&15)==3?e&-33:e:e;switch(e-88|0){case 11:break t;case 9:case 13:case 14:case 15:break u;case 27:break z;case 12:case 17:break C;case 23:break D;case 0:case 32:break E;case 24:break F;case 22:break G;case 29:break H;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break I}}J:{switch(e-65|0){case 0:case 4:case 5:case 6:break u;case 2:break x;case 1:case 3:break g;default:break J}}if((e|0)==83){break y}break g}i=H[f+64>>2];h=H[f+68>>2];p=1275;break B}e=0;K:{switch(s&255){case 0:H[H[f+64>>2]>>2]=m;continue e;case 1:H[H[f+64>>2]>>2]=m;continue e;case 2:g=H[f+64>>2];H[g>>2]=m;H[g+4>>2]=m>>31;continue e;case 3:G[H[f+64>>2]>>1]=m;continue e;case 4:F[H[f+64>>2]]=m;continue e;case 6:H[H[f+64>>2]>>2]=m;continue e;case 7:break K;default:continue e}}g=H[f+64>>2];H[g>>2]=m;H[g+4>>2]=m>>31;continue e}j=j>>>0>8?j:8;g=g|8;e=120}l=r;w=e&32;i=H[f+64>>2];h=H[f+68>>2];if(i|h){while(1){l=l-1|0;F[l|0]=w|I[(i&15)+17792|0];x=!h&i>>>0>15|(h|0)!=0;s=h;h=h>>>4|0;i=(s&15)<<28|i>>>4;if(x){continue}break}}if(!(H[f+64>>2]|H[f+68>>2])|!(g&8)){break A}p=(e>>>4|0)+1275|0;n=2;break A}e=r;i=H[f+64>>2];h=H[f+68>>2];if(i|h){while(1){e=e-1|0;F[e|0]=i&7|48;s=!h&i>>>0>7|(h|0)!=0;l=h;h=h>>>3|0;i=(l&7)<<29|i>>>3;if(s){continue}break}}l=e;if(!(g&8)){break A}e=r-l|0;j=(e|0)<(j|0)?j:e+1|0;break A}e=H[f+68>>2];h=e;i=H[f+64>>2];if((e|0)<0){h=0-(h+((i|0)!=0)|0)|0;i=0-i|0;H[f+64>>2]=i;H[f+68>>2]=h;n=1;p=1275;break B}if(g&2048){n=1;p=1276;break B}n=g&1;p=n?1277:1275}l=ec(i,h,r)}if((j|0)<0?q:0){break d}g=q?g&-65537:g;h=H[f+64>>2];e=H[f+68>>2];if(!(j|(h|e)!=0)){l=r;k=l;j=0;break g}e=!(e|h)+(r-l|0)|0;j=(e|0)<(j|0)?j:e;break g}q=(j|0)<0?2147483647:j;i=q;g=(i|0)!=0;e=H[f+64>>2];l=e?e:2127;k=l;e=l;L:{M:{N:{O:{if(!(e&3)|!i){break O}while(1){if(!I[e|0]){break N}i=i-1|0;g=(i|0)!=0;e=e+1|0;if(!(e&3)){break O}if(i){continue}break}}if(!g){break M}}P:{if(!I[e|0]|i>>>0<4){break P}while(1){g=H[e>>2];if((g^-1)&g-16843009&-2139062144){break P}e=e+4|0;i=i-4|0;if(i>>>0>3){continue}break}}if(!i){break M}while(1){if(!I[e|0]){break L}e=e+1|0;i=i-1|0;if(i){continue}break}}e=0}e=e?e-k|0:q;k=e+l|0;if((j|0)>=0){g=h;j=e;break g}g=h;j=e;if(I[k|0]){break d}break g}if(j){k=H[f+64>>2];break w}e=0;Ua(a,32,o,0,g);break v}H[f+12>>2]=0;H[f+8>>2]=H[f+64>>2];k=f+8|0;H[f+64>>2]=k;j=-1}e=0;Q:{while(1){h=H[k>>2];if(!h){break Q}h=Ge(f+4|0,h);l=(h|0)<0;if(!(l|h>>>0>j-e>>>0)){k=k+4|0;e=e+h|0;if(j>>>0>e>>>0){continue}break Q}break}if(l){break b}}k=61;if((e|0)<0){break c}Ua(a,32,o,e,g);if(!e){e=0;break v}j=0;k=H[f+64>>2];while(1){h=H[k>>2];if(!h){break v}h=Ge(f+4|0,h);j=h+j|0;if(j>>>0>e>>>0){break v}Sa(a,f+4|0,h);k=k+4|0;if(e>>>0>j>>>0){continue}break}}Ua(a,32,o,e,g^8192);e=(e|0)<(o|0)?o:e;continue e}if((j|0)<0?q:0){break d}k=61;e=fa[368](a,M[f+64>>3],o,j,g,e)|0;if((e|0)>=0){continue e}break c}F[f+55|0]=H[f+64>>2];j=1;l=v;g=h;break g}g=e+1|0;H[f+76>>2]=g;k=I[e+1|0];e=g;continue}}if(a){break a}if(!t){break f}e=1;while(1){a=H[(e<<2)+d>>2];if(a){Ie((e<<3)+c|0,a,b);m=1;e=e+1|0;if((e|0)!=10){continue}break a}break}m=1;if(e>>>0>=10){break a}while(1){if(H[(e<<2)+d>>2]){break h}e=e+1|0;if((e|0)!=10){continue}break}break a}k=28;break c}i=k-l|0;j=(j|0)<(i|0)?i:j;if((j|0)>(2147483647-n|0)){break d}k=61;h=j+n|0;e=(h|0)>(o|0)?h:o;if((u|0)<(e|0)){break c}Ua(a,32,e,h,g);Sa(a,p,n);Ua(a,48,e,h,g^65536);Ua(a,48,j,i,0);Sa(a,l,i);Ua(a,32,e,h,g^8192);continue}break}m=0;break a}k=61}H[4739]=k}m=-1}da=f+80|0;return m}function re(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0;n=da-32|0;da=n;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;k=H[e+20>>2];if(!H[e+16>>2]&(k|0)<=0|(k|0)<0){d=a+4|0;wa(e,H[e+4>>2],a,d);k=H[e+20>>2];if(!H[e+16>>2]&(k|0)<=0|(k|0)<0){wa(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){B=a+12|0;ke(B);C=a+1068|0;d=C;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];D=a+1088|0;d=D;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];E=a+1108|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[n+24>>2]=H[b+8>>2];d=H[b+4>>2];H[n+16>>2]=H[b>>2];H[n+20>>2]=d;H[n+8>>2]=H[c+8>>2];b=H[c+4>>2];H[n>>2]=H[c>>2];H[n+4>>2]=b;b=0;f=da-32|0;da=f;d=a;h=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(h){if(h>>>0>=1073741824){break b}a=h<<2;b=ra(a);H[f+8>>2]=b;g=a+b|0;H[f+16>>2]=g;ta(b,0,a);H[f+12>>2]=g}a=H[d+1164>>2];c=H[a>>2];if(c){H[a+4>>2]=c;qa(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=H[d+8>>2];g=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=g;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(h){if(h>>>0>=1073741824){break c}c=h<<2;a=ra(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;ta(a,0,c);H[f+12>>2]=b}c=H[d+1176>>2];k=H[c>>2];if(k){H[c+4>>2]=k;qa(k);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];w=H[n+4>>2];x=H[n+8>>2];u=H[n+20>>2];r=H[n+24>>2];k=H[n>>2];c=H[n+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;gb(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;b=(a>>>0)/113|0;a=H[H[f+12>>2]+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=k-c;H[a+24>>2]=0;H[a+12>>2]=k;H[a+4>>2]=u;H[a+8>>2]=r;H[a>>2]=c;H[a+16>>2]=w;H[a+20>>2]=x;a=H[f+28>>2];h=a+1|0;H[f+28>>2]=h;if(a>>>0<=h>>>0){I=d+1068|0;J=d+1108|0;L=r&-4;F=r&3;M=r-1>>>0<3;while(1){m=H[f+12>>2];g=H[f+24>>2];i=h-1|0;a=g+i|0;b=(a>>>0)/113|0;a=H[m+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;z=H[a+32>>2];b=H[a+24>>2];k=H[a+12>>2];c=H[a>>2];H[f+28>>2]=i;a=H[f+16>>2];i=a-m|0;if(((i?N(i>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}h=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;i=h<<2;y=N(z,12);m=y+H[d+1176>>2]|0;b=H[d>>2]-H[i+H[m>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{s=k-c|0;if(s>>>0<=2){g=H[d+1152>>2];H[g>>2]=h;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}g=H[d+1164>>2];a=g+y|0;q=g;g=y+12|0;db(q+g|0,H[a>>2],H[a+4>>2]);a=i+H[g+H[d+1164>>2]>>2]|0;m=H[a>>2]+(1<>2]=m;a=c;h:{if((k|0)==(a|0)){break h}G=H[u+24>>2];b=c;a=k;if(!r){if(m>>>0>K[i+G>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(m>>>0<=K[(i+H[w+24>>2]|0)+(N(a,x)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){o=(N(b,r)<<2)+G|0;if(m>>>0>K[o+i>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}p=H[w+24>>2]+(N(a,x)<<2)|0;if(m>>>0<=K[p+i>>2]){continue}break}A=0;g=0;v=0;if(!M){while(1){l=g<<2;j=l+o|0;t=H[j>>2];q=j;j=l+p|0;H[q>>2]=H[j>>2];H[j>>2]=t;j=l|4;t=j+o|0;q=H[t>>2];j=j+p|0;H[t>>2]=H[j>>2];H[j>>2]=q;j=l|8;t=j+o|0;q=H[t>>2];j=j+p|0;H[t>>2]=H[j>>2];H[j>>2]=q;l=l|12;j=l+o|0;t=H[j>>2];l=l+p|0;H[j>>2]=H[l>>2];H[l>>2]=t;g=g+4|0;v=v+4|0;if((L|0)!=(v|0)){continue}break}}if(F){while(1){l=g<<2;v=l+o|0;j=H[v>>2];l=l+p|0;H[v>>2]=H[l>>2];H[l>>2]=j;g=g+1|0;A=A+1|0;if((A|0)!=(F|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}m=a-c|0;o=k-a|0;if((m|0)!=(o|0)){xc(J,m>>>0>>0)}l=z+1|0;b=Q(s);p=b^31;g=s>>>1|0;i:{if(m>>>0>>0){if(!p){break i}s=g-m|0;b=1<<30-b;g=0;while(1){Fa((d+(g<<5)|0)+12|0,(b&s)!=0);b=b>>>1|0;g=g+1|0;if((p|0)!=(g|0)){continue}break}break i}if(!p){break i}s=g-o|0;b=1<<30-b;g=0;while(1){Fa((d+(g<<5)|0)+12|0,(b&s)!=0);b=b>>>1|0;g=g+1|0;if((p|0)!=(g|0)){continue}break}}q=i;b=H[d+1176>>2];g=b+y|0;i=H[g>>2];p=q+i|0;H[p>>2]=H[p>>2]+1;db(b+N(l,12)|0,i,H[g+4>>2]);if((a|0)!=(c|0)){b=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];i=H[f+16>>2]-g|0;if((b|0)==((i?N(i>>2,113)-1|0:0)|0)){gb(f+8|0);g=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}q=g;g=(b>>>0)/113|0;b=H[q+(g<<2)>>2]+N(b-N(g,113)|0,36)|0;H[b+32>>2]=z;H[b+28>>2]=m;H[b+24>>2]=h;H[b+12>>2]=a;H[b+4>>2]=u;H[b+8>>2]=r;H[b>>2]=c;H[b+20>>2]=r;H[b+16>>2]=u;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(k|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];i=H[f+16>>2]-g|0;if((b|0)==((i?N(i>>2,113)-1|0:0)|0)){gb(f+8|0);g=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}q=g;g=(b>>>0)/113|0;b=H[q+(g<<2)>>2]+N(b-N(g,113)|0,36)|0;H[b+32>>2]=l;H[b+28>>2]=o;H[b+24>>2]=h;H[b+12>>2]=k;H[b+8>>2]=r;H[b+4>>2]=u;H[b>>2]=a;H[b+16>>2]=w;H[b+20>>2]=x;h=H[f+28>>2]+1|0;H[f+28>>2]=h;break d}while(1){h=(a-1|0)==(h|0)?0:h+1|0;H[g+(b<<2)>>2]=h;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}g=0;b=a;if(!s){break e}while(1){j:{if(!b){b=0;break j}i=H[u+24>>2]+(N(H[u+4>>2],c+g|0)<<2)|0;h=0;while(1){b=H[H[d+1152>>2]+(h<<2)>>2]<<2;o=H[d>>2]-H[b+H[m>>2]>>2]|0;if(o){bc(I,o,H[b+i>>2]);a=H[d+8>>2]}b=a;h=h+1|0;if(h>>>0>>0){continue}break}}g=g+1|0;if((s|0)!=(g|0)){continue}break}}h=H[f+28>>2]}if(h){continue}break}}H[n+16>>2]=c;H[n>>2]=k;H[f+28>>2]=0;c=H[f+16>>2];h=H[f+12>>2];a=c-h|0;if(a>>>0>=9){while(1){qa(H[h>>2]);h=H[f+12>>2]+4|0;H[f+12>>2]=h;c=H[f+16>>2];a=c-h|0;if(a>>>0>8){continue}break}}b=56;k:{switch((a>>>2|0)-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break k}}l:{if((c|0)==(h|0)){break l}while(1){qa(H[h>>2]);h=h+4|0;if((h|0)!=(c|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break l}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){qa(a)}da=f+32|0;break a}va();X()}va();X()}je(B,e);fb(C,e);fb(D,e);fb(E,e)}da=n+32|0;return 1}function If(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=da-16|0;da=h;H[b+44>>2]=d;H[b+48>>2]=c;d=H[b+12>>2];f=H[b+8>>2];if((d|0)!=(f|0)){while(1){d=d-4|0;e=H[d>>2];H[d>>2]=0;if(e){fa[H[H[e>>2]+4>>2]](e)}if((d|0)!=(f|0)){continue}break}}H[b+12>>2]=f;H[b+24>>2]=H[b+20>>2];H[b+36>>2]=H[b+32>>2];a:{if(!H[b+4>>2]){b=ra(32);c=I[1814]|I[1815]<<8|(I[1816]<<16|I[1817]<<24);d=I[1810]|I[1811]<<8|(I[1812]<<16|I[1813]<<24);F[b+15|0]=d;F[b+16|0]=d>>>8;F[b+17|0]=d>>>16;F[b+18|0]=d>>>24;F[b+19|0]=c;F[b+20|0]=c>>>8;F[b+21|0]=c>>>16;F[b+22|0]=c>>>24;c=I[1807]|I[1808]<<8|(I[1809]<<16|I[1810]<<24);d=I[1803]|I[1804]<<8|(I[1805]<<16|I[1806]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1799]|I[1800]<<8|(I[1801]<<16|I[1802]<<24);d=I[1795]|I[1796]<<8|(I[1797]<<16|I[1798]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+23|0]=0;H[a>>2]=-1;Ia(a+4|0,b,23);qa(b);break a}d=da-16|0;da=d;e=H[b+44>>2];f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){wa(e,H[e+4>>2],1781,1786)}e=fa[H[H[b>>2]+8>>2]](b)|0;F[d+15|0]=e;F[d+14|0]=2;F[d+13|0]=e&255?2:3;e=H[b+44>>2];f=H[e+20>>2];b:{if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}wa(e,H[e+4>>2],d+14|0,d+15|0);e=H[b+44>>2];f=H[e+20>>2];if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}wa(e,H[e+4>>2],d+13|0,d+14|0);e=H[b+44>>2];f=H[e+20>>2];if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}wa(e,H[e+4>>2],d+15|0,d+16|0);e=H[b+44>>2]}k=d,l=fa[H[H[b>>2]+12>>2]](b)|0,F[k+12|0]=l;f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){wa(e,H[e+4>>2],d+12|0,d+13|0)}G[d+10>>1]=(H[H[b+4>>2]+4>>2]!=0)<<15;e=H[b+44>>2];f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){wa(e,H[e+4>>2],d+10|0,d+12|0)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=d+16|0;if(H[a>>2]){break a}e=a+4|0;if(F[a+15|0]<0){qa(H[e>>2])}d=H[H[b+4>>2]+4>>2];c:{if(!d){H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break c}f=H[b+44>>2];if(d){Da(H[d+28>>2]-H[d+24>>2]>>2,f);g=H[d+24>>2];j=H[d+28>>2];if((g|0)!=(j|0)){while(1){i=H[g>>2];if(i){Da(H[i+24>>2],f);md(h,f,i)}g=g+4|0;if((j|0)!=(g|0)){continue}break}}md(h,f,d)}if(d){H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break c}d=ra(32);f=I[2026]|I[2027]<<8;F[d+24|0]=f;F[d+25|0]=f>>>8;f=I[2022]|I[2023]<<8|(I[2024]<<16|I[2025]<<24);g=I[2018]|I[2019]<<8|(I[2020]<<16|I[2021]<<24);F[d+16|0]=g;F[d+17|0]=g>>>8;F[d+18|0]=g>>>16;F[d+19|0]=g>>>24;F[d+20|0]=f;F[d+21|0]=f>>>8;F[d+22|0]=f>>>16;F[d+23|0]=f>>>24;f=I[2014]|I[2015]<<8|(I[2016]<<16|I[2017]<<24);g=I[2010]|I[2011]<<8|(I[2012]<<16|I[2013]<<24);F[d+8|0]=g;F[d+9|0]=g>>>8;F[d+10|0]=g>>>16;F[d+11|0]=g>>>24;F[d+12|0]=f;F[d+13|0]=f>>>8;F[d+14|0]=f>>>16;F[d+15|0]=f>>>24;f=I[2006]|I[2007]<<8|(I[2008]<<16|I[2009]<<24);g=I[2002]|I[2003]<<8|(I[2004]<<16|I[2005]<<24);F[d|0]=g;F[d+1|0]=g>>>8;F[d+2|0]=g>>>16;F[d+3|0]=g>>>24;F[d+4|0]=f;F[d+5|0]=f>>>8;F[d+6|0]=f>>>16;F[d+7|0]=f>>>24;F[d+26|0]=0;H[a>>2]=-1;Ia(e,d,26);qa(d);if(H[a>>2]){break a}}if(F[e+11|0]<0){qa(H[e>>2])}if(!(fa[H[H[b>>2]+16>>2]](b)|0)){b=ra(32);c=I[1942]|I[1943]<<8|(I[1944]<<16|I[1945]<<24);d=I[1938]|I[1939]<<8|(I[1940]<<16|I[1941]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1937]|I[1938]<<8|(I[1939]<<16|I[1940]<<24);d=I[1933]|I[1934]<<8|(I[1935]<<16|I[1936]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1929]|I[1930]<<8|(I[1931]<<16|I[1932]<<24);d=I[1925]|I[1926]<<8|(I[1927]<<16|I[1928]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1921]|I[1922]<<8|(I[1923]<<16|I[1924]<<24);d=I[1917]|I[1918]<<8|(I[1919]<<16|I[1920]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;Ia(e,b,29);qa(b);break a}if(!(fa[H[H[b>>2]+20>>2]](b)|0)){b=ra(32);c=I[2085]|I[2086]<<8|(I[2087]<<16|I[2088]<<24);d=I[2081]|I[2082]<<8|(I[2083]<<16|I[2084]<<24);F[b+23|0]=d;F[b+24|0]=d>>>8;F[b+25|0]=d>>>16;F[b+26|0]=d>>>24;F[b+27|0]=c;F[b+28|0]=c>>>8;F[b+29|0]=c>>>16;F[b+30|0]=c>>>24;c=I[2078]|I[2079]<<8|(I[2080]<<16|I[2081]<<24);d=I[2074]|I[2075]<<8|(I[2076]<<16|I[2077]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[2070]|I[2071]<<8|(I[2072]<<16|I[2073]<<24);d=I[2066]|I[2067]<<8|(I[2068]<<16|I[2069]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[2062]|I[2063]<<8|(I[2064]<<16|I[2065]<<24);d=I[2058]|I[2059]<<8|(I[2060]<<16|I[2061]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+31|0]=0;H[a>>2]=-1;Ia(e,b,31);qa(b);break a}fa[H[H[b>>2]+24>>2]](a,b);if(H[a>>2]){break a}if(F[e+11|0]<0){qa(H[e>>2])}if(!(fa[H[H[b>>2]+28>>2]](b)|0)){b=tc(h,1852);H[a>>2]=-1;if(F[b+11|0]>=0){a=H[h+4>>2];H[e>>2]=H[h>>2];H[e+4>>2]=a;H[e+8>>2]=H[h+8>>2];break a}Ia(e,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break a}qa(H[b>>2]);break a}d=c;c=tc(h,1326);d=fc(d,c,0);if(F[c+11|0]<0){qa(H[c>>2])}if(d){fa[H[H[b>>2]+48>>2]](b)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}da=h+16|0}function me(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,O=0;n=da-32|0;da=n;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;k=H[e+20>>2];if(!H[e+16>>2]&(k|0)<=0|(k|0)<0){d=a+4|0;wa(e,H[e+4>>2],a,d);k=H[e+20>>2];if(!H[e+16>>2]&(k|0)<=0|(k|0)<0){wa(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){B=a+12|0;d=B;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];C=a+32|0;d=C;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];D=a+52|0;d=D;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];E=a+72|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[n+24>>2]=H[b+8>>2];d=H[b+4>>2];H[n+16>>2]=H[b>>2];H[n+20>>2]=d;H[n+8>>2]=H[c+8>>2];b=H[c+4>>2];H[n>>2]=H[c>>2];H[n+4>>2]=b;b=0;f=da-32|0;da=f;d=a;g=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(g){if(g>>>0>=1073741824){break b}a=g<<2;b=ra(a);H[f+8>>2]=b;i=a+b|0;H[f+16>>2]=i;ta(b,0,a);H[f+12>>2]=i}a=H[d+128>>2];c=H[a>>2];if(c){H[a+4>>2]=c;qa(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;g=H[d+8>>2];i=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=i;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(g){if(g>>>0>=1073741824){break c}c=g<<2;a=ra(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;ta(a,0,c);H[f+12>>2]=b}c=H[d+140>>2];k=H[c>>2];if(k){H[c+4>>2]=k;qa(k);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];w=H[n+4>>2];x=H[n+8>>2];s=H[n+20>>2];q=H[n+24>>2];k=H[n>>2];c=H[n+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;gb(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;b=(a>>>0)/113|0;a=H[H[f+12>>2]+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=k-c;H[a+24>>2]=0;H[a+12>>2]=k;H[a+4>>2]=s;H[a+8>>2]=q;H[a>>2]=c;H[a+16>>2]=w;H[a+20>>2]=x;a=H[f+28>>2];g=a+1|0;H[f+28>>2]=g;if(a>>>0<=g>>>0){I=d+32|0;J=d+12|0;L=d+72|0;M=q&-4;F=q&3;O=q-1>>>0<3;while(1){l=H[f+12>>2];h=H[f+24>>2];i=g-1|0;a=h+i|0;b=(a>>>0)/113|0;a=H[l+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;z=H[a+32>>2];b=H[a+24>>2];k=H[a+12>>2];c=H[a>>2];H[f+28>>2]=i;a=H[f+16>>2];i=a-l|0;if(((i?N(i>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){qa(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}g=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;i=g<<2;y=N(z,12);l=y+H[d+140>>2]|0;b=H[d>>2]-H[i+H[l>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{u=k-c|0;if(u>>>0<=2){h=H[d+116>>2];H[h>>2]=g;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}h=H[d+128>>2];a=h+y|0;j=h;h=y+12|0;db(j+h|0,H[a>>2],H[a+4>>2]);a=i+H[h+H[d+128>>2]>>2]|0;l=H[a>>2]+(1<>2]=l;a=c;h:{if((k|0)==(a|0)){break h}G=H[s+24>>2];b=c;a=k;if(!q){if(l>>>0>K[i+G>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(l>>>0<=K[(i+H[w+24>>2]|0)+(N(a,x)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){o=(N(b,q)<<2)+G|0;if(l>>>0>K[o+i>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}p=H[w+24>>2]+(N(a,x)<<2)|0;if(l>>>0<=K[p+i>>2]){continue}break}A=0;h=0;t=0;if(!O){while(1){m=h<<2;j=m+o|0;r=H[j>>2];v=j;j=m+p|0;H[v>>2]=H[j>>2];H[j>>2]=r;j=m|4;r=j+o|0;v=H[r>>2];j=j+p|0;H[r>>2]=H[j>>2];H[j>>2]=v;j=m|8;r=j+o|0;v=H[r>>2];j=j+p|0;H[r>>2]=H[j>>2];H[j>>2]=v;m=m|12;j=m+o|0;r=H[j>>2];m=m+p|0;H[j>>2]=H[m>>2];H[m>>2]=r;h=h+4|0;t=t+4|0;if((M|0)!=(t|0)){continue}break}}if(F){while(1){m=h<<2;t=m+o|0;j=H[t>>2];m=m+p|0;H[t>>2]=H[m>>2];H[m>>2]=j;h=h+1|0;A=A+1|0;if((A|0)!=(F|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}l=a-c|0;o=k-a|0;if((l|0)!=(o|0)){xc(L,l>>>0>>0)}bc(J,Q(u)^31,(u>>>1|0)-(l>>>0>>0?l:o)|0);j=i;b=H[d+140>>2];h=b+y|0;i=H[h>>2];p=j+i|0;H[p>>2]=H[p>>2]+1;p=z+1|0;db(b+N(p,12)|0,i,H[h+4>>2]);if((a|0)!=(c|0)){i=H[f+28>>2]+H[f+24>>2]|0;h=H[f+12>>2];b=H[f+16>>2]-h|0;if((i|0)==((b?N(b>>2,113)-1|0:0)|0)){gb(f+8|0);i=H[f+24>>2]+H[f+28>>2]|0;h=H[f+12>>2]}b=(i>>>0)/113|0;b=H[h+(b<<2)>>2]+N(i-N(b,113)|0,36)|0;H[b+32>>2]=z;H[b+28>>2]=l;H[b+24>>2]=g;H[b+12>>2]=a;H[b+4>>2]=s;H[b+8>>2]=q;H[b>>2]=c;H[b+20>>2]=q;H[b+16>>2]=s;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(k|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;i=H[f+12>>2];h=H[f+16>>2]-i|0;if((b|0)==((h?N(h>>2,113)-1|0:0)|0)){gb(f+8|0);i=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}h=(b>>>0)/113|0;b=H[(h<<2)+i>>2]+N(b-N(h,113)|0,36)|0;H[b+32>>2]=p;H[b+28>>2]=o;H[b+24>>2]=g;H[b+12>>2]=k;H[b+8>>2]=q;H[b+4>>2]=s;H[b>>2]=a;H[b+16>>2]=w;H[b+20>>2]=x;g=H[f+28>>2]+1|0;H[f+28>>2]=g;break d}while(1){g=(a-1|0)==(g|0)?0:g+1|0;H[h+(b<<2)>>2]=g;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}if(!u|!a){break e}h=0;b=1;while(1){g=0;i:{if(!b){b=0;break i}i=H[s+24>>2]+(N(H[s+4>>2],c+h|0)<<2)|0;while(1){b=H[H[d+116>>2]+(g<<2)>>2]<<2;o=H[d>>2]-H[b+H[l>>2]>>2]|0;if(o){bc(I,o,H[b+i>>2]);a=H[d+8>>2]}b=a;g=g+1|0;if(g>>>0>>0){continue}break}}h=h+1|0;if((u|0)!=(h|0)){continue}break}}g=H[f+28>>2]}if(g){continue}break}}H[n+16>>2]=c;H[n>>2]=k;H[f+28>>2]=0;a=H[f+16>>2];g=H[f+12>>2];c=a-g|0;if(c>>>0>=9){while(1){qa(H[g>>2]);g=H[f+12>>2]+4|0;H[f+12>>2]=g;a=H[f+16>>2];c=a-g|0;if(c>>>0>8){continue}break}}b=56;j:{switch((c>>>2|0)-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break j}}k:{if((a|0)==(g|0)){break k}while(1){qa(H[g>>2]);g=g+4|0;if((g|0)!=(a|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break k}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){qa(a)}da=f+32|0;break a}va();X()}va();X()}fb(B,e);fb(C,e);fb(D,e);fb(E,e)}da=n+32|0;return 1}function Xh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=O(0),z=0,A=0;c=da+-64|0;da=c;f=H[a+80>>2];H[c+40>>2]=0;H[c+44>>2]=0;H[c+56>>2]=a;H[c+48>>2]=a;H[c+32>>2]=0;H[c+36>>2]=0;H[c+52>>2]=1065353216;e=2;a:{if((f|0)!=1){if(f&f-1){f=Ja(f)}e=f;if(!f){break a}}Ue(c+32|0,e)}f=H[a+80>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;b:{c:{d:{e:{if(!f){H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;break e}if(f>>>0>=1073741824){break b}f=f<<2;s=ra(f);H[c+16>>2]=s;b=f+s|0;H[c+24>>2]=b;ta(s,0,f);H[c+20>>2]=b;H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;z=c+40|0;f=0;while(1){d=0;b=H[c+48>>2];m=H[b+8>>2];n=H[b+12>>2]-m|0;u=(n|0)<=0;f:{if(u){break f}b=n>>>2|0;b=b>>>0>1?b:1;i=b&1;e=0;if(n>>>0>=8){j=b&1073741822;b=0;while(1){g=e<<2;h=H[g+m>>2];if(I[h+84|0]){h=f}else{h=H[H[h+68>>2]+(f<<2)>>2]}e=e+2|0;h=h<<3^d<<2;d=H[m+(g|4)>>2];if(I[d+84|0]){d=f}else{d=H[H[d+68>>2]+(f<<2)>>2]}d=h^d<<2;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!i){break f}b=H[m+(e<<2)>>2];if(I[b+84|0]){b=f}else{b=H[H[b+68>>2]+(f<<2)>>2]}d=b<<2^d<<1}g:{h:{g=H[c+36>>2];if(!g){break h}i=H[c+32>>2];e=Al(g)>>>0>1;b=g-1&d;i:{if(!e){break i}b=d;if(b>>>0>>0){break i}b=(d>>>0)%(g>>>0)|0}h=b;b=H[i+(h<<2)>>2];if(!b){break h}k=H[b>>2];if(!k){break h}p=H[c+56>>2];j:{k:{if(!e){v=g-1|0;while(1){b=H[k+4>>2];l:{if((b|0)!=(d|0)){if((h|0)==(b&v)){break l}break h}w=H[p+8>>2];b=H[p+12>>2]-w|0;if((b|0)<=0){break j}i=H[k+8>>2];l=1;o=b>>2;A=(o|0)>1?o:1;e=0;while(1){b=f;j=H[w+(e<<2)>>2];if(I[j+84|0]){j=i}else{j=H[j+68>>2];b=H[j+(f<<2)>>2];j=H[j+(i<<2)>>2]}if((b|0)==(j|0)){e=e+1|0;l=(o|0)>(e|0);if((e|0)!=(A|0)){continue}}break}if(!l){break k}}k=H[k>>2];if(k){continue}break}break h}while(1){b=H[k+4>>2];m:{if((b|0)!=(d|0)){if(b>>>0>=g>>>0){b=(b>>>0)%(g>>>0)|0}if((b|0)==(h|0)){break m}break h}v=H[p+8>>2];b=H[p+12>>2]-v|0;if((b|0)<=0){break j}i=H[k+8>>2];l=1;o=b>>2;w=(o|0)>1?o:1;e=0;while(1){b=f;j=H[v+(e<<2)>>2];if(I[j+84|0]){j=i}else{j=H[j+68>>2];b=H[j+(f<<2)>>2];j=H[j+(i<<2)>>2]}if((b|0)==(j|0)){e=e+1|0;l=(o|0)>(e|0);if((e|0)!=(w|0)){continue}}break}if(!l){break k}}k=H[k>>2];if(k){continue}break}break h}if(!k){break h}}H[(f<<2)+s>>2]=H[k+12>>2];break g}n:{if(u){h=0;break n}b=n>>>2|0;b=b>>>0>1?b:1;i=b&1;h=0;e=0;if(n>>>0>=8){j=b&1073741822;b=0;while(1){l=e<<2;d=H[l+m>>2];if(I[d+84|0]){d=f}else{d=H[H[d+68>>2]+(f<<2)>>2]}e=e+2|0;h=d<<3^h<<2;d=H[m+(l|4)>>2];if(I[d+84|0]){d=f}else{d=H[H[d+68>>2]+(f<<2)>>2]}h=h^d<<2;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!i){break n}b=H[m+(e<<2)>>2];if(I[b+84|0]){b=f}else{b=H[H[b+68>>2]+(f<<2)>>2]}h=b<<2^h<<1}o:{p:{if(!g){break p}l=g-1|0;if(l&g){k=g>>>0<=h>>>0?(h>>>0)%(g>>>0)|0:h;j=H[H[c+32>>2]+(k<<2)>>2];if(!j){break p}m=H[c+56>>2];while(1){j=H[j>>2];if(!j){break p}b=H[j+4>>2];if((b|0)!=(h|0)){if(b>>>0>=g>>>0){b=(b>>>0)%(g>>>0)|0}if((b|0)!=(k|0)){break p}}p=H[m+8>>2];b=H[m+12>>2]-p|0;if((b|0)<=0){break o}d=H[j+8>>2];l=1;n=b>>2;o=(n|0)>1?n:1;e=0;while(1){b=f;i=H[p+(e<<2)>>2];if(I[i+84|0]){i=d}else{i=H[i+68>>2];b=H[i+(f<<2)>>2];i=H[i+(d<<2)>>2]}if((b|0)==(i|0)){e=e+1|0;l=(n|0)>(e|0);if((e|0)!=(o|0)){continue}}break}if(l){continue}break}break o}k=h&l;j=H[H[c+32>>2]+(k<<2)>>2];if(!j){break p}m=H[c+56>>2];while(1){j=H[j>>2];if(!j){break p}b=H[j+4>>2];if((b|0)!=(h|0)&(b&l)!=(k|0)){break p}o=H[m+8>>2];b=H[m+12>>2]-o|0;if((b|0)<=0){break o}d=H[j+8>>2];n=1;p=b>>2;u=(p|0)>1?p:1;e=0;while(1){b=f;i=H[o+(e<<2)>>2];if(I[i+84|0]){i=d}else{i=H[i+68>>2];b=H[i+(f<<2)>>2];i=H[i+(d<<2)>>2]}if((b|0)==(i|0)){e=e+1|0;n=(p|0)>(e|0);if((e|0)!=(u|0)){continue}}break}if(n){continue}break}break o}e=ra(16);H[e+8>>2]=f;H[e+4>>2]=h;H[e>>2]=0;H[e+12>>2]=t;y=O(H[c+44>>2]+1>>>0);q=L[c+52>>2];q:{if(y>O(q*O(g>>>0))?0:g){break q}k=(g-1&g)!=0|g>>>0<3|g<<1;d=2;q=O(U(O(y/q)));r:{if(q=O(0)){b=~~q>>>0;break r}b=0}b=b>>>0>k>>>0?b:k;s:{if((b|0)==1){break s}if(!(b&b-1)){d=b;break s}d=Ja(b);g=H[c+36>>2]}t:{if(d>>>0<=g>>>0){if(d>>>0>=g>>>0){break t}k=g>>>0<3;q=O(U(O(O(K[c+44>>2])/L[c+52>>2])));u:{if(q=O(0)){b=~~q>>>0;break u}b=0}v:{w:{if(k){break w}if(Al(g)>>>0>1){break w}b=b>>>0<2?b:1<<32-Q(b-1|0);break v}b=Ja(b)}d=b>>>0>d>>>0?b:d;if(g>>>0<=d>>>0){break t}}Ue(c+32|0,d)}g=H[c+36>>2];b=g-1|0;if(!(b&g)){k=b&h;break q}if(g>>>0>h>>>0){k=h;break q}k=(h>>>0)%(g>>>0)|0}d=H[c+32>>2]+(k<<2)|0;b=H[d>>2];x:{if(!b){H[e>>2]=H[c+40>>2];H[c+40>>2]=e;H[d>>2]=z;b=H[e>>2];if(!b){break x}d=H[b+4>>2];b=g-1|0;y:{if(!(b&g)){d=b&d;break y}if(d>>>0>>0){break y}d=(d>>>0)%(g>>>0)|0}H[H[c+32>>2]+(d<<2)>>2]=e;break x}H[e>>2]=H[b>>2];H[b>>2]=e}H[c+44>>2]=H[c+44>>2]+1;x=H[c+8>>2];r=H[c+4>>2];s=H[c+16>>2]}H[(f<<2)+s>>2]=t;t=t+1|0;if((r|0)!=(x|0)){H[r>>2]=f;r=r+4|0;H[c+4>>2]=r;break g}h=H[c>>2];d=x-h|0;i=d>>2;b=i+1|0;if(b>>>0>=1073741824){break d}e=d>>1;e=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>=1073741824){break c}b=ra(e<<2)}else{b=0}i=b+(i<<2)|0;H[i>>2]=f;x=b+(e<<2)|0;r=i+4|0;if((d|0)>0){sa(b,h,d)}H[c+8>>2]=x;H[c+4>>2]=r;H[c>>2]=b;if(!h){break g}qa(h)}f=f+1|0;b=H[a+80>>2];if(f>>>0>>0){continue}break}if((b|0)==(t|0)){break e}fa[H[H[a>>2]+24>>2]](a,c+16|0,c);H[a+80>>2]=t}a=H[c>>2];if(a){H[c+4>>2]=a;qa(a)}a=H[c+16>>2];if(a){H[c+20>>2]=a;qa(a)}f=H[c+40>>2];if(f){while(1){a=H[f>>2];qa(f);f=a;if(f){continue}break}}a=H[c+32>>2];H[c+32>>2]=0;if(a){qa(a)}da=c- -64|0;return}va();X()}ya(1604);X()}va();X()}function xf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=O(0);j=da+-64|0;da=j;H[j+40>>2]=0;H[j+44>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+48>>2]=1065353216;c=H[a+80>>2];H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;k=ra(d);H[j+16>>2]=k;c=d+k|0;H[j+24>>2]=c;ta(k,0,d);H[j+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],q,0)|0;c=c+f|0;e=I[c|0]|I[c+1|0]<<8;G[j+30>>1]=e;c:{d:{e:{if(!i){break e}g=H[j+32>>2];h=e^318;d=Al(i)>>>0>1;c=h&i-1;f:{if(!d){break f}c=h;if(c>>>0>>0){break f}c=(h>>>0)%(i>>>0)|0}f=c;c=H[g+(f<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!d){i=i-1|0;while(1){d=H[c+4>>2];g:{if((d|0)!=(h|0)){if((f|0)==(d&i)){break g}break e}if((e|0)==J[c+8>>1]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){d=H[c+4>>2];h:{if((d|0)!=(h|0)){if(d>>>0>=i>>>0){d=(d>>>0)%(i>>>0)|0}if((d|0)==(f|0)){break h}break e}if((e|0)==J[c+8>>1]){break d}}c=H[c>>2];if(c){continue}break}}H[j+12>>2]=o;G[j+8>>1]=e;c=0;h=J[j+8>>1];i=h^318;i:{j:{g=j+32|0;e=H[g+4>>2];if(!e){break j}d=Al(e);k:{if(d>>>0>=2){c=i;if(e>>>0<=c>>>0){c=(i>>>0)%(e>>>0)|0}l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}if(d>>>0<=1){break k}while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break j}}if((h|0)!=J[l+8>>1]){continue}break}c=0;break i}c=i&e-1;l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}}f=e-1|0;while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)&(d&f)!=(c|0)){break j}if((h|0)!=J[l+8>>1]){continue}break}c=0;break i}l=ra(16);G[l+8>>1]=J[j+8>>1];d=H[j+12>>2];H[l+4>>2]=i;H[l+12>>2]=d;H[l>>2]=0;s=O(H[g+12>>2]+1>>>0);n=L[g+16>>2];l:{if(s>O(n*O(e>>>0))?0:e){break l}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;n=O(U(O(s/n)));m:{if(n=O(0)){f=~~n>>>0;break m}f=0}d=d>>>0>>0?f:d;n:{if((d|0)==1){break n}if(!(d&d-1)){c=d;break n}c=Ja(d);e=H[g+4>>2]}o:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break o}f=e>>>0<3;n=O(U(O(O(K[g+12>>2])/L[g+16>>2])));p:{if(n=O(0)){d=~~n>>>0;break p}d=0}q:{r:{if(f){break r}if(Al(e)>>>0>1){break r}d=d>>>0<2?d:1<<32-Q(d-1|0);break q}d=Ja(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break o}}d=0;e=0;k=c;s:{t:{u:{v:{if(c){if(k>>>0>=1073741824){break v}c=ra(k<<2);f=H[g>>2];H[g>>2]=c;if(f){qa(f)}H[g+4>>2]=k;f=0;if(k-1>>>0>=3){c=k&-4;while(1){h=f<<2;H[h+H[g>>2]>>2]=0;H[H[g>>2]+(h|4)>>2]=0;H[H[g>>2]+(h|8)>>2]=0;H[H[g>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[g>>2]+(f<<2)>>2]=0;f=f+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}d=H[g+8>>2];if(!d){break s}c=g+8|0;h=H[d+4>>2];f=Al(k);if(f>>>0<2){break u}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}if(f>>>0<=1){break t}while(1){e=H[c+4>>2];if(k>>>0<=e>>>0){e=(e>>>0)%(k>>>0)|0}w:{if((e|0)==(h|0)){d=c;break w}f=c;p=e<<2;r=p+H[g>>2]|0;if(!H[r>>2]){H[r>>2]=d;d=c;h=e;break w}while(1){e=f;f=H[e>>2];if(J[c+8>>1]==J[f+8>>1]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break s}c=H[g>>2];H[g>>2]=0;if(c){qa(c)}H[g+4>>2]=0;break s}ya(1604);X()}h=k-1&h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}}r=k-1|0;while(1){e=r&H[c+4>>2];x:{if((e|0)==(h|0)){d=c;break x}f=c;p=e<<2;k=p+H[g>>2]|0;if(H[k>>2]){while(1){e=f;f=H[e>>2];if(J[c+8>>1]==J[f+8>>1]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c;break x}H[k>>2]=d;d=c;h=e}c=H[d>>2];if(c){continue}break}}}e=H[g+4>>2];c=e-1|0;if(!(c&e)){c=c&i;break l}if(e>>>0>i>>>0){c=i;break l}c=(i>>>0)%(e>>>0)|0}c=H[g>>2]+(c<<2)|0;d=H[c>>2];y:{if(!d){H[l>>2]=H[g+8>>2];H[g+8>>2]=l;H[c>>2]=g+8;c=H[l>>2];if(!c){break y}c=H[c+4>>2];d=e-1|0;z:{if(!(d&e)){c=c&d;break z}if(c>>>0>>0){break z}c=(c>>>0)%(e>>>0)|0}H[H[g>>2]+(c<<2)>>2]=l;break y}H[l>>2]=H[d>>2];H[d>>2]=l}H[g+12>>2]=H[g+12>>2]+1;c=1}F[j+60|0]=c;H[j+56>>2]=l;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,o)|0,j+30|0,c);k=H[j+16>>2];H[k+(q<<2)>>2]=o;o=o+1|0;break c}H[(q<<2)+k>>2]=H[c+12>>2]}c=q+1|0;m=c?m:m+1|0;q=c;c=H[a+80>>2];if(!m&c>>>0>q>>>0){i=H[j+36>>2];continue}break}if((c|0)==(o|0)){break b}A:{if(!I[a+84|0]){i=H[a+68>>2];b=H[a+72>>2]-i|0;if(!b){break A}h=H[j+16>>2];b=b>>2;b=b>>>0>1?b:1;f=b&3;e=0;c=0;if(b-1>>>0>=3){d=b&-4;k=0;while(1){m=c<<2;b=m+i|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|4)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|8)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|12)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+4|0;k=k+4|0;if((d|0)!=(k|0)){continue}break}}if(!f){break A}while(1){b=i+(c<<2)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break A}F[a+84|0]=0;i=H[a+68>>2];b=H[a+72>>2]-i>>2;B:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);i=H[a+68>>2];c=H[a+80>>2];break B}if(b>>>0<=c>>>0){break B}H[a+72>>2]=(c<<2)+i}if(!c){break A}h=H[j+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;k=0;while(1){m=b<<2;H[m+i>>2]=H[h+m>>2];d=m|4;H[d+i>>2]=H[d+h>>2];d=m|8;H[d+i>>2]=H[d+h>>2];d=m|12;H[d+i>>2]=H[d+h>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=c&3;if(!d){break A}while(1){c=b<<2;H[c+i>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=o}a=H[j+16>>2];if(a){qa(a)}c=H[j+40>>2];if(c){while(1){a=H[c>>2];qa(c);c=a;if(c){continue}break}}a=H[j+32>>2];H[j+32>>2]=0;if(a){qa(a)}da=j- -64|0;return o}va();X()}function Jf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=O(0);j=da+-64|0;da=j;H[j+40>>2]=0;H[j+44>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+48>>2]=1065353216;c=H[a+80>>2];H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;k=ra(d);H[j+16>>2]=k;c=d+k|0;H[j+24>>2]=c;ta(k,0,d);H[j+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],q,0)|0;e=I[c+f|0];F[j+31|0]=e;c:{d:{e:{if(!i){break e}g=H[j+32>>2];h=e^318;d=Al(i)>>>0>1;c=h&i-1;f:{if(!d){break f}c=h;if(c>>>0>>0){break f}c=(h>>>0)%(i>>>0)|0}f=c;c=H[g+(f<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!d){i=i-1|0;while(1){d=H[c+4>>2];g:{if((d|0)!=(h|0)){if((f|0)==(d&i)){break g}break e}if((e|0)==I[c+8|0]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){d=H[c+4>>2];h:{if((d|0)!=(h|0)){if(d>>>0>=i>>>0){d=(d>>>0)%(i>>>0)|0}if((d|0)==(f|0)){break h}break e}if((e|0)==I[c+8|0]){break d}}c=H[c>>2];if(c){continue}break}}H[j+12>>2]=o;F[j+8|0]=e;c=0;h=I[j+8|0];i=h^318;i:{j:{g=j+32|0;e=H[g+4>>2];if(!e){break j}d=Al(e);k:{if(d>>>0>=2){c=i;if(e>>>0<=c>>>0){c=(i>>>0)%(e>>>0)|0}l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}if(d>>>0<=1){break k}while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break j}}if((h|0)!=I[l+8|0]){continue}break}c=0;break i}c=i&e-1;l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}}f=e-1|0;while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)&(d&f)!=(c|0)){break j}if((h|0)!=I[l+8|0]){continue}break}c=0;break i}l=ra(16);F[l+8|0]=I[j+8|0];d=H[j+12>>2];H[l+4>>2]=i;H[l+12>>2]=d;H[l>>2]=0;s=O(H[g+12>>2]+1>>>0);n=L[g+16>>2];l:{if(s>O(n*O(e>>>0))?0:e){break l}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;n=O(U(O(s/n)));m:{if(n=O(0)){f=~~n>>>0;break m}f=0}d=d>>>0>>0?f:d;n:{if((d|0)==1){break n}if(!(d&d-1)){c=d;break n}c=Ja(d);e=H[g+4>>2]}o:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break o}f=e>>>0<3;n=O(U(O(O(K[g+12>>2])/L[g+16>>2])));p:{if(n=O(0)){d=~~n>>>0;break p}d=0}q:{r:{if(f){break r}if(Al(e)>>>0>1){break r}d=d>>>0<2?d:1<<32-Q(d-1|0);break q}d=Ja(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break o}}d=0;e=0;k=c;s:{t:{u:{v:{if(c){if(k>>>0>=1073741824){break v}c=ra(k<<2);f=H[g>>2];H[g>>2]=c;if(f){qa(f)}H[g+4>>2]=k;f=0;if(k-1>>>0>=3){c=k&-4;while(1){h=f<<2;H[h+H[g>>2]>>2]=0;H[H[g>>2]+(h|4)>>2]=0;H[H[g>>2]+(h|8)>>2]=0;H[H[g>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[g>>2]+(f<<2)>>2]=0;f=f+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}d=H[g+8>>2];if(!d){break s}c=g+8|0;h=H[d+4>>2];f=Al(k);if(f>>>0<2){break u}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}if(f>>>0<=1){break t}while(1){e=H[c+4>>2];if(k>>>0<=e>>>0){e=(e>>>0)%(k>>>0)|0}w:{if((e|0)==(h|0)){d=c;break w}f=c;p=e<<2;r=p+H[g>>2]|0;if(!H[r>>2]){H[r>>2]=d;d=c;h=e;break w}while(1){e=f;f=H[e>>2];if(I[c+8|0]==I[f+8|0]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break s}c=H[g>>2];H[g>>2]=0;if(c){qa(c)}H[g+4>>2]=0;break s}ya(1604);X()}h=k-1&h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}}r=k-1|0;while(1){e=r&H[c+4>>2];x:{if((e|0)==(h|0)){d=c;break x}f=c;p=e<<2;k=p+H[g>>2]|0;if(H[k>>2]){while(1){e=f;f=H[e>>2];if(I[c+8|0]==I[f+8|0]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c;break x}H[k>>2]=d;d=c;h=e}c=H[d>>2];if(c){continue}break}}}e=H[g+4>>2];c=e-1|0;if(!(c&e)){c=c&i;break l}if(e>>>0>i>>>0){c=i;break l}c=(i>>>0)%(e>>>0)|0}c=H[g>>2]+(c<<2)|0;d=H[c>>2];y:{if(!d){H[l>>2]=H[g+8>>2];H[g+8>>2]=l;H[c>>2]=g+8;c=H[l>>2];if(!c){break y}c=H[c+4>>2];d=e-1|0;z:{if(!(d&e)){c=c&d;break z}if(c>>>0>>0){break z}c=(c>>>0)%(e>>>0)|0}H[H[g>>2]+(c<<2)>>2]=l;break y}H[l>>2]=H[d>>2];H[d>>2]=l}H[g+12>>2]=H[g+12>>2]+1;c=1}F[j+60|0]=c;H[j+56>>2]=l;c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,o)|0,j+31|0,c);k=H[j+16>>2];H[k+(q<<2)>>2]=o;o=o+1|0;break c}H[(q<<2)+k>>2]=H[c+12>>2]}c=q+1|0;m=c?m:m+1|0;q=c;c=H[a+80>>2];if(!m&c>>>0>q>>>0){i=H[j+36>>2];continue}break}if((c|0)==(o|0)){break b}A:{if(!I[a+84|0]){i=H[a+68>>2];b=H[a+72>>2]-i|0;if(!b){break A}h=H[j+16>>2];b=b>>2;b=b>>>0>1?b:1;f=b&3;e=0;c=0;if(b-1>>>0>=3){d=b&-4;k=0;while(1){m=c<<2;b=m+i|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|4)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|8)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|12)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+4|0;k=k+4|0;if((d|0)!=(k|0)){continue}break}}if(!f){break A}while(1){b=i+(c<<2)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break A}F[a+84|0]=0;i=H[a+68>>2];b=H[a+72>>2]-i>>2;B:{if(b>>>0>>0){Ma(a+68|0,c-b|0,2204);i=H[a+68>>2];c=H[a+80>>2];break B}if(b>>>0<=c>>>0){break B}H[a+72>>2]=(c<<2)+i}if(!c){break A}h=H[j+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;k=0;while(1){m=b<<2;H[m+i>>2]=H[h+m>>2];d=m|4;H[d+i>>2]=H[d+h>>2];d=m|8;H[d+i>>2]=H[d+h>>2];d=m|12;H[d+i>>2]=H[d+h>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=c&3;if(!d){break A}while(1){c=b<<2;H[c+i>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=o}a=H[j+16>>2];if(a){qa(a)}c=H[j+40>>2];if(c){while(1){a=H[c>>2];qa(c);c=a;if(c){continue}break}}a=H[j+32>>2];H[j+32>>2]=0;if(a){qa(a)}da=j- -64|0;return o}va();X()}function _f(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=da-32|0;da=j;c=H[a+16>>2];H[a+20>>2]=c;a:{b:{c:{d:{e:{if((c|0)!=H[a+24>>2]){H[c>>2]=b;b=c+4|0;H[a+20>>2]=b;f=c;break e}f=ra(4);H[f>>2]=b;b=f+4|0;H[a+24>>2]=b;H[a+20>>2]=b;H[a+16>>2]=f;if(c){break d}}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0;break c}qa(c);b=H[a+20>>2];f=H[a+16>>2];if((b|0)==(f|0)){break b}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0}if((c|0)<=0){d=H[a+28>>2];while(1){c=b-4|0;e=H[c>>2];f:{if((e|0)!=-1){e=(e>>>0)/3|0;if(!(H[d+(e>>>3&268435452)>>2]>>>e&1)){break f}}H[a+20>>2]=c;b=c}if((b|0)!=(f|0)){continue}break}break b}p=a+120|0;c=(c|0)/12|0;q=(c|0)>1?c:1;g:{h:{i:{while(1){j:{k:{l:{c=b-4|0;b=H[c>>2];if((b|0)==-1){break l}d=H[a+28>>2];f=(b>>>0)/3|0;if(H[d+(f>>>3&268435452)>>2]>>>f&1){break l}i=0;while(1){H[a+164>>2]=H[a+164>>2]+1;h=(b>>>0)/3|0;g=(b|0)==-1;l=g?-1:h;c=(l>>>3&536870908)+d|0;H[c>>2]=H[c>>2]|1<>2];m:{if((c|0)!=H[a+80>>2]){H[c>>2]=b;H[a+76>>2]=c+4;break m}d=H[a+72>>2];f=c-d|0;k=f>>2;c=k+1|0;if(c>>>0>1073741823){break j}e=f>>1;e=f>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>1073741823){break a}c=ra(e<<2)}else{c=0}k=c+(k<<2)|0;H[k>>2]=b;if((f|0)>0){sa(c,d,f)}H[a+80>>2]=c+(e<<2);H[a+76>>2]=k+4;H[a+72>>2]=c;if(!d){break m}qa(d)}c=-1;c=(b|0)!=-1?H[H[H[a+12>>2]>>2]+(b<<2)>>2]:c;m=c<<2;k=H[m+H[a+152>>2]>>2];n:{o:{f=H[a+84>>2]+(c>>>3&536870908)|0;d=H[f>>2];c=1<>2]=c|d;if((k|0)==-1){break o}}p:{if(g){break p}c=-1;f=b+1|0;g=(f>>>0)%3|0?f:b-2|0;if((g|0)!=-1){c=H[H[H[a+12>>2]+12>>2]+(g<<2)>>2]}q:{r:{h=b-N(h,3)|0;s:{if(h){f=b-1|0;break s}f=b+2|0;if((f|0)==-1){break r}}f=H[H[H[a+12>>2]+12>>2]+(f<<2)>>2];e=(f|0)==-1?-1:(f>>>0)/3|0;d=(c|0)==-1?-1:(c>>>0)/3|0;break q}e=-1;f=-1;d=(c|0)==-1?-1:(c>>>0)/3|0}t:{if((g|0)==-1){break t}n=H[H[a+12>>2]+12>>2];g=H[n+(g<<2)>>2];if((g|0)==-1){break t}o=H[a+28>>2];g=(g>>>0)/3|0;if(H[o+(g>>>3&268435452)>>2]>>>g&1){break t}u:{v:{if(h){d=b-1|0;break v}d=b+2|0;if((d|0)==-1){break u}}d=H[(d<<2)+n>>2];if((d|0)==-1){break u}d=(d>>>0)/3|0;if(H[(d>>>3&268435452)+o>>2]>>>d&1){break u}d=H[a+272>>2];w:{if((d|0)!=H[a+276>>2]){H[d>>2]=1;H[a+272>>2]=d+4;break w}g=H[a+268>>2];e=d-g|0;h=e>>2;d=h+1|0;if(d>>>0>1073741823){break i}i=e>>1;i=e>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(i){if(i>>>0>1073741823){break a}d=ra(i<<2)}else{d=0}h=d+(h<<2)|0;H[h>>2]=1;if((e|0)>0){sa(d,g,e)}H[a+276>>2]=d+(i<<2);H[a+272>>2]=h+4;H[a+268>>2]=d;if(!g){break w}qa(g)}H[a+168>>2]=H[a+168>>2]+1;x:{if((k|0)==-1){break x}d=H[H[a+152>>2]+m>>2];if(H[H[a+140>>2]+(d>>>3&536870908)>>2]>>>d&1){break x}Hc(a,b,0)}b=H[a+164>>2];H[j+4>>2]=l;d=j+4|0;H[j+16>>2]=d;Vf(j+24|0,p,d,j+16|0);H[H[j+24>>2]+12>>2]=b;b=H[a+20>>2];H[b-4>>2]=f;if((b|0)!=H[a+24>>2]){H[b>>2]=c;H[a+20>>2]=b+4;break k}d=H[a+16>>2];f=b-d|0;g=f>>2;b=g+1|0;if(b>>>0>1073741823){break h}e=f>>1;e=f>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break g}b=ra(e<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;if((f|0)>0){sa(b,d,f)}H[a+24>>2]=b+(e<<2);H[a+20>>2]=g+4;H[a+16>>2]=b;if(!d){break k}qa(d);break k}if((e|0)!=-1){gc(a,H[a+164>>2],0,e)}b=H[a+272>>2];if((b|0)!=H[a+276>>2]){H[b>>2]=3;H[a+272>>2]=b+4;break n}d=H[a+268>>2];f=b-d|0;g=f>>2;b=g+1|0;if(b>>>0>1073741823){break i}e=f>>1;e=f>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break a}b=ra(e<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=3;if((f|0)>0){sa(b,d,f)}H[a+276>>2]=b+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=b;if(!d){break n}qa(d);break n}if((d|0)!=-1){gc(a,H[a+164>>2],1,d)}y:{z:{if(h){b=b-1|0;break z}b=b+2|0;if((b|0)==-1){break y}}b=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break y}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break y}b=H[a+272>>2];if((b|0)!=H[a+276>>2]){H[b>>2]=5;H[a+272>>2]=b+4;c=f;break n}d=H[a+268>>2];c=b-d|0;g=c>>2;b=g+1|0;if(b>>>0>1073741823){break i}e=c>>1;e=c>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break a}b=ra(e<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=5;if((c|0)>0){sa(b,d,c)}H[a+276>>2]=b+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=b;if(!d){c=f;break n}qa(d);c=f;break n}if((e|0)==-1){break p}gc(a,H[a+164>>2],0,e)}b=H[a+272>>2];A:{if((b|0)!=H[a+276>>2]){H[b>>2]=7;H[a+272>>2]=b+4;break A}f=H[a+268>>2];c=b-f|0;e=c>>2;b=e+1|0;if(b>>>0>1073741823){break i}d=c>>1;d=c>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>1073741823){break a}b=ra(d<<2)}else{b=0}e=b+(e<<2)|0;H[e>>2]=7;if((c|0)>0){sa(b,f,c)}H[a+276>>2]=b+(d<<2);H[a+272>>2]=e+4;H[a+268>>2]=b;if(!f){break A}qa(f)}H[a+20>>2]=H[a+20>>2]-4;break k}c=H[a+272>>2];B:{if((c|0)!=H[a+276>>2]){H[c>>2]=0;H[a+272>>2]=c+4;break B}d=H[a+268>>2];f=c-d|0;g=f>>2;c=g+1|0;if(c>>>0>1073741823){break i}e=f>>1;e=f>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>1073741823){break a}c=ra(e<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=0;if((f|0)>0){sa(c,d,f)}H[a+276>>2]=c+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=c;if(!d){break B}qa(d)}c=-1;if((b|0)==-1){break n}f=b+1|0;b=(f>>>0)%3|0?f:b-2|0;if((b|0)==-1){break n}c=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2]}i=i+1|0;if((q|0)==(i|0)){break k}d=H[a+28>>2];b=c;continue}}H[a+20>>2]=c}b=H[a+20>>2];if((b|0)!=H[a+16>>2]){continue}break b}break}va();X()}va();X()}va();X()}break a}da=j+32|0;return 1}ya(1604);X()}function Zd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=H[b+48>>2];if(!h){b=ra(32);c=I[1814]|I[1815]<<8|(I[1816]<<16|I[1817]<<24);f=I[1810]|I[1811]<<8|(I[1812]<<16|I[1813]<<24);F[b+15|0]=f;F[b+16|0]=f>>>8;F[b+17|0]=f>>>16;F[b+18|0]=f>>>24;F[b+19|0]=c;F[b+20|0]=c>>>8;F[b+21|0]=c>>>16;F[b+22|0]=c>>>24;c=I[1807]|I[1808]<<8|(I[1809]<<16|I[1810]<<24);f=I[1803]|I[1804]<<8|(I[1805]<<16|I[1806]<<24);F[b+8|0]=f;F[b+9|0]=f>>>8;F[b+10|0]=f>>>16;F[b+11|0]=f>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1799]|I[1800]<<8|(I[1801]<<16|I[1802]<<24);f=I[1795]|I[1796]<<8|(I[1797]<<16|I[1798]<<24);F[b|0]=f;F[b+1|0]=f>>>8;F[b+2|0]=f>>>16;F[b+3|0]=f>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+23|0]=0;H[a>>2]=-1;Ia(a+4|0,b,23);qa(b);return}g=H[b+52>>2];if(!g){f=da-32|0;da=f;e=ra(16);H[f+16>>2]=e;H[f+20>>2]=15;H[f+24>>2]=-2147483632;F[e+15|0]=0;d=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);g=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[e+7|0]=g;F[e+8|0]=g>>>8;F[e+9|0]=g>>>16;F[e+10|0]=g>>>24;F[e+11|0]=d;F[e+12|0]=d>>>8;F[e+13|0]=d>>>16;F[e+14|0]=d>>>24;d=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);g=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[e|0]=g;F[e+1|0]=g>>>8;F[e+2|0]=g>>>16;F[e+3|0]=g>>>24;F[e+4|0]=d;F[e+5|0]=d>>>8;F[e+6|0]=d>>>16;F[e+7|0]=d>>>24;g=b+4|0;j=Db(g,f+16|0,-1);if(F[f+27|0]<0){qa(H[f+16>>2])}a:{b:{c:{d:{e:{switch(j+1|0){case 1:d=ra(56);H[d>>2]=0;H[d+4>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;e=mc(d);H[d>>2]=12688;break c;case 0:break e;default:break d}}if((bb(g)|0)!=10){break d}d=ra(56);H[d>>2]=0;H[d+4>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;e=mc(d);H[d>>2]=12688;break c}e=0;H[f+12>>2]=0;f:{i=H[h+12>>2];d=H[h+8>>2];if((i-d|0)>0){while(1){k=H[H[(e<<2)+d>>2]+28>>2];if(k-1>>>0>=6){if((k|0)!=9){break f}e=ra(32);H[f+16>>2]=e;H[f+20>>2]=17;H[f+24>>2]=-2147483616;F[e+17|0]=0;F[e+16|0]=I[1373];d=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);i=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[e+8|0]=i;F[e+9|0]=i>>>8;F[e+10|0]=i>>>16;F[e+11|0]=i>>>24;F[e+12|0]=d;F[e+13|0]=d>>>8;F[e+14|0]=d>>>16;F[e+15|0]=d>>>24;d=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);i=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[e|0]=i;F[e+1|0]=i>>>8;F[e+2|0]=i>>>16;F[e+3|0]=i>>>24;F[e+4|0]=d;F[e+5|0]=d>>>8;F[e+6|0]=d>>>16;F[e+7|0]=d>>>24;e=xb(g,f+12|0,f+16|0,-1);if(F[f+27|0]<0){qa(H[f+16>>2])}if((e|0)<=0){break f}d=H[h+8>>2];i=H[h+12>>2];e=H[f+12>>2]}e=e+1|0;H[f+12>>2]=e;if(i-d>>2>(e|0)){continue}break}}d=ra(56);H[d>>2]=0;H[d+4>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;e=mc(d);H[d>>2]=12580;break c}if((j|0)==1){break b}d=ra(56);H[d>>2]=0;H[d+4>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;e=mc(d);H[d>>2]=12688}H[e+4>>2]=h;If(a,e,g,c);if(!H[a>>2]){if(F[a+15|0]<0){qa(H[a+4>>2])}c=H[e+52>>2];H[b+44>>2]=0;H[b+40>>2]=c;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}fa[H[H[e>>2]+4>>2]](e);break a}b=ra(32);c=I[1997]|I[1998]<<8|(I[1999]<<16|I[2e3]<<24);e=I[1993]|I[1994]<<8|(I[1995]<<16|I[1996]<<24);F[b+16|0]=e;F[b+17|0]=e>>>8;F[b+18|0]=e>>>16;F[b+19|0]=e>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1989]|I[1990]<<8|(I[1991]<<16|I[1992]<<24);e=I[1985]|I[1986]<<8|(I[1987]<<16|I[1988]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1981]|I[1982]<<8|(I[1983]<<16|I[1984]<<24);e=I[1977]|I[1978]<<8|(I[1979]<<16|I[1980]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+24|0]=0;H[a>>2]=-1;Ia(a+4|0,b,24);qa(b)}da=f+32|0;return}e=da-16|0;da=e;f=ra(16);H[e>>2]=f;H[e+4>>2]=15;H[e+8>>2]=-2147483632;F[f+15|0]=0;d=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);h=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[f+7|0]=h;F[f+8|0]=h>>>8;F[f+9|0]=h>>>16;F[f+10|0]=h>>>24;F[f+11|0]=d;F[f+12|0]=d>>>8;F[f+13|0]=d>>>16;F[f+14|0]=d>>>24;d=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);h=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[f|0]=h;F[f+1|0]=h>>>8;F[f+2|0]=h>>>16;F[f+3|0]=h>>>24;F[f+4|0]=d;F[f+5|0]=d>>>8;F[f+6|0]=d>>>16;F[f+7|0]=d>>>24;d=b+4|0;f=Db(d,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}g:{h:{i:{switch(f+1|0){case 0:if((bb(d)|0)==10){break h}break;case 2:break i;default:break h}}f=ra(68);Mf(f);H[f+64>>2]=0;H[f>>2]=10432;break g}f=ra(64);Mf(f);H[f>>2]=12296}H[f+56>>2]=g;H[f+4>>2]=g;If(a,f,d,c);if(!H[a>>2]){if(F[a+15|0]<0){qa(H[a+4>>2])}H[b+40>>2]=H[f+52>>2];H[b+44>>2]=H[f+60>>2];H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}fa[H[H[f>>2]+4>>2]](f);da=e+16|0}function Vj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=da-16|0;da=e;f=H[a+48>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=20;H[e+8>>2]=-2147483616;F[b+20|0]=0;c=I[1471]|I[1472]<<8|(I[1473]<<16|I[1474]<<24);F[b+16|0]=c;F[b+17|0]=c>>>8;F[b+18|0]=c>>>16;F[b+19|0]=c>>>24;c=I[1467]|I[1468]<<8|(I[1469]<<16|I[1470]<<24);d=I[1463]|I[1464]<<8|(I[1465]<<16|I[1466]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1459]|I[1460]<<8|(I[1461]<<16|I[1462]<<24);d=I[1455]|I[1456]<<8|(I[1457]<<16|I[1458]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;f=Cf(f+24|0,e);if(F[e+11|0]<0){qa(H[e>>2])}g=H[a+48>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=22;H[e+8>>2]=-2147483616;F[b+22|0]=0;c=I[1450]|I[1451]<<8|(I[1452]<<16|I[1453]<<24);d=I[1446]|I[1447]<<8|(I[1448]<<16|I[1449]<<24);F[b+14|0]=d;F[b+15|0]=d>>>8;F[b+16|0]=d>>>16;F[b+17|0]=d>>>24;F[b+18|0]=c;F[b+19|0]=c>>>8;F[b+20|0]=c>>>16;F[b+21|0]=c>>>24;c=I[1444]|I[1445]<<8|(I[1446]<<16|I[1447]<<24);d=I[1440]|I[1441]<<8|(I[1442]<<16|I[1443]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1436]|I[1437]<<8|(I[1438]<<16|I[1439]<<24);d=I[1432]|I[1433]<<8|(I[1434]<<16|I[1435]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;g=Cf(g+24|0,e);if(F[e+11|0]<0){qa(H[e>>2])}b=H[a+64>>2];H[a+64>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}b=H[a+56>>2];h=H[b+100>>2];i=H[a+48>>2];j=H[b+96>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=18;H[e+8>>2]=-2147483616;F[b+18|0]=0;c=I[1725]|I[1726]<<8;F[b+16|0]=c;F[b+17|0]=c>>>8;c=I[1721]|I[1722]<<8|(I[1723]<<16|I[1724]<<24);d=I[1717]|I[1718]<<8|(I[1719]<<16|I[1720]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1713]|I[1714]<<8|(I[1715]<<16|I[1716]<<24);d=I[1709]|I[1710]<<8|(I[1711]<<16|I[1712]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;b=Db(i,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}c=(h-j|0)/12|0;a:{b:{c:{d:{e:{f:{g:{h:{switch(b+1|0){case 1:break f;case 3:break g;case 0:break h;default:break c}}if(!f){break g}if(c>>>0<1e3|(bb(H[a+48>>2])|0)>4|g^1){break e}}b=H[a+44>>2];F[e|0]=2;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],e,e+1|0)}b=ra(360);H[b+4>>2]=0;H[b+8>>2]=0;H[b+72>>2]=0;H[b+76>>2]=0;H[b>>2]=10612;H[b+12>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+64>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[b+96>>2]=0;H[b+100>>2]=0;H[b+104>>2]=0;H[b+108>>2]=0;H[b+112>>2]=0;H[b+116>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+136>>2]=1065353216;H[b+156>>2]=0;H[b+160>>2]=0;H[b+148>>2]=0;H[b+152>>2]=0;H[b+140>>2]=0;H[b+144>>2]=0;H[b+168>>2]=0;H[b+172>>2]=0;H[b+164>>2]=-1;H[b+176>>2]=0;H[b+180>>2]=0;H[b+184>>2]=0;H[b+188>>2]=0;H[b+192>>2]=0;c=b+200|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=b+232|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[b+304>>2]=0;H[b+308>>2]=0;H[b+296>>2]=0;H[b+300>>2]=0;H[b+288>>2]=0;H[b+292>>2]=0;H[b+280>>2]=0;H[b+284>>2]=0;H[b+272>>2]=0;H[b+276>>2]=0;H[b+264>>2]=0;H[b+268>>2]=0;F[b+352|0]=0;H[b+344>>2]=0;H[b+336>>2]=0;H[b+340>>2]=0;H[b+328>>2]=2;H[b+332>>2]=7;H[b+320>>2]=-1;H[b+324>>2]=0;H[b+312>>2]=0;H[b+316>>2]=-1;break d}if(!f){break c}}b=H[a+44>>2];F[e|0]=0;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],e,e+1|0)}b=ra(296);H[b+4>>2]=0;H[b+8>>2]=0;H[b+72>>2]=0;H[b+76>>2]=0;H[b>>2]=10560;H[b+12>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+64>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[b+96>>2]=0;H[b+100>>2]=0;H[b+104>>2]=0;H[b+108>>2]=0;H[b+112>>2]=0;H[b+116>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+136>>2]=1065353216;H[b+156>>2]=0;H[b+160>>2]=0;H[b+148>>2]=0;H[b+152>>2]=0;H[b+140>>2]=0;H[b+144>>2]=0;H[b+168>>2]=0;H[b+172>>2]=0;H[b+164>>2]=-1;H[b+176>>2]=0;H[b+180>>2]=0;H[b+184>>2]=0;H[b+188>>2]=0;H[b+192>>2]=0;c=b+200|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=b+232|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;F[b+288|0]=0;H[b+280>>2]=0;H[b+284>>2]=0;H[b+272>>2]=0;H[b+276>>2]=0;H[b+264>>2]=0;H[b+268>>2]=0}c=H[a+64>>2];H[a+64>>2]=b;if(!c){break b}fa[H[H[c>>2]+4>>2]](c)}b=H[a+64>>2];if(b){break b}a=0;break a}a=fa[H[H[b>>2]+8>>2]](b,a)|0}da=e+16|0;return a|0}function Yc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=da-16|0;da=e;H[a+8>>2]=b;H[a>>2]=0;d=a+12|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;c=d+32|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+96|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+128|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+160|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+192|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+224|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+256|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+288|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+320|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+352|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+384|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+416|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+448|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+480|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+512|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+544|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+576|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+608|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+640|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+672|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+704|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+736|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+768|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+800|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+832|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+864|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+896|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+928|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+960|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;d=d+992|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1036|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1068|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1088|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1108|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[a+1136>>2]=0;H[a+1128>>2]=0;H[a+1132>>2]=0;h=a+1164|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();X()}H[a+1140>>2]=0;H[a+1144>>2]=0;d=a+1156|0;H[d>>2]=0;H[d+4>>2]=0;d=a+1148|0;H[d>>2]=0;H[d+4>>2]=0;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;d=1;break a}d=b<<2;c=ra(d);H[a+1128>>2]=c;f=c+d|0;H[a+1136>>2]=f;ta(c,0,d);g=a+1148|0;H[g>>2]=0;H[a+1140>>2]=0;H[a+1144>>2]=0;H[a+1132>>2]=f;c=ra(d);H[a+1140>>2]=c;f=c+d|0;H[g>>2]=f;ta(c,0,d);g=a+1160|0;H[g>>2]=0;H[a+1152>>2]=0;H[a+1156>>2]=0;H[a+1144>>2]=f;c=ra(d);H[a+1152>>2]=c;f=c+d|0;H[g>>2]=f;ta(c,0,d);H[a+1156>>2]=f;c=ra(d);H[e>>2]=c;f=c+d|0;H[e+8>>2]=f;ta(c,0,d);H[e+4>>2]=f;d=b<<5|1}cc(h,d,e);c=H[e>>2];if(c){H[e+4>>2]=c;qa(c)}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if(b){b=b<<2;c=ra(b);H[e>>2]=c;f=b+c|0;H[e+8>>2]=f;ta(c,0,b);H[e+4>>2]=f}cc(a+1176|0,d,e);b=H[e>>2];if(b){H[e+4>>2]=b;qa(b)}da=e+16|0;return a}function hh(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;g=da-80|0;da=g;i=-1;f=-1;a:{if((b|0)==-1){break a}f=b+1|0;i=(f>>>0)%3|0?f:b-2|0;f=b-1|0;if((b>>>0)%3|0){break a}f=b+2|0}e=H[a+36>>2];b=H[e>>2];b:{c:{d:{e:{f:{g:{e=H[e+4>>2]-b>>2;h=i<<2;i=H[H[a+32>>2]+28>>2];j=H[h+i>>2];if(e>>>0<=j>>>0){break g}f=H[i+(f<<2)>>2];if(f>>>0>=e>>>0){break g}h:{i:{e=H[b+(f<<2)>>2];k=H[b+(j<<2)>>2];if((e|0)>=(d|0)|(k|0)>=(d|0)){break i}b=(e<<3)+c|0;n=H[b+4>>2];f=(k<<3)+c|0;i=H[f+4>>2];q=H[f>>2];A=H[b>>2];if(!((q|0)!=(A|0)|(i|0)!=(n|0))){H[a+8>>2]=q;H[a+12>>2]=i;break h}b=H[H[a+4>>2]+(d<<2)>>2];H[g+72>>2]=0;H[g+76>>2]=0;f=g- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}ib(f,b,F[f+24|0],g+56|0);b=H[H[a+4>>2]+(k<<2)>>2];H[g+48>>2]=0;H[g+52>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}ib(f,b,F[f+24|0],g+32|0);b=H[H[a+4>>2]+(e<<2)>>2];H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}ib(f,b,F[f+24|0],g+8|0);E=H[g+44>>2];b=H[g+16>>2];p=H[g+40>>2];f=p;j=H[g+20>>2]-(E+(b>>>0>>0)|0)|0;r=b-f|0;b=xl(r,j,r,j);f=ea;s=b;G=H[g+36>>2];b=H[g+8>>2];B=H[g+32>>2];e=B;h=H[g+12>>2]-(G+(b>>>0>>0)|0)|0;v=b-e|0;l=xl(v,h,v,h);b=s+l|0;e=ea+f|0;e=b>>>0>>0?e+1|0:e;x=b;J=H[g+52>>2];b=H[g+24>>2];s=H[g+48>>2];f=s;l=H[g+28>>2]-(J+(b>>>0>>0)|0)|0;w=b-f|0;o=xl(w,l,w,l);b=x+o|0;f=ea+e|0;t=b;o=b>>>0>>0?f+1|0:f;if(!(b|o)){break i}x=H[g+64>>2];b=x;C=H[g+68>>2];b=xl(b-p|0,C-((b>>>0

>>0)+E|0)|0,r,j);f=ea;k=b;K=H[g+56>>2];b=K;L=H[g+60>>2];e=xl(b-B|0,L-((b>>>0>>0)+G|0)|0,v,h);b=k+e|0;f=ea+f|0;f=b>>>0>>0?f+1|0:f;e=b;M=H[g+72>>2];b=M;N=H[g+76>>2];k=xl(b-s|0,N-((b>>>0>>0)+J|0)|0,w,l);b=e+k|0;e=ea+f|0;e=b>>>0>>0?e+1|0:e;k=b;u=e;b=l>>31;e=b+w|0;f=b+l|0;f=e>>>0>>0?f+1|0:f;D=e^b;b=b^f;f=b;b=j>>31;m=b+r|0;e=b+j|0;e=m>>>0>>0?e+1|0:e;y=m^b;b=b^e;e=b;b=h>>31;z=b+v|0;m=b+h|0;m=z>>>0>>0?m+1|0:m;z=z^b;b=b^m;m=(b|0)==(e|0)&y>>>0>z>>>0|b>>>0>>0;y=m?y:z;b=m?e:b;e=(b|0)==(f|0)&y>>>0>>0|b>>>0>>0;f=zl(-1,2147483647,e?D:y,e?f:b)>>>0>>0;b=ea;if(f&(b|0)<=(u|0)|(b|0)<(u|0)){break c}b=i;y=n-b|0;f=b>>31;z=(n>>31)-(f+(b>>>0>n>>>0)|0)|0;b=xl(k,u,y,z);e=ea;i=xl(i,f,t,o);f=i+b|0;b=ea+e|0;n=f;D=f>>>0>>0?b+1|0:b;b=q;O=A-b|0;f=b>>31;P=(A>>31)-(f+(b>>>0>A>>>0)|0)|0;b=xl(k,u,O,P);i=ea;f=xl(q,f,t,o);b=f+b|0;e=ea+i|0;q=b;A=b>>>0>>0?e+1|0:e;i=1;f=0;b=x;r=yl(xl(r,j,k,u),ea,t,o);j=r+p|0;e=ea+E|0;e=j>>>0>>0?e+1|0:e;e=C-((b>>>0>>0)+e|0)|0;b=b-j|0;b=xl(b,e,b,e);r=ea;e=K;p=b;h=yl(xl(v,h,k,u),ea,t,o);j=h+B|0;b=ea+G|0;b=h>>>0>j>>>0?b+1|0:b;b=L-((e>>>0>>0)+b|0)|0;e=e-j|0;j=xl(e,b,e,b);b=p+j|0;e=ea+r|0;h=b;j=b>>>0>>0?e+1|0:e;b=M;p=h;l=yl(xl(w,l,k,u),ea,t,o);h=l+s|0;e=ea+J|0;e=h>>>0>>0?e+1|0:e;e=N-((b>>>0>>0)+e|0)|0;b=b-h|0;h=xl(b,e,b,e);e=p+h|0;b=ea+j|0;j=xl(e,e>>>0>>0?b+1|0:b,t,o);b=ea;h=b;if(!b&j>>>0<=1){break f}l=j;e=h;while(1){b=f<<1|i>>>31;i=i<<1;f=b;k=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(k){continue}break}break e}if((d|0)>(k|0)){b=k<<1}else{if((d|0)<=0){H[a+8>>2]=0;H[a+12>>2]=0;break h}b=(d<<1)-2|0}b=(b<<2)+c|0;H[a+8>>2]=H[b>>2];H[a+12>>2]=H[b+4>>2]}break c}ua();X()}f=h;i=j;if(j-1|0){break d}}while(1){b=zl(j,h,i,f)+i|0;m=f+ea|0;m=b>>>0>>0?m+1|0:m;i=(m&1)<<31|b>>>1;f=m>>>1|0;b=xl(i,f,i,f);e=ea;if((h|0)==(e|0)&b>>>0>j>>>0|e>>>0>h>>>0){continue}break}}j=a+16|0;w=H[a+24>>2];u=w<<5;b=H[a+20>>2];h=(d<<3)+c|0;d=H[h+4>>2];p=xl(i,f,O,P);c=p;B=ea;c=yl(n-c|0,D-(B+(c>>>0>n>>>0)|0)|0,t,o);k=d-c|0;l=d>>31;e=l-(ea+(c>>>0>d>>>0)|0)|0;s=xl(k,e,k,e);x=ea;h=H[h>>2];e=h>>31;k=h;r=e;v=xl(i,f,y,z);f=q+v|0;C=ea;m=A+C|0;i=yl(f,f>>>0>>0?m+1|0:m,t,o);f=e-(ea+(h>>>0>>0)|0)|0;e=h-i|0;h=xl(e,f,e,f);f=h+s|0;e=ea+x|0;s=f;h=f>>>0>>0?e+1|0:e;f=d;e=D+B|0;d=n+p|0;e=d>>>0>>0?e+1|0:e;d=yl(d,e,t,o);e=l-(ea+(d>>>0>f>>>0)|0)|0;f=f-d|0;e=xl(f,e,f,e);p=ea;x=e;f=yl(q-v|0,A-((q>>>0>>0)+C|0)|0,t,o);n=k-f|0;e=r-(ea+(f>>>0>k>>>0)|0)|0;q=xl(n,e,n,e);n=x+q|0;e=ea+p|0;e=n>>>0>>0?e+1|0:e;j:{if((e|0)==(h|0)&n>>>0>s>>>0|e>>>0>h>>>0){if((b|0)==(u|0)){if((b+1|0)<0){break b}if(b>>>0<=1073741822){b=b+32&-32;d=w<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Hb(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;d=H[a+16>>2]+(b>>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>>0<=1073741822){b=b+32&-32;c=w<<6;b=b>>>0>c>>>0?b:c}else{b=2147483647}Hb(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;c=H[a+16>>2]+(b>>>3&536870908)|0;i=H[c>>2];Q=c,R=Bl(b)&i,H[Q>>2]=R;c=d;i=f}H[a+8>>2]=i;H[a+12>>2]=c}da=g+80|0;return}La();X()}function ch(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;g=da-80|0;da=g;f=-1;a:{if((b|0)==-1){break a}i=H[a+32>>2];e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)!=-1){f=H[H[i>>2]+(e<<2)>>2]}e=((b>>>0)%3|0?-1:2)+b|0;b=-1;b=(e|0)!=-1?H[H[i>>2]+(e<<2)>>2]:b;e=H[a+36>>2];i=H[e>>2];e=H[e+4>>2]-i>>2;if(e>>>0<=f>>>0|b>>>0>=e>>>0){break a}b:{c:{d:{e:{f:{g:{e=H[i+(b<<2)>>2];k=H[i+(f<<2)>>2];if((e|0)>=(d|0)|(k|0)>=(d|0)){break g}b=(e<<3)+c|0;n=H[b+4>>2];f=(k<<3)+c|0;i=H[f+4>>2];q=H[f>>2];A=H[b>>2];if(!((q|0)!=(A|0)|(i|0)!=(n|0))){H[a+8>>2]=q;H[a+12>>2]=i;break c}b=H[H[a+4>>2]+(d<<2)>>2];H[g+72>>2]=0;H[g+76>>2]=0;f=g- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}ib(f,b,F[f+24|0],g+56|0);b=H[H[a+4>>2]+(k<<2)>>2];H[g+48>>2]=0;H[g+52>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}ib(f,b,F[f+24|0],g+32|0);b=H[H[a+4>>2]+(e<<2)>>2];H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}ib(f,b,F[f+24|0],g+8|0);E=H[g+44>>2];b=H[g+16>>2];p=H[g+40>>2];f=p;j=H[g+20>>2]-(E+(b>>>0>>0)|0)|0;r=b-f|0;b=xl(r,j,r,j);f=ea;s=b;G=H[g+36>>2];b=H[g+8>>2];B=H[g+32>>2];e=B;h=H[g+12>>2]-(G+(b>>>0>>0)|0)|0;v=b-e|0;l=xl(v,h,v,h);b=s+l|0;e=ea+f|0;e=b>>>0>>0?e+1|0:e;x=b;J=H[g+52>>2];b=H[g+24>>2];s=H[g+48>>2];f=s;l=H[g+28>>2]-(J+(b>>>0>>0)|0)|0;w=b-f|0;o=xl(w,l,w,l);b=x+o|0;f=ea+e|0;t=b;o=b>>>0>>0?f+1|0:f;if(!(b|o)){break g}x=H[g+64>>2];b=x;C=H[g+68>>2];b=xl(b-p|0,C-((b>>>0

>>0)+E|0)|0,r,j);f=ea;k=b;K=H[g+56>>2];b=K;L=H[g+60>>2];e=xl(b-B|0,L-((b>>>0>>0)+G|0)|0,v,h);b=k+e|0;f=ea+f|0;f=b>>>0>>0?f+1|0:f;e=b;M=H[g+72>>2];b=M;N=H[g+76>>2];k=xl(b-s|0,N-((b>>>0>>0)+J|0)|0,w,l);b=e+k|0;e=ea+f|0;e=b>>>0>>0?e+1|0:e;k=b;u=e;b=l>>31;e=b+w|0;f=b+l|0;f=e>>>0>>0?f+1|0:f;D=e^b;b=b^f;f=b;b=j>>31;m=b+r|0;e=b+j|0;e=m>>>0>>0?e+1|0:e;y=m^b;b=b^e;e=b;b=h>>31;z=b+v|0;m=b+h|0;m=z>>>0>>0?m+1|0:m;z=z^b;b=b^m;m=(b|0)==(e|0)&y>>>0>z>>>0|b>>>0>>0;y=m?y:z;b=m?e:b;e=(b|0)==(f|0)&y>>>0>>0|b>>>0>>0;f=zl(-1,2147483647,e?D:y,e?f:b)>>>0>>0;b=ea;if(f&(b|0)<=(u|0)|(b|0)<(u|0)){break c}b=i;y=n-b|0;f=b>>31;z=(n>>31)-(f+(b>>>0>n>>>0)|0)|0;b=xl(k,u,y,z);e=ea;i=xl(i,f,t,o);f=i+b|0;b=ea+e|0;n=f;D=f>>>0>>0?b+1|0:b;b=q;O=A-b|0;f=b>>31;P=(A>>31)-(f+(b>>>0>A>>>0)|0)|0;b=xl(k,u,O,P);i=ea;f=xl(q,f,t,o);b=f+b|0;e=ea+i|0;q=b;A=b>>>0>>0?e+1|0:e;i=1;f=0;b=x;r=yl(xl(r,j,k,u),ea,t,o);j=r+p|0;e=ea+E|0;e=j>>>0>>0?e+1|0:e;e=C-((b>>>0>>0)+e|0)|0;b=b-j|0;b=xl(b,e,b,e);r=ea;e=K;p=b;h=yl(xl(v,h,k,u),ea,t,o);j=h+B|0;b=ea+G|0;b=h>>>0>j>>>0?b+1|0:b;b=L-((e>>>0>>0)+b|0)|0;e=e-j|0;j=xl(e,b,e,b);b=p+j|0;e=ea+r|0;h=b;j=b>>>0>>0?e+1|0:e;b=M;p=h;l=yl(xl(w,l,k,u),ea,t,o);h=l+s|0;e=ea+J|0;e=h>>>0>>0?e+1|0:e;e=N-((b>>>0>>0)+e|0)|0;b=b-h|0;h=xl(b,e,b,e);e=p+h|0;b=ea+j|0;j=xl(e,e>>>0>>0?b+1|0:b,t,o);b=ea;h=b;if(!b&j>>>0<=1){break f}l=j;e=h;while(1){b=f<<1|i>>>31;i=i<<1;f=b;k=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(k){continue}break}break e}if((d|0)>(k|0)){b=k<<1}else{if((d|0)<=0){H[a+8>>2]=0;H[a+12>>2]=0;break c}b=(d<<1)-2|0}b=(b<<2)+c|0;H[a+8>>2]=H[b>>2];H[a+12>>2]=H[b+4>>2];break c}f=h;i=j;if(i-1|0){break d}}while(1){b=zl(j,h,i,f)+i|0;m=f+ea|0;m=b>>>0>>0?m+1|0:m;i=(m&1)<<31|b>>>1;f=m>>>1|0;b=xl(i,f,i,f);e=ea;if((h|0)==(e|0)&b>>>0>j>>>0|e>>>0>h>>>0){continue}break}}j=a+16|0;w=H[a+24>>2];u=w<<5;b=H[a+20>>2];h=(d<<3)+c|0;d=H[h+4>>2];p=xl(i,f,O,P);c=p;B=ea;c=yl(n-c|0,D-(B+(c>>>0>n>>>0)|0)|0,t,o);k=d-c|0;l=d>>31;e=l-(ea+(c>>>0>d>>>0)|0)|0;s=xl(k,e,k,e);x=ea;h=H[h>>2];e=h>>31;k=h;r=e;v=xl(i,f,y,z);f=q+v|0;C=ea;m=A+C|0;i=yl(f,f>>>0>>0?m+1|0:m,t,o);f=e-(ea+(h>>>0>>0)|0)|0;e=h-i|0;h=xl(e,f,e,f);f=h+s|0;e=ea+x|0;s=f;h=f>>>0>>0?e+1|0:e;f=d;e=D+B|0;d=n+p|0;e=d>>>0>>0?e+1|0:e;d=yl(d,e,t,o);e=l-(ea+(d>>>0>f>>>0)|0)|0;f=f-d|0;e=xl(f,e,f,e);p=ea;x=e;f=yl(q-v|0,A-((q>>>0>>0)+C|0)|0,t,o);n=k-f|0;e=r-(ea+(f>>>0>k>>>0)|0)|0;q=xl(n,e,n,e);n=x+q|0;e=ea+p|0;e=n>>>0>>0?e+1|0:e;h:{if((e|0)==(h|0)&n>>>0>s>>>0|e>>>0>h>>>0){if((b|0)==(u|0)){if((b+1|0)<0){break b}if(b>>>0<=1073741822){b=b+32&-32;d=w<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Hb(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;d=H[a+16>>2]+(b>>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>>0<=1073741822){b=b+32&-32;c=w<<6;b=b>>>0>c>>>0?b:c}else{b=2147483647}Hb(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;c=H[a+16>>2]+(b>>>3&536870908)|0;i=H[c>>2];Q=c,R=Bl(b)&i,H[Q>>2]=R;c=d;i=f}H[a+8>>2]=i;H[a+12>>2]=c}da=g+80|0;return}La();X()}ua();X()}function Ja(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[e+12>>2]=a;a:{if(a>>>0<=211){d=H[De(17808,18e3,e+12|0)>>2];break a}if(a>>>0>=4294967292){gd();X()}f=(a>>>0)/210|0;d=N(f,210);H[e+8>>2]=a-d;g=De(18e3,18192,e+8|0)-18e3>>2;while(1){d=H[(g<<2)+18e3>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0>>0){break b}if((N(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((N(b,c)|0)!=(d|0)){continue}break}break c}b=H[(a<<2)+17808>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((N(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=N(f,210);continue}break}H[e+12>>2]=d}da=e+16|0;return d}function el(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=da-32|0;da=g;a:{b:{if(!H[H[a+8>>2]+80>>2]){d=1;break b}F[g+31|0]=254;i=H[a+36>>2];if(i){if(!(fa[H[H[a>>2]+40>>2]](a,i)|0)){break b}d=H[a+36>>2];n=g,o=fa[H[H[d>>2]+8>>2]](d)|0,F[n+31|0]=o}d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){wa(c,H[c+4>>2],g+31|0,g+32|0)}d=H[a+36>>2];c:{if(!d){break c}n=g,o=fa[H[H[d>>2]+36>>2]](d)|0,F[n+16|0]=o;d=H[c+20>>2];if(!!H[c+16>>2]&(d|0)>=0|(d|0)>0){break c}wa(c,H[c+4>>2],g+16|0,g+17|0)}d=H[a+32>>2];e=H[d+48>>2];f=H[H[d>>2]>>2];h=H[d+80>>2];k=F[d+24|0];i=0;H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;h=N(h,k);if(h){if(h>>>0>=1073741824){break a}d=h<<2;i=ra(d);H[g+16>>2]=i;j=d+i|0;H[g+24>>2]=j;ta(i,0,d);H[g+20>>2]=j}d=e+f|0;e=H[a+36>>2];d:{e:{if(!e){break e}fa[H[H[e>>2]+44>>2]](e,d,i,h,k,H[b>>2])|0;e=H[a+36>>2];if(!e){break e}if(fa[H[H[e>>2]+32>>2]](e)|0){break d}d=H[a+36>>2]?i:d}e=0;f=0;f:{if((h|0)<=0){break f}if((h|0)!=1){m=h&-2;while(1){l=e<<2;j=H[l+d>>2];H[i+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+d>>2];H[i+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;e=e+2|0;f=f+2|0;if((m|0)!=(f|0)){continue}break}}if(!(h&1)){break f}e=e<<2;d=H[e+d>>2];H[e+i>>2]=(d|0)>=0?d<<1:(d^-1)<<1|1}}g:{h:{i:{j:{k:{d=H[a+4>>2];if(!d){break k}j=H[d+48>>2];d=ra(48);H[g>>2]=d;H[g+4>>2]=34;H[g+8>>2]=-2147483600;F[d+34|0]=0;e=I[1523]|I[1524]<<8;F[d+32|0]=e;F[d+33|0]=e>>>8;e=I[1519]|I[1520]<<8|(I[1521]<<16|I[1522]<<24);f=I[1515]|I[1516]<<8|(I[1517]<<16|I[1518]<<24);F[d+24|0]=f;F[d+25|0]=f>>>8;F[d+26|0]=f>>>16;F[d+27|0]=f>>>24;F[d+28|0]=e;F[d+29|0]=e>>>8;F[d+30|0]=e>>>16;F[d+31|0]=e>>>24;e=I[1511]|I[1512]<<8|(I[1513]<<16|I[1514]<<24);f=I[1507]|I[1508]<<8|(I[1509]<<16|I[1510]<<24);F[d+16|0]=f;F[d+17|0]=f>>>8;F[d+18|0]=f>>>16;F[d+19|0]=f>>>24;F[d+20|0]=e;F[d+21|0]=e>>>8;F[d+22|0]=e>>>16;F[d+23|0]=e>>>24;e=I[1503]|I[1504]<<8|(I[1505]<<16|I[1506]<<24);f=I[1499]|I[1500]<<8|(I[1501]<<16|I[1502]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1495]|I[1496]<<8|(I[1497]<<16|I[1498]<<24);f=I[1491]|I[1492]<<8|(I[1493]<<16|I[1494]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=fc(j,g,1);if(F[g+11|0]<0){qa(H[g>>2])}if(d){break k}if(!h){break j}e=0;d=0;b=0;if(h-1>>>0>=3){j=h&-4;f=0;while(1){k=d<<2;b=H[(k|12)+i>>2]|(H[(k|8)+i>>2]|(H[(k|4)+i>>2]|(H[i+k>>2]|b)));d=d+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}f=h&3;if(f){while(1){b=H[(d<<2)+i>>2]|b;d=d+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(!b){break j}b=4-(Q(b)>>>3|0)|0;break i}F[g|0]=1;d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){wa(c,H[c+4>>2],g,g+1|0)}H[g+4>>2]=0;H[g+8>>2]=0;H[g>>2]=g+4;d=H[a+4>>2];if(d){j=10-bb(H[d+48>>2])|0;h=da-16|0;da=h;l:{if(j>>>0>10){break l}d=ra(48);H[h>>2]=d;H[h+4>>2]=33;H[h+8>>2]=-2147483600;F[d+33|0]=0;F[d+32|0]=I[1582];e=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[d+24|0]=f;F[d+25|0]=f>>>8;F[d+26|0]=f>>>16;F[d+27|0]=f>>>24;F[d+28|0]=e;F[d+29|0]=e>>>8;F[d+30|0]=e>>>16;F[d+31|0]=e>>>24;e=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[d+16|0]=f;F[d+17|0]=f>>>8;F[d+18|0]=f>>>16;F[d+19|0]=f>>>24;F[d+20|0]=e;F[d+21|0]=e>>>8;F[d+22|0]=e>>>16;F[d+23|0]=e>>>24;e=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;tb(g,h,j);if(F[h+11|0]>=0){break l}qa(H[h>>2])}da=h+16|0}b=Yd(i,N(k,H[b+4>>2]-H[b>>2]>>2),k,g,c);Ka(g,H[g+4>>2]);d=0;if(b){break h}break g}b=1}F[g|0]=0;d=H[c+20>>2];m:{if(!!H[c+16>>2]&(d|0)>=0|(d|0)>0){break m}e=g+1|0;wa(c,H[c+4>>2],g,e);d=H[c+20>>2];f=H[c+16>>2];F[g|0]=b;if(!!f&(d|0)>=0|(d|0)>0){break m}wa(c,H[c+4>>2],g,e)}if((b|0)!=H[3716]){if(!h){break h}d=H[c+20>>2];e=d;f=H[c+16>>2];if(!!f&(d|0)>=0|(d|0)>0){break h}d=0;while(1){if(!f&(e|0)<=0|(e|0)<0){e=(d<<2)+i|0;wa(c,H[c+4>>2],e,b+e|0)}d=d+1|0;if((h|0)==(d|0)){break h}f=H[c+16>>2];e=H[c+20>>2];continue}}b=H[c+20>>2];if(!!H[c+16>>2]&(b|0)>=0|(b|0)>0){break h}wa(c,H[c+4>>2],i,(h<<2)+i|0)}d=1;a=H[a+36>>2];if(!a){break g}fa[H[H[a>>2]+40>>2]](a,c)|0}if(!i){break b}qa(i)}da=g+32|0;return d|0}va();X()}function Pf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{if(H[a+92>>2]==H[a+88>>2]){break e}c=H[a+52>>2];f:{if((c|0)!=H[a+56>>2]){H[c>>2]=b;H[a+52>>2]=c+4;break f}d=H[a+48>>2];i=c-d|0;f=i>>2;e=f+1|0;if(e>>>0>=1073741824){break b}c=i>>1;e=i>>>0<2147483644?c>>>0>>0?e:c:1073741823;if(e){if(e>>>0>=1073741824){break a}c=ra(e<<2)}else{c=0}f=c+(f<<2)|0;H[f>>2]=b;if((i|0)>0){sa(c,d,i)}H[a+56>>2]=c+(e<<2);H[a+52>>2]=f+4;H[a+48>>2]=c;if(!d){break f}qa(d)}H[a+84>>2]=0;f=-1;c=-1;g:{if((b|0)==-1){break g}e=H[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=H[H[e>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=H[H[e>>2]+(d<<2)>>2]}h=c>>>3&536870908;e=H[a+36>>2];g=e+(f>>>3&536870908)|0;i=H[g>>2];d=1<>2]=d|i;g=a+8|0;if((b|0)!=-1){e=b+1|0;d=(e>>>0)%3|0?e:b-2|0}else{d=-1}nb(g,f,d);e=H[a+36>>2]}d=e+h|0;e=H[d>>2];f=1<>2]=e|f;d=a+8|0;f=-1;i:{if((b|0)==-1){break i}f=b-1|0;if((b>>>0)%3|0){break i}f=b+2|0}nb(d,c,f)}f=-1;f=(b|0)!=-1?H[H[H[a+4>>2]>>2]+(b<<2)>>2]:f;d=H[a+36>>2]+(f>>>3&536870908)|0;e=H[d>>2];c=1<>2]=c|e;nb(a+8|0,f,b)}d=H[a+84>>2];if((d|0)>2){break e}while(1){f=N(d,12)+a|0;b=H[f+52>>2];if((b|0)==H[f+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=H[c>>2];H[f+52>>2]=c;H[a+84>>2]=d;if((b|0)==-1){break e}f=H[a+24>>2];c=(b>>>0)/3|0;j:{if(H[f+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){k=(b>>>0)/3|0;c=(k>>>3&268435452)+f|0;H[c>>2]=H[c>>2]|1<>2]>>2]+(b<<2)>>2]:f;d=H[a+36>>2]+(f>>>3&536870908)|0;e=H[d>>2];c=1<>2]=c|e;i=H[(H[H[a+16>>2]+96>>2]+N(k,12)|0)+((b>>>0)%3<<2)>>2];j=H[H[a+20>>2]+4>>2];c=H[j+4>>2];t:{if((c|0)!=H[j+8>>2]){H[c>>2]=i;H[j+4>>2]=c+4;break t}g=H[j>>2];h=c-g|0;e=h>>2;d=e+1|0;if(d>>>0>=1073741824){break s}c=h>>1;d=h>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=ra(d<<2)}else{c=0}e=c+(e<<2)|0;H[e>>2]=i;if((h|0)>0){sa(c,g,h)}H[j+8>>2]=c+(d<<2);H[j+4>>2]=e+4;H[j>>2]=c;if(!g){break t}qa(g)}h=H[a+12>>2];c=H[h+4>>2];u:{if((c|0)!=H[h+8>>2]){H[c>>2]=b;H[h+4>>2]=c+4;break u}i=H[h>>2];g=c-i|0;e=g>>2;d=e+1|0;if(d>>>0>=1073741824){break r}c=g>>1;d=g>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=ra(d<<2)}else{c=0}e=c+(e<<2)|0;H[e>>2]=b;if((g|0)>0){sa(c,i,g)}H[h+8>>2]=c+(d<<2);H[h+4>>2]=e+4;H[h>>2]=c;if(!i){break u}qa(i)}c=H[a+12>>2];H[H[c+12>>2]+(f<<2)>>2]=H[c+24>>2];H[c+24>>2]=H[c+24>>2]+1}if((b|0)==-1){break k}h=H[a+4>>2];f=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=H[H[h+12>>2]+(c<<2)>>2]}v:{w:{if((N(k,3)|0)!=(b|0)){e=b-1|0;break w}e=b+2|0;b=-1;if((e|0)==-1){break v}}b=H[H[h+12>>2]+(e<<2)>>2]}g=(b|0)==-1;i=(b>>>0)/3|0;e=(f>>>0)/3|0;c=(f|0)==-1;if(!c){c=c?-1:e;c=H[H[a+24>>2]+(c>>>3&536870908)>>2]&1<>2]+(c>>>3&536870908)>>2]>>>c&1){break x}e=0;c=H[H[h>>2]+(b<<2)>>2];if(!(H[H[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=H[a+88>>2]+(c<<2)|0;e=H[c>>2];H[c>>2]=e+1;e=(e|0)<=0?2:1}if(H[a+84>>2]>=(e|0)?d:0){break m}j=N(e,12)+a|0;c=H[j+52>>2];y:{if((c|0)!=H[j+56>>2]){H[c>>2]=b;H[j+52>>2]=c+4;break y}h=H[j+48>>2];k=c-h|0;i=k>>2;g=i+1|0;if(g>>>0>=1073741824){break d}c=k>>1;g=k>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=ra(g<<2)}else{c=0}i=c+(i<<2)|0;H[i>>2]=b;if((k|0)>0){sa(c,h,k)}H[j+48>>2]=c;H[j+52>>2]=i+4;H[j+56>>2]=c+(g<<2);if(!h){break y}qa(h)}if(H[a+84>>2]<=(e|0)){break x}H[a+84>>2]=e}if(d){break k}b=-1;if((f|0)==-1){break n}}b=H[H[H[a+4>>2]>>2]+(f<<2)>>2]}e=0;if(!(H[H[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=H[a+88>>2]+(b<<2)|0;c=H[b>>2];H[b>>2]=c+1;e=(c|0)<=0?2:1}if(H[a+84>>2]<(e|0)){break l}b=f}f=H[a+24>>2];continue}break}h=N(e,12)+a|0;b=H[h+52>>2];z:{if((b|0)!=H[h+56>>2]){H[b>>2]=f;H[h+52>>2]=b+4;break z}i=H[h+48>>2];g=b-i|0;c=g>>2;d=c+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=g>>>0<2147483644?b>>>0>>0?d:b:1073741823;if(d){if(d>>>0>=1073741824){break a}b=ra(d<<2)}else{b=0}c=b+(c<<2)|0;H[c>>2]=f;if((g|0)>0){sa(b,i,g)}H[h+48>>2]=b;H[h+52>>2]=c+4;H[h+56>>2]=b+(d<<2);if(!i){break z}qa(i)}d=H[a+84>>2];if((e|0)>=(d|0)){break j}H[a+84>>2]=e;d=e;break j}d=H[a+84>>2]}if((d|0)<3){continue}break}}return 1}va();X()}va();X()}va();X()}ya(1604);X()}function Zi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=da-16|0;da=r;a:{if(!(fa[H[H[a>>2]+32>>2]](a)|0)){break a}e=H[a+44>>2];d=H[a+12>>2];b=H[a+8>>2];F[r+15|0]=d-b>>>2;g=H[e+20>>2];if(!H[e+16>>2]&(g|0)<=0|(g|0)<0){wa(e,H[e+4>>2],r+15|0,r+16|0);b=H[a+8>>2];d=H[a+12>>2]}if((b|0)!=(d|0)){while(1){g=H[b>>2];if(!(fa[H[H[g>>2]+8>>2]](g,a,H[a+4>>2])|0)){break a}b=b+4|0;if((d|0)!=(b|0)){continue}break}}f=da-48|0;da=f;s=a+32|0;d=H[a+12>>2];h=H[a+8>>2];i=d-h|0;b=i>>2;g=H[a+32>>2];e=H[a+36>>2]-g>>2;b:{if(b>>>0>e>>>0){Ea(s,b-e|0);d=H[a+12>>2];h=H[a+8>>2];i=d-h|0;b=i>>2;break b}if(b>>>0>=e>>>0){break b}H[a+36>>2]=g+(b<<2)}H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;c:{d:{e:{if(!i){break e}if((i|0)<0){break d}e=b-1>>>5|0;g=e+1|0;m=ra(g<<2);H[f+40>>2]=g;H[f+32>>2]=m;H[f+36>>2]=b;H[m+((i>>>0<132?0:e)<<2)>>2]=0;e=m;m=b>>>5<<2;e=ta(e,0,m);g=b&31;if(!g){break e}b=e+m|0;H[b>>2]=H[b>>2]&(-1>>>32-g^-1)}while(1){f:{g:{b=d-h|0;if(b>>2>>>0>o>>>0){if(!b){p=0;b=0;break g}m=H[f+32>>2];p=0;l=0;while(1){k=m+(l>>>3&536870908)|0;d=H[k>>2];e=1<>2];b=H[i+4>>2];if((b|0)!=H[i+8>>2]){q=0;d=1;g=H[f+32>>2];while(1){h=0;n=H[(q<<2)+b>>2];i:{if((fa[H[H[i>>2]+24>>2]](i,n)|0)<=0){break i}while(1){j:{b=H[j+H[a+8>>2]>>2];b=fa[H[H[b>>2]+28>>2]](b,n,h)|0;if((b|0)==(l|0)){break j}b=H[H[a+20>>2]+(b<<2)>>2];if(H[(b>>>3&536870908)+g>>2]>>>b&1){break j}d=0;break i}b=H[j+H[a+8>>2]>>2];h=h+1|0;if((fa[H[H[b>>2]+24>>2]](b,n)|0)>(h|0)){continue}break}}h=H[a+8>>2];i=H[j+h>>2];b=H[i+4>>2];q=q+1|0;if(q>>>0>2]-b>>2>>>0){continue}break}if(!d){break h}d=H[k>>2]}H[H[s>>2]+(o<<2)>>2]=l;H[k>>2]=d|e;p=1;o=o+1|0}d=H[a+12>>2];b=d-h>>2;l=l+1|0;if(b>>>0>l>>>0){continue}break}break g}p=0;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[a+4>>2];b=H[c+12>>2];c=H[c+8>>2];H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;l=0;k:{l:{m:{g=b-c|0;n:{if(!g){break n}if((g|0)<0){break m}e=g>>2;b=e-1>>>5|0;c=b+1|0;l=ra(c<<2);H[f+8>>2]=c;H[f>>2]=l;H[f+4>>2]=e;H[((g>>>0<132?0:b)<<2)+l>>2]=0;g=e>>>5<<2;c=ta(l,0,g);b=e&31;if(!b){break n}c=c+g|0;H[c>>2]=H[c>>2]&(-1>>>32-b^-1)}o:{if((d|0)==(h|0)){c=1;break o}while(1){n=H[H[s>>2]+(p<<2)>>2]<<2;c=H[n+h>>2];c=H[c+8>>2]-H[c+4>>2]|0;p:{if((c|0)<8){break p}k=c>>2;c=H[f+16>>2];d=H[f+20>>2]-c>>2;q:{if(k>>>0>d>>>0){Ea(f+16|0,k-d|0);break q}if(d>>>0<=k>>>0){break q}H[f+20>>2]=c+(k<<2)}e=(k|0)>1?k:1;o=0;r:{while(1){if((k|0)<=(o|0)){break r}d=0;q=0;while(1){b=1<>>5<<2;s:{if(b&H[g+l>>2]){break s}c=H[n+H[a+8>>2]>>2];m=H[H[c+4>>2]+(d<<2)>>2];if((fa[H[H[c>>2]+24>>2]](c,m)|0)>0){h=0;l=H[f>>2];while(1){c=H[n+H[a+8>>2]>>2];c=fa[H[H[c>>2]+28>>2]](c,m,h)|0;if(!(H[(c>>>3&536870908)+l>>2]>>>c&1)){break s}c=H[n+H[a+8>>2]>>2];h=h+1|0;if((fa[H[H[c>>2]+24>>2]](c,m)|0)>(h|0)){continue}break}}H[H[f+16>>2]+(o<<2)>>2]=d;c=g+l|0;H[c>>2]=b|H[c>>2];q=1;o=o+1|0}d=d+1|0;if((e|0)!=(d|0)){continue}break}if((k|0)<=(o|0)|q){continue}break}c=0;break o}h=H[a+8>>2];j=H[n+h>>2];d=H[j+4>>2];H[j+8>>2]=d;H[j+20>>2]=H[j+16>>2];i=H[f+16>>2];g=H[f+20>>2];if((i|0)==(g|0)){break p}m=j+16|0;b=d;while(1){k=H[i>>2];t:{if(H[j+12>>2]!=(b|0)){H[b>>2]=k;H[j+8>>2]=b+4;break t}n=b-d|0;b=n>>2;e=b+1|0;if(e>>>0>=1073741824){break l}c=n>>1;e=n>>>0<2147483644?c>>>0>>0?e:c:1073741823;if(e){if(e>>>0>=1073741824){break k}c=ra(e<<2)}else{c=0}b=c+(b<<2)|0;H[b>>2]=k;if((n|0)>0){sa(c,d,n)}H[j+12>>2]=c+(e<<2);H[j+8>>2]=b+4;H[j+4>>2]=c;if(!d){break t}qa(d)}b=H[j+16>>2];d=H[j+20>>2]-b>>2;u:{if((d|0)>(k|0)){break u}H[f+44>>2]=-1;c=k+1|0;if(c>>>0>d>>>0){Ma(m,c-d|0,f+44|0);b=H[m>>2];break u}if(d>>>0<=c>>>0){break u}H[j+20>>2]=(c<<2)+b}c=(k<<2)+b|0;b=H[j+8>>2];d=H[j+4>>2];H[c>>2]=(b-d>>2)-1;i=i+4|0;if((g|0)!=(i|0)){continue}break}h=H[a+8>>2]}c=1;p=p+1|0;if(p>>>0>2]-h>>2>>>0){continue}break}}d=H[f>>2];if(d){qa(d)}d=H[f+16>>2];if(!d){break f}H[f+20>>2]=d;qa(d);break f}La();X()}va();X()}ya(1604);X()}if(p&1|b>>>0<=o>>>0){continue}}break}d=H[f+32>>2];if(d){qa(d)}da=f+48|0;break c}La();X()}if(!c){break a}b=H[a+32>>2];c=H[a+36>>2];v:{if((b|0)==(c|0)){break v}while(1){if(!(fa[H[H[a>>2]+40>>2]](a,H[b>>2])|0)){break a}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=H[a+32>>2];d=H[a+36>>2];if((b|0)==(d|0)){break v}while(1){c=H[H[a+8>>2]+(H[b>>2]<<2)>>2];if(!(fa[H[H[c>>2]+12>>2]](c,H[a+44>>2])|0)){break a}b=b+4|0;if((d|0)!=(b|0)){continue}break}}t=fa[H[H[a>>2]+44>>2]](a)|0}da=r+16|0;return t|0}function Ha(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,R=0;k=da-96|0;da=k;t=h;u=i&65535;m=(e^i)&-2147483648;l=e&65535;p=l;z=l;J=i>>>16&32767;K=e>>>16&32767;a:{b:{if(J-32767>>>0>4294934529&K-32767>>>0>=4294934530){break b}l=e&2147483647;j=d;if(!(!d&(l|0)==2147418112?!(b|c):l>>>0<2147418112)){o=d;m=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){o=h;m=i|32768;b=f;c=g;break a}if(!(b|j|(l^2147418112|c))){if(!(f|h|(e|g))){m=2147450880;b=0;c=0;break a}m=m|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){d=b|j;e=c|l;b=0;c=0;if(!(d|e)){m=2147450880;break a}m=m|2147418112;break a}if(!(b|j|(c|l))){b=0;c=0;break a}if(!(f|h|(e|g))){b=0;c=0;break a}if((l|0)==65535|l>>>0<65535){j=b;h=!(d|p);i=h<<6;l=Q(h?b:d)+32|0;b=Q(h?c:p);b=i+((b|0)==32?l:b)|0;Ta(k+80|0,j,c,d,p,b-15|0);s=16-b|0;d=H[k+88>>2];z=H[k+92>>2];c=H[k+84>>2];b=H[k+80>>2]}if(e>>>0>65535){break b}e=!(t|u);h=e<<6;i=Q(e?f:t)+32|0;e=Q(e?g:u);e=h+((e|0)==32?i:e)|0;Ta(k- -64|0,f,g,t,u,e-15|0);s=(s-e|0)+16|0;t=H[k+72>>2];u=H[k+76>>2];f=H[k+64>>2];g=H[k+68>>2]}e=f;j=g<<15|e>>>17;h=e<<15;e=j;p=h&-32768;q=c;A=xl(p,0,c,0);c=ea;w=c;B=e;i=0;j=xl(e,0,b,i);e=j+A|0;h=ea+c|0;h=e>>>0>>0?h+1|0:h;c=e;j=e;n=xl(b,i,p,i);l=0+n|0;e=ea+e|0;e=l>>>0>>0?e+1|0:e;x=l;n=l;l=e;C=(j|0)==(e|0)&r>>>0>n>>>0|e>>>0>>0;r=d;L=xl(p,i,d,0);F=ea;e=xl(q,i,B,i);d=e+L|0;j=ea+F|0;n=d;d=d>>>0>>0?j+1|0:j;e=t;j=u<<15|e>>>17;y=e<<15|g>>>17;g=j;j=xl(y,0,b,i);e=j+n|0;f=ea+d|0;G=e;f=e>>>0>>0?f+1|0:f;u=f;e=f;f=(h|0)==(w|0)&c>>>0>>0|h>>>0>>0;c=h+G|0;f=e+f|0;A=c;f=c>>>0>>0?f+1|0:f;t=f;c=f;D=z|65536;z=v;M=xl(p,i,D,v);I=ea;h=xl(r,o,B,i);f=h+M|0;e=ea+I|0;N=f;e=f>>>0>>0?e+1|0:e;v=e;E=g|-2147483648;w=0;g=xl(E,w,b,i);b=g+f|0;f=ea+e|0;f=b>>>0>>0?f+1|0:f;O=b;e=xl(y,o,q,i);b=b+e|0;p=f;j=f+ea|0;P=b;g=b>>>0>>0?j+1|0:j;f=0;b=f+A|0;e=c+P|0;e=b>>>0>>0?e+1|0:e;R=b;c=b;b=b+C|0;C=e;f=b>>>0>>0?e+1|0:e;c=f;s=((K+J|0)+s|0)-16383|0;j=xl(E,w,q,i);h=ea;i=xl(D,z,B,i);e=i+j|0;f=ea+h|0;f=e>>>0>>0?f+1|0:f;i=(f|0)==(h|0)&e>>>0>>0|f>>>0>>0;h=e;q=i;i=xl(y,o,r,o);e=i+e|0;j=ea+f|0;j=e>>>0>>0?j+1|0:j;i=(f|0)==(j|0)&e>>>0>>0|f>>>0>j>>>0;f=q+i|0;h=0;h=f>>>0>>0?1:h;q=xl(E,w,D,z);i=q+f|0;f=ea+h|0;f=i>>>0>>0?f+1|0:f;q=e;h=j;B=i;e=(d|0)==(u|0)&n>>>0>G>>>0|d>>>0>u>>>0;d=e+((d|0)==(F|0)&n>>>0>>0|d>>>0>>0)|0;j=0;j=d>>>0>>0?1:j;i=d;d=q+d|0;e=h+j|0;e=d>>>0>>0?e+1|0:e;n=d;i=e;e=(e|0)==(h|0)&d>>>0>>0|e>>>0>>0;d=B+e|0;h=d>>>0>>0?f+1|0:f;q=d;j=xl(y,o,D,z);e=ea;r=xl(E,w,r,o);d=r+j|0;f=ea+e|0;f=d>>>0>>0?f+1|0:f;r=d;d=f;f=(e|0)==(f|0)&j>>>0>r>>>0|e>>>0>f>>>0;y=d+q|0;e=f+h|0;e=d>>>0>y>>>0?e+1|0:e;h=0;d=h+n|0;f=i+r|0;f=d>>>0>>0?f+1|0:f;h=f;j=(i|0)==(f|0)&d>>>0>>0|f>>>0>>0;i=j+y|0;n=i;i=i>>>0>>0?e+1|0:e;r=d;e=d;d=h;j=(p|0)==(v|0)&N>>>0>O>>>0|p>>>0>>0;f=j+((v|0)==(I|0)&N>>>0>>0|v>>>0>>0)|0;h=0;j=f+((g|0)==(p|0)&O>>>0>P>>>0|g>>>0

>>0)|0;f=g+e|0;e=d+j|0;e=f>>>0>>0?e+1|0:e;g=f;h=(d|0)==(e|0)&f>>>0>>0|d>>>0>e>>>0;d=h+n|0;f=i;f=d>>>0>>0?f+1|0:f;h=e;n=d;i=(t|0)==(C|0)&A>>>0>R>>>0|t>>>0>C>>>0;d=i+((t|0)==(u|0)&A>>>0>>0|t>>>0>>0)|0;j=0;j=d>>>0>>0?1:j;i=d;d=d+g|0;e=e+j|0;e=d>>>0>>0?e+1|0:e;h=(e|0)==(h|0)&d>>>0>>0|e>>>0>>0;g=n+h|0;f=g>>>0>>0?f+1|0:f;h=g;i=f;c:{if(f&65536){s=s+1|0;break c}v=l>>>31|0;f=i<<1|h>>>31;h=g<<1|e>>>31;i=f;f=e<<1|d>>>31;d=d<<1|c>>>31;e=f;g=x;f=l<<1|g>>>31;x=g<<1;l=f;f=c<<1|b>>>31;b=b<<1|v;c=f}if((s|0)>=32767){m=m|2147418112;b=0;c=0;break a}d:{if((s|0)<=0){f=1-s|0;if(f>>>0>=128){b=0;c=0;break a}g=s+127|0;Ta(k+48|0,x,l,b,c,g);Ta(k+32|0,d,e,h,i,g);Jb(k+16|0,x,l,b,c,f);Jb(k,d,e,h,i,f);x=H[k+32>>2]|H[k+16>>2]|(H[k+48>>2]|H[k+56>>2]|(H[k+52>>2]|H[k+60>>2]))!=0;l=H[k+36>>2]|H[k+20>>2];b=H[k+40>>2]|H[k+24>>2];c=H[k+44>>2]|H[k+28>>2];d=H[k>>2];e=H[k+4>>2];f=H[k+8>>2];g=H[k+12>>2];break d}f=h;g=i&65535|s<<16}o=f|o;m=g|m;if(!(!b&(c|0)==-2147483648?!(l|x):(c|0)>0|(c|0)>=0)){b=d+1|0;j=b?e:e+1|0;c=j;f=(e|0)==(j|0)&b>>>0>>0|e>>>0>j>>>0;d=f+o|0;e=m;o=d;m=d>>>0>>0?e+1|0:e;break a}if(b|x|(c^-2147483648|l)){b=d;c=e;break a}j=m;c=d&1;b=c+d|0;f=b>>>0>>0?e+1|0:e;c=f;e=(e|0)==(f|0)&b>>>0>>0|e>>>0>f>>>0;d=e+o|0;o=d;m=d>>>0>>0?j+1|0:j}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=o;H[a+12>>2]=m;da=k+96|0}function cj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=da-16|0;da=j;c=H[b+56>>2];f=H[c+100>>2]-H[c+96>>2]|0;n=(f|0)/12|0;Da(n,H[b+44>>2]);Da(H[H[b+56>>2]+80>>2],H[b+44>>2]);g=H[b+48>>2];c=ra(32);H[j>>2]=c;H[j+4>>2]=21;H[j+8>>2]=-2147483616;F[c+21|0]=0;d=I[1261]|I[1262]<<8|(I[1263]<<16|I[1264]<<24);e=I[1257]|I[1258]<<8|(I[1259]<<16|I[1260]<<24);F[c+13|0]=e;F[c+14|0]=e>>>8;F[c+15|0]=e>>>16;F[c+16|0]=e>>>24;F[c+17|0]=d;F[c+18|0]=d>>>8;F[c+19|0]=d>>>16;F[c+20|0]=d>>>24;d=I[1256]|I[1257]<<8|(I[1258]<<16|I[1259]<<24);e=I[1252]|I[1253]<<8|(I[1254]<<16|I[1255]<<24);F[c+8|0]=e;F[c+9|0]=e>>>8;F[c+10|0]=e>>>16;F[c+11|0]=e>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1248]|I[1249]<<8|(I[1250]<<16|I[1251]<<24);e=I[1244]|I[1245]<<8|(I[1246]<<16|I[1247]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;c=fc(g,j,0);if(F[j+11|0]<0){qa(H[j>>2])}g=H[b+44>>2];a:{if(c){F[j|0]=0;c=H[g+20>>2];if(!H[g+16>>2]&(c|0)<=0|(c|0)<0){wa(g,H[g+4>>2],j,j+1|0)}c=0;m=da-16|0;da=m;H[m>>2]=0;H[m+4>>2]=0;g=b;b=H[b+56>>2];e=H[b+96>>2];b=H[b+100>>2]-e|0;if(b){b=(b|0)/12|0;n=b>>>0>1?b:1;b=H[m>>2];b:{c:{while(1){d:{o=N(p,12)+e|0;l=H[o>>2];d=l-h|0;e=d>>31;h=(e^d+e)<<1|d>>>31;e:{if((i|0)!=(k|0)){H[i>>2]=h;i=i+4|0;H[m+4>>2]=i;break e}k=i-c|0;d=k>>2;f=d+1|0;if(f>>>0>=1073741824){break d}e=k>>1;f=k>>>0<2147483644?e>>>0>>0?f:e:1073741823;if(f){if(f>>>0>=1073741824){break c}b=ra(f<<2)}else{b=0}e=b+(d<<2)|0;H[e>>2]=h;i=e+4|0;if((k|0)>0){sa(b,c,k)}k=(f<<2)+b|0;H[m+4>>2]=i;if(c){qa(c)}c=b}f=H[o+4>>2];d=f-l|0;e=d>>31;l=(e^d+e)<<1|d>>>31;f:{if((i|0)!=(k|0)){H[i>>2]=l;i=i+4|0;H[m+4>>2]=i;break f}k=i-c|0;d=k>>2;h=d+1|0;if(h>>>0>1073741823){break d}e=k>>1;h=k>>>0<2147483644?e>>>0>>0?h:e:1073741823;if(h){if(h>>>0>1073741823){break c}b=ra(h<<2)}else{b=0}e=b+(d<<2)|0;H[e>>2]=l;i=e+4|0;if((k|0)>0){sa(b,c,k)}k=(h<<2)+b|0;H[m+4>>2]=i;if(c){qa(c)}c=b}h=H[o+8>>2];d=h-f|0;e=d>>31;l=(e^d+e)<<1|d>>>31;g:{if((i|0)!=(k|0)){H[i>>2]=l;i=i+4|0;H[m+4>>2]=i;break g}o=i-c|0;d=o>>2;f=d+1|0;if(f>>>0>1073741823){break d}e=o>>1;f=o>>>0<2147483644?e>>>0>>0?f:e:1073741823;if(f){if(f>>>0>1073741823){break c}b=ra(f<<2)}else{b=0}e=b+(d<<2)|0;H[e>>2]=l;i=e+4|0;if((o|0)>0){sa(b,c,o)}k=(f<<2)+b|0;H[m+4>>2]=i;if(c){qa(c)}c=b}p=p+1|0;if((n|0)==(p|0)){break b}e=H[H[g+56>>2]+96>>2];continue}break}H[m+8>>2]=i;H[m>>2]=b;va();X()}H[m>>2]=b;ya(1604);X()}H[m>>2]=b}Yd(c,i-c>>2,1,0,H[g+44>>2]);if(c){qa(c)}da=m+16|0;break a}F[j|0]=1;c=H[g+20>>2];if(!H[g+16>>2]&(c|0)<=0|(c|0)<0){wa(g,H[g+4>>2],j,j+1|0)}h=H[b+56>>2];c=H[h+80>>2];if(c>>>0<=255){if(!f){break a}l=j+1|0;e=n>>>0>1?n:1;c=0;while(1){d=H[b+44>>2];h=H[h+96>>2]+N(c,12)|0;F[j|0]=H[h>>2];g=H[d+20>>2];h:{if(!!H[d+16>>2]&(g|0)>=0|(g|0)>0){break h}wa(d,H[d+4>>2],j,l);f=H[b+44>>2];d=H[f+20>>2];g=H[f+16>>2];F[j|0]=H[h+4>>2];if(!!g&(d|0)>=0|(d|0)>0){break h}wa(f,H[f+4>>2],j,l);f=H[b+44>>2];g=H[f+16>>2];d=H[f+20>>2];F[j|0]=H[h+8>>2];if(!!g&(d|0)>=0|(d|0)>0){break h}wa(f,H[f+4>>2],j,l)}c=c+1|0;if((e|0)==(c|0)){break a}h=H[b+56>>2];continue}}if(c>>>0<=65535){if(!f){break a}l=j+2|0;e=n>>>0>1?n:1;c=0;while(1){d=H[b+44>>2];h=H[h+96>>2]+N(c,12)|0;G[j>>1]=H[h>>2];g=H[d+20>>2];i:{if(!!H[d+16>>2]&(g|0)>=0|(g|0)>0){break i}wa(d,H[d+4>>2],j,l);f=H[b+44>>2];d=H[f+20>>2];g=H[f+16>>2];G[j>>1]=H[h+4>>2];if(!!g&(d|0)>=0|(d|0)>0){break i}wa(f,H[f+4>>2],j,l);f=H[b+44>>2];g=H[f+16>>2];d=H[f+20>>2];G[j>>1]=H[h+8>>2];if(!!g&(d|0)>=0|(d|0)>0){break i}wa(f,H[f+4>>2],j,l)}c=c+1|0;if((e|0)==(c|0)){break a}h=H[b+56>>2];continue}}if(c>>>0>=2097152){if(!f){break a}i=H[b+44>>2];c=i;g=H[c+20>>2];d=H[c+16>>2];if(!!d&(g|0)>=0|(g|0)>0){break a}e=n>>>0>1?n:1;c=0;while(1){if(!d&(g|0)<=0|(g|0)<0){g=H[h+96>>2]+N(c,12)|0;wa(i,H[i+4>>2],g,g+12|0)}c=c+1|0;if((e|0)==(c|0)){break a}h=H[b+56>>2];i=H[b+44>>2];d=H[i+16>>2];g=H[i+20>>2];continue}}if(!f){break a}g=n>>>0>1?n:1;c=0;while(1){e=H[h+96>>2]+N(c,12)|0;Da(H[e>>2],H[b+44>>2]);Da(H[e+4>>2],H[b+44>>2]);Da(H[e+8>>2],H[b+44>>2]);c=c+1|0;if((g|0)==(c|0)){break a}h=H[b+56>>2];continue}}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=j+16|0}function ib(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0;a:{if(!d){break a}b:{c:{switch(H[a+28>>2]-1|0){case 0:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=F[b|0];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 1:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=I[b|0];H[e+4>>2]=0;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 2:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=G[b>>1];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 3:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=J[b>>1];H[e+4>>2]=0;b=b+2|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 4:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=H[b>>2];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 5:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=H[b>>2];H[e+4>>2]=0;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 6:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=H[b+4>>2];e=(f<<3)+d|0;H[e>>2]=H[b>>2];H[e+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 7:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=H[b>>2];g=H[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;H[k>>2]=e;H[k+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 8:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;k=H[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;i=L[b>>2];d:{if(O(P(i))=O(1)?~~(i>O(0)?O(R(O(T(O(i*O(2.3283064365386963e-10)))),O(4294967296))):O(U(O(O(i-O(~~i>>>0>>>0))*O(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}H[e>>2]=h;H[e+4>>2]=g;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 9:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;k=H[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;j=M[b>>3];e:{if(P(j)<0x8000000000000000){g=P(j)>=1?~~(j>0?R(T(j*2.3283064365386963e-10),4294967295):U((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}H[e>>2]=h;H[e+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=I[b|0];H[e+4>>2]=0;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break a}}ta((e<<3)+d|0,0,c-e<<3)}}function Sc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=da-96|0;da=f;e=H[a+16>>2];F[f+92|0]=1;H[f+88>>2]=b;H[f+84>>2]=b;H[f+80>>2]=e;m=H[a+20>>2];d=H[m>>2];a:{b:{e=H[H[e+28>>2]+(b<<2)>>2];if(e>>>0>2]-d>>2>>>0){d=H[H[a+8>>2]+(H[d+(e<<2)>>2]<<2)>>2];e=H[a+4>>2];if(!I[e+84|0]){d=H[H[e+68>>2]+(d<<2)>>2]}H[f+72>>2]=0;H[f+76>>2]=0;m=f- -64|0;H[m>>2]=0;H[m+4>>2]=0;H[f+56>>2]=0;H[f+60>>2]=0;ib(e,d,F[e+24|0],f+56|0);e=b+1|0;d=(e>>>0)%3|0;if(b>>>0<=e>>>0){m=d?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;while(1){d=m;e=h;c:{if(!H[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}k=H[a+20>>2];b=H[k>>2];d=H[H[H[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=H[k+4>>2]-b>>2>>>0){break b}d=H[H[a+8>>2]+(H[b+(d<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){d=H[H[b+68>>2]+(d<<2)>>2]}H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;ib(b,d,F[b+24|0],f+32|0);d=H[a+20>>2];b=H[d>>2];e=H[H[H[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=H[d+4>>2]-b>>2>>>0){break a}d=H[H[a+8>>2]+(H[b+(e<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){d=H[H[b+68>>2]+(d<<2)>>2]}H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;ib(b,d,F[b+24|0],f+8|0);e=H[f+8>>2];b=H[f+56>>2];d=e-b|0;k=H[f+60>>2];n=H[f+12>>2]-(k+(b>>>0>e>>>0)|0)|0;i=H[f+40>>2];e=H[f+64>>2];s=i-e|0;t=H[f+68>>2];i=H[f+44>>2]-(t+(e>>>0>i>>>0)|0)|0;u=xl(d,n,s,i);v=j-u|0;g=g-(ea+(j>>>0>>0)|0)|0;w=v;j=H[f+16>>2];u=j-e|0;t=H[f+20>>2]-((e>>>0>j>>>0)+t|0)|0;j=H[f+32>>2];v=j-b|0;k=H[f+36>>2]-((b>>>0>j>>>0)+k|0)|0;e=xl(u,t,v,k);j=w+e|0;b=ea+g|0;b=e>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=H[f+48>>2];e=H[f+72>>2];n=b-e|0;o=H[f+76>>2];x=H[f+52>>2]-(o+(b>>>0>>0)|0)|0;p=xl(d,p,n,x);d=w+p|0;b=ea+l|0;b=d>>>0

>>0?b+1|0:b;l=H[f+24>>2];p=l-e|0;e=H[f+28>>2]-((e>>>0>l>>>0)+o|0)|0;l=xl(p,e,v,k);o=d-l|0;l=b-(ea+(d>>>0>>0)|0)|0;b=xl(u,t,n,x);d=q-b|0;b=r-(ea+(b>>>0>q>>>0)|0)|0;r=xl(p,e,s,i);q=r+d|0;b=ea+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=H[f+88>>2];e=H[f+80>>2];d:{if(I[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}H[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;H[f+88>>2]=b;if((b|0)!=-1){break e}}b=H[f+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}F[f+92|0]=0;H[f+88>>2]=d;break d}if((b|0)!=H[f+84>>2]){break d}H[f+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}H[f+88>>2]=d}b=H[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;d=b+q|0;e=b;b=b+r|0;k=d^e;h=e^(d>>>0>>0?b+1|0:b);n=-1;d=2147483647;b=l>>31;i=b;e=b+o|0;b=b+l|0;b=e>>>0>>0?b+1|0:b;e=e^i;b=b^i;i=b;s=e^-1;b=b^2147483647;m=g;m:{n:{if(!H[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break m}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=a;a=b;b=g>>31;d=b+j|0;h=g;g=b;b=h+b|0;b=d>>>0>>0?b+1|0:b;h=d^g;d=h+e|0;g=b^g;b=d;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break o}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(e|0)&(g^-1)>>>0>>0|e>>>0>h>>>0){break o}b=b+e|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;d=b;if(!b&a>>>0<536870913){break m}}b=d>>>29|0;a=(d&536870911)<<3|n>>>29}j=yl(j,m,a,b);o=yl(o,l,a,b);q=yl(q,r,a,b)}H[c+8>>2]=j;H[c+4>>2]=o;H[c>>2]=q;da=f+96|0;return}ua();X()}ua();X()}ua();X()}function Wh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0);d=1;a:{if(!H[a+80>>2]){break a}b=H[a+8>>2];if((H[a+12>>2]-b|0)<=0){break a}while(1){c=H[(o<<2)+b>>2];g=0;n=0;h=0;d=0;b=-1;b:{c:{d:{e:{switch(H[c+28>>2]-1|0){case 8:f:{switch(F[c+24|0]-1|0){case 0:e=da+-64|0;da=e;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+48>>2]=1065353216;b=H[c+80>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g:{h:{i:{if(!b){break i}if(b>>>0>=1073741824){break h}f=b<<2;j=ra(f);H[e+16>>2]=j;b=f+j|0;H[e+24>>2]=b;ta(j,0,f);H[e+20>>2]=b;while(1){b=H[H[c>>2]>>2];f=H[c+48>>2]+xl(H[c+40>>2],H[c+44>>2],h,0)|0;b=b+f|0;p=(x(2,I[b|0]|I[b+1|0]<<8|(I[b+2|0]<<16|I[b+3|0]<<24)),C());L[e+28>>2]=p;j:{k:{l:{if(!g){break l}i=H[e+32>>2];m=(B(p),v(2));k=m^318;f=Al(g)>>>0>1;b=k&g-1;m:{if(!f){break m}b=k;if(b>>>0>>0){break m}b=(k>>>0)%(g>>>0)|0}l=b;b=H[i+(l<<2)>>2];if(!b){break l}b=H[b>>2];if(!b){break l}if(!f){i=g-1|0;while(1){f=H[b+4>>2];n:{if((f|0)!=(k|0)){if((l|0)==(f&i)){break n}break l}if((m|0)==H[b+8>>2]){break k}}b=H[b>>2];if(b){continue}break}break l}while(1){f=H[b+4>>2];o:{if((f|0)!=(k|0)){if(g>>>0<=f>>>0){f=(f>>>0)%(g>>>0)|0}if((f|0)==(l|0)){break o}break l}if((m|0)==H[b+8>>2]){break k}}b=H[b>>2];if(b){continue}break}}H[e+12>>2]=n;L[e+8>>2]=p;b=e+8|0;lf(e+56|0,e+32|0,b,b);b=H[c+40>>2];sa(H[H[c>>2]>>2]+N(b,n)|0,e+28|0,b);j=H[e+16>>2];H[j+(h<<2)>>2]=n;n=n+1|0;break j}H[(h<<2)+j>>2]=H[b+12>>2]}b=h+1|0;d=b?d:d+1|0;h=b;b=H[c+80>>2];if(!d&b>>>0>h>>>0){g=H[e+36>>2];continue}break}if((b|0)==(n|0)){break i}p:{if(!I[c+84|0]){m=H[c+68>>2];b=H[c+72>>2]-m|0;if(!b){break p}i=H[e+16>>2];b=b>>2;d=b>>>0>1?b:1;l=d&3;j=0;b=0;if(d-1>>>0>=3){f=d&-4;k=0;while(1){h=b<<2;d=h+m|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|4)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|8)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|12)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}if(!l){break p}while(1){d=m+(b<<2)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];b=b+1|0;j=j+1|0;if((l|0)!=(j|0)){continue}break}break p}F[c+84|0]=0;g=H[c+68>>2];d=H[c+72>>2]-g>>2;q:{if(d>>>0>>0){Ma(c+68|0,b-d|0,2204);g=H[c+68>>2];b=H[c+80>>2];break q}if(b>>>0>=d>>>0){break q}H[c+72>>2]=(b<<2)+g}if(!b){break p}h=H[e+16>>2];j=0;i=0;if(b-1>>>0>=3){f=b&-4;k=0;while(1){l=i<<2;H[l+g>>2]=H[h+l>>2];d=l|4;H[d+g>>2]=H[d+h>>2];d=l|8;H[d+g>>2]=H[d+h>>2];d=l|12;H[d+g>>2]=H[d+h>>2];i=i+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=b&3;if(!d){break p}while(1){b=i<<2;H[b+g>>2]=H[b+h>>2];i=i+1|0;j=j+1|0;if((d|0)!=(j|0)){continue}break}}H[c+80>>2]=n}b=H[e+16>>2];if(b){qa(b)}b=H[e+40>>2];if(b){while(1){d=H[b>>2];qa(b);b=d;if(b){continue}break}}b=H[e+32>>2];H[e+32>>2]=0;if(b){qa(b)}da=e- -64|0;b=n;break g}va();X()}break d;case 1:b=Cd(c,c);break d;case 2:b=Bd(c,c);break d;case 3:break f;default:break c}}b=Ad(c,c);break d;case 0:r:{switch(F[c+24|0]-1|0){case 0:b=Jf(c,c);break d;case 1:b=Hf(c,c);break d;case 2:b=Ef(c,c);break d;case 3:break r;default:break c}}b=Bf(c,c);break d;case 1:case 10:s:{switch(F[c+24|0]-1|0){case 0:b=Jf(c,c);break d;case 1:b=Hf(c,c);break d;case 2:b=Ef(c,c);break d;case 3:break s;default:break c}}b=Bf(c,c);break d;case 3:t:{switch(F[c+24|0]-1|0){case 0:b=xf(c,c);break d;case 1:b=wf(c,c);break d;case 2:b=rf(c,c);break d;case 3:break t;default:break c}}b=of(c,c);break d;case 2:u:{switch(F[c+24|0]-1|0){case 0:b=xf(c,c);break d;case 1:b=wf(c,c);break d;case 2:b=rf(c,c);break d;case 3:break u;default:break c}}b=of(c,c);break d;case 5:v:{switch(F[c+24|0]-1|0){case 0:b=nf(c,c);break d;case 1:b=Cd(c,c);break d;case 2:b=Bd(c,c);break d;case 3:break v;default:break c}}b=Ad(c,c);break d;case 4:break e;default:break b}}w:{switch(F[c+24|0]-1|0){case 0:b=nf(c,c);break d;case 1:b=Cd(c,c);break d;case 2:b=Bd(c,c);break d;case 3:break w;default:break c}}b=Ad(c,c)}if(b){break b}}b=-1}d=b;if(b){o=o+1|0;b=H[a+8>>2];if((o|0)>2]-b>>2){continue}}break}d=(d|0)!=0}return d|0}function Qc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=da-96|0;da=e;d=H[a+16>>2];F[e+92|0]=1;H[e+88>>2]=b;H[e+84>>2]=b;H[e+80>>2]=d;a:{if((b|0)==-1){break a}m=H[a+20>>2];f=H[m>>2];d=H[H[d>>2]+(b<<2)>>2];if(d>>>0>=H[m+4>>2]-f>>2>>>0){break a}f=H[H[a+8>>2]+(H[f+(d<<2)>>2]<<2)>>2];d=H[a+4>>2];if(!I[d+84|0]){f=H[H[d+68>>2]+(f<<2)>>2]}H[e+72>>2]=0;H[e+76>>2]=0;m=e- -64|0;H[m>>2]=0;H[m+4>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;ib(d,f,F[d+24|0],e+56|0);d=b+1|0;m=(d>>>0)%3|0?d:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){f=m;d=h;d:{if(!H[a+28>>2]){break d}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((f|0)==-1){break b}k=H[a+20>>2];b=H[k>>2];f=H[H[H[a+16>>2]>>2]+(f<<2)>>2];if(f>>>0>=H[k+4>>2]-b>>2>>>0){break b}f=H[H[a+8>>2]+(H[b+(f<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;ib(b,f,F[b+24|0],e+32|0);if((d|0)==-1){break c}f=H[a+20>>2];b=H[f>>2];d=H[H[H[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=H[f+4>>2]-b>>2>>>0){break c}f=H[H[a+8>>2]+(H[b+(d<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}H[e+24>>2]=0;H[e+28>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;ib(b,f,F[b+24|0],e+8|0);d=H[e+8>>2];b=H[e+56>>2];f=d-b|0;k=H[e+60>>2];n=H[e+12>>2]-(k+(b>>>0>d>>>0)|0)|0;i=H[e+40>>2];d=H[e+64>>2];s=i-d|0;t=H[e+68>>2];i=H[e+44>>2]-(t+(d>>>0>i>>>0)|0)|0;u=xl(f,n,s,i);v=j-u|0;g=g-(ea+(j>>>0>>0)|0)|0;w=v;j=H[e+16>>2];u=j-d|0;t=H[e+20>>2]-((d>>>0>j>>>0)+t|0)|0;j=H[e+32>>2];v=j-b|0;k=H[e+36>>2]-((b>>>0>j>>>0)+k|0)|0;d=xl(u,t,v,k);j=w+d|0;b=ea+g|0;b=d>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=H[e+48>>2];d=H[e+72>>2];n=b-d|0;o=H[e+76>>2];x=H[e+52>>2]-(o+(b>>>0>>0)|0)|0;p=xl(f,p,n,x);f=w+p|0;b=ea+l|0;b=f>>>0

>>0?b+1|0:b;l=H[e+24>>2];p=l-d|0;d=H[e+28>>2]-((d>>>0>l>>>0)+o|0)|0;l=xl(p,d,v,k);o=f-l|0;l=b-(ea+(f>>>0>>0)|0)|0;b=xl(u,t,n,x);f=q-b|0;b=r-(ea+(b>>>0>q>>>0)|0)|0;r=xl(p,d,s,i);q=r+f|0;b=ea+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=H[e+88>>2];f=H[e+80>>2];e:{if(I[e+92|0]){f:{g:{h:{i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break i}b=H[H[f+12>>2]+(b<<2)>>2];if((b|0)!=-1){break h}}H[e+88>>2]=-1;break g}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;H[e+88>>2]=b;if((b|0)!=-1){break f}}b=H[e+84>>2];d=-1;j:{if((b|0)==-1){break j}k:{if((b>>>0)%3|0){b=b-1|0;break k}b=b+2|0;d=-1;if((b|0)==-1){break j}}b=H[H[f+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break j}d=b-1|0;if((b>>>0)%3|0){break j}d=b+2|0}F[e+92|0]=0;H[e+88>>2]=d;break e}if((b|0)!=H[e+84>>2]){break e}H[e+88>>2]=-1;break e}d=-1;l:{if((b|0)==-1){break l}m:{if((b>>>0)%3|0){b=b-1|0;break m}b=b+2|0;d=-1;if((b|0)==-1){break l}}b=H[H[f+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break l}d=b-1|0;if((b>>>0)%3|0){break l}d=b+2|0}H[e+88>>2]=d}b=H[e+88>>2];if((b|0)!=-1){continue}break}b=r>>31;f=b+q|0;d=b;b=b+r|0;k=f^d;h=d^(f>>>0>>0?b+1|0:b);n=-1;f=2147483647;b=l>>31;i=b;d=b+o|0;b=b+l|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^i;i=b;s=d^-1;b=b^2147483647;m=g;n:{o:{if(!H[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break n}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=a;a=b;b=g>>31;f=b+j|0;h=g;g=b;b=h+b|0;b=f>>>0>>0?b+1|0:b;h=f^g;f=h+d|0;g=b^g;b=f;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;d=!(a&0);a=a?-1:b;if(d&(a|0)<=536870912|(a|0)<536870912){break n}b=0;a=a>>>29|0;break o}p:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break p}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(d|0)&(g^-1)>>>0>>0|d>>>0>h>>>0){break p}b=b+d|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;f=b;if(!b&a>>>0<536870913){break n}}b=f>>>29|0;a=(f&536870911)<<3|n>>>29}j=yl(j,m,a,b);o=yl(o,l,a,b);q=yl(q,r,a,b)}H[c+8>>2]=j;H[c+4>>2]=o;H[c>>2]=q;da=e+96|0;return}ua();X()}ua();X()}ua();X()}function Dk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=da-48|0;da=b;g=H[H[a+4>>2]+48>>2];H[b+8>>2]=H[a+12>>2];d=ra(32);H[b+24>>2]=d;H[b+28>>2]=17;H[b+32>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[1373];e=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);f=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);f=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=xb(g,b+8|0,b+24|0,-1);if(F[b+35|0]<0){qa(H[b+24>>2])}H[b+32>>2]=-1;H[b+36>>2]=1065353216;H[b+24>>2]=-1;H[b+28>>2]=-1;H[b+40>>2]=-1;d=-1<>>0<4294967267){break a}H[b+24>>2]=d+1;d=-2<>2]=d^-1;d=-2-d|0;H[b+32>>2]=d;H[b+40>>2]=(d|0)/2;L[b+36>>2]=O(2)/O(d|0)}g=Ug(H[a+12>>2],H[a+4>>2]);h=H[H[a+4>>2]+48>>2];H[b+20>>2]=H[a+12>>2];d=ra(32);H[b+8>>2]=d;H[b+12>>2]=17;H[b+16>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[1688];e=I[1684]|I[1685]<<8|(I[1686]<<16|I[1687]<<24);f=I[1680]|I[1681]<<8|(I[1682]<<16|I[1683]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1676]|I[1677]<<8|(I[1678]<<16|I[1679]<<24);f=I[1672]|I[1673]<<8|(I[1674]<<16|I[1675]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=xb(h,b+20|0,b+8|0,g);if(F[b+19|0]<0){qa(H[b+8>>2])}b:{c:{switch(d|0){case 6:e=H[a+4>>2];g=H[a+12>>2];j=H[H[H[e+4>>2]+8>>2]+(g<<2)>>2];if((fa[H[H[e>>2]+8>>2]](e)|0)==1){a=b+24|0;d=da-32|0;da=d;h=H[H[H[e+4>>2]+8>>2]+(g<<2)>>2];d:{if((fa[H[H[e>>2]+8>>2]](e)|0)!=1){break d}i=fa[H[H[e>>2]+52>>2]](e)|0;f=fa[H[H[e>>2]+60>>2]](e,g)|0;if(!i|!f){break d}c=fa[H[H[e>>2]+56>>2]](e,g)|0;if(c){e=H[e+56>>2];H[d+20>>2]=c;H[d+16>>2]=e;H[d+28>>2]=f;H[d+24>>2]=f+12;c=ra(128);H[c+4>>2]=h;e=H[a+4>>2];H[c+8>>2]=H[a>>2];H[c+12>>2]=e;e=H[a+12>>2];H[c+16>>2]=H[a+8>>2];H[c+20>>2]=e;H[c+24>>2]=H[a+16>>2];a=H[d+20>>2];H[c+28>>2]=H[d+16>>2];H[c+32>>2]=a;a=H[d+28>>2];H[c+36>>2]=H[d+24>>2];H[c+40>>2]=a;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=7552;a=H[d+20>>2];H[c+56>>2]=H[d+16>>2];H[c+60>>2]=a;e=H[d+28>>2];a=c- -64|0;H[a>>2]=H[d+24>>2];H[a+4>>2]=e;H[c+88>>2]=1065353216;H[c+92>>2]=-1;H[c+80>>2]=-1;H[c+84>>2]=-1;H[c+72>>2]=1;H[c+76>>2]=-1;H[c+44>>2]=7812;H[c+96>>2]=0;H[c+100>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;break d}c=H[e+56>>2];H[d+20>>2]=i;H[d+16>>2]=c;H[d+28>>2]=f;H[d+24>>2]=f+12;c=ra(128);H[c+4>>2]=h;e=H[a+4>>2];H[c+8>>2]=H[a>>2];H[c+12>>2]=e;e=H[a+12>>2];H[c+16>>2]=H[a+8>>2];H[c+20>>2]=e;H[c+24>>2]=H[a+16>>2];a=H[d+20>>2];H[c+28>>2]=H[d+16>>2];H[c+32>>2]=a;a=H[d+28>>2];H[c+36>>2]=H[d+24>>2];H[c+40>>2]=a;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=9176;a=H[d+20>>2];H[c+56>>2]=H[d+16>>2];H[c+60>>2]=a;e=H[d+28>>2];a=c- -64|0;H[a>>2]=H[d+24>>2];H[a+4>>2]=e;H[c+88>>2]=1065353216;H[c+92>>2]=-1;H[c+80>>2]=-1;H[c+84>>2]=-1;H[c+72>>2]=1;H[c+76>>2]=-1;H[c+44>>2]=9420;H[c+96>>2]=0;H[c+100>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0}da=d+32|0;if(c){break b}}c=ra(28);H[c+4>>2]=j;a=H[b+28>>2];H[c+8>>2]=H[b+24>>2];H[c+12>>2]=a;a=H[b+36>>2];H[c+16>>2]=H[b+32>>2];H[c+20>>2]=a;H[c+24>>2]=H[b+40>>2];H[c>>2]=9832;break b;case 0:break c;default:break b}}c=H[a+4>>2];a=H[H[H[c+4>>2]+8>>2]+(H[a+12>>2]<<2)>>2];if((fa[H[H[c>>2]+8>>2]](c)|0)==1){fa[H[H[c>>2]+8>>2]](c)|0}c=ra(28);H[c+4>>2]=a;a=H[b+28>>2];H[c+8>>2]=H[b+24>>2];H[c+12>>2]=a;a=H[b+36>>2];H[c+16>>2]=H[b+32>>2];H[c+20>>2]=a;H[c+24>>2]=H[b+40>>2];H[c>>2]=9832}da=b+48|0;return c|0}function _c(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=O(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(H[a+28>>2]-1|0){case 0:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=F[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=I[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=G[b>>1];b=b+2|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=J[b>>1];b=b+2|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=H[b>>2];b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b>>2];if((e|0)<0){break b}H[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 6:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b>>2];if((H[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}H[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b+4>>2];i=H[b>>2];if(!e&i>>>0>2147483647|e){break a}H[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=L[b>>2];e:{if(O(P(j))>2]=e;b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=M[b>>3];f:{if(P(k)<2147483648){e=~~k;break f}e=-2147483648}H[i>>2]=e;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+xl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=I[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}ta((e<<2)+d|0,0,c-e<<2)}return h}return 0}function Ag(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;o=da-32|0;da=o;a:{if((c|0)<=0){break a}p=c&3;b:{if(c-1>>>0<3){c=0;break b}z=c&-4;c=0;while(1){t=c|1;k=(t<<3)+b|0;f=H[k+4>>2];q=H[k>>2];u=c|2;m=(u<<3)+b|0;k=H[m+4>>2];v=H[m>>2];w=c|3;i=(w<<3)+b|0;m=H[i+4>>2];x=H[i>>2];r=j;j=(c<<3)+b|0;y=H[j+4>>2];i=H[j>>2];j=m|x?w:k|v?u:f|q?t:!(y|i)?r:c;e=e+y|0;n=i+n|0;e=n>>>0>>0?e+1|0:e;i=n+q|0;e=e+f|0;e=i>>>0>>0?e+1|0:e;f=i+v|0;e=e+k|0;e=f>>>0>>0?e+1|0:e;k=f;f=f+x|0;e=e+m|0;e=f>>>0>>0?e+1|0:e;n=f;c=c+4|0;g=g+4|0;if((z|0)!=(g|0)){continue}break}}if(!p){break a}while(1){g=(c<<3)+b|0;f=H[g+4>>2];g=H[g>>2];j=f|g?c:j;c=c+1|0;e=e+f|0;k=g+n|0;e=k>>>0>>0?e+1|0:e;n=k;h=h+1|0;if((p|0)!=(h|0)){continue}break}}h=j+1|0;H[a+12>>2]=h;g=H[a>>2];c=H[a+4>>2]-g>>3;c:{if(c>>>0>>0){Ya(a,h-c|0);g=H[a>>2];break c}if(c>>>0<=h>>>0){break c}H[a+4>>2]=(h<<3)+g}f=0;k=0;d:{e:{if((j|0)>=0){s=+(n>>>0)+ +(e>>>0)*4294967296;c=0;while(1){m=c<<3;i=m+b|0;e=H[i+4>>2];i=H[i>>2];n=(e|i)!=0;r=g+m|0;l=(+(i>>>0)+ +(e>>>0)*4294967296)/s*4096+.5;f:{if(l<4294967296&l>=0){e=~~l>>>0;break f}e=0}e=e?e:n?1:e;H[r>>2]=e;k=e+k|0;e=(c|0)==(j|0);c=c+1|0;if(!e){continue}break}if((k|0)==4096){break e}}H[o+16>>2]=0;H[o+8>>2]=0;H[o+12>>2]=0;g=0;g:{h:{i:{if(h){if(h>>>0>=1073741824){break i}c=h<<2;f=ra(c);H[o+8>>2]=f;H[o+16>>2]=c+f;c=(j<<2)+4|0;g=ta(f,0,c)+c|0;H[o+12>>2]=g}c=0;j:{if((j|0)<0){break j}h=j+1|0;e=h&7;if(j>>>0>=7){m=h&-8;h=0;while(1){H[(c<<2)+f>>2]=c;i=c|1;H[(i<<2)+f>>2]=i;i=c|2;H[(i<<2)+f>>2]=i;i=c|3;H[(i<<2)+f>>2]=i;i=c|4;H[(i<<2)+f>>2]=i;i=c|5;H[(i<<2)+f>>2]=i;i=c|6;H[(i<<2)+f>>2]=i;i=c|7;H[(i<<2)+f>>2]=i;c=c+8|0;h=h+8|0;if((m|0)!=(h|0)){continue}break}}if(!e){break j}h=0;while(1){H[(c<<2)+f>>2]=c;c=c+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}H[o+24>>2]=a;c=g-f|0;e=c>>2;k:{if((c|0)<=512){ac(f,g,o+24|0,e,0,0);break k}c=e>>>0<536870911?e:536870911;l:{while(1){h=ra(c<<2);if(h){break l}h=c>>>0>1;c=c>>>1|0;if(h){continue}break}ac(f,g,o+24|0,e,0,0);break k}ac(f,g,o+24|0,e,h,c);qa(h)}if((k|0)<4096){c=H[a>>2]+(H[g-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-k|0)+4096;break h}m:{if((j|0)>0){h=k-4096|0;while(1){l=4096/+(k|0);i=H[a>>2];g=j;n:{while(1){e=i+(H[(g<<2)+f>>2]<<3)|0;c=H[e>>2];if(c>>>0>=2){n=c-1|0;r=e;m=c;s=T(l*+(c>>>0));o:{if(P(s)<2147483648){e=~~s;break o}e=-2147483648}e=c-e|0;e=e?e:1;c=(c|0)>(e|0)?e:n;c=(c|0)>(h|0)?h:c;H[r>>2]=m-c;h=h-c|0;k=k-c|0;if((k|0)==4096){k=4096;break n}c=(g|0)>1;g=g-1|0;if(c){continue}break n}break}if((g|0)==(j|0)){break m}}if((h|0)<=0){break g}f=H[o+8>>2];continue}}if(k>>>0<4097){break h}while(1)continue}qa(f);break d}va();X()}if(!f){break e}}qa(f)}if((j|0)<0){break d}e=H[a>>2];m=j+1|0;i=m&3;k=0;h=0;c=0;if(j>>>0>=3){n=m&-4;f=0;while(1){g=h<<3;p=g+e|0;H[p+4>>2]=c;q=e+(g|8)|0;c=H[p>>2]+c|0;H[q+4>>2]=c;p=e+(g|16)|0;c=c+H[q>>2]|0;H[p+4>>2]=c;g=e+(g|24)|0;c=c+H[p>>2]|0;H[g+4>>2]=c;c=c+H[g>>2]|0;h=h+4|0;f=f+4|0;if((n|0)!=(f|0)){continue}break}}if(i){while(1){g=e+(h<<3)|0;H[g+4>>2]=c;h=h+1|0;c=H[g>>2]+c|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}if((c|0)!=4096){break d}c=0;l=0;p:{if((j|0)<0){break p}e=H[a>>2];if(j){h=m&-2;g=0;while(1){j=c<<3;f=H[j+e>>2];if(f){j=b+j|0;l=(+K[j>>2]+ +K[j+4>>2]*4294967296)*za(+(f>>>0)*.000244140625)+l}j=(c|1)<<3;f=H[j+e>>2];if(f){j=b+j|0;l=(+K[j>>2]+ +K[j+4>>2]*4294967296)*za(+(f>>>0)*.000244140625)+l}c=c+2|0;g=g+2|0;if((h|0)!=(g|0)){continue}break}}if(!(m&1)){break p}c=c<<3;e=H[c+e>>2];if(!e){break p}b=b+c|0;l=(+K[b>>2]+ +K[b+4>>2]*4294967296)*za(+(e>>>0)*.000244140625)+l}l=U(-l);q:{if(l<0x10000000000000000&l>=0){c=P(l)>=1?~~(l>0?R(T(l*2.3283064365386963e-10),4294967295):U((l-+(~~l>>>0>>>0))*2.3283064365386963e-10))>>>0:0;b=~~l>>>0;break q}c=0;b=0}H[a+16>>2]=b;H[a+20>>2]=c;Xa(a,d)}da=o+32|0}function ek(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0);f=da-32|0;da=f;H[f+28>>2]=c;a:{b:{if(!de(a,b,c)){break b}i=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];if(H[i+28>>2]!=9){break b}g=H[b+48>>2];c=ra(32);H[f+16>>2]=c;H[f+20>>2]=17;H[f+24>>2]=-2147483616;F[c+17|0]=0;F[c+16|0]=I[1373];d=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);h=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[c+8|0]=h;F[c+9|0]=h>>>8;F[c+10|0]=h>>>16;F[c+11|0]=h>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);h=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[c|0]=h;F[c+1|0]=h>>>8;F[c+2|0]=h>>>16;F[c+3|0]=h>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;h=xb(g,f+28|0,f+16|0,-1);if(F[f+27|0]<0){qa(H[f+16>>2])}if((h|0)<=0){break b}j=H[b+48>>2];c=ra(32);H[f+16>>2]=c;H[f+20>>2]=19;H[f+24>>2]=-2147483616;F[c+19|0]=0;d=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[c+15|0]=d;F[c+16|0]=d>>>8;F[c+17|0]=d>>>16;F[c+18|0]=d>>>24;d=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);g=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[c+8|0]=g;F[c+9|0]=g>>>8;F[c+10|0]=g>>>16;F[c+11|0]=g>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);g=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[c|0]=g;F[c+1|0]=g>>>8;F[c+2|0]=g>>>16;F[c+3|0]=g>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;c:{if(!yc(j,f+28|0,f+16|0)){break c}g=H[b+48>>2];c=ra(32);H[f>>2]=c;H[f+4>>2]=18;H[f+8>>2]=-2147483616;F[c+18|0]=0;e=I[1706]|I[1707]<<8;F[c+16|0]=e;F[c+17|0]=e>>>8;e=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);d=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[c+8|0]=d;F[c+9|0]=d>>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;F[c+12|0]=e;F[c+13|0]=e>>>8;F[c+14|0]=e>>>16;F[c+15|0]=e>>>24;e=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);d=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;F[c+4|0]=e;F[c+5|0]=e>>>8;F[c+6|0]=e>>>16;F[c+7|0]=e>>>24;e=yc(g,f+28|0,f);if(F[f+11|0]>=0){break c}qa(H[f>>2])}if(F[f+27|0]<0){qa(H[f+16>>2])}d:{if(e){e=F[i+24|0];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=0;if(e){if((e|0)<0){break a}e=e<<2;c=ra(e);H[f+16>>2]=c;d=c+e|0;H[f+24>>2]=d;ta(c,0,e);H[f+20>>2]=d}j=H[b+48>>2];e=ra(32);H[f>>2]=e;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[e+19|0]=0;d=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[e+15|0]=d;F[e+16|0]=d>>>8;F[e+17|0]=d>>>16;F[e+18|0]=d>>>24;d=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);g=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[e+8|0]=g;F[e+9|0]=g>>>8;F[e+10|0]=g>>>16;F[e+11|0]=g>>>24;F[e+12|0]=d;F[e+13|0]=d>>>8;F[e+14|0]=d>>>16;F[e+15|0]=d>>>24;d=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);g=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[e|0]=g;F[e+1|0]=g>>>8;F[e+2|0]=g>>>16;F[e+3|0]=g>>>24;F[e+4|0]=d;F[e+5|0]=d>>>8;F[e+6|0]=d>>>16;F[e+7|0]=d>>>24;ue(j,f+28|0,f,F[i+24|0],c);if(F[f+11|0]<0){qa(H[f>>2])}g=H[b+48>>2];b=ra(32);H[f>>2]=b;H[f+4>>2]=18;H[f+8>>2]=-2147483616;F[b+18|0]=0;e=I[1706]|I[1707]<<8;F[b+16|0]=e;F[b+17|0]=e>>>8;e=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);d=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=e;F[b+13|0]=e>>>8;F[b+14|0]=e>>>16;F[b+15|0]=e>>>24;e=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);d=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=e;F[b+5|0]=e>>>8;F[b+6|0]=e>>>16;F[b+7|0]=e>>>24;k=te(g,f+28|0,f);if(F[f+11|0]<0){qa(H[f>>2])}a=Vg(a+40|0,h,c,F[i+24|0],k);if(c){qa(c)}e=0;if(a){break d}break b}e=0;if(!Tg(a+40|0,i,h)){break b}}e=1}da=f+32|0;return e|0}va();X()}function Sk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-48|0;da=j;H[a+68>>2]=f;o=a+112|0;Ca(o);f=H[a+56>>2];e=H[f>>2];d=H[f+4>>2];H[j+40>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{d=d-e|0;if((d|0)<=0){break a}i=H[f>>2];if((i|0)!=H[f+4>>2]){p=a+60|0;d=d>>>2|0;q=d>>>0>1?d:1;r=c+4|0;while(1){Sc(p,H[(n<<2)+i>>2],j+32|0);f=H[j+36>>2];k=f>>31;g=H[j+32>>2];h=g>>31;i=H[j+40>>2];d=i>>31;e=d^d+i;h=e+((k^f+k)+(h^g+h)|0)|0;d=0;l=h;d=e>>>0>h>>>0?1:d;b:{if(!(h|d)){m=H[a+108>>2];g=m;break b}m=H[a+108>>2];h=m;e=h>>31;f=yl(xl(h,e,f,f>>31),ea,l,d);k=f>>31;g=yl(xl(h,e,g,g>>31),ea,l,d);d=g>>31;d=(k^f+k)+(d^d+g)|0;i=(i|0)>=0?h-d|0:d-h|0}c:{if((g|0)>=0){h=f+m|0;k=i+m|0;break c}d:{if((f|0)<0){d=i>>31;h=d+i^d;break d}d=i>>31;h=H[a+100>>2]-(d+i^d)|0}if((i|0)<0){d=f>>31;k=d+f^d;break c}d=f>>31;k=H[a+100>>2]-(d+f^d)|0}d=H[a+100>>2];l=d;e=d;e:{if(!(h|k)){break e}if(!((d|0)!=(k|0)|h)){l=k;e=k;break e}if(!((d|0)!=(h|0)|k)){l=h;e=h;break e}if(!((k|0)<=(m|0)|h)){l=(m<<1)-k|0;e=0;break e}if(!((d|0)!=(h|0)|(k|0)>=(m|0))){l=(m<<1)-k|0;e=h;break e}if(!((d|0)!=(k|0)|(h|0)>=(m|0))){l=k;e=(m<<1)-h|0;break e}if(k){l=k;e=h;break e}l=0;e=h;if((e|0)<=(m|0)){break e}e=(m<<1)-h|0}H[j+28>>2]=l;H[j+24>>2]=e;H[j+40>>2]=0-i;H[j+36>>2]=0-f;H[j+32>>2]=0-g;f:{if((g|0)<=0){g=m-i|0;e=m-f|0;break f}e=f>>31;e=e+f^e;g=(i|0)>0?e:d-e|0;e=i>>31;e=e+i^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|g)){g=d;break g}if(!((d|0)!=(g|0)|e)){g=d;break g}f=(d|0)!=(e|0);if(!(g|f)){g=d;break g}if(!((g|0)<=(m|0)|e)){g=(m<<1)-g|0;d=0;break g}if(!((g|0)>=(m|0)|f)){g=(m<<1)-g|0;break g}if(!((d|0)!=(g|0)|(e|0)>=(m|0))){g=d;d=(m<<1)-e|0;break g}if(g){d=e;break g}g=0;if((e|0)<=(m|0)){d=e;break g}d=(m<<1)-e|0}H[j+20>>2]=g;H[j+16>>2]=d;i=H[a+8>>2];h:{if((i|0)<=0){break h}m=(n<<3)+b|0;h=0;e=j+24|0;while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];i:{if((g|0)>(d|0)){H[k+l>>2]=d;break i}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break i}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}}d=h<<2;e=d+(j+8|0)|0;f=H[d+m>>2]-H[d+k>>2]|0;H[e>>2]=f;d=H[a+28>>2];j:{if((f|0)<(d|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break j}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}h=0;e=j+16|0;if((i|0)<=0){break h}while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];k:{if((g|0)>(d|0)){H[k+l>>2]=d;break k}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break k}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}d=H[a+28>>2]}f=h<<2;e=f+j|0;f=H[f+m>>2]-H[f+k>>2]|0;H[e>>2]=f;l:{if((d|0)>(f|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break l}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}}f=H[j+8>>2];e=H[a+108>>2];m:{if((f|0)>(e|0)){f=f-H[a+96>>2]|0;break m}if((0-e|0)<=(f|0)){break m}f=H[a+96>>2]+f|0}H[j+8>>2]=f;i=H[j+12>>2];n:{if((e|0)<(i|0)){i=i-H[a+96>>2]|0;break n}if((0-e|0)<=(i|0)){break n}i=H[a+96>>2]+i|0}H[j+12>>2]=i;d=H[j>>2];o:{if((e|0)<(d|0)){d=d-H[a+96>>2]|0;break o}if((0-e|0)<=(d|0)){break o}d=H[a+96>>2]+d|0}l=n<<1;H[j>>2]=d;g=H[j+4>>2];p:{if((e|0)<(g|0)){g=g-H[a+96>>2]|0;break p}if((0-e|0)<=(g|0)){break p}g=H[a+96>>2]+g|0}H[j+4>>2]=g;e=i>>31;h=e+i^e;e=f>>31;e=e+f^e;k=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;e=g>>31;h=e+g^e;e=d>>31;e=e+d^e;e=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;Fa(o,k>>>0>=e>>>0);h=l<<2;e=e>>>0>k>>>0;d=e?f:d;H[h+c>>2]=(H[a+96>>2]&d>>31)+d;d=e?i:g;H[h+r>>2]=(H[a+96>>2]&d>>31)+d;n=n+1|0;if((q|0)==(n|0)){break a}d=H[a+56>>2];i=H[d>>2];if(H[d+4>>2]-i>>2>>>0>n>>>0){continue}break}}ua();X()}da=j+48|0;return 1}function Ik(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-48|0;da=j;H[a+68>>2]=f;o=a+112|0;Ca(o);f=H[a+56>>2];e=H[f>>2];d=H[f+4>>2];H[j+40>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{d=d-e|0;if((d|0)<=0){break a}i=H[f>>2];if((i|0)!=H[f+4>>2]){p=a+60|0;d=d>>>2|0;q=d>>>0>1?d:1;r=c+4|0;while(1){Qc(p,H[(n<<2)+i>>2],j+32|0);f=H[j+36>>2];k=f>>31;g=H[j+32>>2];h=g>>31;i=H[j+40>>2];d=i>>31;e=d^d+i;h=e+((k^f+k)+(h^g+h)|0)|0;d=0;l=h;d=e>>>0>h>>>0?1:d;b:{if(!(h|d)){m=H[a+108>>2];g=m;break b}m=H[a+108>>2];h=m;e=h>>31;f=yl(xl(h,e,f,f>>31),ea,l,d);k=f>>31;g=yl(xl(h,e,g,g>>31),ea,l,d);d=g>>31;d=(k^f+k)+(d^d+g)|0;i=(i|0)>=0?h-d|0:d-h|0}c:{if((g|0)>=0){h=f+m|0;k=i+m|0;break c}d:{if((f|0)<0){d=i>>31;h=d+i^d;break d}d=i>>31;h=H[a+100>>2]-(d+i^d)|0}if((i|0)<0){d=f>>31;k=d+f^d;break c}d=f>>31;k=H[a+100>>2]-(d+f^d)|0}d=H[a+100>>2];l=d;e=d;e:{if(!(h|k)){break e}if(!((d|0)!=(k|0)|h)){l=k;e=k;break e}if(!((d|0)!=(h|0)|k)){l=h;e=h;break e}if(!((k|0)<=(m|0)|h)){l=(m<<1)-k|0;e=0;break e}if(!((d|0)!=(h|0)|(k|0)>=(m|0))){l=(m<<1)-k|0;e=h;break e}if(!((d|0)!=(k|0)|(h|0)>=(m|0))){l=k;e=(m<<1)-h|0;break e}if(k){l=k;e=h;break e}l=0;e=h;if((e|0)<=(m|0)){break e}e=(m<<1)-h|0}H[j+28>>2]=l;H[j+24>>2]=e;H[j+40>>2]=0-i;H[j+36>>2]=0-f;H[j+32>>2]=0-g;f:{if((g|0)<=0){g=m-i|0;e=m-f|0;break f}e=f>>31;e=e+f^e;g=(i|0)>0?e:d-e|0;e=i>>31;e=e+i^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|g)){g=d;break g}if(!((d|0)!=(g|0)|e)){g=d;break g}f=(d|0)!=(e|0);if(!(g|f)){g=d;break g}if(!((g|0)<=(m|0)|e)){g=(m<<1)-g|0;d=0;break g}if(!((g|0)>=(m|0)|f)){g=(m<<1)-g|0;break g}if(!((d|0)!=(g|0)|(e|0)>=(m|0))){g=d;d=(m<<1)-e|0;break g}if(g){d=e;break g}g=0;if((e|0)<=(m|0)){d=e;break g}d=(m<<1)-e|0}H[j+20>>2]=g;H[j+16>>2]=d;i=H[a+8>>2];h:{if((i|0)<=0){break h}m=(n<<3)+b|0;h=0;e=j+24|0;while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];i:{if((g|0)>(d|0)){H[k+l>>2]=d;break i}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break i}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}}d=h<<2;e=d+(j+8|0)|0;f=H[d+m>>2]-H[d+k>>2]|0;H[e>>2]=f;d=H[a+28>>2];j:{if((f|0)<(d|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break j}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}h=0;e=j+16|0;if((i|0)<=0){break h}while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];k:{if((g|0)>(d|0)){H[k+l>>2]=d;break k}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break k}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}d=H[a+28>>2]}f=h<<2;e=f+j|0;f=H[f+m>>2]-H[f+k>>2]|0;H[e>>2]=f;l:{if((d|0)>(f|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break l}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}}f=H[j+8>>2];e=H[a+108>>2];m:{if((f|0)>(e|0)){f=f-H[a+96>>2]|0;break m}if((0-e|0)<=(f|0)){break m}f=H[a+96>>2]+f|0}H[j+8>>2]=f;i=H[j+12>>2];n:{if((e|0)<(i|0)){i=i-H[a+96>>2]|0;break n}if((0-e|0)<=(i|0)){break n}i=H[a+96>>2]+i|0}H[j+12>>2]=i;d=H[j>>2];o:{if((e|0)<(d|0)){d=d-H[a+96>>2]|0;break o}if((0-e|0)<=(d|0)){break o}d=H[a+96>>2]+d|0}l=n<<1;H[j>>2]=d;g=H[j+4>>2];p:{if((e|0)<(g|0)){g=g-H[a+96>>2]|0;break p}if((0-e|0)<=(g|0)){break p}g=H[a+96>>2]+g|0}H[j+4>>2]=g;e=i>>31;h=e+i^e;e=f>>31;e=e+f^e;k=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;e=g>>31;h=e+g^e;e=d>>31;e=e+d^e;e=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;Fa(o,k>>>0>=e>>>0);h=l<<2;e=e>>>0>k>>>0;d=e?f:d;H[h+c>>2]=(H[a+96>>2]&d>>31)+d;d=e?i:g;H[h+r>>2]=(H[a+96>>2]&d>>31)+d;n=n+1|0;if((q|0)==(n|0)){break a}d=H[a+56>>2];i=H[d>>2];if(H[d+4>>2]-i>>2>>>0>n>>>0){continue}break}}ua();X()}da=j+48|0;return 1}function Sf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=da-32|0;da=i;c=H[a+16>>2];H[a+20>>2]=c;a:{b:{c:{d:{if((c|0)!=H[a+24>>2]){H[c>>2]=b;b=c+4|0;H[a+20>>2]=b;d=c;break d}d=ra(4);H[d>>2]=b;b=d+4|0;H[a+24>>2]=b;H[a+20>>2]=b;H[a+16>>2]=d;if(c){break c}}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0;break b}qa(c);b=H[a+20>>2];d=H[a+16>>2];if((b|0)==(d|0)){break a}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0}if((c|0)<=0){f=H[a+28>>2];while(1){c=b-4|0;h=H[c>>2];e:{if((h|0)!=-1){h=(h>>>0)/3|0;if(!(H[f+(h>>>3&268435452)>>2]>>>h&1)){break e}}H[a+20>>2]=c;b=c}if((b|0)!=(d|0)){continue}break}break a}q=a+120|0;h=a+200|0;c=(c|0)/12|0;r=(c|0)>1?c:1;f:{g:{h:{while(1){i:{j:{k:{c=b-4|0;b=H[c>>2];if((b|0)==-1){break k}e=H[a+28>>2];d=(b>>>0)/3|0;if(H[e+(d>>>3&268435452)>>2]>>>d&1){break k}l=0;while(1){H[a+164>>2]=H[a+164>>2]+1;g=(b>>>0)/3|0;k=(b|0)==-1;m=k?-1:g;c=(m>>>3&536870908)+e|0;H[c>>2]=H[c>>2]|1<>2];l:{if((c|0)!=H[a+80>>2]){H[c>>2]=b;H[a+76>>2]=c+4;break l}f=H[a+72>>2];d=c-f|0;j=d>>2;c=j+1|0;if(c>>>0>1073741823){break i}e=d>>1;e=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>1073741823){break h}c=ra(e<<2)}else{c=0}j=c+(j<<2)|0;H[j>>2]=b;if((d|0)>0){sa(c,f,d)}H[a+80>>2]=c+(e<<2);H[a+76>>2]=j+4;H[a+72>>2]=c;if(!f){break l}qa(f)}H[a+320>>2]=b;c=-1;c=(b|0)!=-1?H[H[H[a+12>>2]>>2]+(b<<2)>>2]:c;n=c<<2;j=H[n+H[a+152>>2]>>2];m:{n:{d=H[a+84>>2]+(c>>>3&536870908)|0;f=H[d>>2];c=1<>2]=c|f;if((j|0)==-1){break n}}o:{if(k){break o}c=-1;d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;if((e|0)!=-1){c=H[H[H[a+12>>2]+12>>2]+(e<<2)>>2]}p:{q:{k=b-N(g,3)|0;r:{if(k){d=b-1|0;break r}d=b+2|0;if((d|0)==-1){break q}}g=(c|0)==-1?-1:(c>>>0)/3|0;d=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2];f=(d|0)==-1?-1:(d>>>0)/3|0;break p}g=(c|0)==-1?-1:(c>>>0)/3|0;d=-1;f=-1}s:{if((e|0)==-1){break s}o=H[H[a+12>>2]+12>>2];e=H[o+(e<<2)>>2];if((e|0)==-1){break s}p=H[a+28>>2];e=(e>>>0)/3|0;if(H[p+(e>>>3&268435452)>>2]>>>e&1){break s}t:{u:{if(k){e=b-1|0;break u}e=b+2|0;if((e|0)==-1){break t}}e=H[(e<<2)+o>>2];if((e|0)==-1){break t}e=(e>>>0)/3|0;if(H[(e>>>3&268435452)+p>>2]>>>e&1){break t}nc(h,1);H[a+168>>2]=H[a+168>>2]+1;v:{if((j|0)==-1){break v}f=H[H[a+152>>2]+n>>2];if(H[H[a+140>>2]+(f>>>3&536870908)>>2]>>>f&1){break v}Hc(a,b,0)}b=H[a+164>>2];H[i+4>>2]=m;f=i+4|0;H[i+16>>2]=f;Vf(i+24|0,q,f,i+16|0);H[H[i+24>>2]+12>>2]=b;b=H[a+20>>2];H[b-4>>2]=d;if((b|0)!=H[a+24>>2]){H[b>>2]=c;H[a+20>>2]=b+4;break j}f=H[a+16>>2];d=b-f|0;g=d>>2;b=g+1|0;if(b>>>0>1073741823){break g}e=d>>1;e=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break f}b=ra(e<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;if((d|0)>0){sa(b,f,d)}H[a+24>>2]=b+(e<<2);H[a+20>>2]=g+4;H[a+16>>2]=b;if(!f){break j}qa(f);break j}if((f|0)!=-1){gc(a,H[a+164>>2],0,f)}nc(h,3);break m}if((g|0)!=-1){gc(a,H[a+164>>2],1,g)}w:{x:{if(k){b=b-1|0;break x}b=b+2|0;if((b|0)==-1){break w}}b=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break w}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break w}nc(h,5);c=d;break m}if((f|0)==-1){break o}gc(a,H[a+164>>2],0,f)}nc(h,7);H[a+20>>2]=H[a+20>>2]-4;break j}nc(h,0);c=-1;if((b|0)==-1){break m}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break m}c=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2]}l=l+1|0;if((r|0)==(l|0)){break j}e=H[a+28>>2];b=c;continue}}H[a+20>>2]=c}b=H[a+20>>2];if((b|0)!=H[a+16>>2]){continue}break a}break}va();X()}ya(1604);X()}va();X()}ya(1604);X()}da=i+32|0;return 1}function be(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;if(H[c>>2]==H[c+4>>2]){g=H[d+80>>2];v=da-16|0;da=v;j=H[a+4>>2];h=H[d+48>>2];d=H[H[d>>2]>>2];i=F[b+24|0];c=v+8|0;H[c>>2]=1065353216;u=c;L[c>>2]=O(-1<>2];w=ra((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!g|(i|0)<=0){break a}s=d+h|0;y=H[b>>2];c=H[b+48>>2];z=H[b+44>>2];x=H[b+40>>2];if(!I[b+84|0]){n=H[b+68>>2];t=i&-2;j=i&1;b=0;while(1){f=H[y>>2];d=xl(x,z,H[n+(o<<2)>>2],0)+c|0;p=sa(w,f+d|0,x);k=L[u>>2];l=H[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){f=s+(b<<2)|0;q=d<<2;e=O(T(O(O(k*O(L[q+p>>2]-L[l+q>>2]))+O(.5))));b:{if(O(P(e))>2]=h;h=q|4;e=O(T(O(O(k*O(L[h+p>>2]-L[l+h>>2]))+O(.5))));c:{if(O(P(e))>2]=h;d=d+2|0;b=b+2|0;m=m+2|0;if((t|0)!=(m|0)){continue}break}}if(j){f=s+(b<<2)|0;d=d<<2;e=O(T(O(O(k*O(L[d+p>>2]-L[d+l>>2]))+O(.5))));d:{if(O(P(e))>2]=d;b=b+1|0}o=o+1|0;if((g|0)!=(o|0)){continue}break}break a}n=i&-2;t=i&1;b=0;while(1){h=H[y>>2];d=xl(x,z,o,f)+c|0;p=sa(w,h+d|0,x);k=L[u>>2];l=H[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){h=s+(b<<2)|0;q=d<<2;e=O(T(O(O(k*O(L[q+p>>2]-L[l+q>>2]))+O(.5))));e:{if(O(P(e))>2]=j;j=q|4;e=O(T(O(O(k*O(L[j+p>>2]-L[l+j>>2]))+O(.5))));f:{if(O(P(e))>2]=j;d=d+2|0;b=b+2|0;m=m+2|0;if((n|0)!=(m|0)){continue}break}}if(t){h=s+(b<<2)|0;d=d<<2;e=O(T(O(O(k*O(L[d+p>>2]-L[d+l>>2]))+O(.5))));g:{if(O(P(e))>2]=d;b=b+1|0}d=o+1|0;f=d?f:f+1|0;o=d;if((g|0)!=(d|0)|f){continue}break}}qa(w);da=v+16|0;return 1}v=da-16|0;da=v;u=H[a+4>>2];g=H[d+48>>2];f=H[H[d>>2]>>2];r=F[b+24|0];d=v+8|0;H[d>>2]=1065353216;h=d;L[d>>2]=O(-1<>2];w=ra((r|0)!=(r&1073741823)?-1:r<<2);y=H[c>>2];c=H[c+4>>2]-y|0;h:{if(!c|(r|0)<=0){break h}s=f+g|0;z=H[b>>2];d=H[b+48>>2];x=H[b+44>>2];o=H[b+40>>2];c=c>>2;q=c>>>0>1?c:1;if(I[b+84|0]){j=r&-2;u=r&1;b=0;while(1){f=H[z>>2];c=xl(o,x,H[y+(m<<2)>>2],0)+d|0;l=sa(w,f+c|0,o);k=L[h>>2];n=H[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;t=c<<2;e=O(T(O(O(k*O(L[t+l>>2]-L[n+t>>2]))+O(.5))));i:{if(O(P(e))>2]=g;g=t|4;e=O(T(O(O(k*O(L[g+l>>2]-L[n+g>>2]))+O(.5))));j:{if(O(P(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=O(T(O(O(k*O(L[c+l>>2]-L[c+n>>2]))+O(.5))));k:{if(O(P(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}break h}t=H[b+68>>2];j=r&-2;u=r&1;b=0;while(1){f=H[z>>2];c=xl(o,x,H[t+(H[y+(m<<2)>>2]<<2)>>2],0)+d|0;p=sa(w,f+c|0,o);k=L[h>>2];l=H[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;n=c<<2;e=O(T(O(O(k*O(L[n+p>>2]-L[l+n>>2]))+O(.5))));l:{if(O(P(e))>2]=g;g=n|4;e=O(T(O(O(k*O(L[g+p>>2]-L[l+g>>2]))+O(.5))));m:{if(O(P(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=O(T(O(O(k*O(L[c+p>>2]-L[c+l>>2]))+O(.5))));n:{if(O(P(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}}qa(w);da=v+16|0;return 1}function Rk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;H[a+8>>2]=e;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ea(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){d=g;break c}q=1;f=d-1|0;i=f&1;d:{if((d|0)==2){d=g;break d}p=f&-2;f=0;d=g;while(1){h=(q<<2)+b|0;j=H[h+4>>2];k=H[h>>2];o=(k|0)<(d|0);d=o?k:d;h=(d|0)>(j|0);d=h?j:d;g=o?g:(g|0)<(k|0)?k:g;g=h?g:(g|0)<(j|0)?j:g;q=q+2|0;f=f+2|0;if((p|0)!=(f|0)){continue}break}}if(!i){break c}h=H[(q<<2)+b>>2];f=(h|0)<(d|0);d=f?h:d;g=f?g:(g|0)<(h|0)?h:g}H[a+16>>2]=g;H[a+12>>2]=d;f=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;d=g-d|0;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}d=(e&1073741823)!=(e|0)?-1:e<<2;h=ta(ra(d),0,d);d=H[a+56>>2];r=H[d>>2];d=H[d+4>>2]-r|0;if((d|0)>=5){t=H[a+52>>2];s=H[a+48>>2];u=e&-2;v=e&1;q=d>>2;o=q;while(1){p=o;e:{f:{o=o-1|0;if(q>>>0>o>>>0){l=N(e,o);d=H[(o<<2)+r>>2];if((d|0)==-1){break f}m=H[H[s+12>>2]+(d<<2)>>2];if((m|0)==-1){break f}f=-1;k=H[t>>2];j=H[s>>2];g=k+(H[j+(m<<2)>>2]<<2)|0;d=m+1|0;d=(d>>>0)%3|0?d:m-2|0;if((d|0)!=-1){f=H[j+(d<<2)>>2]}i=H[g>>2];g:{h:{if((m>>>0)%3|0){g=m-1|0;break h}g=m+2|0;d=-1;if((g|0)==-1){break g}}d=H[j+(g<<2)>>2]}if((i|0)>=(o|0)){break f}f=H[k+(f<<2)>>2];if((f|0)>=(o|0)){break f}d=H[k+(d<<2)>>2];if((d|0)>=(o|0)){break f}i:{if((e|0)<=0){break i}j=N(d,e);k=N(e,f);i=N(e,i);g=0;f=0;if((e|0)!=1){while(1){H[h+(g<<2)>>2]=(H[(g+j<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+i<<2)+b>>2];d=g|1;H[h+(d<<2)>>2]=(H[(d+j<<2)+b>>2]+H[(d+k<<2)+b>>2]|0)-H[(d+i<<2)+b>>2];g=g+2|0;f=f+2|0;if((u|0)!=(f|0)){continue}break}}if(!v){break i}H[h+(g<<2)>>2]=(H[(g+j<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+i<<2)+b>>2]}d=H[a+8>>2];if((d|0)<=0){break e}f=l<<2;j=f+c|0;k=b+f|0;n=0;f=h;while(1){i=H[a+32>>2];g=0;if((d|0)>0){while(1){l=g<<2;m=H[l+f>>2];d=H[a+16>>2];j:{if((m|0)>(d|0)){H[i+l>>2]=d;break j}l=i+l|0;d=H[a+12>>2];if((d|0)>(m|0)){H[l>>2]=d;break j}H[l>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+j|0;f=H[f+k>>2]-H[f+i>>2]|0;H[d>>2]=f;k:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break k}f=f-H[a+20>>2]|0}H[d>>2]=f}f=i;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}break e}ua();X()}d=H[a+8>>2];if((d|0)<=0){break e}f=l<<2;j=f+c|0;k=b+f|0;f=(N(p-2|0,e)<<2)+b|0;n=0;while(1){i=H[a+32>>2];g=0;if((d|0)>0){while(1){l=g<<2;m=H[l+f>>2];d=H[a+16>>2];l:{if((m|0)>(d|0)){H[i+l>>2]=d;break l}l=i+l|0;d=H[a+12>>2];if((d|0)>(m|0)){H[l>>2]=d;break l}H[l>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+j|0;f=H[f+k>>2]-H[f+i>>2]|0;H[d>>2]=f;m:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break m}f=f-H[a+20>>2]|0}H[d>>2]=f}f=i;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}}if((p|0)>2){continue}break}}if((e|0)>0){ta(h,0,e<<2)}d=H[a+8>>2];if((d|0)>0){n=0;f=h;while(1){e=H[a+32>>2];g=0;if((d|0)>0){while(1){p=g<<2;i=H[p+f>>2];d=H[a+16>>2];n:{if((i|0)>(d|0)){H[e+p>>2]=d;break n}p=e+p|0;d=H[a+12>>2];if((d|0)>(i|0)){H[p>>2]=d;break n}H[p>>2]=i}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;o:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break o}f=f-H[a+20>>2]|0}H[d>>2]=f}f=e;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}}qa(h);return 1}function $k(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;H[a+8>>2]=e;g=a+32|0;f=H[g>>2];i=H[a+36>>2]-f>>2;a:{if(i>>>0>>0){Ea(g,e-i|0);break a}if(e>>>0>=i>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){d=g;break c}p=1;f=d-1|0;h=f&1;d:{if((d|0)==2){d=g;break d}n=f&-2;f=0;d=g;while(1){i=(p<<2)+b|0;o=H[i+4>>2];l=H[i>>2];m=(l|0)<(d|0);d=m?l:d;i=(d|0)>(o|0);d=i?o:d;g=m?g:(g|0)<(l|0)?l:g;g=i?g:(g|0)<(o|0)?o:g;p=p+2|0;f=f+2|0;if((n|0)!=(f|0)){continue}break}}if(!h){break c}i=H[(p<<2)+b>>2];f=(i|0)<(d|0);d=f?i:d;g=f?g:(g|0)<(i|0)?i:g}H[a+16>>2]=g;H[a+12>>2]=d;f=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;d=g-d|0;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}d=(e&1073741823)!=(e|0)?-1:e<<2;i=ta(ra(d),0,d);d=H[a+56>>2];s=H[d>>2];d=H[d+4>>2]-s|0;if((d|0)>=5){t=H[a+52>>2];r=H[a+48>>2];u=e&-2;v=e&1;p=d>>2;m=p;while(1){n=m;e:{f:{m=m-1|0;if(p>>>0>m>>>0){o=N(e,m);d=H[(m<<2)+s>>2];if((d|0)==-1|H[H[r>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}j=H[H[H[r+64>>2]+12>>2]+(d<<2)>>2];if((j|0)==-1){break f}h=H[t>>2];l=H[r+28>>2];g=H[h+(H[l+(j<<2)>>2]<<2)>>2];if((g|0)>=(m|0)){break f}d=j+1|0;f=H[h+(H[l+(((d>>>0)%3|0?d:j-2|0)<<2)>>2]<<2)>>2];if((f|0)>=(m|0)){break f}d=H[h+(H[l+(j+((j>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(m|0)){break f}g:{if((e|0)<=0){break g}l=N(d,e);h=N(e,f);f=N(e,g);g=0;k=0;if((e|0)!=1){while(1){H[i+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+h<<2)+b>>2]|0)-H[(f+g<<2)+b>>2];d=g|1;H[i+(d<<2)>>2]=(H[(d+l<<2)+b>>2]+H[(d+h<<2)+b>>2]|0)-H[(d+f<<2)+b>>2];g=g+2|0;k=k+2|0;if((u|0)!=(k|0)){continue}break}}if(!v){break g}H[i+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+h<<2)+b>>2]|0)-H[(f+g<<2)+b>>2]}d=H[a+8>>2];if((d|0)<=0){break e}f=o<<2;o=f+c|0;l=b+f|0;k=0;f=i;while(1){h=H[a+32>>2];g=0;if((d|0)>0){while(1){j=g<<2;q=H[j+f>>2];d=H[a+16>>2];h:{if((q|0)>(d|0)){H[h+j>>2]=d;break h}j=h+j|0;d=H[a+12>>2];if((d|0)>(q|0)){H[j>>2]=d;break h}H[j>>2]=q}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+o|0;f=H[f+l>>2]-H[f+h>>2]|0;H[d>>2]=f;i:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break i}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}break e}ua();X()}d=H[a+8>>2];if((d|0)<=0){break e}f=o<<2;o=f+c|0;l=b+f|0;f=(N(n-2|0,e)<<2)+b|0;k=0;while(1){h=H[a+32>>2];g=0;if((d|0)>0){while(1){j=g<<2;q=H[j+f>>2];d=H[a+16>>2];j:{if((q|0)>(d|0)){H[h+j>>2]=d;break j}j=h+j|0;d=H[a+12>>2];if((d|0)>(q|0)){H[j>>2]=d;break j}H[j>>2]=q}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+o|0;f=H[f+l>>2]-H[f+h>>2]|0;H[d>>2]=f;k:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break k}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}}if((n|0)>2){continue}break}}if((e|0)>0){ta(i,0,e<<2)}d=H[a+8>>2];if((d|0)>0){k=0;f=i;while(1){e=H[a+32>>2];g=0;if((d|0)>0){while(1){n=g<<2;h=H[n+f>>2];d=H[a+16>>2];l:{if((h|0)>(d|0)){H[e+n>>2]=d;break l}n=e+n|0;d=H[a+12>>2];if((d|0)>(h|0)){H[n>>2]=d;break l}H[n>>2]=h}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;m:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break m}f=f-H[a+20>>2]|0}H[d>>2]=f}f=e;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}}qa(i);return 1}function ic(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=da-16|0;da=k;a:{if(!H[a+8>>2]){break a}e=H[a>>2];H[a>>2]=a+4;H[H[a+4>>2]+8>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;f=H[e+4>>2];e=f?f:e;if(!e){Ka(a,e);break a}g=H[e+8>>2];b:{if(!g){break b}f=H[g>>2];if((f|0)==(e|0)){H[g>>2]=0;f=H[g+4>>2];if(!f){d=g;break b}while(1){d=f;f=H[d>>2];if(f){continue}f=H[d+4>>2];if(f){continue}break}break b}H[g+4>>2]=0;if(!f){d=g;break b}while(1){d=f;f=H[d>>2];if(f){continue}f=H[d+4>>2];if(f){continue}break}}c:{if((b|0)==(c|0)){g=e;break c}f=b;while(1){g=d;H[k+12>>2]=e+28;H[k+8>>2]=e+16;h=f+16|0;i=H[k+8>>2];d:{if((h|0)==(i|0)){break d}d=I[h+11|0];b=d<<24>>24;if(F[i+11|0]>=0){if((b|0)>=0){b=H[h+4>>2];H[i>>2]=H[h>>2];H[i+4>>2]=b;H[i+8>>2]=H[h+8>>2];break d}bd(i,H[h>>2],H[h+4>>2]);break d}b=(b|0)<0;cd(i,b?H[h>>2]:h,b?H[h+4>>2]:d)}j=H[k+12>>2];i=h+12|0;if((j|0)!=(i|0)){e:{d=I[i+11|0];b=d<<24>>24;if(F[j+11|0]>=0){if((b|0)>=0){b=H[i+4>>2];H[j>>2]=H[i>>2];H[j+4>>2]=b;H[j+8>>2]=H[i+8>>2];break e}bd(j,H[h+12>>2],H[h+16>>2]);break e}b=(b|0)<0;cd(j,b?H[h+12>>2]:i,b?H[h+16>>2]:d)}}b=H[a+4>>2];f:{g:{if(b){d=I[e+27|0];i=d<<24>>24<0;m=i?H[e+20>>2]:d;j=i?H[e+16>>2]:e+16|0;while(1){d=I[b+27|0];l=d<<24>>24<0;h:{i:{j:{k:{h=l?H[b+20>>2]:d;i=h>>>0>>0?h:m;if(i){d=b+16|0;d=Ga(j,l?H[d>>2]:d,i);if(d){break k}}if(h>>>0>m>>>0){break j}break i}if((d|0)>=0){break i}}d=H[b>>2];if(!d){break g}break h}d=H[b+4>>2];if(d){break h}d=b+4|0;break f}b=d;continue}}b=a+4|0}d=b}H[e+8>>2]=b;H[e>>2]=0;H[e+4>>2]=0;H[d>>2]=e;b=H[H[a>>2]>>2];if(b){H[a>>2]=b;e=H[d>>2]}ub(H[a+4>>2],e);H[a+8>>2]=H[a+8>>2]+1;d=0;l:{if(!g){break l}e=H[g+8>>2];if(!e){break l}b=H[e>>2];if((g|0)==(b|0)){H[e>>2]=0;b=H[e+4>>2];if(!b){d=e;break l}while(1){d=b;b=H[b>>2];if(b){continue}b=H[d+4>>2];if(b){continue}break}break l}H[e+4>>2]=0;if(!b){d=e;break l}while(1){d=b;b=H[b>>2];if(b){continue}b=H[d+4>>2];if(b){continue}break}}e=H[f+4>>2];m:{if(!e){b=H[f+8>>2];if(H[b>>2]==(f|0)){break m}f=f+8|0;while(1){e=H[f>>2];f=e+8|0;b=H[e+8>>2];if((e|0)!=H[b>>2]){continue}break}break m}while(1){b=e;e=H[b>>2];if(e){continue}break}}if(!g){break c}e=g;f=b;if((b|0)!=(c|0)){continue}break}}Ka(a,g);if(!d){break a}while(1){f=H[d+8>>2];if(f){d=f;continue}break}Ka(a,d)}if((b|0)!=(c|0)){while(1){e=ra(40);g=e+16|0;f=b;n:{if(F[b+27|0]>=0){d=H[b+20>>2];H[g>>2]=H[b+16>>2];H[g+4>>2]=d;H[g+8>>2]=H[b+24>>2];break n}Ia(g,H[b+16>>2],H[b+20>>2])}g=e+28|0;o:{if(F[b+39|0]>=0){d=H[b+32>>2];H[g>>2]=H[b+28>>2];H[g+4>>2]=d;H[g+8>>2]=H[b+36>>2];break o}Ia(g,H[b+28>>2],H[b+32>>2])}b=H[a+4>>2];p:{q:{if(b){d=I[e+27|0];g=d<<24>>24<0;l=g?H[e+20>>2]:d;i=g?H[e+16>>2]:e+16|0;while(1){d=I[b+27|0];h=d<<24>>24<0;r:{s:{t:{u:{j=h?H[b+20>>2]:d;g=j>>>0>>0?j:l;if(g){d=b+16|0;d=Ga(i,h?H[d>>2]:d,g);if(d){break u}}if(j>>>0>l>>>0){break t}break s}if((d|0)>=0){break s}}d=H[b>>2];if(!d){break q}break r}d=H[b+4>>2];if(d){break r}d=b+4|0;break p}b=d;continue}}b=a+4|0}d=b}H[e+8>>2]=b;H[e>>2]=0;H[e+4>>2]=0;H[d>>2]=e;b=H[H[a>>2]>>2];if(b){H[a>>2]=b;e=H[d>>2]}ub(H[a+4>>2],e);H[a+8>>2]=H[a+8>>2]+1;e=H[f+4>>2];v:{if(!e){b=H[f+8>>2];if((f|0)==H[b>>2]){break v}d=f+8|0;while(1){f=H[d>>2];d=f+8|0;b=H[f+8>>2];if((f|0)!=H[b>>2]){continue}break}break v}while(1){b=e;e=H[b>>2];if(e){continue}break}}if((b|0)!=(c|0)){continue}break}}da=k+16|0}function ab(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-112|0;da=j;k=i&2147483647;l=e&2147483647;m=l;a:{b:{n=!(b|c);if(!(d|l?l-2147418112>>>0<2147549184:n)){p=k-2147418112|0;if(!h&(p|0)==-2147418112?f|g:(p|0)==-2147418112&(h|0)!=0|p>>>0>2147549184){break b}}if(!(!d&(m|0)==2147418112?n:m>>>0<2147418112)){h=d;i=e|32768;f=b;g=c;break a}if(!(!h&(k|0)==2147418112?!(f|g):k>>>0<2147418112)){i=i|32768;break a}if(!(b|d|(m^2147418112|c))){m=d;d=!(b^f|d^h|(c^g|e^i^-2147483648));h=d?0:m;i=d?2147450880:e;f=d?0:b;g=d?0:c;break a}if(!(f|h|(k^2147418112|g))){break a}if(!(b|d|(c|m))){if(f|h|(g|k)){break a}f=b&f;g=c&g;h=d&h;i=e&i;break a}if(f|h|(g|k)){break b}f=b;g=c;h=d;i=e;break a}l=(k|0)==(m|0);q=l&(d|0)==(h|0)?(c|0)==(g|0)&b>>>0>>0|c>>>0>>0:l&d>>>0>>0|k>>>0>m>>>0;k=q;n=k?f:b;l=k?g:c;m=k?i:e;p=m;o=k?h:d;m=m&65535;e=k?e:i;r=e;h=k?d:h;d=e>>>16&32767;k=p>>>16&32767;if(!k){e=!(m|o);i=e<<6;k=Q(e?n:o)+32|0;e=Q(e?l:m);e=i+((e|0)==32?k:e)|0;Ta(j+96|0,n,l,o,m,e-15|0);o=H[j+104>>2];m=H[j+108>>2];n=H[j+96>>2];k=16-e|0;l=H[j+100>>2]}f=q?b:f;g=q?c:g;i=r&65535;if(!d){b=!(h|i);c=b<<6;d=Q(b?f:h)+32|0;b=Q(b?g:i);b=c+((b|0)==32?d:b)|0;Ta(j+80|0,f,g,h,i,b-15|0);h=H[j+88>>2];i=H[j+92>>2];f=H[j+80>>2];g=H[j+84>>2];d=16-b|0}c=h;b=i<<3|c>>>29;h=c<<3|g>>>29;i=b|524288;c=o;b=m<<3|c>>>29;e=c<<3|l>>>29;m=b;o=p^r;c=f;b=g<<3|c>>>29;c=c<<3;d=k-d|0;c:{if(!d){break c}if(d>>>0>127){h=0;i=0;b=0;c=1;break c}Ta(j- -64|0,c,b,h,i,128-d|0);Jb(j+48|0,c,b,h,i,d);h=H[j+56>>2];i=H[j+60>>2];b=H[j+52>>2];c=H[j+48>>2]|(H[j+64>>2]|H[j+72>>2]|(H[j+68>>2]|H[j+76>>2]))!=0}f=b;m=m|524288;d=n;b=l<<3|d>>>29;d=d<<3;d:{if((o|0)<0){n=d-c|0;g=h;o=e-h|0;q=(b|0)==(f|0)&c>>>0>d>>>0|b>>>0>>0;h=o-q|0;l=b-((c>>>0>d>>>0)+f|0)|0;i=(m-((e>>>0>>0)+i|0)|0)-(o>>>0>>0)|0;if(!(n|h|(l|i))){f=0;g=0;h=0;i=0;break a}if(i>>>0>524287){break d}b=!(h|i);c=b<<6;d=Q(b?n:h)+32|0;b=Q(b?l:i);b=c+((b|0)==32?d:b)|0;b=b-12|0;Ta(j+32|0,n,l,h,i,b);k=k-b|0;h=H[j+40>>2];i=H[j+44>>2];n=H[j+32>>2];l=H[j+36>>2];break d}b=b+f|0;g=c+d|0;b=g>>>0>>0?b+1|0:b;n=g;d=g;l=b;f=(f|0)==(b|0)&c>>>0>d>>>0|b>>>0>>0;b=i+m|0;c=e+h|0;b=c>>>0>>0?b+1|0:b;d=c;c=f+c|0;h=c;i=c>>>0>>0?b+1|0:b;if(!(i&1048576)){break d}n=n&1|((l&1)<<31|n>>>1);c=h;l=c<<31|l>>>1;k=k+1|0;h=(i&1)<<31|c>>>1;i=i>>>1|0}d=0;m=p&-2147483648;if((k|0)>=32767){h=d;i=m|2147418112;f=0;g=0;break a}c=0;e:{if((k|0)>0){c=k;break e}Ta(j+16|0,n,l,h,i,k+127|0);Jb(j,n,l,h,i,1-k|0);n=H[j>>2]|(H[j+16>>2]|H[j+24>>2]|(H[j+20>>2]|H[j+28>>2]))!=0;l=H[j+4>>2];h=H[j+8>>2];i=H[j+12>>2]}e=h<<29;b=l>>>3|0;k=(l&7)<<29|n>>>3;l=n&7;g=l>>>0>4;f=k+g|0;e=b|e;b=e;b=f>>>0>>0?b+1|0:b;g=b;e=(e|0)==(b|0)&f>>>0>>0|b>>>0>>0;b=i>>>3&65535;h=(i&7)<<29|h>>>3;i=c<<16;d=d|h;c=d+e|0;b=m|(b|i);h=c;i=c>>>0>>0?b+1|0:b;f:{if((l|0)==4){d=0;b=g+d|0;e=f&1;c=f+e|0;b=c>>>0>>0?b+1|0:b;f=c;g=b;c=(d|0)==(b|0)&c>>>0>>0|b>>>0>>0;b=c+h|0;i=b>>>0>>0?i+1|0:i;h=b;break f}if(!l){break a}}}H[a>>2]=f;H[a+4>>2]=g;H[a+8>>2]=h;H[a+12>>2]=i;da=j+112|0}function We(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}d=H[a+12>>2];c=H[a+8>>2];if(d-c>>2>>>0<=b>>>0){break a}e=c+(b<<2)|0;f=H[e>>2];i=H[f+60>>2];g=H[f+56>>2];c=e+4|0;b:{if((c|0)!=(d|0)){while(1){h=H[c>>2];H[c>>2]=0;H[e>>2]=h;if(f){Pa(f)}e=e+4|0;c=c+4|0;if((c|0)!=(d|0)){f=H[e>>2];continue}break}d=H[a+12>>2];if((e|0)==(d|0)){break b}}while(1){d=d-4|0;c=H[d>>2];H[d>>2]=0;if(c){Pa(c)}if((d|0)!=(e|0)){continue}break}}H[a+12>>2]=e;f=H[a+4>>2];c:{if(!f|(i|0)<0){break c}d=H[f+24>>2];c=H[f+28>>2];if((d|0)==(c|0)){break c}while(1){if((i|0)==H[H[d>>2]+24>>2]){e=d+4|0;i=H[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=H[e>>2];H[e>>2]=0;c=H[d>>2];H[d>>2]=h;if(c){mb(c+12|0,H[c+16>>2]);lb(c,H[c+4>>2]);qa(c)}d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=H[f+28>>2];if((e|0)==(d|0)){break d}}while(1){e=e-4|0;c=H[e>>2];H[e>>2]=0;if(c){mb(c+12|0,H[c+16>>2]);lb(c,H[c+4>>2]);qa(c)}if((d|0)!=(e|0)){continue}break}}H[f+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=N(g,12)+a|0;d=H[e+20>>2];c=H[e+24>>2];if((d|0)==(c|0)){break f}while(1){if(H[d>>2]==(b|0)){break f}d=d+4|0;if((c|0)!=(d|0)){continue}break}break e}if((d|0)==(c|0)){break e}f=d+4|0;c=c-f|0;if(c){xa(d,f,c)}H[e+24>>2]=d+c}e=H[a+20>>2];c=H[a+24>>2]-e|0;g:{if(!c){break g}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break g}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break g}H[d>>2]=c-1}e=H[a+32>>2];c=H[a+36>>2]-e|0;h:{if(!c){break h}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break h}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break h}H[d>>2]=c-1}e=H[a+44>>2];c=H[a+48>>2]-e|0;i:{if(!c){break i}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break i}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break i}H[d>>2]=c-1}e=H[a+56>>2];c=H[a+60>>2]-e|0;j:{if(!c){break j}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break j}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break j}H[d>>2]=c-1}c=H[a+72>>2];a=H[a+68>>2];c=c-a|0;if(!c){break a}d=c>>2;e=d>>>0>1?d:1;f=e&1;d=0;if(c>>>0>=8){e=e&-2;c=0;while(1){i=d<<2;g=i+a|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}i=a+(i|4)|0;g=H[i>>2];if((g|0)>(b|0)){H[i>>2]=g-1}d=d+2|0;c=c+2|0;if((e|0)!=(c|0)){continue}break}}if(!f){break a}c=b;a=a+(d<<2)|0;b=H[a>>2];if((c|0)>=(b|0)){break a}H[a>>2]=b-1}}function qa(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=H[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=H[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=H[d+8>>2];b=b>>>3|0;c=H[d+12>>2];if((c|0)==(e|0)){i=19128,j=H[4782]&Bl(b),H[i>>2]=j;break b}H[e+12>>2]=c;H[c+8>>2]=e;break b}h=H[d+24>>2];b=H[d+12>>2];c:{if((d|0)!=(b|0)){c=H[d+8>>2];H[c+12>>2]=b;H[b+8>>2]=c;break c}d:{e=d+20|0;c=H[e>>2];if(c){break d}e=d+16|0;c=H[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=H[e>>2];if(c){continue}e=b+16|0;c=H[b+16>>2];if(c){continue}break}H[g>>2]=0}if(!h){break b}e=H[d+28>>2];c=(e<<2)+19432|0;e:{if(H[c>>2]==(d|0)){H[c>>2]=b;if(b){break e}i=19132,j=H[4783]&Bl(e),H[i>>2]=j;break b}H[h+(H[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}H[b+24>>2]=h;c=H[d+16>>2];if(c){H[b+16>>2]=c;H[c+24>>2]=b}c=H[d+20>>2];if(!c){break b}H[b+20>>2]=c;H[c+24>>2]=b;break b}b=H[f+4>>2];if((b&3)!=3){break b}H[4784]=a;H[f+4>>2]=b&-2;H[d+4>>2]=a|1;H[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=H[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(H[4788]==(f|0)){H[4788]=d;a=H[4785]+a|0;H[4785]=a;H[d+4>>2]=a|1;if(H[4787]!=(d|0)){break a}H[4784]=0;H[4787]=0;return}if(H[4787]==(f|0)){H[4787]=d;a=H[4784]+a|0;H[4784]=a;H[d+4>>2]=a|1;H[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=H[f+8>>2];b=b>>>3|0;c=H[f+12>>2];if((c|0)==(e|0)){i=19128,j=H[4782]&Bl(b),H[i>>2]=j;break g}H[e+12>>2]=c;H[c+8>>2]=e;break g}h=H[f+24>>2];b=H[f+12>>2];h:{if((f|0)!=(b|0)){c=H[f+8>>2];H[c+12>>2]=b;H[b+8>>2]=c;break h}i:{e=f+20|0;c=H[e>>2];if(c){break i}e=f+16|0;c=H[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=H[e>>2];if(c){continue}e=b+16|0;c=H[b+16>>2];if(c){continue}break}H[g>>2]=0}if(!h){break g}e=H[f+28>>2];c=(e<<2)+19432|0;j:{if(H[c>>2]==(f|0)){H[c>>2]=b;if(b){break j}i=19132,j=H[4783]&Bl(e),H[i>>2]=j;break g}H[h+(H[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}H[b+24>>2]=h;c=H[f+16>>2];if(c){H[b+16>>2]=c;H[c+24>>2]=b}c=H[f+20>>2];if(!c){break g}H[b+20>>2]=c;H[c+24>>2]=b}H[d+4>>2]=a|1;H[a+d>>2]=a;if(H[4787]!=(d|0)){break f}H[4784]=a;return}H[f+4>>2]=b&-2;H[d+4>>2]=a|1;H[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+19168|0;c=H[4782];a=1<>2]}H[b+8>>2]=d;H[a+12>>2]=d;H[d+12>>2]=b;H[d+8>>2]=a;return}e=31;H[d+16>>2]=0;H[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}H[d+28>>2]=e;g=(e<<2)+19432|0;l:{m:{c=H[4783];b=1<>2]=d;H[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=H[g>>2];while(1){c=b;if((H[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=H[g+16>>2];if(b){continue}break}H[g+16>>2]=d;H[d+24>>2]=c}H[d+12>>2]=d;H[d+8>>2]=d;break l}a=H[c+8>>2];H[a+12>>2]=d;H[c+8>>2]=d;H[d+24>>2]=0;H[d+12>>2]=c;H[d+8>>2]=a}a=H[4790]-1|0;H[4790]=a?a:-1}}function rk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=da-48|0;da=l;d=H[a+8>>2];if(d-31>>>0>=4294967267){H[a+76>>2]=d;e=-1<>2]=d;H[a+80>>2]=e^-1;H[a+92>>2]=(d|0)/2;L[a+88>>2]=O(2)/O(d|0)}H[a+52>>2]=f;o=a+96|0;Ca(o);d=H[a+40>>2];e=H[d>>2];f=H[d+4>>2];H[l+16>>2]=0;H[l+8>>2]=0;H[l+12>>2]=0;a:{e=f-e|0;if((e|0)<=0){break a}j=H[d>>2];if((j|0)!=H[d+4>>2]){p=a+8|0;q=a+44|0;d=e>>>2|0;r=d>>>0>1?d:1;s=c+4|0;while(1){Sc(q,H[(n<<2)+j>>2],l+8|0);f=H[l+12>>2];d=f>>31;e=H[l+8>>2];i=e>>31;j=H[l+16>>2];g=j>>31;g=g^g+j;i=g+((d^d+f)+(i^e+i)|0)|0;d=0;d=g>>>0>i>>>0?1:d;b:{if(!(d|i)){k=H[a+92>>2];h=k;break b}k=H[a+92>>2];m=k>>31;f=yl(xl(k,m,f,f>>31),ea,i,d);g=f>>31;h=yl(xl(k,m,e,e>>31),ea,i,d);d=h>>31;d=(g^f+g)+(d^d+h)|0;j=(j|0)>=0?k-d|0:d-k|0}c:{if((h|0)>=0){i=f+k|0;g=j+k|0;break c}d:{if((f|0)<0){d=j>>31;i=d+j^d;break d}d=j>>31;i=H[a+84>>2]-(d+j^d)|0}if((j|0)<0){d=f>>31;g=d+f^d;break c}d=f>>31;g=H[a+84>>2]-(d+f^d)|0}d=H[a+84>>2];m=d;e=d;e:{if(!(g|i)){break e}if(!((d|0)!=(g|0)|i)){m=g;e=g;break e}if(!((d|0)!=(i|0)|g)){m=i;e=i;break e}if(!((g|0)<=(k|0)|i)){m=(k<<1)-g|0;e=0;break e}if(!((d|0)!=(i|0)|(g|0)>=(k|0))){m=(k<<1)-g|0;e=i;break e}if(!((d|0)!=(g|0)|(i|0)>=(k|0))){m=g;e=(k<<1)-i|0;break e}if(g){m=g;e=i;break e}m=0;e=i;if((e|0)<=(k|0)){break e}e=(k<<1)-i|0}i=e;H[l+16>>2]=0-j;H[l+12>>2]=0-f;H[l+8>>2]=0-h;f:{if((h|0)<=0){h=k-j|0;e=k-f|0;break f}e=f>>31;e=e+f^e;h=(j|0)>0?e:d-e|0;e=j>>31;e=e+j^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|h)){h=d;break g}if(!((d|0)!=(h|0)|e)){h=d;break g}f=(d|0)!=(e|0);if(!(h|f)){h=d;break g}if(!((h|0)<=(k|0)|e)){h=(k<<1)-h|0;d=0;break g}if(!((h|0)>=(k|0)|f)){h=(k<<1)-h|0;break g}if(!((d|0)!=(h|0)|(e|0)>=(k|0))){h=d;d=(k<<1)-e|0;break g}if(h){d=e;break g}h=0;if((e|0)<=(k|0)){d=e;break g}d=(k<<1)-e|0}e=(n<<3)+b|0;f=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=f;H[l+28>>2]=m;H[l+24>>2]=i;i=l+40|0;g=l+32|0;m=l+24|0;_a(i,p,g,m);f=H[l+44>>2];j=H[l+40>>2];k=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=k;H[l+28>>2]=h;H[l+24>>2]=d;_a(i,p,g,m);d=H[l+44>>2];h=H[l+40>>2];e=H[a+92>>2];h:{if((e|0)<(j|0)){j=j-H[a+80>>2]|0;break h}if((0-e|0)<=(j|0)){break h}j=H[a+80>>2]+j|0}i:{if((e|0)<(f|0)){f=f-H[a+80>>2]|0;break i}if((0-e|0)<=(f|0)){break i}f=H[a+80>>2]+f|0}j:{if((e|0)<(h|0)){h=h-H[a+80>>2]|0;break j}if((0-e|0)<=(h|0)){break j}h=H[a+80>>2]+h|0}i=n<<1;k:{if((d|0)>(e|0)){d=d-H[a+80>>2]|0;break k}if((0-e|0)<=(d|0)){break k}d=H[a+80>>2]+d|0}e=f>>31;e=e+f^e;g=j>>31;g=g+j^g;e=g>>>0>(e^2147483647)>>>0?2147483647:e+g|0;g=d>>31;g=g+d^g;m=h>>31;m=m+h^m;g=m>>>0>(g^2147483647)>>>0?2147483647:g+m|0;Fa(o,e>>>0>=g>>>0);i=i<<2;e=e>>>0>>0;g=e?j:h;H[i+c>>2]=(H[a+80>>2]&g>>31)+g;d=e?f:d;H[i+s>>2]=(H[a+80>>2]&d>>31)+d;n=n+1|0;if((r|0)==(n|0)){break a}d=H[a+40>>2];j=H[d>>2];if(H[d+4>>2]-j>>2>>>0>n>>>0){continue}break}}ua();X()}da=l+48|0;return 1}function gk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=da-48|0;da=l;d=H[a+8>>2];if(d-31>>>0>=4294967267){H[a+76>>2]=d;e=-1<>2]=d;H[a+80>>2]=e^-1;H[a+92>>2]=(d|0)/2;L[a+88>>2]=O(2)/O(d|0)}H[a+52>>2]=f;o=a+96|0;Ca(o);d=H[a+40>>2];e=H[d>>2];f=H[d+4>>2];H[l+16>>2]=0;H[l+8>>2]=0;H[l+12>>2]=0;a:{e=f-e|0;if((e|0)<=0){break a}j=H[d>>2];if((j|0)!=H[d+4>>2]){p=a+8|0;q=a+44|0;d=e>>>2|0;r=d>>>0>1?d:1;s=c+4|0;while(1){Qc(q,H[(n<<2)+j>>2],l+8|0);f=H[l+12>>2];d=f>>31;e=H[l+8>>2];i=e>>31;j=H[l+16>>2];g=j>>31;g=g^g+j;i=g+((d^d+f)+(i^e+i)|0)|0;d=0;d=g>>>0>i>>>0?1:d;b:{if(!(d|i)){k=H[a+92>>2];h=k;break b}k=H[a+92>>2];m=k>>31;f=yl(xl(k,m,f,f>>31),ea,i,d);g=f>>31;h=yl(xl(k,m,e,e>>31),ea,i,d);d=h>>31;d=(g^f+g)+(d^d+h)|0;j=(j|0)>=0?k-d|0:d-k|0}c:{if((h|0)>=0){i=f+k|0;g=j+k|0;break c}d:{if((f|0)<0){d=j>>31;i=d+j^d;break d}d=j>>31;i=H[a+84>>2]-(d+j^d)|0}if((j|0)<0){d=f>>31;g=d+f^d;break c}d=f>>31;g=H[a+84>>2]-(d+f^d)|0}d=H[a+84>>2];m=d;e=d;e:{if(!(g|i)){break e}if(!((d|0)!=(g|0)|i)){m=g;e=g;break e}if(!((d|0)!=(i|0)|g)){m=i;e=i;break e}if(!((g|0)<=(k|0)|i)){m=(k<<1)-g|0;e=0;break e}if(!((d|0)!=(i|0)|(g|0)>=(k|0))){m=(k<<1)-g|0;e=i;break e}if(!((d|0)!=(g|0)|(i|0)>=(k|0))){m=g;e=(k<<1)-i|0;break e}if(g){m=g;e=i;break e}m=0;e=i;if((e|0)<=(k|0)){break e}e=(k<<1)-i|0}i=e;H[l+16>>2]=0-j;H[l+12>>2]=0-f;H[l+8>>2]=0-h;f:{if((h|0)<=0){h=k-j|0;e=k-f|0;break f}e=f>>31;e=e+f^e;h=(j|0)>0?e:d-e|0;e=j>>31;e=e+j^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|h)){h=d;break g}if(!((d|0)!=(h|0)|e)){h=d;break g}f=(d|0)!=(e|0);if(!(h|f)){h=d;break g}if(!((h|0)<=(k|0)|e)){h=(k<<1)-h|0;d=0;break g}if(!((h|0)>=(k|0)|f)){h=(k<<1)-h|0;break g}if(!((d|0)!=(h|0)|(e|0)>=(k|0))){h=d;d=(k<<1)-e|0;break g}if(h){d=e;break g}h=0;if((e|0)<=(k|0)){d=e;break g}d=(k<<1)-e|0}e=(n<<3)+b|0;f=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=f;H[l+28>>2]=m;H[l+24>>2]=i;i=l+40|0;g=l+32|0;m=l+24|0;_a(i,p,g,m);f=H[l+44>>2];j=H[l+40>>2];k=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=k;H[l+28>>2]=h;H[l+24>>2]=d;_a(i,p,g,m);d=H[l+44>>2];h=H[l+40>>2];e=H[a+92>>2];h:{if((e|0)<(j|0)){j=j-H[a+80>>2]|0;break h}if((0-e|0)<=(j|0)){break h}j=H[a+80>>2]+j|0}i:{if((e|0)<(f|0)){f=f-H[a+80>>2]|0;break i}if((0-e|0)<=(f|0)){break i}f=H[a+80>>2]+f|0}j:{if((e|0)<(h|0)){h=h-H[a+80>>2]|0;break j}if((0-e|0)<=(h|0)){break j}h=H[a+80>>2]+h|0}i=n<<1;k:{if((d|0)>(e|0)){d=d-H[a+80>>2]|0;break k}if((0-e|0)<=(d|0)){break k}d=H[a+80>>2]+d|0}e=f>>31;e=e+f^e;g=j>>31;g=g+j^g;e=g>>>0>(e^2147483647)>>>0?2147483647:e+g|0;g=d>>31;g=g+d^g;m=h>>31;m=m+h^m;g=m>>>0>(g^2147483647)>>>0?2147483647:g+m|0;Fa(o,e>>>0>=g>>>0);i=i<<2;e=e>>>0>>0;g=e?j:h;H[i+c>>2]=(H[a+80>>2]&g>>31)+g;d=e?f:d;H[i+s>>2]=(H[a+80>>2]&d>>31)+d;n=n+1|0;if((r|0)==(n|0)){break a}d=H[a+40>>2];j=H[d>>2];if(H[d+4>>2]-j>>2>>>0>n>>>0){continue}break}}ua();X()}da=l+48|0;return 1}function Mg(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;g=da-16|0;da=g;H[g+12>>2]=b;b=ra(32);H[g>>2]=b;H[g+4>>2]=17;H[g+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];i=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);h=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=h;F[b+9|0]=h>>>8;F[b+10|0]=h>>>16;F[b+11|0]=h>>>24;F[b+12|0]=i;F[b+13|0]=i>>>8;F[b+14|0]=i>>>16;F[b+15|0]=i>>>24;i=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);h=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=h;F[b+1|0]=h>>>8;F[b+2|0]=h>>>16;F[b+3|0]=h>>>24;F[b+4|0]=i;F[b+5|0]=i>>>8;F[b+6|0]=i>>>16;F[b+7|0]=i>>>24;i=a+4|0;tb(sc(i,g+12|0),g,c);if(F[g+11|0]<0){qa(H[g>>2])}a=ra(32);H[g>>2]=a;H[g+4>>2]=19;H[g+8>>2]=-2147483616;F[a+19|0]=0;b=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[a+15|0]=b;F[a+16|0]=b>>>8;F[a+17|0]=b>>>16;F[a+18|0]=b>>>24;b=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);c=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[a+8|0]=c;F[a+9|0]=c>>>8;F[a+10|0]=c>>>16;F[a+11|0]=c>>>24;F[a+12|0]=b;F[a+13|0]=b>>>8;F[a+14|0]=b>>>16;F[a+15|0]=b>>>24;b=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);c=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[a|0]=c;F[a+1|0]=c>>>8;F[a+2|0]=c>>>16;F[a+3|0]=c>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;c=sc(i,g+12|0);a=da-48|0;da=a;H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;a:{if((d|0)<=0){break a}ad(a,L[e>>2]);b=I[a+11|0];h=b<<24>>24<0;dd(a+16|0,h?H[a>>2]:a,h?H[a+4>>2]:b);if(F[a+11|0]<0){qa(H[a>>2])}b=1;if((d|0)==1){break a}while(1){h=a+16|0;dd(h,2164,sb(2164));ad(a,L[(b<<2)+e>>2]);k=h;h=I[a+11|0];j=h<<24>>24<0;dd(k,j?H[a>>2]:a,j?H[a+4>>2]:h);if(F[a+11|0]<0){qa(H[a>>2])}b=b+1|0;if((d|0)!=(b|0)){continue}break}}H[a+40>>2]=g;_d(a,c,g,a+40|0);b=H[a>>2]+28|0;b:{if((b|0)==(a+16|0)){break b}d=I[a+27|0];c=d<<24>>24;if(F[b+11|0]>=0){if((c|0)>=0){c=H[a+20>>2];H[b>>2]=H[a+16>>2];H[b+4>>2]=c;H[b+8>>2]=H[a+24>>2];break b}bd(b,H[a+16>>2],H[a+20>>2]);break b}e=b;b=(c|0)<0;cd(e,b?H[a+16>>2]:a+16|0,b?H[a+20>>2]:d)}if(F[a+27|0]<0){qa(H[a+16>>2])}da=a+48|0;if(F[g+11|0]<0){qa(H[g>>2])}a=ra(32);H[g>>2]=a;H[g+4>>2]=18;H[g+8>>2]=-2147483616;F[a+18|0]=0;b=I[1706]|I[1707]<<8;F[a+16|0]=b;F[a+17|0]=b>>>8;b=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);c=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[a+8|0]=c;F[a+9|0]=c>>>8;F[a+10|0]=c>>>16;F[a+11|0]=c>>>24;F[a+12|0]=b;F[a+13|0]=b>>>8;F[a+14|0]=b>>>16;F[a+15|0]=b>>>24;b=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);c=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[a|0]=c;F[a+1|0]=c>>>8;F[a+2|0]=c>>>16;F[a+3|0]=c>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;b=sc(i,g+12|0);a=da-48|0;da=a;ad(a+8|0,f);H[a+32>>2]=g;_d(a+40|0,b,g,a+32|0);b=H[a+40>>2];if(F[b+39|0]<0){qa(H[b+28>>2])}c=H[a+12>>2];H[b+28>>2]=H[a+8>>2];H[b+32>>2]=c;H[b+36>>2]=H[a+16>>2];da=a+48|0;if(F[g+11|0]<0){qa(H[g>>2])}da=g+16|0}function Nf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}c=(b>>>0)/3|0;if(!(H[H[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=H[a+48>>2];H[a+52>>2]=d;a:{if((d|0)!=H[a+56>>2]){H[d>>2]=b;H[a+52>>2]=d+4;break a}e=ra(4);H[e>>2]=b;f=e+4|0;H[a+56>>2]=f;H[a+52>>2]=f;H[a+48>>2]=e;if(!d){break a}qa(d)}f=H[H[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=H[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-N(c,3)|0?-1:2)+b|0;c=H[f+(g<<2)>>2];if((c|0)==-1){return 0}b=H[a+36>>2];f=b+(d>>>3&536870908)|0;h=H[f>>2];i=1<>2]=h|i;nb(a+8|0,d,e);b=H[a+36>>2]}b=(c>>>3&536870908)+b|0;d=H[b>>2];e=1<>2]=d|e;nb(a+8|0,c,g)}c=H[a+52>>2];if((c|0)==H[a+48>>2]){return 1}k=a+8|0;while(1){c=c-4|0;b=H[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=H[a+24>>2]+(d>>>3&268435452)|0;f=H[e>>2];d=1<>2]=d|f;e=H[a+4>>2];d=H[H[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=H[a+36>>2]+(d>>>3&536870908)|0;g=H[f>>2];h=1<>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}H[f>>2]=g|h;nb(k,d,c);break e}H[f>>2]=g|h;nb(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=H[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|H[H[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=H[H[H[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<>2];i=d>>>5|0;f=H[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=H[a+4>>2];if(!((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(H[H[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=H[H[H[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;f=(d>>>0)/3|0;h=(d|0)==-1;if(!h){c=H[a+24>>2];h=h?-1:f;i=h>>>5|0;f=H[c+(i<<2)>>2];h=1<>2];i=g>>>5|0;f=H[c+(i<<2)>>2];if(!(h&f)){break d}}c=H[a+52>>2]-4|0;H[a+52>>2]=c;break b}if(j){b=d;break d}if(H[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=H[a+52>>2];H[c-4>>2]=b;if((c|0)!=H[a+56>>2]){H[c>>2]=d;c=c+4|0;break c}m:{f=H[a+48>>2];e=c-f|0;c=e>>2;b=c+1|0;if(b>>>0<1073741824){g=e>>1;g=e>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break m}b=ra(g<<2)}else{b=0}c=b+(c<<2)|0;H[c>>2]=d;c=c+4|0;if((e|0)>0){sa(b,f,e)}H[a+56>>2]=b+(g<<2);H[a+52>>2]=c;H[a+48>>2]=b;if(!f){break b}qa(f);c=H[a+52>>2];break b}va();X()}ya(1604);X()}H[(i<<2)+c>>2]=f|h;d=H[H[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}H[a+52>>2]=c}if(H[a+48>>2]!=(c|0)){continue}break}}return 1}function Jj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=da+-64|0;da=e;a:{b:{c:{d:{if(!I[a+288|0]){break d}c=1;h=fa[H[H[a>>2]+40>>2]](a)|0;if((H[h+12>>2]-H[h+8>>2]|0)<=0){break d}jc(H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;f=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];i=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;d=H[a+172>>2];c=H[a+176>>2]-d|0;e:{if(!c){break e}c=(c|0)/136|0;g=c>>>0>1?c:1;c=0;while(1){if(H[d+N(c,136)>>2]==(b|0)){h=c;break e}c=c+1|0;if((g|0)!=(c|0)){continue}break}}f:{g:{h:{i:{j:{k:{if(!I[a+288|0]){c=H[i+56>>2];if(!(!f|!c)&(!I[(d+N(h,136)|0)+28|0]|(f|0)!=1)){break i}if(c){break k}}c=a+40|0;break j}c=H[a+12>>2];f=H[c+28>>2];c=H[c+24>>2];H[e>>2]=-1;k=d;d=N(h,136);g=k+d|0;yb(g+116|0,f-c>>2,e);F[(d+H[a+172>>2]|0)+100|0]=0;c=g+104|0}d=0;if(bb(H[(fa[H[H[a>>2]+40>>2]](a)|0)+48>>2])|H[i+56>>2]){break h}if(!I[a+288|0]){d=1;c=Kc(a,c);break g}d=H[a+8>>2];f=H[d+12>>2]-H[d+8>>2]|0;d=(f|0)<5;if((f|0)>4){break h}c=Kc(a,c);break g}d=d+N(h,136)|0;c=H[d+56>>2];f=H[d+60>>2];H[e>>2]=-1;yb(d+116|0,f-c>>2,e);c=ra(80);f=H[a+8>>2];H[c+12>>2]=0;H[c+16>>2]=0;H[c>>2]=12e3;H[c+4>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+76>>2]=0;i=d+104|0;H[c+72>>2]=i;H[c+68>>2]=f;H[c- -64>>2]=0;g=c+56|0;H[g>>2]=0;H[g+4>>2]=0;H[c+8>>2]=10904;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;j=e+24|0;H[j>>2]=0;H[j+4>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e+56>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e>>2]=10904;l=d+4|0;H[e+4>>2]=l;d=H[d+68>>2];k=H[d>>2];d=H[d+4>>2];F[e+63|0]=0;k=(d-k>>2>>>0)/3|0;d=e+63|0;Ra(j,k,d);j=H[e+4>>2];k=H[j+56>>2];j=H[j+52>>2];F[e+63|0]=0;Ra(e+36|0,k-j>>2,d);H[e+20>>2]=c;H[e+16>>2]=f;H[e+12>>2]=i;H[e+8>>2]=l;H[c+76>>2]=a+72;Jc(c+8|0,e);hc(g,H[e+48>>2],H[e+52>>2]);H[e>>2]=10904;d=H[e+48>>2];if(d){H[e+52>>2]=d;qa(d)}H[e>>2]=11156;d=H[e+36>>2];if(d){qa(d)}d=H[e+24>>2];if(d){qa(d)}d=0;break f}c=eg(a,c)}if(c){break f}c=0;break c}H[((h|0)==-1?a+68|0:(H[a+172>>2]+N(h,136)|0)+132|0)>>2]=d;i=ge(ra(76),c,b);b=H[a+188>>2];l:{if((b|0)!=H[a+192>>2]){H[b>>2]=h;H[a+188>>2]=b+4;break l}d=H[a+184>>2];c=b-d|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=ra(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=h;if((c|0)>0){sa(b,d,c)}H[a+192>>2]=b+(f<<2);H[a+188>>2]=g+4;H[a+184>>2]=b;if(!d){break l}qa(d)}a=fa[H[H[a>>2]+40>>2]](a)|0;H[e>>2]=i;b=H[a+12>>2];m:{if(b>>>0>2]){H[e>>2]=0;H[b>>2]=i;H[a+12>>2]=b+4;break m}Ic(a+8|0,e)}a=H[e>>2];H[e>>2]=0;if(a){fa[H[H[a>>2]+4>>2]](a)}c=1}da=e- -64|0;return c|0}va();X()}ya(1604);X()}function Ej(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=da+-64|0;da=e;a:{b:{c:{d:{if(!I[a+352|0]){break d}c=1;h=fa[H[H[a>>2]+40>>2]](a)|0;if((H[h+12>>2]-H[h+8>>2]|0)<=0){break d}jc(H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;f=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];i=H[c+H[H[(fa[H[H[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;d=H[a+172>>2];c=H[a+176>>2]-d|0;e:{if(!c){break e}c=(c|0)/136|0;g=c>>>0>1?c:1;c=0;while(1){if(H[d+N(c,136)>>2]==(b|0)){h=c;break e}c=c+1|0;if((g|0)!=(c|0)){continue}break}}f:{g:{h:{i:{j:{k:{if(!I[a+352|0]){c=H[i+56>>2];if(!(!f|!c)&(!I[(d+N(h,136)|0)+28|0]|(f|0)!=1)){break i}if(c){break k}}c=a+40|0;break j}c=H[a+12>>2];f=H[c+28>>2];c=H[c+24>>2];H[e>>2]=-1;k=d;d=N(h,136);g=k+d|0;yb(g+116|0,f-c>>2,e);F[(d+H[a+172>>2]|0)+100|0]=0;c=g+104|0}d=0;if(bb(H[(fa[H[H[a>>2]+40>>2]](a)|0)+48>>2])|H[i+56>>2]){break h}if(!I[a+352|0]){d=1;c=Kc(a,c);break g}d=H[a+8>>2];f=H[d+12>>2]-H[d+8>>2]|0;d=(f|0)<5;if((f|0)>4){break h}c=Kc(a,c);break g}d=d+N(h,136)|0;c=H[d+56>>2];f=H[d+60>>2];H[e>>2]=-1;yb(d+116|0,f-c>>2,e);c=ra(80);f=H[a+8>>2];H[c+12>>2]=0;H[c+16>>2]=0;H[c>>2]=12e3;H[c+4>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+76>>2]=0;i=d+104|0;H[c+72>>2]=i;H[c+68>>2]=f;H[c- -64>>2]=0;g=c+56|0;H[g>>2]=0;H[g+4>>2]=0;H[c+8>>2]=10904;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;j=e+24|0;H[j>>2]=0;H[j+4>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e+56>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e>>2]=10904;l=d+4|0;H[e+4>>2]=l;d=H[d+68>>2];k=H[d>>2];d=H[d+4>>2];F[e+63|0]=0;k=(d-k>>2>>>0)/3|0;d=e+63|0;Ra(j,k,d);j=H[e+4>>2];k=H[j+56>>2];j=H[j+52>>2];F[e+63|0]=0;Ra(e+36|0,k-j>>2,d);H[e+20>>2]=c;H[e+16>>2]=f;H[e+12>>2]=i;H[e+8>>2]=l;H[c+76>>2]=a+72;Jc(c+8|0,e);hc(g,H[e+48>>2],H[e+52>>2]);H[e>>2]=10904;d=H[e+48>>2];if(d){H[e+52>>2]=d;qa(d)}H[e>>2]=11156;d=H[e+36>>2];if(d){qa(d)}d=H[e+24>>2];if(d){qa(d)}d=0;break f}c=eg(a,c)}if(c){break f}c=0;break c}H[((h|0)==-1?a+68|0:(H[a+172>>2]+N(h,136)|0)+132|0)>>2]=d;i=ge(ra(76),c,b);b=H[a+188>>2];l:{if((b|0)!=H[a+192>>2]){H[b>>2]=h;H[a+188>>2]=b+4;break l}d=H[a+184>>2];c=b-d|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=ra(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=h;if((c|0)>0){sa(b,d,c)}H[a+192>>2]=b+(f<<2);H[a+188>>2]=g+4;H[a+184>>2]=b;if(!d){break l}qa(d)}a=fa[H[H[a>>2]+40>>2]](a)|0;H[e>>2]=i;b=H[a+12>>2];m:{if(b>>>0>2]){H[e>>2]=0;H[b>>2]=i;H[a+12>>2]=b+4;break m}Ic(a+8|0,e)}a=H[e>>2];H[e>>2]=0;if(a){fa[H[H[a>>2]+4>>2]](a)}c=1}da=e- -64|0;return c|0}va();X()}ya(1604);X()}function nc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=da-16|0;da=j;H[a+124>>2]=H[a+124>>2]+1;h=-1;d=H[a+120>>2];c=-1;a:{if((d|0)==-1){break a}c=d+1|0;h=(c>>>0)%3|0?c:d-2|0;c=d-1|0;if((d>>>0)%3|0){break a}c=d+2|0}f=H[a+104>>2];e=H[a+92>>2];g=e+(h<<2)|0;k=f+(H[g>>2]<<2)|0;i=H[k>>2];b:{c:{switch(b|0){case 0:case 1:H[k>>2]=i-1;d=(H[(c<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;if((b|0)!=1){break b}d:{if((c|0)==-1){g=a- -64|0;d=1;break d}g=a- -64|0;d=1;c=H[H[H[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}while(1){e:{e=H[g>>2];if(fa[H[H[e>>2]+36>>2]](e,(c>>>0)/3|0)|0){break e}e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;if((c|0)==-1){d=d+1|0;break e}d=d+1|0;c=H[H[H[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}}break}f=H[a+104>>2];e=H[a+92>>2]}H[(H[(H[a+120>>2]<<2)+e>>2]<<2)+f>>2]=d;f:{if((h|0)==-1){e=1;break f}e=1;c=H[H[H[a+88>>2]+12>>2]+(h<<2)>>2];if((c|0)==-1){break f}f=H[a+108>>2]-f>>2;while(1){d=H[g>>2];h=(c>>>0)/3|0;if(fa[H[H[d>>2]+36>>2]](d,h)|0){break f}d=c+1|0;H[H[a+92>>2]+(((d>>>0)%3|0?d:c-2|0)<<2)>>2]=f;d=H[a+88>>2];g:{if((N(h,3)|0)!=(c|0)){c=c-1|0;break g}c=c+2|0;if((c|0)!=-1){break g}e=e+1|0;break f}e=e+1|0;c=H[H[d+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}break}}H[j+12>>2]=e;h:{c=H[a+108>>2];f=H[a+112>>2];if(c>>>0>>0){H[c>>2]=H[j+12>>2];H[a+108>>2]=c+4;break h}i:{e=H[a+104>>2];d=c-e|0;h=d>>2;c=h+1|0;if(c>>>0<1073741824){f=f-e|0;g=f>>1;f=f>>>0<2147483644?c>>>0>g>>>0?c:g:1073741823;if(f){if(f>>>0>=1073741824){break i}c=ra(f<<2)}else{c=0}h=c+(h<<2)|0;H[h>>2]=H[j+12>>2];if((d|0)>0){sa(c,e,d)}H[a+112>>2]=c+(f<<2);H[a+108>>2]=h+4;H[a+104>>2]=c;if(e){qa(e)}break h}va();X()}ya(1604);X()}break b;case 7:d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-2;break b;case 3:d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-1;break b;case 5:break c;default:break b}}d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-2}j:{k:{c=H[a+116>>2];l:{if((c|0)==-1){break l}h=H[(c<<2)+11200>>2];c=H[a+132>>2];d=(c|0)<(i|0)?c:i;c=H[a+128>>2];e=H[a+136>>2]+N((c|0)>(i|0)?0:d-c|0,12)|0;c=H[e+4>>2];d=H[e+8>>2];if(c>>>0>>0){H[c>>2]=h;H[e+4>>2]=c+4;break l}f=H[e>>2];i=c-f|0;g=i>>2;c=g+1|0;if(c>>>0>=1073741824){break k}d=d-f|0;k=d>>1;d=d>>>0<2147483644?c>>>0>k>>>0?c:k:1073741823;if(d){if(d>>>0>=1073741824){break j}c=ra(d<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=h;if((i|0)>0){sa(c,f,i)}H[e>>2]=c;H[e+4>>2]=g+4;H[e+8>>2]=c+(d<<2);if(!f){break l}qa(f)}H[a+116>>2]=b;da=j+16|0;return}va();X()}ya(1604);X()}function Dg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=a+4|0;if((e|0)!=(b|0)){ic(e,H[b>>2],b+4|0);c=H[b+12>>2];l=b+16|0;e=0;g=a+16|0;a:{if(!H[g+8>>2]){break a}f=H[g>>2];k=g+4|0;H[g>>2]=k;H[H[g+4>>2]+8>>2]=0;H[g+4>>2]=0;H[g+8>>2]=0;d=H[f+4>>2];h=d?d:f;if(!h){ob(g,h);break a}f=H[h+8>>2];b:{if(!f){break b}d=H[f>>2];if((h|0)==(d|0)){H[f>>2]=0;d=H[f+4>>2];if(!d){e=f;break b}while(1){e=d;d=H[d>>2];if(d){continue}d=H[e+4>>2];if(d){continue}break}break b}H[f+4>>2]=0;if(!d){e=f;break b}while(1){e=d;d=H[d>>2];if(d){continue}d=H[e+4>>2];if(d){continue}break}}c:{if((c|0)==(l|0)){f=h;break c}i=c;while(1){f=e;H[h+16>>2]=H[i+16>>2];if((h|0)!=(i|0)){ic(h+20|0,H[i+20>>2],i+24|0)}d:{c=H[k>>2];if(!c){c=k;d=c;break d}e=H[h+16>>2];while(1){e:{if((e|0)>2]){d=H[c>>2];if(d){break e}d=c;break d}d=H[c+4>>2];if(d){break e}d=c+4|0;break d}c=d;continue}}H[h+8>>2]=c;H[h>>2]=0;H[h+4>>2]=0;H[d>>2]=h;e=H[H[g>>2]>>2];if(e){H[g>>2]=e;h=H[d>>2]}ub(H[g+4>>2],h);H[g+8>>2]=H[g+8>>2]+1;e=0;f:{if(!f){break f}d=H[f+8>>2];if(!d){break f}c=H[d>>2];if((f|0)==(c|0)){H[d>>2]=0;c=H[d+4>>2];if(!c){e=d;break f}while(1){e=c;c=H[c>>2];if(c){continue}c=H[e+4>>2];if(c){continue}break}break f}H[d+4>>2]=0;if(!c){e=d;break f}while(1){e=c;c=H[c>>2];if(c){continue}c=H[e+4>>2];if(c){continue}break}}d=H[i+4>>2];g:{if(!d){c=H[i+8>>2];if(H[c>>2]==(i|0)){break g}h=i+8|0;while(1){d=H[h>>2];h=d+8|0;c=H[d+8>>2];if((d|0)!=H[c>>2]){continue}break}break g}while(1){c=d;d=H[c>>2];if(d){continue}break}}if(!f){break c}i=c;h=f;if((c|0)!=(l|0)){continue}break}}ob(g,f);if(!e){break a}while(1){d=H[e+8>>2];if(d){e=d;continue}break}ob(g,e)}if((c|0)!=(l|0)){while(1){k=da-16|0;da=k;j=ra(32);f=c;c=c+16|0;e=H[c>>2];m=j+24|0;H[m>>2]=0;H[m+4>>2]=0;H[j+16>>2]=e;h=j+20|0;H[h>>2]=m;e=H[c+4>>2];i=c+8|0;if((e|0)!=(i|0)){while(1){d=e;c=d+16|0;Ig(k+8|0,h,m,c,c);c=H[d+4>>2];h:{if(!c){e=H[d+8>>2];if((d|0)==H[e>>2]){break h}c=d+8|0;while(1){d=H[c>>2];c=d+8|0;e=H[d+8>>2];if((d|0)!=H[e>>2]){continue}break}break h}while(1){e=c;c=H[c>>2];if(c){continue}break}}if((e|0)!=(i|0)){continue}break}}c=H[g+4>>2];i:{j:{if(c){d=H[j+16>>2];while(1){k:{if((d|0)>2]){e=H[c>>2];if(!e){break j}break k}e=H[c+4>>2];if(e){break k}e=c+4|0;break i}c=e;continue}}c=g+4|0}e=c}H[j+8>>2]=c;H[j>>2]=0;H[j+4>>2]=0;H[e>>2]=j;c=H[H[g>>2]>>2];if(c){H[g>>2]=c;j=H[e>>2]}ub(H[g+4>>2],j);H[g+8>>2]=H[g+8>>2]+1;da=k+16|0;d=H[f+4>>2];l:{if(!d){c=H[f+8>>2];if((f|0)==H[c>>2]){break l}e=f+8|0;while(1){d=H[e>>2];e=d+8|0;c=H[d+8>>2];if((d|0)!=H[c>>2]){continue}break}break l}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(l|0)){continue}break}}ic(a+28|0,H[b+24>>2],b+28|0)}}function Dc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=H[b+4>>2];a:{if(!c){d=H[b+8>>2];if(H[d>>2]==(b|0)){break a}e=b+8|0;while(1){c=H[e>>2];e=c+8|0;d=H[c+8>>2];if((c|0)!=H[d>>2]){continue}break}break a}while(1){d=c;c=H[c>>2];if(c){continue}break}}if(H[a>>2]==(b|0)){H[a>>2]=d}H[a+8>>2]=H[a+8>>2]-1;d=H[a+4>>2];f=b;b:{c:{c=H[b>>2];if(c){a=H[f+4>>2];if(!a){break c}while(1){b=a;a=H[a>>2];if(a){continue}break}}c=H[b+4>>2];if(c){break c}c=0;e=1;break b}H[c+8>>2]=H[b+8>>2];e=0}g=H[b+8>>2];a=H[g>>2];d:{if((b|0)==(a|0)){H[g>>2]=c;if((b|0)==(d|0)){a=0;d=c;break d}a=H[g+4>>2];break d}H[g+4>>2]=c}h=!I[b+12|0];if((b|0)!=(f|0)){g=H[f+8>>2];H[b+8>>2]=g;H[g+(((f|0)!=H[H[f+8>>2]>>2])<<2)>>2]=b;g=H[f>>2];H[b>>2]=g;H[g+8>>2]=b;g=H[f+4>>2];H[b+4>>2]=g;if(g){H[g+8>>2]=b}F[b+12|0]=I[f+12|0];d=(d|0)==(f|0)?b:d}e:{if(h|!d){break e}if(e){while(1){b=I[a+12|0];f:{e=H[a+8>>2];if(H[e>>2]!=(a|0)){if(!b){F[a+12|0]=1;F[e+12|0]=0;c=H[e+4>>2];b=H[c>>2];H[e+4>>2]=b;if(b){H[b+8>>2]=e}H[c+8>>2]=H[e+8>>2];b=H[e+8>>2];H[(((e|0)!=H[b>>2])<<2)+b>>2]=c;H[c>>2]=e;H[e+8>>2]=c;b=a;a=H[a>>2];d=(a|0)==(d|0)?b:d;a=H[a+4>>2]}g:{h:{b=H[a>>2];i:{if(!(I[b+12|0]?0:b)){c=H[a+4>>2];if(I[c+12|0]?0:c){break i}F[a+12|0]=0;a=H[a+8>>2];j:{if((d|0)==(a|0)){a=d;break j}if(I[a+12|0]){break f}}F[a+12|0]=1;break e}c=H[a+4>>2];if(!c){break h}}if(I[c+12|0]){break h}b=a;break g}F[b+12|0]=1;F[a+12|0]=0;c=H[b+4>>2];H[a>>2]=c;if(c){H[c+8>>2]=a}H[b+8>>2]=H[a+8>>2];c=H[a+8>>2];H[((H[c>>2]!=(a|0))<<2)+c>>2]=b;H[b+4>>2]=a;H[a+8>>2]=b;c=a}d=H[b+8>>2];F[b+12|0]=I[d+12|0];F[d+12|0]=1;F[c+12|0]=1;b=H[d+4>>2];a=H[b>>2];H[d+4>>2]=a;if(a){H[a+8>>2]=d}H[b+8>>2]=H[d+8>>2];a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b>>2]=d;H[d+8>>2]=b;break e}if(!b){F[a+12|0]=1;F[e+12|0]=0;b=H[a+4>>2];H[e>>2]=b;if(b){H[b+8>>2]=e}H[a+8>>2]=H[e+8>>2];b=H[e+8>>2];H[(((e|0)!=H[b>>2])<<2)+b>>2]=a;H[a+4>>2]=e;H[e+8>>2]=a;d=(d|0)==(e|0)?a:d;a=H[e>>2]}c=H[a>>2];k:{if(!(!c|I[c+12|0])){b=a;break k}b=H[a+4>>2];if(!(I[b+12|0]?0:b)){F[a+12|0]=0;a=H[a+8>>2];if((a|0)!=(d|0)?I[a+12|0]:0){break f}F[a+12|0]=1;break e}if(c){if(!I[c+12|0]){b=a;break k}b=H[a+4>>2]}F[b+12|0]=1;F[a+12|0]=0;c=H[b>>2];H[a+4>>2]=c;if(c){H[c+8>>2]=a}H[b+8>>2]=H[a+8>>2];c=H[a+8>>2];H[((H[c>>2]!=(a|0))<<2)+c>>2]=b;H[b>>2]=a;H[a+8>>2]=b;c=a}d=H[b+8>>2];F[b+12|0]=I[d+12|0];F[d+12|0]=1;F[c+12|0]=1;b=H[d>>2];a=H[b+4>>2];H[d>>2]=a;if(a){H[a+8>>2]=d}H[b+8>>2]=H[d+8>>2];a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b+4>>2]=d;H[d+8>>2]=b;break e}b=a;a=H[a+8>>2];a=H[(((b|0)==H[a>>2])<<2)+a>>2];continue}}F[c+12|0]=1}a=H[f+28>>2];if(a){H[f+32>>2]=a;qa(a)}if(F[f+27|0]<0){qa(H[f+16>>2])}qa(f)}function Wf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=H[a+8>>2];c=H[a+4>>2];if((d-c|0)/136>>>0>=b>>>0){d=a;if(b){a=N(b,136)+c|0;while(1){H[c>>2]=-1;df(c+4|0);H[c+104>>2]=0;H[c+108>>2]=0;F[c+100|0]=1;H[c+112>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+128>>2]=0;c=c+136|0;if((a|0)!=(c|0)){continue}break}c=a}H[d+4>>2]=c;return}a:{b:{c:{f=H[a>>2];g=(c-f|0)/136|0;c=g+b|0;if(c>>>0<31580642){d=(d-f|0)/136|0;f=d<<1;f=d>>>0<15790320?c>>>0>f>>>0?c:f:31580641;if(f){if(f>>>0>=31580642){break c}e=ra(N(f,136))}d=N(g,136)+e|0;g=d+N(b,136)|0;c=d;while(1){H[c>>2]=-1;df(c+4|0);H[c+104>>2]=0;H[c+108>>2]=0;F[c+100|0]=1;H[c+112>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+128>>2]=0;c=c+136|0;if((g|0)!=(c|0)){continue}break}f=N(f,136)+e|0;b=H[a>>2];c=H[a+4>>2];if((b|0)==(c|0)){break b}while(1){d=d-136|0;c=c-136|0;H[d>>2]=H[c>>2];H[d+4>>2]=H[c+4>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=H[c+12>>2];H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[d+16>>2]=H[c+16>>2];H[d+20>>2]=H[c+20>>2];H[d+24>>2]=H[c+24>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;e=I[c+28|0];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;F[d+28|0]=e;H[d+32>>2]=H[c+32>>2];H[d+36>>2]=H[c+36>>2];H[d+40>>2]=H[c+40>>2];H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[d+52>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+44>>2]=H[c+44>>2];H[d+48>>2]=H[c+48>>2];H[d+52>>2]=H[c+52>>2];H[c+52>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;e=d- -64|0;H[e>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+56>>2]=H[c+56>>2];H[d+60>>2]=H[c+60>>2];h=e;e=c- -64|0;H[h>>2]=H[e>>2];H[e>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[d+68>>2]=H[c+68>>2];e=H[c+72>>2];H[d+84>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+72>>2]=e;H[d+76>>2]=H[c+76>>2];H[d+80>>2]=H[c+80>>2];H[d+84>>2]=H[c+84>>2];H[c+84>>2]=0;H[c+76>>2]=0;H[c+80>>2]=0;H[d+96>>2]=0;H[d+88>>2]=0;H[d+92>>2]=0;H[d+88>>2]=H[c+88>>2];H[d+92>>2]=H[c+92>>2];H[d+96>>2]=H[c+96>>2];H[c+96>>2]=0;H[c+88>>2]=0;H[c+92>>2]=0;e=I[c+100|0];H[d+112>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;F[d+100|0]=e;H[d+104>>2]=H[c+104>>2];H[d+108>>2]=H[c+108>>2];H[d+112>>2]=H[c+112>>2];H[c+112>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;H[d+124>>2]=0;H[d+116>>2]=0;H[d+120>>2]=0;H[d+116>>2]=H[c+116>>2];H[d+120>>2]=H[c+120>>2];H[d+124>>2]=H[c+124>>2];H[c+124>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[d+128>>2]=H[c+128>>2];H[d+132>>2]=H[c+132>>2];if((b|0)!=(c|0)){continue}break}H[a+8>>2]=f;c=H[a+4>>2];H[a+4>>2]=g;b=H[a>>2];H[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=H[c-20>>2];if(a){H[c-16>>2]=a;qa(a)}a=H[c-32>>2];if(a){H[c-28>>2]=a;qa(a)}oc(c-132|0);c=c-136|0;if((c|0)!=(b|0)){continue}break}break a}va();X()}ya(1604);X()}H[a+8>>2]=f;H[a+4>>2]=g;H[a>>2]=d}if(b){qa(b)}}function Of(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(H[H[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=H[a+48>>2];H[a+52>>2]=c;a:{if((c|0)!=H[a+56>>2]){H[c>>2]=b;H[a+52>>2]=c+4;break a}e=ra(4);H[e>>2]=b;f=e+4|0;H[a+56>>2]=f;H[a+52>>2]=f;H[a+48>>2]=e;if(!c){break a}qa(c)}e=-1;f=H[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=H[H[f>>2]+(g<<2)>>2]}b:{h=b-N(d,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}d=H[H[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=H[a+36>>2];f=c+(e>>>3&536870908)|0;i=H[f>>2];j=1<>2]=i|j;nb(a+8|0,e,g);c=H[a+36>>2]}c=(d>>>3&536870908)+c|0;e=H[c>>2];f=1<>2]=e|f;nb(a+8|0,d,(h?-1:2)+b|0)}c=H[a+52>>2];if((c|0)==H[a+48>>2]){return 1}j=a+8|0;while(1){c=c-4|0;b=H[c>>2];d=(b>>>0)/3|0;c:{d:{if((b|0)==-1){break d}e=H[a+24>>2]+(d>>>3&268435452)|0;f=H[e>>2];d=1<>2]=d|f;while(1){d=H[a+4>>2];c=H[H[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=H[a+36>>2]+(c>>>3&536870908)|0;f=H[e>>2];g=1<>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=H[H[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}H[e>>2]=f|g;nb(j,c,b);break f}H[e>>2]=f|g;nb(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=H[H[H[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];h=c>>>5|0;d=H[e+(h<<2)>>2];break e}c=-1;f=H[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=H[H[f+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=H[H[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;d=(c>>>0)/3|0;k:{g=(c|0)==-1;if(!g){e=H[a+24>>2];g=g?-1:d;h=g>>>5|0;d=H[e+(h<<2)>>2];g=1<>2];h=f>>>5|0;d=H[e+(h<<2)>>2];if(!(g&d)){break e}}c=H[a+52>>2]-4|0;H[a+52>>2]=c;break c}if(i){b=c;break e}if(H[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=H[a+52>>2];H[d-4>>2]=b;if((d|0)!=H[a+56>>2]){H[d>>2]=c;c=d+4|0;break d}l:{e=H[a+48>>2];d=d-e|0;g=d>>2;b=g+1|0;if(b>>>0<1073741824){f=d>>1;f=d>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break l}b=ra(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;c=g+4|0;if((d|0)>0){sa(b,e,d)}H[a+56>>2]=b+(f<<2);H[a+52>>2]=c;H[a+48>>2]=b;if(!e){break c}qa(e);c=H[a+52>>2];break c}va();X()}ya(1604);X()}H[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}H[a+52>>2]=c}if(H[a+48>>2]!=(c|0)){continue}break}}return 1} +function nf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=da+-64|0;da=e;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+48>>2]=1065353216;c=H[a+80>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}f=c<<2;k=ra(f);H[e+16>>2]=k;c=f+k|0;H[e+24>>2]=c;ta(k,0,f);H[e+20>>2]=c;while(1){c=H[H[b>>2]>>2];j=H[b+48>>2]+xl(H[b+40>>2],H[b+44>>2],i,0)|0;c=c+j|0;n=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[e+28>>2]=n;c:{d:{e:{if(!g){break e}d=H[e+32>>2];j=n^318;l=Al(g)>>>0>1;c=j&g-1;f:{if(!l){break f}c=j;if(c>>>0>>0){break f}c=(j>>>0)%(g>>>0)|0}f=c;c=H[d+(f<<2)>>2];if(!c){break e}d=H[c>>2];if(!d){break e}if(!l){l=g-1|0;while(1){c=H[d+4>>2];g:{if((c|0)!=(j|0)){if((f|0)==(c&l)){break g}break e}if((n|0)==H[d+8>>2]){break d}}d=H[d>>2];if(d){continue}break}break e}while(1){c=H[d+4>>2];h:{if((c|0)!=(j|0)){if(c>>>0>=g>>>0){c=(c>>>0)%(g>>>0)|0}if((c|0)==(f|0)){break h}break e}if((n|0)==H[d+8>>2]){break d}}d=H[d>>2];if(d){continue}break}}H[e+12>>2]=m;H[e+8>>2]=n;c=e+8|0;lf(e+56|0,e+32|0,c,c);c=H[a+40>>2];sa(H[H[a>>2]>>2]+N(c,m)|0,e+28|0,c);k=H[e+16>>2];H[k+(i<<2)>>2]=m;m=m+1|0;break c}H[(i<<2)+k>>2]=H[d+12>>2]}c=i+1|0;h=c?h:h+1|0;i=c;d=H[a+80>>2];if(!h&d>>>0>c>>>0){g=H[e+36>>2];continue}break}if((d|0)==(m|0)){break b}i:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break i}i=H[e+16>>2];b=b>>2;b=b>>>0>1?b:1;c=b&3;j=0;d=0;if(b-1>>>0>=3){h=b&-4;k=0;while(1){f=d<<2;b=f+l|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|4)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|8)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|12)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];d=d+4|0;k=k+4|0;if((h|0)!=(k|0)){continue}break}}if(!c){break i}while(1){b=l+(d<<2)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];d=d+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}break i}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;j:{if(b>>>0>>0){Ma(a+68|0,d-b|0,2204);g=H[a+68>>2];d=H[a+80>>2];break j}if(b>>>0<=d>>>0){break j}H[a+72>>2]=(d<<2)+g}if(!d){break i}i=H[e+16>>2];j=0;b=0;if(d-1>>>0>=3){c=d&-4;k=0;while(1){f=b<<2;H[f+g>>2]=H[i+f>>2];h=f|4;H[h+g>>2]=H[i+h>>2];h=f|8;H[h+g>>2]=H[i+h>>2];h=f|12;H[h+g>>2]=H[i+h>>2];b=b+4|0;k=k+4|0;if((c|0)!=(k|0)){continue}break}}c=d&3;if(!c){break i}while(1){h=b<<2;H[h+g>>2]=H[i+h>>2];b=b+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}H[a+80>>2]=m}a=H[e+16>>2];if(a){qa(a)}d=H[e+40>>2];if(d){while(1){a=H[d>>2];qa(d);d=a;if(d){continue}break}}a=H[e+32>>2];H[e+32>>2]=0;if(a){qa(a)}da=e- -64|0;return m}va();X()}function gl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=da-16|0;da=l;a:{f=H[a+4>>2];b:{c:{if(f){if(fa[H[H[a>>2]+52>>2]](a,b,H[H[f+4>>2]+80>>2])|0){break c}break b}if(!(fa[H[H[a>>2]+52>>2]](a,b,0)|0)){break b}}n=1;if(!I[a+28|0]){break b}d=H[a+32>>2];i=H[a+8>>2];c=H[i+80>>2];f=0;H[l+8>>2]=0;H[l>>2]=0;H[l+4>>2]=0;if(c){if(c>>>0>=1073741824){break a}c=c<<2;f=ra(c);H[l>>2]=f;e=c+f|0;H[l+8>>2]=e;ta(f,0,c);H[l+4>>2]=e}e=H[b>>2];b=H[b+4>>2]-e|0;d:{if(!b){break d}b=b>>2;if(I[i+84|0]){c=b>>>0>1?b:1;h=c&3;b=0;if(c-1>>>0>=3){j=c&-4;c=0;while(1){H[(H[e+(b<<2)>>2]<<2)+f>>2]=b;k=b|1;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;k=b|2;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;k=b|3;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;b=b+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}if(!h){break d}while(1){H[(H[e+(b<<2)>>2]<<2)+f>>2]=b;b=b+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}break d}g=b>>>0>1?b:1;j=g&3;h=H[i+68>>2];c=0;b=0;if(g-1>>>0>=3){k=g&-4;g=0;while(1){H[(H[h+(H[e+(b<<2)>>2]<<2)>>2]<<2)+f>>2]=b;m=b|1;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;m=b|2;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;m=b|3;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;b=b+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}if(!j){break d}while(1){H[(H[h+(H[e+(b<<2)>>2]<<2)>>2]<<2)+f>>2]=b;b=b+1|0;c=c+1|0;if((j|0)!=(c|0)){continue}break}}e:{if(!I[d+84|0]){break e}b=H[H[H[a+4>>2]+4>>2]+80>>2];F[d+84|0]=0;e=H[d+68>>2];c=H[d+72>>2]-e>>2;if(c>>>0>>0){Ma(d+68|0,b-c|0,2764);break e}if(b>>>0>=c>>>0){break e}H[d+72>>2]=e+(b<<2)}h=H[H[H[a+4>>2]+4>>2]+80>>2];f:{if(!h){break f}e=H[d+68>>2];if(I[i+84|0]){a=0;b=0;if(h-1>>>0>=3){g=h&-4;c=0;while(1){d=b<<2;H[d+e>>2]=H[f+d>>2];i=d|4;H[i+e>>2]=H[f+i>>2];i=d|8;H[i+e>>2]=H[f+i>>2];d=d|12;H[d+e>>2]=H[f+d>>2];b=b+4|0;c=c+4|0;if((g|0)!=(c|0)){continue}break}}c=h&3;if(!c){break f}while(1){d=b<<2;H[d+e>>2]=H[f+d>>2];b=b+1|0;a=a+1|0;if((c|0)!=(a|0)){continue}break}break f}a=H[i+68>>2];c=0;b=0;if(h-1>>>0>=3){i=h&-4;g=0;while(1){d=b<<2;H[d+e>>2]=H[(H[a+d>>2]<<2)+f>>2];j=d|4;H[j+e>>2]=H[(H[a+j>>2]<<2)+f>>2];j=d|8;H[j+e>>2]=H[(H[a+j>>2]<<2)+f>>2];d=d|12;H[d+e>>2]=H[(H[a+d>>2]<<2)+f>>2];b=b+4|0;g=g+4|0;if((i|0)!=(g|0)){continue}break}}d=h&3;if(!d){break f}while(1){g=b<<2;H[g+e>>2]=H[(H[a+g>>2]<<2)+f>>2];b=b+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}a=H[l>>2];if(!a){break b}qa(a)}da=l+16|0;return n|0}va();X()}function ld(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=da-32|0;da=i;H[a+4>>2]=0;H[a+8>>2]=0;c=a+16|0;H[c>>2]=0;H[c+4>>2]=0;l=a+4|0;H[a>>2]=l;H[a+12>>2]=c;c=H[b>>2];k=b+4|0;if((c|0)!=(k|0)){while(1){f=da-16|0;da=f;g=c;c=c+16|0;h=Hg(a,l,f+12|0,f+8|0,c);d=H[h>>2];if(d){c=0}else{d=ra(40);e=d+16|0;a:{if(F[c+11|0]>=0){m=H[c+4>>2];H[e>>2]=H[c>>2];H[e+4>>2]=m;H[e+8>>2]=H[c+8>>2];break a}Ia(e,H[c>>2],H[c+4>>2])}H[d+36>>2]=0;e=d+28|0;H[e>>2]=0;H[e+4>>2]=0;eb(e,H[c+16>>2]-H[c+12>>2]|0);j=H[e>>2];e=H[c+12>>2];sa(j,e,H[c+16>>2]-e|0);H[d+8>>2]=H[f+12>>2];H[d>>2]=0;H[d+4>>2]=0;H[h>>2]=d;c=H[H[a>>2]>>2];if(c){H[a>>2]=c;c=H[h>>2]}else{c=d}ub(H[a+4>>2],c);H[a+8>>2]=H[a+8>>2]+1;c=1}F[i+28|0]=c;H[i+24>>2]=d;da=f+16|0;d=H[g+4>>2];b:{if(!d){c=H[g+8>>2];if((g|0)==H[c>>2]){break b}d=g+8|0;while(1){g=H[d>>2];d=g+8|0;c=H[g+8>>2];if((g|0)!=H[c>>2]){continue}break}break b}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(k|0)){continue}break}}c=H[b+12>>2];m=b+16|0;if((c|0)!=(m|0)){f=a+12|0;while(1){g=c;n=ra(24);ld(n,H[c+28>>2]);b=c+16|0;H[i+16>>2]=b;a=H[f+4>>2];c:{d:{if(a){c=I[b+11|0];d=c<<24>>24<0;e=d?H[b>>2]:b;d=d?H[b+4>>2]:c;b=f+4|0;while(1){c=I[a+27|0];h=c<<24>>24<0;c=h?H[a+20>>2]:c;l=c>>>0>>0;e:{f:{g:{h:{i:{k=l?c:d;j:{if(k){j=a+16|0;h=h?H[j>>2]:j;j=Ga(e,h,k);if(!j){if(c>>>0>d>>>0){break j}break i}if((j|0)>=0){break i}break j}if(c>>>0<=d>>>0){break h}}c=H[a>>2];if(c){break e}break d}c=Ga(h,e,k);if(c){break g}}if(l){break f}break c}if((c|0)>=0){break c}}b=a+4|0;c=H[a+4>>2];if(!c){break c}a=b}b=a;a=c;continue}}a=f+4|0}b=a}c=H[b>>2];if(c){a=0}else{c=ra(32);e=c+16|0;d=H[i+16>>2];k:{if(F[d+11|0]>=0){h=H[d+4>>2];H[e>>2]=H[d>>2];H[e+4>>2]=h;H[e+8>>2]=H[d+8>>2];break k}Ia(e,H[d>>2],H[d+4>>2])}H[c+8>>2]=a;H[c>>2]=0;H[c+4>>2]=0;H[c+28>>2]=0;H[b>>2]=c;a=H[H[f>>2]>>2];if(a){H[f>>2]=a;a=H[b>>2]}else{a=c}ub(H[f+4>>2],a);H[f+8>>2]=H[f+8>>2]+1;a=1}F[i+28|0]=a;H[i+24>>2]=c;b=H[i+24>>2];a=H[b+28>>2];H[b+28>>2]=n;if(a){mb(a+12|0,H[a+16>>2]);lb(a,H[a+4>>2]);qa(a)}d=H[g+4>>2];l:{if(!d){c=H[g+8>>2];if((g|0)==H[c>>2]){break l}d=g+8|0;while(1){a=H[d>>2];d=a+8|0;c=H[a+8>>2];if((a|0)!=H[c>>2]){continue}break}break l}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(m|0)){continue}break}}da=i+32|0}function Hb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=da-32|0;da=g;a:{b:{if(H[a+8>>2]<<5>>>0>=b>>>0){break b}H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;if((b|0)<0){break a}b=(b-1>>>5|0)+1|0;c=ra(b<<2);H[g+24>>2]=b;H[g+20>>2]=0;H[g+16>>2]=c;b=H[a>>2];H[g+12>>2]=0;H[g+8>>2]=b;c=H[a+4>>2];H[g+4>>2]=c&31;H[g>>2]=b+(c>>>3&536870908);f=da-32|0;da=f;j=H[g+4>>2];e=H[g+12>>2];k=H[g>>2];i=H[g+8>>2];b=(j-e|0)+(k-i<<3)|0;d=H[g+20>>2];h=b+d|0;H[g+20>>2]=h;c:{if(!(!d|(h-1^d-1)>>>0>31)){c=H[g+16>>2];break c}c=H[g+16>>2];if(h>>>0<=32){H[c>>2]=0;break c}H[(h-1>>>3&536870908)+c>>2]=0}c=(d>>>3&536870908)+c|0;d=d&31;d:{if((d|0)==(e|0)){if((b|0)<=0){break d}if(e){h=32-e|0;d=(b|0)<(h|0)?b:h;h=-1<>>h-d;H[c>>2]=H[c>>2]&(h^-1)|h&H[i>>2];b=b-d|0;i=i+4|0;c=c+(d+e>>>3&536870908)|0}j=c;e=(b|0)/32|0;c=e<<2;d=xa(j,i,c);b=b-(e<<5)|0;if((b|0)<=0){break d}e=c+d|0;b=-1>>>32-b|0;H[e>>2]=H[e>>2]&(b^-1)|b&H[c+i>>2];break d}H[f+28>>2]=e;H[f+24>>2]=i;H[f+20>>2]=j;H[f+16>>2]=k;H[f+12>>2]=d;H[f+8>>2]=c;b=H[f+28>>2];c=H[f+24>>2];i=(H[f+20>>2]-b|0)+(H[f+16>>2]-c<<3)|0;e:{if((i|0)<=0){b=H[f+12>>2];break e}f:{if(!b){b=H[f+12>>2];break f}e=H[f+12>>2];j=32-e|0;k=32-b|0;d=(i|0)<(k|0)?i:k;h=d>>>0>j>>>0?j:d;l=H[f+8>>2];m=H[l>>2]&(-1<>>j-h^-1);j=H[c>>2]&(-1<>>k-d);H[l>>2]=m|(b>>>0>>0?j<>>b-e|0);c=e+h|0;b=c&31;H[f+12>>2]=b;e=l+(c>>>3&536870908)|0;H[f+8>>2]=e;c=d-h|0;if((c|0)>0){H[e>>2]=H[e>>2]&(-1>>>32-c^-1)|j>>>h+H[f+28>>2];H[f+12>>2]=c;b=c}i=i-d|0;c=H[f+24>>2]+4|0;H[f+24>>2]=c}e=32-b|0;h=-1<=32){j=h^-1;while(1){d=H[f+8>>2];c=H[c>>2];H[d>>2]=j&H[d>>2]|c<>2]=d+4;H[d+4>>2]=h&H[d+4>>2]|c>>>e;c=H[f+24>>2]+4|0;H[f+24>>2]=c;d=i>>>0>63;i=i-32|0;if(d){continue}break}}if((i|0)<=0){break e}d=H[f+8>>2];j=e;e=(e|0)<(i|0)?e:i;j=H[d>>2]&(h&-1>>>j-e^-1);h=H[c>>2]&-1>>>32-i;H[d>>2]=j|h<>2]=b;d=d+(c>>>3&536870908)|0;H[f+8>>2]=d;c=i-e|0;if((c|0)<=0){break e}H[d>>2]=H[d>>2]&(-1>>>32-c^-1)|h>>>e;H[f+12>>2]=c;b=c}c=H[f+8>>2];H[f+4>>2]=b;H[f>>2]=c}da=f+32|0;b=H[a>>2];H[a>>2]=H[g+16>>2];H[g+16>>2]=b;c=H[a+4>>2];H[a+4>>2]=H[g+20>>2];H[g+20>>2]=c;c=H[a+8>>2];H[a+8>>2]=H[g+24>>2];H[g+24>>2]=c;if(!b){break b}qa(b)}da=g+32|0;return}La();X()}function Rj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=da-16|0;da=h;b=H[a+64>>2];a:{if(!b){break a}i=fa[H[H[b>>2]+32>>2]](b)|0;if(!i){break a}m=(H[i+28>>2]-H[i+24>>2]>>2)-H[i+44>>2]|0;b=H[a+56>>2];d=H[b+8>>2];b:{if((H[b+12>>2]-d|0)<5){break b}H[h+8>>2]=0;H[h>>2]=0;H[h+4>>2]=0;c:{d:{while(1){e:{f:{if(!H[H[(c<<2)+d>>2]+56>>2]){break f}j=fa[H[H[a>>2]+56>>2]](a,c)|0;if(!j){break f}if(H[h+8>>2]!=(e|0)){H[e>>2]=j;e=e+4|0;H[h+4>>2]=e;break f}f=H[h>>2];d=e-f|0;e=d>>2;b=e+1|0;if(b>>>0>=1073741824){break e}g=d>>1;g=d>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break d}b=ra(g<<2)}else{b=0}e=b+(e<<2)|0;H[e>>2]=j;e=e+4|0;if((d|0)>0){sa(b,f,d)}H[h+8>>2]=b+(g<<2);H[h+4>>2]=e;H[h>>2]=b;if(!f){break f}qa(f)}l=H[a+56>>2];d=H[l+8>>2];c=c+1|0;if((c|0)>2]-d>>2){continue}break c}break}va();X()}ya(1604);X()}j=H[h>>2];o=H[i+24>>2];b=H[i+28>>2]-o|0;if(b){b=b>>2;q=b>>>0>1?b:1;p=e-j|0;b=p>>2;r=b>>>0>1?b:1;while(1){f=H[(n<<2)+o>>2];if((f|0)!=-1){g:{if((f|0)<0){c=(f>>>0)%3|0;b=-1;break g}b=(f>>>0)/3|0;c=f-N(b,3)|0;b=H[(H[l+96>>2]+N(b,12)|0)+(c<<2)>>2]}h:{i:{if(c){c=f-1|0;break i}c=f+2|0;if((c|0)!=-1){break i}g=0;break h}g=0;c=H[H[i+12>>2]+(c<<2)>>2];if((c|0)==-1){break h}j:{if((c>>>0)%3|0){d=c-1|0;break j}d=c+2|0;if((d|0)==-1){break h}}e=f;while(1){c=(d|0)<0?-1:H[(H[l+96>>2]+N((d>>>0)/3|0,12)|0)+((d>>>0)%3<<2)>>2];k:{if((b|0)==(c|0)){c=0;if(!p){c=b;break k}l:{while(1){k=H[H[(c<<2)+j>>2]+28>>2];if(H[k+(d<<2)>>2]!=H[k+(e<<2)>>2]){break l}c=c+1|0;if((r|0)!=(c|0)){continue}break}c=b;break k}c=b}g=g+1|0}if((d|0)==(f|0)|(d|0)==-1){break h}m:{if((d>>>0)%3|0){e=d-1|0;break m}e=d+2|0;if((e|0)==-1){break h}}k=H[H[i+12>>2]+(e<<2)>>2];if((k|0)==-1){break h}b=c;e=d;c=k+((k>>>0)%3|0?-1:2)|0;d=c;if((c|0)!=-1){continue}break}}c=1;b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;n:{if((b|0)==-1){break n}b=H[H[i+12>>2]+(b<<2)>>2];if((b|0)==-1){break n}c=b+1|0;c=(((c>>>0)%3|0?c:b-2|0)|0)==-1}m=(g+m|0)-((c^-1)&(g|0)!=0)|0}n=n+1|0;if((q|0)!=(n|0)){continue}break}}if(!j){break b}qa(j)}H[a+52>>2]=m}da=h+16|0}function Pe(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=da-128|0;da=j;a:{b:{c:{if(!Kb(f,g,h,i,0,0,0,0)){break c}m=i&65535;n=i>>>16&32767;d:{e:{if((n|0)!=32767){l=4;if(n){break e}l=f|h|(g|m)?3:2;break d}l=!(f|h|(g|m))}}r=e>>>16|0;o=r&32767;if((o|0)==32767){break c}if(l){break b}}Ha(j+16|0,b,c,d,e,f,g,h,i);e=H[j+16>>2];d=H[j+20>>2];c=H[j+24>>2];b=H[j+28>>2];Fe(j,e,d,c,b,e,d,c,b);d=H[j+8>>2];e=H[j+12>>2];h=H[j>>2];i=H[j+4>>2];break a}m=e&65535|o<<16;p=m;l=d;m=h;q=i>>>16&32767;k=i&65535|q<<16;if((Kb(b,c,l,p,f,g,h,k)|0)<=0){if(Kb(b,c,l,p,f,g,m,k)){h=b;i=c;break a}Ha(j+112|0,b,c,d,e,0,0,0,0);d=H[j+120>>2];e=H[j+124>>2];h=H[j+112>>2];i=H[j+116>>2];break a}if(o){i=c;h=b}else{Ha(j+96|0,b,c,l,p,0,0,0,1081540608);h=H[j+108>>2];p=h;l=H[j+104>>2];o=(h>>>16|0)-120|0;i=H[j+100>>2];h=H[j+96>>2]}if(!q){Ha(j+80|0,f,g,m,k,0,0,0,1081540608);f=H[j+92>>2];k=f;m=H[j+88>>2];q=(k>>>16|0)-120|0;g=H[j+84>>2];f=H[j+80>>2]}s=k&65535|65536;p=p&65535|65536;if((o|0)>(q|0)){while(1){t=l-m|0;k=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;n=(p-((l>>>0>>0)+s|0)|0)-(t>>>0>>0)|0;k=t-k|0;f:{if((n|0)>0|(n|0)>=0){l=h;h=h-f|0;i=i-((f>>>0>l>>>0)+g|0)|0;if(!(h|k|(i|n))){Ha(j+32|0,b,c,d,e,0,0,0,0);d=H[j+40>>2];e=H[j+44>>2];h=H[j+32>>2];i=H[j+36>>2];break a}n=n<<1|k>>>31;l=k<<1|i>>>31;p=n;break f}n=p<<1|l>>>31;l=l<<1|i>>>31;p=n}n=i<<1|h>>>31;h=h<<1;i=n;o=o-1|0;if((q|0)<(o|0)){continue}break}o=q}q=l-m|0;n=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;k=(p-((l>>>0>>0)+s|0)|0)-(q>>>0>>0)|0;m=q-n|0;g:{if((k|0)<0){m=l;k=p;break g}l=h;h=h-f|0;i=i-((f>>>0>l>>>0)+g|0)|0;if(h|m|(i|k)){break g}Ha(j+48|0,b,c,d,e,0,0,0,0);d=H[j+56>>2];e=H[j+60>>2];h=H[j+48>>2];i=H[j+52>>2];break a}if((k|0)==65535|k>>>0<65535){while(1){b=i>>>31|0;o=o-1|0;p=i<<1|h>>>31;h=h<<1;i=p;c=b;b=m;k=k<<1|b>>>31;m=c|b<<1;if(k>>>0<65536){continue}break}}b=r&32768;if((o|0)<=0){Ha(j- -64|0,h,i,m,k&65535|(b|o+120)<<16,0,0,0,1065811968);d=H[j+72>>2];e=H[j+76>>2];h=H[j+64>>2];i=H[j+68>>2];break a}d=m;e=k&65535|(b|o)<<16}H[a>>2]=h;H[a+4>>2]=i;H[a+8>>2]=d;H[a+12>>2]=e;da=j+128|0}function ff(a,b){var c=0,d=0,e=0,f=0;f=da-16|0;da=f;e=ra(32);H[f>>2]=e;H[f+4>>2]=30;H[f+8>>2]=-2147483616;F[e+30|0]=0;c=I[1352]|I[1353]<<8|(I[1354]<<16|I[1355]<<24);d=I[1348]|I[1349]<<8|(I[1350]<<16|I[1351]<<24);F[e+22|0]=d;F[e+23|0]=d>>>8;F[e+24|0]=d>>>16;F[e+25|0]=d>>>24;F[e+26|0]=c;F[e+27|0]=c>>>8;F[e+28|0]=c>>>16;F[e+29|0]=c>>>24;c=I[1346]|I[1347]<<8|(I[1348]<<16|I[1349]<<24);d=I[1342]|I[1343]<<8|(I[1344]<<16|I[1345]<<24);F[e+16|0]=d;F[e+17|0]=d>>>8;F[e+18|0]=d>>>16;F[e+19|0]=d>>>24;F[e+20|0]=c;F[e+21|0]=c>>>8;F[e+22|0]=c>>>16;F[e+23|0]=c>>>24;c=I[1338]|I[1339]<<8|(I[1340]<<16|I[1341]<<24);d=I[1334]|I[1335]<<8|(I[1336]<<16|I[1337]<<24);F[e+8|0]=d;F[e+9|0]=d>>>8;F[e+10|0]=d>>>16;F[e+11|0]=d>>>24;F[e+12|0]=c;F[e+13|0]=c>>>8;F[e+14|0]=c>>>16;F[e+15|0]=c>>>24;c=I[1330]|I[1331]<<8|(I[1332]<<16|I[1333]<<24);d=I[1326]|I[1327]<<8|(I[1328]<<16|I[1329]<<24);F[e|0]=d;F[e+1|0]=d>>>8;F[e+2|0]=d>>>16;F[e+3|0]=d>>>24;F[e+4|0]=c;F[e+5|0]=c>>>8;F[e+6|0]=c>>>16;F[e+7|0]=c>>>24;e=a+4|0;tb(e,f,b);if(F[f+11|0]<0){qa(H[f>>2])}a=ra(32);H[f>>2]=a;H[f+4>>2]=29;H[f+8>>2]=-2147483616;F[a+29|0]=0;c=I[1420]|I[1421]<<8|(I[1422]<<16|I[1423]<<24);d=I[1416]|I[1417]<<8|(I[1418]<<16|I[1419]<<24);F[a+21|0]=d;F[a+22|0]=d>>>8;F[a+23|0]=d>>>16;F[a+24|0]=d>>>24;F[a+25|0]=c;F[a+26|0]=c>>>8;F[a+27|0]=c>>>16;F[a+28|0]=c>>>24;c=I[1415]|I[1416]<<8|(I[1417]<<16|I[1418]<<24);d=I[1411]|I[1412]<<8|(I[1413]<<16|I[1414]<<24);F[a+16|0]=d;F[a+17|0]=d>>>8;F[a+18|0]=d>>>16;F[a+19|0]=d>>>24;F[a+20|0]=c;F[a+21|0]=c>>>8;F[a+22|0]=c>>>16;F[a+23|0]=c>>>24;c=I[1407]|I[1408]<<8|(I[1409]<<16|I[1410]<<24);d=I[1403]|I[1404]<<8|(I[1405]<<16|I[1406]<<24);F[a+8|0]=d;F[a+9|0]=d>>>8;F[a+10|0]=d>>>16;F[a+11|0]=d>>>24;F[a+12|0]=c;F[a+13|0]=c>>>8;F[a+14|0]=c>>>16;F[a+15|0]=c>>>24;c=I[1399]|I[1400]<<8|(I[1401]<<16|I[1402]<<24);d=I[1395]|I[1396]<<8|(I[1397]<<16|I[1398]<<24);F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;F[a+4|0]=c;F[a+5|0]=c>>>8;F[a+6|0]=c>>>16;F[a+7|0]=c>>>24;tb(e,f,b);if(F[f+11|0]<0){qa(H[f>>2])}da=f+16|0}function Qd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Qd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Qd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}} +function Xd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Xd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Xd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Wd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Wd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Wd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Vd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Vd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Vd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Ud(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Ud(a,j,i,d,o,q,g,h);a=i;b=l;break g}Ud(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Td(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Td(a,j,i,d,o,q,g,h);a=i;b=l;break g}Td(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Sd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Sd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Sd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Rd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Rd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Rd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Pd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Pd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Pd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Od(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Od(a,j,i,d,o,q,g,h);a=i;b=l;break g}Od(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Nd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Nd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Nd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Md(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Md(a,j,i,d,o,q,g,h);a=i;b=l;break g}Md(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Ld(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Ld(a,j,i,d,o,q,g,h);a=i;b=l;break g}Ld(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Kd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Kd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Kd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Jd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Jd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Jd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Id(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Id(a,j,i,d,o,q,g,h);a=i;b=l;break g}Id(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Hd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Hd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Hd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Gd(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}ua();X()}Va(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){xa(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;xa(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Gd(a,j,i,d,o,q,g,h);a=i;b=l;break g}Gd(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Hk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;H[a+8>>2]=e;h=a+32|0;f=H[h>>2];g=H[a+36>>2]-f>>2;a:{if(g>>>0>>0){Ea(h,e-g|0);break a}if(e>>>0>=g>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){h=g;break c}j=1;f=d-1|0;o=f&1;d:{if((d|0)==2){h=g;break d}l=f&-2;f=0;h=g;while(1){i=(j<<2)+b|0;m=H[i+4>>2];k=H[i>>2];n=(k|0)<(h|0);h=n?k:h;i=(h|0)>(m|0);h=i?m:h;g=n?g:(g|0)<(k|0)?k:g;g=i?g:(g|0)<(m|0)?m:g;j=j+2|0;f=f+2|0;if((l|0)!=(f|0)){continue}break}}if(!o){break c}i=H[(j<<2)+b>>2];f=(i|0)<(h|0);h=f?i:h;g=f?g:(g|0)<(i|0)?i:g}H[a+16>>2]=g;H[a+12>>2]=h;f=(g>>31)-((h>>31)+(g>>>0>>0)|0)|0;h=g-h|0;if(!f&h>>>0>2147483646|f){break b}h=h+1|0;H[a+20>>2]=h;f=h>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(h&1){break b}H[a+24>>2]=f-1}d=d-e|0;i=H[a+8>>2];if(!((d|0)<=0|(i|0)<=0)){n=0-e<<2;while(1){if((i|0)>0){f=d<<2;o=f+c|0;l=b+f|0;f=l+n|0;j=0;while(1){h=H[a+32>>2];g=0;if((i|0)>0){while(1){k=g<<2;m=H[k+f>>2];i=H[a+16>>2];e:{if((m|0)>(i|0)){H[h+k>>2]=i;break e}k=h+k|0;i=H[a+12>>2];if((i|0)>(m|0)){H[k>>2]=i;break e}H[k>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}g=j<<2;f=g+o|0;g=H[g+l>>2]-H[g+h>>2]|0;H[f>>2]=g;f:{if((g|0)>2]){g=g+H[a+20>>2]|0}else{if((g|0)<=H[a+24>>2]){break f}g=g-H[a+20>>2]|0}H[f>>2]=g}f=h;i=H[a+8>>2];j=j+1|0;if((i|0)>(j|0)){continue}break}}d=d-e|0;if((d|0)>0){continue}break}}d=(e&1073741823)!=(e|0)?-1:e<<2;e=ta(ra(d),0,d);if((i|0)>0){j=0;f=e;while(1){h=H[a+32>>2];g=0;if((i|0)>0){while(1){i=g<<2;l=H[i+f>>2];d=H[a+16>>2];g:{if((l|0)>(d|0)){H[h+i>>2]=d;break g}i=h+i|0;d=H[a+12>>2];if((d|0)>(l|0)){H[i>>2]=d;break g}H[i>>2]=l}g=g+1|0;if((g|0)>2]){continue}break}}f=j<<2;d=f+c|0;f=H[b+f>>2]-H[f+h>>2]|0;H[d>>2]=f;h:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break h}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;i=H[a+8>>2];j=j+1|0;if((i|0)>(j|0)){continue}break}}qa(e);return 1}function Fj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=da-16|0;da=f;H[a+4>>2]=b;H[a+8>>2]=H[b+56>>2];H[a+188>>2]=H[a+184>>2];e=H[b+48>>2];c=ra(32);b=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[c+15|0]=b;F[c+16|0]=b>>>8;F[c+17|0]=b>>>16;F[c+18|0]=b>>>24;b=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[c+8|0]=d;F[c+9|0]=d>>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;F[c+12|0]=b;F[c+13|0]=b>>>8;F[c+14|0]=b>>>16;F[c+15|0]=b>>>24;b=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;F[c+4|0]=b;F[c+5|0]=b>>>8;F[c+6|0]=b>>>16;F[c+7|0]=b>>>24;F[c+19|0]=0;b=H[e+4>>2];a:{if(b){while(1){d=I[b+27|0];e=d<<24>>24<0;d=e?H[b+20>>2]:d;i=d>>>0<19;b:{c:{h=i?d:19;d:{e:{if(h){g=b+16|0;e=e?H[g>>2]:g;g=Ga(c,e,h);f:{if(!g){if(d>>>0<=19){break f}break b}if((g|0)<0){break b}}d=Ga(e,c,h);if(!d){break e}if((d|0)>=0){break d}break c}if(d>>>0>19){break b}}if(i){break c}}qa(c);e=H[H[a+4>>2]+48>>2];b=ra(32);H[f>>2]=b;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[b+19|0]=0;c=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;c=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;j=a,k=fc(e,f,0),F[j+352|0]=k;if(F[f+11|0]>=0){break a}qa(H[f>>2]);break a}b=b+4|0}b=H[b>>2];if(b){continue}break}}qa(c);if((bb(H[H[a+4>>2]+48>>2])|0)>=6){F[a+352|0]=1;break a}F[a+352|0]=0}da=f+16|0;return 1} +function Kj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=da-16|0;da=f;H[a+4>>2]=b;H[a+8>>2]=H[b+56>>2];H[a+188>>2]=H[a+184>>2];e=H[b+48>>2];c=ra(32);b=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[c+15|0]=b;F[c+16|0]=b>>>8;F[c+17|0]=b>>>16;F[c+18|0]=b>>>24;b=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[c+8|0]=d;F[c+9|0]=d>>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;F[c+12|0]=b;F[c+13|0]=b>>>8;F[c+14|0]=b>>>16;F[c+15|0]=b>>>24;b=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;F[c+4|0]=b;F[c+5|0]=b>>>8;F[c+6|0]=b>>>16;F[c+7|0]=b>>>24;F[c+19|0]=0;b=H[e+4>>2];a:{if(b){while(1){d=I[b+27|0];e=d<<24>>24<0;d=e?H[b+20>>2]:d;i=d>>>0<19;b:{c:{h=i?d:19;d:{e:{if(h){g=b+16|0;e=e?H[g>>2]:g;g=Ga(c,e,h);f:{if(!g){if(d>>>0<=19){break f}break b}if((g|0)<0){break b}}d=Ga(e,c,h);if(!d){break e}if((d|0)>=0){break d}break c}if(d>>>0>19){break b}}if(i){break c}}qa(c);e=H[H[a+4>>2]+48>>2];b=ra(32);H[f>>2]=b;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[b+19|0]=0;c=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;c=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;j=a,k=fc(e,f,0),F[j+288|0]=k;if(F[f+11|0]>=0){break a}qa(H[f>>2]);break a}b=b+4|0}b=H[b>>2];if(b){continue}break}}qa(c);if((bb(H[H[a+4>>2]+48>>2])|0)>=6){F[a+288|0]=1;break a}F[a+288|0]=0}da=f+16|0;return 1}function lh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-32|0;da=c;d=a- -64|0;Da(H[d>>2],b);if(H[d>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);d=H[a+64>>2];if((d|0)>0){while(1){f=d-1|0;Fa(c,H[H[a+60>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d>>>0>1;d=f;if(e){continue}break}}Ba(c,b);Aa(c)}Da(H[a+76>>2],b);if(H[a+76>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);d=H[a+76>>2];if((d|0)>=2){while(1){f=d-2|0;Fa(c,H[H[a+72>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-1|0;Fa(c,H[H[a+72>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>3;d=f;if(e){continue}break}}Ba(c,b);Aa(c)}Da(H[a+88>>2],b);if(H[a+88>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);d=H[a+88>>2];if((d|0)>=3){while(1){f=d-3|0;Fa(c,H[H[a+84>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-2|0;Fa(c,H[H[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Fa(c,H[H[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>5;d=f;if(e){continue}break}}Ba(c,b);Aa(c)}Da(H[a+100>>2],b);if(H[a+100>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);d=H[a+100>>2];if((d|0)>=4){while(1){f=d-4|0;Fa(c,H[H[a+96>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-3|0;Fa(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;Fa(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Fa(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>7;d=f;if(e){continue}break}}Ba(c,b);Aa(c)}H[c>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}f=c+4|0;wa(b,H[b+4>>2],c,f);d=H[b+20>>2];e=H[b+16>>2];H[c>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c,f)}da=c+32|0;return 1}function ah(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-32|0;da=c;Da(H[a+48>>2],b);if(H[a+48>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);d=H[a+48>>2];if((d|0)>0){while(1){f=d-1|0;Fa(c,H[H[a+44>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d>>>0>1;d=f;if(e){continue}break}}Ba(c,b);Aa(c)}Da(H[a+60>>2],b);if(H[a+60>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);d=H[a+60>>2];if((d|0)>=2){while(1){f=d-2|0;Fa(c,H[H[a+56>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-1|0;Fa(c,H[H[a+56>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>3;d=f;if(e){continue}break}}Ba(c,b);Aa(c)}Da(H[a+72>>2],b);if(H[a+72>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);d=H[a+72>>2];if((d|0)>=3){while(1){f=d-3|0;Fa(c,H[H[a+68>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-2|0;Fa(c,H[H[a+68>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Fa(c,H[H[a+68>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>5;d=f;if(e){continue}break}}Ba(c,b);Aa(c)}Da(H[a+84>>2],b);if(H[a+84>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);d=H[a+84>>2];if((d|0)>=4){while(1){f=d-4|0;Fa(c,H[H[a+80>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-3|0;Fa(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;Fa(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;Fa(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>7;d=f;if(e){continue}break}}Ba(c,b);Aa(c)}H[c>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}f=c+4|0;wa(b,H[b+4>>2],c,f);d=H[b+20>>2];e=H[b+16>>2];H[c>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c,f)}da=c+32|0;return 1}function qk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;i=da-32|0;da=i;d=(e&1073741823)!=(e|0)?-1:e<<2;l=ta(ra(d),0,d);o=a+8|0;d=H[a+40>>2];g=H[d>>2];a:{h=H[d+4>>2]-g|0;if((h|0)<5){break a}f=h>>>2|0;d=f-1|0;if(d>>>0>2>>>0){q=H[a+36>>2];p=H[a+32>>2];r=e&-2;s=e&1;while(1){t=N(d,e);b:{c:{g=H[(d<<2)+g>>2];if((g|0)==-1){break c}g=H[H[p+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}k=H[q>>2];h=H[p>>2];m=H[k+(H[h+(g<<2)>>2]<<2)>>2];j=g+1|0;j=(j>>>0)%3|0?j:g-2|0;if((j|0)!=-1){j=H[h+(j<<2)>>2]}else{j=-1}d:{e:{if((g>>>0)%3|0){g=g-1|0;break e}g=g+2|0;n=-1;if((g|0)==-1){break d}}n=H[h+(g<<2)>>2]}if((d|0)<=(m|0)){break c}g=H[(j<<2)+k>>2];if((g|0)>=(d|0)){break c}h=H[k+(n<<2)>>2];if((h|0)>=(d|0)){break c}f:{if((e|0)<=0){break f}h=N(e,h);k=N(e,g);m=N(e,m);g=0;n=0;if((e|0)!=1){while(1){H[(g<<2)+l>>2]=(H[(g+h<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2];j=g|1;H[(j<<2)+l>>2]=(H[(h+j<<2)+b>>2]+H[(j+k<<2)+b>>2]|0)-H[(j+m<<2)+b>>2];g=g+2|0;n=n+2|0;if((r|0)!=(n|0)){continue}break}}if(!s){break f}H[(g<<2)+l>>2]=(H[(g+h<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2]}g=H[l>>2];h=H[l+4>>2];break b}h=(N(f-2|0,e)<<2)+b|0;g=H[h>>2];h=H[h+4>>2]}k=t<<2;m=k+b|0;j=H[m+4>>2];H[i+16>>2]=H[m>>2];H[i+20>>2]=j;H[i+8>>2]=g;H[i+12>>2]=h;_a(i+24|0,o,i+16|0,i+8|0);g=c+k|0;H[g>>2]=H[i+24>>2];H[g+4>>2]=H[i+28>>2];if((f|0)<3){break a}f=d;h=H[a+40>>2];g=H[h>>2];d=d-1|0;if(d>>>0>2]-g>>2>>>0){continue}break}}ua();X()}if((e|0)>0){ta(l,0,e<<2)}a=H[l>>2];d=H[l+4>>2];e=H[b+4>>2];H[i+16>>2]=H[b>>2];H[i+20>>2]=e;H[i+8>>2]=a;H[i+12>>2]=d;_a(i+24|0,o,i+16|0,i+8|0);H[c>>2]=H[i+24>>2];H[c+4>>2]=H[i+28>>2];qa(l);da=i+32|0;return 1}function Di(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=da+-64|0;da=e;a:{b:{c:{d:{e:{f:{if(!b){break f}f=sb(c);if(f>>>0>=4294967280){break e}g:{h:{if(f>>>0>=11){g=f+16&-16;a=ra(g);H[e+56>>2]=g|-2147483648;H[e+48>>2]=a;H[e+52>>2]=f;break h}F[e+59|0]=f;a=e+48|0;if(!f){break g}}sa(a,c,f)}F[a+f|0]=0;f=sb(d);if(f>>>0>=4294967280){break d}i:{j:{if(f>>>0>=11){g=f+16&-16;a=ra(g);H[e+40>>2]=g|-2147483648;H[e+32>>2]=a;H[e+36>>2]=f;break j}F[e+43|0]=f;a=e+32|0;if(!f){break i}}sa(a,d,f)}F[a+f|0]=0;f=sb(c);if(f>>>0>=4294967280){break c}k:{l:{if(f>>>0>=11){g=f+16&-16;a=ra(g);H[e+24>>2]=g|-2147483648;H[e+16>>2]=a;H[e+20>>2]=f;break l}F[e+27|0]=f;a=e+16|0;if(!f){break k}}sa(a,c,f)}F[a+f|0]=0;c=sb(d);if(c>>>0>=4294967280){break b}m:{n:{if(c>>>0>=11){f=c+16&-16;a=ra(f);H[e+8>>2]=f|-2147483648;H[e>>2]=a;H[e+4>>2]=c;break n}F[e+11|0]=c;a=e;if(!c){break m}}sa(a,d,c)}F[a+c|0]=0;a=da-48|0;da=a;c=pb(b,e+16|0);if((c|0)!=(b+4|0)){Dc(b,c)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;c=F[e+11|0];eb(a,(c|0)<0?H[e+4>>2]:c&255);c=I[e+11|0];d=c<<24>>24<0;sa(H[a>>2],d?H[e>>2]:e,d?H[e+4>>2]:c);o:{if(F[e+27|0]>=0){H[a+24>>2]=H[e+24>>2];c=H[e+20>>2];H[a+16>>2]=H[e+16>>2];H[a+20>>2]=c;break o}Ia(a+16|0,H[e+16>>2],H[e+20>>2])}H[a+36>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;eb(a+28|0,H[a+4>>2]-H[a>>2]|0);c=H[a>>2];sa(H[a+28>>2],c,H[a+4>>2]-c|0);c=a+16|0;Cc(a+40|0,b,c,c);c=H[a+28>>2];if(c){H[a+32>>2]=c;qa(c)}if(F[a+27|0]<0){qa(H[a+16>>2])}c=H[a>>2];if(c){H[a+4>>2]=c;qa(c)}da=a+48|0;if(F[e+11|0]<0){qa(H[e>>2])}if(F[e+27|0]<0){qa(H[e+16>>2])}if(F[e+43|0]<0){qa(H[e+32>>2])}if(F[e+59|0]>=0){break f}qa(H[e+48>>2])}da=e- -64|0;a=(b|0)!=0;break a}hb();X()}hb();X()}hb();X()}hb();X()}return a|0}function Ba(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=da-32|0;da=g;d=H[a>>2];e=H[d>>2];c=H[d+4>>2];j=+(e>>>0)+ +(c>>>0)*4294967296;c=H[d+12>>2]+c|0;d=H[d+8>>2];e=d+e|0;c=e>>>0>>0?c+1|0:c;d=!(c|e);j=j/(+((d?1:e)>>>0)+ +((d?0:c)>>>0)*4294967296)*256+.5;a:{if(j<4294967296&j>=0){c=~~j>>>0;break a}c=0}c=c>>>0<255?c:255;k=!(c&255)+c|0;F[g+23|0]=k;i=H[a+16>>2];n=H[a+12>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;b:{c:{c=(i-n<<1)- -64|0;if(c){if((c|0)<0){break c}h=ra(c);H[g+8>>2]=h;d=c+h|0;H[g+16>>2]=d;ta(h,0,c);H[g+12>>2]=d}c=H[a+28>>2]-1|0;if((c|0)<0){e=4096;break b}l=0-k|0;o=l&255;p=H[a+24>>2];e=4096;while(1){m=p&1<>>0<=e>>>0){F[f+h|0]=e;f=f+1|0;e=e>>>8|0}q=256-d|0;d=(d<<3)+12800|0;xl(H[d>>2],0,e,0);e=((m?0:o)+e|0)+N(q,ea+e>>>H[d+4>>2]|0)|0;c=c-1|0;if((c|0)>=0){continue}break}break b}va();X()}if((i|0)!=(n|0)){l=0-k|0;o=l&255;while(1){i=i-4|0;p=H[i>>2];c=31;while(1){d=c;m=p&1<>>0<=e>>>0){F[f+h|0]=e;f=f+1|0;e=e>>>8|0}q=256-c|0;c=(c<<3)+12800|0;xl(H[c>>2],0,e,0);e=((m?0:o)+e|0)+N(q,ea+e>>>H[c+4>>2]|0)|0;c=d-1|0;if(d){continue}break}if((i|0)!=(n|0)){continue}break}}c=e-4096|0;d:{if(c>>>0<=63){F[f+h|0]=c;f=f+1|0;break d}if(c>>>0<=16383){c=f+h|0;d=e+12288|0;F[c|0]=d;F[c+1|0]=d>>>8;f=f+2|0;break d}if(c>>>0>4194303){break d}c=f+h|0;d=e+8384512|0;F[c|0]=d;F[c+2|0]=d>>>16;F[c+1|0]=d>>>8;f=f+3|0}c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],g+23|0,g+24|0)}Da(f,b);c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],h,f+h|0)}H[g+24>>2]=0;H[g+28>>2]=0;ae(a,g+24|0);H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=H[a+12>>2];if(h){qa(h)}da=g+32|0}function Tg(a,b,c){var d=O(0),e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=O(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;o=da-16|0;da=o;a:{if(!(H[a+4>>2]!=-1|c-1>>>0>29)){H[a+4>>2]=c;f=F[b+24|0];c=0;H[a+20>>2]=0;H[o+8>>2]=0;H[o>>2]=0;H[o+4>>2]=0;if(f){if((f|0)<0){break a}c=f<<2;m=ra(c);c=ta(m,0,c)+c|0}g=H[a+8>>2];if(g){H[a+12>>2]=g;qa(g)}H[a+8>>2]=m;H[a+16>>2]=c;H[a+12>>2]=c;c=(f&1073741823)!=(f|0)?-1:f<<2;j=ra(c);c=ra(c);r=H[b+44>>2];e=c;g=H[b+48>>2];c=g;n=H[b>>2];h=H[b+40>>2];s=sa(e,c+H[n>>2]|0,h);sa(m,c+H[n>>2]|0,h);t=sa(j,c+H[n>>2]|0,h);b=H[b+80>>2];b:{if(b>>>0<2){break b}j=b;if(f){e=1;c=0;while(1){p=H[n>>2];b=xl(e,c,h,r)+g|0;p=sa(s,p+b|0,h);b=0;while(1){q=b<<2;i=q+m|0;k=q+p|0;d=L[k>>2];if(d>2]){L[i>>2]=d;d=L[k>>2]}k=q+t|0;if(L[k>>2]>2]=d}b=b+1|0;if((f|0)!=(b|0)){continue}break}m=H[a+8>>2];b=c;c=e+1|0;b=c?b:b+1|0;e=c;c=b;if((j|0)!=(e|0)|b){continue}break}break b}e=1;c=0;i=j-1|0;j=0-!j|0;u=i&1;if((b|0)!=2){q=i&-2;while(1){i=H[n>>2];b=xl(e,c,h,r)+g|0;v=sa(s,i+b|0,h);w=H[n>>2];b=c;i=e+1|0;b=i?b:b+1|0;b=xl(h,r,i,b)+g|0;sa(v,w+b|0,h);b=e+2|0;c=b>>>0<2?c+1|0:c;e=b;b=p+2|0;k=b>>>0<2?k+1|0:k;p=b;if((q|0)!=(b|0)|(j|0)!=(k|0)){continue}break}}if(!(u|x)){break b}j=H[n>>2];b=xl(e,c,h,r)+g|0;sa(s,j+b|0,h)}c=1;c:{d:{e:{if((f|0)>0){d=L[m>>2];if(d!=d|O(P(d))==O(Z)){break c}b=0;break e}d=L[a+20>>2];c=0;break d}while(1){l=L[(b<<2)+t>>2];if(l!=l|O(P(l))==O(Z)){break c}l=O(l-d);d=L[a+20>>2];if(l>d){L[a+20>>2]=l;d=l}b=b+1|0;c=(f|0)>(b|0);if((b|0)==(f|0)){break d}d=L[(b<<2)+m>>2];if(d!=d){break c}if(O(P(d))!=O(Z)){continue}break}break c}if(d!=O(0)){break c}H[a+20>>2]=1065353216}qa(s);qa(t);g=c^1}da=o+16|0;return g&1}va();X()}function Bk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=da-32|0;da=h;d=(e&1073741823)!=(e|0)?-1:e<<2;l=ta(ra(d),0,d);p=a+8|0;d=H[a+40>>2];g=H[d>>2];a:{n=H[d+4>>2]-g|0;if((n|0)<5){break a}f=n>>>2|0;d=f-1|0;if(d>>>0>2>>>0){q=H[a+36>>2];n=H[a+32>>2];r=e&-2;s=e&1;while(1){t=N(d,e);b:{c:{g=H[(d<<2)+g>>2];if((g|0)==-1|H[H[n>>2]+(g>>>3&536870908)>>2]>>>g&1){break c}g=H[H[H[n+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}k=H[q>>2];i=H[n+28>>2];m=H[k+(H[i+(g<<2)>>2]<<2)>>2];if((m|0)>=(d|0)){break c}j=g+1|0;j=H[k+(H[i+(((j>>>0)%3|0?j:g-2|0)<<2)>>2]<<2)>>2];if((j|0)>=(d|0)){break c}g=H[k+(H[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(d|0)){break c}d:{if((e|0)<=0){break d}i=N(e,g);k=N(e,j);m=N(e,m);g=0;o=0;if((e|0)!=1){while(1){H[(g<<2)+l>>2]=(H[(g+i<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2];j=g|1;H[(j<<2)+l>>2]=(H[(i+j<<2)+b>>2]+H[(j+k<<2)+b>>2]|0)-H[(j+m<<2)+b>>2];g=g+2|0;o=o+2|0;if((r|0)!=(o|0)){continue}break}}if(!s){break d}H[(g<<2)+l>>2]=(H[(g+i<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2]}g=H[l>>2];i=H[l+4>>2];break b}i=(N(f-2|0,e)<<2)+b|0;g=H[i>>2];i=H[i+4>>2]}k=t<<2;m=k+b|0;j=H[m+4>>2];H[h+16>>2]=H[m>>2];H[h+20>>2]=j;H[h+8>>2]=g;H[h+12>>2]=i;_a(h+24|0,p,h+16|0,h+8|0);g=c+k|0;H[g>>2]=H[h+24>>2];H[g+4>>2]=H[h+28>>2];if((f|0)<3){break a}f=d;i=H[a+40>>2];g=H[i>>2];d=d-1|0;if(d>>>0>2]-g>>2>>>0){continue}break}}ua();X()}if((e|0)>0){ta(l,0,e<<2)}a=H[l>>2];d=H[l+4>>2];e=H[b+4>>2];H[h+16>>2]=H[b>>2];H[h+20>>2]=e;H[h+8>>2]=a;H[h+12>>2]=d;_a(h+24|0,p,h+16|0,h+8|0);H[c>>2]=H[h+24>>2];H[c+4>>2]=H[h+28>>2];qa(l);da=h+32|0;return 1}function Xe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=da-16|0;da=k;H[k+8>>2]=c;e=H[a+12>>2];d=H[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=H[a+16>>2];d=H[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=ta(e,0,d)+d|0}H[a+12>>2]=d;break a}b:{c:{d:{h=H[a+8>>2];i=d-h>>2;e=i+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>>0<2147483644?e>>>0>l>>>0?e:l:1073741823;if(g){if(g>>>0>=1073741824){break d}j=ra(g<<2)}e=(i<<2)+j|0;i=f<<2;f=ta(e,0,i);i=f+i|0;g=(g<<2)+j|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=H[d>>2];H[d>>2]=0;e=e-4|0;H[e>>2]=f;if((d|0)!=(h|0)){continue}break}H[a+16>>2]=g;f=H[a+12>>2];H[a+12>>2]=i;d=H[a+8>>2];H[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=H[f>>2];H[f>>2]=0;if(e){Pa(e)}if((d|0)!=(f|0)){continue}break}break b}va();X()}ya(1604);X()}H[a+16>>2]=g;H[a+12>>2]=i;H[a+8>>2]=f}if(d){qa(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=H[e>>2];H[e>>2]=0;if(c){Pa(c)}if((d|0)!=(e|0)){continue}break}c=H[k+8>>2]}H[a+12>>2]=d}e:{f:{d=H[c+56>>2];g:{if((d|0)>4){break g}e=N(d,12)+a|0;d=H[e+24>>2];if((d|0)!=H[e+28>>2]){H[d>>2]=b;H[e+24>>2]=d+4;break g}h=H[e+20>>2];f=d-h|0;j=f>>2;d=j+1|0;if(d>>>0>=1073741824){break f}g=f>>1;g=f>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break e}d=ra(g<<2)}else{d=0}j=d+(j<<2)|0;H[j>>2]=b;if((f|0)>0){sa(d,h,f)}H[e+20>>2]=d;H[e+24>>2]=j+4;H[e+28>>2]=d+(g<<2);if(!h){break g}qa(h)}H[c+60>>2]=b;a=H[a+8>>2];H[k+8>>2]=0;b=a+(b<<2)|0;a=H[b>>2];H[b>>2]=c;if(a){Pa(a)}a=H[k+8>>2];H[k+8>>2]=0;if(a){Pa(a)}da=k+16|0;return}va();X()}ya(1604);X()}function lf(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=O(0);j=H[c>>2];g=j^318;a:{b:{f=H[b+4>>2];if(!f){break b}h=Al(f);c:{if(h>>>0>=2){e=g;if(f>>>0<=e>>>0){e=(g>>>0)%(f>>>0)|0}c=H[H[b>>2]+(e<<2)>>2];if(!c){break b}if(h>>>0<=1){break c}while(1){c=H[c>>2];if(!c){break b}h=H[c+4>>2];if((h|0)!=(g|0)){if(f>>>0<=h>>>0){h=(h>>>0)%(f>>>0)|0}if((e|0)!=(h|0)){break b}}if(H[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&g;c=H[H[b>>2]+(e<<2)>>2];if(!c){break b}}h=f-1|0;while(1){c=H[c>>2];if(!c){break b}k=H[c+4>>2];if((k|0)!=(g|0)&(h&k)!=(e|0)){break b}if(H[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=ra(16);H[c+8>>2]=H[d>>2];d=H[d+4>>2];H[c+4>>2]=g;H[c+12>>2]=d;H[c>>2]=0;i=O(H[b+12>>2]+1>>>0);l=L[b+16>>2];d:{if(i>O(l*O(f>>>0))?0:f){break d}h=(f-1&f)!=0|f>>>0<3|f<<1;d=2;i=O(U(O(i/l)));e:{if(i=O(0)){e=~~i>>>0;break e}e=0}e=e>>>0>h>>>0?e:h;f:{if((e|0)==1){break f}if(!(e&e-1)){d=e;break f}d=Ja(e);f=H[b+4>>2]}g:{if(d>>>0<=f>>>0){if(d>>>0>=f>>>0){break g}h=f>>>0<3;i=O(U(O(O(K[b+12>>2])/L[b+16>>2])));h:{if(i=O(0)){e=~~i>>>0;break h}e=0}i:{j:{if(h){break j}if(Al(f)>>>0>1){break j}e=e>>>0<2?e:1<<32-Q(e-1|0);break i}e=Ja(e)}d=d>>>0>>0?e:d;if(f>>>0<=d>>>0){break g}}$e(b,d)}f=H[b+4>>2];d=f-1|0;if(!(d&f)){e=d&g;break d}if(f>>>0>g>>>0){e=g;break d}e=(g>>>0)%(f>>>0)|0}g=H[b>>2]+(e<<2)|0;d=H[g>>2];k:{if(!d){H[c>>2]=H[b+8>>2];H[b+8>>2]=c;H[g>>2]=b+8;d=H[c>>2];if(!d){break k}d=H[d+4>>2];g=f-1|0;l:{if(!(g&f)){d=d&g;break l}if(d>>>0>>0){break l}d=(d>>>0)%(f>>>0)|0}H[H[b>>2]+(d<<2)>>2]=c;break k}H[c>>2]=H[d>>2];H[d>>2]=c}H[b+12>>2]=H[b+12>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function Vf(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=O(0);h=H[c>>2];a:{b:{e=H[b+4>>2];if(!e){break b}g=Al(e);c:{if(g>>>0>=2){f=h;if(f>>>0>=e>>>0){f=(h>>>0)%(e>>>0)|0}c=H[H[b>>2]+(f<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=H[c>>2];if(!c){break b}g=H[c+4>>2];if((g|0)!=(h|0)){if(e>>>0<=g>>>0){g=(g>>>0)%(e>>>0)|0}if((f|0)!=(g|0)){break b}}if(H[c+8>>2]!=(h|0)){continue}break}b=0;break a}f=e-1&h;c=H[H[b>>2]+(f<<2)>>2];if(!c){break b}}g=e-1|0;while(1){c=H[c>>2];if(!c){break b}j=H[c+4>>2];if((j|0)!=(h|0)&(g&j)!=(f|0)){break b}if(H[c+8>>2]!=(h|0)){continue}break}b=0;break a}c=ra(16);d=H[H[d>>2]>>2];H[c+12>>2]=0;H[c+8>>2]=d;H[c+4>>2]=h;H[c>>2]=0;k=O(H[b+12>>2]+1>>>0);i=L[b+16>>2];d:{if(k>O(i*O(e>>>0))?0:e){break d}g=(e-1&e)!=0|e>>>0<3|e<<1;f=2;i=O(U(O(k/i)));e:{if(i=O(0)){d=~~i>>>0;break e}d=0}d=d>>>0>g>>>0?d:g;f:{if((d|0)==1){break f}if(!(d&d-1)){f=d;break f}f=Ja(d);e=H[b+4>>2]}g:{if(e>>>0>=f>>>0){if(e>>>0<=f>>>0){break g}g=e>>>0<3;i=O(U(O(O(K[b+12>>2])/L[b+16>>2])));h:{if(i=O(0)){d=~~i>>>0;break h}d=0}i:{j:{if(g){break j}if(Al(e)>>>0>1){break j}d=d>>>0<2?d:1<<32-Q(d-1|0);break i}d=Ja(d)}f=d>>>0>f>>>0?d:f;if(f>>>0>=e>>>0){break g}}$e(b,f)}e=H[b+4>>2];d=e-1|0;if(!(d&e)){f=d&h;break d}if(e>>>0>h>>>0){f=h;break d}f=(h>>>0)%(e>>>0)|0}f=H[b>>2]+(f<<2)|0;d=H[f>>2];k:{if(!d){H[c>>2]=H[b+8>>2];H[b+8>>2]=c;H[f>>2]=b+8;d=H[c>>2];if(!d){break k}d=H[d+4>>2];f=e-1|0;l:{if(!(f&e)){d=d&f;break l}if(d>>>0>>0){break l}d=(d>>>0)%(e>>>0)|0}H[H[b>>2]+(d<<2)>>2]=c;break k}H[c>>2]=H[d>>2];H[d>>2]=c}H[b+12>>2]=H[b+12>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function Wk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;H[a+8>>2]=e;H[a- -64>>2]=f;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ea(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;j=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;g=0;d=f;while(1){h=(i<<2)+b|0;k=H[h+4>>2];l=H[h>>2];o=(l|0)<(d|0);d=o?l:d;h=(d|0)>(k|0);d=h?k:d;f=o?f:(f|0)<(l|0)?l:f;f=h?f:(f|0)<(k|0)?k:f;i=i+2|0;g=g+2|0;if((n|0)!=(g|0)){continue}break}}if(!j){break c}h=H[(i<<2)+b>>2];g=(h|0)<(d|0);d=g?h:d;f=g?f:(f|0)<(h|0)?h:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}f=H[a+56>>2];d=H[f>>2];e:{f=H[f+4>>2]-d|0;if((f|0)<=0){break e}n=f>>>2|0;i=n-1|0;if(i>>>0>2>>>0){k=a+60|0;h=a+68|0;while(1){hh(k,H[(i<<2)+d>>2],b,i);d=H[a+8>>2];if((d|0)>0){f=N(e,i)<<2;l=f+c|0;o=b+f|0;p=0;g=h;while(1){j=H[a+32>>2];f=0;if((d|0)>0){while(1){m=f<<2;q=H[m+g>>2];d=H[a+16>>2];f:{if((q|0)>(d|0)){H[j+m>>2]=d;break f}m=j+m|0;d=H[a+12>>2];if((d|0)>(q|0)){H[m>>2]=d;break f}H[m>>2]=q}f=f+1|0;if((f|0)>2]){continue}break}}f=p<<2;d=f+l|0;f=H[f+o>>2]-H[f+j>>2]|0;H[d>>2]=f;g:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break g}f=f-H[a+20>>2]|0}H[d>>2]=f}g=j;d=H[a+8>>2];p=p+1|0;if((d|0)>(p|0)){continue}break}}if((n|0)<2){break e}n=i;f=H[a+56>>2];d=H[f>>2];i=i-1|0;if(i>>>0>2]-d>>2>>>0){continue}break}}ua();X()}return 1}function Mk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;H[a+8>>2]=e;H[a- -64>>2]=f;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ea(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;j=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;g=0;d=f;while(1){h=(i<<2)+b|0;k=H[h+4>>2];l=H[h>>2];o=(l|0)<(d|0);d=o?l:d;h=(d|0)>(k|0);d=h?k:d;f=o?f:(f|0)<(l|0)?l:f;f=h?f:(f|0)<(k|0)?k:f;i=i+2|0;g=g+2|0;if((n|0)!=(g|0)){continue}break}}if(!j){break c}h=H[(i<<2)+b>>2];g=(h|0)<(d|0);d=g?h:d;f=g?f:(f|0)<(h|0)?h:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}f=H[a+56>>2];d=H[f>>2];e:{f=H[f+4>>2]-d|0;if((f|0)<=0){break e}n=f>>>2|0;i=n-1|0;if(i>>>0>2>>>0){k=a+60|0;h=a+68|0;while(1){ch(k,H[(i<<2)+d>>2],b,i);d=H[a+8>>2];if((d|0)>0){f=N(e,i)<<2;l=f+c|0;o=b+f|0;p=0;g=h;while(1){j=H[a+32>>2];f=0;if((d|0)>0){while(1){m=f<<2;q=H[m+g>>2];d=H[a+16>>2];f:{if((q|0)>(d|0)){H[j+m>>2]=d;break f}m=j+m|0;d=H[a+12>>2];if((d|0)>(q|0)){H[m>>2]=d;break f}H[m>>2]=q}f=f+1|0;if((f|0)>2]){continue}break}}f=p<<2;d=f+l|0;f=H[f+o>>2]-H[f+j>>2]|0;H[d>>2]=f;g:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break g}f=f-H[a+20>>2]|0}H[d>>2]=f}g=j;d=H[a+8>>2];p=p+1|0;if((d|0)>(p|0)){continue}break}}if((n|0)<2){break e}n=i;f=H[a+56>>2];d=H[f>>2];i=i-1|0;if(i>>>0>2]-d>>2>>>0){continue}break}}ua();X()}return 1}function $d(a){var b=0,c=0,d=0,e=0;e=da-16|0;da=e;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;b=a+16|0;H[b>>2]=0;H[b+4>>2]=0;H[a+12>>2]=b;a=a+24|0;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;b=ra(32);H[e>>2]=b;H[e+4>>2]=20;H[e+8>>2]=-2147483616;F[b+20|0]=0;c=I[1471]|I[1472]<<8|(I[1473]<<16|I[1474]<<24);F[b+16|0]=c;F[b+17|0]=c>>>8;F[b+18|0]=c>>>16;F[b+19|0]=c>>>24;c=I[1467]|I[1468]<<8|(I[1469]<<16|I[1470]<<24);d=I[1463]|I[1464]<<8|(I[1465]<<16|I[1466]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1459]|I[1460]<<8|(I[1461]<<16|I[1462]<<24);d=I[1455]|I[1456]<<8|(I[1457]<<16|I[1458]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;tb(a,e,1);if(F[e+11|0]<0){qa(H[e>>2])}b=ra(32);H[e>>2]=b;H[e+4>>2]=22;H[e+8>>2]=-2147483616;F[b+22|0]=0;c=I[1450]|I[1451]<<8|(I[1452]<<16|I[1453]<<24);d=I[1446]|I[1447]<<8|(I[1448]<<16|I[1449]<<24);F[b+14|0]=d;F[b+15|0]=d>>>8;F[b+16|0]=d>>>16;F[b+17|0]=d>>>24;F[b+18|0]=c;F[b+19|0]=c>>>8;F[b+20|0]=c>>>16;F[b+21|0]=c>>>24;c=I[1444]|I[1445]<<8|(I[1446]<<16|I[1447]<<24);d=I[1440]|I[1441]<<8|(I[1442]<<16|I[1443]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1436]|I[1437]<<8|(I[1438]<<16|I[1439]<<24);d=I[1432]|I[1433]<<8|(I[1434]<<16|I[1435]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;tb(a,e,1);if(F[e+11|0]<0){qa(H[e>>2])}da=e+16|0}function Kc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=da-112|0;da=c;d=ra(120);i=H[a+8>>2];H[d+12>>2]=0;H[d+16>>2]=0;H[d>>2]=11240;H[d+4>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+8>>2]=11452;f=d- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[d+72>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+88>>2]=0;H[d+116>>2]=0;H[d+112>>2]=b;H[d+108>>2]=i;H[d+104>>2]=0;H[d+96>>2]=0;H[d+100>>2]=0;f=H[a+12>>2];H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;g=c+32|0;H[g>>2]=0;H[g+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;e=c- -64|0;H[e>>2]=0;H[e+4>>2]=0;H[c+72>>2]=0;H[c+76>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+88>>2]=0;H[c+104>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+8>>2]=11452;H[c+96>>2]=0;H[c+100>>2]=0;H[c+12>>2]=f;e=H[f>>2];h=H[f+4>>2];F[c+111|0]=0;j=g;g=c+111|0;Ra(j,(h-e>>2>>>0)/3|0,g);e=H[c+12>>2];h=H[e+28>>2];e=H[e+24>>2];F[c+111|0]=0;Ra(c+44|0,h-e>>2,g);H[c+28>>2]=d;H[c+24>>2]=i;H[c+20>>2]=b;H[c+16>>2]=f;H[d+116>>2]=a+72;b=d+8|0;a=c+8|0;Jc(b,a);a:{if((a|0)==(b|0)){H[d+92>>2]=H[a+84>>2];break a}hc(d+56|0,H[a+48>>2],H[a+52>>2]);hc(d+68|0,H[a+60>>2],H[a- -64>>2]);hc(d+80|0,H[a+72>>2],H[a+76>>2]);H[d+92>>2]=H[a+84>>2];db(d+96|0,H[a+88>>2],H[a+92>>2])}H[c+8>>2]=11452;a=H[c+96>>2];if(a){H[c+100>>2]=a;qa(a)}a=H[c+80>>2];if(a){H[c+84>>2]=a;qa(a)}a=H[c+68>>2];if(a){H[c+72>>2]=a;qa(a)}a=H[c+56>>2];if(a){H[c+60>>2]=a;qa(a)}H[c+8>>2]=11688;a=H[c+44>>2];if(a){qa(a)}a=H[c+32>>2];if(a){qa(a)}da=c+112|0;return d}function gf(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=H[a+8>>2];g=H[a+4>>2];if((e-g|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=g;e=N(b,12)-12|0;f=((e>>>0)/12|0)+1&3;if(f){while(1){j=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=j;H[d+8>>2]=H[c+8>>2];d=d+12|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}g=N(b,12)+g|0;if(e>>>0<36){break a}while(1){b=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=b;H[d+8>>2]=H[c+8>>2];H[d+20>>2]=H[c+8>>2];b=H[c+4>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=b;H[d+32>>2]=H[c+8>>2];b=H[c+4>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=b;b=H[c+4>>2];H[d+36>>2]=H[c>>2];H[d+40>>2]=b;H[d+44>>2]=H[c+8>>2];d=d+48|0;if((g|0)!=(d|0)){continue}break}}H[a+4>>2]=g;return}b:{f=H[a>>2];i=(g-f|0)/12|0;d=i+b|0;if(d>>>0<357913942){e=(e-f|0)/12|0;f=e<<1;f=e>>>0<178956970?d>>>0>f>>>0?d:f:357913941;if(f){if(f>>>0>=357913942){break b}j=ra(N(f,12))}e=N(i,12)+j|0;d=e;b=N(b,12);i=b-12|0;k=((i>>>0)/12|0)+1&3;if(k){d=e;while(1){l=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=l;H[d+8>>2]=H[c+8>>2];d=d+12|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}h=b+e|0;if(i>>>0>=36){while(1){b=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=b;H[d+8>>2]=H[c+8>>2];H[d+20>>2]=H[c+8>>2];b=H[c+4>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=b;H[d+32>>2]=H[c+8>>2];b=H[c+4>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=b;b=H[c+4>>2];H[d+36>>2]=H[c>>2];H[d+40>>2]=b;H[d+44>>2]=H[c+8>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}b=H[a>>2];c=g-b|0;d=e+N((c|0)/-12|0,12)|0;if((c|0)>0){sa(d,b,c)}H[a+8>>2]=N(f,12)+j;H[a+4>>2]=h;H[a>>2]=d;if(b){qa(b)}return}va();X()}ya(1604);X()}function Hg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{b:{c:{d:{e:{l=a+4|0;f:{if((l|0)==(b|0)){break f}f=I[b+27|0];h=f<<24>>24<0;i=I[e+11|0];n=i<<24>>24;g=(n|0)<0;f=h?H[b+20>>2]:f;i=g?H[e+4>>2]:i;j=f>>>0>>0;k=j?f:i;if(k){g=g?H[e>>2]:e;m=b+16|0;h=h?H[m>>2]:m;m=Ga(g,h,k);if(!m){if(f>>>0>i>>>0){break f}break e}if((m|0)>=0){break e}break f}if(f>>>0<=i>>>0){break d}}h=H[b>>2];d=b;g:{h:{if(H[a>>2]==(b|0)){break h}i:{if(h){f=h;while(1){d=f;f=H[f+4>>2];if(f){continue}break}break i}d=b+8|0;if(H[H[b+8>>2]>>2]==(b|0)){while(1){f=H[d>>2];d=f+8|0;if((f|0)==H[H[f+8>>2]>>2]){continue}break}}d=H[d>>2]}g=I[e+11|0];f=g<<24>>24<0;j=I[d+27|0];i=j<<24>>24<0;j:{g=f?H[e+4>>2]:g;j=i?H[d+20>>2]:j;k=g>>>0>>0?g:j;if(k){l=d+16|0;f=Ga(i?H[l>>2]:l,f?H[e>>2]:e,k);if(f){break j}}if(g>>>0>j>>>0){break h}break g}if((f|0)>=0){break g}}if(!h){H[c>>2]=b;return b}H[c>>2]=d;return d+4|0}return Gg(a,c,e)}f=Ga(h,g,k);if(f){break c}}if(j){break b}break a}if((f|0)>=0){break a}}h=H[b+4>>2];k:{if(h){f=h;while(1){d=f;f=H[f>>2];if(f){continue}break}break k}d=H[b+8>>2];if(H[d>>2]==(b|0)){break k}f=b+8|0;while(1){g=H[f>>2];f=g+8|0;d=H[g+8>>2];if((g|0)!=H[d>>2]){continue}break}}l:{m:{if((d|0)==(l|0)){break m}g=I[d+27|0];f=g<<24>>24<0;n:{g=f?H[d+20>>2]:g;j=g>>>0>>0?g:i;if(j){k=d+16|0;f=Ga((n|0)<0?H[e>>2]:e,f?H[k>>2]:k,j);if(f){break n}}if(g>>>0>i>>>0){break m}break l}if((f|0)>=0){break l}}if(!h){H[c>>2]=b;return b+4|0}H[c>>2]=d;return d}return Gg(a,c,e)}H[c>>2]=b;H[d>>2]=b;return d}function Ue(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=ra(b<<2);e=H[a>>2];H[a>>2]=d;if(e){qa(e)}H[a+4>>2]=b;if(b-1>>>0>=3){f=b&-4;e=0;while(1){d=c<<2;H[d+H[a>>2]>>2]=0;H[H[a>>2]+(d|4)>>2]=0;H[H[a>>2]+(d|8)>>2]=0;H[H[a>>2]+(d|12)>>2]=0;c=c+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=b&3;if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}}f=H[a+8>>2];if(!f){break b}e=a+8|0;g=H[f+4>>2];d=Al(b);c:{if(d>>>0<=1){g=b-1&g;break c}if(b>>>0>g>>>0){break c}g=(g>>>0)%(b>>>0)|0}H[H[a>>2]+(g<<2)>>2]=e;e=H[f>>2];if(!e){break b}q=b-1|0;r=d>>>0>1;while(1){c=H[e+4>>2];d:{if(!r){c=c&q;break d}if(b>>>0>c>>>0){break d}c=(c>>>0)%(b>>>0)|0}e:{if((c|0)==(g|0)){f=e;break e}f:{g:{k=c<<2;d=k+H[a>>2]|0;if(H[d>>2]){j=0;c=H[e>>2];if(!c){d=e;break f}d=H[a+24>>2];m=H[d+8>>2];d=H[d+12>>2]-m|0;if((d|0)<=0){break g}l=d>>2;s=(l|0)>1?l:1;n=H[e+8>>2];d=e;while(1){j=c;o=H[c+8>>2];c=0;p=1;while(1){i=o;h=H[(c<<2)+m>>2];if(I[h+84|0]){h=n}else{h=H[h+68>>2];i=H[h+(o<<2)>>2];h=H[h+(n<<2)>>2]}if((h|0)==(i|0)){c=c+1|0;p=(l|0)>(c|0);if((c|0)!=(s|0)){continue}}break}if(p){break f}d=j;c=H[d>>2];if(c){continue}break}j=0;break f}H[d>>2]=f;f=e;g=c;break e}while(1){d=c;c=H[c>>2];if(c){continue}break}}H[f>>2]=j;H[d>>2]=H[H[H[a>>2]+k>>2]>>2];H[H[H[a>>2]+k>>2]>>2]=e}e=H[f>>2];if(e){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0}return}ya(1604);X()}function se(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=da-32|0;da=g;n=a+4|0;a=pb(a,b);a:{if((n|0)==(a|0)){break a}b:{if(F[a+39|0]>=0){H[g+24>>2]=H[a+36>>2];b=H[a+32>>2];H[g+16>>2]=H[a+28>>2];H[g+20>>2]=b;break b}Ia(g+16|0,H[a+28>>2],H[a+32>>2])}b=I[g+27|0];a=b<<24>>24;if(!(!((a|0)<0?H[g+20>>2]:b)|(c|0)<=0)){b=0;a=(a|0)<0?H[g+16>>2]:g+16|0;while(1){c:{m=da-16|0;da=m;Ne(m,a,g+12|0,0);h=H[m>>2];l=H[m+4>>2];i=da-32|0;da=i;o=H[m+12>>2];j=o&2147483647;f=j;e=f-1065418752|0;k=f-1082064896|0;j=H[m+8>>2];d:{if((e|0)==(k|0)&j>>>0>>0|e>>>0>>0){f=(o&33554431)<<7|j>>>25;e=0;n=e;k=j&33554431;if(!(!e&(k|0)==16777216?!(h|l):!e&k>>>0<16777216)){e=f+1073741825|0;break d}e=f+1073741824|0;if(k^16777216|h|(l|n)){break d}e=(f&1)+e|0;break d}if(!(!j&(f|0)==2147418112?!(h|l):f>>>0<2147418112)){e=((o&33554431)<<7|j>>>25)&4194303|2143289344;break d}e=2139095040;if(f>>>0>1082064895){break d}e=0;f=f>>>16|0;if(f>>>0<16145){break d}e=o&65535|65536;Ta(i+16|0,h,l,j,e,f-16129|0);Jb(i,h,l,j,e,16257-f|0);h=H[i+8>>2];e=(H[i+12>>2]&33554431)<<7|h>>>25;k=H[i>>2]|(H[i+16>>2]|H[i+24>>2]|(H[i+20>>2]|H[i+28>>2]))!=0;l=H[i+4>>2];f=0;h=h&33554431;if(!(!f&(h|0)==16777216?!(k|l):!f&h>>>0<16777216)){e=e+1|0;break d}if(h^16777216|k|(f|l)){break d}e=(e&1)+e|0}da=i+32|0;da=m+16|0;n=a;a=H[g+12>>2];if((n|0)==(a|0)){break c}H[(b<<2)+d>>2]=o&-2147483648|e;b=b+1|0;if((c|0)!=(b|0)){continue}}break}a=I[g+27|0]}if(a<<24>>24>=0){break a}qa(H[g+16>>2])}da=g+32|0}function wa(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=d-c|0;if((h|0)<=0){return}a:{f=H[a+8>>2];i=H[a+4>>2];if((h|0)<=(f-i|0)){j=i-b|0;if((j|0)>=(h|0)){g=i;f=d;break a}g=i;f=c+j|0;if((f|0)!=(d|0)){e=f;while(1){F[g|0]=I[e|0];g=g+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=g;if((j|0)>0){break a}return}e=H[a>>2];d=h+(i-e|0)|0;if((d|0)>=0){g=b-e|0;f=f-e|0;j=f<<1;f=f>>>0<1073741823?d>>>0>j>>>0?d:j:2147483647;if(f){d=ra(f)}else{d=0}c=sa(g+d|0,c,h);if((g|0)>0){sa(d,e,g)}c=c+h|0;if((b|0)!=(i|0)){g=(b^-1)+i|0;h=i-b&7;if(h){e=0;while(1){F[c|0]=I[b|0];c=c+1|0;b=b+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if(g>>>0>=7){while(1){F[c|0]=I[b|0];F[c+1|0]=I[b+1|0];F[c+2|0]=I[b+2|0];F[c+3|0]=I[b+3|0];F[c+4|0]=I[b+4|0];F[c+5|0]=I[b+5|0];F[c+6|0]=I[b+6|0];F[c+7|0]=I[b+7|0];c=c+8|0;b=b+8|0;if((i|0)!=(b|0)){continue}break}}e=H[a>>2]}H[a+8>>2]=d+f;H[a+4>>2]=c;H[a>>2]=d;if(e){qa(e)}return}va();X()}e=g;d=e-h|0;if(i>>>0>d>>>0){while(1){F[e|0]=I[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}H[a+4>>2]=e;a=g-(b+h|0)|0;if(a){xa(g-a|0,b,a)}if((c|0)==(f|0)){return}a=(c^-1)+f|0;g=f-c&7;b:{if(!g){e=b;break b}d=0;e=b;while(1){F[e|0]=I[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){F[e|0]=I[c|0];F[e+1|0]=I[c+1|0];F[e+2|0]=I[c+2|0];F[e+3|0]=I[c+3|0];F[e+4|0]=I[c+4|0];F[e+5|0]=I[c+5|0];F[e+6|0]=I[c+6|0];F[e+7|0]=I[c+7|0];e=e+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}function ac(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){zg(a,h,c,g,e);f=b;b=e+i|0;zg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}ac(a,h,c,g,e,f);d=d-g|0;ac(h,b,c,d,e,f);Xd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function _b(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){xg(a,h,c,g,e);f=b;b=e+i|0;xg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}_b(a,h,c,g,e,f);d=d-g|0;_b(h,b,c,d,e,f);Vd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Zb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){wg(a,h,c,g,e);f=b;b=e+i|0;wg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Zb(a,h,c,g,e,f);d=d-g|0;Zb(h,b,c,d,e,f);Ud(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Yb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){vg(a,h,c,g,e);f=b;b=e+i|0;vg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Yb(a,h,c,g,e,f);d=d-g|0;Yb(h,b,c,d,e,f);Td(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Xb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){ug(a,h,c,g,e);f=b;b=e+i|0;ug(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Xb(a,h,c,g,e,f);d=d-g|0;Xb(h,b,c,d,e,f);Sd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Wb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){tg(a,h,c,g,e);f=b;b=e+i|0;tg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Wb(a,h,c,g,e,f);d=d-g|0;Wb(h,b,c,d,e,f);Rd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Vb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){sg(a,h,c,g,e);f=b;b=e+i|0;sg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Vb(a,h,c,g,e,f);d=d-g|0;Vb(h,b,c,d,e,f);Qd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Ub(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){rg(a,h,c,g,e);f=b;b=e+i|0;rg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Ub(a,h,c,g,e,f);d=d-g|0;Ub(h,b,c,d,e,f);Pd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Tb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){qg(a,h,c,g,e);f=b;b=e+i|0;qg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Tb(a,h,c,g,e,f);d=d-g|0;Tb(h,b,c,d,e,f);Od(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Sb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){pg(a,h,c,g,e);f=b;b=e+i|0;pg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Sb(a,h,c,g,e,f);d=d-g|0;Sb(h,b,c,d,e,f);Nd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Rb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){og(a,h,c,g,e);f=b;b=e+i|0;og(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Rb(a,h,c,g,e,f);d=d-g|0;Rb(h,b,c,d,e,f);Md(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Qb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){mg(a,h,c,g,e);f=b;b=e+i|0;mg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Qb(a,h,c,g,e,f);d=d-g|0;Qb(h,b,c,d,e,f);Ld(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Pb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){lg(a,h,c,g,e);f=b;b=e+i|0;lg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Pb(a,h,c,g,e,f);d=d-g|0;Pb(h,b,c,d,e,f);Kd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Ob(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){kg(a,h,c,g,e);f=b;b=e+i|0;kg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Ob(a,h,c,g,e,f);d=d-g|0;Ob(h,b,c,d,e,f);Jd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Nb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){jg(a,h,c,g,e);f=b;b=e+i|0;jg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Nb(a,h,c,g,e,f);d=d-g|0;Nb(h,b,c,d,e,f);Id(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Mb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){ig(a,h,c,g,e);f=b;b=e+i|0;ig(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Mb(a,h,c,g,e,f);d=d-g|0;Mb(h,b,c,d,e,f);Hd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Lb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){hg(a,h,c,g,e);f=b;b=e+i|0;hg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Lb(a,h,c,g,e,f);d=d-g|0;Lb(h,b,c,d,e,f);Gd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function $b(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}ua();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}ua();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){yg(a,h,c,g,e);f=b;b=e+i|0;yg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}$b(a,h,c,g,e,f);d=d-g|0;$b(h,b,c,d,e,f);Wd(a,h,b,c,g,d,e,f);return}ua();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function ml(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;b=H[H[a+4>>2]+(b<<2)>>2];H[c+12>>2]=b;a=H[a+28>>2];e=H[H[H[a+4>>2]+8>>2]+(b<<2)>>2];b=H[e+28>>2];a:{if(b-1>>>0>=6){b:{if((b|0)!=9){break b}f=H[a+48>>2];a=ra(32);H[c>>2]=a;H[c+4>>2]=17;H[c+8>>2]=-2147483616;F[a+17|0]=0;F[a+16|0]=I[1373];b=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);d=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[a+8|0]=d;F[a+9|0]=d>>>8;F[a+10|0]=d>>>16;F[a+11|0]=d>>>24;F[a+12|0]=b;F[a+13|0]=b>>>8;F[a+14|0]=b>>>16;F[a+15|0]=b>>>24;b=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);d=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;a=xb(f,c+12|0,c,-1);if(F[c+11|0]<0){qa(H[c>>2])}if((a|0)<=0){break b}if(H[e+56>>2]==1){a=ra(48);H[a>>2]=0;H[a+4>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;ee(a);H[a+44>>2]=-1;H[a+40>>2]=1032;H[a>>2]=6336;break a}a=ra(64);ee(a);H[a+48>>2]=0;H[a+52>>2]=0;H[a+44>>2]=-1;H[a+40>>2]=1140;H[a>>2]=10016;H[a+56>>2]=0;H[a+60>>2]=0;break a}a=ra(36);H[a+32>>2]=0;H[a+12>>2]=-1;H[a+4>>2]=0;H[a+8>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=2420;F[a+21|0]=0;F[a+22|0]=0;F[a+23|0]=0;F[a+24|0]=0;F[a+25|0]=0;F[a+26|0]=0;F[a+27|0]=0;F[a+28|0]=0;break a}a=ee(ra(40))}da=c+16|0;return a|0}function Qf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;H[a>>2]=10612;d=a+200|0;c=H[d+136>>2];if(c){b=H[d+140>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;f=H[e>>2];if(f){H[b-8>>2]=f;qa(f)}b=e;if((c|0)!=(b|0)){continue}break}b=H[d+136>>2]}H[d+140>>2]=c;qa(b)}b=H[d+104>>2];if(b){H[d+108>>2]=b;qa(b)}b=H[d+92>>2];if(b){H[d+96>>2]=b;qa(b)}c=H[d+80>>2];H[d+80>>2]=0;if(c){e=c-4|0;b=H[e>>2];if(b){b=c+(b<<5)|0;while(1){b=Aa(b-32|0);if((c|0)!=(b|0)){continue}break}}qa(e)}b=H[d+68>>2];if(b){H[d+72>>2]=b;qa(b)}b=H[d+44>>2];H[d+44>>2]=0;if(b){qa(b)}b=H[d+32>>2];if(b){H[d+36>>2]=b;qa(b)}Aa(d);b=H[a+184>>2];if(b){H[a+188>>2]=b;qa(b)}c=H[a+172>>2];if(c){b=H[a+176>>2];if((c|0)==(b|0)){b=c}else{while(1){e=H[b-20>>2];if(e){H[b-16>>2]=e;qa(e)}e=H[b-32>>2];if(e){H[b-28>>2]=e;qa(e)}oc(b-132|0);b=b-136|0;if((c|0)!=(b|0)){continue}break}b=H[a+172>>2]}H[a+176>>2]=c;qa(b)}b=H[a+152>>2];if(b){H[a+156>>2]=b;qa(b)}b=H[a+140>>2];if(b){qa(b)}b=H[a+128>>2];if(b){while(1){c=H[b>>2];qa(b);b=c;if(b){continue}break}}b=H[a+120>>2];H[a+120>>2]=0;if(b){qa(b)}b=H[a+108>>2];if(b){H[a+112>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+84>>2];if(b){qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;qa(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;qa(b)}b=H[a+28>>2];if(b){qa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+12>>2];H[a+12>>2]=0;if(b){pc(a+12|0,b)}return a|0}function nl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+8>>2]-H[a+4>>2]>>2;b=H[a+40>>2];c=H[a+36>>2];d=b-c>>2;a:{if(e>>>0>d>>>0){g=e-d|0;c=H[a+44>>2];b=H[a+40>>2];if(g>>>0<=c-b>>2>>>0){if(g){i=b;b=g<<2;b=ta(i,0,b)+b|0}H[a+40>>2]=b;break a}b:{c:{d:{j=H[a+36>>2];e=b-j>>2;f=e+g|0;if(f>>>0<1073741824){d=c-j|0;c=d>>1;d=d>>>0<2147483644?c>>>0>>0?f:c:1073741823;if(d){if(d>>>0>=1073741824){break d}i=ra(d<<2)}h=(e<<2)+i|0;c=g<<2;f=ta(h,0,c);e=c+f|0;d=(d<<2)+i|0;if((b|0)==(j|0)){break c}while(1){b=b-4|0;c=H[b>>2];H[b>>2]=0;h=h-4|0;H[h>>2]=c;if((b|0)!=(j|0)){continue}break}H[a+44>>2]=d;d=H[a+40>>2];H[a+40>>2]=e;b=H[a+36>>2];H[a+36>>2]=h;if((b|0)==(d|0)){break b}while(1){d=d-4|0;c=H[d>>2];H[d>>2]=0;if(c){fa[H[H[c>>2]+4>>2]](c)}if((b|0)!=(d|0)){continue}break}break b}va();X()}ya(1604);X()}H[a+44>>2]=d;H[a+40>>2]=e;H[a+36>>2]=f}if(b){qa(b)}break a}if(d>>>0<=e>>>0){break a}c=c+(e<<2)|0;if((c|0)!=(b|0)){while(1){b=b-4|0;d=H[b>>2];H[b>>2]=0;if(d){fa[H[H[d>>2]+4>>2]](d)}if((b|0)!=(c|0)){continue}break}}H[a+40>>2]=c}if(H[a+8>>2]==H[a+4>>2]){return 1}b=0;while(1){e=fa[H[H[a>>2]+56>>2]](a,b)|0;d=b<<2;c=d+H[a+36>>2]|0;f=H[c>>2];H[c>>2]=e;if(f){fa[H[H[f>>2]+4>>2]](f)}c=H[d+H[a+36>>2]>>2];if(c){if(!(!(H[H[a+48>>2]+(b>>>3&536870908)>>2]>>>b&1)|K[a+52>>2]<=b>>>0)){F[c+28|0]=1}b=b+1|0;if(b>>>0>2]-H[a+4>>2]>>2>>>0){continue}}break}return(c|0)!=0|0}function Xa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=da-16|0;da=f;Da(H[a+12>>2],b);e=1;a:{if(!H[a+12>>2]){break a}m=f+14|0;n=f+15|0;o=f+16|0;while(1){b:{c:{c=H[a>>2];j=H[c+(h<<3)>>2];if(j>>>0>=64){d=1;if(j>>>0<16384){break c}if(j>>>0<=4194303){d=2;break c}break a}e=0;d=0;if(j){break c}while(1){d:{if(H[(c+(e+h<<3)|0)+8>>2]){d=e;break d}d=e+1|0;if(H[(c+(h+d<<3)|0)+8>>2]){break d}d=e+2|0;if(H[(c+(h+d<<3)|0)+8>>2]){break d}d=63;e=e+3|0;if((e|0)!=63){continue}}break}F[f+15|0]=d<<2|3;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],f+15|0,o)}h=d+h|0;break b}F[f+14|0]=j<<2|d;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],f+14|0,n)}if(!e){break b}e=H[b+20>>2];g=e;c=H[b+16>>2];if(!!c&(e|0)>=0|(e|0)>0){break b}p=d>>>0>1?d:1;e=0;while(1){e=e+1|0;l=j>>>(e<<3)-2|0;F[f+13|0]=l;e:{if(!!c&(g|0)>=0|(g|0)>0){break e}c=H[b+8>>2];d=H[b+4>>2];if((c-d|0)>0){if((f+13|0)==(m|0)){H[b+4>>2]=d;break e}F[d|0]=I[f+13|0];H[b+4>>2]=d+1;break e}k=H[b>>2];d=d-k|0;i=d+1|0;if((i|0)>=0){g=c-k|0;c=g<<1;i=g>>>0<1073741823?c>>>0>>0?i:c:2147483647;if(i){c=ra(i)}else{c=0}g=c+d|0;F[g|0]=l;if((d|0)>0){sa(c,k,d)}H[b+8>>2]=c+i;H[b+4>>2]=g+1;H[b>>2]=c;if(!k){break e}qa(k);break e}va();X()}if((e|0)==(p|0)){break b}c=H[b+16>>2];g=H[b+20>>2];continue}}e=1;h=h+1|0;if(h>>>0>2]){continue}break}}da=f+16|0}function $e(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{c:{d:{if(b){if(b>>>0>=1073741824){break d}d=ra(b<<2);c=H[a>>2];H[a>>2]=d;if(c){qa(c)}H[a+4>>2]=b;d=0;if(b-1>>>0>=3){g=b&-4;while(1){c=d<<2;H[c+H[a>>2]>>2]=0;H[H[a>>2]+(c|4)>>2]=0;H[H[a>>2]+(c|8)>>2]=0;H[H[a>>2]+(c|12)>>2]=0;d=d+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=b&3;if(c){while(1){H[H[a>>2]+(d<<2)>>2]=0;d=d+1|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}e=H[a+8>>2];if(!e){break a}c=a+8|0;g=H[e+4>>2];d=Al(b);if(d>>>0<2){break c}g=b>>>0<=g>>>0?(g>>>0)%(b>>>0)|0:g;H[H[a>>2]+(g<<2)>>2]=c;c=H[e>>2];if(!c){break a}if(d>>>0<=1){break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((g|0)==(f|0)){e=c;break e}d=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=e;e=c;g=f;break e}while(1){f=d;d=H[d>>2];if(H[c+8>>2]==H[d+8>>2]?d:0){continue}break}H[e>>2]=d;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break a}b=H[a>>2];H[a>>2]=0;if(b){qa(b)}H[a+4>>2]=0;break a}ya(1604);X()}g=b-1&g;H[H[a>>2]+(g<<2)>>2]=c;c=H[e>>2];if(!c){break a}}h=b-1|0;while(1){b=h&H[c+4>>2];f:{if((b|0)==(g|0)){e=c;break f}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=d;d=H[b>>2];if(H[c+8>>2]==H[d+8>>2]?d:0){continue}break}H[e>>2]=d;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break f}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}}}function ad(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=da-16|0;da=d;h=da-16|0;da=h;Be(d);da=h+16|0;fd(d,I[d+11|0]>>>7|0?(H[d+8>>2]&2147483647)-1|0:10);i=da-16|0;da=i;l=+b;if(I[d+11|0]>>>7|0){h=H[d+4>>2]}else{h=I[d+11|0]}while(1){a:{if(I[d+11|0]>>>7|0){e=H[d>>2]}else{e=d}c=e;M[i>>3]=l;k=da-16|0;da=k;H[k+12>>2]=i;f=da-160|0;da=f;e=-1;g=h+1|0;H[f+148>>2]=g?g-1|0:0;j=g?c:f+158|0;H[f+144>>2]=j;c=ta(f,0,144);H[c+76>>2]=-1;H[c+36>>2]=370;H[c+80>>2]=-1;H[c+44>>2]=c+159;H[c+84>>2]=c+144;b:{if((g|0)<0){H[4739]=61;break b}F[j|0]=0;g=0;f=da-208|0;da=f;H[f+204>>2]=i;e=f+160|0;ta(e,0,40);H[f+200>>2]=H[f+204>>2];c:{if((Ke(0,f+200|0,f+80|0,e)|0)<0){e=-1;break c}m=H[c+76>>2]>=0;j=H[c>>2];if(H[c+72>>2]<=0){H[c>>2]=j&-33}d:{e:{f:{if(!H[c+48>>2]){H[c+48>>2]=80;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;g=H[c+44>>2];H[c+44>>2]=f;break f}if(H[c+16>>2]){break e}}e=-1;if(Me(c)){break d}}e=Ke(c,f+200|0,f+80|0,f+160|0)}if(g){fa[H[c+36>>2]](c,0,0)|0;H[c+48>>2]=0;H[c+44>>2]=g;H[c+28>>2]=0;g=H[c+20>>2];H[c+16>>2]=0;H[c+20>>2]=0;e=g?e:-1}g=H[c>>2];H[c>>2]=g|j&32;e=g&32?-1:e;if(!m){break c}}da=f+208|0}da=c+160|0;da=k+16|0;g:{if((e|0)>=0){if(e>>>0<=h>>>0){break a}h=e;break g}h=h<<1|1}fd(d,h);continue}break}fd(d,e);h=H[d+4>>2];H[a>>2]=H[d>>2];H[a+4>>2]=h;H[a+8>>2]=H[d+8>>2];Be(d);da=i+16|0;if(I[d+11|0]>>>7|0){qa(H[d>>2])}da=d+16|0}function _a(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=H[b+16>>2];e=H[c+4>>2]-g|0;H[c>>2]=0|H[c>>2]-g;H[c+4>>2]=e;e=H[d+4>>2]-g|0;f=H[d>>2]-g|0;H[d>>2]=j|f;H[d+4>>2]=e;h=H[b+16>>2];g=e>>31;j=g+e^g;g=f>>31;if((h|0)<(j+(g+f^g)|0)){i=H[c+4>>2];k=H[c>>2];a:{b:{if((k|0)>=0){e=1;g=1;if((i|0)>=0){break a}f=1;e=-1;g=-1;if(k){break b}break a}f=-1;e=-1;g=-1;if((i|0)<=0){break a}}e=(i|0)<=0?-1:1;g=f}f=1;j=-1;l=k<<1;k=N(g,h);l=l-k|0;g=(N(e,g)|0)>=0;e=N(e,h);H[c+4>>2]=((g?0-l|0:l)+e|0)/2;e=(i<<1)-e|0;H[c>>2]=(k+(g?0-e|0:e)|0)/2;g=H[d+4>>2];i=H[d>>2];c:{d:{if((i|0)>=0){e=1;if((g|0)>=0){break c}j=1;f=-1;e=-1;if(i){break d}break c}f=-1;e=-1;if((g|0)<=0){break c}}f=(g|0)<=0?-1:1;e=j}h=i<<1;j=H[b+16>>2];i=N(j,e);h=h-i|0;l=0-h|0;k=h;h=(N(e,f)|0)>=0;f=N(f,j);e=((h?l:k)+f|0)/2|0;H[d+4>>2]=e;f=(g<<1)-f|0;f=(i+(h?0-f|0:f)|0)/2|0;H[d>>2]=f}e:{f:{g:{h:{i:{j:{if(f){if((f|0)>=0){break j}if((e|0)>0){break h}break e}if(e){break i}e=0;f=0;break e}if((e|0)<0){break g}e=0-H[c+4>>2]|0;H[c>>2]=0-H[c>>2];H[c+4>>2]=e;f=0-H[d>>2]|0;e=0-H[d+4>>2]|0;break f}if((e|0)<=0){break g}}e=H[c>>2];H[c>>2]=0-H[c+4>>2];H[c+4>>2]=e;f=0-H[d+4>>2]|0;e=H[d>>2];break f}e=0-H[c>>2]|0;H[c>>2]=H[c+4>>2];H[c+4>>2]=e;f=H[d+4>>2];e=0-H[d>>2]|0}H[d>>2]=f;H[d+4>>2]=e}d=H[c>>2];b=H[b+4>>2];c=H[c+4>>2]-e|0;H[a+4>>2]=(b&c>>31)+c;c=a;a=d-f|0;H[c>>2]=(b&a>>31)+a}function pf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;a=0;a:{if(!d|(!b|(c|0)<0)){break a}f=H[b+8>>2];if(H[b+12>>2]-f>>2<=(c|0)){break a}if(!H[b+4>>2]){a=ra(36);H[a+4>>2]=0;H[a+8>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;e=a+16|0;H[e>>2]=0;H[e+4>>2]=0;H[a>>2]=a+4;H[a+32>>2]=0;H[a+12>>2]=e;H[b+4>>2]=a}a=H[H[f+(c<<2)>>2]+60>>2];e=ra(28);ld(e,d);H[e+24>>2]=a;a=H[b+4>>2];c=da-16|0;da=c;H[c+8>>2]=e;b:{if(!e){H[c+8>>2]=0;break b}b=H[a+28>>2];c:{if(b>>>0>2]){H[c+8>>2]=0;H[b>>2]=e;H[a+28>>2]=b+4;break c}b=0;d:{e:{f:{e=H[a+24>>2];f=H[a+28>>2]-e>>2;d=f+1|0;if(d>>>0<1073741824){e=H[a+32>>2]-e|0;g=e>>1;d=e>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(d){if(d>>>0>=1073741824){break f}b=ra(d<<2)}g=H[c+8>>2];H[c+8>>2]=0;e=(f<<2)+b|0;H[e>>2]=g;f=(d<<2)+b|0;g=e+4|0;b=H[a+28>>2];d=H[a+24>>2];if((b|0)==(d|0)){break e}while(1){b=b-4|0;h=H[b>>2];H[b>>2]=0;e=e-4|0;H[e>>2]=h;if((b|0)!=(d|0)){continue}break}H[a+32>>2]=f;b=H[a+28>>2];H[a+28>>2]=g;d=H[a+24>>2];H[a+24>>2]=e;if((b|0)==(d|0)){break d}while(1){b=b-4|0;a=H[b>>2];H[b>>2]=0;if(a){mb(a+12|0,H[a+16>>2]);lb(a,H[a+4>>2]);qa(a)}if((b|0)!=(d|0)){continue}break}break d}va();X()}ya(1604);X()}H[a+32>>2]=f;H[a+28>>2]=g;H[a+24>>2]=e}if(d){qa(d)}}a=H[c+8>>2];H[c+8>>2]=0;if(!a){break b}mb(a+12|0,H[a+16>>2]);lb(a,H[a+4>>2]);qa(a)}da=c+16|0;a=1}return a|0}function Yf(a,b){var c=0,d=0,e=0,f=0,g=0;e=-1;c=(b|0)==-1;d=-1;a:{if(c){break a}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}f=c?-1:(b>>>0)/3|0;g=H[a+28>>2]+(f>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break b}c=(c>>>0)/3|0;if(H[H[a+28>>2]+(c>>>3&268435452)>>2]>>>c&1){break b}f=H[a+172>>2];if((f|0)==H[a+176>>2]){break b}g=1<>>5<<2;while(1){Fa(H[a+280>>2]+(c<<5)|0,(g&H[b+H[(N(c,136)+f|0)+4>>2]>>2])!=0);c=c+1|0;f=H[a+172>>2];if(c>>>0<(H[a+176>>2]-f|0)/136>>>0){continue}break}}c:{if((e|0)==-1){break c}b=H[H[H[a+12>>2]+12>>2]+(e<<2)>>2];if((b|0)==-1){break c}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break c}b=H[a+172>>2];if((b|0)==H[a+176>>2]){break c}f=1<>>5<<2;while(1){Fa(H[a+280>>2]+(c<<5)|0,(f&H[e+H[(N(c,136)+b|0)+4>>2]>>2])!=0);c=c+1|0;b=H[a+172>>2];if(c>>>0<(H[a+176>>2]-b|0)/136>>>0){continue}break}}d:{if((d|0)==-1){break d}b=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2];if((b|0)==-1){break d}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break d}b=H[a+172>>2];if((b|0)==H[a+176>>2]){break d}e=1<>>5<<2;while(1){Fa(H[a+280>>2]+(c<<5)|0,(e&H[d+H[(N(c,136)+b|0)+4>>2]>>2])!=0);c=c+1|0;b=H[a+172>>2];if(c>>>0<(H[a+176>>2]-b|0)/136>>>0){continue}break}}}function sc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=da-48|0;da=e;f=a+16|0;d=H[f>>2];a:{b:{if(!d){break b}g=H[b>>2];c=f;while(1){h=(g|0)>H[d+16>>2];c=h?c:d;d=H[(h<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)){break b}if((g|0)>=H[c+16>>2]){break a}}h=e+24|0;H[h+4>>2]=0;H[h+8>>2]=0;i=h+4|0;H[h>>2]=i;b=H[b>>2];j=e+16|0;d=j;H[d>>2]=0;H[d+4>>2]=0;H[e+8>>2]=b;H[e+12>>2]=d;c=H[h>>2];if((i|0)!=(c|0)){g=e+8|4;while(1){b=c;d=c+16|0;Ig(e+40|0,g,j,d,d);d=H[c+4>>2];c:{if(!d){c=H[b+8>>2];if((b|0)==H[c>>2]){break c}d=b+8|0;while(1){b=H[d>>2];d=b+8|0;c=H[b+8>>2];if((b|0)!=H[c>>2]){continue}break}break c}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(i|0)){continue}break}}d=H[f>>2];d:{if(d){f=a+16|0;g=H[e+8>>2];while(1){b=H[d+16>>2];e:{if((b|0)>(g|0)){c=H[d>>2];if(c){break e}f=d;break d}if((b|0)>=(g|0)){break d}f=d+4|0;c=H[d+4>>2];if(!c){break d}d=f}f=d;d=c;continue}}d=f}c=H[f>>2];if(!c){c=ra(32);H[c+16>>2]=H[e+8>>2];H[c+20>>2]=H[e+12>>2];i=c+24|0;g=H[e+16>>2];H[i>>2]=g;b=H[e+20>>2];H[c+28>>2]=b;f:{if(!b){H[c+20>>2]=i;break f}H[g+8>>2]=i;H[e+16>>2]=0;H[e+20>>2]=0;H[e+12>>2]=j}H[c+8>>2]=d;H[c>>2]=0;H[c+4>>2]=0;H[f>>2]=c;b=H[H[a+12>>2]>>2];if(b){H[a+12>>2]=b;b=H[f>>2]}else{b=c}ub(H[a+16>>2],b);H[a+20>>2]=H[a+20>>2]+1}Ka(e+8|4,H[e+16>>2]);Ka(h,H[h+4>>2])}da=e+48|0;return c+20|0}function Zf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=H[a>>2];b=b-e|0;h=(b&-4)+e|0;i=d-c|0;if((i|0)<=0){return}a:{j=i>>2;f=H[a+8>>2];g=H[a+4>>2];if((j|0)<=f-g>>2){i=g-h|0;e=i>>2;if((e|0)>=(j|0)){b=g;f=d;break a}b=g;f=(e<<2)+c|0;if((f|0)!=(d|0)){e=f;while(1){H[b>>2]=H[e>>2];b=b+4|0;e=e+4|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=b;if((i|0)>0){break a}return}b:{d=j+(g-e>>2)|0;if(d>>>0<1073741824){f=f-e|0;k=f>>1;f=f>>>0<2147483644?d>>>0>k>>>0?d:k:1073741823;if(f){if(f>>>0>=1073741824){break b}d=ra(f<<2)}else{d=0}c=sa(d+(b>>2<<2)|0,c,i&-4);if((b|0)>0){sa(d,e,b)}b=c+(j<<2)|0;if((g|0)!=(h|0)){while(1){H[b>>2]=H[h>>2];b=b+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}H[a+8>>2]=d+(f<<2);H[a+4>>2]=b;H[a>>2]=d;if(e){qa(e)}return}va();X()}ya(1604);X()}d=b;i=b-((j<<2)+h|0)|0;e=(i&-4)+h|0;if(g>>>0>e>>>0){j=e;while(1){H[d>>2]=H[j>>2];d=d+4|0;j=j+4|0;if(g>>>0>j>>>0){continue}break}}H[a+4>>2]=d;c:{if(!i){break c}a=i-4|0;g=(a>>>2|0)+1&3;if(g){d=0;while(1){b=b-4|0;e=e-4|0;H[b>>2]=H[e>>2];d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<12){break c}while(1){H[b-4>>2]=H[e-4>>2];H[b-8>>2]=H[e-8>>2];H[b-12>>2]=H[e-12>>2];b=b-16|0;e=e-16|0;H[b>>2]=H[e>>2];if((e|0)!=(h|0)){continue}break}}if((c|0)==(f|0)){return}b=h;while(1){H[b>>2]=H[c>>2];b=b+4|0;c=c+4|0;if((f|0)!=(c|0)){continue}break}}function Bg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=da-16|0;da=l;g=H[b+28>>2];h=H[b+24>>2];H[a+8>>2]=h;H[a+12>>2]=g;g=H[b+20>>2];H[a>>2]=H[b+16>>2];H[a+4>>2]=g;g=H[b+36>>2];H[a+16>>2]=H[b+32>>2];H[a+20>>2]=g;H[a+8>>2]=d+h;a:{b:{if((d|0)>0){g=H[b>>2];while(1){f=H[b+4>>2]-g>>2;h=H[(i<<2)+c>>2];if(f>>>0<=h>>>0){H[l+12>>2]=0;j=h+1|0;c:{if(j>>>0>f>>>0){Ma(b,j-f|0,l+12|0);break c}if(f>>>0<=j>>>0){break c}H[b+4>>2]=(j<<2)+g}g=H[b>>2]}j=(h<<2)+g|0;f=H[j>>2];d:{if((f|0)>=2){k=+(f|0);k=za(k)*k;break d}k=0;if(f){break d}H[a+16>>2]=H[a+16>>2]+1;if(h>>>0<=K[a+12>>2]){break d}H[a+12>>2]=h}h=f+1|0;H[j>>2]=h;m=+(h|0);n=a,o=za(m)*m-k+M[a>>3],M[n>>3]=o;i=i+1|0;if((i|0)!=(d|0)){continue}break}if(e){break b}if((d|0)<=0){break a}a=H[b>>2];e=0;i=0;if(d-1>>>0>=3){h=d&-4;g=0;while(1){b=i<<2;f=a+(H[b+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;f=a+(H[(b|4)+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;f=a+(H[(b|8)+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;b=a+(H[(b|12)+c>>2]<<2)|0;H[b>>2]=H[b>>2]-1;i=i+4|0;g=g+4|0;if((h|0)!=(g|0)){continue}break}}b=d&3;if(!b){break a}while(1){d=a+(H[(i<<2)+c>>2]<<2)|0;H[d>>2]=H[d>>2]-1;i=i+1|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}break a}if(!e){break a}}c=H[a+4>>2];H[b+16>>2]=H[a>>2];H[b+20>>2]=c;H[b+32>>2]=H[a+16>>2];c=H[a+12>>2];H[b+24>>2]=H[a+8>>2];H[b+28>>2]=c}da=l+16|0}function il(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+16>>2];a:{if(H[a+20>>2]-e>>2<=(b|0)){break a}i=H[e+(b<<2)>>2];if((i|0)<0){break a}if(K[a+52>>2]<=i>>>0){b:{b=da-16|0;da=b;c:{f=H[a+52>>2];c=i+1|0;d:{if(f>>>0>>0){e=c-f|0;g=H[a+56>>2];d=g<<5;e:{if(!(e>>>0>d>>>0|f>>>0>d-e>>>0)){H[a+52>>2]=c;d=f&31;c=H[a+48>>2]+(f>>>3&536870908)|0;break e}H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;if((c|0)<0){break c}if(d>>>0<=1073741822){c=c+31&-32;d=g<<6;h=c>>>0>d>>>0?c:d}else{h=2147483647}Hb(b,h);d=H[a+52>>2];H[b+4>>2]=d+e;f=H[a+48>>2];c=H[b>>2];f:{if((d|0)<=0){d=0;break f}h=d>>>5|0;g=h<<2;c=xa(c,f,g)+g|0;d=d-(h<<5)|0;g:{if((d|0)<=0){d=0;break g}h=-1>>>32-d|0;H[c>>2]=H[c>>2]&(h^-1)|h&H[f+g>>2]}f=H[a+48>>2]}H[a+48>>2]=H[b>>2];H[b>>2]=f;g=H[a+52>>2];H[a+52>>2]=H[b+4>>2];H[b+4>>2]=g;g=H[a+56>>2];H[a+56>>2]=H[b+8>>2];H[b+8>>2]=g;if(!f){break e}qa(f)}if(!e){break d}if(d){f=32-d|0;g=f>>>0>e>>>0?e:f;H[c>>2]=H[c>>2]&(-1<>>f-g^-1);e=e-g|0;c=c+4|0}h=c;c=e>>>5<<2;d=ta(h,0,c);e=e&31;if(!e){break d}c=c+d|0;H[c>>2]=H[c>>2]&(-1>>>32-e^-1);break d}H[a+52>>2]=c}da=b+16|0;break b}La();X()}}c=1;b=H[a+48>>2]+(i>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];a=H[a+36>>2];if(b-a>>2>>>0<=i>>>0){break a}F[H[a+(i<<2)>>2]+28|0]=1}return c|0}function Oe(a){var b=0,c=0,d=0,e=0,f=0;a:{b:{c:{d:{e:{b=H[a+4>>2];f:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break f}b=Qa(a)}switch(b-43|0){case 0:case 2:break e;default:break d}}f=(b|0)==45;b=H[a+4>>2];g:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break g}b=Qa(a)}e=b-58|0;if(e>>>0>4294967285){break c}if(H[a+116>>2]<0){break b}H[a+4>>2]=H[a+4>>2]-1;break b}e=b-58|0}if(e>>>0<4294967286){break b}e=b-48|0;if(e>>>0<10){while(1){d=(N(d,10)+b|0)-48|0;c=(d|0)<214748364;b=H[a+4>>2];h:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break h}b=Qa(a)}e=b-48|0;if(c&e>>>0<=9){continue}break}c=d>>31}i:{if(e>>>0>=10){break i}while(1){c=xl(d,c,10,0);d=c+b|0;b=ea;b=c>>>0>d>>>0?b+1|0:b;c=d;d=c-48|0;c=b-(c>>>0<48)|0;b=H[a+4>>2];j:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break j}b=Qa(a)}e=b-48|0;if(e>>>0>9){break i}if(d>>>0<2061584302&(c|0)<=21474836|(c|0)<21474836){continue}break}}if(e>>>0<10){while(1){b=H[a+4>>2];k:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break k}b=Qa(a)}if(b-48>>>0<10){continue}break}}b=H[a+116>>2];if((b|0)>0|(b|0)>=0){H[a+4>>2]=H[a+4>>2]-1}a=d;d=f?0-a|0:a;c=f?0-(((a|0)!=0)+c|0)|0:c;break a}c=-2147483648;if(H[a+116>>2]<0){break a}H[a+4>>2]=H[a+4>>2]-1;ea=-2147483648;return 0}ea=c;return d}function qe(a,b){var c=0,d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[a+8>>2]=b;H[a>>2]=0;c=a+12|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+60>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;c=a- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[c+16>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+100>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+112>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;g=a+140|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();X()}H[a+116>>2]=0;H[a+120>>2]=0;H[a+132>>2]=0;H[a+136>>2]=0;H[a+124>>2]=0;H[a+128>>2]=0;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;c=1;break a}c=b<<2;d=ra(c);H[a+104>>2]=d;f=c+d|0;H[a+112>>2]=f;ta(d,0,c);H[a+124>>2]=0;H[a+116>>2]=0;H[a+120>>2]=0;H[a+108>>2]=f;d=ra(c);H[a+116>>2]=d;f=c+d|0;H[a+124>>2]=f;ta(d,0,c);H[a+136>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=f;d=ra(c);H[a+128>>2]=d;f=c+d|0;H[a+136>>2]=f;ta(d,0,c);H[a+132>>2]=f;d=ra(c);H[e>>2]=d;f=c+d|0;H[e+8>>2]=f;ta(d,0,c);H[e+4>>2]=f;c=b<<5|1}cc(g,c,e);d=H[e>>2];if(d){H[e+4>>2]=d;qa(d)}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if(b){b=b<<2;d=ra(b);H[e>>2]=d;f=b+d|0;H[e+8>>2]=f;ta(d,0,b);H[e+4>>2]=f}cc(a+152|0,c,e);b=H[e>>2];if(b){H[e+4>>2]=b;qa(b)}da=e+16|0;return a}function ej(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=da-16|0;da=f;fa[H[H[b>>2]+64>>2]](a,b);if(!H[a>>2]){if(F[a+15|0]<0){qa(H[a+4>>2])}g=H[b+48>>2];c=ra(32);H[f>>2]=c;H[f+4>>2]=29;H[f+8>>2]=-2147483616;F[c+29|0]=0;d=I[1420]|I[1421]<<8|(I[1422]<<16|I[1423]<<24);e=I[1416]|I[1417]<<8|(I[1418]<<16|I[1419]<<24);F[c+21|0]=e;F[c+22|0]=e>>>8;F[c+23|0]=e>>>16;F[c+24|0]=e>>>24;F[c+25|0]=d;F[c+26|0]=d>>>8;F[c+27|0]=d>>>16;F[c+28|0]=d>>>24;d=I[1415]|I[1416]<<8|(I[1417]<<16|I[1418]<<24);e=I[1411]|I[1412]<<8|(I[1413]<<16|I[1414]<<24);F[c+16|0]=e;F[c+17|0]=e>>>8;F[c+18|0]=e>>>16;F[c+19|0]=e>>>24;F[c+20|0]=d;F[c+21|0]=d>>>8;F[c+22|0]=d>>>16;F[c+23|0]=d>>>24;d=I[1407]|I[1408]<<8|(I[1409]<<16|I[1410]<<24);e=I[1403]|I[1404]<<8|(I[1405]<<16|I[1406]<<24);F[c+8|0]=e;F[c+9|0]=e>>>8;F[c+10|0]=e>>>16;F[c+11|0]=e>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1399]|I[1400]<<8|(I[1401]<<16|I[1402]<<24);e=I[1395]|I[1396]<<8|(I[1397]<<16|I[1398]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;c=fc(g,f,0);if(F[f+11|0]<0){qa(H[f>>2])}if(c){fa[H[H[b>>2]+68>>2]](b)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}da=f+16|0}function ae(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=H[a+8>>2];d=H[a>>2];if(c-d>>3>>>0>=2){f=H[a+4>>2];h=f-d>>3;g=h>>>0<2?h:2;b:{if(!g){break b}j=g-1|0;i=g&7;c:{if(!i){c=d;break c}c=d;while(1){k=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=k;g=g-1|0;c=c+8|0;e=e+1|0;if((e|0)!=(i|0)){continue}break}}if(j>>>0<7){break b}while(1){e=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=e;e=H[b+4>>2];H[c+8>>2]=H[b>>2];H[c+12>>2]=e;e=H[b+4>>2];H[c+16>>2]=H[b>>2];H[c+20>>2]=e;e=H[b+4>>2];H[c+24>>2]=H[b>>2];H[c+28>>2]=e;e=H[b+4>>2];H[c+32>>2]=H[b>>2];H[c+36>>2]=e;e=H[b+4>>2];H[c+40>>2]=H[b>>2];H[c+44>>2]=e;e=H[b+4>>2];H[c+48>>2]=H[b>>2];H[c+52>>2]=e;e=H[b+4>>2];H[c+56>>2]=H[b>>2];H[c+60>>2]=e;c=c- -64|0;g=g-8|0;if(g){continue}break}}if(h>>>0<2){d=a;a=2-h|0;if(a){a=(a<<3)+f|0;while(1){c=H[b+4>>2];H[f>>2]=H[b>>2];H[f+4>>2]=c;f=f+8|0;if((a|0)!=(f|0)){continue}break}}else{a=f}H[d+4>>2]=a;return}break a}if(d){H[a+4>>2]=d;qa(d);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;c=0}d=c>>2;d=c>>>0<2147483640?d>>>0<2?2:d:536870911;if(d>>>0<536870912){c=d<<3;d=ra(c);H[a>>2]=d;H[a+8>>2]=c+d;e=H[b>>2];f=H[b+4>>2];c=d;b=0;while(1){H[c>>2]=e;H[c+4>>2]=f;c=c+8|0;b=b+1|0;if((b|0)!=2){continue}break}break a}va();X()}H[a+4>>2]=d+16}function yb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=H[a+8>>2];e=H[a>>2];if(d-e>>2>>>0>=b>>>0){g=H[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){H[d>>2]=H[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){d=a;a=b-h|0;if(a){a=(a<<2)+g|0;while(1){H[g>>2]=H[c>>2];g=g+4|0;if((a|0)!=(g|0)){continue}break}}else{a=g}H[d+4>>2]=a;return}H[a+4>>2]=e+(b<<2);return}if(e){H[a+4>>2]=e;qa(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=ra(d);H[a>>2]=e;H[a+8>>2]=d+e;c=H[c>>2];d=e;g=b&7;if(g){while(1){H[d>>2]=c;d=d+4|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){H[d+28>>2]=c;H[d+24>>2]=c;H[d+20>>2]=c;H[d+16>>2]=c;H[d+12>>2]=c;H[d+8>>2]=c;H[d+4>>2]=c;H[d>>2]=c;d=d+32|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=e;return}va();X()}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;Xe(a,b,c);c=H[a+84>>2];d=H[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=H[a+92>>2];c=H[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=d&7;if(f){while(1){H[b>>2]=1;b=b+4|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}c=(d<<2)+c|0;if((d-1&1073741823)>>>0<7){break c}while(1){H[b+24>>2]=1;H[b+28>>2]=1;H[b+16>>2]=1;H[b+20>>2]=1;H[b+8>>2]=1;H[b+12>>2]=1;H[b>>2]=1;H[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}H[a+88>>2]=c;break b}d:{f=H[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;h=e>>1;e=e>>>0<2147483644?b>>>0>h>>>0?b:h:1073741823;if(e){if(e>>>0>=1073741824){break d}i=ra(e<<2)}c=(c<<2)+i|0;b=c;h=d&7;if(h){b=c;while(1){H[b>>2]=1;b=b+4|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}c=c+(d<<2)|0;if((d-1&1073741823)>>>0>=7){while(1){H[b+24>>2]=1;H[b+28>>2]=1;H[b+16>>2]=1;H[b+20>>2]=1;H[b+8>>2]=1;H[b+12>>2]=1;H[b>>2]=1;H[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){sa(i,f,j)}H[a+92>>2]=(e<<2)+i;H[a+88>>2]=c;H[a+84>>2]=i;if(f){qa(f)}break b}va();X()}ya(1604);X()}return}if(b>>>0>=d>>>0){break a}H[a+88>>2]=c+(b<<2)}}function bb(a){var b=0,c=0,d=0,e=0,f=0;e=da-16|0;da=e;b=ra(16);H[e>>2]=b;H[e+4>>2]=14;H[e+8>>2]=-2147483632;F[b+14|0]=0;c=I[1761]|I[1762]<<8|(I[1763]<<16|I[1764]<<24);d=I[1757]|I[1758]<<8|(I[1759]<<16|I[1760]<<24);F[b+6|0]=d;F[b+7|0]=d>>>8;F[b+8|0]=d>>>16;F[b+9|0]=d>>>24;F[b+10|0]=c;F[b+11|0]=c>>>8;F[b+12|0]=c>>>16;F[b+13|0]=c>>>24;c=I[1755]|I[1756]<<8|(I[1757]<<16|I[1758]<<24);d=I[1751]|I[1752]<<8|(I[1753]<<16|I[1754]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;f=Db(a,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}b=ra(16);H[e>>2]=b;H[e+4>>2]=14;H[e+8>>2]=-2147483632;F[b+14|0]=0;c=I[1776]|I[1777]<<8|(I[1778]<<16|I[1779]<<24);d=I[1772]|I[1773]<<8|(I[1774]<<16|I[1775]<<24);F[b+6|0]=d;F[b+7|0]=d>>>8;F[b+8|0]=d>>>16;F[b+9|0]=d>>>24;F[b+10|0]=c;F[b+11|0]=c>>>8;F[b+12|0]=c>>>16;F[b+13|0]=c>>>24;c=I[1770]|I[1771]<<8|(I[1772]<<16|I[1773]<<24);d=I[1766]|I[1767]<<8|(I[1768]<<16|I[1769]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;a=Db(a,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}da=e+16|0;a=(a|0)>(f|0)?a:f;return(a|0)==-1?5:a}function ne(a,b){var c=0,d=0,e=0,f=0,g=0;d=da-16|0;da=d;H[a+8>>2]=b;H[a>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;H[a+28>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+48>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+68>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+88>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+100>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;g=a+128|0;a:{b:{if(b){if(b>>>0<1073741824){break b}va();X()}H[a+104>>2]=0;H[a+108>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;e=1;break a}e=b<<2;c=ra(e);H[a+92>>2]=c;f=c+e|0;H[a+100>>2]=f;ta(c,0,e);H[a+112>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+96>>2]=f;c=ra(e);H[a+104>>2]=c;f=c+e|0;H[a+112>>2]=f;ta(c,0,e);H[a+124>>2]=0;H[a+116>>2]=0;H[a+120>>2]=0;H[a+108>>2]=f;c=ra(e);H[a+116>>2]=c;f=c+e|0;H[a+124>>2]=f;ta(c,0,e);H[a+120>>2]=f;c=ra(e);H[d>>2]=c;f=c+e|0;H[d+8>>2]=f;ta(c,0,e);H[d+4>>2]=f;e=b<<5|1}cc(g,e,d);c=H[d>>2];if(c){H[d+4>>2]=c;qa(c)}H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;if(b){b=b<<2;c=ra(b);H[d>>2]=c;f=b+c|0;H[d+8>>2]=f;ta(c,0,b);H[d+4>>2]=f}cc(a+140|0,e,d);b=H[d>>2];if(b){H[d+4>>2]=b;qa(b)}da=d+16|0;return a}function Hc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=-1;a:{if((b|0)==-1){h=H[a+12>>2];i=h+12|0;d=1;g=-1;break a}b:{c:{if((b>>>0)%3|0){e=b-1|0;h=H[a+12>>2];i=h+12|0;break c}h=H[a+12>>2];i=h+12|0;e=b+2|0;if((e|0)!=-1){break c}d=1;break b}g=H[h+12>>2];while(1){f=e;d=H[g+(e<<2)>>2];if((d|0)!=-1){f=-1;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)!=-1){continue}}break}d=(d|0)!=-1;g=-1;if((b|0)==-1){break a}}g=H[H[h>>2]+(b<<2)>>2]}b=0;if(c){b=H[a+84>>2]+(g>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2]+(g<<2)>>2];e=H[a+140>>2]+(c>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0){e=f-1|0;break e}e=f+2|0;if((e|0)!=-1){break e}f=-3;break d}c=H[H[h>>2]+(e<<2)>>2]}if((c|0)!=(g|0)){j=H[a+84>>2];while(1){a=f;f=(c>>>3&536870908)+j|0;H[f>>2]=H[f>>2]|1<>>0)%3|0?d:a-2|0;if((d|0)==-1){break f}e=H[i>>2];while(1){a=H[e+(d<<2)>>2];if((a|0)!=-1){d=a+1|0;d=(d>>>0)%3|0?d:a-2|0;if((d|0)!=-1){continue}break f}break}g:{if((d>>>0)%3|0){e=d-1|0;break g}e=d+2|0;if((e|0)!=-1){break g}f=-3;break f}c=H[H[h>>2]+(e<<2)>>2];f=d}b=b+1|0;if((c|0)!=(g|0)){continue}break}}}function bg(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{b:{b=H[a+12>>2];c=H[b+4>>2]-H[b>>2]|0;if(!c){break b}j=a+140|0;c=c>>2;k=c>>>0>1?c:1;while(1){c:{if(Fc(b,(e>>>0)/3|0)){break c}b=H[a+12>>2];if(H[H[b+12>>2]+(e<<2)>>2]!=-1){break c}f=H[a+152>>2];d=e+1|0;d=(d>>>0)%3|0?d:e-2|0;if((d|0)!=-1){b=H[H[b>>2]+(d<<2)>>2]}else{b=-1}c=b<<2;if(H[f+c>>2]!=-1){break c}g=-1;h=H[a+144>>2];b=h;d=H[a+148>>2];if((b|0)==d<<5){if((h+1|0)<0){break a}if(h>>>0<=1073741822){b=h+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Hb(j,b);f=H[a+152>>2];g=H[c+f>>2];b=H[a+144>>2]}H[a+144>>2]=b+1;d=H[a+140>>2]+(b>>>3&536870908)|0;i=H[d>>2];m=d,n=Bl(b)&i,H[m>>2]=n;if((g|0)!=-1){break c}i=H[a+12>>2];c=c+f|0;b=e;while(1){d=b;H[c>>2]=h;b=-1;g=-1;d:{if((d|0)==-1){break d}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break d}l=H[i+12>>2];while(1){d=H[(c<<2)+l>>2];if((d|0)!=-1){c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)!=-1){continue}break d}break}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){g=H[H[i>>2]+(b<<2)>>2]}b=c}c=(g<<2)+f|0;if(H[c>>2]==-1){continue}break}}e=e+1|0;if((k|0)==(e|0)){break b}b=H[a+12>>2];continue}}return 1}La();X()}function Og(a,b,c){var d=0,e=0,f=0,g=0;f=da-16|0;da=f;d=ra(16);H[f>>2]=d;H[f+4>>2]=14;H[f+8>>2]=-2147483632;F[d+14|0]=0;g=I[1761]|I[1762]<<8|(I[1763]<<16|I[1764]<<24);e=I[1757]|I[1758]<<8|(I[1759]<<16|I[1760]<<24);F[d+6|0]=e;F[d+7|0]=e>>>8;F[d+8|0]=e>>>16;F[d+9|0]=e>>>24;F[d+10|0]=g;F[d+11|0]=g>>>8;F[d+12|0]=g>>>16;F[d+13|0]=g>>>24;g=I[1755]|I[1756]<<8|(I[1757]<<16|I[1758]<<24);e=I[1751]|I[1752]<<8|(I[1753]<<16|I[1754]<<24);F[d|0]=e;F[d+1|0]=e>>>8;F[d+2|0]=e>>>16;F[d+3|0]=e>>>24;F[d+4|0]=g;F[d+5|0]=g>>>8;F[d+6|0]=g>>>16;F[d+7|0]=g>>>24;d=a+4|0;tb(d,f,b);if(F[f+11|0]<0){qa(H[f>>2])}a=ra(16);H[f>>2]=a;H[f+4>>2]=14;H[f+8>>2]=-2147483632;F[a+14|0]=0;e=I[1776]|I[1777]<<8|(I[1778]<<16|I[1779]<<24);b=I[1772]|I[1773]<<8|(I[1774]<<16|I[1775]<<24);F[a+6|0]=b;F[a+7|0]=b>>>8;F[a+8|0]=b>>>16;F[a+9|0]=b>>>24;F[a+10|0]=e;F[a+11|0]=e>>>8;F[a+12|0]=e>>>16;F[a+13|0]=e>>>24;e=I[1770]|I[1771]<<8|(I[1772]<<16|I[1773]<<24);b=I[1766]|I[1767]<<8|(I[1768]<<16|I[1769]<<24);F[a|0]=b;F[a+1|0]=b>>>8;F[a+2|0]=b>>>16;F[a+3|0]=b>>>24;F[a+4|0]=e;F[a+5|0]=e>>>8;F[a+6|0]=e>>>16;F[a+7|0]=e>>>24;tb(d,f,c);if(F[f+11|0]<0){qa(H[f>>2])}da=f+16|0}function Rf(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=10560;e=H[a+280>>2];H[a+280>>2]=0;if(e){d=e-4|0;b=H[d>>2];if(b){c=(b<<5)+e|0;while(1){c=Aa(c-32|0);if((e|0)!=(c|0)){continue}break}}qa(d)}b=H[a+268>>2];if(b){H[a+272>>2]=b;qa(b)}b=H[a+244>>2];H[a+244>>2]=0;if(b){qa(b)}b=H[a+232>>2];if(b){H[a+236>>2]=b;qa(b)}Aa(a+200|0);b=H[a+184>>2];if(b){H[a+188>>2]=b;qa(b)}d=H[a+172>>2];if(d){c=H[a+176>>2];if((d|0)==(c|0)){b=d}else{while(1){b=H[c-20>>2];if(b){H[c-16>>2]=b;qa(b)}b=H[c-32>>2];if(b){H[c-28>>2]=b;qa(b)}oc(c-132|0);c=c-136|0;if((d|0)!=(c|0)){continue}break}b=H[a+172>>2]}H[a+176>>2]=d;qa(b)}b=H[a+152>>2];if(b){H[a+156>>2]=b;qa(b)}b=H[a+140>>2];if(b){qa(b)}c=H[a+128>>2];if(c){while(1){b=H[c>>2];qa(c);c=b;if(b){continue}break}}b=H[a+120>>2];H[a+120>>2]=0;if(b){qa(b)}b=H[a+108>>2];if(b){H[a+112>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+84>>2];if(b){qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;qa(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;qa(b)}b=H[a+28>>2];if(b){qa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+12>>2];H[a+12>>2]=0;if(b){pc(a+12|0,b)}return a|0}function sa(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){aa(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){F[c|0]=I[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){H[c>>2]=H[b>>2];H[c+4>>2]=H[b+4>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=H[b+12>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=H[b+20>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=H[b+28>>2];H[c+32>>2]=H[b+32>>2];H[c+36>>2]=H[b+36>>2];H[c+40>>2]=H[b+40>>2];H[c+44>>2]=H[b+44>>2];H[c+48>>2]=H[b+48>>2];H[c+52>>2]=H[b+52>>2];H[c+56>>2]=H[b+56>>2];H[c+60>>2]=H[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){H[c>>2]=H[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){F[c|0]=I[b|0];F[c+1|0]=I[b+1|0];F[c+2|0]=I[b+2|0];F[c+3|0]=I[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){F[c|0]=I[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function Qa(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=H[a+112>>2];d=H[a+116>>2];e=!!(b|d);c=b;a:{i=e;e=H[a+4>>2];f=H[a+44>>2];b=e-f|0;h=b;g=b+H[a+120>>2]|0;b=H[a+124>>2]+(b>>31)|0;b=g>>>0>>0?b+1|0:b;if(!(i&(c>>>0<=g>>>0&(b|0)>=(d|0)|(b|0)>(d|0)))){d=da-16|0;da=d;e=-1;c=H[a+72>>2];H[a+72>>2]=c-1|c;if(H[a+20>>2]!=H[a+28>>2]){fa[H[a+36>>2]](a,0,0)|0}H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;c=H[a>>2];b:{if(c&4){H[a>>2]=c|32;c=-1;break b}f=H[a+44>>2]+H[a+48>>2]|0;H[a+8>>2]=f;H[a+4>>2]=f;c=c<<27>>31}c:{if(c){break c}if((fa[H[a+32>>2]](a,d+15|0,1)|0)!=1){break c}e=I[d+15|0]}da=d+16|0;if((e|0)>=0){break a}f=H[a+44>>2];e=H[a+4>>2]}H[a+112>>2]=-1;H[a+116>>2]=-1;H[a+104>>2]=e;d=f-e|0;e=d+g|0;b=(d>>31)+b|0;H[a+120>>2]=e;H[a+124>>2]=d>>>0>e>>>0?b+1|0:b;return-1}d=g+1|0;b=d?b:b+1|0;g=H[a+4>>2];f=H[a+8>>2];c=H[a+112>>2];h=H[a+116>>2];d:{if(!(c|h)){break d}i=c-d|0;c=h-(b+(d>>>0>c>>>0)|0)|0;j=f-g|0;h=j>>31;if((c|0)>=(h|0)&i>>>0>=j>>>0|(c|0)>(h|0)){break d}f=g+i|0}H[a+104>>2]=f;c=H[a+44>>2];f=c-g|0;d=f+d|0;b=(f>>31)+b|0;H[a+120>>2]=d;H[a+124>>2]=d>>>0>>0?b+1|0:b;if(c>>>0>=g>>>0){F[g-1|0]=e}return e}function Ma(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=H[a+8>>2];e=H[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=b&7;if(g){while(1){H[d>>2]=H[c>>2];d=d+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}e=(b<<2)+e|0;if((b-1&1073741823)>>>0<7){break a}while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=e;return}b:{g=H[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;i=f>>1;f=f>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(f){if(f>>>0>=1073741824){break b}j=ra(f<<2)}e=(e<<2)+j|0;d=e;i=b&7;if(i){d=e;while(1){H[d>>2]=H[c>>2];d=d+4|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}if((k|0)>0){sa(j,g,k)}H[a+8>>2]=(f<<2)+j;H[a+4>>2]=e;H[a>>2]=j;if(g){qa(g)}return}va();X()}ya(1604);X()}function Bi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a=da-32|0;da=a;a:{b:{c:{d:{if(!b){break d}f=sb(c);if(f>>>0>=4294967280){break c}e:{f:{if(f>>>0>=11){h=f+16&-16;g=ra(h);H[a+24>>2]=h|-2147483648;H[a+16>>2]=g;H[a+20>>2]=f;break f}F[a+27|0]=f;g=a+16|0;if(!f){break e}}sa(g,c,f)}F[f+g|0]=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;if(e){if((e|0)<0){break b}c=e<<2;e=ra(c);H[a>>2]=e;f=c+e|0;H[a+8>>2]=f;sa(e,d,c);H[a+4>>2]=f}c=da-48|0;da=c;d=pb(b,a+16|0);if((d|0)!=(b+4|0)){Dc(b,d)}H[c>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;d=H[a+4>>2]-H[a>>2]|0;eb(c,d);sa(H[c>>2],H[a>>2],d);g:{if(F[a+27|0]>=0){H[c+24>>2]=H[a+24>>2];d=H[a+20>>2];H[c+16>>2]=H[a+16>>2];H[c+20>>2]=d;break g}Ia(c+16|0,H[a+16>>2],H[a+20>>2])}H[c+36>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;eb(c+28|0,H[c+4>>2]-H[c>>2]|0);d=H[c>>2];sa(H[c+28>>2],d,H[c+4>>2]-d|0);d=c+16|0;Cc(c+40|0,b,d,d);d=H[c+28>>2];if(d){H[c+32>>2]=d;qa(d)}if(F[c+27|0]<0){qa(H[c+16>>2])}d=H[c>>2];if(d){H[c+4>>2]=d;qa(d)}da=c+48|0;c=H[a>>2];if(c){H[a+4>>2]=c;qa(c)}if(F[a+27|0]>=0){break d}qa(H[a+16>>2])}da=a+32|0;a=(b|0)!=0;break a}hb();X()}va();X()}return a|0}function gc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{e=H[a+124>>2];c:{if(!e){break c}f=H[a+120>>2];i=Al(e);h=e-1&d;d:{if(i>>>0<=1){break d}h=d;if(d>>>0>>0){break d}h=(d>>>0)%(e>>>0)|0}f=H[f+(h<<2)>>2];if(!f){break c}g=H[f>>2];if(!g){break c}e:{if(i>>>0<=1){f=e-1|0;while(1){e=H[g+4>>2];f:{if((e|0)!=(d|0)){if((h|0)==(e&f)){break f}break c}if(H[g+8>>2]==(d|0)){break e}}g=H[g>>2];if(g){continue}break}break c}while(1){f=H[g+4>>2];g:{if((f|0)!=(d|0)){if(e>>>0<=f>>>0){f=(f>>>0)%(e>>>0)|0}if((f|0)==(h|0)){break g}break c}if(H[g+8>>2]==(d|0)){break e}}g=H[g>>2];if(g){continue}break}break c}h=H[g+12>>2];if((h|0)==-1){break c}g=c&1;c=H[a+112>>2];if((c|0)!=H[a+116>>2]){F[c+8|0]=g;H[c+4>>2]=b;H[c>>2]=h;H[a+112>>2]=c+12;return}d=H[a+108>>2];f=c-d|0;c=(f|0)/12|0;e=c+1|0;if(e>>>0>=357913942){break b}i=c<<1;e=c>>>0<178956970?e>>>0>i>>>0?e:i:357913941;if(e>>>0>=357913942){break a}e=N(e,12);i=ra(e);c=i+N(c,12)|0;F[c+8|0]=g;H[c+4>>2]=b;H[c>>2]=h;b=c+N((f|0)/-12|0,12)|0;if((f|0)>0){sa(b,d,f)}H[a+116>>2]=e+i;H[a+112>>2]=c+12;H[a+108>>2]=b;if(!d){break c}qa(d)}return}va();X()}ya(1604);X()}function tb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=da-48|0;da=f;e=da-32|0;da=e;i=e+21|0;d=i;l=e+32|0;if(!((d|0)==(l|0)|(c|0)>=0)){F[d|0]=45;d=d+1|0;c=0-c|0}a:{b:{h=l-d|0;if((h|0)<=9){g=N(32-Q(c|1)|0,1233)>>>12|0;if((h|0)<((g-(K[(g<<2)+18416>>2]>c>>>0)|0)+1|0)){break b}}h=e;c:{if(c>>>0<=99999999){d:{if(c>>>0<=9999){c=ze(d,c);break d}g=d;d=(c>>>0)/1e4|0;c=Ac(ze(g,d),c-N(d,1e4)|0)}break c}g=(c>>>0)/1e8|0;j=c-N(g,1e8)|0;c=(j>>>0)/1e4|0;c=Ac(Ac(Ae(d,g),c),j-N(c,1e4)|0)}H[h+8>>2]=c;c=0;break a}H[e+8>>2]=l;c=61}H[e+12>>2]=c;g=da-16|0;da=g;h=da-16|0;da=h;c=f+8|0;e:{j=H[e+8>>2];e=j-i|0;if(e>>>0<=4294967279){f:{if(e>>>0<=10){F[c+11|0]=e;d=c;break f}if(e>>>0>=11){k=e+16&-16;d=k-1|0;d=(d|0)==11?k:d}else{d=10}k=d+1|0;d=ra(k);H[c>>2]=d;H[c+8>>2]=k|-2147483648;H[c+4>>2]=e}while(1){if((i|0)!=(j|0)){F[d|0]=I[i|0];d=d+1|0;i=i+1|0;continue}break}F[h+15|0]=0;F[d|0]=I[h+15|0];da=h+16|0;break e}hb();X()}da=g+16|0;da=l;H[f+32>>2]=b;_d(f+40|0,a,b,f+32|0);a=H[f+40>>2];if(F[a+39|0]<0){qa(H[a+28>>2])}b=H[f+12>>2];H[a+28>>2]=H[f+8>>2];H[a+32>>2]=b;H[a+36>>2]=H[f+16>>2];da=f+48|0}function yc(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{b:{g=a+16|0;d=H[g>>2];if(!d){break b}h=H[b>>2];b=g;while(1){f=(h|0)>H[d+16>>2];b=f?b:d;d=H[(f<<2)+d>>2];if(d){continue}break}if((b|0)==(g|0)|(h|0)>2]){break b}d=H[b+24>>2];if(!d){break a}a=I[c+11|0];b=a<<24>>24<0;g=b?H[c>>2]:c;a=b?H[c+4>>2]:a;while(1){b=I[d+27|0];c=b<<24>>24<0;b=c?H[d+20>>2]:b;h=b>>>0>>0;c:{d:{f=h?b:a;e:{if(f){e=d+16|0;c=c?H[e>>2]:e;e=Ga(g,c,f);f:{if(!e){if(a>>>0>=b>>>0){break f}break c}if((e|0)<0){break c}}b=Ga(c,g,f);if(!b){break e}if((b|0)<0){break d}return 1}if(a>>>0>>0){break c}}if(h){break d}return 1}d=d+4|0}d=H[d>>2];if(d){continue}break}break a}d=H[a+4>>2];if(!d){break a}a=I[c+11|0];b=a<<24>>24<0;g=b?H[c>>2]:c;a=b?H[c+4>>2]:a;while(1){b=I[d+27|0];c=b<<24>>24<0;b=c?H[d+20>>2]:b;h=b>>>0>>0;g:{h:{f=h?b:a;i:{if(f){e=d+16|0;c=c?H[e>>2]:e;e=Ga(g,c,f);j:{if(!e){if(a>>>0>=b>>>0){break j}break g}if((e|0)<0){break g}}b=Ga(c,g,f);if(!b){break i}if((b|0)<0){break h}return 1}if(a>>>0>>0){break g}}if(h){break h}return 1}d=d+4|0}d=H[d>>2];if(d){continue}break}}return 0}function de(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;H[a+4>>2]=b;d=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];H[a+12>>2]=c;H[a+8>>2]=d;a:{if((fa[H[H[a>>2]+32>>2]](a)|0)==1&H[H[a+8>>2]+28>>2]-1>>>0>5){break a}f=H[b+48>>2];d=da-16|0;da=d;H[d+12>>2]=c;b=ra(32);H[d>>2]=b;H[d+4>>2]=17;H[d+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1688];c=I[1684]|I[1685]<<8|(I[1686]<<16|I[1687]<<24);e=I[1680]|I[1681]<<8|(I[1682]<<16|I[1683]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1676]|I[1677]<<8|(I[1678]<<16|I[1679]<<24);e=I[1672]|I[1673]<<8|(I[1674]<<16|I[1675]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;b=xb(f,d+12|0,d,-1);if(F[d+11|0]<0){qa(H[d>>2])}da=d+16|0;b=fa[H[H[a>>2]+48>>2]](a,(b|0)==-1?-1:b>>>0>6?-2:b)|0;c=H[a+36>>2];H[a+36>>2]=b;e=1;if(c){fa[H[H[c>>2]+4>>2]](c);b=H[a+36>>2]}if(!b){break a}if(fa[H[H[a>>2]+36>>2]](a,b)|0){break a}b=H[a+36>>2];H[a+36>>2]=0;if(!b){break a}fa[H[H[b>>2]+4>>2]](b)}return e|0}function bc(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=32-b|0;c=c<>2];f=32-e|0;d:{if((f|0)>=(b|0)){b=b+e|0;H[a+16>>2]=b;f=H[a+12>>2]|c>>>e;H[a+12>>2]=f;if((b|0)!=32){break d}b=H[a+4>>2];e:{if((b|0)!=H[a+8>>2]){H[b>>2]=f;H[a+4>>2]=b+4;break e}e=H[a>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break c}d=c>>1;d=c>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break b}b=ra(d<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=f;if((c|0)>0){sa(b,e,c)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=g+4;H[a>>2]=b;if(!e){break e}qa(e)}H[a+12>>2]=0;H[a+16>>2]=0;return}b=b-f|0;H[a+16>>2]=b;g=c>>>d|0;f=H[a+12>>2]|g>>>b;H[a+12>>2]=f;b=H[a+4>>2];f:{if((b|0)!=H[a+8>>2]){H[b>>2]=f;H[a+4>>2]=b+4;break f}e=H[a>>2];c=b-e|0;h=c>>2;b=h+1|0;if(b>>>0>=1073741824){break c}d=c>>1;d=c>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break a}b=ra(d<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=f;if((c|0)>0){sa(b,e,c)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=h+4;H[a>>2]=b;if(!e){break f}qa(e)}H[a+12>>2]=g<<32-H[a+16>>2]}return}va();X()}ya(1604);X()}ya(1604);X()}function zl(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=Q(d)-Q(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;ea=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>Cl(d)|0;ea=0;break a}if(!(g-1&g)){break f}h=(Q(g)+33|0)-Q(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;ea=0;break a}c=Q(d)-Q(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=Cl(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<>>d}ea=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;i=b>>>f|0}else{c=b>>>f|0;i=((1<>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<>>32-e|b<>>31;f=f<<1|i>>>31;j=m-(f+(c>>>0>e>>>0)|0)>>31;k=g&j;i=c-k|0;f=f-((d&j)+(c>>>0>>0)|0)|0;b=b<<1|a>>>31;a=l|a<<1;l=j&1;h=h-1|0;if(h){continue}break}}ea=b<<1|a>>>31;a=l|a<<1;break a}a=0;b=0}ea=b}return a}function bf(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=da-16|0;da=e;a:{d=Ye(a);b:{if(!d){a=0;break b}b=H[a+100>>2];g=H[a+96>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;f=b-g|0;b=(f|0)/12|0;c:{if(!f){break c}if(b>>>0>=357913942){break a}c=ra(f);H[e>>2]=c;H[e+8>>2]=c+N(b,12);a=0;h=c;c=N((f-12>>>0)/12|0,12)+12|0;f=ta(h,0,c);H[e+4>>2]=c+f;if(I[d+84|0]){d=b>>>0>1?b:1;i=d&1;if(b>>>0>=2){j=d&-2;b=0;while(1){c=N(a,12);d=c+g|0;h=H[d+4>>2];k=H[d>>2];c=c+f|0;H[c+8>>2]=H[d+8>>2];H[c>>2]=k;H[c+4>>2]=h;c=N(a|1,12);d=c+g|0;h=H[d+8>>2];k=H[d+4>>2];c=c+f|0;H[c>>2]=H[d>>2];H[c+4>>2]=k;H[c+8>>2]=h;a=a+2|0;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!i){break c}b=N(a,12);a=b+g|0;g=H[a+4>>2];d=H[a>>2];b=b+f|0;H[b+8>>2]=H[a+8>>2];H[b>>2]=d;H[b+4>>2]=g;break c}i=b>>>0>1?b:1;a=H[d+68>>2];b=0;while(1){c=N(b,12);d=c+g|0;j=H[a+(H[d>>2]<<2)>>2];h=H[a+(H[d+4>>2]<<2)>>2];c=c+f|0;H[c+8>>2]=H[a+(H[d+8>>2]<<2)>>2];H[c+4>>2]=h;H[c>>2]=j;b=b+1|0;if((i|0)!=(b|0)){continue}break}}a=ef(e);b=H[e>>2];if(!b){break b}H[e+4>>2]=b;qa(b)}da=e+16|0;return a}va();X()}function za(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;A(+a);c=v(1)|0;b=v(0)|0;d=c-1072604335|0;if((d|0)==135337|d>>>0<135337){if(!b&(c|0)==1072693248){return 0}f=M[1881];a=a+-1;A(+a);b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);g=+z();h=f*g;e=a*a;i=e*(a*M[1890]+M[1889]);j=h+i;l=e*e;return j+(l*(l*(e*(a*M[1898]+M[1897])+(a*M[1896]+M[1895]))+(e*(a*M[1894]+M[1893])+(a*M[1892]+M[1891])))+((a-g)*f+a*M[1882]+(i+(h-j))))}d=c>>>16|0;a:{if(d-32752>>>0<=4294934559){if(!(c&2147483647|b)){b=da-16|0;M[b+8>>3]=-1;return M[b+8>>3]/0}if(!b&(c|0)==2146435072){break a}if(!(!(d&32768)&(d&32752)!=32752)){a=a-a;return a/a}A(+(a*4503599627370496));c=v(1)|0;b=v(0)|0;c=c-54525952|0}d=c-1072037888|0;k=(d>>>14&63)<<4;f=M[k+15200>>3]+ +(d>>20);g=M[1881];a=M[k+15192>>3];x(0,b-0|0);x(1,c-((d&-1048576)+(b>>>0>>0)|0)|0);a=a*(+z()-M[k+16216>>3]-M[k+16224>>3]);A(+a);b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);h=+z();i=g*h;j=f+i;e=a*a;a=j+(e*(e*e*(a*M[1888]+M[1887])+(e*(a*M[1886]+M[1885])+(a*M[1884]+M[1883])))+((a-h)*g+M[1882]*a+(i+(f-j))))}return a}function Te(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=H[a+12>>2];g=H[a+8>>2];j=m-g|0;e=H[c>>2];n=H[c+4>>2];a:{if((e|0)==(n|0)){break a}p=H[b>>2];if((j|0)<=0){while(1){b=H[(H[e>>2]<<2)+p>>2];d=b>>>0>>0?d:b+1|0;e=e+4|0;if((n|0)!=(e|0)){continue}break}break a}b=j>>2;b=(b|0)>1?b:1;r=b&2147483646;s=b&1;t=(j|0)<8;while(1){c=H[e>>2];k=c<<2;l=H[p+k>>2];if(l>>>0>=d>>>0){d=0;i=0;if(!t){while(1){q=d<<2;h=H[q+g>>2];f=H[h+68>>2];b=c;b=I[h+84|0]?b:H[f+k>>2];h=f;f=l<<2;H[h+f>>2]=b;h=f;b=H[(q|4)+g>>2];f=H[b+68>>2];H[h+f>>2]=I[b+84|0]?c:H[f+k>>2];d=d+2|0;i=i+2|0;if((r|0)!=(i|0)){continue}break}}if(s){b=H[(d<<2)+g>>2];d=H[b+68>>2];i=d+(l<<2)|0;if(!I[b+84|0]){c=H[d+k>>2]}H[i>>2]=c}d=l+1|0}e=e+4|0;if((n|0)!=(e|0)){continue}break}}if((j|0)>0){while(1){b=H[(o<<2)+g>>2];F[b+84|0]=0;e=H[b+68>>2];c=H[b+72>>2]-e>>2;b:{if(c>>>0>>0){Ma(b+68|0,d-c|0,15040);g=H[a+8>>2];m=H[a+12>>2];break b}if(c>>>0<=d>>>0){break b}H[b+72>>2]=e+(d<<2)}o=o+1|0;if((o|0)>2){continue}break}}}function Cg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=da-16|0;da=j;H[j+8>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{b:{e=c+1|0;if(e>>>0>=c>>>0){if(e>>>0>=1073741824){break b}h=ra(e<<2);ta(h,0,(c<<2)+4|0)}c:{if((b|0)<=0){break c}e=0;if(b-1>>>0>=3){k=b&-4;while(1){f=e<<2;i=(H[f+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;i=(H[(f|4)+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;i=(H[(f|8)+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;f=(H[(f|12)+a>>2]<<2)+h|0;H[f>>2]=H[f>>2]+1;e=e+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}f=b&3;if(!f){break c}while(1){k=(H[(e<<2)+a>>2]<<2)+h|0;H[k>>2]=H[k>>2]+1;e=e+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}e=0;if((c|0)<0){a=0;break a}o=+(b|0);a=0;while(1){b=H[(e<<2)+h>>2];if((b|0)>0){n=+(b|0);g=n*za(n/o)+g;a=a+1|0}b=(c|0)==(e|0);e=e+1|0;if(!b){continue}break}break a}va();X()}if(d){H[d>>2]=a}if(h){qa(h)}g=-g;d:{if(P(g)<0x8000000000000000){b=P(g)>=1?~~(g>0?R(T(g*2.3283064365386963e-10),4294967295):U((g-+(~~g>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~g>>>0;break d}b=-2147483648;a=0}da=j+16|0;ea=b;return a}function ub(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);F[b+12|0]=c;a:{if(c){break a}while(1){d=H[b+8>>2];if(I[d+12|0]){break a}b:{c=H[d+8>>2];e=H[c>>2];c:{if((d|0)==(e|0)){e=H[c+4>>2];if(!(!e|I[e+12|0])){break b}d:{if(H[d>>2]==(b|0)){b=d;break d}b=H[d+4>>2];a=H[b>>2];H[d+4>>2]=a;if(a){H[a+8>>2]=d;c=H[d+8>>2]}H[b+8>>2]=c;a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b>>2]=d;H[d+8>>2]=b;c=H[b+8>>2]}F[b+12|0]=1;F[c+12|0]=0;a=H[c>>2];b=H[a+4>>2];H[c>>2]=b;if(b){H[b+8>>2]=c}H[a+8>>2]=H[c+8>>2];b=H[c+8>>2];H[((H[b>>2]!=(c|0))<<2)+b>>2]=a;H[a+4>>2]=c;b=c+8|0;break c}if(!(I[e+12|0]|!e)){break b}e:{if(H[d>>2]!=(b|0)){b=d;break e}a=H[b+4>>2];H[d>>2]=a;if(a){H[a+8>>2]=d;c=H[d+8>>2]}H[b+8>>2]=c;a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b+4>>2]=d;H[d+8>>2]=b;c=H[b+8>>2]}F[b+12|0]=1;F[c+12|0]=0;a=H[c+4>>2];b=H[a>>2];H[c+4>>2]=b;if(b){H[b+8>>2]=c}H[a+8>>2]=H[c+8>>2];b=H[c+8>>2];H[((H[b>>2]!=(c|0))<<2)+b>>2]=a;H[a>>2]=c;b=c+8|0}H[b>>2]=a;break a}F[d+12|0]=1;d=(a|0)==(c|0);F[c+12|0]=d;F[e+12|0]=1;b=c;if(!d){continue}break}}}function Va(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0;a:{b:{if((e|0)<=(f|0)){if((a|0)==(b|0)){break b}e=g;f=a;while(1){H[e>>2]=H[f>>2];e=e+4|0;f=f+4|0;if((f|0)!=(b|0)){continue}break}if((e|0)==(g|0)){break b}d=H[d>>2];while(1){if((b|0)==(c|0)){b=e-g|0;if(!b){break b}xa(a,g,b);return}c:{f=H[d>>2];h=H[d+4>>2]-f>>3;i=H[b>>2];if(h>>>0<=i>>>0){break c}j=h;h=H[g>>2];if(j>>>0<=h>>>0){break c}d:{if(K[f+(i<<3)>>2]>2]){H[a>>2]=i;b=b+4|0;break d}H[a>>2]=h;g=g+4|0}a=a+4|0;if((e|0)!=(g|0)){continue}break b}break}ua();X()}if((b|0)==(c|0)){break b}e=g;f=b;while(1){H[e>>2]=H[f>>2];e=e+4|0;f=f+4|0;if((f|0)!=(c|0)){continue}break}if((e|0)==(g|0)){break b}while(1){if((a|0)==(b|0)){while(1){c=c-4|0;e=e-4|0;H[c>>2]=H[e>>2];if((e|0)!=(g|0)){continue}break b}}i=H[d>>2];f=H[i>>2];h=H[i+4>>2]-f>>3;k=e-4|0;i=H[k>>2];if(h>>>0<=i>>>0){break a}j=h;l=b-4|0;h=H[l>>2];if(j>>>0<=h>>>0){break a}c=c-4|0;f=K[f+(i<<3)>>2]>2];H[c>>2]=f?h:i;b=f?l:b;e=f?e:k;if((g|0)!=(e|0)){continue}break}}return}ua();X()}function gb(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=da-32|0;da=b;c=H[a+16>>2];a:{if(c>>>0>=113){H[a+16>>2]=c-113;c=H[a+4>>2];H[b+8>>2]=H[c>>2];H[a+4>>2]=c+4;wc(a,b+8|0);break a}b:{c:{d:{e:{e=H[a+8>>2];f=e-H[a+4>>2]>>2;d=H[a+12>>2];c=d-H[a>>2]|0;if(f>>>0>2>>>0){if((d|0)==(e|0)){break e}g=b,h=ra(4068),H[g+8>>2]=h;wc(a,b+8|0);break a}H[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=ra(d);H[b+8>>2]=c;e=c+(f<<2)|0;H[b+16>>2]=e;H[b+20>>2]=c+d;H[b+12>>2]=e;g=b,h=ra(4068),H[g+4>>2]=h;wc(b+8|0,b+4|0);d=H[a+8>>2];if((d|0)==H[a+4>>2]){c=d;break b}while(1){d=d-4|0;he(b+8|0,d);if(H[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=ra(4068),H[g+8>>2]=h;c=b+8|0;he(a,c);d=H[a+4>>2];H[b+8>>2]=H[d>>2];H[a+4>>2]=d+4;wc(a,c);break a}ya(1604);X()}c=H[a+8>>2]}e=H[a>>2];H[a>>2]=H[b+8>>2];H[b+8>>2]=e;H[a+4>>2]=H[b+12>>2];H[b+12>>2]=d;H[a+8>>2]=H[b+16>>2];H[b+16>>2]=c;f=H[a+12>>2];H[a+12>>2]=H[b+20>>2];H[b+20>>2]=f;if((c|0)!=(d|0)){H[b+16>>2]=c+(((c-d|0)-4>>>2^-1)<<2)}if(!e){break a}qa(e)}da=b+32|0}function vk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=da-16|0;da=k;if(H[c+28>>2]==9){d=H[a+4>>2];g=F[c+24|0];e=g<<2;f=ra((g&1073741823)!=(g|0)?-1:e);l=k+8|0;H[l>>2]=1065353216;i=L[a+20>>2];d=-1<0){L[l>>2]=i/O(d|0)}o=(d|0)>0;a:{if(!o){break a}j=H[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){sa(H[H[c+64>>2]>>2]+d|0,f,e);d=d+e|0;sa(d+H[H[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}sa(H[H[c+64>>2]>>2]+d|0,f,e);break a}p=H[H[b>>2]>>2]+H[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=H[a+8>>2];i=L[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;L[h+f>>2]=O(i*O(H[q>>2]))+L[h+m>>2];h=h|4;L[h+f>>2]=O(i*O(H[q+4>>2]))+L[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;L[b+f>>2]=O(i*O(H[(d<<2)+p>>2]))+L[b+m>>2];d=d+1|0}sa(H[H[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}qa(f)}da=k+16|0;return o|0}function fd(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(I[a+11|0]>>>7|0){d=H[a+4>>2]}else{d=I[a+11|0]}if(d>>>0>>0){i=da-16|0;da=i;h=b-d|0;if(h){e=I[a+11|0]>>>7|0?(H[a+8>>2]&2147483647)-1|0:10;if(I[a+11|0]>>>7|0){b=H[a+4>>2]}else{b=I[a+11|0]}j=b+h|0;if(e-b>>>0>>0){b:{g=da-16|0;da=g;c=j-e|0;if(c>>>0<=-17-e>>>0){if(I[a+11|0]>>>7|0){d=H[a>>2]}else{d=a}c:{if(e>>>0<2147483623){H[g+8>>2]=e<<1;H[g+12>>2]=c+e;c=da-16|0;da=c;da=c+16|0;c=g+8|0;f=g+12|0;c=H[(K[f>>2]>2]?c:f)>>2];if(c>>>0>=11){f=c+16&-16;c=f-1|0;c=(c|0)==11?f:c}else{c=10}break c}c=-18}f=c+1|0;c=ra(f);if(b){Cb(c,d,b)}if((e|0)!=10){qa(d)}H[a>>2]=c;H[a+8>>2]=f|-2147483648;da=g+16|0;break b}hb();X()}}d=b;if(I[a+11|0]>>>7|0){b=H[a>>2]}else{b=a}d=d+b|0;if(h){ta(d,0,h)}d:{if(I[a+11|0]>>>7|0){H[a+4>>2]=j;break d}F[a+11|0]=j}F[i+15|0]=0;F[b+j|0]=I[i+15|0]}da=i+16|0;break a}d=da-16|0;da=d;e:{if(I[a+11|0]>>>7|0){e=H[a>>2];F[d+15|0]=0;F[b+e|0]=I[d+15|0];H[a+4>>2]=b;break e}F[d+14|0]=0;F[a+b|0]=I[d+14|0];F[a+11|0]=b}da=d+16|0}}function Vk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=H[b+88>>2];if(!(!c|H[c>>2]!=1)){d=H[c+8>>2];H[a+4>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);d=F[b+24|0];e=H[a+8>>2];f=H[a+12>>2]-e>>2;a:{if(d>>>0>f>>>0){Ea(a+8|0,d-f|0);d=F[b+24|0];e=H[a+8>>2];break a}if(d>>>0>=f>>>0){break a}H[a+12>>2]=(d<<2)+e}k=1;f=H[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){g=d<<2;c=b+f|0;H[g+e>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[(g|4)+e>>2]=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);H[(g|8)+e>>2]=I[c+8|0]|I[c+9|0]<<8|(I[c+10|0]<<16|I[c+11|0]<<24);H[(g|12)+e>>2]=I[c+12|0]|I[c+13|0]<<8|(I[c+14|0]<<16|I[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+f|0;H[(d<<2)+e>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+f|0;H[c+20>>2]=I[a|0]|I[a+1|0]<<8|(I[a+2|0]<<16|I[a+3|0]<<24)}return k|0}function Ee(a,b,c,d){var e=0,f=0,g=0,h=0;g=da-32|0;da=g;e=d&2147483647;h=e;f=e-1006698496|0;e=e-1140785152|0;a:{if((f|0)==(e|0)&0|e>>>0>f>>>0){e=d<<4|c>>>28;f=c<<4|b>>>28;c=e;b=b&268435455;if((b|0)==134217728&(a|0)!=0|b>>>0>134217728){e=c+1073741824|0;a=f+1|0;e=a?e:e+1|0;f=a;break a}e=c+1073741824|0;if(b^134217728|a){break a}b=f&1;a=b+f|0;e=a>>>0>>0?e+1|0:e;f=a;break a}if(!(!c&(h|0)==2147418112?!(a|b):h>>>0<2147418112)){e=c;c=d<<4|e>>>28;f=e<<4|b>>>28;e=c&524287|2146959360;break a}f=0;e=2146435072;if(h>>>0>1140785151){break a}e=0;h=h>>>16|0;if(h>>>0<15249){break a}e=d&65535|65536;Ta(g+16|0,a,b,c,e,h-15233|0);Jb(g,a,b,c,e,15361-h|0);e=H[g+4>>2];h=e;a=H[g+8>>2];c=H[g+12>>2]<<4|a>>>28;f=a<<4|e>>>28;e=c;a=h&268435455;b=H[g>>2]|(H[g+16>>2]|H[g+24>>2]|(H[g+20>>2]|H[g+28>>2]))!=0;if((a|0)==134217728&(b|0)!=0|a>>>0>134217728){a=f+1|0;e=a?e:e+1|0;f=a;break a}if(a^134217728|b){break a}a=f+(f&1)|0;e=a>>>0>>0?e+1|0:e;f=a}da=g+32|0;x(0,f|0);x(1,d&-2147483648|e);return+z()}function Zc(a){var b=0,c=0,d=0,e=0;c=H[a+1176>>2];if(c){b=H[a+1180>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+1176>>2]}H[a+1180>>2]=c;qa(b)}c=H[a+1164>>2];if(c){b=H[a+1168>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+1164>>2]}H[a+1168>>2]=c;qa(b)}b=H[a+1152>>2];if(b){H[a+1156>>2]=b;qa(b)}b=H[a+1140>>2];if(b){H[a+1144>>2]=b;qa(b)}b=H[a+1128>>2];if(b){H[a+1132>>2]=b;qa(b)}vb(a+1108|0);vb(a+1088|0);vb(a+1068|0);Aa(a+1036|0);a=a+12|0;Aa(a+992|0);Aa(a+960|0);Aa(a+928|0);Aa(a+896|0);Aa(a+864|0);Aa(a+832|0);Aa(a+800|0);Aa(a+768|0);Aa(a+736|0);Aa(a+704|0);Aa(a+672|0);Aa(a+640|0);Aa(a+608|0);Aa(a+576|0);Aa(a+544|0);Aa(a+512|0);Aa(a+480|0);Aa(a+448|0);Aa(a+416|0);Aa(a+384|0);Aa(a+352|0);Aa(a+320|0);Aa(a+288|0);Aa(a+256|0);Aa(a+224|0);Aa(a+192|0);Aa(a+160|0);Aa(a+128|0);Aa(a+96|0);Aa(a- -64|0);Aa(a+32|0);Aa(a)}function nb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;i=H[(H[H[a+8>>2]+96>>2]+N(d,12)|0)+(c-N(d,3)<<2)>>2];e=H[H[a+12>>2]+4>>2];d=H[e+4>>2];a:{if((d|0)!=H[e+8>>2]){H[d>>2]=i;H[e+4>>2]=d+4;break a}b:{h=H[e>>2];g=d-h|0;j=g>>2;d=j+1|0;if(d>>>0<1073741824){f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break b}d=ra(f<<2)}else{d=0}j=d+(j<<2)|0;H[j>>2]=i;if((g|0)>0){sa(d,h,g)}H[e+8>>2]=d+(f<<2);H[e+4>>2]=j+4;H[e>>2]=d;if(h){qa(h)}break a}va();X()}ya(1604);X()}e=H[a+4>>2];d=H[e+4>>2];c:{d:{e:{if((d|0)!=H[e+8>>2]){H[d>>2]=c;H[e+4>>2]=d+4;break e}h=H[e>>2];g=d-h|0;i=g>>2;d=i+1|0;if(d>>>0>=1073741824){break d}f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break c}d=ra(f<<2)}else{d=0}i=d+(i<<2)|0;H[i>>2]=c;if((g|0)>0){sa(d,h,g)}H[e+8>>2]=d+(f<<2);H[e+4>>2]=i+4;H[e>>2]=d;if(!h){break e}qa(h)}a=H[a+4>>2];H[H[a+12>>2]+(b<<2)>>2]=H[a+24>>2];H[a+24>>2]=H[a+24>>2]+1;return}va();X()}ya(1604);X()}function eg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=da+-64|0;da=c;d=ra(80);i=H[a+8>>2];H[d+12>>2]=0;H[d+16>>2]=0;H[d>>2]=11708;H[d+4>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+76>>2]=0;H[d+72>>2]=b;H[d+68>>2]=i;H[d- -64>>2]=0;j=d+56|0;e=j;H[e>>2]=0;H[e+4>>2]=0;H[d+8>>2]=11872;e=H[a+12>>2];H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;f=c+24|0;H[f>>2]=0;H[f+4>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+56>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=11872;H[c+4>>2]=e;g=H[e>>2];h=H[e+4>>2];F[c+63|0]=0;k=f;f=c+63|0;Ra(k,(h-g>>2>>>0)/3|0,f);g=H[c+4>>2];h=H[g+28>>2];g=H[g+24>>2];F[c+63|0]=0;Ra(c+36|0,h-g>>2,f);H[c+20>>2]=d;H[c+16>>2]=i;H[c+12>>2]=b;H[c+8>>2]=e;H[d+76>>2]=a+72;Jc(d+8|0,c);hc(j,H[c+48>>2],H[c+52>>2]);H[c>>2]=11872;a=H[c+48>>2];if(a){H[c+52>>2]=a;qa(a)}H[c>>2]=11688;a=H[c+36>>2];if(a){qa(a)}a=H[c+24>>2];if(a){qa(a)}da=c- -64|0;return d}function zg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;ac(a,g,c,f,e,f);d=d-f|0;ac(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function yg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;$b(a,g,c,f,e,f);d=d-f|0;$b(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function xg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;_b(a,g,c,f,e,f);d=d-f|0;_b(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function wg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Zb(a,g,c,f,e,f);d=d-f|0;Zb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function vg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Yb(a,g,c,f,e,f);d=d-f|0;Yb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function ug(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Xb(a,g,c,f,e,f);d=d-f|0;Xb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function tg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Wb(a,g,c,f,e,f);d=d-f|0;Wb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function sg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Vb(a,g,c,f,e,f);d=d-f|0;Vb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function rg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Ub(a,g,c,f,e,f);d=d-f|0;Ub(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function qg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Tb(a,g,c,f,e,f);d=d-f|0;Tb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function pg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Sb(a,g,c,f,e,f);d=d-f|0;Sb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function og(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Rb(a,g,c,f,e,f);d=d-f|0;Rb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function mg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Qb(a,g,c,f,e,f);d=d-f|0;Qb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function lg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Pb(a,g,c,f,e,f);d=d-f|0;Pb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function kg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Ob(a,g,c,f,e,f);d=d-f|0;Ob(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function jg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Nb(a,g,c,f,e,f);d=d-f|0;Nb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function ig(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Mb(a,g,c,f,e,f);d=d-f|0;Mb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function hg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){Wa(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Lb(a,g,c,f,e,f);d=d-f|0;Lb(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}ua();X()}ua();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function ng(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=H[d+80>>2];e=da-48|0;da=e;a=H[a+4>>2];a:{if(a-31>>>0<4294967267){break a}i=H[H[d>>2]>>2]+H[d+48>>2]|0;H[e+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;H[e+24>>2]=a;H[e+32>>2]=(a|0)/2;L[e+28>>2]=O(2)/O(a|0);g=H[c>>2];if((g|0)!=H[c+4>>2]){a=0;d=0;while(1){f=H[(d<<2)+g>>2];h=e+36|0;j=H[H[b>>2]>>2];l=H[b+48>>2];g=H[b+44>>2];k=H[b+40>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}f=xl(k,g,f,0)+l|0;sa(h,f+j|0,k);Kf(e+16|0,h,e+12|0,e+8|0);g=a<<2;H[g+i>>2]=H[e+12>>2];H[(g|4)+i>>2]=H[e+8>>2];f=1;a=a+2|0;d=d+1|0;g=H[c>>2];if(d>>>0>2]-g>>2>>>0){continue}break}break a}if(!h){f=1;break a}d=0;a=0;while(1){j=e+36|0;c=H[H[b>>2]>>2];f=H[b+40>>2];g=H[b+48>>2]+xl(f,H[b+44>>2],I[b+84|0]?a:H[H[b+68>>2]+(a<<2)>>2],0)|0;sa(j,c+g|0,f);Kf(e+16|0,j,e+12|0,e+8|0);c=d<<2;H[c+i>>2]=H[e+12>>2];H[(c|4)+i>>2]=H[e+8>>2];d=d+2|0;f=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}da=e+48|0;return f|0}function Cc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=H[b+4>>2];a:{b:{if(f){g=I[c+11|0];e=g<<24>>24<0;k=e?H[c>>2]:c;e=e?H[c+4>>2]:g;g=b+4|0;while(1){c=I[f+27|0];h=c<<24>>24<0;c=h?H[f+20>>2]:c;l=c>>>0>>0;c:{d:{e:{f:{g:{j=l?c:e;h:{if(j){i=f+16|0;h=h?H[i>>2]:i;i=Ga(k,h,j);if(!i){if(c>>>0>e>>>0){break h}break g}if((i|0)>=0){break g}break h}if(c>>>0<=e>>>0){break f}}c=H[f>>2];if(c){break c}break b}c=Ga(h,k,j);if(c){break e}}if(l){break d}break a}if((c|0)>=0){break a}}g=f+4|0;c=H[f+4>>2];if(!c){break a}f=g}g=f;f=c;continue}}f=b+4|0}g=f}c=H[g>>2];if(c){b=0}else{c=ra(40);H[c+24>>2]=H[d+8>>2];e=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=e;H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[c+36>>2]=0;e=c+28|0;H[e>>2]=0;H[e+4>>2]=0;eb(e,H[d+16>>2]-H[d+12>>2]|0);h=H[e>>2];e=H[d+12>>2];sa(h,e,H[d+16>>2]-e|0);H[c+8>>2]=f;H[c>>2]=0;H[c+4>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}ub(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function Yi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=H[a+4>>2];b=H[b+12>>2]-H[b+8>>2]|0;a:{if((b|0)>0){while(1){if(fa[H[H[a>>2]+36>>2]](a,c)|0){b=H[a+4>>2];b=H[b+12>>2]-H[b+8>>2]>>2;c=c+1|0;if((b|0)>(c|0)){continue}break a}break}return 0}b=b>>2}h=a+20|0;d=H[a+20>>2];c=H[a+24>>2]-d>>2;b:{if(c>>>0>>0){Ea(h,b-c|0);break b}if(b>>>0>=c>>>0){break b}H[a+24>>2]=d+(b<<2)}i=H[a+8>>2];a=H[a+12>>2]-i|0;if(!a){return 1}a=a>>2;k=a>>>0>1?a:1;c=0;while(1){a=H[(c<<2)+i>>2];b=H[a+4>>2];a=H[a+8>>2]-b|0;c:{if(!a){break c}d=H[h>>2];a=a>>2;e=a>>>0>1?a:1;j=e&3;f=0;a=0;if(e-1>>>0>=3){l=e&-4;g=0;while(1){e=a<<2;H[d+(H[e+b>>2]<<2)>>2]=c;H[d+(H[b+(e|4)>>2]<<2)>>2]=c;H[d+(H[b+(e|8)>>2]<<2)>>2]=c;H[d+(H[b+(e|12)>>2]<<2)>>2]=c;a=a+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}if(!j){break c}while(1){H[d+(H[b+(a<<2)>>2]<<2)>>2]=c;a=a+1|0;f=f+1|0;if((f|0)!=(j|0)){continue}break}}c=c+1|0;if((k|0)!=(c|0)){continue}break}return 1}function sj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=da-16|0;da=g;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+28>>2]-H[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=ra(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){sa(c,d,e)}H[b+8>>2]=h;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}qa(d)}b=H[a+12>>2];d=H[b+28>>2];b=H[b+24>>2];H[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=H[c>>2];d=H[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){Ma(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}H[a+100>>2]=e+(b<<2)}e=a+8|0;b=H[a+116>>2];d:{if(b){c=H[b>>2];if((c|0)==H[b+4>>2]){d=1;break d}b=0;while(1){d=Pf(e,H[(b<<2)+c>>2]);if(!d){break d}f=H[a+116>>2];c=H[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=H[a+12>>2];a=H[a+4>>2]-H[a>>2]|0;if(a>>>0<12){break d}a=(a>>2>>>0)/3|0;b=0;while(1){d=Pf(e,N(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}da=g+16|0;return d|0}ya(1604);X()}function tj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=H[a+12>>2];c=H[a+108>>2];e=H[c+80>>2];F[b+84|0]=0;f=H[b+68>>2];d=H[b+72>>2]-f>>2;a:{if(d>>>0>>0){Ma(b+68|0,e-d|0,11440);c=H[a+108>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=f+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=H[l>>2]+(N(c,3)<<2)|0;h=H[d>>2];if((h|0)==-1){break b}f=N(c,12)+k|0;g=H[f>>2];if(g>>>0>=e>>>0){break b}j=H[H[a+112>>2]+12>>2];i=H[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=H[b+68>>2];H[h+(g<<2)>>2]=i;g=H[d+4>>2];if((g|0)==-1){break b}i=H[f+4>>2];if(i>>>0>=e>>>0){break b}g=H[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}H[h+(i<<2)>>2]=g;d=H[d+8>>2];if((d|0)==-1){break b}f=H[f+8>>2];if(f>>>0>=e>>>0){break b}d=H[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}H[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function od(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=c-b|0;e=H[a+8>>2];d=H[a>>2];if(f>>>0<=e-d>>>0){h=H[a+4>>2]-d|0;e=h+b|0;g=f>>>0>h>>>0?e:c;a:{if((g|0)==(b|0)){break a}k=(b^-1)+g|0;i=g-b&7;if(i){while(1){F[d|0]=I[b|0];d=d+1|0;b=b+1|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){F[d|0]=I[b|0];F[d+1|0]=I[b+1|0];F[d+2|0]=I[b+2|0];F[d+3|0]=I[b+3|0];F[d+4|0]=I[b+4|0];F[d+5|0]=I[b+5|0];F[d+6|0]=I[b+6|0];F[d+7|0]=I[b+7|0];d=d+8|0;b=b+8|0;if((g|0)!=(b|0)){continue}break}}if(f>>>0>h>>>0){b=H[a+4>>2];if((c|0)!=(g|0)){while(1){F[b|0]=I[e|0];b=b+1|0;e=e+1|0;if((e|0)!=(c|0)){continue}break}}H[a+4>>2]=b;return}H[a+4>>2]=d;return}if(d){H[a+4>>2]=d;qa(d);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;e=0}b:{if((f|0)<0){break b}d=e<<1;e=e>>>0<1073741823?d>>>0>>0?f:d:2147483647;if((e|0)<0){break b}d=ra(e);H[a>>2]=d;H[a+4>>2]=d;H[a+8>>2]=d+e;if((b|0)!=(c|0)){d=sa(d,b,f)+f|0}H[a+4>>2]=d;return}va();X()}function lj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=H[a+12>>2];c=H[a+68>>2];e=H[c+80>>2];F[b+84|0]=0;f=H[b+68>>2];d=H[b+72>>2]-f>>2;a:{if(d>>>0>>0){Ma(b+68|0,e-d|0,11440);c=H[a+68>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=f+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=H[l>>2]+(N(c,3)<<2)|0;h=H[d>>2];if((h|0)==-1){break b}f=N(c,12)+k|0;g=H[f>>2];if(g>>>0>=e>>>0){break b}j=H[H[a+72>>2]+12>>2];i=H[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=H[b+68>>2];H[h+(g<<2)>>2]=i;g=H[d+4>>2];if((g|0)==-1){break b}i=H[f+4>>2];if(i>>>0>=e>>>0){break b}g=H[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}H[h+(i<<2)>>2]=g;d=H[d+8>>2];if((d|0)==-1){break b}f=H[f+8>>2];if(f>>>0>=e>>>0){break b}d=H[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}H[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Zj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=H[a+12>>2];h=H[a+8>>2];d=f-h>>2;b=F[b+24|0];a:{if(d>>>0>>0){Ea(a+8|0,b-d|0);h=H[a+8>>2];f=H[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;H[a+12>>2]=f}b=0;i=H[c+20>>2];e=H[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=H[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>K[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}sa(h,e+H[c>>2]|0,d);d=H[c+20>>2];e=f+H[c+16>>2]|0;d=e>>>0>>0?d+1|0:d;g=e;H[c+16>>2]=e;H[c+20>>2]=d;e=H[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>K[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+H[c>>2]|0;H[a+20>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);d=H[c+20>>2];g=H[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;H[c+16>>2]=e;H[c+20>>2]=f;e=H[c+12>>2];if((f|0)>=(e|0)&j>>>0>=K[c+8>>2]|(f|0)>(e|0)){break b}e=I[j+H[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;H[c+16>>2]=f;H[c+20>>2]=d;if(e-1>>>0>29){break b}H[a+4>>2]=e;b=1}return b|0}function wc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{e=H[a+8>>2];b:{if((e|0)!=H[a+12>>2]){break b}d=H[a+4>>2];g=H[a>>2];if(d>>>0>g>>>0){g=((d-g>>2)+1|0)/-2<<2;c=g+d|0;f=e-d|0;if(f){xa(c,d,f);d=H[a+4>>2]}e=c+f|0;H[a+8>>2]=e;H[a+4>>2]=d+g;break b}c=e-g|0;f=c?c>>1:1;if(f>>>0>=1073741824){break a}c=f<<2;h=ra(c);k=h+c|0;c=e-d|0;f=(f&-4)+h|0;e=f;c:{if(!c){break c}l=c&-4;i=c-4|0;j=(i>>>2|0)+1&7;d:{if(!j){c=f;break d}e=0;c=f;while(1){H[c>>2]=H[d>>2];d=d+4|0;c=c+4|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}e=f+l|0;if(i>>>0<28){break c}while(1){H[c>>2]=H[d>>2];H[c+4>>2]=H[d+4>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=H[d+12>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=H[d+20>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=H[d+28>>2];d=d+32|0;c=c+32|0;if((e|0)!=(c|0)){continue}break}}H[a+12>>2]=k;H[a+8>>2]=e;H[a+4>>2]=f;H[a>>2]=h;if(!g){break b}qa(g);e=H[a+8>>2]}H[e>>2]=H[b>>2];H[a+8>>2]=H[a+8>>2]+4;return}ya(1604);X()}function _d(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=H[b+4>>2];a:{b:{if(e){g=I[c+11|0];f=g<<24>>24<0;j=f?H[c>>2]:c;f=f?H[c+4>>2]:g;g=b+4|0;while(1){c=I[e+27|0];h=c<<24>>24<0;c=h?H[e+20>>2]:c;l=c>>>0>>0;c:{d:{e:{f:{g:{k=l?c:f;h:{if(k){i=e+16|0;h=h?H[i>>2]:i;i=Ga(j,h,k);if(!i){if(c>>>0>f>>>0){break h}break g}if((i|0)>=0){break g}break h}if(c>>>0<=f>>>0){break f}}c=H[e>>2];if(c){break c}break b}c=Ga(h,j,k);if(c){break e}}if(l){break d}break a}if((c|0)>=0){break a}}g=e+4|0;c=H[e+4>>2];if(!c){break a}e=g}g=e;e=c;continue}}e=b+4|0}g=e}c=H[g>>2];if(c){b=0}else{c=ra(40);f=c+16|0;d=H[d>>2];i:{if(F[d+11|0]>=0){j=H[d+4>>2];H[f>>2]=H[d>>2];H[f+4>>2]=j;H[f+8>>2]=H[d+8>>2];break i}Ia(f,H[d>>2],H[d+4>>2])}H[c+8>>2]=e;H[c>>2]=0;H[c+4>>2]=0;H[c+36>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}ub(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function he(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{g=H[a+4>>2];b:{if((g|0)!=H[a>>2]){c=g;break b}d=H[a+8>>2];c=H[a+12>>2];if(d>>>0>>0){f=((c-d>>2)+1|0)/2<<2;c=f+d|0;e=d-g|0;if(e){c=c-e|0;xa(c,g,e);d=H[a+8>>2]}H[a+4>>2]=c;H[a+8>>2]=d+f;break b}c=c-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}e=c<<2;h=ra(e);l=h+e|0;c=(c+3&-4)+h|0;f=c;i=d-g|0;c:{if(!i){break c}d=c;e=g;j=i-4|0;k=(j>>>2|0)+1&7;if(k){f=0;while(1){H[d>>2]=H[e>>2];e=e+4|0;d=d+4|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}f=(i&-4)+c|0;if(j>>>0<28){break c}while(1){H[d>>2]=H[e>>2];H[d+4>>2]=H[e+4>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=H[e+12>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=H[e+20>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=H[e+28>>2];e=e+32|0;d=d+32|0;if((f|0)!=(d|0)){continue}break}}H[a+12>>2]=l;H[a+8>>2]=f;H[a+4>>2]=c;H[a>>2]=h;if(!g){break b}qa(g);c=H[a+4>>2]}H[c-4>>2]=H[b>>2];H[a+4>>2]=H[a+4>>2]-4;return}ya(1604);X()}function qc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=da-32|0;da=e;f=H[b>>2]+H[a+40>>2]|0;d=H[a+32>>2];c=d-4194304|0;a:{if(c>>>0<=63){F[H[a+24>>2]+H[a+28>>2]|0]=c;c=H[a+28>>2]+1|0;break a}if(c>>>0<=16383){c=H[a+24>>2]+H[a+28>>2]|0;d=d-4177920|0;F[c|0]=d;F[c+1|0]=d>>>8;c=H[a+28>>2]+2|0;break a}if(c>>>0<=4194303){c=H[a+24>>2]+H[a+28>>2]|0;d=d+4194304|0;F[c+2|0]=d>>>16;F[c+1|0]=d>>>8;F[c|0]=d;c=H[a+28>>2]+3|0;break a}if(c>>>0<=1073741823){c=H[a+24>>2]+H[a+28>>2]|0;d=d-1077936128|0;F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=H[a+28>>2]+4|0;break a}c=H[a+28>>2]}H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;h=c;d=c>>31;zb(c,d,e);g=H[e+4>>2]-H[e>>2]|0;xa(g+f|0,f,c);sa(f,H[e>>2],g);c=H[a+44>>2];f=b;i=H[a+40>>2];a=d;b=h+g|0;a=b>>>0>>0?a+1|0:a;d=b;b=i+d|0;Na(f,b);a=H[e+12>>2];H[e+12>>2]=0;if(a){qa(a)}a=H[e>>2];if(a){H[e+4>>2]=a;qa(a)}da=e+32|0}function gj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=H[a+12>>2];c=H[a+68>>2];e=H[c+80>>2];F[b+84|0]=0;g=H[b+68>>2];d=H[b+72>>2]-g>>2;a:{if(d>>>0>>0){Ma(b+68|0,e-d|0,11440);c=H[a+68>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=g+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;l=c>>>0>1?c:1;m=H[h+28>>2];c=0;b:{while(1){d=(N(c,3)<<2)+m|0;g=H[d>>2];if((g|0)==-1){break b}h=N(c,12)+k|0;i=H[h>>2];if(i>>>0>=e>>>0){break b}f=g<<2;g=H[H[a+72>>2]+12>>2];f=H[f+g>>2];if(f>>>0>=e>>>0){break b}j=i<<2;i=H[b+68>>2];H[j+i>>2]=f;f=H[d+4>>2];if((f|0)==-1){break b}j=H[h+4>>2];if(j>>>0>=e>>>0){break b}f=H[g+(f<<2)>>2];if(f>>>0>=e>>>0){break b}H[i+(j<<2)>>2]=f;d=H[d+8>>2];if((d|0)==-1){break b}h=H[h+8>>2];if(h>>>0>=e>>>0){break b}d=H[g+(d<<2)>>2];if(d>>>0>=e>>>0){break b}H[i+(h<<2)>>2]=d;c=c+1|0;if((l|0)!=(c|0)){continue}break}return 1}return 0}function Ab(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=da-32|0;da=e;f=H[b>>2]+H[a+40>>2]|0;c=H[a+32>>2];d=c-16384|0;a:{if(d>>>0<=63){F[H[a+24>>2]+H[a+28>>2]|0]=d;c=H[a+28>>2]+1|0;break a}if(d>>>0<=16383){d=H[a+24>>2]+H[a+28>>2]|0;F[d|0]=c;F[d+1|0]=c>>>8;c=H[a+28>>2]+2|0;break a}if(d>>>0<=4194303){d=H[a+24>>2]+H[a+28>>2]|0;c=c+8372224|0;F[d+2|0]=c>>>16;F[d+1|0]=c>>>8;F[d|0]=c;c=H[a+28>>2]+3|0;break a}if(d>>>0<=1073741823){d=H[a+24>>2]+H[a+28>>2]|0;c=c-1073758208|0;F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;c=H[a+28>>2]+4|0;break a}c=H[a+28>>2]}H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;h=c;d=c>>31;zb(c,d,e);g=H[e+4>>2]-H[e>>2]|0;xa(g+f|0,f,c);sa(f,H[e>>2],g);c=H[a+44>>2];f=b;i=H[a+40>>2];a=d;b=h+g|0;a=b>>>0>>0?a+1|0:a;d=b;b=i+d|0;Na(f,b);a=H[e+12>>2];H[e+12>>2]=0;if(a){qa(a)}a=H[e>>2];if(a){H[e+4>>2]=a;qa(a)}da=e+32|0}function Kf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+L[b>>2];k=+L[b+4>>2];l=+L[b+8>>2];g=P(j)+P(k)+P(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=H[a+16>>2];l=+(h|0);g=T(j*l+.5);b:{if(P(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=f+m^f;g=T(k*l+.5);c:{if(P(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+(f+b^b)|0)|0;i=(b|0)<0?0:b;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=H[a+8>>2];e=h+f|0;break d}b=f>>31;b=b+f^b;a=H[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}if(!((a|0)!=(e|0)|b)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((a|0)!=(e|0)|(b|0)>=(h|0))){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}H[c>>2]=a;H[d>>2]=b}function ai(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0;a:{if(H[c+28>>2]!=9|I[c+24|0]!=3){break a}a=H[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=H[c+80>>2];if(!j){break a}k=O(O(2)/O((1<>2]>>2]+H[c+48>>2]|0;a=H[H[b>>2]>>2]+H[b+48>>2]|0;b=0;while(1){g=O(0);l=O(0);m=O(0);e=O(O(O(H[a>>2])*k)+O(-1));f=O(O(O(H[a+4>>2])*k)+O(-1));i=O(O(O(1)-O(P(e)))-O(P(f)));h=O(S(O(-i),O(0)));n=O(-h);f=O(f+(f>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;d=(B(l),v(2));F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;d=(B(g),v(2));F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function Ai(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,f=0,g=0,h=0;f=da-16|0;da=f;a:{b:{c:{if(!b){break c}g=sb(c);if(g>>>0>=4294967280){break b}d:{e:{if(g>>>0>=11){h=g+16&-16;a=ra(h);H[f+8>>2]=h|-2147483648;H[f>>2]=a;H[f+4>>2]=g;break e}F[f+11|0]=g;a=f;if(!g){break d}}sa(a,c,g)}F[a+g|0]=0;g=da-16|0;da=g;M[g+8>>3]=d;e=da-32|0;da=e;a=pb(b,f);if((a|0)!=(b+4|0)){Dc(b,a)}c=H[g+8>>2];a=H[g+12>>2];f:{if(F[f+11|0]>=0){H[e+8>>2]=H[f+8>>2];h=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=h;break f}Ia(e,H[f>>2],H[f+4>>2])}H[e+20>>2]=0;H[e+12>>2]=0;H[e+16>>2]=0;eb(e+12|0,8);h=H[e+12>>2];F[h|0]=c;F[h+1|0]=c>>>8;F[h+2|0]=c>>>16;F[h+3|0]=c>>>24;F[h+4|0]=a;F[h+5|0]=a>>>8;F[h+6|0]=a>>>16;F[h+7|0]=a>>>24;Cc(e+24|0,b,e,e);a=H[e+12>>2];if(a){H[e+16>>2]=a;qa(a)}if(F[e+11|0]<0){qa(H[e>>2])}da=e+32|0;da=g+16|0;if(F[f+11|0]>=0){break c}qa(H[f>>2])}da=f+16|0;a=(b|0)!=0;break a}hb();X()}return a|0}function cg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;b=H[H[a+184>>2]+(b<<2)>>2];F[c+15|0]=b;e=H[H[a+4>>2]+44>>2];d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){wa(e,H[e+4>>2],c+15|0,c+16|0);b=I[c+15|0]}a:{b:{c:{if(b<<24>>24<0){e=H[a+68>>2];break c}b=H[H[a+172>>2]+N(b&255,136)>>2];d=fa[H[H[a>>2]+40>>2]](a)|0;f=H[a+172>>2]+N(F[c+15|0],136)|0;e=H[f+132>>2];d:{switch(H[H[H[d+56>>2]+84>>2]+(b<<2)>>2]){case 0:break c;case 1:break d;default:break b}}if(!I[f+28|0]){break b}}b=H[H[a+4>>2]+44>>2];F[c+14|0]=0;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+14|0,c+15|0);break a}b=H[H[a+4>>2]+44>>2];F[c+13|0]=1;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+13|0,c+14|0)}a=H[H[a+4>>2]+44>>2];F[c+12|0]=e;b=H[a+20>>2];if(!H[a+16>>2]&(b|0)<=0|(b|0)<0){wa(a,H[a+4>>2],c+12|0,c+13|0)}da=c+16|0;return 1}function Jc(a,b){var c=0,d=0;c=H[b+8>>2];H[a+4>>2]=H[b+4>>2];H[a+8>>2]=c;H[a+20>>2]=H[b+20>>2];c=H[b+16>>2];H[a+12>>2]=H[b+12>>2];H[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=H[b+28>>2];if(c){c:{if(H[a+32>>2]<<5>>>0>=c>>>0){d=H[a+24>>2];break c}d=H[a+24>>2];if(d){qa(d);H[a+32>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;c=H[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=ra(c<<2);H[a+32>>2]=c;H[a+28>>2]=0;H[a+24>>2]=d;c=H[b+28>>2]}xa(d,H[b+24>>2],(c-1>>>3&536870908)+4|0);c=H[b+28>>2]}else{c=0}H[a+28>>2]=c;c=H[b+40>>2];if(c){d:{if(H[a+44>>2]<<5>>>0>=c>>>0){d=H[a+36>>2];break d}d=H[a+36>>2];if(d){qa(d);H[a+44>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;c=H[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=ra(c<<2);H[a+44>>2]=c;H[a+40>>2]=0;H[a+36>>2]=d;c=H[b+40>>2]}xa(d,H[b+36>>2],(c-1>>>3&536870908)+4|0);b=H[b+40>>2]}else{b=0}H[a+40>>2]=b}return}La();X()}La();X()}function md(a,b,c){var d=0,e=0,f=0,g=0;Da(H[c+8>>2],b);d=H[c>>2];g=c+4|0;if((d|0)!=(g|0)){while(1){f=d;if(!_e(b,d+16|0)){return}d=H[f+32>>2]-H[f+28>>2]|0;Da(d,b);e=H[b+20>>2];if(!H[b+16>>2]&(e|0)<=0|(e|0)<0){e=H[f+28>>2];wa(b,H[b+4>>2],e,e+d|0)}e=H[f+4>>2];a:{if(!e){d=H[f+8>>2];if((f|0)==H[d>>2]){break a}e=f+8|0;while(1){f=H[e>>2];e=f+8|0;d=H[f+8>>2];if((f|0)!=H[d>>2]){continue}break}break a}while(1){d=e;e=H[d>>2];if(e){continue}break}}if((d|0)!=(g|0)){continue}break}}Da(H[c+20>>2],b);d=H[c+12>>2];f=c+16|0;if((d|0)==(f|0)){return}while(1){c=d;if(!_e(b,d+16|0)){return}md(a,b,H[c+28>>2]);e=H[c+4>>2];b:{if(!e){d=H[c+8>>2];if((c|0)==H[d>>2]){break b}e=c+8|0;while(1){c=H[e>>2];e=c+8|0;d=H[c+8>>2];if((c|0)!=H[d>>2]){continue}break}break b}while(1){d=e;e=H[d>>2];if(e){continue}break}}if((d|0)!=(f|0)){continue}break}}function uh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if((fa[H[H[b>>2]+20>>2]](b)|0)>0){while(1){d=kc(H[H[a+4>>2]+4>>2],fa[H[H[b>>2]+24>>2]](b,i)|0);if((d|0)!=-1){c=H[a+20>>2];c:{if((c|0)!=H[a+24>>2]){H[c>>2]=d;H[a+20>>2]=c+4;break c}h=H[a+16>>2];e=c-h|0;g=e>>2;c=g+1|0;if(c>>>0>=1073741824){break b}f=e>>1;f=e>>>0<2147483644?c>>>0>f>>>0?c:f:1073741823;if(f){if(f>>>0>=1073741824){break a}c=ra(f<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=d;if((e|0)>0){sa(c,h,e)}H[a+24>>2]=c+(f<<2);H[a+20>>2]=g+4;H[a+16>>2]=c;if(!h){break c}qa(h)}c=H[a+4>>2];d:{if((d|0)<0){break d}e=H[c+4>>2];if(H[e+12>>2]-H[e+8>>2]>>2<=(d|0)){break d}c=H[H[c+8>>2]+(H[H[c+20>>2]+(d<<2)>>2]<<2)>>2];fa[H[H[c>>2]+32>>2]](c,d)|0}i=i+1|0;if((fa[H[H[b>>2]+20>>2]](b)|0)>(i|0)){continue}}break}a=(d|0)!=-1}else{a=1}return a|0}va();X()}ya(1604);X()}function Ci(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=da-16|0;da=e;a:{b:{c:{if(!b){break c}f=sb(c);if(f>>>0>=4294967280){break b}d:{e:{if(f>>>0>=11){g=f+16&-16;a=ra(g);H[e+8>>2]=g|-2147483648;H[e>>2]=a;H[e+4>>2]=f;break e}F[e+11|0]=f;a=e;if(!f){break d}}sa(a,c,f)}F[a+f|0]=0;f=da-16|0;da=f;H[f+12>>2]=d;a=da-32|0;da=a;c=pb(b,e);if((c|0)!=(b+4|0)){Dc(b,c)}c=H[f+12>>2];f:{if(F[e+11|0]>=0){H[a+8>>2]=H[e+8>>2];d=H[e+4>>2];H[a>>2]=H[e>>2];H[a+4>>2]=d;break f}Ia(a,H[e>>2],H[e+4>>2])}H[a+20>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;eb(a+12|0,4);d=H[a+12>>2];F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;Cc(a+24|0,b,a,a);c=H[a+12>>2];if(c){H[a+16>>2]=c;qa(c)}if(F[a+11|0]<0){qa(H[a>>2])}da=a+32|0;da=f+16|0;if(F[e+11|0]>=0){break c}qa(H[e>>2])}da=e+16|0;a=(b|0)!=0;break a}hb();X()}return a|0}function Xf(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=H[a+112>>2]-H[a+108>>2]|0;e=(d|0)/12|0;Da(e,H[H[a+4>>2]+44>>2]);if(d){f=e>>>0>1?e:1;d=0;while(1){b=H[a+108>>2]+N(d,12)|0;Da(H[b+4>>2]-c|0,H[H[a+4>>2]+44>>2]);Da(H[b+4>>2]-H[b>>2]|0,H[H[a+4>>2]+44>>2]);c=H[b+4>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}d=0;yd(H[H[a+4>>2]+44>>2],e,0,0);a:{b=H[H[a+4>>2]+44>>2];f=H[b+16>>2];c=H[b+20>>2];if(!f&(c|0)<=0|(c|0)<0){break a}h=e>>>0>1?e:1;while(1){if(!!f&(c|0)>=0|(c|0)>0){f=I[(H[a+108>>2]+N(d,12)|0)+8|0];e=H[b+12>>2];c=H[e+4>>2];b=c>>>3|0;g=b+H[e>>2]|0;i=I[g|0];c=c&7;j=g,k=Bl(c)&i,F[j|0]=k;b=b+H[e>>2]|0;F[b|0]=I[b|0]|(f&1)<>2]=H[e+4>>2]+1}d=d+1|0;if((h|0)==(d|0)){break a}b=H[H[a+4>>2]+44>>2];f=H[b+16>>2];c=H[b+20>>2];continue}}xd(H[H[a+4>>2]+44>>2])}return 1}function af(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=da-16|0;da=e;b=H[a+100>>2];g=H[a+96>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;f=b-g|0;b=(f|0)/12|0;a:{b:{if(!f){break b}if(b>>>0>=357913942){break a}c=ra(f);H[e>>2]=c;H[e+8>>2]=c+N(b,12);a=0;d=c;c=N((f-12>>>0)/12|0,12)+12|0;f=ta(d,0,c);H[e+4>>2]=c+f;c=b>>>0>1?b:1;j=c&1;if(b>>>0>=2){k=c&-2;b=0;while(1){d=N(a,12);c=d+g|0;h=H[c+4>>2];i=H[c>>2];d=d+f|0;H[d+8>>2]=H[c+8>>2];H[d>>2]=i;H[d+4>>2]=h;d=N(a|1,12);c=d+g|0;h=H[c+8>>2];i=H[c+4>>2];d=d+f|0;H[d>>2]=H[c>>2];H[d+4>>2]=i;H[d+8>>2]=h;a=a+2|0;b=b+2|0;if((k|0)!=(b|0)){continue}break}}if(!j){break b}b=N(a,12);a=b+g|0;g=H[a+4>>2];c=H[a>>2];b=b+f|0;H[b+8>>2]=H[a+8>>2];H[b>>2]=c;H[b+4>>2]=g}b=ef(e);a=H[e>>2];if(a){H[e+4>>2]=a;qa(a)}da=e+16|0;return b}va();X()}function fb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=da-16|0;da=f;a:{b:{c=H[a+4>>2];c:{if((c|0)!=H[a+8>>2]){H[c>>2]=H[a+12>>2];d=c+4|0;H[a+4>>2]=d;break c}h=H[a>>2];g=c-h|0;d=g>>2;c=d+1|0;if(c>>>0>=1073741824){break b}e=g>>1;e=g>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>=1073741824){break a}c=ra(e<<2)}else{c=0}d=c+(d<<2)|0;H[d>>2]=H[a+12>>2];d=d+4|0;if((g|0)>0){sa(c,h,g)}H[a+8>>2]=(e<<2)+c;H[a+4>>2]=d;H[a>>2]=c;if(!h){break c}qa(h);d=H[a+4>>2]}c=d;d=H[a>>2];H[f+12>>2]=c-d;c=H[b+20>>2];d:{if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break d}wa(b,H[b+4>>2],f+12|0,f+16|0);d=H[a>>2];c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break d}wa(b,H[b+4>>2],d,H[f+12>>2]+d|0);d=H[a>>2]}H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=d;da=f+16|0;return}va();X()}ya(1604);X()}function He(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=da-16|0;da=c;Da(H[a+8>>2]-H[a+4>>2]>>2,b);e=H[a+4>>2];if((e|0)!=H[a+8>>2]){h=c+13|0;i=c+14|0;j=c+15|0;k=c+16|0;while(1){e=H[H[H[a+32>>2]+8>>2]+(H[(g<<2)+e>>2]<<2)>>2];F[c+15|0]=H[e+56>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+15|0,k);d=H[b+20>>2];f=H[b+16>>2];F[c+14|0]=H[e+28>>2];if(!!f&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+14|0,j);d=H[b+20>>2];f=H[b+16>>2];F[c+13|0]=I[e+24|0];if(!!f&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+13|0,i);d=H[b+20>>2];f=H[b+16>>2];F[c+12|0]=I[e+32|0];if(!!f&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+12|0,h)}Da(H[e+60>>2],b);g=g+1|0;e=H[a+4>>2];if(g>>>0>2]-e>>2>>>0){continue}break}}da=c+16|0;return 1}function Gk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=da-16|0;da=e;H[e+12>>2]=c;if(!(!de(a,b,c)|I[H[a+8>>2]+24|0]!=3)){f=H[b+48>>2];b=ra(32);H[e>>2]=b;H[e+4>>2]=17;H[e+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];c=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);d=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);d=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;b=xb(f,e+12|0,e,-1);if(F[e+11|0]<0){qa(H[e>>2])}if((b|0)>0){H[a+44>>2]=b}d=(b|0)>0}da=e+16|0;return d|0}function xa(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return sa(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}F[d|0]=I[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;F[d|0]=I[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;H[c+a>>2]=H[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;F[c+a|0]=I[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){H[d>>2]=H[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){F[d|0]=I[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function $f(a,b,c){var d=0,e=0,f=0,g=0;a:{b=N(b,3);if((b|0)==-1){break a}b:{e=H[a+12>>2];f=H[e+12>>2];d=b<<2;c:{if(H[f+d>>2]==-1){break c}a=H[a+152>>2];e=H[e>>2];if(H[a+(H[e+d>>2]<<2)>>2]!=-1){break b}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break a}d=b<<2;if(H[d+f>>2]==-1){break c}if(H[a+(H[d+e>>2]<<2)>>2]!=-1){break b}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break a}d=b<<2;if(H[d+f>>2]==-1){break c}if(H[a+(H[d+e>>2]<<2)>>2]!=-1){break b}g=1;a=b+1|0;b=(a>>>0)%3|0?a:b-2|0}H[c>>2]=b;return g}while(1){d:{a=b;e:{if((b>>>0)%3|0){b=a-1|0;break e}b=a+2|0;if((b|0)==-1){break d}}b=H[(b<<2)+f>>2];if((b|0)==-1){break d}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){continue}}break}H[c>>2]=a+((a>>>0)%3|0?-1:2);return 0}H[c>>2]=-1;return 0}function Ie(a,b,c){a:{switch(b-9|0){case 0:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];return;case 6:b=H[c>>2];H[c>>2]=b+4;b=G[b>>1];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 7:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=J[b>>1];H[a+4>>2]=0;return;case 8:b=H[c>>2];H[c>>2]=b+4;b=F[b|0];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 9:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=I[b|0];H[a+4>>2]=0;return;case 16:b=H[c>>2]+7&-8;H[c>>2]=b+8;M[a>>3]=M[b>>3];return;case 17:fa[369](a,c);default:return;case 1:case 4:case 14:b=H[c>>2];H[c>>2]=b+4;b=H[b>>2];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];H[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=H[c>>2]+7&-8;H[c>>2]=b+8;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c}function Qe(a,b,c,d,e,f){var g=0;g=da-80|0;da=g;a:{if((f|0)>=16384){Ha(g+32|0,b,c,d,e,0,0,0,2147352576);d=H[g+40>>2];e=H[g+44>>2];b=H[g+32>>2];c=H[g+36>>2];if(f>>>0<32767){f=f-16383|0;break a}Ha(g+16|0,b,c,d,e,0,0,0,2147352576);f=(f>>>0<49149?f:49149)-32766|0;d=H[g+24>>2];e=H[g+28>>2];b=H[g+16>>2];c=H[g+20>>2];break a}if((f|0)>-16383){break a}Ha(g- -64|0,b,c,d,e,0,0,0,7471104);d=H[g+72>>2];e=H[g+76>>2];b=H[g+64>>2];c=H[g+68>>2];if(f>>>0>4294934644){f=f+16269|0;break a}Ha(g+48|0,b,c,d,e,0,0,0,7471104);f=(f>>>0>4294918376?f:-48920)+32538|0;d=H[g+56>>2];e=H[g+60>>2];b=H[g+48>>2];c=H[g+52>>2]}Ha(g,b,c,d,e,0,0,0,f+16383<<16);b=H[g+12>>2];H[a+8>>2]=H[g+8>>2];H[a+12>>2]=b;b=H[g+4>>2];H[a>>2]=H[g>>2];H[a+4>>2]=b;da=g+80|0}function Fa(a,b){var c=0,d=0,e=0,f=0;c=H[a>>2];a:{if(b){b=H[c+12>>2];d=H[c+8>>2]+1|0;b=d?b:b+1|0;H[c+8>>2]=d;H[c+12>>2]=b;b=H[a+28>>2];H[a+24>>2]=H[a+24>>2]|1<>2];d=H[c>>2]+1|0;b=d?b:b+1|0;H[c>>2]=d;H[c+4>>2]=b;b=H[a+28>>2]}b=b+1|0;H[a+28>>2]=b;b:{c:{if((b|0)==32){b=H[a+16>>2];d:{if((b|0)!=H[a+20>>2]){H[b>>2]=H[a+24>>2];H[a+16>>2]=b+4;break d}d=H[a+12>>2];c=b-d|0;f=c>>2;b=f+1|0;if(b>>>0>=1073741824){break c}e=c>>1;e=c>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>=1073741824){break b}b=ra(e<<2)}else{b=0}f=b+(f<<2)|0;H[f>>2]=H[a+24>>2];if((c|0)>0){sa(b,d,c)}H[a+20>>2]=b+(e<<2);H[a+16>>2]=f+4;H[a+12>>2]=b;if(!d){break d}qa(d)}H[a+24>>2]=0;H[a+28>>2]=0}return}va();X()}ya(1604);X()}function ta(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}F[a|0]=b;e=a+c|0;F[e-1|0]=b;if(c>>>0<3){break a}F[a+2|0]=b;F[a+1|0]=b;F[e-3|0]=b;F[e-2|0]=b;if(c>>>0<7){break a}F[a+3|0]=b;F[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=N(b&255,16843009);H[f>>2]=d;b=c-e&-4;c=b+f|0;H[c-4>>2]=d;if(b>>>0<9){break a}H[f+8>>2]=d;H[f+4>>2]=d;H[c-8>>2]=d;H[c-12>>2]=d;if(b>>>0<25){break a}H[f+24>>2]=d;H[f+20>>2]=d;H[f+16>>2]=d;H[f+12>>2]=d;H[c-16>>2]=d;H[c-20>>2]=d;H[c-24>>2]=d;H[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=xl(d,0,1,1);e=ea;b=b+f|0;while(1){H[b+24>>2]=d;H[b+28>>2]=e;H[b+16>>2]=d;H[b+20>>2]=e;H[b+8>>2]=d;H[b+12>>2]=e;H[b>>2]=d;H[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function Rg(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=da-16|0;da=g;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;d=a+16|0;H[d>>2]=0;H[d+4>>2]=0;H[a+12>>2]=d;d=a+24|0;H[d+4>>2]=0;H[d+8>>2]=0;H[d>>2]=d+4;if((b+4|0)!=(a|0)){ic(a,H[b+4>>2],b+8|0)}if((d|0)!=(b+28|0)){ic(d,H[b+28>>2],b+32|0)}H[g+12>>2]=0;a:{f=H[c+8>>2];if((H[c+12>>2]-f|0)<=0){break a}d=b+20|0;b=H[d>>2];if(!b){break a}while(1){b:{if(!b){break b}h=H[H[(e<<2)+f>>2]+56>>2];e=d;while(1){f=H[b+16>>2]<(h|0);e=f?e:b;b=H[(f<<2)+b>>2];if(b){continue}break}if((d|0)==(e|0)|H[e+16>>2]>(h|0)){break b}b=sc(a,g+12|0);if((b|0)==(e+20|0)){break b}ic(b,H[e+20>>2],e+24|0)}e=H[g+12>>2]+1|0;H[g+12>>2]=e;f=H[c+8>>2];if(H[c+12>>2]-f>>2<=(e|0)){break a}b=H[d>>2];continue}}da=g+16|0}function fj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+56>>2]-H[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=ra(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){sa(c,d,e)}H[b+8>>2]=g;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}qa(d)}e=a+8|0;b=H[a+76>>2];c:{if(b){d=H[b>>2];if((d|0)==H[b+4>>2]){return 1}b=0;while(1){c=Nf(e,H[(b<<2)+d>>2]);if(!c){break c}f=H[a+76>>2];d=H[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=H[H[a+12>>2]+64>>2];a=H[a+4>>2]-H[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=Nf(e,N(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}ya(1604);X()}function kj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+28>>2]-H[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=ra(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){sa(c,d,e)}H[b+8>>2]=g;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}qa(d)}e=a+8|0;b=H[a+76>>2];c:{if(b){d=H[b>>2];if((d|0)==H[b+4>>2]){return 1}b=0;while(1){c=Of(e,H[(b<<2)+d>>2]);if(!c){break c}f=H[a+76>>2];d=H[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=H[a+12>>2];a=H[a+4>>2]-H[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=Of(e,N(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}ya(1604);X()}function jc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=da-16|0;da=h;a:{b:{c=H[a+8>>2];c:{if((c|0)!=H[a+12>>2]){H[c>>2]=b;H[a+8>>2]=c+4;break c}e=H[a+4>>2];d=c-e|0;g=d>>2;c=g+1|0;if(c>>>0>=1073741824){break b}f=d>>1;f=d>>>0<2147483644?c>>>0>f>>>0?c:f:1073741823;if(f){if(f>>>0>=1073741824){break a}c=ra(f<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=b;if((d|0)>0){sa(c,e,d)}H[a+12>>2]=c+(f<<2);H[a+8>>2]=g+4;H[a+4>>2]=c;if(!e){break c}qa(e)}c=H[a+16>>2];d=H[a+20>>2]-c>>2;d:{if((d|0)>(b|0)){break d}H[h+12>>2]=-1;e=b+1|0;if(e>>>0>d>>>0){Ma(a+16|0,e-d|0,h+12|0);c=H[a+16>>2];break d}if(d>>>0<=e>>>0){break d}H[a+20>>2]=(e<<2)+c}H[(b<<2)+c>>2]=(H[a+8>>2]-H[a+4>>2]>>2)-1;da=h+16|0;return}va();X()}ya(1604);X()}function dl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[b+4>>2]-H[b>>2]>>2;f=H[a+8>>2];i=F[f+24|0];d=i;g=da+-64|0;da=g;h=Mc(g);d=N(d,H[3716]);Fd(h,H[H[a+8>>2]+56>>2],0,i,5,d,d>>31);j=ra(96);Dd(dg(j,h),e);d=H[a+32>>2];H[a+32>>2]=j;if(d){Pa(d)}a:{if(!c){break a}d=H[a+32>>2];F[d+84|0]=0;h=H[d+68>>2];e=H[d+72>>2]-h>>2;if(e>>>0>>0){Ma(d+68|0,c-e|0,2764);break a}if(c>>>0>=e>>>0){break a}H[d+72>>2]=h+(c<<2)}da=g- -64|0;c=H[b>>2];d=H[b+4>>2];if((c|0)==(d|0)){return 1}a=H[a+32>>2];g=H[H[a>>2]>>2]+H[a+48>>2]|0;b=0;while(1){a=H[c>>2];if(!I[f+84|0]){a=H[H[f+68>>2]+(a<<2)>>2]}a=_c(f,a,F[f+24|0],g+(b<<2)|0);if(a){b=b+i|0;c=c+4|0;if((d|0)!=(c|0)){continue}}break}return a|0}function ue(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{g=a+16|0;f=H[g>>2];b:{if(!f){break b}i=H[b>>2];b=g;while(1){h=(i|0)>H[f+16>>2];b=h?b:f;f=H[(h<<2)+f>>2];if(f){continue}break}if((b|0)==(g|0)|(i|0)>2]){break b}f=H[b+24>>2];if(!f){break b}g=I[c+11|0];h=g<<24>>24<0;i=h?H[c>>2]:c;g=h?H[c+4>>2]:g;m=b+20|0;while(1){b=I[f+27|0];h=b<<24>>24<0;b=h?H[f+20>>2]:b;l=b>>>0>>0;c:{d:{k=l?b:g;e:{if(k){j=f+16|0;h=h?H[j>>2]:j;j=Ga(i,h,k);f:{if(!j){if(b>>>0<=g>>>0){break f}break c}if((j|0)<0){break c}}b=Ga(h,i,k);if(!b){break e}if((b|0)<0){break d}break a}if(b>>>0>g>>>0){break c}}if(l){break d}break a}f=f+4|0}f=H[f>>2];if(f){continue}break}}se(a,c,d,e);return}se(m,c,d,e)}function xb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=a+16|0;e=H[f>>2];a:{if(!e){break a}h=H[b>>2];b=f;while(1){g=(h|0)>H[e+16>>2];b=g?b:e;e=H[(g<<2)+e>>2];if(e){continue}break}if((b|0)==(f|0)|(h|0)>2]){break a}e=H[b+24>>2];if(!e){break a}f=I[c+11|0];g=f<<24>>24<0;h=g?H[c>>2]:c;f=g?H[c+4>>2]:f;g=b+20|0;while(1){b=I[e+27|0];i=b<<24>>24<0;b=i?H[e+20>>2]:b;l=b>>>0>>0;b:{c:{k=l?b:f;d:{if(k){j=e+16|0;i=i?H[j>>2]:j;j=Ga(h,i,k);e:{if(!j){if(b>>>0<=f>>>0){break e}break b}if((j|0)<0){break b}}b=Ga(i,h,k);if(!b){break d}if((b|0)<0){break c}return Db(g,c,d)}if(b>>>0>f>>>0){break b}}if(l){break c}return Db(g,c,d)}e=e+4|0}e=H[e>>2];if(e){continue}break}}return Db(a,c,d)}function Zg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=da-48|0;da=d;H[d+40>>2]=H[a- -64>>2];c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],d+40|0,d+44|0)}c=d+8|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);if(H[d+40>>2]>0){f=1;while(1){g=f;f=H[H[a+60>>2]+(e>>>3&536870908)>>2]>>>e|0;Fa(c,(g^f^-1)&1);f=f&1;e=e+1|0;if((e|0)>2]){continue}break}}Ba(c,b);H[d+44>>2]=H[a+12>>2];e=H[b+20>>2];a:{if(!!H[b+16>>2]&(e|0)>=0|(e|0)>0){break a}f=d+48|0;wa(b,H[b+4>>2],d+44|0,f);e=H[b+20>>2];g=H[b+16>>2];H[d+44>>2]=H[a+24>>2];if(!!g&(e|0)>=0|(e|0)>0){break a}wa(b,H[b+4>>2],d+44|0,f)}Aa(c);da=d+48|0;return 1}function ih(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=da-48|0;da=d;H[d+40>>2]=H[a+80>>2];c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],d+40|0,d+44|0)}c=d+8|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;Ca(c);if(H[d+40>>2]>0){f=1;while(1){g=f;f=H[H[a+76>>2]+(e>>>3&536870908)>>2]>>>e|0;Fa(c,(g^f^-1)&1);f=f&1;e=e+1|0;if((e|0)>2]){continue}break}}Ba(c,b);H[d+44>>2]=H[a+12>>2];e=H[b+20>>2];a:{if(!!H[b+16>>2]&(e|0)>=0|(e|0)>0){break a}f=d+48|0;wa(b,H[b+4>>2],d+44|0,f);e=H[b+20>>2];g=H[b+16>>2];H[d+44>>2]=H[a+16>>2];if(!!g&(e|0)>=0|(e|0)>0){break a}wa(b,H[b+4>>2],d+44|0,f)}Aa(c);da=d+48|0;return 1}function Ic(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{d=H[a>>2];g=H[a+4>>2]-d>>2;e=g+1|0;if(e>>>0<1073741824){d=H[a+8>>2]-d|0;f=d>>1;d=d>>>0<2147483644?e>>>0>f>>>0?e:f:1073741823;if(d){if(d>>>0>=1073741824){break c}c=ra(d<<2)}f=H[b>>2];H[b>>2]=0;e=(g<<2)+c|0;H[e>>2]=f;d=(d<<2)+c|0;g=e+4|0;b=H[a>>2];c=H[a+4>>2];if((b|0)==(c|0)){break b}while(1){c=c-4|0;f=H[c>>2];H[c>>2]=0;e=e-4|0;H[e>>2]=f;if((b|0)!=(c|0)){continue}break}H[a+8>>2]=d;c=H[a+4>>2];H[a+4>>2]=g;b=H[a>>2];H[a>>2]=e;if((b|0)==(c|0)){break a}while(1){c=c-4|0;a=H[c>>2];H[c>>2]=0;if(a){fa[H[H[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}va();X()}ya(1604);X()}H[a+8>>2]=d;H[a+4>>2]=g;H[a>>2]=e}if(b){qa(b)}}function te(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=a+16|0;d=H[e>>2];a:{if(!d){break a}g=H[b>>2];b=e;while(1){f=(g|0)>H[d+16>>2];b=f?b:d;d=H[(f<<2)+d>>2];if(d){continue}break}if((b|0)==(e|0)|(g|0)>2]){break a}d=H[b+24>>2];if(!d){break a}e=I[c+11|0];f=e<<24>>24<0;g=f?H[c>>2]:c;e=f?H[c+4>>2]:e;f=b+20|0;while(1){b=I[d+27|0];h=b<<24>>24<0;b=h?H[d+20>>2]:b;k=b>>>0>>0;b:{c:{j=k?b:e;d:{if(j){i=d+16|0;h=h?H[i>>2]:i;i=Ga(g,h,j);e:{if(!i){if(b>>>0<=e>>>0){break e}break b}if((i|0)<0){break b}}b=Ga(h,g,j);if(!b){break d}if((b|0)<0){break c}return wd(f,c)}if(b>>>0>e>>>0){break b}}if(k){break c}return wd(f,c)}d=d+4|0}d=H[d>>2];if(d){continue}break}}return wd(a,c)}function Dd(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(H[a+64>>2]){break a}d=ra(32);H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;c=H[a+64>>2];H[a+64>>2]=d;if(!c){break a}d=H[c>>2];if(d){H[c+4>>2]=d;qa(d)}qa(c)}d=H[a+64>>2];c=H[a+28>>2]-1|0;if(c>>>0<=10){c=H[(c<<2)+14848>>2]}else{c=-1}c=N(c,F[a+24|0]);g=c;f=c>>31;e=xl(c,f,b,0);c=0;b:{if((ea|0)<0){break b}eb(d,e);c=H[d+28>>2];e=H[d+24>>2]+1|0;c=e?c:c+1|0;H[d+24>>2]=e;H[d+28>>2]=c;c=1}if(c){d=H[a+64>>2];H[a>>2]=d;c=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=c;c=H[d+24>>2];d=H[d+28>>2];H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=g;H[a+44>>2]=f;H[a+16>>2]=c;H[a+20>>2]=d;H[a+80>>2]=b}}function Wa(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{if((a|0)==(b|0)){break a}e=H[a>>2];H[c>>2]=e;f=a+4|0;if((f|0)==(b|0)){break a}a=H[d>>2];g=H[a>>2];d=H[f>>2];h=H[a+4>>2]-g>>3;b:{if(d>>>0>=h>>>0){break b}a=c;while(1){if(e>>>0>=h>>>0){break b}j=a+4|0;c:{if(K[(d<<3)+g>>2]>2]){H[a+4>>2]=e;i=c;d:{if((a|0)==(c|0)){break d}while(1){k=H[f>>2];if(k>>>0>=h>>>0){break b}e=a-4|0;d=H[e>>2];if(d>>>0>=h>>>0){break b}i=a;if(K[(k<<3)+g>>2]>=K[(d<<3)+g>>2]){break d}H[a>>2]=d;a=e;if((c|0)!=(a|0)){continue}break}i=c}H[i>>2]=H[f>>2];break c}H[j>>2]=d}f=f+4|0;if((f|0)==(b|0)){break a}e=H[j>>2];a=j;d=H[f>>2];if(h>>>0>d>>>0){continue}break}}ua();X()}}function Kk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;H[b>>2]=1;f=b+8|0;c=H[b+8>>2];d=H[b+12>>2]-c|0;if(d>>>0<=4294967291){Gc(f,d+4|0);c=H[f>>2]}c=c+d|0;d=H[a+4>>2];F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=H[a+8>>2];if((c|0)!=H[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=H[b+8>>2];e=H[b+12>>2]-c|0;if(e>>>0<=4294967291){Gc(f,e+4|0);c=H[f>>2]}c=c+e|0;e=H[g>>2];F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;d=d+1|0;c=H[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=H[b+12>>2];b=H[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){Gc(f,c+4|0);b=H[f>>2]}b=b+c|0;a=H[a+20>>2];F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24}function Ra(a,b,c){var d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[a+4>>2]=0;a:{b:{if(!b){break b}g=H[a+8>>2];d=g<<5;c:{if(d>>>0>=b>>>0){H[a+4>>2]=b;break c}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=b+31&-32;d=g<<6;d=d>>>0>>0?f:d}else{d=2147483647}Hb(e,d);f=H[a>>2];H[a>>2]=H[e>>2];H[e>>2]=f;d=H[a+4>>2];H[a+4>>2]=b;H[e+4>>2]=d;d=H[a+8>>2];H[a+8>>2]=H[e+8>>2];H[e+8>>2]=d;if(!f){break c}qa(f)}f=b>>>5|0;d=f<<2;a=H[a>>2];if(I[c|0]){a=ta(a,255,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;H[a>>2]=H[a>>2]|-1>>>32-b;break b}a=ta(a,0,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;H[a>>2]=H[a>>2]&(-1>>>32-b^-1)}da=e+16|0;return}La();X()}function Ug(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=da-16|0;da=e;d=H[b+48>>2];a:{if((bb(d)|0)>9){break a}if((fa[H[H[b>>2]+8>>2]](b)|0)!=1){break a}b:{f=H[H[H[b+4>>2]+8>>2]+(a<<2)>>2];a=H[f+56>>2];if((a|0)==3){if(I[f+24|0]!=2){break b}c=5;if((bb(d)|0)<4){break a}a=H[f+56>>2]}if((a|0)!=1){break b}c:{if((bb(d)|0)>3){break c}g=e,h=kc(H[b+4>>2],0),H[g+12>>2]=h;a=Ye(H[b+4>>2]);if(!a){break c}a=H[a+28>>2]-1|0;if(a>>>0<11&1279>>>a){c=6;break a}a=tc(e,1357);b=xb(d,e+12|0,a,-1);if(F[a+11|0]<0){qa(H[a>>2])}c=6;if((b|0)>0){break a}}c=0;break a}c=0;if((bb(d)|0)>7){break a}c=1;if((bb(d)|0)>1){break a}c=K[H[b+4>>2]+80>>2]<40?1:4}da=e+16|0;return c}function Ng(a,b,c){var d=0,e=0,f=0;d=da-16|0;da=d;H[d+12>>2]=b;b=ra(32);H[d>>2]=b;H[d+4>>2]=17;H[d+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];e=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);f=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=f;F[b+9|0]=f>>>8;F[b+10|0]=f>>>16;F[b+11|0]=f>>>24;F[b+12|0]=e;F[b+13|0]=e>>>8;F[b+14|0]=e>>>16;F[b+15|0]=e>>>24;e=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);f=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=f;F[b+1|0]=f>>>8;F[b+2|0]=f>>>16;F[b+3|0]=f>>>24;F[b+4|0]=e;F[b+5|0]=e>>>8;F[b+6|0]=e>>>16;F[b+7|0]=e>>>24;tb(sc(a+4|0,d+12|0),d,c);if(F[d+11|0]<0){qa(H[d>>2])}da=d+16|0}function Vc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){f=H[a+4>>2]-e|0;d=f+b|0;h=f>>2;i=h>>>0>>0?d:c;f=i-b|0;if(f){xa(e,b,f)}if(g>>>0>h>>>0){b=H[a+4>>2];if((c|0)!=(i|0)){while(1){H[b>>2]=H[d>>2];b=b+4|0;d=d+4|0;if((d|0)!=(c|0)){continue}break}}H[a+4>>2]=b;return}H[a+4>>2]=e+f;return}if(e){H[a+4>>2]=e;qa(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}e=d>>1;d=d>>>0<2147483644?e>>>0>>0?g:e:1073741823;if(d>>>0>=1073741824){break a}e=d<<2;d=ra(e);H[a>>2]=d;H[a+4>>2]=d;H[a+8>>2]=d+e;if((b|0)!=(c|0)){c=b;b=f&-4;d=sa(d,c,b)+b|0}H[a+4>>2]=d;return}va();X()}function fk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;f=da-32|0;da=f;a=a+8|0;d=d-e|0;if((d|0)>0){i=0-e<<2;while(1){j=d<<2;g=j+b|0;h=g+i|0;k=H[h>>2];h=H[h+4>>2];l=H[g+4>>2];H[f+16>>2]=H[g>>2];H[f+20>>2]=l;H[f+8>>2]=k;H[f+12>>2]=h;_a(f+24|0,a,f+16|0,f+8|0);g=c+j|0;H[g>>2]=H[f+24>>2];H[g+4>>2]=H[f+28>>2];d=d-e|0;if((d|0)>0){continue}break}}d=(e&1073741823)!=(e|0)?-1:e<<2;d=ta(ra(d),0,d);e=H[d>>2];g=H[d+4>>2];i=H[b+4>>2];H[f+16>>2]=H[b>>2];H[f+20>>2]=i;H[f+8>>2]=e;H[f+12>>2]=g;_a(f+24|0,a,f+16|0,f+8|0);H[c>>2]=H[f+24>>2];H[c+4>>2]=H[f+28>>2];qa(d);da=f+32|0;return 1}function xd(a){var b=0,c=0,d=0,e=0,f=0;c=da-32|0;da=c;b=H[a+20>>2];e=H[a+16>>2];if(!!e&(b|0)>=0|(b|0)>0){b=H[H[a+12>>2]+4>>2]+7|0;d=b>>>0<7?1:d;f=d<<29|b>>>3;b=d>>>3|0;if(I[a+24|0]){d=H[a+4>>2];F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=0;H[c+4>>2]=0;zb(f,b,c);d=d-e|0;b=d-8|0;e=H[c+4>>2]-H[c>>2]|0;xa(b+e|0,d,f);sa(b,H[c>>2],e);b=8-e|0;d=b+H[a+16>>2]|0;e=H[a+20>>2];H[a+16>>2]=d;H[a+20>>2]=b>>>0>d>>>0?e+1|0:e;b=H[c+12>>2];H[c+12>>2]=0;if(b){qa(b)}b=H[c>>2];if(b){H[c+4>>2]=b;qa(b)}b=H[a+16>>2]}else{b=e}eb(a,f-b+(H[a+4>>2]-H[a>>2])|0);H[a+16>>2]=0;H[a+20>>2]=0}da=c+32|0}function hc(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){f=H[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){H[e>>2]=H[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>0){f=sa(f,d,b)+b|0}H[a+4>>2]=f;return}H[a+4>>2]=e;return}if(e){H[a+4>>2]=e;qa(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=ra(e);H[a>>2]=c;H[a+4>>2]=c;H[a+8>>2]=c+e;if(f){c=sa(c,b,f)+f|0}H[a+4>>2]=c;return}va();X()}function zi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a=da-16|0;da=a;a:{if(!b){break a}H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=b+96|0;g=H[b+96>>2];e=(H[b+100>>2]-g|0)/12|0;b:{if(e>>>0>>0){gf(h,c-e|0,a);break b}if(c>>>0>>0){H[b+100>>2]=g+N(c,12)}if(!c){break a}}g=H[h>>2];e=0;while(1){i=N(e,12);f=i+d|0;j=H[f>>2];k=H[f+8>>2];l=H[f+4>>2];f=(H[b+100>>2]-g|0)/12|0;c:{if(f>>>0>e>>>0){e=e+1|0;break c}H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;e=e+1|0;gf(h,e-f|0,a);g=H[h>>2]}f=g+i|0;H[f+8>>2]=k;H[f+4>>2]=l;H[f>>2]=j;if((c|0)!=(e|0)){continue}break}}da=a+16|0;return(b|0)!=0|0}function uk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=da-32|0;da=g;H[a+48>>2]=f;d=H[a+40>>2];h=H[d>>2];a:{i=H[d+4>>2]-h|0;if((i|0)<=0){break a}d=i>>>2|0;f=d-1|0;if(f>>>0>2>>>0){i=a+8|0;m=a+44|0;while(1){hh(m,H[(f<<2)+h>>2],b,f);h=H[a+52>>2];j=H[a+56>>2];k=N(e,f)<<2;l=k+b|0;n=H[l+4>>2];H[g+16>>2]=H[l>>2];H[g+20>>2]=n;H[g+8>>2]=h;H[g+12>>2]=j;_a(g+24|0,i,g+16|0,g+8|0);h=c+k|0;H[h>>2]=H[g+24>>2];H[h+4>>2]=H[g+28>>2];if(d>>>0<2){break a}d=f;j=H[a+40>>2];h=H[j>>2];f=f-1|0;if(f>>>0>2]-h>>2>>>0){continue}break}}ua();X()}da=g+32|0;return 1}function jk(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=da-32|0;da=g;H[a+48>>2]=f;d=H[a+40>>2];h=H[d>>2];a:{i=H[d+4>>2]-h|0;if((i|0)<=0){break a}d=i>>>2|0;f=d-1|0;if(f>>>0>2>>>0){i=a+8|0;m=a+44|0;while(1){ch(m,H[(f<<2)+h>>2],b,f);h=H[a+52>>2];j=H[a+56>>2];k=N(e,f)<<2;l=k+b|0;n=H[l+4>>2];H[g+16>>2]=H[l>>2];H[g+20>>2]=n;H[g+8>>2]=h;H[g+12>>2]=j;_a(g+24|0,i,g+16|0,g+8|0);h=c+k|0;H[h>>2]=H[g+24>>2];H[h+4>>2]=H[g+28>>2];if(d>>>0<2){break a}d=f;j=H[a+40>>2];h=H[j>>2];f=f-1|0;if(f>>>0>2]-h>>2>>>0){continue}break}}ua();X()}da=g+32|0;return 1}function Lg(a,b){var c=0,d=0,e=0,f=0;f=da-16|0;da=f;c=ra(16);H[f>>2]=c;H[f+4>>2]=15;H[f+8>>2]=-2147483632;F[c+15|0]=0;d=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);e=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+7|0]=e;F[c+8|0]=e>>>8;F[c+9|0]=e>>>16;F[c+10|0]=e>>>24;F[c+11|0]=d;F[c+12|0]=d>>>8;F[c+13|0]=d>>>16;F[c+14|0]=d>>>24;d=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);e=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;tb(a+4|0,f,b);if(F[f+11|0]<0){qa(H[f>>2])}da=f+16|0}function Kb(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0;i=1;j=d&2147483647;l=j;k=(j|0)==2147418112;a:{if(k&!c?a|b:k&(c|0)!=0|j>>>0>2147418112){break a}j=h&2147483647;k=(j|0)==2147418112;if(k&!g?e|f:k&(g|0)!=0|j>>>0>2147418112){break a}if(!(a|e|(c|g)|(b|f|(j|l)))){return 0}i=d&h;if((i|0)>0|(i|0)>=0){i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>>0|b>>>0>>0:c>>>0>>0&(d|0)<=(h|0)|(d|0)<(h|0)){break a}return(a^e|c^g|(b^f|d^h))!=0}i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>e>>>0|b>>>0>f>>>0:c>>>0>g>>>0&(d|0)>=(h|0)|(d|0)>(h|0)){break a}i=(a^e|c^g|(b^f|d^h))!=0}return i}function Gg(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+4|0;a:{a=H[a+4>>2];if(a){e=I[c+11|0];d=e<<24>>24<0;i=d?H[c>>2]:c;e=d?H[c+4>>2]:e;while(1){c=I[a+27|0];d=c<<24>>24<0;c=d?H[a+20>>2]:c;j=c>>>0>>0;b:{c:{d:{e:{f:{h=j?c:e;g:{if(h){g=a+16|0;d=d?H[g>>2]:g;g=Ga(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>=0){break f}break g}if(c>>>0<=e>>>0){break e}}c=H[a>>2];if(c){break b}H[b>>2]=a;return a}c=Ga(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>=0){break a}}f=a+4|0;c=H[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}H[b>>2]=f;return f}H[b>>2]=a;return f}function dg(a,b){var c=0;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;c=H[b+60>>2];H[a+56>>2]=H[b+56>>2];H[a+60>>2]=c;c=H[b+52>>2];H[a+48>>2]=H[b+48>>2];H[a+52>>2]=c;c=H[b+44>>2];H[a+40>>2]=H[b+40>>2];H[a+44>>2]=c;c=H[b+36>>2];H[a+32>>2]=H[b+32>>2];H[a+36>>2]=c;c=H[b+28>>2];H[a+24>>2]=H[b+24>>2];H[a+28>>2]=c;c=H[b+20>>2];H[a+16>>2]=H[b+16>>2];H[a+20>>2]=c;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c;H[a+88>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;F[a+77|0]=0;F[a+78|0]=0;F[a+79|0]=0;F[a+80|0]=0;F[a+81|0]=0;F[a+82|0]=0;F[a+83|0]=0;F[a+84|0]=0;return a}function pb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;a=H[a+4>>2];a:{b:{if(!a){break b}d=I[b+11|0];c=d<<24>>24<0;i=c?H[b>>2]:b;e=c?H[b+4>>2]:d;c=g;while(1){b=I[a+27|0];j=b<<24>>24<0;h=j?H[a+20>>2]:b;f=h>>>0>e>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Ga(j?H[b>>2]:b,i,d);if(b){break c}}b=e>>>0>h>>>0?-1:f}c=(b|0)<0?c:a;a=H[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=I[c+27|0];f=a<<24>>24<0;d:{d=f?H[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=Ga(i,f?H[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>=0){break a}}c=g}return c}function oe(a){var b=0,c=0,d=0,e=0;c=H[a+152>>2];if(c){b=H[a+156>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+152>>2]}H[a+156>>2]=c;qa(b)}c=H[a+140>>2];if(c){b=H[a+144>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+140>>2]}H[a+144>>2]=c;qa(b)}b=H[a+128>>2];if(b){H[a+132>>2]=b;qa(b)}b=H[a+116>>2];if(b){H[a+120>>2]=b;qa(b)}b=H[a+104>>2];if(b){H[a+108>>2]=b;qa(b)}vb(a+84|0);vb(a- -64|0);vb(a+44|0);Aa(a+12|0)} +function ed(a,b,c,d,e,f,g,h){var i=0,j=0,k=0;i=da-16|0;da=i;if((b^-1)-17>>>0>=c>>>0){if(I[a+11|0]>>>7|0){k=H[a>>2]}else{k=a}a:{if(b>>>0<2147483623){H[i+8>>2]=b<<1;H[i+12>>2]=b+c;c=da-16|0;da=c;da=c+16|0;c=i+8|0;j=i+12|0;c=H[(K[j>>2]>2]?c:j)>>2];if(c>>>0>=11){j=c+16&-16;c=j-1|0;c=(c|0)==11?j:c}else{c=10}break a}c=-18}j=c+1|0;c=ra(j);if(e){Cb(c,k,e)}if(g){Cb(c+e|0,h,g)}d=d-(e+f|0)|0;if(d){Cb((c+e|0)+g|0,(e+k|0)+f|0,d)}if((b|0)!=10){qa(k)}H[a>>2]=c;H[a+8>>2]=j|-2147483648;b=a;a=d+(e+g|0)|0;H[b+4>>2]=a;F[i+7|0]=0;F[a+c|0]=I[i+7|0];da=i+16|0;return}hb();X()}function le(a){var b=0,c=0,d=0,e=0;c=H[a+140>>2];if(c){b=H[a+144>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+140>>2]}H[a+144>>2]=c;qa(b)}c=H[a+128>>2];if(c){b=H[a+132>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;qa(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+128>>2]}H[a+132>>2]=c;qa(b)}b=H[a+116>>2];if(b){H[a+120>>2]=b;qa(b)}b=H[a+104>>2];if(b){H[a+108>>2]=b;qa(b)}b=H[a+92>>2];if(b){H[a+96>>2]=b;qa(b)}vb(a+72|0);vb(a+52|0);vb(a+32|0);vb(a+12|0)}function xc(a,b){var c=0,d=0,e=0,f=0;c=H[a+16>>2];if(b){H[a+12>>2]=H[a+12>>2]|-2147483648>>>c}b=c+1|0;H[a+16>>2]=b;a:{b:{if((b|0)==32){b=H[a+4>>2];c:{if((b|0)!=H[a+8>>2]){H[b>>2]=H[a+12>>2];H[a+4>>2]=b+4;break c}f=H[a>>2];c=b-f|0;e=c>>2;b=e+1|0;if(b>>>0>=1073741824){break b}d=c>>1;d=c>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break a}b=ra(d<<2)}else{b=0}e=b+(e<<2)|0;H[e>>2]=H[a+12>>2];if((c|0)>0){sa(b,f,c)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=e+4;H[a>>2]=b;if(!f){break c}qa(f)}H[a+12>>2]=0;H[a+16>>2]=0}return}va();X()}ya(1604);X()}function Lh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(qb(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(qb(a,H[b>>2],e)){if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+32>>2]=d;b:{if(H[b+44>>2]==4){break b}G[b+52>>1]=0;a=H[a+8>>2];fa[H[H[a>>2]+20>>2]](a,b,c,c,1,e);if(I[b+53|0]){H[b+44>>2]=3;if(!I[b+52|0]){break b}break a}H[b+44>>2]=4}H[b+20>>2]=c;H[b+40>>2]=H[b+40>>2]+1;if(H[b+36>>2]!=1|H[b+24>>2]!=2){break a}F[b+54|0]=1;return}a=H[a+8>>2];fa[H[H[a>>2]+24>>2]](a,b,c,d,e)}}function cc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}d=N(b,12);b=ra(d);H[a>>2]=b;H[a+4>>2]=b;e=b+d|0;H[a+8>>2]=e;f=H[c>>2];c=H[c+4>>2]-f|0;c:{if(!c){c=b;b=d-12|0;ta(c,0,(b-((b>>>0)%12|0)|0)+12|0);break c}if((c|0)<0){break a}g=c>>2<<2;h=c>>>2<<2;while(1){H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;d=ra(c);H[b>>2]=d;H[b+4>>2]=d;H[b+8>>2]=d+g;i=b,j=sa(d,f,c)+h|0,H[i+4>>2]=j;b=b+12|0;if((e|0)!=(b|0)){continue}break}}H[a+4>>2]=e}return}va();X()}H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;va();X()}function Ig(a,b,c,d,e){var f=0,g=0,h=0;f=da-16|0;da=f;g=Hg(b,c,f+12|0,f+8|0,d);c=H[g>>2];if(c){b=0}else{c=ra(40);d=c+16|0;a:{if(F[e+11|0]>=0){h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;H[d+8>>2]=H[e+8>>2];break a}Ia(d,H[e>>2],H[e+4>>2])}d=c+28|0;b:{if(F[e+23|0]>=0){e=e+12|0;h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;H[d+8>>2]=H[e+8>>2];break b}Ia(d,H[e+12>>2],H[e+16>>2])}H[c+8>>2]=H[f+12>>2];H[c>>2]=0;H[c+4>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}ub(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c;da=f+16|0}function db(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){d=H[a+4>>2]-e|0;f=d>>2;d=f>>>0>>0?b+d|0:c;h=d-b|0;if(h){xa(e,b,h)}if(f>>>0>>0){b=H[a+4>>2];c=c-d|0;if((c|0)>0){b=sa(b,d,c)+c|0}H[a+4>>2]=b;return}H[a+4>>2]=e+h;return}if(e){H[a+4>>2]=e;qa(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=ra(e);H[a>>2]=c;H[a+4>>2]=c;H[a+8>>2]=c+e;if(f){c=sa(c,b,f)+f|0}H[a+4>>2]=c;return}va();X()}function ag(a){var b=0,c=0,d=0,e=0;Ca(a);c=H[a+84>>2];a:{if((c|0)<=0){break a}b=c<<5;d=ra((c|0)!=(c&134217727)?-1:b|4);H[d>>2]=c;d=d+4|0;c=d+b|0;b=d;while(1){H[b>>2]=0;H[b+4>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;b=b+32|0;if((c|0)!=(b|0)){continue}break}e=H[a+80>>2];H[a+80>>2]=d;if(e){c=e-4|0;d=H[c>>2];if(d){b=(d<<5)+e|0;while(1){b=Aa(b-32|0);if((e|0)!=(b|0)){continue}break}}qa(c)}if(H[a+84>>2]<=0){break a}b=0;while(1){Ca(H[a+80>>2]+(b<<5)|0);b=b+1|0;if((b|0)>2]){continue}break}}}function ye(a,b,c){var d=0,e=0,f=0;d=da+-64|0;da=d;f=H[a>>2];e=H[f-4>>2];f=H[f-8>>2];H[d+20>>2]=0;H[d+16>>2]=b;H[d+12>>2]=a;H[d+8>>2]=c;b=0;ta(d+24|0,0,39);a=a+f|0;a:{if(qb(e,c,0)){H[d+56>>2]=1;fa[H[H[e>>2]+20>>2]](e,d+8|0,a,a,1,0);b=H[d+32>>2]==1?a:0;break a}fa[H[H[e>>2]+24>>2]](e,d+8|0,a,1,0);b:{switch(H[d+44>>2]){case 0:b=H[d+48>>2]==1?H[d+36>>2]==1?H[d+40>>2]==1?H[d+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(H[d+32>>2]!=1){if(H[d+48>>2]|H[d+36>>2]!=1|H[d+40>>2]!=1){break a}}b=H[d+24>>2]}da=d- -64|0;return b}function rb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=da-16|0;da=f;A(+b);g=v(1)|0;d=v(0)|0;c=g&2147483647;e=c+-1048576|0;a:{if((e|0)==2145386495|e>>>0<2145386495){h=d<<28;e=c>>>4|0;c=(c&15)<<28|d>>>4;d=e+1006632960|0;break a}if((c|0)==2146435072|c>>>0>2146435072){h=d<<28;c=(g&15)<<28|d>>>4;d=g>>>4|2147418112;break a}if(!(c|d)){c=0;d=0;break a}e=c;c=c?Q(c):Q(d)+32|0;Ta(f,d,e,0,0,c+49|0);i=H[f>>2];h=H[f+4>>2];e=15372-c<<16;c=H[f+8>>2];d=e|H[f+12>>2]^65536}H[a>>2]=i;H[a+4>>2]=h;H[a+8>>2]=c;H[a+12>>2]=g&-2147483648|d;da=f+16|0}function ri(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=da-48|0;da=f;a:{if(!b){a=0;break a}e=f+16|0;H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;g=0;b:{if((kc(b,0)|0)==-1){break b}if(c){g=0;if(!(fa[H[H[b>>2]+16>>2]](b)|0)){break b}fa[H[H[b>>2]+20>>2]](b)}Sg(f,a,b,e);a=H[f>>2];if(F[f+15|0]<0){qa(H[f+4>>2])}g=0;if(a){break b}od(d,H[e>>2],H[e+4>>2]);g=H[e+4>>2]-H[e>>2]|0}a=g;b=H[e+12>>2];H[e+12>>2]=0;if(b){qa(b)}b=H[e>>2];if(!b){break a}H[e+4>>2]=b;qa(b)}da=f+48|0;return a|0}function ie(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=2312;b=H[a+60>>2];if(b){c=H[a- -64>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-4|0;d=H[c>>2];H[c>>2]=0;if(d){Pa(d)}if((b|0)!=(c|0)){continue}break}c=H[a+60>>2]}H[a+64>>2]=b;qa(c)}b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}b=H[a+36>>2];if(b){c=H[a+40>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-24|0;fa[H[H[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}c=H[a+36>>2]}H[a+40>>2]=b;qa(c)}H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;qa(b)}return a|0}function si(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=da-48|0;da=e;a:{if(!b){a=0;break a}d=e+16|0;H[d>>2]=0;H[d+4>>2]=0;F[d+24|0]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;f=0;b:{if((kc(b,0)|0)==-1){break b}f=0;if(!(fa[H[H[b>>2]+16>>2]](b)|0)){break b}fa[H[H[b>>2]+20>>2]](b);Pg(e,a,b,d);a=H[e>>2];if(F[e+15|0]<0){qa(H[e+4>>2])}f=0;if(a){break b}od(c,H[d>>2],H[d+4>>2]);f=H[d+4>>2]-H[d>>2]|0}a=f;b=H[d+12>>2];H[d+12>>2]=0;if(b){qa(b)}b=H[d>>2];if(!b){break a}H[d+4>>2]=b;qa(b)}da=e+48|0;return a|0}function vh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=H[a+8>>2];d=H[e+40>>2];g=ra((d|0)>=0?d:-1);a:{f=H[b>>2];h=H[b+4>>2];if((f|0)==(h|0)){break a}k=d+g|0;while(1){d=H[(i<<2)+f>>2];l=H[H[e>>2]>>2];m=H[e+48>>2];j=H[e+40>>2];n=H[e+44>>2];if(!I[e+84|0]){d=H[H[e+68>>2]+(d<<2)>>2]}d=xl(j,n,d,0)+m|0;e=sa(g,d+l|0,j);d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){wa(c,H[c+4>>2],e,k);h=H[b+4>>2];f=H[b>>2]}i=i+1|0;if(i>>>0>=h-f>>2>>>0){break a}e=H[a+8>>2];continue}}qa(g);return 1}function Jb(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;a:{if(f&64){c=f+-64|0;b=c&31;if((c&63)>>>0>=32){c=0;b=e>>>b|0}else{c=e>>>b|0;b=((1<>>b}d=0;e=0;break a}if(!f){break a}i=d;h=64-f|0;g=h&31;if((h&63)>>>0>=32){h=i<>>32-g|e<>>0>=32){g=0;b=c>>>b|0}else{g=c>>>b|0;b=((1<>>b}b=j|b;c=g|h;g=d;d=f&31;if((f&63)>>>0>=32){h=0;d=e>>>d|0}else{h=e>>>d|0;d=((1<>>d}e=h}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e}function _e(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=da-16|0;da=c;e=I[b+11|0];e=e<<24>>24<0?H[b+4>>2]:e;a:{if(e>>>0>255){break a}if(!e){F[c+15|0]=0;b=H[a+20>>2];if(!!H[a+16>>2]&(b|0)>=0|(b|0)>0){break a}wa(a,H[a+4>>2],c+15|0,c+16|0);break a}F[c+14|0]=e;d=H[a+20>>2];if(!!H[a+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(a,H[a+4>>2],c+14|0,c+15|0);d=H[a+20>>2];if(!!H[a+16>>2]&(d|0)>=0|(d|0)>0){break a}g=a;h=H[a+4>>2];a=I[b+11|0];d=a<<24>>24<0;f=d?H[b>>2]:b;wa(g,h,f,(d?H[b+4>>2]:a)+f|0)}da=c+16|0;return e>>>0<256}function ii(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=da-48|0;da=d;e=H[a+4>>2];a:{if(!e){break a}if(b){if(!(fa[H[H[e>>2]+16>>2]](e)|0)){break a}b=H[a+4>>2];fa[H[H[b>>2]+20>>2]](b)}b=d+16|0;H[b>>2]=0;H[b+4>>2]=0;F[b+24|0]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;Zd(d,H[a>>2],b);a=H[d>>2];if(F[d+15|0]<0){qa(H[d+4>>2])}if(!a){od(c,H[b>>2],H[b+4>>2]);f=H[b+4>>2]-H[b>>2]|0}a=H[b+12>>2];H[b+12>>2]=0;if(a){qa(a)}a=H[b>>2];if(!a){break a}H[b+4>>2]=a;qa(a)}da=d+48|0;return f|0}function Ta(a,b,c,d,e,f){var g=0,h=0,i=0;a:{if(f&64){d=b;e=f+-64|0;b=e&31;if((e&63)>>>0>=32){e=d<>>32-b|c<>>0>=32){h=g<>>32-d|e<>>0>=32){e=0;b=c>>>d|0}else{e=c>>>d|0;b=((1<>>d}d=i|b;e=e|h;b=f&31;if((f&63)>>>0>=32){h=g<>>32-b|c<>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e}function th(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((fa[H[H[b>>2]+20>>2]](b)|0)<=0){return 1}a:{while(1){d=kc(H[H[a+4>>2]+4>>2],fa[H[H[b>>2]+24>>2]](b,e)|0);if((d|0)==-1){break a}c=H[a+4>>2];f=0;b:{if((d|0)<0){break b}g=H[c+4>>2];if(H[g+12>>2]-H[g+8>>2]>>2<=(d|0)){break b}c=H[H[c+8>>2]+(H[H[c+20>>2]+(d<<2)>>2]<<2)>>2];f=fa[H[H[c>>2]+36>>2]](c,d)|0}if(!(fa[H[H[b>>2]+28>>2]](b,f)|0)){break a}e=e+1|0;if((fa[H[H[b>>2]+20>>2]](b)|0)>(e|0)){continue}break}return 1}return 0}function je(a,b){Ba(a,b);Ba(a+32|0,b);Ba(a- -64|0,b);Ba(a+96|0,b);Ba(a+128|0,b);Ba(a+160|0,b);Ba(a+192|0,b);Ba(a+224|0,b);Ba(a+256|0,b);Ba(a+288|0,b);Ba(a+320|0,b);Ba(a+352|0,b);Ba(a+384|0,b);Ba(a+416|0,b);Ba(a+448|0,b);Ba(a+480|0,b);Ba(a+512|0,b);Ba(a+544|0,b);Ba(a+576|0,b);Ba(a+608|0,b);Ba(a+640|0,b);Ba(a+672|0,b);Ba(a+704|0,b);Ba(a+736|0,b);Ba(a+768|0,b);Ba(a+800|0,b);Ba(a+832|0,b);Ba(a+864|0,b);Ba(a+896|0,b);Ba(a+928|0,b);Ba(a+960|0,b);Ba(a+992|0,b);Ba(a+1024|0,b)}function Ge(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!H[H[4776]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){F[a+1|0]=b&63|128;F[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){F[a+2|0]=b&63|128;F[a|0]=b>>>12|224;F[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){F[a+3|0]=b&63|128;F[a|0]=b>>>18|240;F[a+2|0]=b>>>6&63|128;F[a+1|0]=b>>>12&63|128;a=4;break a}}H[4739]=25;a=-1}else{a=1}break a}F[a|0]=b;a=1}return a}function Vi(a,b){a=a|0;b=b|0;var c=0,d=0;d=da-16|0;da=d;c=H[a+8>>2];a:{if((c|0)==H[a+12>>2]){c=ra(76);Ve(c,b);H[c+36>>2]=0;H[c+40>>2]=0;H[c>>2]=2312;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+64>>2]=0;H[c+68>>2]=0;H[c+72>>2]=0;H[d+8>>2]=c;b=H[a+12>>2];b:{if(b>>>0>2]){H[d+8>>2]=0;H[b>>2]=c;H[a+12>>2]=b+4;break b}Ic(a+8|0,d+8|0)}a=H[d+8>>2];H[d+8>>2]=0;if(!a){break a}fa[H[H[a>>2]+4>>2]](a);break a}jc(H[c>>2],b)}da=d+16|0;return 1}function Za(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0;h=xl(b,c,h,i);i=ea;j=h;h=xl(d,e,f,g);e=j+h|0;d=ea+i|0;i=e;h=i>>>0>>0?d+1|0:d;j=i;k=g;e=0;l=c;d=0;i=xl(g,e,c,d);g=j+i|0;c=ea+h|0;j=g;g=g>>>0>>0?c+1|0:c;h=f;i=b;f=xl(h,0,i,0);b=ea;c=0;d=xl(h,c,l,d);b=b+d|0;c=ea+c|0;c=b>>>0>>0?c+1|0:c;h=c;c=c+j|0;d=g;d=c>>>0>>0?d+1|0:d;h=c;c=d;d=xl(i,m,k,e)+b|0;e=ea;e=b>>>0>d>>>0?e+1|0:e;g=a;i=e;h=i+h|0;H[g+8>>2]=h;H[g+12>>2]=h>>>0>>0?c+1|0:c;H[g>>2]=f;H[g+4>>2]=d}function Ec(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=14980;b=H[a+68>>2];if(b){H[a+72>>2]=b;qa(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}b=H[a+44>>2];if(b){H[a+48>>2]=b;qa(b)}b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){Pa(b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}b=H[a+4>>2];H[a+4>>2]=0;if(b){hf(b)}return a|0}function rh(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=2524;b=H[a+72>>2];H[a+72>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;qa(b)}b=H[a+48>>2];if(b){qa(b)}d=H[a+36>>2];if(d){c=H[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+36>>2]}H[a+40>>2]=d;qa(b)}H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;qa(b)}return a|0}function Ea(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+8>>2];c=H[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=ta(c,0,b)+b|0}H[a+4>>2]=c;return}a:{f=H[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(d){if(d>>>0>=1073741824){break a}c=ra(d<<2)}b=b<<2;b=ta((h<<2)+c|0,0,b)+b|0;if((g|0)>0){sa(c,f,g)}H[a+8>>2]=(d<<2)+c;H[a+4>>2]=b;H[a>>2]=c;if(f){qa(f)}return}va();X()}ya(1604);X()}function Ya(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+8>>2];c=H[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=ta(c,0,b)+b|0}H[a+4>>2]=c;return}a:{f=H[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>>0<2147483640?d>>>0>i>>>0?d:i:536870911;if(d){if(d>>>0>=536870912){break a}c=ra(d<<3)}b=b<<3;b=ta((h<<3)+c|0,0,b)+b|0;if((g|0)>0){sa(c,f,g)}H[a+8>>2]=(d<<3)+c;H[a+4>>2]=b;H[a>>2]=c;if(f){qa(f)}return}va();X()}ya(1604);X()}function id(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=-1;f=d&2147483647;i=f;g=(f|0)==2147418112;a:{if(g&!c?a|b:g&(c|0)!=0|f>>>0>2147418112){break a}f=e&2147483647;g=(f|0)==2147418112;if(g?0:g&0|f>>>0>2147418112){break a}if(!(a|c|(f|i|b))){return 0}f=d&e;if((f|0)>0|(f|0)>=0){if(!c&(d|0)==(e|0)?0:(d|0)<(e|0)){break a}return(a|c|(d^e|b))!=0}if(!c&(d|0)==(e|0)?a|b:(c|0)!=0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}h=(a|c|(d^e|b))!=0}return h}function eb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{c=H[a+4>>2];e=H[a>>2];f=c-e|0;b:{if(f>>>0>>0){g=b-f|0;d=H[a+8>>2];if(g>>>0<=d-c>>>0){if(g){c=ta(c,0,g)+g|0}H[a+4>>2]=c;return}if((b|0)<0){break a}c=d-e|0;d=c<<1;d=c>>>0<1073741823?b>>>0>d>>>0?b:d:2147483647;c=ra(d);ta(c+f|0,0,g);if((f|0)>0){sa(c,e,f)}H[a+8>>2]=c+d;H[a+4>>2]=b+c;H[a>>2]=c;if(!e){break b}qa(e);return}if(b>>>0>=f>>>0){break b}H[a+4>>2]=b+e}return}va();X()}function Qg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=da-16|0;da=d;e=H[a+4>>2];a:{if((e|0)==-1){break a}c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break a}wa(b,H[b+4>>2],H[a+8>>2],H[a+12>>2]);c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break a}c=a+20|0;wa(b,H[b+4>>2],c,c+4|0);c=H[b+20>>2];f=H[b+16>>2];F[d+15|0]=H[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}wa(b,H[b+4>>2],d+15|0,d+16|0)}da=d+16|0;return(e|0)!=-1|0}function _i(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=H[a+8>>2];b:{if((b|0)<0){break b}c=H[a+4>>2];e=H[c>>2];d=H[c+4>>2]-e>>2;c:{if(d>>>0>>0){Ea(c,b-d|0);f=H[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}H[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=H[a+4>>2];c=H[a>>2];e=H[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}H[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}ua();X()}function ke(a){Ca(a);Ca(a+32|0);Ca(a- -64|0);Ca(a+96|0);Ca(a+128|0);Ca(a+160|0);Ca(a+192|0);Ca(a+224|0);Ca(a+256|0);Ca(a+288|0);Ca(a+320|0);Ca(a+352|0);Ca(a+384|0);Ca(a+416|0);Ca(a+448|0);Ca(a+480|0);Ca(a+512|0);Ca(a+544|0);Ca(a+576|0);Ca(a+608|0);Ca(a+640|0);Ca(a+672|0);Ca(a+704|0);Ca(a+736|0);Ca(a+768|0);Ca(a+800|0);Ca(a+832|0);Ca(a+864|0);Ca(a+896|0);Ca(a+928|0);Ca(a+960|0);Ca(a+992|0);Ca(a+1024|0)}function Pg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=da-96|0;da=e;f=Eg(e+40|0,c);Rg(e,b,c);Dg(f,e);Ka(e+24|0,H[e+28>>2]);ob(e+12|0,H[e+16>>2]);Ka(e,H[e+4>>2]);Zd(a,f,d);if(!H[a>>2]){if(F[a+15|0]<0){qa(H[a+4>>2])}H[b+40>>2]=H[f+40>>2];H[b+44>>2]=H[f+44>>2];H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}H[f>>2]=10284;Ka(f+28|0,H[f+32>>2]);ob(f+16|0,H[f+20>>2]);Ka(f+4|0,H[f+8>>2]);da=e+96|0}function Pj(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=10432;b=H[a+64>>2];H[a+64>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}return a|0}function Sa(a,b,c){var d=0,e=0,f=0;if(!(I[a|0]&32)){a:{d=b;b=a;a=H[b+16>>2];b:{if(!a){if(Me(b)){break b}a=H[b+16>>2]}f=H[b+20>>2];if(a-f>>>0>>0){fa[H[b+36>>2]](b,d,c)|0;break a}c:{if(H[b+80>>2]<0){break c}a=c;while(1){e=a;if(!a){break c}a=e-1|0;if(I[d+a|0]!=10){continue}break}if(fa[H[b+36>>2]](b,d,e)>>>0>>0){break b}d=d+e|0;c=c-e|0;f=H[b+20>>2]}sa(f,d,c);H[b+20>>2]=H[b+20>>2]+c}}}}function Oj(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=10432;b=H[a+64>>2];H[a+64>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}qa(a)}function sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=da-16|0;da=d;f=He(a,b);a:{if(!f){break a}c=H[a+36>>2];if((c|0)==H[a+40>>2]){break a}g=d+16|0;while(1){c=H[(e<<2)+c>>2];h=d,i=fa[H[H[c>>2]+32>>2]](c)|0,F[h+15|0]=i;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){wa(b,H[b+4>>2],d+15|0,g)}e=e+1|0;c=H[a+36>>2];if(e>>>0>2]-c>>2>>>0){continue}break}}da=d+16|0;return f|0}function dd(a,b,c){var d=0,e=0,f=0;f=da-16|0;da=f;d=I[a+11|0]>>>7|0?(H[a+8>>2]&2147483647)-1|0:10;if(I[a+11|0]>>>7|0){e=H[a+4>>2]}else{e=I[a+11|0]}a:{if(d-e>>>0>=c>>>0){if(!c){break a}if(I[a+11|0]>>>7|0){d=H[a>>2]}else{d=a}Cb(d+e|0,b,c);b=c+e|0;b:{if(I[a+11|0]>>>7|0){H[a+4>>2]=b;break b}F[a+11|0]=b}F[f+15|0]=0;F[b+d|0]=I[f+15|0];break a}ed(a,d,(c+e|0)-d|0,e,e,0,c,b)}da=f+16|0}function zb(a,b,c){var d=0,e=0,f=0,g=0;d=da-16|0;da=d;F[d+15|0]=a&127;a:{b:{if(!b&a>>>0>=128|b){F[d+15|0]=a|128;f=H[c+20>>2];e=0;if(!!H[c+16>>2]&(f|0)>=0|(f|0)>0){break b}wa(c,H[c+4>>2],d+15|0,d+16|0);a=zb((b&127)<<25|a>>>7,b>>>7|0,c);break a}b=H[c+16>>2];a=H[c+20>>2];if(!b&(a|0)<=0|(a|0)<0){wa(c,H[c+4>>2],d+15|0,d+16|0)}e=!b&(a|0)<=0|(a|0)<0}g=e;a=0}da=d+16|0;return a|g}function Lf(a,b){a=a|0;b=b|0;var c=0,d=0;c=da-16|0;da=c;a:{if(!b){d=ra(76);b=ra(12);H[b+8>>2]=H[H[a+4>>2]+80>>2];H[b>>2]=12420;H[b+4>>2]=0;d=ge(d,b,0);H[c+8>>2]=d;b=H[a+12>>2];b:{if(b>>>0>2]){H[c+8>>2]=0;H[b>>2]=d;H[a+12>>2]=b+4;break b}Ic(a+8|0,c+8|0)}a=H[c+8>>2];H[c+8>>2]=0;if(!a){break a}fa[H[H[a>>2]+4>>2]](a);break a}jc(H[H[a+8>>2]>>2],b)}da=c+16|0;return 1}function Ch(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+36>>2];if((c|0)!=H[a+40>>2]){while(1){c=N(d,24)+c|0;fa[H[H[c>>2]+28>>2]](c,b)|0;d=d+1|0;c=H[a+36>>2];if(d>>>0<(H[a+40>>2]-c|0)/24>>>0){continue}break}}c=H[a+48>>2];if((c|0)!=H[a+52>>2]){d=0;while(1){c=H[(d<<2)+c>>2];Da((c|0)>=0?c<<1:(c^-1)<<1|1,b);d=d+1|0;c=H[a+48>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}return 1}function fg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=H[a+172>>2];c=H[a+176>>2]-d|0;e=(c|0)/136|0;a:{if(!c){break a}c=0;b:{c:{d:{if(H[d>>2]!=(b|0)){f=e>>>0>1?e:1;while(1){c=c+1|0;if((f|0)==(c|0)){break d}if(H[N(c,136)+d>>2]!=(b|0)){continue}break}b=c>>>0>>0}else{b=1}if(b){break c}break a}if(c>>>0>>0){break b}break a}d=(N(c,136)+d|0)+104|0}return d|0}return a+40|0}function nd(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Lc(ra(96));Ed(g,b,d<<24>>24,f,c);b=kd(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];sa(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,(N(d,h)<<2)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function jf(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Lc(ra(96));Ed(g,b,d<<24>>24,f,c);b=kd(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];sa(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,(N(d,h)<<1)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function Nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=da+-64|0;da=d;e=fa[H[H[a>>2]+44>>2]](a,b)|0;a=fa[H[H[a>>2]+40>>2]](a,b)|0;f=Mc(d);g=H[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=H[(a<<2)+14848>>2]}else{a=-1}a=N(a,e);Fd(f,g,0,h,i,a,a>>31);a=dg(ra(96),f);Dd(a,c);F[a+84|0]=1;H[a+72>>2]=H[a+68>>2];H[a+60>>2]=H[b+60>>2];da=d- -64|0;return a|0}function yd(a,b,c,d){var e=0;a:{if(!b&(c|0)<=0|(c|0)<0){break a}e=H[a+20>>2];if(!!H[a+16>>2]&(e|0)>=0|(e|0)>0){break a}F[a+24|0]=d;b=b+7|0;c=b>>>0<7?c+1|0:c;e=b;b=c>>>3|0;c=(c&7)<<29|e>>>3;H[a+16>>2]=c;H[a+20>>2]=b;e=c;b=H[a+4>>2]-H[a>>2]|0;c=b+8|0;c=d?c:b;b=e+c|0;eb(a,b);d=H[a>>2];b=ra(8);H[b+4>>2]=0;H[b>>2]=c+d;c=H[a+12>>2];H[a+12>>2]=b;if(!c){break a}qa(c)}}function kf(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Lc(ra(96));Ed(g,b,d<<24>>24,f,c);b=kd(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];sa(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,N(d,h)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function Kh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(qb(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(!qb(a,H[b>>2],e)){break a}if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+20>>2]=c;H[b+32>>2]=d;H[b+40>>2]=H[b+40>>2]+1;if(!(H[b+36>>2]!=1|H[b+24>>2]!=2)){F[b+54|0]=1}H[b+44>>2]=4}}function Ed(a,b,c,d,e){var f=0,g=0,h=0;f=ra(32);H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;g=H[a+64>>2];H[a+64>>2]=f;if(g){f=H[g>>2];if(f){H[g+4>>2]=f;qa(f)}qa(g);f=H[a+64>>2]}h=b;g=d-1|0;if(g>>>0<=10){b=H[(g<<2)+14848>>2]}else{b=-1}b=N(b,c);Fd(a,h,f,c,d,b,b>>31);Dd(a,e);F[a+84|0]=1;H[a+72>>2]=H[a+68>>2]}function Da(a,b){var c=0,d=0,e=0,f=0;c=da-16|0;da=c;F[c+15|0]=a&127;a:{b:{if(a>>>0>=128){F[c+15|0]=a|128;d=H[b+20>>2];e=0;if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break b}wa(b,H[b+4>>2],c+15|0,c+16|0);a=Da(a>>>7|0,b);break a}d=H[b+16>>2];a=H[b+20>>2];if(!d&(a|0)<=0|(a|0)<0){wa(b,H[b+4>>2],c+15|0,c+16|0)}e=!d&(a|0)<=0|(a|0)<0}f=e;a=0}da=c+16|0;return a|f}function Qh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=H[a+84>>2];f=H[e+4>>2];g=H[a+28>>2];d=H[a+20>>2]-g|0;d=d>>>0>f>>>0?f:d;if(d){sa(H[e>>2],g,d);H[e>>2]=d+H[e>>2];f=H[e+4>>2]-d|0;H[e+4>>2]=f}d=H[e>>2];f=c>>>0>f>>>0?f:c;if(f){sa(d,b,f);d=f+H[e>>2]|0;H[e>>2]=d;H[e+4>>2]=H[e+4>>2]-f}F[d|0]=0;b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;return c|0}function we(a,b,c,d){F[a+53|0]=1;a:{if(H[a+4>>2]!=(c|0)){break a}F[a+52|0]=1;c=H[a+16>>2];b:{if(!c){H[a+36>>2]=1;H[a+24>>2]=d;H[a+16>>2]=b;if((d|0)!=1){break a}if(H[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=H[a+24>>2];if((c|0)==2){H[a+24>>2]=d;c=d}if(H[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}H[a+36>>2]=H[a+36>>2]+1}F[a+54|0]=1}}function Fc(a,b){var c=0,d=0,e=0,f=0;d=1;a:{if((b|0)==-1){break a}b=N(b,3);if((b|0)==-1){break a}d=-1;e=H[a>>2];a=e+(b<<2)|0;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){d=H[(c<<2)+e>>2]}a=H[a>>2];f=(a|0)==(d|0);b:{c:{if((b>>>0)%3|0){b=b-1|0;break c}b=b+2|0;c=-1;if((b|0)==-1){break b}}c=H[(b<<2)+e>>2]}d=f|(c|0)==(a|0)|(d|0)==(c|0)}return d}function Ph(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da+-64|0;da=e;d=1;a:{if(qb(a,b,0)){break a}d=0;if(!b){break a}b=ye(b,18492,18540);d=0;if(!b){break a}d=e+8|0;ta(d|4,0,52);H[e+56>>2]=1;H[e+20>>2]=-1;H[e+16>>2]=a;H[e+8>>2]=b;fa[H[H[b>>2]+28>>2]](b,d,H[c>>2],1);a=H[e+32>>2];if((a|0)==1){H[c>>2]=H[e+24>>2]}d=(a|0)==1}da=e- -64|0;return d|0}function tl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;H[a+32>>2]=c;H[a+28>>2]=b;a:{if(!(fa[H[H[a>>2]+52>>2]](a)|0)){break a}e=H[a+4>>2];if((e|0)==H[a+8>>2]){return 1}c=0;while(1){d=c<<2;f=H[d+H[a+36>>2]>>2];d=fa[H[H[f>>2]+8>>2]](f,b,H[d+e>>2])|0;if(!d){break a}c=c+1|0;e=H[a+4>>2];if(c>>>0>2]-e>>2>>>0){continue}break}}return d|0}function Ij(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=da-16|0;da=d;H[a+4>>2]=b;b=H[b+64>>2];e=H[b>>2];b=H[b+4>>2];F[d+15|0]=0;Ra(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=H[a+4>>2];e=H[b+56>>2];b=H[b+52>>2];F[d+14|0]=0;Ra(a+36|0,e-b>>2,d+14|0);b=H[c+12>>2];H[a+16>>2]=H[c+8>>2];H[a+20>>2]=b;b=H[c+4>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=b;da=d+16|0}function dj(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}return a|0}function df(a){H[a>>2]=0;H[a+4>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;F[a+24|0]=1;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+68>>2]=a}function xj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=da-16|0;da=d;H[a+4>>2]=b;e=H[b>>2];b=H[b+4>>2];F[d+15|0]=0;Ra(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=H[a+4>>2];e=H[b+28>>2];b=H[b+24>>2];F[d+14|0]=0;Ra(a+36|0,e-b>>2,d+14|0);b=H[c+12>>2];H[a+16>>2]=H[c+8>>2];H[a+20>>2]=b;b=H[c+4>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=b;da=d+16|0}function Bc(a){var b=0,c=0,d=0,e=0;while(1){b=a;a=b+1|0;c=F[b|0];if((c|0)==32|c-9>>>0<5){continue}break}a:{b:{c:{c=F[b|0];switch(c-43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=F[a|0];b=a}if(c-48>>>0<10){while(1){d=(N(d,10)-F[b|0]|0)+48|0;a=F[b+1|0];b=b+1|0;if(a-48>>>0<10){continue}break}}return e?d:0-d|0}function zd(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;qa(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;qa(b)}qa(a)}function eh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+8|0,c+12|0)}Ba(a+112|0,b);da=c+16|0;return 1}function Wg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+8|0,c+12|0)}Ba(a+96|0,b);da=c+16|0;return 1}function jd(a){var b=0;b=1;a:{if((a|0)>=1024){b=8.98846567431158e307;if(a>>>0<2047){a=a-1023|0;break a}b=Z;a=(a>>>0<3069?a:3069)-2046|0;break a}if((a|0)>-1023){break a}b=2.004168360008973e-292;if(a>>>0>4294965304){a=a+969|0;break a}b=0;a=(a>>>0>4294964336?a:-2960)+1938|0}x(0,0);x(1,a+1023<<20);return b*+z()}function al(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+8|0,c+12|0)}da=c+16|0;return 1}function Ck(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+8|0,c+12|0)}da=c+16|0;return 1}function bi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;Te(a,b,c);d=H[a+96>>2];a=H[a+100>>2]-d|0;if(a){b=H[b>>2];a=(a|0)/12|0;e=a>>>0>1?a:1;c=0;while(1){a=N(c,12)+d|0;H[a>>2]=H[b+(H[a>>2]<<2)>>2];H[a+4>>2]=H[b+(H[a+4>>2]<<2)>>2];H[a+8>>2]=H[b+(H[a+8>>2]<<2)>>2];c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function Ga(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(H[a>>2]!=H[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=I[a|0];e=I[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function hf(a){var b=0,c=0,d=0;if(a){d=H[a+24>>2];if(d){c=H[a+28>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){mb(b+12|0,H[b+16>>2]);lb(b,H[b+4>>2]);qa(b)}if((d|0)!=(c|0)){continue}break}b=H[a+24>>2]}H[a+28>>2]=d;qa(b)}mb(a+12|0,H[a+16>>2]);lb(a,H[a+4>>2]);qa(a)}}function cb(a,b){var c=0,d=0,e=0,f=0;d=da-16|0;da=d;a:{if(!b){b=0;break a}c=b>>31;e=c+b^c;c=Q(e);Ta(d,e,0,0,0,c+81|0);e=0+H[d+8>>2]|0;c=(H[d+12>>2]^65536)+(16414-c<<16)|0;c=e>>>0>>0?c+1|0:c;f=b&-2147483648|c;c=H[d+4>>2];b=H[d>>2]}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=e;H[a+12>>2]=f;da=d+16|0}function vj(a){a=a|0;var b=0;H[a+8>>2]=11452;H[a>>2]=11240;b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){H[a+84>>2]=b;qa(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;qa(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function uj(a){a=a|0;var b=0;H[a+8>>2]=11452;H[a>>2]=11240;b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){H[a+84>>2]=b;qa(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;qa(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function mh(a){a=a|0;var b=0;H[a>>2]=3540;b=H[a+152>>2];if(b){H[a+156>>2]=b;qa(b)}b=H[a+112>>2];if(b){H[a+116>>2]=b;qa(b)}b=H[a+96>>2];if(b){qa(b)}b=H[a+84>>2];if(b){qa(b)}b=H[a+72>>2];if(b){qa(b)}b=H[a+60>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function dh(a){a=a|0;var b=0;H[a>>2]=5104;b=H[a+152>>2];if(b){H[a+156>>2]=b;qa(b)}b=H[a+112>>2];if(b){H[a+116>>2]=b;qa(b)}b=H[a+96>>2];if(b){qa(b)}b=H[a+84>>2];if(b){qa(b)}b=H[a+72>>2];if(b){qa(b)}b=H[a+60>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function sb(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!I[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=H[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=I[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function Ah(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=H[c+8>>2];e=H[c+16>>2];g=H[c+12>>2];f=g;d=H[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=I[e+H[c>>2]|0];i=e+1|0;f=i?d:d+1|0;H[c+16>>2]=i;H[c+20>>2]=f;H[a+4>>2]=b}return e>>>0>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function qb(a,b,c){var d=0;if(!c){return H[a+4>>2]==H[b+4>>2]}if((a|0)==(b|0)){return 1}d=H[a+4>>2];a=I[d|0];c=H[b+4>>2];b=I[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=I[c+1|0];a=I[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function Eb(a){var b=0,c=0;c=H[a+8>>2];if((c|0)>=2){b=+(c|0);b=U(b*za(b)-M[a>>3]);if(P(b)<0x8000000000000000){ea=P(b)>=1?~~(b>0?R(T(b*2.3283064365386963e-10),4294967295):U((b-+(~~b>>>0>>>0))*2.3283064365386963e-10))>>>0:0;return~~b>>>0}a=-2147483648}else{a=0}ea=a;return 0}function wj(a){a=a|0;var b=0;H[a>>2]=11452;b=H[a+88>>2];if(b){H[a+92>>2]=b;qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;qa(b)}b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function oi(a){a=a|0;var b=0,c=0,d=0;b=ra(8);H[b+4>>2]=a;H[b>>2]=0;a:{b:{c:{if(!a){break c}c=ye(a,15032,14952);if(!c){break c}d=ra(56);Eg(d,c);a=H[b>>2];H[b>>2]=d;if(a){break b}break a}c=ra(56);Fg(c,a);a=H[b>>2];H[b>>2]=c;if(!a){break a}}fa[H[H[a>>2]+4>>2]](a)}return b|0}function dc(a,b){var c=0,d=0,e=0,f=0;c=da-16|0;da=c;a:{if(!b){b=0;break a}d=b;b=Q(b);Ta(c,d,0,0,0,b+81|0);e=16414-b<<16;b=0;d=b+H[c+8>>2]|0;e=e+(H[c+12>>2]^65536)|0;e=b>>>0>d>>>0?e+1|0:e;f=d;d=H[c>>2];b=H[c+4>>2]}H[a>>2]=d;H[a+4>>2]=b;H[a+8>>2]=f;H[a+12>>2]=e;da=c+16|0}function rj(a){a=a|0;var b=0;H[a>>2]=11452;b=H[a+88>>2];if(b){H[a+92>>2]=b;qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;qa(b)}b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function ec(a,b,c){var d=0,e=0,f=0;a:{if(!b){d=a;break a}while(1){d=zl(a,b,10,0);f=ea;e=xl(d,f,10,0);c=c-1|0;F[c|0]=a-e|48;e=b>>>0>9;a=d;b=f;if(e){continue}break}}if(d){while(1){c=c-1|0;a=(d>>>0)/10|0;F[c|0]=d-N(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function bk(a){a=a|0;var b=0;H[a+40>>2]=1140;H[a>>2]=10016;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Pa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function Sg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=da-96|0;da=e;f=Fg(e+40|0,c);Rg(e,b,c);Dg(f,e);Ka(e+24|0,H[e+28>>2]);ob(e+12|0,H[e+16>>2]);Ka(e,H[e+4>>2]);Zd(a,f,d);H[f>>2]=10284;Ka(f+28|0,H[f+32>>2]);ob(f+16|0,H[f+20>>2]);Ka(f+4|0,H[f+8>>2]);da=e+96|0}function oc(a){var b=0;b=H[a+84>>2];if(b){H[a+88>>2]=b;qa(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;qa(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;qa(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;qa(b)}b=H[a+28>>2];if(b){H[a+32>>2]=b;qa(b)}b=H[a+12>>2];if(b){qa(b)}a=H[a>>2];if(a){qa(a)}}function De(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=da-16|0;da=f;d=da-16|0;da=d;b=b-a>>2;while(1){if(b){H[d+12>>2]=a;e=b>>>1|0;H[d+12>>2]=H[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=H[d+12>>2];g=K[e>>2]>2];b=g?h:b;a=g?e+4|0:a;continue}break}da=d+16|0;da=f+16|0;return a}function ak(a){a=a|0;var b=0;H[a+40>>2]=1140;H[a>>2]=10016;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Pa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}qa(a)}function pc(a,b){if(b){a=H[b+76>>2];if(a){H[b+80>>2]=a;qa(a)}a=H[b- -64>>2];if(a){H[b+68>>2]=a;qa(a)}a=H[b+48>>2];if(a){H[b+52>>2]=a;qa(a)}a=H[b+24>>2];if(a){H[b+28>>2]=a;qa(a)}a=H[b+12>>2];if(a){H[b+16>>2]=a;qa(a)}a=H[b>>2];if(a){H[b+4>>2]=a;qa(a)}qa(b)}}function Ia(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<=10){d=a;F[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=ra(e);H[a>>2]=d;H[a+8>>2]=e|-2147483648;H[a+4>>2]=c}Cb(d,b,c+1|0);return}hb();X()}function rl(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+72>>2];a:{if(!c){break a}H[c+4>>2]=a+60;if(!(fa[H[H[c>>2]+12>>2]](c)|0)){break a}if(!(fa[H[H[a>>2]+40>>2]](a)|0)){break a}if(!(fa[H[H[a>>2]+44>>2]](a,b)|0)){break a}d=fa[H[H[a>>2]+48>>2]](a,b)|0}return d|0}function ck(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da-16|0;da=e;d=a+40|0;c=Nc(d,H[a+8>>2],H[b+4>>2]-H[b>>2]>>2);d=be(d,H[a+8>>2],b,c);a:{if(d){b=H[a+32>>2];H[a+32>>2]=c;if(!b){break a}Pa(b);break a}H[e+8>>2]=0;if(!c){break a}Pa(c)}da=e+16|0;return d|0}function Ek(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da-16|0;da=e;d=a+40|0;c=Nc(d,H[a+8>>2],H[b+4>>2]-H[b>>2]>>2);d=ng(d,H[a+8>>2],b,c);a:{if(d){b=H[a+32>>2];H[a+32>>2]=c;if(!b){break a}Pa(b);break a}H[e+8>>2]=0;if(!c){break a}Pa(c)}da=e+16|0;return d|0}function Fd(a,b,c,d,e,f,g){var h=0;H[a>>2]=c;if(c){h=H[c+20>>2];H[a+8>>2]=H[c+16>>2];H[a+12>>2]=h;h=H[c+28>>2];H[a+16>>2]=H[c+24>>2];H[a+20>>2]=h}H[a+56>>2]=b;H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=f;H[a+44>>2]=g;F[a+32|0]=0;H[a+28>>2]=e;F[a+24|0]=d}function Le(a,b){var c=0,d=0,e=0;A(+a);d=v(1)|0;e=v(0)|0;c=d>>>20&2047;if((c|0)!=2047){if(!c){if(a==0){c=0}else{a=Le(a*0x10000000000000000,b);c=H[b>>2]+-64|0}H[b>>2]=c;return a}H[b>>2]=c-1022;x(0,e|0);x(1,d&-2146435073|1071644672);a=+z()}return a}function pl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=H[a+36>>2];if((c|0)==H[a+40>>2]){return 1}f=a+60|0;while(1){c=H[(d<<2)+c>>2];e=fa[H[H[c>>2]+20>>2]](c,f,b)|0;if(e){d=d+1|0;c=H[a+36>>2];if(d>>>0>2]-c>>2>>>0){continue}}break}return e|0}function gg(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+172>>2];a=H[a+176>>2]-c|0;if(a){a=(a|0)/136|0;d=a>>>0>1?a:1;a=0;while(1){if(H[N(a,136)+c>>2]==(b|0)){a=N(a,136)+c|0;return(I[a+100|0]?a+4|0:0)|0}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return 0}function ee(a){H[a+32>>2]=0;H[a+12>>2]=-1;H[a+4>>2]=0;H[a+8>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=2420;F[a+21|0]=0;F[a+22|0]=0;F[a+23|0]=0;F[a+24|0]=0;F[a+25|0]=0;F[a+26|0]=0;F[a+27|0]=0;F[a+28|0]=0;H[a+36>>2]=0;H[a>>2]=2652;return a}function ql(a){a=a|0;var b=0,c=0,d=0,e=0;b=H[a+36>>2];if((b|0)==H[a+40>>2]){return 1}e=a+60|0;while(1){b=H[(c<<2)+b>>2];d=fa[H[H[b>>2]+16>>2]](b,e)|0;if(d){c=c+1|0;b=H[a+36>>2];if(c>>>0>2]-b>>2>>>0){continue}}break}return d|0}function ok(a){a=a|0;var b=0;H[a>>2]=8668;b=H[a+136>>2];if(b){H[a+140>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){qa(b)}b=H[a+68>>2];if(b){qa(b)}b=H[a+56>>2];if(b){qa(b)}b=H[a+44>>2];if(b){qa(b)}return a|0}function Je(a){var b=0,c=0,d=0;if(F[H[a>>2]]-48>>>0>=10){return 0}while(1){d=H[a>>2];c=-1;if(b>>>0<=214748364){c=F[d|0]-48|0;b=N(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}H[a>>2]=d+1;b=c;if(F[d+1|0]-48>>>0<10){continue}break}return b}function Gf(a,b){a=a|0;b=b|0;var c=0,d=0;c=da-16|0;da=c;H[c+12>>2]=H[H[b+4>>2]+80>>2];b=H[b+44>>2];d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){wa(b,H[b+4>>2],c+12|0,c+16|0)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=c+16|0}function Ak(a){a=a|0;var b=0;H[a>>2]=7020;b=H[a+136>>2];if(b){H[a+140>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){qa(b)}b=H[a+68>>2];if(b){qa(b)}b=H[a+56>>2];if(b){qa(b)}b=H[a+44>>2];if(b){qa(b)}return a|0}function Pa(a){a=a|0;var b=0,c=0;if(a){b=H[a+88>>2];H[a+88>>2]=0;if(b){c=H[b+8>>2];if(c){H[b+12>>2]=c;qa(c)}qa(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;qa(b)}b=H[a+64>>2];H[a+64>>2]=0;if(b){c=H[b>>2];if(c){H[b+4>>2]=c;qa(c)}qa(b)}qa(a)}}function ol(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=H[a+36>>2];if((c|0)==H[a+40>>2]){return 1}while(1){c=H[(d<<2)+c>>2];e=fa[H[H[c>>2]+24>>2]](c,b)|0;if(e){d=d+1|0;c=H[a+36>>2];if(d>>>0>2]-c>>2>>>0){continue}}break}return e|0}function zk(a){a=a|0;var b=0;H[a>>2]=7020;b=H[a+136>>2];if(b){H[a+140>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){qa(b)}b=H[a+68>>2];if(b){qa(b)}b=H[a+56>>2];if(b){qa(b)}b=H[a+44>>2];if(b){qa(b)}qa(a)}function nk(a){a=a|0;var b=0;H[a>>2]=8668;b=H[a+136>>2];if(b){H[a+140>>2]=b;qa(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+80>>2];if(b){qa(b)}b=H[a+68>>2];if(b){qa(b)}b=H[a+56>>2];if(b){qa(b)}b=H[a+44>>2];if(b){qa(b)}qa(a)}function tc(a,b){var c=0,d=0,e=0;c=sb(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=ra(e);H[a+8>>2]=e|-2147483648;H[a>>2]=d;H[a+4>>2]=c;break b}F[a+11|0]=c;d=a;if(!c){break a}}sa(d,b,c)}F[c+d|0]=0;return a}hb();X()}function Xi(a){a=a|0;var b=0,c=0,d=0;b=H[a+32>>2];d=H[a+36>>2];if((b|0)==(d|0)){return 1}while(1){c=H[H[a+8>>2]+(H[b>>2]<<2)>>2];c=fa[H[H[c>>2]+20>>2]](c,H[a+44>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function yl(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=zl(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;ea=(g^ea)-((a>>>0>>0)+g|0)|0;return b}function cd(a,b,c){var d=0,e=0,f=0;e=da-16|0;da=e;d=H[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=H[a>>2];H[a+4>>2]=c;Cb(d,b,c);F[e+15|0]=0;F[c+d|0]=I[e+15|0];break a}f=a;a=H[a+4>>2];ed(f,d-1|0,(c-d|0)+1|0,a,0,a,c,b)}da=e+16|0}function ve(a,b){a=a|0;b=b|0;var c=0,d=0;c=da-16|0;da=c;a=H[a+4>>2];a:{if((a|0)==-1){break a}F[c+15|0]=a;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}wa(b,H[b+4>>2],c+15|0,c+16|0)}da=c+16|0;return(a|0)!=-1|0}function xl(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=N(e,f);g=c&65535;h=a&65535;i=N(g,h);f=(i>>>16|0)+N(f,g)|0;e=(f&65535)+N(e,h)|0;ea=(N(b,c)+j|0)+N(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function xe(a,b,c){var d=0;d=H[a+16>>2];if(!d){H[a+36>>2]=1;H[a+24>>2]=c;H[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(H[a+24>>2]!=2){break a}H[a+24>>2]=c;return}F[a+54|0]=1;H[a+24>>2]=2;H[a+36>>2]=H[a+36>>2]+1}}function pk(a,b){a=a|0;b=b|0;var c=0,d=0;H[b>>2]=2;c=H[b+8>>2];d=H[b+12>>2]-c|0;if(d>>>0<=4294967291){Gc(b+8|0,d+4|0);c=H[b+8>>2]}b=c+d|0;a=H[a+4>>2];F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24}function ya(a){var b=0,c=0,d=0,e=0,f=0;b=ca(8)|0;H[b>>2]=18692;H[b>>2]=18736;c=sb(a);d=ra(c+13|0);H[d+8>>2]=0;H[d+4>>2]=c;H[d>>2]=c;e=b,f=sa(d+12|0,a,c+1|0),H[e+4>>2]=f;H[b>>2]=18784;ba(b|0,18816,13);X()}function Ua(a,b,c,d,e){var f=0;f=da-256|0;da=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;ta(f,b&255,d?c:256);if(!d){while(1){Sa(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}Sa(a,f,c)}da=f+256|0}function hl(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[a+16>>2];c=0;a:{if(H[a+20>>2]-d>>2<=(b|0)){break a}b=H[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=H[H[a+36>>2]+(b<<2)>>2];b=H[a+32>>2];c=b?b:H[a+8>>2]}return c|0}function kl(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[a+16>>2];c=0;a:{if(H[a+20>>2]-d>>2<=(b|0)){break a}b=H[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=H[H[a+36>>2]+(b<<2)>>2];c=H[a+20>>2]-H[a+16>>2]>>2}return c|0}function jl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=-1;e=H[a+16>>2];a:{if(H[a+20>>2]-e>>2<=(b|0)){break a}b=H[(b<<2)+e>>2];if((b|0)<0){break a}d=H[H[H[H[a+36>>2]+(b<<2)>>2]+16>>2]+(c<<2)>>2]}return d|0}function wd(a,b){var c=O(0),d=0;b=pb(a,b);if((b|0)!=(a+4|0)){a=da-16|0;da=a;Ne(a,F[b+39|0]<0?H[b+28>>2]:b+28|0,0,1);d=Ee(H[a>>2],H[a+4>>2],H[a+8>>2],H[a+12>>2]);da=a+16|0;c=O(d)}else{c=O(1)}return c}function ph(a){a=a|0;var b=0;H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Pa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function Aa(a){var b=0,c=0;c=da-16|0;da=c;H[c+8>>2]=0;H[c+12>>2]=0;ae(a,c+8|0);H[a+24>>2]=0;H[a+28>>2]=0;b=H[a+12>>2];H[a+16>>2]=b;if(b){qa(b)}b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}da=c+16|0;return a}function oh(a){a=a|0;var b=0;H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Pa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}qa(a)}function mc(a){H[a+52>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=12484;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;return a}function Lc(a){Mc(a);H[a+64>>2]=0;H[a+68>>2]=0;H[a+88>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;F[a+77|0]=0;F[a+78|0]=0;F[a+79|0]=0;F[a+80|0]=0;F[a+81|0]=0;F[a+82|0]=0;F[a+83|0]=0;F[a+84|0]=0;return a}function Me(a){var b=0;b=H[a+72>>2];H[a+72>>2]=b-1|b;b=H[a>>2];if(b&8){H[a>>2]=b|32;return-1}H[a+4>>2]=0;H[a+8>>2]=0;b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;H[a+16>>2]=b+H[a+48>>2];return 0}function Mc(a){H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+28>>2]=9;F[a+24|0]=1;H[a+56>>2]=-1;H[a+60>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;return a}function hd(a,b,c,d,e,f,g,h,i){var j=0;j=da-16|0;da=j;ab(j,b,c,d,e,f,g,h,i^-2147483648);d=H[j>>2];c=H[j+4>>2];b=H[j+12>>2];H[a+8>>2]=H[j+8>>2];H[a+12>>2]=b;H[a>>2]=d;H[a+4>>2]=c;da=j+16|0}function ze(a,b){var c=0;if(b>>>0<=99){return Ae(a,b)}if(b>>>0<=999){c=(b>>>0)/100|0;F[a|0]=c+48;a=a+1|0;b=J[(b-N(c,100)<<1)+18208>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}return Ac(a,b)}function rd(a,b,c){a=a|0;b=b|0;c=c|0;a=0;a:{if(H[b+4>>2]|!b){break a}a=ra(36);ld(a,c);H[a+32>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;c=H[b+4>>2];H[b+4>>2]=a;a=1;if(!c){break a}hf(c)}return a|0}function Yh(a,b){a=a|0;b=b|0;var c=0,d=0;We(a,b);a:{if((b|0)<0){break a}c=H[a+88>>2];d=H[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){xa(b,d,c)}H[a+88>>2]=b+c}}function ge(a,b,c){Ve(a,c);H[a+36>>2]=0;H[a+40>>2]=0;H[a>>2]=2524;H[a+44>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+72>>2]=b;return a}function bd(a,b,c){var d=0,e=0;d=da-16|0;da=d;a:{if(c>>>0<=10){F[a+11|0]=c;Cb(a,b,c);F[d+15|0]=0;F[a+c|0]=I[d+15|0];break a}e=a;a=I[a+11|0];ed(e,10,c-10|0,a,0,a,c,b)}da=d+16|0}function nj(a){a=a|0;var b=0;H[a+8>>2]=11872;H[a>>2]=11708;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function ij(a){a=a|0;var b=0;H[a+8>>2]=10904;H[a>>2]=12e3;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11156;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}return a|0}function Ib(a){var b=0,c=0;b=H[4713];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ga()<<16>>>0){if(!($(a|0)|0)){break a}}H[4713]=a;return b}H[4739]=48;return-1}function mj(a){a=a|0;var b=0;H[a+8>>2]=11872;H[a>>2]=11708;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function hj(a){a=a|0;var b=0;H[a+8>>2]=10904;H[a>>2]=12e3;b=H[a+56>>2];if(b){H[a+60>>2]=b;qa(b)}H[a+8>>2]=11156;b=H[a+44>>2];if(b){qa(b)}b=H[a+32>>2];if(b){qa(b)}qa(a)}function mb(a,b){if(b){mb(a,H[b>>2]);mb(a,H[b+4>>2]);a=H[b+28>>2];H[b+28>>2]=0;if(a){mb(a+12|0,H[a+16>>2]);lb(a,H[a+4>>2]);qa(a)}if(F[b+27|0]<0){qa(H[b+16>>2])}qa(b)}}function Oh(a,b){a=a|0;b=b|0;var c=0;a:{if(!(fa[H[H[a>>2]+40>>2]](a)|0)){break a}if(!(fa[H[H[a>>2]+44>>2]](a,b)|0)){break a}c=fa[H[H[a>>2]+48>>2]](a,b)|0}return c|0}function Ac(a,b){var c=0,d=0;c=(b>>>0)/100|0;d=J[(c<<1)+18208>>1];F[a|0]=d;F[a+1|0]=d>>>8;a=a+2|0;b=J[(b-N(c,100)<<1)+18208>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}function wl(a,b){a=a|0;b=b|0;var c=0;b=H[b+88>>2];if(!(!b|H[b>>2]!=2)){c=a;a=H[b+8>>2];H[c+4>>2]=I[a|0]|I[a+1|0]<<8|(I[a+2|0]<<16|I[a+3|0]<<24);c=1}return c|0}function Qj(a){a=a|0;var b=0;a:{b=H[a+64>>2];if(!b){break a}b=fa[H[H[b>>2]+32>>2]](b)|0;if(!b){break a}H[a+60>>2]=((H[b+4>>2]-H[b>>2]>>2>>>0)/3|0)-H[b+40>>2]}}function oj(a){a=a|0;var b=0;H[a>>2]=11872;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Hj(a){a=a|0;var b=0;H[a>>2]=10904;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11156;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function Cf(a,b){var c=0;a:{c=a+4|0;a=pb(a,b);if((c|0)==(a|0)){break a}a=Bc(F[a+39|0]<0?H[a+28>>2]:a+28|0);if((a|0)==-1){break a}return(a|0)!=0}return 0}function jj(a){a=a|0;var b=0;H[a>>2]=11872;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function fc(a,b,c){var d=0;d=a+4|0;a=pb(a,b);a:{if((d|0)==(a|0)){break a}a=Bc(F[a+39|0]<0?H[a+28>>2]:a+28|0);if((a|0)==-1){break a}c=(a|0)!=0}return c}function Aj(a){a=a|0;var b=0;H[a>>2]=10904;b=H[a+48>>2];if(b){H[a+52>>2]=b;qa(b)}H[a>>2]=11156;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function Jh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(qb(a,H[b+8>>2],f)){we(b,c,d,e);return}a=H[a+8>>2];fa[H[H[a>>2]+20>>2]](a,b,c,d,e,f)}function gh(a){a=a|0;var b=0;a:{if(!H[a- -64>>2]|!H[a+68>>2]|(!H[a+44>>2]|!H[a+48>>2])){break a}if(!H[a+52>>2]){break a}b=H[a+56>>2]!=0}return b|0}function Yg(a){a=a|0;var b=0;a:{if(!H[a+48>>2]|!H[a+52>>2]|(!H[a+28>>2]|!H[a+32>>2])){break a}if(!H[a+36>>2]){break a}b=H[a+40>>2]!=0}return b|0}function Mi(){var a=0;a=ra(108);Ze(a);H[a+84>>2]=0;H[a+88>>2]=0;H[a>>2]=14908;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;return a|0}function kc(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=N(b,12)+a|0;a=H[b+20>>2];if((H[b+24>>2]-a|0)<=0){break a}c=H[a>>2]}return c}function Ye(a){var b=0,c=0;b=H[a+20>>2];a:{if((H[a+24>>2]-b|0)<=0){break a}b=H[b>>2];if((b|0)==-1){break a}c=H[H[a+8>>2]+(b<<2)>>2]}return c}function Ve(a,b){H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=2216;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;jc(a,b)}function $h(a){a=a|0;var b=0;H[a>>2]=14908;b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+84>>2];if(b){H[a+88>>2]=b;qa(b)}Ec(a);return a|0}function Sh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b;b=H[b>>2]+7&-8;H[c>>2]=b+16;d=a,e=Ee(H[b>>2],H[b+4>>2],H[b+8>>2],H[b+12>>2]),M[d>>3]=e}function Ca(a){var b=0;b=da-16|0;da=b;H[b+8>>2]=0;H[b+12>>2]=0;ae(a,b+8|0);H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=H[a+12>>2];da=b+16|0}function _h(a){a=a|0;var b=0;H[a>>2]=14908;b=H[a+96>>2];if(b){H[a+100>>2]=b;qa(b)}b=H[a+84>>2];if(b){H[a+88>>2]=b;qa(b)}Ec(a);qa(a)}function vl(a){a=a|0;var b=0;H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Pa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}return a|0}function lb(a,b){if(b){lb(a,H[b>>2]);lb(a,H[b+4>>2]);a=H[b+28>>2];if(a){H[b+32>>2]=a;qa(a)}if(F[b+27|0]<0){qa(H[b+16>>2])}qa(b)}}function Yk(a){a=a|0;var b=0;H[a>>2]=3788;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Ok(a){a=a|0;var b=0;H[a>>2]=5340;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Rh(a){a=a|0;var b=0;H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;qa(b)}return a|0}function Mh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(qb(a,H[b+8>>2],0)){xe(b,c,d);return}a=H[a+8>>2];fa[H[H[a>>2]+28>>2]](a,b,c,d)}function Ji(){var a=0,b=0;a=ra(24);H[a+4>>2]=0;H[a+8>>2]=0;b=a+16|0;H[b>>2]=0;H[b+4>>2]=0;H[a>>2]=a+4;H[a+12>>2]=b;return a|0}function ul(a){a=a|0;var b=0;H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Pa(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;qa(b)}qa(a)}function Xk(a){a=a|0;var b=0;H[a>>2]=3788;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function Nk(a){a=a|0;var b=0;H[a>>2]=5340;b=H[a+76>>2];if(b){qa(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function ra(a){var b=0;a=a?a:1;a:{while(1){b=Ce(a);if(b){break a}b=H[4906];if(b){fa[b|0]();continue}break}_();X()}return b}function Ka(a,b){if(b){Ka(a,H[b>>2]);Ka(a,H[b+4>>2]);if(F[b+39|0]<0){qa(H[b+28>>2])}if(F[b+27|0]<0){qa(H[b+16>>2])}qa(b)}}function Rc(a,b){a=a|0;b=b|0;var c=0;a:{switch(b|0){case 1:b=1;case 0:H[a+28>>2]=b;c=1;break;default:break a}}return c|0}function $c(a){a=a|0;var b=0,c=0;H[a>>2]=18736;b=H[a+4>>2]-12|0;c=H[b+8>>2]-1|0;H[b+8>>2]=c;if((c|0)<0){qa(b)}return a|0}function Vg(a,b,c,d,e){var f=0;f=b-1|0;if(f>>>0<=29){H[a+4>>2]=b;db(a+8|0,c,(d<<2)+c|0);L[a+20>>2]=e}return f>>>0<30}function yh(a,b,c){a=a|0;b=b|0;c=c|0;H[a+4>>2]=b;b=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];H[a+12>>2]=c;H[a+8>>2]=b;return 1}function Uk(a){a=a|0;var b=0;H[a>>2]=4024;Aa(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Re(a,b,c,d,e,f,g,h,i){H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e&65535|(i>>>16&32768|e>>>16&32767)<<16}function Lk(a){a=a|0;var b=0;H[a>>2]=5564;Aa(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Fg(a,b){H[a>>2]=10284;$d(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=0;H[a+48>>2]=b;H[a>>2]=10380;return a}function Eg(a,b){H[a>>2]=10284;$d(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=b;H[a+48>>2]=b;H[a>>2]=10380;return a}function kh(a){a=a|0;var b=0;if(!(!H[a+60>>2]|!H[a+44>>2]|(!H[a+48>>2]|!H[a+52>>2]))){b=H[a+56>>2]!=0}return b|0}function Ae(a,b){if(b>>>0<=9){F[a|0]=b+48;return a+1|0}b=J[(b<<1)+18208>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}function $g(a){a=a|0;var b=0;if(!(!H[a+44>>2]|!H[a+28>>2]|(!H[a+32>>2]|!H[a+36>>2]))){b=H[a+40>>2]!=0}return b|0}function pi(a){a=a|0;if(a){H[a>>2]=10360;Ka(a+28|0,H[a+32>>2]);rc(a+16|0,H[a+20>>2]);Ka(a+4|0,H[a+8>>2]);qa(a)}}function Tk(a){a=a|0;var b=0;H[a>>2]=4024;Aa(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function Jk(a){a=a|0;var b=0;H[a>>2]=5564;Aa(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function Gb(a,b){var c=0,d=0;if(!(!a|!b|(a|0)==(b|0))){c=+(b>>>0)/+(a>>>0);d=1-c;c=-(c*za(c)+d*za(d))}return c}function _j(a){a=a|0;H[a>>2]=10360;Ka(a+28|0,H[a+32>>2]);rc(a+16|0,H[a+20>>2]);Ka(a+4|0,H[a+8>>2]);return a|0}function Df(a,b){var c=0;c=a+4|0;a=pb(a,b);if((c|0)==(a|0)){return-1}return Bc(F[a+39|0]<0?H[a+28>>2]:a+28|0)}function $j(a){a=a|0;H[a>>2]=10284;Ka(a+28|0,H[a+32>>2]);ob(a+16|0,H[a+20>>2]);Ka(a+4|0,H[a+8>>2]);return a|0}function Gc(a,b){var c=0,d=0;eb(a,b);b=H[a+28>>2];c=b;d=b+1|0;b=H[a+24>>2]+1|0;H[a+24>>2]=b;H[a+28>>2]=b?c:d}function Db(a,b,c){var d=0;d=a+4|0;a=pb(a,b);if((d|0)!=(a|0)){c=Bc(F[a+39|0]<0?H[a+28>>2]:a+28|0)}return c}function yi(){var a=0;a=ra(48);H[a>>2]=10360;$d(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a>>2]=10144;return a|0}function Kg(a){a=a|0;H[a>>2]=10360;Ka(a+28|0,H[a+32>>2]);rc(a+16|0,H[a+20>>2]);Ka(a+4|0,H[a+8>>2]);qa(a)}function Jg(a){a=a|0;H[a>>2]=10284;Ka(a+28|0,H[a+32>>2]);ob(a+16|0,H[a+20>>2]);Ka(a+4|0,H[a+8>>2]);qa(a)}function zj(a){a=a|0;var b=0;H[a>>2]=11156;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function qj(a){a=a|0;var b=0;H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}return a|0}function kd(a,b){fa[H[H[a>>2]+8>>2]](a,H[a+12>>2]-H[a+8>>2]>>2,b);return(H[a+12>>2]-H[a+8>>2]>>2)-1|0}function Xc(a){a=a|0;var b=0;if(!(!H[a+52>>2]|(!H[a+44>>2]|!H[a+48>>2]))){b=H[a+56>>2]!=0}return b|0}function Pc(a){a=a|0;var b=0;if(!(!H[a+36>>2]|(!H[a+28>>2]|!H[a+32>>2]))){b=H[a+40>>2]!=0}return b|0}function yj(a){a=a|0;var b=0;H[a>>2]=11156;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function pj(a){a=a|0;var b=0;H[a>>2]=11688;b=H[a+36>>2];if(b){qa(b)}b=H[a+24>>2];if(b){qa(b)}qa(a)}function fh(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a- -64>>2]=b;c=1}return c|0}function jh(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+60>>2]=b;c=1}return c|0}function _g(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+44>>2]=b;c=1}return c|0}function Xg(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+48>>2]=b;c=1}return c|0}function Ih(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(qb(a,H[b+8>>2],f)){we(b,c,d,e)}}function Be(a){var b=0;b=a;a=0;while(1){if((a|0)!=3){H[(a<<2)+b>>2]=0;a=a+1|0;continue}break}}function fi(a){a=a|0;var b=0;if(a){b=H[a>>2];H[a>>2]=0;if(b){fa[H[H[b>>2]+4>>2]](b)}qa(a)}}function cl(a){a=a|0;var b=0;H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}return a|0}function Yj(a){a=a|0;var b=0;H[a>>2]=1140;b=H[a+8>>2];if(b){H[a+12>>2]=b;qa(b)}return a|0}function vb(a){var b=0;H[a+12>>2]=0;H[a+16>>2]=0;b=a;a=H[a>>2];H[b+4>>2]=a;if(a){qa(a)}}function aj(a){a=a|0;var b=0;b=a;a=H[a+56>>2];H[b+60>>2]=(H[a+100>>2]-H[a+96>>2]|0)/12}function vf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return kf(b,c,d,e,f,1)|0}function uf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return kf(b,c,d,e,f,2)|0}function tf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return jf(b,c,d,e,f,3)|0}function td(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return nd(b,c,d,e,f,9)|0}function sf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return jf(b,c,d,e,f,4)|0}function sd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return nd(b,c,d,e,f,5)|0}function qf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return nd(b,c,d,e,f,6)|0}function ce(a){a=a|0;var b=0;H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;qa(b)}qa(a)}function Xj(a){a=a|0;var b=0;H[a>>2]=1140;b=H[a+8>>2];if(b){H[a+12>>2]=b;qa(b)}qa(a)}function li(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=O(f);Mg(H[a>>2],b,c,d,e,f)}function rc(a,b){if(b){rc(a,H[b>>2]);rc(a,H[b+4>>2]);Ka(b+20|0,H[b+24>>2]);qa(b)}}function ob(a,b){if(b){ob(a,H[b>>2]);ob(a,H[b+4>>2]);Ka(b+20|0,H[b+24>>2]);qa(b)}}function Sj(a,b){a=a|0;b=b|0;var c=0;c=a;a=H[b+64>>2];fa[H[H[a>>2]+28>>2]](c,a)}function xk(a){a=a|0;var b=0;H[a>>2]=7292;b=H[a+60>>2];if(b){qa(b)}return a|0}function vi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=O(f);Mg(a,b,c,d,e,f)}function lk(a){a=a|0;var b=0;H[a>>2]=8928;b=H[a+60>>2];if(b){qa(b)}return a|0}function Nh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(qb(a,H[b+8>>2],0)){xe(b,c,d)}}function Al(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function Uj(a,b){a=a|0;b=b|0;a=H[a+64>>2];return fa[H[H[a>>2]+20>>2]](a,b)|0}function Tj(a,b){a=a|0;b=b|0;a=H[a+64>>2];return fa[H[H[a>>2]+24>>2]](a,b)|0}function Tf(a,b){a=a|0;b=b|0;return H[H[a+28>>2]+(b>>>3&536870908)>>2]>>>b&1}function Mj(a,b){a=a|0;b=b|0;a=H[a+64>>2];return fa[H[H[a>>2]+12>>2]](a,b)|0}function Lj(a,b){a=a|0;b=b|0;a=H[a+64>>2];return fa[H[H[a>>2]+16>>2]](a,b)|0}function Wi(a,b){a=a|0;b=b|0;H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}function Hi(){var a=0;a=ra(12);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;return a|0}function Ei(a){a=a|0;var b=0;if(a){b=H[a>>2];if(b){H[a+4>>2]=b;qa(b)}qa(a)}}function Bl(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function wh(a,b,c){a=a|0;b=b|0;c=c|0;return fa[H[H[a>>2]+44>>2]](a,b,c)|0}function wk(a){a=a|0;var b=0;H[a>>2]=7292;b=H[a+60>>2];if(b){qa(b)}qa(a)}function kk(a){a=a|0;var b=0;H[a>>2]=8928;b=H[a+60>>2];if(b){qa(b)}qa(a)}function Uh(a,b,c){a=a|0;b=b|0;c=c|0;H[a+32>>2]=c;H[a+28>>2]=b;return 1}function Ii(a){a=a|0;if(a){mb(a+12|0,H[a+16>>2]);lb(a,H[a+4>>2]);qa(a)}}function $i(a,b){a=a|0;b=b|0;F[b+84|0]=1;H[b+72>>2]=H[b+68>>2];return 1}function Nj(a){a=a|0;a=H[a+64>>2];return fa[H[H[a>>2]+32>>2]](a)|0}function xh(a,b){a=a|0;b=b|0;H[a+12>>2]=-1;H[a+8>>2]=b;return 1}function Mf(a){mc(a);H[a+56>>2]=0;H[a+60>>2]=0;H[a>>2]=12180}function Li(a){a=a|0;return(H[a+100>>2]-H[a+96>>2]|0)/12|0}function tk(a){a=a|0;H[a>>2]=7552;Aa(a+96|0);return a|0}function ik(a){a=a|0;H[a>>2]=9176;Aa(a+96|0);return a|0}function mi(a,b,c){a=a|0;b=b|0;c=c|0;Ng(H[a>>2],b,c)}function ki(a,b,c){a=a|0;b=b|0;c=c|0;Og(H[a>>2],b,c)}function Ze(a){H[a>>2]=14980;ta(a+4|0,0,80);return a}function Cl(a){if(a){return 31-Q(a-1^a)|0}return 32} +function zf(a){a=a|0;return H[a+12>>2]-H[a+8>>2]>>2}function bj(a){a=a|0;H[a+52>>2]=H[H[a+56>>2]+80>>2]}function yf(a){a=a|0;if(a){fa[H[H[a>>2]+4>>2]](a)}}function sk(a){a=a|0;H[a>>2]=7552;Aa(a+96|0);qa(a)}function hk(a){a=a|0;H[a>>2]=9176;Aa(a+96|0);qa(a)}function dk(a,b){a=a|0;b=b|0;return Qg(a+40|0,b)|0}function Gi(a,b){a=a|0;b=b|0;return F[H[a>>2]+b|0]}function Fk(a,b){a=a|0;b=b|0;return ve(a+40|0,b)|0}function Ff(a){a=a|0;H[a+52>>2]=H[H[a+4>>2]+80>>2]}function Fi(a){a=a|0;return H[a+4>>2]-H[a>>2]|0}function wi(a,b,c){a=a|0;b=b|0;c=c|0;Ng(a,b,c)}function ui(a,b,c){a=a|0;b=b|0;c=c|0;Og(a,b,c)}function Wj(a,b){a=a|0;b=b|0;return F[b+24|0]}function Eh(a,b,c){a=a|0;b=b|0;c=c|0;return-1}function hi(a){a=a|0;return H[H[a>>2]+40>>2]}function gi(a){a=a|0;return H[H[a>>2]+44>>2]}function ni(a,b){a=a|0;b=b|0;Lg(H[a>>2],b)}function ji(a,b){a=a|0;b=b|0;ff(H[a>>2],b)}function Ki(a,b){a=a|0;b=b|0;H[a+80>>2]=b}function vd(a){a=a|0;return H[a+80>>2]}function uc(a){a=a|0;return H[a+28>>2]}function sh(){H[4776]=18992;H[4758]=42}function qi(a){a=a|0;return H[a+44>>2]}function Uf(a){a=a|0;return H[a+12>>2]}function Si(a){a=a|0;return H[a+56>>2]}function Pi(a){a=a|0;return H[a+48>>2]}function Oi(a){a=a|0;return H[a+60>>2]}function Af(a){a=a|0;return H[a+40>>2]}function zc(a,b){a=a|0;b=b|0;return 1}function vc(a){a=a|0;return H[a+4>>2]}function qh(a,b){a=a|0;b=b|0;return 6}function nh(a,b){a=a|0;b=b|0;return-1}function bl(a,b){a=a|0;b=b|0;return 2}function Ri(a){a=a|0;return F[a+24|0]}function Qi(a){a=a|0;return I[a+32|0]}function $a(a,b){a=a|0;b=b|0;return 0}function xi(a,b){a=a|0;b=b|0;Lg(a,b)}function ti(a,b){a=a|0;b=b|0;ff(a,b)}function Cb(a,b,c){if(c){sa(a,b,c)}}function Oc(a,b,c,d){Bg(a,b,c,d,1)}function Fb(a,b,c,d){Bg(a,b,c,d,0)}function lc(a){a=a|0;if(a){qa(a)}}function Ui(){return Mc(ra(64))|0}function Ti(){return Lc(ra(96))|0}function Ni(){return Ze(ra(84))|0}function Hh(a){a=a|0;return 1476}function Fh(a){a=a|0;$c(a);qa(a)}function wb(a){a=a|0;return a|0}function zh(a){a=a|0;qa(ie(a))}function ll(a){a=a|0;qa(rh(a))}function _k(a){a=a|0;qa(mh(a))}function Vh(a){a=a|0;qa(Ec(a))}function Qk(a){a=a|0;qa(dh(a))}function Gh(a){a=a|0;qa($c(a))}function Cj(a){a=a|0;qa(Rf(a))}function Bj(a){a=a|0;qa(Qf(a))}function jb(a){a=a|0;return 0}function fe(a){a=a|0;return 2}function bh(a){a=a|0;return 3}function Wc(a){a=a|0;return 4}function Uc(a){a=a|0;return 5}function Tc(a){a=a|0;return 6}function Oa(a){a=a|0;return 1}function ud(){return ra(1)|0}function kb(a){a=a|0;qa(a)}function hb(){ya(1584);X()}function La(){ya(1425);X()}function Na(a,b){eb(a,b)}function Bb(a){a=a|0;X()}function va(){La();X()}function ua(){gd();X()}function qd(){return 0}function pd(){return 1}function mf(){return-1}function ei(){return 2}function di(){return 3}function ci(){return 4}function gd(){_();X()}function Se(a){a=a|0} // EMSCRIPTEN_END_FUNCS -e=I;p(oa);var fa=c([null,zb,nb,Pd,Qk,Hj,Of,qh,ae,Wg,vc,Jg,wk,Mc,tj,sj,Qa,rk,ik,Ld,Vj,ig,vj,Jg,rj,fh,Db,nh,ie,lh,$g,bb,_g,bb,bb,Qa,hc,Rd,Vg,Pd,Zg,Xg,Yg,Og,Ng,Ug,Tg,hc,Sg,hc,jb,jb,Qg,Pg,Rg,Kg,Ik,Mg,Pk,jb,Ok,Hk,Gk,Fk,Ek,Nk,Mk,Lk,Kk,Jk,Ig,Hg,Nd,Dk,Qa,Bk,Ck,Ak,zk,Md,Qa,dc,Gc,jb,Gg,bb,jb,Qa,yk,xk,Db,Db,Fg,vk,Fc,Gc,Eg,uk,tk,sk,Dc,Dg,Qa,bb,Cg,Bg,qk,pk,ok,Cc,zg,Qa,bb,yg,xg,nk,zb,nb,Ac,cc,Bc,Db,Md,Qa,Gc,mk,Db,wg,lk,Fc,Gc,Eg,kk,jk,hk,Dc,Dg,Qa,bb,Cg,Bg,gk,fk,ek,Cc,zg,Qa,bb,yg,xg,dk,zb,nb,Ac,cc,zc,Db,Md,jb,Qa,ck,Ig,Hg,bk,ak,Qa,ug,_j,$j,zb,nb,Qa,dc,xc,jb,Gg,bb,Qa,ug,Zj,Yj,Xj,Wj,Fc,xc,tg,Uj,Tj,Sj,Dc,sg,Qa,bb,rg,qg,Rj,Qj,Pj,Cc,og,Qa,bb,ng,mg,Oj,zb,nb,Ac,cc,Bc,nb,Qa,xc,Nj,Mj,Lj,Fc,xc,tg,Kj,Jj,Ij,Dc,sg,Qa,bb,rg,qg,Gj,Fj,Ej,Cc,og,Qa,bb,ng,mg,Dj,zb,nb,Ac,cc,zc,nb,jb,Qa,Cj,yj,xj,Bj,Aj,Qa,Pd,zj,uj,ag,hg,fg,wj,$f,ag,$f,kj,jj,Qa,Qa,qj,Qa,Bi,ui,ti,pj,oj,si,mj,ij,hj,gj,nj,lj,zf,Zi,fj,Rf,Qf,ej,Mf,bj,Cf,Bf,dc,xf,Yi,aj,Rf,Qf,$i,Mf,_i,Cf,Bf,dc,cj,Xi,dj,Wi,Vi,Si,Ri,Qi,Pi,Ti,Oi,Ui,Ni,Mi,Ki,Ji,Ii,Hi,Li,Gi,Fi,Ei,Di,Ci,Ai,Db,Qa,hc,jb,bb,bb,jd,jb,sf,yi,zi,xi,zb,nb,wi,vi,Db,jb,ri,jd,Qa,qf,qi,pf,jd,jb,qf,sf,pf,xh,wh,vh,uh,sh,th,yh,mc,rh,Ee,De,Be,ph,oh,mh,zb,nb,kh,jh,dc,ih,zb,nb,he,he,hh,ah,ch,gh,nb,bh,dh,eh]);function ga(){return E.byteLength/65536|0}function la(ma){ma=ma|0;var ha=ga()|0;var ia=ha+ma|0;if(ha0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="draco_encoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["h"];addOnInit(Module["asm"]["g"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function _abort(){abort("")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="draco_encoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["h"];addOnInit(Module["asm"]["g"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function _abort(){abort("")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i>>0,$jscomp.propertyToPolyfillSymbol[l]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(l):$jscomp.POLYFILL_PREFIX+k+"$"+l),$jscomp.defineProperty(r,$jscomp.propertyToPolyfillSymbol[l],{configurable:!0,writable:!0,value:p})))}; -$jscomp.polyfill("Promise",function(m){function p(){this.batch_=null}function k(h){return h instanceof l?h:new l(function(q,v){q(h)})}if(m&&(!($jscomp.FORCE_POLYFILL_PROMISE||$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&"undefined"===typeof $jscomp.global.PromiseRejectionEvent)||!$jscomp.global.Promise||-1===$jscomp.global.Promise.toString().indexOf("[native code]")))return m;p.prototype.asyncExecute=function(h){if(null==this.batch_){this.batch_=[];var q=this;this.asyncExecuteFunction(function(){q.executeBatch_()})}this.batch_.push(h)}; -var r=$jscomp.global.setTimeout;p.prototype.asyncExecuteFunction=function(h){r(h,0)};p.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var h=this.batch_;this.batch_=[];for(var q=0;q=B}},"es6","es3"); -$jscomp.polyfill("Array.prototype.copyWithin",function(m){function p(k){k=Number(k);return Infinity===k||-Infinity===k?k:k|0}return m?m:function(k,r,l){var B=this.length;k=p(k);r=p(r);l=void 0===l?B:p(l);k=0>k?Math.max(B+k,0):Math.min(k,B);r=0>r?Math.max(B+r,0):Math.min(r,B);l=0>l?Math.max(B+l,0):Math.min(l,B);if(kr;)--l in this?this[--k]=this[l]:delete this[--k];return this}},"es6","es3"); -$jscomp.typedArrayCopyWithin=function(m){return m?m:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.owns=function(l,p){return Object.prototype.hasOwnProperty.call(l,p)};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1; +$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(l,p,m){if(l==Array.prototype||l==Object.prototype)return l;l[p]=m.value;return l};$jscomp.getGlobal=function(l){l=["object"==typeof globalThis&&globalThis,l,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var p=0;p>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+m+"$"+k),$jscomp.defineProperty(r,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:p})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(l,p){for(var m=1;m=C}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(l){function p(m){m=Number(m);return Infinity===m||-Infinity===m?m:m|0}return l?l:function(m,r,k){var C=this.length;m=p(m);r=p(r);k=void 0===k?C:p(k);m=0>m?Math.max(C+m,0):Math.min(m,C);r=0>r?Math.max(C+r,0):Math.min(r,C);k=0>k?Math.max(C+k,0):Math.min(k,C);if(mr;)--k in this?this[--m]=this[k]:delete this[--m];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(l){return l?l:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); $jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); -var DracoEncoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(p){function k(f){return a.locateFile?a.locateFile(f,L):L+f}function r(f,b){f||B("Assertion failed: "+b)}function l(f){sa=f;a.HEAP8=P=new Int8Array(f);a.HEAP16=ka=new Int16Array(f);a.HEAP32=K=new Int32Array(f);a.HEAPU8=la=new Uint8Array(f);a.HEAPU16=new Uint16Array(f);a.HEAPU32=new Uint32Array(f);a.HEAPF32= -ma=new Float32Array(f);a.HEAPF64=new Float64Array(f)}function B(f){if(a.onAbort)a.onAbort(f);f="Aborted("+f+")";Y(f);ta=!0;f=new WebAssembly.RuntimeError(f+". Build with -s ASSERTIONS=1 for more info.");na(f);throw f;}function h(f){try{if(f==J&&Z)return new Uint8Array(Z);if(oa)return oa(f);throw"both async and sync fetching of the wasm failed";}catch(b){B(b)}}function q(){if(!Z&&(ua||aa)){if("function"===typeof fetch&&!J.startsWith("file://"))return fetch(J,{credentials:"same-origin"}).then(function(f){if(!f.ok)throw"failed to load wasm binary file at '"+ -J+"'";return f.arrayBuffer()}).catch(function(){return h(J)});if(pa)return new Promise(function(f,b){pa(J,function(c){f(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return h(J)})}function v(f){for(;0=ea.length&&(ea.length=f+1),ea[f]=b=va.get(f));return b}function I(f){this.excPtr=f;this.ptr= -f-16;this.set_type=function(b){K[this.ptr+4>>2]=b};this.get_type=function(){return K[this.ptr+4>>2]};this.set_destructor=function(b){K[this.ptr+8>>2]=b};this.get_destructor=function(){return K[this.ptr+8>>2]};this.set_refcount=function(b){K[this.ptr>>2]=b};this.set_caught=function(b){P[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=P[this.ptr+12>>0]};this.set_rethrown=function(b){P[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=P[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b); -this.set_destructor(c);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){K[this.ptr>>2]+=1};this.release_ref=function(){var b=K[this.ptr>>2];K[this.ptr>>2]=b-1;return 1===b}}function T(f){function b(){if(!fa&&(fa=!0,a.calledRun=!0,!ta)){wa=!0;v(qa);xa(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)ya.unshift(a.postRun.shift());v(ya)}}if(!(0=d&&(d=65536+((d&1023)<< -10)|f.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1);c=0;d=b.length;if(0=g){var t=f.charCodeAt(++e);g=65536+((g&1023)<<10)|t&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12&63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0}f=n.alloc(b,P);n.copy(b,P, -f);return f}return f}function ha(f){if("object"===typeof f){var b=n.alloc(f,P);n.copy(f,P,b);return b}return f}function ia(f){if("object"===typeof f){var b=n.alloc(f,ka);n.copy(f,ka,b);return b}return f}function V(f){if("object"===typeof f){var b=n.alloc(f,K);n.copy(f,K,b);return b}return f}function ba(f){if("object"===typeof f){var b=n.alloc(f,ma);n.copy(f,ma,b);return b}return f}function Q(){throw"cannot construct a VoidPtr, no constructor in IDL";}function M(){this.ptr=Aa();D(M)[this.ptr]=this} -function z(){this.ptr=Ba();D(z)[this.ptr]=this}function G(){this.ptr=Ca();D(G)[this.ptr]=this}function E(){this.ptr=Da();D(E)[this.ptr]=this}function N(){this.ptr=Ea();D(N)[this.ptr]=this}function H(){this.ptr=Fa();D(H)[this.ptr]=this}function F(){this.ptr=Ga();D(F)[this.ptr]=this}function x(){this.ptr=Ha();D(x)[this.ptr]=this}function u(){this.ptr=Ia();D(u)[this.ptr]=this}function y(){this.ptr=Ja();D(y)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Ka(f);D(A)[this.ptr]= -this}p=p||{};var a="undefined"!==typeof p?p:{},xa,na;a.ready=new Promise(function(f,b){xa=f;na=b});var La=!1,Ma=!1;a.onRuntimeInitialized=function(){La=!0;if(Ma&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ma=!0;if(La&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(f){if("string"!==typeof f)return!1;f=f.split(".");return 2>f.length||3=f[1]?!0:0!=f[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);var e=Math,g=e.min;d=Math.max(f,d);0>>16);l(ja.buffer);var t=1;break a}catch(tc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ja=a.asm.f;l(ja.buffer);va=a.asm.h;qa.unshift(a.asm.g);U--;a.monitorRunDependencies&&a.monitorRunDependencies(U);0==U&&(null!==ra&&(clearInterval(ra),ra= -null),da&&(e=da,da=null,e()))}function b(e){f(e.instance)}function c(e){return q().then(function(g){return WebAssembly.instantiate(g,d)}).then(function(g){return g}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+g);B(g)})}var d={a:sc};U++;a.monitorRunDependencies&&a.monitorRunDependencies(U);if(a.instantiateWasm)try{return a.instantiateWasm(d,f)}catch(e){return Y("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return Z||"function"!==typeof WebAssembly.instantiateStreaming|| -J.startsWith("data:application/octet-stream;base64,")||J.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(J,{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,d).then(b,function(g){Y("wasm streaming compile failed: "+g);Y("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(na);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.g).apply(null,arguments)};var Pa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Pa= -a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Aa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Aa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Qa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Qa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},Ba=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ba=a._emscripten_bind_PointAttribute_PointAttribute_0= -a.asm.l).apply(null,arguments)},Ra=a._emscripten_bind_PointAttribute_size_0=function(){return(Ra=a._emscripten_bind_PointAttribute_size_0=a.asm.m).apply(null,arguments)},Sa=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Sa=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Ta=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Ta=a._emscripten_bind_PointAttribute_data_type_0=a.asm.o).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_num_components_0= -function(){return(Ua=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_normalized_0=function(){return(Va=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Wa=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(Xa=a._emscripten_bind_PointAttribute_byte_offset_0= -a.asm.s).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(Ya=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.t).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Za=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},Ca=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ca=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.v).apply(null,arguments)},$a=a._emscripten_bind_PointCloud_num_attributes_0= -function(){return($a=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},ab=a._emscripten_bind_PointCloud_num_points_0=function(){return(ab=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},bb=a._emscripten_bind_PointCloud___destroy___0=function(){return(bb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Da=a._emscripten_bind_Mesh_Mesh_0=function(){return(Da=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)}, -cb=a._emscripten_bind_Mesh_num_faces_0=function(){return(cb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},db=a._emscripten_bind_Mesh_num_attributes_0=function(){return(db=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},eb=a._emscripten_bind_Mesh_num_points_0=function(){return(eb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},fb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(fb=a._emscripten_bind_Mesh_set_num_points_1= -a.asm.D).apply(null,arguments)},gb=a._emscripten_bind_Mesh___destroy___0=function(){return(gb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ea=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ea=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},hb=a._emscripten_bind_Metadata___destroy___0=function(){return(hb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Fa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Fa= -a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},ib=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(ib=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.I).apply(null,arguments)},jb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(jb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},kb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(kb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null, -arguments)},Ga=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ga=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.N).apply(null,arguments)},nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4= -function(){return(nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.P).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(pb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)},Ha=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ha= -a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null,arguments)},rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)},sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(sb= -a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null,arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)},vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(vb= -a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(yb= -a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(zb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)},Ia=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Ia=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3= -a.asm.ba).apply(null,arguments)},Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2= -a.asm.ea).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=a.asm.ha).apply(null,arguments)}, -Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.ja).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5= -function(){return(Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Nb=a._emscripten_bind_MeshBuilder___destroy___0= -a.asm.oa).apply(null,arguments)},Ja=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ja=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.ra).apply(null,arguments)},Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5= -function(){return(Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.ta).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Tb= -a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.wa).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Wb= -a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},Xb=a._emscripten_bind_Encoder___destroy___0=function(){return(Xb=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Ka=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Ka=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1= -a.asm.Ba).apply(null,arguments)},Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},$b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return($b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= -a.asm.Ea).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0= -a.asm.Ha).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder___destroy___0=function(){return(fc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null, -arguments)},hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null, -arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE= -a.asm.Qa).apply(null,arguments)},nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING= -a.asm.Ta).apply(null,arguments)},qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)},Oa=a._malloc=function(){return(Oa=a._malloc=a.asm.Va).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Wa).apply(null,arguments)};var fa;da=function b(){fa||T();fa||(da=b)};a.run=T;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=n.size?(r(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>= -1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var e=0;e=aa.length&&(aa.length=f+1),aa[f]=b=sa.get(f));return b}function D(f){this.excPtr=f;this.ptr= +f-16;this.set_type=function(b){K[this.ptr+4>>2]=b};this.get_type=function(){return K[this.ptr+4>>2]};this.set_destructor=function(b){K[this.ptr+8>>2]=b};this.get_destructor=function(){return K[this.ptr+8>>2]};this.set_refcount=function(b){K[this.ptr>>2]=b};this.set_caught=function(b){Q[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Q[this.ptr+12>>0]};this.set_rethrown=function(b){Q[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Q[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b); +this.set_destructor(c);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){K[this.ptr>>2]+=1};this.release_ref=function(){var b=K[this.ptr>>2];K[this.ptr>>2]=b-1;return 1===b}}function G(f){function b(){if(!ba&&(ba=!0,a.calledRun=!0,!qa)){ta=!0;q(ma);ua(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)va.unshift(a.postRun.shift());q(va)}}if(!(0=d&&(d=65536+((d&1023)<< +10)|f.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1);c=0;d=b.length;if(0=g){var t=f.charCodeAt(++e);g=65536+((g&1023)<<10)|t&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12&63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0}f=n.alloc(b,Q);n.copy(b,Q, +f);return f}return f}function S(f){if("object"===typeof f){var b=n.alloc(f,Q);n.copy(f,Q,b);return b}return f}function ca(f){if("object"===typeof f){var b=n.alloc(f,fa);n.copy(f,fa,b);return b}return f}function U(f){if("object"===typeof f){var b=n.alloc(f,K);n.copy(f,K,b);return b}return f}function Y(f){if("object"===typeof f){var b=n.alloc(f,ia);n.copy(f,ia,b);return b}return f}function R(){throw"cannot construct a VoidPtr, no constructor in IDL";}function N(){this.ptr=xa();B(N)[this.ptr]=this}function z(){this.ptr= +ya();B(z)[this.ptr]=this}function H(){this.ptr=za();B(H)[this.ptr]=this}function E(){this.ptr=Aa();B(E)[this.ptr]=this}function O(){this.ptr=Ba();B(O)[this.ptr]=this}function I(){this.ptr=Ca();B(I)[this.ptr]=this}function F(){this.ptr=Da();B(F)[this.ptr]=this}function w(){this.ptr=Ea();B(w)[this.ptr]=this}function u(){this.ptr=Fa();B(u)[this.ptr]=this}function x(){this.ptr=Ga();B(x)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Ha(f);B(A)[this.ptr]=this}p=p||{};var a="undefined"!== +typeof p?p:{},Ia=Object.assign,ua,ja;a.ready=new Promise(function(f,b){ua=f;ja=b});var Ja=!1,Ka=!1;a.onRuntimeInitialized=function(){Ja=!0;if(Ka&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ka=!0;if(Ja&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(f){if("string"!==typeof f)return!1;f=f.split(".");return 2>f.length||3=f[1]?!0:0!=f[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);var e= +Math,g=e.min;d=Math.max(f,d);0>>16);r(ea.buffer);var t=1;break a}catch(tc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ea=a.asm.f;r(ea.buffer);sa=a.asm.h;ma.unshift(a.asm.g);T--;a.monitorRunDependencies&&a.monitorRunDependencies(T);0==T&&(null!==oa&&(clearInterval(oa),oa=null),Z&&(e=Z,Z=null,e()))}function b(e){f(e.instance)}function c(e){return h().then(function(g){return WebAssembly.instantiate(g, +d)}).then(function(g){return g}).then(e,function(g){V("failed to asynchronously prepare wasm: "+g);k(g)})}var d={a:sc};T++;a.monitorRunDependencies&&a.monitorRunDependencies(T);if(a.instantiateWasm)try{return a.instantiateWasm(d,f)}catch(e){return V("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return W||"function"!==typeof WebAssembly.instantiateStreaming||J.startsWith("data:application/octet-stream;base64,")||J.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(J, +{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,d).then(b,function(g){V("wasm streaming compile failed: "+g);V("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ja);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.g).apply(null,arguments)};var Pa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Pa=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},xa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0= +function(){return(xa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Qa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Qa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},ya=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(ya=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.l).apply(null,arguments)},Ra=a._emscripten_bind_PointAttribute_size_0=function(){return(Ra=a._emscripten_bind_PointAttribute_size_0= +a.asm.m).apply(null,arguments)},Sa=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Sa=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Ta=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Ta=a._emscripten_bind_PointAttribute_data_type_0=a.asm.o).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_num_components_0=function(){return(Ua=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_normalized_0= +function(){return(Va=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Wa=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(Xa=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.s).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(Ya=a._emscripten_bind_PointAttribute_unique_id_0= +a.asm.t).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Za=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},za=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(za=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.v).apply(null,arguments)},$a=a._emscripten_bind_PointCloud_num_attributes_0=function(){return($a=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},ab=a._emscripten_bind_PointCloud_num_points_0= +function(){return(ab=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},bb=a._emscripten_bind_PointCloud___destroy___0=function(){return(bb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Aa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Aa=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)},cb=a._emscripten_bind_Mesh_num_faces_0=function(){return(cb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},db=a._emscripten_bind_Mesh_num_attributes_0= +function(){return(db=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},eb=a._emscripten_bind_Mesh_num_points_0=function(){return(eb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},fb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(fb=a._emscripten_bind_Mesh_set_num_points_1=a.asm.D).apply(null,arguments)},gb=a._emscripten_bind_Mesh___destroy___0=function(){return(gb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ba=a._emscripten_bind_Metadata_Metadata_0= +function(){return(Ba=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},hb=a._emscripten_bind_Metadata___destroy___0=function(){return(hb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Ca=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ca=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},ib=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(ib=a._emscripten_bind_DracoInt8Array_GetValue_1= +a.asm.I).apply(null,arguments)},jb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(jb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},kb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(kb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null,arguments)},Da=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Da=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3= +function(){return(lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.N).apply(null,arguments)},nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3= +a.asm.P).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(pb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)},Ea=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ea=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null, +arguments)},rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)},sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null, +arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)},vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null, +arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(zb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)}, +Fa=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Fa=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.ba).apply(null,arguments)},Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5= +function(){return(Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.ea).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Fb= +a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=a.asm.ha).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5= +a.asm.ja).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Mb= +a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Nb=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.oa).apply(null,arguments)},Ga=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ga=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Ob= +a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.ra).apply(null,arguments)},Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=function(){return(Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2= +a.asm.ta).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3= +a.asm.wa).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},Xb=a._emscripten_bind_Encoder___destroy___0=function(){return(Xb=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Ha= +a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Ha=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.Ba).apply(null,arguments)},Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},$b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5= +function(){return($b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=a.asm.Ea).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2= +function(){return(cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.Ha).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder___destroy___0= +function(){return(fc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null,arguments)},hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ic= +a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null,arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(lc= +a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.Qa).apply(null,arguments)},nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= +function(){return(oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.Ta).apply(null,arguments)},qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)}, +Oa=a._malloc=function(){return(Oa=a._malloc=a.asm.Va).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Wa).apply(null,arguments)};var ba;Z=function b(){ba||G();ba||(Z=b)};a.run=G;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=n.size?(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var e=0;e>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+h+"$"+k),$jscomp.defineProperty(q,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:n})))}; -$jscomp.polyfill("Promise",function(m){function n(){this.batch_=null}function h(g){return g instanceof k?g:new k(function(p,u){p(g)})}if(m&&(!($jscomp.FORCE_POLYFILL_PROMISE||$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&"undefined"===typeof $jscomp.global.PromiseRejectionEvent)||!$jscomp.global.Promise||-1===$jscomp.global.Promise.toString().indexOf("[native code]")))return m;n.prototype.asyncExecute=function(g){if(null==this.batch_){this.batch_=[];var p=this;this.asyncExecuteFunction(function(){p.executeBatch_()})}this.batch_.push(g)}; -var q=$jscomp.global.setTimeout;n.prototype.asyncExecuteFunction=function(g){q(g,0)};n.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var g=this.batch_;this.batch_=[];for(var p=0;p=z}},"es6","es3"); -$jscomp.polyfill("Array.prototype.copyWithin",function(m){function n(h){h=Number(h);return Infinity===h||-Infinity===h?h:h|0}return m?m:function(h,q,k){var z=this.length;h=n(h);q=n(q);k=void 0===k?z:n(k);h=0>h?Math.max(z+h,0):Math.min(h,z);q=0>q?Math.max(z+q,0):Math.min(q,z);k=0>k?Math.max(z+k,0):Math.min(k,z);if(hq;)--k in this?this[--h]=this[k]:delete this[--h];return this}},"es6","es3"); -$jscomp.typedArrayCopyWithin=function(m){return m?m:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.owns=function(k,n){return Object.prototype.hasOwnProperty.call(k,n)};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1; +$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(k,n,l){if(k==Array.prototype||k==Object.prototype)return k;k[n]=l.value;return k};$jscomp.getGlobal=function(k){k=["object"==typeof globalThis&&globalThis,k,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var n=0;n>>0,$jscomp.propertyToPolyfillSymbol[h]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(h):$jscomp.POLYFILL_PREFIX+l+"$"+h),$jscomp.defineProperty(p,$jscomp.propertyToPolyfillSymbol[h],{configurable:!0,writable:!0,value:n})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(k,n){for(var l=1;l=A}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(k){function n(l){l=Number(l);return Infinity===l||-Infinity===l?l:l|0}return k?k:function(l,p,h){var A=this.length;l=n(l);p=n(p);h=void 0===h?A:n(h);l=0>l?Math.max(A+l,0):Math.min(l,A);p=0>p?Math.max(A+p,0):Math.min(p,A);h=0>h?Math.max(A+h,0):Math.min(h,A);if(lp;)--h in this?this[--l]=this[h]:delete this[--l];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(k){return k?k:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); $jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); -var DracoDecoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(n){function h(e){return a.locateFile?a.locateFile(e,W):W+e}function q(e,b){e||p("Assertion failed: "+b)}function k(e,b,c){var d=b+c;for(c=b;e[c]&&!(c>=d);)++c;if(16f?d+=String.fromCharCode(f):(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else d+=String.fromCharCode(f)}return d}function z(e,b){return e?k(ja,e,b):""}function g(e){Ba=e;a.HEAP8=Z=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=F=new Int32Array(e);a.HEAPU8=ja=new Uint8Array(e);a.HEAPU16=new Uint16Array(e);a.HEAPU32=new Uint32Array(e);a.HEAPF32=new Float32Array(e);a.HEAPF64=new Float64Array(e)} -function p(e){if(a.onAbort)a.onAbort(e);e="Aborted("+e+")";fa(e);Ca=!0;e=new WebAssembly.RuntimeError(e+". Build with -s ASSERTIONS=1 for more info.");sa(e);throw e;}function u(e){try{if(e==P&&ka)return new Uint8Array(ka);if(ta)return ta(e);throw"both async and sync fetching of the wasm failed";}catch(b){p(b)}}function A(){if(!ka&&(Da||la)){if("function"===typeof fetch&&!P.startsWith("file://"))return fetch(P,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+ -P+"'";return e.arrayBuffer()}).catch(function(){return u(P)});if(ua)return new Promise(function(e,b){ua(P,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return u(P)})}function E(e){for(;0=pa.length&&(pa.length=e+1),pa[e]=b=Ea.get(e));return b}function U(e){this.excPtr=e;this.ptr= -e-16;this.set_type=function(b){F[this.ptr+4>>2]=b};this.get_type=function(){return F[this.ptr+4>>2]};this.set_destructor=function(b){F[this.ptr+8>>2]=b};this.get_destructor=function(){return F[this.ptr+8>>2]};this.set_refcount=function(b){F[this.ptr>>2]=b};this.set_caught=function(b){Z[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Z[this.ptr+12>>0]};this.set_rethrown=function(b){Z[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Z[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b); -this.set_destructor(c);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){F[this.ptr>>2]+=1};this.release_ref=function(){var b=F[this.ptr>>2];F[this.ptr>>2]=b-1;return 1===b}}function V(e){function b(){if(!qa&&(qa=!0,a.calledRun=!0,!Ca)){Fa=!0;E(va);Ga(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ha.unshift(a.postRun.shift());E(Ha)}}if(!(0=d&&(d=65536+((d&1023)<< -10)|e.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1);c=0;d=b.length;if(0=t){var X=e.charCodeAt(++f);t=65536+((t&1023)<<10)|X&1023}if(127>=t){if(c>=d)break;b[c++]=t}else{if(2047>=t){if(c+1>=d)break;b[c++]=192|t>>6}else{if(65535>=t){if(c+2>=d)break;b[c++]=224|t>>12}else{if(c+3>=d)break;b[c++]=240|t>>18;b[c++]=128|t>>12&63}b[c++]=128|t>>6&63}b[c++]=128|t&63}}b[c]=0}e=r.alloc(b,Z);r.copy(b,Z, -e);return e}return e}function wa(e){if("object"===typeof e){var b=r.alloc(e,Z);r.copy(e,Z,b);return b}return e}function aa(){throw"cannot construct a VoidPtr, no constructor in IDL";}function S(){this.ptr=Ja();x(S)[this.ptr]=this}function Q(){this.ptr=Ka();x(Q)[this.ptr]=this}function Y(){this.ptr=La();x(Y)[this.ptr]=this}function w(){this.ptr=Ma();x(w)[this.ptr]=this}function C(){this.ptr=Na();x(C)[this.ptr]=this}function G(){this.ptr=Oa();x(G)[this.ptr]=this}function H(){this.ptr=Pa();x(H)[this.ptr]= -this}function D(){this.ptr=Qa();x(D)[this.ptr]=this}function T(){this.ptr=Ra();x(T)[this.ptr]=this}function B(){throw"cannot construct a Status, no constructor in IDL";}function I(){this.ptr=Sa();x(I)[this.ptr]=this}function J(){this.ptr=Ta();x(J)[this.ptr]=this}function K(){this.ptr=Ua();x(K)[this.ptr]=this}function L(){this.ptr=Va();x(L)[this.ptr]=this}function M(){this.ptr=Wa();x(M)[this.ptr]=this}function N(){this.ptr=Xa();x(N)[this.ptr]=this}function O(){this.ptr=Ya();x(O)[this.ptr]=this}function y(){this.ptr= -Za();x(y)[this.ptr]=this}function l(){this.ptr=$a();x(l)[this.ptr]=this}n=n||{};var a="undefined"!==typeof n?n:{},Ga,sa;a.ready=new Promise(function(e,b){Ga=e;sa=b});var ab=!1,bb=!1;a.onRuntimeInitialized=function(){ab=!0;if(bb&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){bb=!0;if(ab&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(e){if("string"!==typeof e)return!1;e=e.split(".");return 2>e.length||3=e[1]?!0:0!=e[0]||10>2]},getStr:function(e){return z(e)},get64:function(e,b){return e}},zd={h:function(e){return db(e+16)+16},g:function(e,b,c){(new U(e)).init(b,c);yd++;throw e;},a:function(){p("")},d:function(e,b,c){ja.copyWithin(e,b,b+c)},e:function(e){var b=ja.length;e>>>=0;if(2147483648=c;c*=2){var d= -b*(1+.2/c);d=Math.min(d,e+100663296);var f=Math,t=f.min;d=Math.max(e,d);0>>16);g(ra.buffer);var X=1;break a}catch(ya){}X=void 0}if(X)return!0}return!1},f:function(e){return 0},c:function(e,b,c,d,f){},b:function(e,b,c,d){for(var f=0,t=0;t>2],ya=F[b+4>>2];b+=8;for(var za=0;za>2]=f;return 0}};(function(){function e(f,t){a.asm=f.exports;ra=a.asm.i;g(ra.buffer); -Ea=a.asm.k;va.unshift(a.asm.j);da--;a.monitorRunDependencies&&a.monitorRunDependencies(da);0==da&&(null!==xa&&(clearInterval(xa),xa=null),na&&(f=na,na=null,f()))}function b(f){e(f.instance)}function c(f){return A().then(function(t){return WebAssembly.instantiate(t,d)}).then(function(t){return t}).then(f,function(t){fa("failed to asynchronously prepare wasm: "+t);p(t)})}var d={a:zd};da++;a.monitorRunDependencies&&a.monitorRunDependencies(da);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(f){return fa("Module.instantiateWasm callback failed with error: "+ -f),!1}(function(){return ka||"function"!==typeof WebAssembly.instantiateStreaming||P.startsWith("data:application/octet-stream;base64,")||P.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(P,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,d).then(b,function(t){fa("wasm streaming compile failed: "+t);fa("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(sa);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors= -a.asm.j).apply(null,arguments)};var eb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(eb=a._emscripten_bind_VoidPtr___destroy___0=a.asm.l).apply(null,arguments)},Ja=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ja=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.m).apply(null,arguments)},fb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(fb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.n).apply(null,arguments)},gb=a._emscripten_bind_DecoderBuffer___destroy___0= -function(){return(gb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.o).apply(null,arguments)},Ka=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ka=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.p).apply(null,arguments)},hb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(hb=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.q).apply(null,arguments)},ib=a._emscripten_bind_AttributeTransformData___destroy___0= -function(){return(ib=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.r).apply(null,arguments)},La=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(La=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.s).apply(null,arguments)},jb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(jb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.t).apply(null,arguments)},Ma=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ma= -a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.u).apply(null,arguments)},kb=a._emscripten_bind_PointAttribute_size_0=function(){return(kb=a._emscripten_bind_PointAttribute_size_0=a.asm.v).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(lb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.w).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(mb=a._emscripten_bind_PointAttribute_attribute_type_0= -a.asm.x).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(nb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.y).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_num_components_0=function(){return(ob=a._emscripten_bind_PointAttribute_num_components_0=a.asm.z).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(pb=a._emscripten_bind_PointAttribute_normalized_0=a.asm.A).apply(null,arguments)},qb=a._emscripten_bind_PointAttribute_byte_stride_0= -function(){return(qb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.B).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(rb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.C).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(sb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.D).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(tb=a._emscripten_bind_PointAttribute___destroy___0= -a.asm.E).apply(null,arguments)},Na=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Na=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.F).apply(null,arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.G).apply(null,arguments)},vb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0= -function(){return(vb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.H).apply(null,arguments)},wb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(wb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.I).apply(null,arguments)},xb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.J).apply(null,arguments)},yb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0= -function(){return(yb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.K).apply(null,arguments)},Oa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Oa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.L).apply(null,arguments)},zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.M).apply(null, -arguments)},Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.N).apply(null,arguments)},Bb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Bb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.O).apply(null,arguments)},Pa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Pa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.P).apply(null, -arguments)},Cb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Cb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.Q).apply(null,arguments)},Db=a._emscripten_bind_PointCloud_num_points_0=function(){return(Db=a._emscripten_bind_PointCloud_num_points_0=a.asm.R).apply(null,arguments)},Eb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Eb=a._emscripten_bind_PointCloud___destroy___0=a.asm.S).apply(null,arguments)},Qa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Qa= -a._emscripten_bind_Mesh_Mesh_0=a.asm.T).apply(null,arguments)},Fb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Fb=a._emscripten_bind_Mesh_num_faces_0=a.asm.U).apply(null,arguments)},Gb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Gb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.V).apply(null,arguments)},Hb=a._emscripten_bind_Mesh_num_points_0=function(){return(Hb=a._emscripten_bind_Mesh_num_points_0=a.asm.W).apply(null,arguments)},Ib=a._emscripten_bind_Mesh___destroy___0=function(){return(Ib= -a._emscripten_bind_Mesh___destroy___0=a.asm.X).apply(null,arguments)},Ra=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ra=a._emscripten_bind_Metadata_Metadata_0=a.asm.Y).apply(null,arguments)},Jb=a._emscripten_bind_Metadata___destroy___0=function(){return(Jb=a._emscripten_bind_Metadata___destroy___0=a.asm.Z).apply(null,arguments)},Kb=a._emscripten_bind_Status_code_0=function(){return(Kb=a._emscripten_bind_Status_code_0=a.asm._).apply(null,arguments)},Lb=a._emscripten_bind_Status_ok_0=function(){return(Lb= -a._emscripten_bind_Status_ok_0=a.asm.$).apply(null,arguments)},Mb=a._emscripten_bind_Status_error_msg_0=function(){return(Mb=a._emscripten_bind_Status_error_msg_0=a.asm.aa).apply(null,arguments)},Nb=a._emscripten_bind_Status___destroy___0=function(){return(Nb=a._emscripten_bind_Status___destroy___0=a.asm.ba).apply(null,arguments)},Sa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Sa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.ca).apply(null,arguments)}, -Ob=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Ob=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.da).apply(null,arguments)},Pb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Pb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ea).apply(null,arguments)},Qb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Qb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.fa).apply(null,arguments)},Ta=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= -function(){return(Ta=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.ga).apply(null,arguments)},Rb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Rb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ha).apply(null,arguments)},Sb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Sb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.ia).apply(null,arguments)},Tb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Tb=a._emscripten_bind_DracoInt8Array___destroy___0= -a.asm.ja).apply(null,arguments)},Ua=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Ua=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ka).apply(null,arguments)},Ub=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Ub=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.la).apply(null,arguments)},Vb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Vb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ma).apply(null,arguments)},Wb=a._emscripten_bind_DracoUInt8Array___destroy___0= -function(){return(Wb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.na).apply(null,arguments)},Va=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Va=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.oa).apply(null,arguments)},Xb=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(Xb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.pa).apply(null,arguments)},Yb=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Yb=a._emscripten_bind_DracoInt16Array_size_0= -a.asm.qa).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Zb=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.ra).apply(null,arguments)},Wa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Wa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.sa).apply(null,arguments)},$b=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return($b=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.ta).apply(null,arguments)}, -ac=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(ac=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ua).apply(null,arguments)},bc=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(bc=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.va).apply(null,arguments)},Xa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Xa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.wa).apply(null,arguments)},cc=a._emscripten_bind_DracoInt32Array_GetValue_1= -function(){return(cc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.xa).apply(null,arguments)},dc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(dc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.ya).apply(null,arguments)},ec=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ec=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.za).apply(null,arguments)},Ya=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Ya=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0= -a.asm.Aa).apply(null,arguments)},fc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(fc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.Ba).apply(null,arguments)},gc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(gc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.Ca).apply(null,arguments)},hc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(hc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Da).apply(null,arguments)},Za=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= -function(){return(Za=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ea).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Fa).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(jc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Ga).apply(null,arguments)},kc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= -a.asm.Ha).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Ia).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(mc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ja).apply(null,arguments)},nc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(nc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ka).apply(null,arguments)}, -oc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(oc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.La).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(pc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ma).apply(null,arguments)},$a=a._emscripten_bind_Decoder_Decoder_0=function(){return($a=a._emscripten_bind_Decoder_Decoder_0=a.asm.Na).apply(null,arguments)},qc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(qc= -a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.Oa).apply(null,arguments)},rc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(rc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Pa).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Qa).apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(tc=a._emscripten_bind_Decoder_GetAttributeIdByName_2= -a.asm.Ra).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(uc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Sa).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Ta).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(wc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ua).apply(null,arguments)}, -xc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(xc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Va).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(yc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Wa).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(zc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Xa).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2= -function(){return(Ac=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Ya).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Bc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Za).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Cc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm._a).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Dc= -a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.$a).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.ab).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.bb).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Gc= -a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.cb).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.db).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.eb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= -function(){return(Jc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.fb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.gb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.hb).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5= -function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.ib).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Nc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.jb).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Oc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.kb).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2= -function(){return(Pc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.lb).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Qc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.mb).apply(null,arguments)},Rc=a._emscripten_bind_Decoder___destroy___0=function(){return(Rc=a._emscripten_bind_Decoder___destroy___0=a.asm.nb).apply(null,arguments)},Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= -a.asm.ob).apply(null,arguments)},Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.pb).apply(null,arguments)},Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.qb).apply(null,arguments)},Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM= -function(){return(Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.rb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.sb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.tb).apply(null,arguments)},Yc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL= -function(){return(Yc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.ub).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.vb).apply(null,arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.wb).apply(null,arguments)},ad=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= -function(){return(ad=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.xb).apply(null,arguments)},bd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(bd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.yb).apply(null,arguments)},cd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(cd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.zb).apply(null,arguments)},dd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= -function(){return(dd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Ab).apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ed=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.Bb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(fd=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.Cb).apply(null,arguments)},gd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(gd=a._emscripten_enum_draco_DataType_DT_UINT8= -a.asm.Db).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Eb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(id=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Fb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(jd=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Gb).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_UINT32= -function(){return(kd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Hb).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(ld=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Ib).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(md=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Jb).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(nd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Kb).apply(null, -arguments)},od=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(od=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Lb).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(pd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Mb).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(qd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Nb).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_OK=function(){return(rd= -a._emscripten_enum_draco_StatusCode_OK=a.asm.Ob).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(sd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Pb).apply(null,arguments)},td=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(td=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Qb).apply(null,arguments)},ud=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(ud=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= -a.asm.Rb).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(vd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Sb).apply(null,arguments)},wd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(wd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Tb).apply(null,arguments)},db=a._malloc=function(){return(db=a._malloc=a.asm.Ub).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Vb).apply(null,arguments)}; -var qa;na=function b(){qa||V();qa||(na=b)};a.run=V;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(q(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var f=0;fb.byteLength)return a.INVALID_GEOMETRY_TYPE;switch(b[7]){case 0:return a.POINT_CLOUD;case 1:return a.TRIANGULAR_MESH;default:return a.INVALID_GEOMETRY_TYPE}};return n.ready}}(); +var DracoDecoderModule=function(){var k="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(k=k||__filename);return function(n){function l(e){return a.locateFile?a.locateFile(e,V):V+e}function p(e,b,c){var d=b+c;for(c=b;e[c]&&!(c>=d);)++c;if(16g?d+=String.fromCharCode(g):(g-=65536,d+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else d+=String.fromCharCode(g)}return d}function h(e,b){return e?p(ea,e,b):""}function A(e){ya=e;a.HEAP8=Y=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=G=new Int32Array(e);a.HEAPU8=ea=new Uint8Array(e);a.HEAPU16=new Uint16Array(e);a.HEAPU32=new Uint32Array(e);a.HEAPF32=new Float32Array(e);a.HEAPF64=new Float64Array(e)}function f(e){if(a.onAbort)a.onAbort(e); +e="Aborted("+e+")";ca(e);za=!0;e=new WebAssembly.RuntimeError(e+". Build with -s ASSERTIONS=1 for more info.");oa(e);throw e;}function q(e){try{if(e==R&&fa)return new Uint8Array(fa);if(pa)return pa(e);throw"both async and sync fetching of the wasm failed";}catch(b){f(b)}}function v(){if(!fa&&(Aa||ha)){if("function"===typeof fetch&&!R.startsWith("file://"))return fetch(R,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+R+"'";return e.arrayBuffer()}).catch(function(){return q(R)}); +if(qa)return new Promise(function(e,b){qa(R,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return q(R)})}function z(e){for(;0=ka.length&&(ka.length=e+1),ka[e]=b=Ba.get(e));return b}function da(e){this.excPtr=e;this.ptr=e-16;this.set_type=function(b){G[this.ptr+4>>2]=b};this.get_type= +function(){return G[this.ptr+4>>2]};this.set_destructor=function(b){G[this.ptr+8>>2]=b};this.get_destructor=function(){return G[this.ptr+8>>2]};this.set_refcount=function(b){G[this.ptr>>2]=b};this.set_caught=function(b){Y[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Y[this.ptr+12>>0]};this.set_rethrown=function(b){Y[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Y[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b);this.set_destructor(c);this.set_refcount(0);this.set_caught(!1); +this.set_rethrown(!1)};this.add_ref=function(){G[this.ptr>>2]+=1};this.release_ref=function(){var b=G[this.ptr>>2];G[this.ptr>>2]=b-1;return 1===b}}function Q(e){function b(){if(!la&&(la=!0,a.calledRun=!0,!za)){Ca=!0;z(ra);Da(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ea.unshift(a.postRun.shift());z(Ea)}}if(!(0=d&&(d=65536+((d&1023)<<10)|e.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1); +c=0;d=b.length;if(0=t){var W=e.charCodeAt(++g);t=65536+((t&1023)<<10)|W&1023}if(127>=t){if(c>=d)break;b[c++]=t}else{if(2047>=t){if(c+1>=d)break;b[c++]=192|t>>6}else{if(65535>=t){if(c+2>=d)break;b[c++]=224|t>>12}else{if(c+3>=d)break;b[c++]=240|t>>18;b[c++]=128|t>>12&63}b[c++]=128|t>>6&63}b[c++]=128|t&63}}b[c]=0}e=r.alloc(b,Y);r.copy(b,Y,e);return e}return e}function sa(e){if("object"===typeof e){var b=r.alloc(e,Y);r.copy(e, +Y,b);return b}return e}function Z(){throw"cannot construct a VoidPtr, no constructor in IDL";}function T(){this.ptr=Ga();x(T)[this.ptr]=this}function S(){this.ptr=Ha();x(S)[this.ptr]=this}function X(){this.ptr=Ia();x(X)[this.ptr]=this}function w(){this.ptr=Ja();x(w)[this.ptr]=this}function C(){this.ptr=Ka();x(C)[this.ptr]=this}function H(){this.ptr=La();x(H)[this.ptr]=this}function I(){this.ptr=Ma();x(I)[this.ptr]=this}function E(){this.ptr=Na();x(E)[this.ptr]=this}function U(){this.ptr=Oa();x(U)[this.ptr]= +this}function B(){throw"cannot construct a Status, no constructor in IDL";}function J(){this.ptr=Pa();x(J)[this.ptr]=this}function K(){this.ptr=Qa();x(K)[this.ptr]=this}function L(){this.ptr=Ra();x(L)[this.ptr]=this}function M(){this.ptr=Sa();x(M)[this.ptr]=this}function N(){this.ptr=Ta();x(N)[this.ptr]=this}function O(){this.ptr=Ua();x(O)[this.ptr]=this}function P(){this.ptr=Va();x(P)[this.ptr]=this}function y(){this.ptr=Wa();x(y)[this.ptr]=this}function m(){this.ptr=Xa();x(m)[this.ptr]=this}n=n|| +{};var a="undefined"!==typeof n?n:{},Ya=Object.assign,Da,oa;a.ready=new Promise(function(e,b){Da=e;oa=b});var Za=!1,$a=!1;a.onRuntimeInitialized=function(){Za=!0;if($a&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){$a=!0;if(Za&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(e){if("string"!==typeof e)return!1;e=e.split(".");return 2>e.length||3=e[1]?!0:0!=e[0]||10>2]},getStr:function(e){return h(e)}, +get64:function(e,b){return e}},zd={h:function(e){return db(e+16)+16},g:function(e,b,c){(new da(e)).init(b,c);yd++;throw e;},a:function(){f("")},f:function(e,b,c){ea.copyWithin(e,b,b+c)},d:function(e){var b=ea.length;e>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,e+100663296);var g=Math,t=g.min;d=Math.max(e,d);0>>16);A(na.buffer);var W=1;break a}catch(va){}W=void 0}if(W)return!0}return!1}, +e:function(e){return 0},c:function(e,b,c,d,g){},b:function(e,b,c,d){for(var g=0,t=0;t>2],va=G[b+4>>2];b+=8;for(var wa=0;wa>2]=g;return 0}};(function(){function e(g,t){a.asm=g.exports;na=a.asm.i;A(na.buffer);Ba=a.asm.k;ra.unshift(a.asm.j);ba--;a.monitorRunDependencies&&a.monitorRunDependencies(ba);0==ba&&(null!==ua&&(clearInterval(ua),ua=null),ia&&(g=ia,ia=null,g()))}function b(g){e(g.instance)}function c(g){return v().then(function(t){return WebAssembly.instantiate(t, +d)}).then(function(t){return t}).then(g,function(t){ca("failed to asynchronously prepare wasm: "+t);f(t)})}var d={a:zd};ba++;a.monitorRunDependencies&&a.monitorRunDependencies(ba);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(g){return ca("Module.instantiateWasm callback failed with error: "+g),!1}(function(){return fa||"function"!==typeof WebAssembly.instantiateStreaming||R.startsWith("data:application/octet-stream;base64,")||R.startsWith("file://")||"function"!==typeof fetch?c(b): +fetch(R,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g,d).then(b,function(t){ca("wasm streaming compile failed: "+t);ca("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(oa);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.j).apply(null,arguments)};var eb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(eb=a._emscripten_bind_VoidPtr___destroy___0=a.asm.l).apply(null,arguments)},Ga=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0= +function(){return(Ga=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.m).apply(null,arguments)},fb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(fb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.n).apply(null,arguments)},gb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(gb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.o).apply(null,arguments)},Ha=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ha=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0= +a.asm.p).apply(null,arguments)},hb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(hb=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.q).apply(null,arguments)},ib=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(ib=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.r).apply(null,arguments)},Ia=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ia=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0= +a.asm.s).apply(null,arguments)},jb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(jb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.t).apply(null,arguments)},Ja=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ja=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.u).apply(null,arguments)},kb=a._emscripten_bind_PointAttribute_size_0=function(){return(kb=a._emscripten_bind_PointAttribute_size_0=a.asm.v).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0= +function(){return(lb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.w).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(mb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.x).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(nb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.y).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_num_components_0=function(){return(ob=a._emscripten_bind_PointAttribute_num_components_0= +a.asm.z).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(pb=a._emscripten_bind_PointAttribute_normalized_0=a.asm.A).apply(null,arguments)},qb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(qb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.B).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(rb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.C).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_unique_id_0= +function(){return(sb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.D).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(tb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.E).apply(null,arguments)},Ka=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Ka=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.F).apply(null,arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1= +function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.G).apply(null,arguments)},vb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(vb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.H).apply(null,arguments)},wb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(wb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.I).apply(null,arguments)},xb= +a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.J).apply(null,arguments)},yb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(yb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.K).apply(null,arguments)},La=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(La=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0= +a.asm.L).apply(null,arguments)},zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.M).apply(null,arguments)},Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.N).apply(null,arguments)},Bb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Bb= +a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.O).apply(null,arguments)},Ma=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ma=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.P).apply(null,arguments)},Cb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Cb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.Q).apply(null,arguments)},Db=a._emscripten_bind_PointCloud_num_points_0=function(){return(Db=a._emscripten_bind_PointCloud_num_points_0=a.asm.R).apply(null, +arguments)},Eb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Eb=a._emscripten_bind_PointCloud___destroy___0=a.asm.S).apply(null,arguments)},Na=a._emscripten_bind_Mesh_Mesh_0=function(){return(Na=a._emscripten_bind_Mesh_Mesh_0=a.asm.T).apply(null,arguments)},Fb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Fb=a._emscripten_bind_Mesh_num_faces_0=a.asm.U).apply(null,arguments)},Gb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Gb=a._emscripten_bind_Mesh_num_attributes_0= +a.asm.V).apply(null,arguments)},Hb=a._emscripten_bind_Mesh_num_points_0=function(){return(Hb=a._emscripten_bind_Mesh_num_points_0=a.asm.W).apply(null,arguments)},Ib=a._emscripten_bind_Mesh___destroy___0=function(){return(Ib=a._emscripten_bind_Mesh___destroy___0=a.asm.X).apply(null,arguments)},Oa=a._emscripten_bind_Metadata_Metadata_0=function(){return(Oa=a._emscripten_bind_Metadata_Metadata_0=a.asm.Y).apply(null,arguments)},Jb=a._emscripten_bind_Metadata___destroy___0=function(){return(Jb=a._emscripten_bind_Metadata___destroy___0= +a.asm.Z).apply(null,arguments)},Kb=a._emscripten_bind_Status_code_0=function(){return(Kb=a._emscripten_bind_Status_code_0=a.asm._).apply(null,arguments)},Lb=a._emscripten_bind_Status_ok_0=function(){return(Lb=a._emscripten_bind_Status_ok_0=a.asm.$).apply(null,arguments)},Mb=a._emscripten_bind_Status_error_msg_0=function(){return(Mb=a._emscripten_bind_Status_error_msg_0=a.asm.aa).apply(null,arguments)},Nb=a._emscripten_bind_Status___destroy___0=function(){return(Nb=a._emscripten_bind_Status___destroy___0= +a.asm.ba).apply(null,arguments)},Pa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Pa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.ca).apply(null,arguments)},Ob=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Ob=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.da).apply(null,arguments)},Pb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Pb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ea).apply(null,arguments)}, +Qb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Qb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.fa).apply(null,arguments)},Qa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Qa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.ga).apply(null,arguments)},Rb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Rb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ha).apply(null,arguments)},Sb=a._emscripten_bind_DracoInt8Array_size_0= +function(){return(Sb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.ia).apply(null,arguments)},Tb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Tb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.ja).apply(null,arguments)},Ra=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Ra=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ka).apply(null,arguments)},Ub=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Ub=a._emscripten_bind_DracoUInt8Array_GetValue_1= +a.asm.la).apply(null,arguments)},Vb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Vb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ma).apply(null,arguments)},Wb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Wb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.na).apply(null,arguments)},Sa=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Sa=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.oa).apply(null,arguments)},Xb=a._emscripten_bind_DracoInt16Array_GetValue_1= +function(){return(Xb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.pa).apply(null,arguments)},Yb=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Yb=a._emscripten_bind_DracoInt16Array_size_0=a.asm.qa).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Zb=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.ra).apply(null,arguments)},Ta=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Ta=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0= +a.asm.sa).apply(null,arguments)},$b=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return($b=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.ta).apply(null,arguments)},ac=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(ac=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ua).apply(null,arguments)},bc=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(bc=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.va).apply(null,arguments)},Ua=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0= +function(){return(Ua=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.wa).apply(null,arguments)},cc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(cc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.xa).apply(null,arguments)},dc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(dc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.ya).apply(null,arguments)},ec=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ec=a._emscripten_bind_DracoInt32Array___destroy___0= +a.asm.za).apply(null,arguments)},Va=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Va=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.Aa).apply(null,arguments)},fc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(fc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.Ba).apply(null,arguments)},gc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(gc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.Ca).apply(null,arguments)},hc=a._emscripten_bind_DracoUInt32Array___destroy___0= +function(){return(hc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Da).apply(null,arguments)},Wa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(Wa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ea).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Fa).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(jc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2= +a.asm.Ga).apply(null,arguments)},kc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.Ha).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Ia).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(mc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ja).apply(null, +arguments)},nc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(nc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ka).apply(null,arguments)},oc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(oc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.La).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(pc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ma).apply(null,arguments)},Xa=a._emscripten_bind_Decoder_Decoder_0= +function(){return(Xa=a._emscripten_bind_Decoder_Decoder_0=a.asm.Na).apply(null,arguments)},qc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(qc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.Oa).apply(null,arguments)},rc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(rc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Pa).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeId_2= +a.asm.Qa).apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(tc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.Ra).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(uc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Sa).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Ta).apply(null,arguments)}, +wc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(wc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ua).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(xc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Va).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(yc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Wa).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetFaceFromMesh_3= +function(){return(zc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Xa).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(Ac=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Ya).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Bc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Za).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Cc= +a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm._a).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.$a).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.ab).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3= +a.asm.bb).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.cb).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.db).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3= +a.asm.eb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=function(){return(Jc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.fb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.gb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3= +a.asm.hb).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.ib).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Nc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.jb).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Oc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1= +a.asm.kb).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(Pc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.lb).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Qc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.mb).apply(null,arguments)},Rc=a._emscripten_bind_Decoder___destroy___0=function(){return(Rc=a._emscripten_bind_Decoder___destroy___0=a.asm.nb).apply(null,arguments)},Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= +function(){return(Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.ob).apply(null,arguments)},Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.pb).apply(null,arguments)},Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM= +a.asm.qb).apply(null,arguments)},Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.rb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.sb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION= +a.asm.tb).apply(null,arguments)},Yc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(Yc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.ub).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.vb).apply(null,arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD= +a.asm.wb).apply(null,arguments)},ad=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(ad=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.xb).apply(null,arguments)},bd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(bd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.yb).apply(null,arguments)},cd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(cd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD= +a.asm.zb).apply(null,arguments)},dd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(dd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Ab).apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ed=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.Bb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(fd=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.Cb).apply(null,arguments)},gd= +a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(gd=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.Db).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Eb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(id=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Fb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(jd=a._emscripten_enum_draco_DataType_DT_INT32= +a.asm.Gb).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(kd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Hb).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(ld=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Ib).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(md=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Jb).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_FLOAT32= +function(){return(nd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Kb).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(od=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Lb).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(pd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Mb).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(qd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT= +a.asm.Nb).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_OK=function(){return(rd=a._emscripten_enum_draco_StatusCode_OK=a.asm.Ob).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(sd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Pb).apply(null,arguments)},td=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(td=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Qb).apply(null,arguments)},ud=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= +function(){return(ud=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.Rb).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(vd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Sb).apply(null,arguments)},wd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(wd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Tb).apply(null,arguments)},db=a._malloc=function(){return(db=a._malloc=a.asm.Ub).apply(null, +arguments)};a._free=function(){return(a._free=a.asm.Vb).apply(null,arguments)};var la;ia=function b(){la||Q();la||(ia=b)};a.run=Q;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var g=0;gb.byteLength)return a.INVALID_GEOMETRY_TYPE;switch(b[7]){case 0:return a.POINT_CLOUD;case 1:return a.TRIANGULAR_MESH;default:return a.INVALID_GEOMETRY_TYPE}};return n.ready}}(); "object"===typeof exports&&"object"===typeof module?module.exports=DracoDecoderModule:"function"===typeof define&&define.amd?define([],function(){return DracoDecoderModule}):"object"===typeof exports&&(exports.DracoDecoderModule=DracoDecoderModule); diff --git a/javascript/draco_wasm_wrapper_gltf.js b/javascript/draco_wasm_wrapper_gltf.js index 04923242..2066c3e5 100644 --- a/javascript/draco_wasm_wrapper_gltf.js +++ b/javascript/draco_wasm_wrapper_gltf.js @@ -1,116 +1,116 @@ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(m){var n=0;return function(){return n>>0,$jscomp.propertyToPolyfillSymbol[h]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(h):$jscomp.POLYFILL_PREFIX+k+"$"+h),$jscomp.defineProperty(q,$jscomp.propertyToPolyfillSymbol[h],{configurable:!0,writable:!0,value:n})))}; -$jscomp.polyfill("Promise",function(m){function n(){this.batch_=null}function k(f){return f instanceof h?f:new h(function(p,v){p(f)})}if(m&&(!($jscomp.FORCE_POLYFILL_PROMISE||$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&"undefined"===typeof $jscomp.global.PromiseRejectionEvent)||!$jscomp.global.Promise||-1===$jscomp.global.Promise.toString().indexOf("[native code]")))return m;n.prototype.asyncExecute=function(f){if(null==this.batch_){this.batch_=[];var p=this;this.asyncExecuteFunction(function(){p.executeBatch_()})}this.batch_.push(f)}; -var q=$jscomp.global.setTimeout;n.prototype.asyncExecuteFunction=function(f){q(f,0)};n.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var f=this.batch_;this.batch_=[];for(var p=0;p=A}},"es6","es3"); -$jscomp.polyfill("Array.prototype.copyWithin",function(m){function n(k){k=Number(k);return Infinity===k||-Infinity===k?k:k|0}return m?m:function(k,q,h){var A=this.length;k=n(k);q=n(q);h=void 0===h?A:n(h);k=0>k?Math.max(A+k,0):Math.min(k,A);q=0>q?Math.max(A+q,0):Math.min(q,A);h=0>h?Math.max(A+h,0):Math.min(h,A);if(kq;)--h in this?this[--k]=this[h]:delete this[--k];return this}},"es6","es3"); -$jscomp.typedArrayCopyWithin=function(m){return m?m:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.owns=function(h,n){return Object.prototype.hasOwnProperty.call(h,n)};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1; +$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(h,n,k){if(h==Array.prototype||h==Object.prototype)return h;h[n]=k.value;return h};$jscomp.getGlobal=function(h){h=["object"==typeof globalThis&&globalThis,h,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var n=0;n>>0,$jscomp.propertyToPolyfillSymbol[l]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(l):$jscomp.POLYFILL_PREFIX+k+"$"+l),$jscomp.defineProperty(p,$jscomp.propertyToPolyfillSymbol[l],{configurable:!0,writable:!0,value:n})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(h,n){for(var k=1;k=y}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(h){function n(k){k=Number(k);return Infinity===k||-Infinity===k?k:k|0}return h?h:function(k,p,l){var y=this.length;k=n(k);p=n(p);l=void 0===l?y:n(l);k=0>k?Math.max(y+k,0):Math.min(k,y);p=0>p?Math.max(y+p,0):Math.min(p,y);l=0>l?Math.max(y+l,0):Math.min(l,y);if(kp;)--l in this?this[--k]=this[l]:delete this[--k];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(h){return h?h:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); $jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); -var DracoDecoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(n){function k(e){return a.locateFile?a.locateFile(e,U):U+e}function q(e,b){e||f("Assertion failed: "+b)}function h(e,b){if(e){var c=ma;var d=e+b;for(b=e;c[b]&&!(b>=d);)++b;if(16g?d+=String.fromCharCode(g):(g-=65536,d+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else d+=String.fromCharCode(g)}c=d}}else c="";return c}function A(e){xa=e;a.HEAP8=Y=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=V=new Int32Array(e);a.HEAPU8=ma=new Uint8Array(e);a.HEAPU16=new Uint16Array(e);a.HEAPU32=new Uint32Array(e);a.HEAPF32=new Float32Array(e);a.HEAPF64=new Float64Array(e)}function f(e){if(a.onAbort)a.onAbort(e); -e="Aborted("+e+")";ha(e);ya=!0;e=new WebAssembly.RuntimeError(e+". Build with -s ASSERTIONS=1 for more info.");qa(e);throw e;}function p(e){try{if(e==Q&&ia)return new Uint8Array(ia);if(ra)return ra(e);throw"both async and sync fetching of the wasm failed";}catch(b){f(b)}}function v(){if(!ia&&(za||ja)){if("function"===typeof fetch&&!Q.startsWith("file://"))return fetch(Q,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+Q+"'";return e.arrayBuffer()}).catch(function(){return p(Q)}); -if(sa)return new Promise(function(e,b){sa(Q,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return p(Q)})}function z(e){for(;0=na.length&&(na.length=e+1),na[e]=b=Aa.get(e));return b}function fa(e){this.excPtr=e;this.ptr=e-16;this.set_type=function(b){V[this.ptr+4>>2]=b};this.get_type= +var DracoDecoderModule=function(){var h="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(h=h||__filename);return function(n){function k(e){return a.locateFile?a.locateFile(e,U):U+e}function p(e,b){if(e){var c=ha;var d=e+b;for(b=e;c[b]&&!(b>=d);)++b;if(16g?d+=String.fromCharCode(g):(g-=65536,d+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else d+=String.fromCharCode(g)}c=d}}else c="";return c}function l(e){ua=e;a.HEAP8=Y=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=V=new Int32Array(e);a.HEAPU8=ha=new Uint8Array(e);a.HEAPU16=new Uint16Array(e);a.HEAPU32=new Uint32Array(e);a.HEAPF32=new Float32Array(e);a.HEAPF64=new Float64Array(e)}function y(e){if(a.onAbort)a.onAbort(e); +e="Aborted("+e+")";ca(e);va=!0;e=new WebAssembly.RuntimeError(e+". Build with -s ASSERTIONS=1 for more info.");ma(e);throw e;}function f(e){try{if(e==P&&da)return new Uint8Array(da);if(na)return na(e);throw"both async and sync fetching of the wasm failed";}catch(b){y(b)}}function q(){if(!da&&(wa||ea)){if("function"===typeof fetch&&!P.startsWith("file://"))return fetch(P,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+P+"'";return e.arrayBuffer()}).catch(function(){return f(P)}); +if(oa)return new Promise(function(e,b){oa(P,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return f(P)})}function v(e){for(;0=ia.length&&(ia.length=e+1),ia[e]=b=xa.get(e));return b}function O(e){this.excPtr=e;this.ptr=e-16;this.set_type=function(b){V[this.ptr+4>>2]=b};this.get_type= function(){return V[this.ptr+4>>2]};this.set_destructor=function(b){V[this.ptr+8>>2]=b};this.get_destructor=function(){return V[this.ptr+8>>2]};this.set_refcount=function(b){V[this.ptr>>2]=b};this.set_caught=function(b){Y[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Y[this.ptr+12>>0]};this.set_rethrown=function(b){Y[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Y[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b);this.set_destructor(c);this.set_refcount(0);this.set_caught(!1); -this.set_rethrown(!1)};this.add_ref=function(){V[this.ptr>>2]+=1};this.release_ref=function(){var b=V[this.ptr>>2];V[this.ptr>>2]=b-1;return 1===b}}function P(e){function b(){if(!oa&&(oa=!0,a.calledRun=!0,!ya)){Ba=!0;z(ta);Ca(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Da.unshift(a.postRun.shift());z(Da)}}if(!(0=d&&(d=65536+((d&1023)<<10)|e.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1); -c=0;d=b.length;if(0=u){var X=e.charCodeAt(++g);u=65536+((u&1023)<<10)|X&1023}if(127>=u){if(c>=d)break;b[c++]=u}else{if(2047>=u){if(c+1>=d)break;b[c++]=192|u>>6}else{if(65535>=u){if(c+2>=d)break;b[c++]=224|u>>12}else{if(c+3>=d)break;b[c++]=240|u>>18;b[c++]=128|u>>12&63}b[c++]=128|u>>6&63}b[c++]=128|u&63}}b[c]=0}e=r.alloc(b,Y);r.copy(b,Y,e);return e}return e}function ua(e){if("object"===typeof e){var b=r.alloc(e,Y);r.copy(e, -Y,b);return b}return e}function Z(){throw"cannot construct a VoidPtr, no constructor in IDL";}function S(){this.ptr=Fa();x(S)[this.ptr]=this}function R(){this.ptr=Ga();x(R)[this.ptr]=this}function W(){this.ptr=Ha();x(W)[this.ptr]=this}function w(){this.ptr=Ia();x(w)[this.ptr]=this}function C(){this.ptr=Ja();x(C)[this.ptr]=this}function G(){this.ptr=Ka();x(G)[this.ptr]=this}function H(){this.ptr=La();x(H)[this.ptr]=this}function E(){this.ptr=Ma();x(E)[this.ptr]=this}function T(){this.ptr=Na();x(T)[this.ptr]= -this}function B(){throw"cannot construct a Status, no constructor in IDL";}function I(){this.ptr=Oa();x(I)[this.ptr]=this}function J(){this.ptr=Pa();x(J)[this.ptr]=this}function K(){this.ptr=Qa();x(K)[this.ptr]=this}function L(){this.ptr=Ra();x(L)[this.ptr]=this}function M(){this.ptr=Sa();x(M)[this.ptr]=this}function N(){this.ptr=Ta();x(N)[this.ptr]=this}function O(){this.ptr=Ua();x(O)[this.ptr]=this}function y(){this.ptr=Va();x(y)[this.ptr]=this}function l(){this.ptr=Wa();x(l)[this.ptr]=this}n=n|| -{};var a="undefined"!==typeof n?n:{},Ca,qa;a.ready=new Promise(function(e,b){Ca=e;qa=b});var Xa=!1,Ya=!1;a.onRuntimeInitialized=function(){Xa=!0;if(Ya&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ya=!0;if(Xa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(e){if("string"!==typeof e)return!1;e=e.split(".");return 2>e.length||3=e[1]?!0:0!=e[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,e+100663296);var g=Math,u=g.min;d=Math.max(e,d);0>>16);A(pa.buffer);var X=1;break a}catch(vd){}X=void 0}if(X)return!0}return!1}};(function(){function e(g,u){a.asm=g.exports;pa=a.asm.f;A(pa.buffer);Aa=a.asm.h;ta.unshift(a.asm.g);ca--; -a.monitorRunDependencies&&a.monitorRunDependencies(ca);0==ca&&(null!==va&&(clearInterval(va),va=null),la&&(g=la,la=null,g()))}function b(g){e(g.instance)}function c(g){return v().then(function(u){return WebAssembly.instantiate(u,d)}).then(function(u){return u}).then(g,function(u){ha("failed to asynchronously prepare wasm: "+u);f(u)})}var d={a:ud};ca++;a.monitorRunDependencies&&a.monitorRunDependencies(ca);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(g){return ha("Module.instantiateWasm callback failed with error: "+ -g),!1}(function(){return ia||"function"!==typeof WebAssembly.instantiateStreaming||Q.startsWith("data:application/octet-stream;base64,")||Q.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(Q,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g,d).then(b,function(u){ha("wasm streaming compile failed: "+u);ha("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(qa);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors= -a.asm.g).apply(null,arguments)};var ab=a._emscripten_bind_VoidPtr___destroy___0=function(){return(ab=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Fa=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Fa=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.j).apply(null,arguments)},bb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(bb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.k).apply(null,arguments)},cb=a._emscripten_bind_DecoderBuffer___destroy___0= -function(){return(cb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.l).apply(null,arguments)},Ga=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ga=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.m).apply(null,arguments)},db=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(db=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.n).apply(null,arguments)},eb=a._emscripten_bind_AttributeTransformData___destroy___0= -function(){return(eb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.o).apply(null,arguments)},Ha=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ha=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.p).apply(null,arguments)},fb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(fb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.q).apply(null,arguments)},Ia=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ia= -a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.r).apply(null,arguments)},gb=a._emscripten_bind_PointAttribute_size_0=function(){return(gb=a._emscripten_bind_PointAttribute_size_0=a.asm.s).apply(null,arguments)},hb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(hb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.t).apply(null,arguments)},ib=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(ib=a._emscripten_bind_PointAttribute_attribute_type_0= -a.asm.u).apply(null,arguments)},jb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(jb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.v).apply(null,arguments)},kb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(kb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.w).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(lb=a._emscripten_bind_PointAttribute_normalized_0=a.asm.x).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_byte_stride_0= -function(){return(mb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.y).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(nb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.z).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(ob=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.A).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(pb=a._emscripten_bind_PointAttribute___destroy___0= -a.asm.B).apply(null,arguments)},Ja=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Ja=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.C).apply(null,arguments)},qb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(qb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.D).apply(null,arguments)},rb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0= -function(){return(rb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.E).apply(null,arguments)},sb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(sb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.F).apply(null,arguments)},tb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(tb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.G).apply(null,arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform___destroy___0= -function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.H).apply(null,arguments)},Ka=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Ka=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.I).apply(null,arguments)},vb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(vb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.J).apply(null, -arguments)},wb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(wb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.K).apply(null,arguments)},xb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(xb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.L).apply(null,arguments)},La=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(La=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.M).apply(null, -arguments)},yb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(yb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.N).apply(null,arguments)},zb=a._emscripten_bind_PointCloud_num_points_0=function(){return(zb=a._emscripten_bind_PointCloud_num_points_0=a.asm.O).apply(null,arguments)},Ab=a._emscripten_bind_PointCloud___destroy___0=function(){return(Ab=a._emscripten_bind_PointCloud___destroy___0=a.asm.P).apply(null,arguments)},Ma=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ma= -a._emscripten_bind_Mesh_Mesh_0=a.asm.Q).apply(null,arguments)},Bb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Bb=a._emscripten_bind_Mesh_num_faces_0=a.asm.R).apply(null,arguments)},Cb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Cb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.S).apply(null,arguments)},Db=a._emscripten_bind_Mesh_num_points_0=function(){return(Db=a._emscripten_bind_Mesh_num_points_0=a.asm.T).apply(null,arguments)},Eb=a._emscripten_bind_Mesh___destroy___0=function(){return(Eb= -a._emscripten_bind_Mesh___destroy___0=a.asm.U).apply(null,arguments)},Na=a._emscripten_bind_Metadata_Metadata_0=function(){return(Na=a._emscripten_bind_Metadata_Metadata_0=a.asm.V).apply(null,arguments)},Fb=a._emscripten_bind_Metadata___destroy___0=function(){return(Fb=a._emscripten_bind_Metadata___destroy___0=a.asm.W).apply(null,arguments)},Gb=a._emscripten_bind_Status_code_0=function(){return(Gb=a._emscripten_bind_Status_code_0=a.asm.X).apply(null,arguments)},Hb=a._emscripten_bind_Status_ok_0=function(){return(Hb= -a._emscripten_bind_Status_ok_0=a.asm.Y).apply(null,arguments)},Ib=a._emscripten_bind_Status_error_msg_0=function(){return(Ib=a._emscripten_bind_Status_error_msg_0=a.asm.Z).apply(null,arguments)},Jb=a._emscripten_bind_Status___destroy___0=function(){return(Jb=a._emscripten_bind_Status___destroy___0=a.asm._).apply(null,arguments)},Oa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Oa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.$).apply(null,arguments)}, -Kb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Kb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.aa).apply(null,arguments)},Lb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Lb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ba).apply(null,arguments)},Mb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Mb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.ca).apply(null,arguments)},Pa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= -function(){return(Pa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.da).apply(null,arguments)},Nb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Nb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ea).apply(null,arguments)},Ob=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Ob=a._emscripten_bind_DracoInt8Array_size_0=a.asm.fa).apply(null,arguments)},Pb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Pb=a._emscripten_bind_DracoInt8Array___destroy___0= -a.asm.ga).apply(null,arguments)},Qa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Qa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ha).apply(null,arguments)},Qb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Qb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.ia).apply(null,arguments)},Rb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Rb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ja).apply(null,arguments)},Sb=a._emscripten_bind_DracoUInt8Array___destroy___0= -function(){return(Sb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.ka).apply(null,arguments)},Ra=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ra=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.la).apply(null,arguments)},Tb=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(Tb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.ma).apply(null,arguments)},Ub=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Ub=a._emscripten_bind_DracoInt16Array_size_0= -a.asm.na).apply(null,arguments)},Vb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Vb=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.oa).apply(null,arguments)},Sa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Sa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.pa).apply(null,arguments)},Wb=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(Wb=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.qa).apply(null,arguments)}, -Xb=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(Xb=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ra).apply(null,arguments)},Yb=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(Yb=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.sa).apply(null,arguments)},Ta=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Ta=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.ta).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt32Array_GetValue_1= -function(){return(Zb=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.ua).apply(null,arguments)},$b=a._emscripten_bind_DracoInt32Array_size_0=function(){return($b=a._emscripten_bind_DracoInt32Array_size_0=a.asm.va).apply(null,arguments)},ac=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ac=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.wa).apply(null,arguments)},Ua=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Ua=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0= -a.asm.xa).apply(null,arguments)},bc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(bc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.ya).apply(null,arguments)},cc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(cc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.za).apply(null,arguments)},dc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(dc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Aa).apply(null,arguments)},Va=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= -function(){return(Va=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ba).apply(null,arguments)},ec=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(ec=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Ca).apply(null,arguments)},fc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(fc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Da).apply(null,arguments)},gc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(gc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= -a.asm.Ea).apply(null,arguments)},hc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(hc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Fa).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ga).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(jc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ha).apply(null,arguments)}, -kc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.Ia).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(lc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ja).apply(null,arguments)},Wa=a._emscripten_bind_Decoder_Decoder_0=function(){return(Wa=a._emscripten_bind_Decoder_Decoder_0=a.asm.Ka).apply(null,arguments)},mc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(mc= -a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.La).apply(null,arguments)},nc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(nc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Ma).apply(null,arguments)},oc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(oc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Na).apply(null,arguments)},pc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(pc=a._emscripten_bind_Decoder_GetAttributeIdByName_2= -a.asm.Oa).apply(null,arguments)},qc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(qc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Pa).apply(null,arguments)},rc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(rc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Qa).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ra).apply(null,arguments)}, -tc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(tc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Sa).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(uc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Ta).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(vc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Ua).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2= -function(){return(wc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Va).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(xc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Wa).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(yc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.Xa).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(zc= -a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.Ya).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Ac=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.Za).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm._a).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Cc= -a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.$a).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.ab).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.bb).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= -function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.cb).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.db).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.eb).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5= -function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.fb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Jc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.gb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Kc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.hb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2= -function(){return(Lc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.ib).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Mc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.jb).apply(null,arguments)},Nc=a._emscripten_bind_Decoder___destroy___0=function(){return(Nc=a._emscripten_bind_Decoder___destroy___0=a.asm.kb).apply(null,arguments)},Oc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Oc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= -a.asm.lb).apply(null,arguments)},Pc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Pc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.mb).apply(null,arguments)},Qc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Qc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.nb).apply(null,arguments)},Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM= -function(){return(Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.ob).apply(null,arguments)},Sc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Sc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.pb).apply(null,arguments)},Tc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Tc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.qb).apply(null,arguments)},Uc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL= -function(){return(Uc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.rb).apply(null,arguments)},Vc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Vc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.sb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.tb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= -function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.ub).apply(null,arguments)},Yc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(Yc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.vb).apply(null,arguments)},Zc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(Zc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.wb).apply(null,arguments)},$c=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= -function(){return($c=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.xb).apply(null,arguments)},ad=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ad=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.yb).apply(null,arguments)},bd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(bd=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.zb).apply(null,arguments)},cd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(cd=a._emscripten_enum_draco_DataType_DT_UINT8= -a.asm.Ab).apply(null,arguments)},dd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(dd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Bb).apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(ed=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Cb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(fd=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Db).apply(null,arguments)},gd=a._emscripten_enum_draco_DataType_DT_UINT32= -function(){return(gd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Eb).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Fb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(id=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Gb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Hb).apply(null, -arguments)},kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Ib).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(ld=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Jb).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Kb).apply(null,arguments)},nd=a._emscripten_enum_draco_StatusCode_OK=function(){return(nd= -a._emscripten_enum_draco_StatusCode_OK=a.asm.Lb).apply(null,arguments)},od=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(od=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Mb).apply(null,arguments)},pd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(pd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Nb).apply(null,arguments)},qd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(qd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= -a.asm.Ob).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(rd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Pb).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(sd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Qb).apply(null,arguments)},$a=a._malloc=function(){return($a=a._malloc=a.asm.Rb).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Sb).apply(null,arguments)}; -var oa;la=function b(){oa||P();oa||(la=b)};a.run=P;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(q(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var g=0;g>2]+=1};this.release_ref=function(){var b=V[this.ptr>>2];V[this.ptr>>2]=b-1;return 1===b}}function aa(e){function b(){if(!ja&&(ja=!0,a.calledRun=!0,!va)){ya=!0;v(pa);za(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Aa.unshift(a.postRun.shift());v(Aa)}}if(!(0=d&&(d=65536+((d&1023)<<10)|e.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1); +c=0;d=b.length;if(0=u){var X=e.charCodeAt(++g);u=65536+((u&1023)<<10)|X&1023}if(127>=u){if(c>=d)break;b[c++]=u}else{if(2047>=u){if(c+1>=d)break;b[c++]=192|u>>6}else{if(65535>=u){if(c+2>=d)break;b[c++]=224|u>>12}else{if(c+3>=d)break;b[c++]=240|u>>18;b[c++]=128|u>>12&63}b[c++]=128|u>>6&63}b[c++]=128|u&63}}b[c]=0}e=r.alloc(b,Y);r.copy(b,Y,e);return e}return e}function qa(e){if("object"===typeof e){var b=r.alloc(e,Y);r.copy(e, +Y,b);return b}return e}function Z(){throw"cannot construct a VoidPtr, no constructor in IDL";}function S(){this.ptr=Ca();x(S)[this.ptr]=this}function Q(){this.ptr=Da();x(Q)[this.ptr]=this}function W(){this.ptr=Ea();x(W)[this.ptr]=this}function w(){this.ptr=Fa();x(w)[this.ptr]=this}function C(){this.ptr=Ga();x(C)[this.ptr]=this}function F(){this.ptr=Ha();x(F)[this.ptr]=this}function G(){this.ptr=Ia();x(G)[this.ptr]=this}function E(){this.ptr=Ja();x(E)[this.ptr]=this}function T(){this.ptr=Ka();x(T)[this.ptr]= +this}function B(){throw"cannot construct a Status, no constructor in IDL";}function H(){this.ptr=La();x(H)[this.ptr]=this}function I(){this.ptr=Ma();x(I)[this.ptr]=this}function J(){this.ptr=Na();x(J)[this.ptr]=this}function K(){this.ptr=Oa();x(K)[this.ptr]=this}function L(){this.ptr=Pa();x(L)[this.ptr]=this}function M(){this.ptr=Qa();x(M)[this.ptr]=this}function N(){this.ptr=Ra();x(N)[this.ptr]=this}function z(){this.ptr=Sa();x(z)[this.ptr]=this}function m(){this.ptr=Ta();x(m)[this.ptr]=this}n=n|| +{};var a="undefined"!==typeof n?n:{},Ua=Object.assign,za,ma;a.ready=new Promise(function(e,b){za=e;ma=b});var Va=!1,Wa=!1;a.onRuntimeInitialized=function(){Va=!0;if(Wa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Wa=!0;if(Va&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(e){if("string"!==typeof e)return!1;e=e.split(".");return 2>e.length||3=e[1]?!0:0!=e[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,e+100663296);var g=Math,u=g.min;d=Math.max(e,d);0>>16);l(la.buffer);var X=1;break a}catch(vd){}X=void 0}if(X)return!0}return!1}};(function(){function e(g,u){a.asm=g.exports;la=a.asm.f;l(la.buffer);xa=a.asm.h;pa.unshift(a.asm.g);ba--;a.monitorRunDependencies&&a.monitorRunDependencies(ba);0==ba&&(null!==sa&&(clearInterval(sa),sa=null),fa&&(g=fa,fa=null,g()))} +function b(g){e(g.instance)}function c(g){return q().then(function(u){return WebAssembly.instantiate(u,d)}).then(function(u){return u}).then(g,function(u){ca("failed to asynchronously prepare wasm: "+u);y(u)})}var d={a:ud};ba++;a.monitorRunDependencies&&a.monitorRunDependencies(ba);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(g){return ca("Module.instantiateWasm callback failed with error: "+g),!1}(function(){return da||"function"!==typeof WebAssembly.instantiateStreaming||P.startsWith("data:application/octet-stream;base64,")|| +P.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(P,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g,d).then(b,function(u){ca("wasm streaming compile failed: "+u);ca("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ma);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.g).apply(null,arguments)};var ab=a._emscripten_bind_VoidPtr___destroy___0=function(){return(ab=a._emscripten_bind_VoidPtr___destroy___0= +a.asm.i).apply(null,arguments)},Ca=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ca=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.j).apply(null,arguments)},bb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(bb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.k).apply(null,arguments)},cb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(cb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.l).apply(null,arguments)},Da=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0= +function(){return(Da=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.m).apply(null,arguments)},db=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(db=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.n).apply(null,arguments)},eb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(eb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.o).apply(null,arguments)},Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0= +function(){return(Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.p).apply(null,arguments)},fb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(fb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.q).apply(null,arguments)},Fa=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Fa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.r).apply(null,arguments)},gb=a._emscripten_bind_PointAttribute_size_0=function(){return(gb=a._emscripten_bind_PointAttribute_size_0= +a.asm.s).apply(null,arguments)},hb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(hb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.t).apply(null,arguments)},ib=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(ib=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.u).apply(null,arguments)},jb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(jb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.v).apply(null, +arguments)},kb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(kb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.w).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(lb=a._emscripten_bind_PointAttribute_normalized_0=a.asm.x).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(mb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.y).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_byte_offset_0= +function(){return(nb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.z).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(ob=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.A).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(pb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.B).apply(null,arguments)},Ga=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Ga= +a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.C).apply(null,arguments)},qb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(qb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.D).apply(null,arguments)},rb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(rb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.E).apply(null,arguments)}, +sb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(sb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.F).apply(null,arguments)},tb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(tb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.G).apply(null,arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform___destroy___0= +a.asm.H).apply(null,arguments)},Ha=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Ha=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.I).apply(null,arguments)},vb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(vb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.J).apply(null,arguments)},wb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0= +function(){return(wb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.K).apply(null,arguments)},xb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(xb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.L).apply(null,arguments)},Ia=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ia=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.M).apply(null,arguments)},yb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(yb= +a._emscripten_bind_PointCloud_num_attributes_0=a.asm.N).apply(null,arguments)},zb=a._emscripten_bind_PointCloud_num_points_0=function(){return(zb=a._emscripten_bind_PointCloud_num_points_0=a.asm.O).apply(null,arguments)},Ab=a._emscripten_bind_PointCloud___destroy___0=function(){return(Ab=a._emscripten_bind_PointCloud___destroy___0=a.asm.P).apply(null,arguments)},Ja=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ja=a._emscripten_bind_Mesh_Mesh_0=a.asm.Q).apply(null,arguments)},Bb=a._emscripten_bind_Mesh_num_faces_0= +function(){return(Bb=a._emscripten_bind_Mesh_num_faces_0=a.asm.R).apply(null,arguments)},Cb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Cb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.S).apply(null,arguments)},Db=a._emscripten_bind_Mesh_num_points_0=function(){return(Db=a._emscripten_bind_Mesh_num_points_0=a.asm.T).apply(null,arguments)},Eb=a._emscripten_bind_Mesh___destroy___0=function(){return(Eb=a._emscripten_bind_Mesh___destroy___0=a.asm.U).apply(null,arguments)},Ka=a._emscripten_bind_Metadata_Metadata_0= +function(){return(Ka=a._emscripten_bind_Metadata_Metadata_0=a.asm.V).apply(null,arguments)},Fb=a._emscripten_bind_Metadata___destroy___0=function(){return(Fb=a._emscripten_bind_Metadata___destroy___0=a.asm.W).apply(null,arguments)},Gb=a._emscripten_bind_Status_code_0=function(){return(Gb=a._emscripten_bind_Status_code_0=a.asm.X).apply(null,arguments)},Hb=a._emscripten_bind_Status_ok_0=function(){return(Hb=a._emscripten_bind_Status_ok_0=a.asm.Y).apply(null,arguments)},Ib=a._emscripten_bind_Status_error_msg_0= +function(){return(Ib=a._emscripten_bind_Status_error_msg_0=a.asm.Z).apply(null,arguments)},Jb=a._emscripten_bind_Status___destroy___0=function(){return(Jb=a._emscripten_bind_Status___destroy___0=a.asm._).apply(null,arguments)},La=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(La=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.$).apply(null,arguments)},Kb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Kb=a._emscripten_bind_DracoFloat32Array_GetValue_1= +a.asm.aa).apply(null,arguments)},Lb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Lb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ba).apply(null,arguments)},Mb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Mb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.ca).apply(null,arguments)},Ma=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ma=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.da).apply(null,arguments)},Nb=a._emscripten_bind_DracoInt8Array_GetValue_1= +function(){return(Nb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ea).apply(null,arguments)},Ob=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Ob=a._emscripten_bind_DracoInt8Array_size_0=a.asm.fa).apply(null,arguments)},Pb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Pb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.ga).apply(null,arguments)},Na=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Na=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0= +a.asm.ha).apply(null,arguments)},Qb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Qb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.ia).apply(null,arguments)},Rb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Rb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ja).apply(null,arguments)},Sb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Sb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.ka).apply(null,arguments)},Oa=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0= +function(){return(Oa=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.la).apply(null,arguments)},Tb=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(Tb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.ma).apply(null,arguments)},Ub=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Ub=a._emscripten_bind_DracoInt16Array_size_0=a.asm.na).apply(null,arguments)},Vb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Vb=a._emscripten_bind_DracoInt16Array___destroy___0= +a.asm.oa).apply(null,arguments)},Pa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Pa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.pa).apply(null,arguments)},Wb=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(Wb=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.qa).apply(null,arguments)},Xb=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(Xb=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ra).apply(null,arguments)},Yb=a._emscripten_bind_DracoUInt16Array___destroy___0= +function(){return(Yb=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.sa).apply(null,arguments)},Qa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Qa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.ta).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(Zb=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.ua).apply(null,arguments)},$b=a._emscripten_bind_DracoInt32Array_size_0=function(){return($b=a._emscripten_bind_DracoInt32Array_size_0= +a.asm.va).apply(null,arguments)},ac=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ac=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.wa).apply(null,arguments)},Ra=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Ra=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.xa).apply(null,arguments)},bc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(bc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.ya).apply(null,arguments)}, +cc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(cc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.za).apply(null,arguments)},dc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(dc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Aa).apply(null,arguments)},Sa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(Sa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ba).apply(null,arguments)},ec=a._emscripten_bind_MetadataQuerier_HasEntry_2= +function(){return(ec=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Ca).apply(null,arguments)},fc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(fc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Da).apply(null,arguments)},gc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(gc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.Ea).apply(null,arguments)},hc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(hc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2= +a.asm.Fa).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ga).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(jc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ha).apply(null,arguments)},kc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.Ia).apply(null,arguments)}, +lc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(lc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ja).apply(null,arguments)},Ta=a._emscripten_bind_Decoder_Decoder_0=function(){return(Ta=a._emscripten_bind_Decoder_Decoder_0=a.asm.Ka).apply(null,arguments)},mc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(mc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.La).apply(null,arguments)},nc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(nc= +a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Ma).apply(null,arguments)},oc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(oc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Na).apply(null,arguments)},pc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(pc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.Oa).apply(null,arguments)},qc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(qc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3= +a.asm.Pa).apply(null,arguments)},rc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(rc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Qa).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ra).apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(tc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Sa).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttributeMetadata_2= +function(){return(uc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Ta).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(vc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Ua).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(wc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Va).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(xc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3= +a.asm.Wa).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(yc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.Xa).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(zc=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.Ya).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Ac=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.Za).apply(null, +arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm._a).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Cc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.$a).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.ab).apply(null, +arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.bb).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.cb).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3= +a.asm.db).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.eb).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.fb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Jc=a._emscripten_bind_Decoder_SkipAttributeTransform_1= +a.asm.gb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Kc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.hb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(Lc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.ib).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Mc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2= +a.asm.jb).apply(null,arguments)},Nc=a._emscripten_bind_Decoder___destroy___0=function(){return(Nc=a._emscripten_bind_Decoder___destroy___0=a.asm.kb).apply(null,arguments)},Oc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Oc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.lb).apply(null,arguments)},Pc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Pc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM= +a.asm.mb).apply(null,arguments)},Qc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Qc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.nb).apply(null,arguments)},Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.ob).apply(null,arguments)},Sc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID= +function(){return(Sc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.pb).apply(null,arguments)},Tc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Tc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.qb).apply(null,arguments)},Uc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(Uc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.rb).apply(null,arguments)},Vc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR= +function(){return(Vc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.sb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.tb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.ub).apply(null,arguments)},Yc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE= +function(){return(Yc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.vb).apply(null,arguments)},Zc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(Zc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.wb).apply(null,arguments)},$c=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return($c=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.xb).apply(null,arguments)},ad=a._emscripten_enum_draco_DataType_DT_INVALID= +function(){return(ad=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.yb).apply(null,arguments)},bd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(bd=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.zb).apply(null,arguments)},cd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(cd=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.Ab).apply(null,arguments)},dd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(dd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Bb).apply(null, +arguments)},ed=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(ed=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Cb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(fd=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Db).apply(null,arguments)},gd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(gd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Eb).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(hd= +a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Fb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(id=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Gb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Hb).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Ib).apply(null, +arguments)},ld=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(ld=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Jb).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Kb).apply(null,arguments)},nd=a._emscripten_enum_draco_StatusCode_OK=function(){return(nd=a._emscripten_enum_draco_StatusCode_OK=a.asm.Lb).apply(null,arguments)},od=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(od= +a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Mb).apply(null,arguments)},pd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(pd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Nb).apply(null,arguments)},qd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(qd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.Ob).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(rd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION= +a.asm.Pb).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(sd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Qb).apply(null,arguments)},$a=a._malloc=function(){return($a=a._malloc=a.asm.Rb).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Sb).apply(null,arguments)};var ja;fa=function b(){ja||aa();ja||(fa=b)};a.run=aa;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>= +1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var g=0;gb.byteLength)return a.INVALID_GEOMETRY_TYPE;switch(b[7]){case 0:return a.POINT_CLOUD;case 1:return a.TRIANGULAR_MESH;default:return a.INVALID_GEOMETRY_TYPE}};return n.ready}}(); "object"===typeof exports&&"object"===typeof module?module.exports=DracoDecoderModule:"function"===typeof define&&define.amd?define([],function(){return DracoDecoderModule}):"object"===typeof exports&&(exports.DracoDecoderModule=DracoDecoderModule); diff --git a/javascript/npm/draco3d/README.md b/javascript/npm/draco3d/README.md index ec38a823..139d33ed 100644 --- a/javascript/npm/draco3d/README.md +++ b/javascript/npm/draco3d/README.md @@ -6,7 +6,7 @@ News ======= -Check out the [README](https://github.com/google/draco/blob/1.4.3/README.md) +Check out the [README](https://github.com/google/draco/blob/1.5.1/README.md) file for news about this release. Description diff --git a/javascript/npm/draco3d/draco_decoder.wasm b/javascript/npm/draco3d/draco_decoder.wasm index eb216c85..5d31f0b4 100644 Binary files a/javascript/npm/draco3d/draco_decoder.wasm and b/javascript/npm/draco3d/draco_decoder.wasm differ diff --git a/javascript/npm/draco3d/draco_decoder_nodejs.js b/javascript/npm/draco3d/draco_decoder_nodejs.js index 22964527..7d9ac0b5 100644 --- a/javascript/npm/draco3d/draco_decoder_nodejs.js +++ b/javascript/npm/draco3d/draco_decoder_nodejs.js @@ -1,117 +1,116 @@ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(m){var n=0;return function(){return n>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+h+"$"+k),$jscomp.defineProperty(q,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:n})))}; -$jscomp.polyfill("Promise",function(m){function n(){this.batch_=null}function h(g){return g instanceof k?g:new k(function(p,u){p(g)})}if(m&&(!($jscomp.FORCE_POLYFILL_PROMISE||$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&"undefined"===typeof $jscomp.global.PromiseRejectionEvent)||!$jscomp.global.Promise||-1===$jscomp.global.Promise.toString().indexOf("[native code]")))return m;n.prototype.asyncExecute=function(g){if(null==this.batch_){this.batch_=[];var p=this;this.asyncExecuteFunction(function(){p.executeBatch_()})}this.batch_.push(g)}; -var q=$jscomp.global.setTimeout;n.prototype.asyncExecuteFunction=function(g){q(g,0)};n.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var g=this.batch_;this.batch_=[];for(var p=0;p=z}},"es6","es3"); -$jscomp.polyfill("Array.prototype.copyWithin",function(m){function n(h){h=Number(h);return Infinity===h||-Infinity===h?h:h|0}return m?m:function(h,q,k){var z=this.length;h=n(h);q=n(q);k=void 0===k?z:n(k);h=0>h?Math.max(z+h,0):Math.min(h,z);q=0>q?Math.max(z+q,0):Math.min(q,z);k=0>k?Math.max(z+k,0):Math.min(k,z);if(hq;)--k in this?this[--h]=this[k]:delete this[--h];return this}},"es6","es3"); -$jscomp.typedArrayCopyWithin=function(m){return m?m:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.owns=function(k,n){return Object.prototype.hasOwnProperty.call(k,n)};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1; +$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(k,n,l){if(k==Array.prototype||k==Object.prototype)return k;k[n]=l.value;return k};$jscomp.getGlobal=function(k){k=["object"==typeof globalThis&&globalThis,k,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var n=0;n>>0,$jscomp.propertyToPolyfillSymbol[h]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(h):$jscomp.POLYFILL_PREFIX+l+"$"+h),$jscomp.defineProperty(p,$jscomp.propertyToPolyfillSymbol[h],{configurable:!0,writable:!0,value:n})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(k,n){for(var l=1;l=A}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(k){function n(l){l=Number(l);return Infinity===l||-Infinity===l?l:l|0}return k?k:function(l,p,h){var A=this.length;l=n(l);p=n(p);h=void 0===h?A:n(h);l=0>l?Math.max(A+l,0):Math.min(l,A);p=0>p?Math.max(A+p,0):Math.min(p,A);h=0>h?Math.max(A+h,0):Math.min(h,A);if(lp;)--h in this?this[--l]=this[h]:delete this[--l];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(k){return k?k:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); $jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); -var DracoDecoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(n){function h(e){return a.locateFile?a.locateFile(e,W):W+e}function q(e,b){e||p("Assertion failed: "+b)}function k(e,b,c){var d=b+c;for(c=b;e[c]&&!(c>=d);)++c;if(16f?d+=String.fromCharCode(f):(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else d+=String.fromCharCode(f)}return d}function z(e,b){return e?k(ja,e,b):""}function g(e){Ba=e;a.HEAP8=Z=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=F=new Int32Array(e);a.HEAPU8=ja=new Uint8Array(e);a.HEAPU16=new Uint16Array(e);a.HEAPU32=new Uint32Array(e);a.HEAPF32=new Float32Array(e);a.HEAPF64=new Float64Array(e)} -function p(e){if(a.onAbort)a.onAbort(e);e="Aborted("+e+")";fa(e);Ca=!0;e=new WebAssembly.RuntimeError(e+". Build with -s ASSERTIONS=1 for more info.");sa(e);throw e;}function u(e){try{if(e==P&&ka)return new Uint8Array(ka);if(ta)return ta(e);throw"both async and sync fetching of the wasm failed";}catch(b){p(b)}}function A(){if(!ka&&(Da||la)){if("function"===typeof fetch&&!P.startsWith("file://"))return fetch(P,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+ -P+"'";return e.arrayBuffer()}).catch(function(){return u(P)});if(ua)return new Promise(function(e,b){ua(P,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return u(P)})}function E(e){for(;0=pa.length&&(pa.length=e+1),pa[e]=b=Ea.get(e));return b}function U(e){this.excPtr=e;this.ptr= -e-16;this.set_type=function(b){F[this.ptr+4>>2]=b};this.get_type=function(){return F[this.ptr+4>>2]};this.set_destructor=function(b){F[this.ptr+8>>2]=b};this.get_destructor=function(){return F[this.ptr+8>>2]};this.set_refcount=function(b){F[this.ptr>>2]=b};this.set_caught=function(b){Z[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Z[this.ptr+12>>0]};this.set_rethrown=function(b){Z[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Z[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b); -this.set_destructor(c);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){F[this.ptr>>2]+=1};this.release_ref=function(){var b=F[this.ptr>>2];F[this.ptr>>2]=b-1;return 1===b}}function V(e){function b(){if(!qa&&(qa=!0,a.calledRun=!0,!Ca)){Fa=!0;E(va);Ga(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ha.unshift(a.postRun.shift());E(Ha)}}if(!(0=d&&(d=65536+((d&1023)<< -10)|e.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1);c=0;d=b.length;if(0=t){var X=e.charCodeAt(++f);t=65536+((t&1023)<<10)|X&1023}if(127>=t){if(c>=d)break;b[c++]=t}else{if(2047>=t){if(c+1>=d)break;b[c++]=192|t>>6}else{if(65535>=t){if(c+2>=d)break;b[c++]=224|t>>12}else{if(c+3>=d)break;b[c++]=240|t>>18;b[c++]=128|t>>12&63}b[c++]=128|t>>6&63}b[c++]=128|t&63}}b[c]=0}e=r.alloc(b,Z);r.copy(b,Z, -e);return e}return e}function wa(e){if("object"===typeof e){var b=r.alloc(e,Z);r.copy(e,Z,b);return b}return e}function aa(){throw"cannot construct a VoidPtr, no constructor in IDL";}function S(){this.ptr=Ja();x(S)[this.ptr]=this}function Q(){this.ptr=Ka();x(Q)[this.ptr]=this}function Y(){this.ptr=La();x(Y)[this.ptr]=this}function w(){this.ptr=Ma();x(w)[this.ptr]=this}function C(){this.ptr=Na();x(C)[this.ptr]=this}function G(){this.ptr=Oa();x(G)[this.ptr]=this}function H(){this.ptr=Pa();x(H)[this.ptr]= -this}function D(){this.ptr=Qa();x(D)[this.ptr]=this}function T(){this.ptr=Ra();x(T)[this.ptr]=this}function B(){throw"cannot construct a Status, no constructor in IDL";}function I(){this.ptr=Sa();x(I)[this.ptr]=this}function J(){this.ptr=Ta();x(J)[this.ptr]=this}function K(){this.ptr=Ua();x(K)[this.ptr]=this}function L(){this.ptr=Va();x(L)[this.ptr]=this}function M(){this.ptr=Wa();x(M)[this.ptr]=this}function N(){this.ptr=Xa();x(N)[this.ptr]=this}function O(){this.ptr=Ya();x(O)[this.ptr]=this}function y(){this.ptr= -Za();x(y)[this.ptr]=this}function l(){this.ptr=$a();x(l)[this.ptr]=this}n=n||{};var a="undefined"!==typeof n?n:{},Ga,sa;a.ready=new Promise(function(e,b){Ga=e;sa=b});var ab=!1,bb=!1;a.onRuntimeInitialized=function(){ab=!0;if(bb&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){bb=!0;if(ab&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(e){if("string"!==typeof e)return!1;e=e.split(".");return 2>e.length||3=e[1]?!0:0!=e[0]||10>2]},getStr:function(e){return z(e)},get64:function(e,b){return e}},zd={h:function(e){return db(e+16)+16},g:function(e,b,c){(new U(e)).init(b,c);yd++;throw e;},a:function(){p("")},d:function(e,b,c){ja.copyWithin(e,b,b+c)},e:function(e){var b=ja.length;e>>>=0;if(2147483648=c;c*=2){var d= -b*(1+.2/c);d=Math.min(d,e+100663296);var f=Math,t=f.min;d=Math.max(e,d);0>>16);g(ra.buffer);var X=1;break a}catch(ya){}X=void 0}if(X)return!0}return!1},f:function(e){return 0},c:function(e,b,c,d,f){},b:function(e,b,c,d){for(var f=0,t=0;t>2],ya=F[b+4>>2];b+=8;for(var za=0;za>2]=f;return 0}};(function(){function e(f,t){a.asm=f.exports;ra=a.asm.i;g(ra.buffer); -Ea=a.asm.k;va.unshift(a.asm.j);da--;a.monitorRunDependencies&&a.monitorRunDependencies(da);0==da&&(null!==xa&&(clearInterval(xa),xa=null),na&&(f=na,na=null,f()))}function b(f){e(f.instance)}function c(f){return A().then(function(t){return WebAssembly.instantiate(t,d)}).then(function(t){return t}).then(f,function(t){fa("failed to asynchronously prepare wasm: "+t);p(t)})}var d={a:zd};da++;a.monitorRunDependencies&&a.monitorRunDependencies(da);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(f){return fa("Module.instantiateWasm callback failed with error: "+ -f),!1}(function(){return ka||"function"!==typeof WebAssembly.instantiateStreaming||P.startsWith("data:application/octet-stream;base64,")||P.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(P,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,d).then(b,function(t){fa("wasm streaming compile failed: "+t);fa("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(sa);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors= -a.asm.j).apply(null,arguments)};var eb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(eb=a._emscripten_bind_VoidPtr___destroy___0=a.asm.l).apply(null,arguments)},Ja=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ja=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.m).apply(null,arguments)},fb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(fb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.n).apply(null,arguments)},gb=a._emscripten_bind_DecoderBuffer___destroy___0= -function(){return(gb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.o).apply(null,arguments)},Ka=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ka=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.p).apply(null,arguments)},hb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(hb=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.q).apply(null,arguments)},ib=a._emscripten_bind_AttributeTransformData___destroy___0= -function(){return(ib=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.r).apply(null,arguments)},La=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(La=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.s).apply(null,arguments)},jb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(jb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.t).apply(null,arguments)},Ma=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ma= -a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.u).apply(null,arguments)},kb=a._emscripten_bind_PointAttribute_size_0=function(){return(kb=a._emscripten_bind_PointAttribute_size_0=a.asm.v).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(lb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.w).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(mb=a._emscripten_bind_PointAttribute_attribute_type_0= -a.asm.x).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(nb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.y).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_num_components_0=function(){return(ob=a._emscripten_bind_PointAttribute_num_components_0=a.asm.z).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(pb=a._emscripten_bind_PointAttribute_normalized_0=a.asm.A).apply(null,arguments)},qb=a._emscripten_bind_PointAttribute_byte_stride_0= -function(){return(qb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.B).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(rb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.C).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(sb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.D).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(tb=a._emscripten_bind_PointAttribute___destroy___0= -a.asm.E).apply(null,arguments)},Na=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Na=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.F).apply(null,arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.G).apply(null,arguments)},vb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0= -function(){return(vb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.H).apply(null,arguments)},wb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(wb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.I).apply(null,arguments)},xb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.J).apply(null,arguments)},yb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0= -function(){return(yb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.K).apply(null,arguments)},Oa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Oa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.L).apply(null,arguments)},zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.M).apply(null, -arguments)},Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.N).apply(null,arguments)},Bb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Bb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.O).apply(null,arguments)},Pa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Pa=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.P).apply(null, -arguments)},Cb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Cb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.Q).apply(null,arguments)},Db=a._emscripten_bind_PointCloud_num_points_0=function(){return(Db=a._emscripten_bind_PointCloud_num_points_0=a.asm.R).apply(null,arguments)},Eb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Eb=a._emscripten_bind_PointCloud___destroy___0=a.asm.S).apply(null,arguments)},Qa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Qa= -a._emscripten_bind_Mesh_Mesh_0=a.asm.T).apply(null,arguments)},Fb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Fb=a._emscripten_bind_Mesh_num_faces_0=a.asm.U).apply(null,arguments)},Gb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Gb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.V).apply(null,arguments)},Hb=a._emscripten_bind_Mesh_num_points_0=function(){return(Hb=a._emscripten_bind_Mesh_num_points_0=a.asm.W).apply(null,arguments)},Ib=a._emscripten_bind_Mesh___destroy___0=function(){return(Ib= -a._emscripten_bind_Mesh___destroy___0=a.asm.X).apply(null,arguments)},Ra=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ra=a._emscripten_bind_Metadata_Metadata_0=a.asm.Y).apply(null,arguments)},Jb=a._emscripten_bind_Metadata___destroy___0=function(){return(Jb=a._emscripten_bind_Metadata___destroy___0=a.asm.Z).apply(null,arguments)},Kb=a._emscripten_bind_Status_code_0=function(){return(Kb=a._emscripten_bind_Status_code_0=a.asm._).apply(null,arguments)},Lb=a._emscripten_bind_Status_ok_0=function(){return(Lb= -a._emscripten_bind_Status_ok_0=a.asm.$).apply(null,arguments)},Mb=a._emscripten_bind_Status_error_msg_0=function(){return(Mb=a._emscripten_bind_Status_error_msg_0=a.asm.aa).apply(null,arguments)},Nb=a._emscripten_bind_Status___destroy___0=function(){return(Nb=a._emscripten_bind_Status___destroy___0=a.asm.ba).apply(null,arguments)},Sa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Sa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.ca).apply(null,arguments)}, -Ob=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Ob=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.da).apply(null,arguments)},Pb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Pb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ea).apply(null,arguments)},Qb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Qb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.fa).apply(null,arguments)},Ta=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= -function(){return(Ta=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.ga).apply(null,arguments)},Rb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Rb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ha).apply(null,arguments)},Sb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Sb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.ia).apply(null,arguments)},Tb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Tb=a._emscripten_bind_DracoInt8Array___destroy___0= -a.asm.ja).apply(null,arguments)},Ua=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Ua=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ka).apply(null,arguments)},Ub=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Ub=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.la).apply(null,arguments)},Vb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Vb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ma).apply(null,arguments)},Wb=a._emscripten_bind_DracoUInt8Array___destroy___0= -function(){return(Wb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.na).apply(null,arguments)},Va=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Va=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.oa).apply(null,arguments)},Xb=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(Xb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.pa).apply(null,arguments)},Yb=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Yb=a._emscripten_bind_DracoInt16Array_size_0= -a.asm.qa).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Zb=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.ra).apply(null,arguments)},Wa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Wa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.sa).apply(null,arguments)},$b=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return($b=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.ta).apply(null,arguments)}, -ac=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(ac=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ua).apply(null,arguments)},bc=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(bc=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.va).apply(null,arguments)},Xa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Xa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.wa).apply(null,arguments)},cc=a._emscripten_bind_DracoInt32Array_GetValue_1= -function(){return(cc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.xa).apply(null,arguments)},dc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(dc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.ya).apply(null,arguments)},ec=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ec=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.za).apply(null,arguments)},Ya=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Ya=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0= -a.asm.Aa).apply(null,arguments)},fc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(fc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.Ba).apply(null,arguments)},gc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(gc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.Ca).apply(null,arguments)},hc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(hc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Da).apply(null,arguments)},Za=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= -function(){return(Za=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ea).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Fa).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(jc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Ga).apply(null,arguments)},kc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= -a.asm.Ha).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Ia).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(mc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ja).apply(null,arguments)},nc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(nc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ka).apply(null,arguments)}, -oc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(oc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.La).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(pc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ma).apply(null,arguments)},$a=a._emscripten_bind_Decoder_Decoder_0=function(){return($a=a._emscripten_bind_Decoder_Decoder_0=a.asm.Na).apply(null,arguments)},qc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(qc= -a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.Oa).apply(null,arguments)},rc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(rc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Pa).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Qa).apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(tc=a._emscripten_bind_Decoder_GetAttributeIdByName_2= -a.asm.Ra).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(uc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Sa).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Ta).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(wc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ua).apply(null,arguments)}, -xc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(xc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Va).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(yc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Wa).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(zc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Xa).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2= -function(){return(Ac=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Ya).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Bc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Za).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Cc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm._a).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Dc= -a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.$a).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.ab).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.bb).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Gc= -a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.cb).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.db).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.eb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= -function(){return(Jc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.fb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.gb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.hb).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5= -function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.ib).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Nc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.jb).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Oc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.kb).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2= -function(){return(Pc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.lb).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Qc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.mb).apply(null,arguments)},Rc=a._emscripten_bind_Decoder___destroy___0=function(){return(Rc=a._emscripten_bind_Decoder___destroy___0=a.asm.nb).apply(null,arguments)},Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= -a.asm.ob).apply(null,arguments)},Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.pb).apply(null,arguments)},Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.qb).apply(null,arguments)},Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM= -function(){return(Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.rb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.sb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.tb).apply(null,arguments)},Yc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL= -function(){return(Yc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.ub).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.vb).apply(null,arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.wb).apply(null,arguments)},ad=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= -function(){return(ad=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.xb).apply(null,arguments)},bd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(bd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.yb).apply(null,arguments)},cd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(cd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.zb).apply(null,arguments)},dd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= -function(){return(dd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Ab).apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ed=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.Bb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(fd=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.Cb).apply(null,arguments)},gd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(gd=a._emscripten_enum_draco_DataType_DT_UINT8= -a.asm.Db).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Eb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(id=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Fb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(jd=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Gb).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_UINT32= -function(){return(kd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Hb).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(ld=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Ib).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(md=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Jb).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(nd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Kb).apply(null, -arguments)},od=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(od=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Lb).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(pd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Mb).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(qd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Nb).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_OK=function(){return(rd= -a._emscripten_enum_draco_StatusCode_OK=a.asm.Ob).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(sd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Pb).apply(null,arguments)},td=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(td=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Qb).apply(null,arguments)},ud=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(ud=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= -a.asm.Rb).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(vd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Sb).apply(null,arguments)},wd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(wd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Tb).apply(null,arguments)},db=a._malloc=function(){return(db=a._malloc=a.asm.Ub).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Vb).apply(null,arguments)}; -var qa;na=function b(){qa||V();qa||(na=b)};a.run=V;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(q(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var f=0;fb.byteLength)return a.INVALID_GEOMETRY_TYPE;switch(b[7]){case 0:return a.POINT_CLOUD;case 1:return a.TRIANGULAR_MESH;default:return a.INVALID_GEOMETRY_TYPE}};return n.ready}}(); +var DracoDecoderModule=function(){var k="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(k=k||__filename);return function(n){function l(e){return a.locateFile?a.locateFile(e,V):V+e}function p(e,b,c){var d=b+c;for(c=b;e[c]&&!(c>=d);)++c;if(16g?d+=String.fromCharCode(g):(g-=65536,d+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else d+=String.fromCharCode(g)}return d}function h(e,b){return e?p(ea,e,b):""}function A(e){ya=e;a.HEAP8=Y=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=G=new Int32Array(e);a.HEAPU8=ea=new Uint8Array(e);a.HEAPU16=new Uint16Array(e);a.HEAPU32=new Uint32Array(e);a.HEAPF32=new Float32Array(e);a.HEAPF64=new Float64Array(e)}function f(e){if(a.onAbort)a.onAbort(e); +e="Aborted("+e+")";ca(e);za=!0;e=new WebAssembly.RuntimeError(e+". Build with -s ASSERTIONS=1 for more info.");oa(e);throw e;}function q(e){try{if(e==R&&fa)return new Uint8Array(fa);if(pa)return pa(e);throw"both async and sync fetching of the wasm failed";}catch(b){f(b)}}function v(){if(!fa&&(Aa||ha)){if("function"===typeof fetch&&!R.startsWith("file://"))return fetch(R,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+R+"'";return e.arrayBuffer()}).catch(function(){return q(R)}); +if(qa)return new Promise(function(e,b){qa(R,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return q(R)})}function z(e){for(;0=ka.length&&(ka.length=e+1),ka[e]=b=Ba.get(e));return b}function da(e){this.excPtr=e;this.ptr=e-16;this.set_type=function(b){G[this.ptr+4>>2]=b};this.get_type= +function(){return G[this.ptr+4>>2]};this.set_destructor=function(b){G[this.ptr+8>>2]=b};this.get_destructor=function(){return G[this.ptr+8>>2]};this.set_refcount=function(b){G[this.ptr>>2]=b};this.set_caught=function(b){Y[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Y[this.ptr+12>>0]};this.set_rethrown=function(b){Y[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Y[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b);this.set_destructor(c);this.set_refcount(0);this.set_caught(!1); +this.set_rethrown(!1)};this.add_ref=function(){G[this.ptr>>2]+=1};this.release_ref=function(){var b=G[this.ptr>>2];G[this.ptr>>2]=b-1;return 1===b}}function Q(e){function b(){if(!la&&(la=!0,a.calledRun=!0,!za)){Ca=!0;z(ra);Da(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ea.unshift(a.postRun.shift());z(Ea)}}if(!(0=d&&(d=65536+((d&1023)<<10)|e.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1); +c=0;d=b.length;if(0=t){var W=e.charCodeAt(++g);t=65536+((t&1023)<<10)|W&1023}if(127>=t){if(c>=d)break;b[c++]=t}else{if(2047>=t){if(c+1>=d)break;b[c++]=192|t>>6}else{if(65535>=t){if(c+2>=d)break;b[c++]=224|t>>12}else{if(c+3>=d)break;b[c++]=240|t>>18;b[c++]=128|t>>12&63}b[c++]=128|t>>6&63}b[c++]=128|t&63}}b[c]=0}e=r.alloc(b,Y);r.copy(b,Y,e);return e}return e}function sa(e){if("object"===typeof e){var b=r.alloc(e,Y);r.copy(e, +Y,b);return b}return e}function Z(){throw"cannot construct a VoidPtr, no constructor in IDL";}function T(){this.ptr=Ga();x(T)[this.ptr]=this}function S(){this.ptr=Ha();x(S)[this.ptr]=this}function X(){this.ptr=Ia();x(X)[this.ptr]=this}function w(){this.ptr=Ja();x(w)[this.ptr]=this}function C(){this.ptr=Ka();x(C)[this.ptr]=this}function H(){this.ptr=La();x(H)[this.ptr]=this}function I(){this.ptr=Ma();x(I)[this.ptr]=this}function E(){this.ptr=Na();x(E)[this.ptr]=this}function U(){this.ptr=Oa();x(U)[this.ptr]= +this}function B(){throw"cannot construct a Status, no constructor in IDL";}function J(){this.ptr=Pa();x(J)[this.ptr]=this}function K(){this.ptr=Qa();x(K)[this.ptr]=this}function L(){this.ptr=Ra();x(L)[this.ptr]=this}function M(){this.ptr=Sa();x(M)[this.ptr]=this}function N(){this.ptr=Ta();x(N)[this.ptr]=this}function O(){this.ptr=Ua();x(O)[this.ptr]=this}function P(){this.ptr=Va();x(P)[this.ptr]=this}function y(){this.ptr=Wa();x(y)[this.ptr]=this}function m(){this.ptr=Xa();x(m)[this.ptr]=this}n=n|| +{};var a="undefined"!==typeof n?n:{},Ya=Object.assign,Da,oa;a.ready=new Promise(function(e,b){Da=e;oa=b});var Za=!1,$a=!1;a.onRuntimeInitialized=function(){Za=!0;if($a&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){$a=!0;if(Za&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(e){if("string"!==typeof e)return!1;e=e.split(".");return 2>e.length||3=e[1]?!0:0!=e[0]||10>2]},getStr:function(e){return h(e)}, +get64:function(e,b){return e}},zd={h:function(e){return db(e+16)+16},g:function(e,b,c){(new da(e)).init(b,c);yd++;throw e;},a:function(){f("")},f:function(e,b,c){ea.copyWithin(e,b,b+c)},d:function(e){var b=ea.length;e>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,e+100663296);var g=Math,t=g.min;d=Math.max(e,d);0>>16);A(na.buffer);var W=1;break a}catch(va){}W=void 0}if(W)return!0}return!1}, +e:function(e){return 0},c:function(e,b,c,d,g){},b:function(e,b,c,d){for(var g=0,t=0;t>2],va=G[b+4>>2];b+=8;for(var wa=0;wa>2]=g;return 0}};(function(){function e(g,t){a.asm=g.exports;na=a.asm.i;A(na.buffer);Ba=a.asm.k;ra.unshift(a.asm.j);ba--;a.monitorRunDependencies&&a.monitorRunDependencies(ba);0==ba&&(null!==ua&&(clearInterval(ua),ua=null),ia&&(g=ia,ia=null,g()))}function b(g){e(g.instance)}function c(g){return v().then(function(t){return WebAssembly.instantiate(t, +d)}).then(function(t){return t}).then(g,function(t){ca("failed to asynchronously prepare wasm: "+t);f(t)})}var d={a:zd};ba++;a.monitorRunDependencies&&a.monitorRunDependencies(ba);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(g){return ca("Module.instantiateWasm callback failed with error: "+g),!1}(function(){return fa||"function"!==typeof WebAssembly.instantiateStreaming||R.startsWith("data:application/octet-stream;base64,")||R.startsWith("file://")||"function"!==typeof fetch?c(b): +fetch(R,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g,d).then(b,function(t){ca("wasm streaming compile failed: "+t);ca("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(oa);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.j).apply(null,arguments)};var eb=a._emscripten_bind_VoidPtr___destroy___0=function(){return(eb=a._emscripten_bind_VoidPtr___destroy___0=a.asm.l).apply(null,arguments)},Ga=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0= +function(){return(Ga=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.m).apply(null,arguments)},fb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(fb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.n).apply(null,arguments)},gb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(gb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.o).apply(null,arguments)},Ha=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ha=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0= +a.asm.p).apply(null,arguments)},hb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(hb=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.q).apply(null,arguments)},ib=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(ib=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.r).apply(null,arguments)},Ia=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ia=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0= +a.asm.s).apply(null,arguments)},jb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(jb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.t).apply(null,arguments)},Ja=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ja=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.u).apply(null,arguments)},kb=a._emscripten_bind_PointAttribute_size_0=function(){return(kb=a._emscripten_bind_PointAttribute_size_0=a.asm.v).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0= +function(){return(lb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.w).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(mb=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.x).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(nb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.y).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_num_components_0=function(){return(ob=a._emscripten_bind_PointAttribute_num_components_0= +a.asm.z).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(pb=a._emscripten_bind_PointAttribute_normalized_0=a.asm.A).apply(null,arguments)},qb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(qb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.B).apply(null,arguments)},rb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(rb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.C).apply(null,arguments)},sb=a._emscripten_bind_PointAttribute_unique_id_0= +function(){return(sb=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.D).apply(null,arguments)},tb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(tb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.E).apply(null,arguments)},Ka=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Ka=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.F).apply(null,arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1= +function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.G).apply(null,arguments)},vb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(vb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.H).apply(null,arguments)},wb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(wb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.I).apply(null,arguments)},xb= +a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(xb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.J).apply(null,arguments)},yb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(yb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.K).apply(null,arguments)},La=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(La=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0= +a.asm.L).apply(null,arguments)},zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.M).apply(null,arguments)},Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.N).apply(null,arguments)},Bb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Bb= +a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.O).apply(null,arguments)},Ma=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ma=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.P).apply(null,arguments)},Cb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Cb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.Q).apply(null,arguments)},Db=a._emscripten_bind_PointCloud_num_points_0=function(){return(Db=a._emscripten_bind_PointCloud_num_points_0=a.asm.R).apply(null, +arguments)},Eb=a._emscripten_bind_PointCloud___destroy___0=function(){return(Eb=a._emscripten_bind_PointCloud___destroy___0=a.asm.S).apply(null,arguments)},Na=a._emscripten_bind_Mesh_Mesh_0=function(){return(Na=a._emscripten_bind_Mesh_Mesh_0=a.asm.T).apply(null,arguments)},Fb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Fb=a._emscripten_bind_Mesh_num_faces_0=a.asm.U).apply(null,arguments)},Gb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Gb=a._emscripten_bind_Mesh_num_attributes_0= +a.asm.V).apply(null,arguments)},Hb=a._emscripten_bind_Mesh_num_points_0=function(){return(Hb=a._emscripten_bind_Mesh_num_points_0=a.asm.W).apply(null,arguments)},Ib=a._emscripten_bind_Mesh___destroy___0=function(){return(Ib=a._emscripten_bind_Mesh___destroy___0=a.asm.X).apply(null,arguments)},Oa=a._emscripten_bind_Metadata_Metadata_0=function(){return(Oa=a._emscripten_bind_Metadata_Metadata_0=a.asm.Y).apply(null,arguments)},Jb=a._emscripten_bind_Metadata___destroy___0=function(){return(Jb=a._emscripten_bind_Metadata___destroy___0= +a.asm.Z).apply(null,arguments)},Kb=a._emscripten_bind_Status_code_0=function(){return(Kb=a._emscripten_bind_Status_code_0=a.asm._).apply(null,arguments)},Lb=a._emscripten_bind_Status_ok_0=function(){return(Lb=a._emscripten_bind_Status_ok_0=a.asm.$).apply(null,arguments)},Mb=a._emscripten_bind_Status_error_msg_0=function(){return(Mb=a._emscripten_bind_Status_error_msg_0=a.asm.aa).apply(null,arguments)},Nb=a._emscripten_bind_Status___destroy___0=function(){return(Nb=a._emscripten_bind_Status___destroy___0= +a.asm.ba).apply(null,arguments)},Pa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Pa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.ca).apply(null,arguments)},Ob=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Ob=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.da).apply(null,arguments)},Pb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Pb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ea).apply(null,arguments)}, +Qb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Qb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.fa).apply(null,arguments)},Qa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Qa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.ga).apply(null,arguments)},Rb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Rb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ha).apply(null,arguments)},Sb=a._emscripten_bind_DracoInt8Array_size_0= +function(){return(Sb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.ia).apply(null,arguments)},Tb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Tb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.ja).apply(null,arguments)},Ra=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Ra=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ka).apply(null,arguments)},Ub=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Ub=a._emscripten_bind_DracoUInt8Array_GetValue_1= +a.asm.la).apply(null,arguments)},Vb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Vb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ma).apply(null,arguments)},Wb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Wb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.na).apply(null,arguments)},Sa=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Sa=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.oa).apply(null,arguments)},Xb=a._emscripten_bind_DracoInt16Array_GetValue_1= +function(){return(Xb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.pa).apply(null,arguments)},Yb=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Yb=a._emscripten_bind_DracoInt16Array_size_0=a.asm.qa).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Zb=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.ra).apply(null,arguments)},Ta=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Ta=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0= +a.asm.sa).apply(null,arguments)},$b=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return($b=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.ta).apply(null,arguments)},ac=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(ac=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ua).apply(null,arguments)},bc=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(bc=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.va).apply(null,arguments)},Ua=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0= +function(){return(Ua=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.wa).apply(null,arguments)},cc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(cc=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.xa).apply(null,arguments)},dc=a._emscripten_bind_DracoInt32Array_size_0=function(){return(dc=a._emscripten_bind_DracoInt32Array_size_0=a.asm.ya).apply(null,arguments)},ec=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ec=a._emscripten_bind_DracoInt32Array___destroy___0= +a.asm.za).apply(null,arguments)},Va=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Va=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.Aa).apply(null,arguments)},fc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(fc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.Ba).apply(null,arguments)},gc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(gc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.Ca).apply(null,arguments)},hc=a._emscripten_bind_DracoUInt32Array___destroy___0= +function(){return(hc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Da).apply(null,arguments)},Wa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(Wa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ea).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Fa).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(jc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2= +a.asm.Ga).apply(null,arguments)},kc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.Ha).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(lc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Ia).apply(null,arguments)},mc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(mc=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ja).apply(null, +arguments)},nc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(nc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ka).apply(null,arguments)},oc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(oc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.La).apply(null,arguments)},pc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(pc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ma).apply(null,arguments)},Xa=a._emscripten_bind_Decoder_Decoder_0= +function(){return(Xa=a._emscripten_bind_Decoder_Decoder_0=a.asm.Na).apply(null,arguments)},qc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(qc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.Oa).apply(null,arguments)},rc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(rc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Pa).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeId_2= +a.asm.Qa).apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(tc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.Ra).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(uc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Sa).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(vc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Ta).apply(null,arguments)}, +wc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(wc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ua).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(xc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Va).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(yc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Wa).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetFaceFromMesh_3= +function(){return(zc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Xa).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(Ac=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Ya).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Bc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Za).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Cc= +a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm._a).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.$a).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.ab).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3= +a.asm.bb).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.cb).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.db).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3= +a.asm.eb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=function(){return(Jc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.fb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Kc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.gb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Lc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3= +a.asm.hb).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Mc=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.ib).apply(null,arguments)},Nc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Nc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.jb).apply(null,arguments)},Oc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Oc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1= +a.asm.kb).apply(null,arguments)},Pc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(Pc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.lb).apply(null,arguments)},Qc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Qc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.mb).apply(null,arguments)},Rc=a._emscripten_bind_Decoder___destroy___0=function(){return(Rc=a._emscripten_bind_Decoder___destroy___0=a.asm.nb).apply(null,arguments)},Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= +function(){return(Sc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.ob).apply(null,arguments)},Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Tc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.pb).apply(null,arguments)},Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Uc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM= +a.asm.qb).apply(null,arguments)},Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(Vc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.rb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.sb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION= +a.asm.tb).apply(null,arguments)},Yc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(Yc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.ub).apply(null,arguments)},Zc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Zc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.vb).apply(null,arguments)},$c=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return($c=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD= +a.asm.wb).apply(null,arguments)},ad=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(ad=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.xb).apply(null,arguments)},bd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(bd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.yb).apply(null,arguments)},cd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(cd=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD= +a.asm.zb).apply(null,arguments)},dd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(dd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Ab).apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ed=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.Bb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(fd=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.Cb).apply(null,arguments)},gd= +a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(gd=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.Db).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Eb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(id=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Fb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(jd=a._emscripten_enum_draco_DataType_DT_INT32= +a.asm.Gb).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(kd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Hb).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(ld=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Ib).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(md=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Jb).apply(null,arguments)},nd=a._emscripten_enum_draco_DataType_DT_FLOAT32= +function(){return(nd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Kb).apply(null,arguments)},od=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(od=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Lb).apply(null,arguments)},pd=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(pd=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Mb).apply(null,arguments)},qd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(qd=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT= +a.asm.Nb).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_OK=function(){return(rd=a._emscripten_enum_draco_StatusCode_OK=a.asm.Ob).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(sd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Pb).apply(null,arguments)},td=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(td=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Qb).apply(null,arguments)},ud=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= +function(){return(ud=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.Rb).apply(null,arguments)},vd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(vd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Sb).apply(null,arguments)},wd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(wd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Tb).apply(null,arguments)},db=a._malloc=function(){return(db=a._malloc=a.asm.Ub).apply(null, +arguments)};a._free=function(){return(a._free=a.asm.Vb).apply(null,arguments)};var la;ia=function b(){la||Q();la||(ia=b)};a.run=Q;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var g=0;gb.byteLength)return a.INVALID_GEOMETRY_TYPE;switch(b[7]){case 0:return a.POINT_CLOUD;case 1:return a.TRIANGULAR_MESH;default:return a.INVALID_GEOMETRY_TYPE}};return n.ready}}(); "object"===typeof exports&&"object"===typeof module?module.exports=DracoDecoderModule:"function"===typeof define&&define.amd?define([],function(){return DracoDecoderModule}):"object"===typeof exports&&(exports.DracoDecoderModule=DracoDecoderModule); diff --git a/javascript/npm/draco3d/draco_encoder.wasm b/javascript/npm/draco3d/draco_encoder.wasm index 5c3fec33..e6514fd6 100755 Binary files a/javascript/npm/draco3d/draco_encoder.wasm and b/javascript/npm/draco3d/draco_encoder.wasm differ diff --git a/javascript/npm/draco3d/draco_encoder_nodejs.js b/javascript/npm/draco3d/draco_encoder_nodejs.js index 62c7e54f..ebfb5099 100644 --- a/javascript/npm/draco3d/draco_encoder_nodejs.js +++ b/javascript/npm/draco3d/draco_encoder_nodejs.js @@ -1,96 +1,96 @@ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(m){var p=0;return function(){return p>>0,$jscomp.propertyToPolyfillSymbol[l]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(l):$jscomp.POLYFILL_PREFIX+k+"$"+l),$jscomp.defineProperty(r,$jscomp.propertyToPolyfillSymbol[l],{configurable:!0,writable:!0,value:p})))}; -$jscomp.polyfill("Promise",function(m){function p(){this.batch_=null}function k(h){return h instanceof l?h:new l(function(q,v){q(h)})}if(m&&(!($jscomp.FORCE_POLYFILL_PROMISE||$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&"undefined"===typeof $jscomp.global.PromiseRejectionEvent)||!$jscomp.global.Promise||-1===$jscomp.global.Promise.toString().indexOf("[native code]")))return m;p.prototype.asyncExecute=function(h){if(null==this.batch_){this.batch_=[];var q=this;this.asyncExecuteFunction(function(){q.executeBatch_()})}this.batch_.push(h)}; -var r=$jscomp.global.setTimeout;p.prototype.asyncExecuteFunction=function(h){r(h,0)};p.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var h=this.batch_;this.batch_=[];for(var q=0;q=B}},"es6","es3"); -$jscomp.polyfill("Array.prototype.copyWithin",function(m){function p(k){k=Number(k);return Infinity===k||-Infinity===k?k:k|0}return m?m:function(k,r,l){var B=this.length;k=p(k);r=p(r);l=void 0===l?B:p(l);k=0>k?Math.max(B+k,0):Math.min(k,B);r=0>r?Math.max(B+r,0):Math.min(r,B);l=0>l?Math.max(B+l,0):Math.min(l,B);if(kr;)--l in this?this[--k]=this[l]:delete this[--k];return this}},"es6","es3"); -$jscomp.typedArrayCopyWithin=function(m){return m?m:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.owns=function(l,p){return Object.prototype.hasOwnProperty.call(l,p)};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1; +$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(l,p,m){if(l==Array.prototype||l==Object.prototype)return l;l[p]=m.value;return l};$jscomp.getGlobal=function(l){l=["object"==typeof globalThis&&globalThis,l,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var p=0;p>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+m+"$"+k),$jscomp.defineProperty(r,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:p})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(l,p){for(var m=1;m=C}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(l){function p(m){m=Number(m);return Infinity===m||-Infinity===m?m:m|0}return l?l:function(m,r,k){var C=this.length;m=p(m);r=p(r);k=void 0===k?C:p(k);m=0>m?Math.max(C+m,0):Math.min(m,C);r=0>r?Math.max(C+r,0):Math.min(r,C);k=0>k?Math.max(C+k,0):Math.min(k,C);if(mr;)--k in this?this[--m]=this[k]:delete this[--m];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(l){return l?l:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); $jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); -var DracoEncoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(p){function k(f){return a.locateFile?a.locateFile(f,L):L+f}function r(f,b){f||B("Assertion failed: "+b)}function l(f){sa=f;a.HEAP8=P=new Int8Array(f);a.HEAP16=ka=new Int16Array(f);a.HEAP32=K=new Int32Array(f);a.HEAPU8=la=new Uint8Array(f);a.HEAPU16=new Uint16Array(f);a.HEAPU32=new Uint32Array(f);a.HEAPF32= -ma=new Float32Array(f);a.HEAPF64=new Float64Array(f)}function B(f){if(a.onAbort)a.onAbort(f);f="Aborted("+f+")";Y(f);ta=!0;f=new WebAssembly.RuntimeError(f+". Build with -s ASSERTIONS=1 for more info.");na(f);throw f;}function h(f){try{if(f==J&&Z)return new Uint8Array(Z);if(oa)return oa(f);throw"both async and sync fetching of the wasm failed";}catch(b){B(b)}}function q(){if(!Z&&(ua||aa)){if("function"===typeof fetch&&!J.startsWith("file://"))return fetch(J,{credentials:"same-origin"}).then(function(f){if(!f.ok)throw"failed to load wasm binary file at '"+ -J+"'";return f.arrayBuffer()}).catch(function(){return h(J)});if(pa)return new Promise(function(f,b){pa(J,function(c){f(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return h(J)})}function v(f){for(;0=ea.length&&(ea.length=f+1),ea[f]=b=va.get(f));return b}function I(f){this.excPtr=f;this.ptr= -f-16;this.set_type=function(b){K[this.ptr+4>>2]=b};this.get_type=function(){return K[this.ptr+4>>2]};this.set_destructor=function(b){K[this.ptr+8>>2]=b};this.get_destructor=function(){return K[this.ptr+8>>2]};this.set_refcount=function(b){K[this.ptr>>2]=b};this.set_caught=function(b){P[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=P[this.ptr+12>>0]};this.set_rethrown=function(b){P[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=P[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b); -this.set_destructor(c);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){K[this.ptr>>2]+=1};this.release_ref=function(){var b=K[this.ptr>>2];K[this.ptr>>2]=b-1;return 1===b}}function T(f){function b(){if(!fa&&(fa=!0,a.calledRun=!0,!ta)){wa=!0;v(qa);xa(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)ya.unshift(a.postRun.shift());v(ya)}}if(!(0=d&&(d=65536+((d&1023)<< -10)|f.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1);c=0;d=b.length;if(0=g){var t=f.charCodeAt(++e);g=65536+((g&1023)<<10)|t&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12&63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0}f=n.alloc(b,P);n.copy(b,P, -f);return f}return f}function ha(f){if("object"===typeof f){var b=n.alloc(f,P);n.copy(f,P,b);return b}return f}function ia(f){if("object"===typeof f){var b=n.alloc(f,ka);n.copy(f,ka,b);return b}return f}function V(f){if("object"===typeof f){var b=n.alloc(f,K);n.copy(f,K,b);return b}return f}function ba(f){if("object"===typeof f){var b=n.alloc(f,ma);n.copy(f,ma,b);return b}return f}function Q(){throw"cannot construct a VoidPtr, no constructor in IDL";}function M(){this.ptr=Aa();D(M)[this.ptr]=this} -function z(){this.ptr=Ba();D(z)[this.ptr]=this}function G(){this.ptr=Ca();D(G)[this.ptr]=this}function E(){this.ptr=Da();D(E)[this.ptr]=this}function N(){this.ptr=Ea();D(N)[this.ptr]=this}function H(){this.ptr=Fa();D(H)[this.ptr]=this}function F(){this.ptr=Ga();D(F)[this.ptr]=this}function x(){this.ptr=Ha();D(x)[this.ptr]=this}function u(){this.ptr=Ia();D(u)[this.ptr]=this}function y(){this.ptr=Ja();D(y)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Ka(f);D(A)[this.ptr]= -this}p=p||{};var a="undefined"!==typeof p?p:{},xa,na;a.ready=new Promise(function(f,b){xa=f;na=b});var La=!1,Ma=!1;a.onRuntimeInitialized=function(){La=!0;if(Ma&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ma=!0;if(La&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(f){if("string"!==typeof f)return!1;f=f.split(".");return 2>f.length||3=f[1]?!0:0!=f[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);var e=Math,g=e.min;d=Math.max(f,d);0>>16);l(ja.buffer);var t=1;break a}catch(tc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ja=a.asm.f;l(ja.buffer);va=a.asm.h;qa.unshift(a.asm.g);U--;a.monitorRunDependencies&&a.monitorRunDependencies(U);0==U&&(null!==ra&&(clearInterval(ra),ra= -null),da&&(e=da,da=null,e()))}function b(e){f(e.instance)}function c(e){return q().then(function(g){return WebAssembly.instantiate(g,d)}).then(function(g){return g}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+g);B(g)})}var d={a:sc};U++;a.monitorRunDependencies&&a.monitorRunDependencies(U);if(a.instantiateWasm)try{return a.instantiateWasm(d,f)}catch(e){return Y("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return Z||"function"!==typeof WebAssembly.instantiateStreaming|| -J.startsWith("data:application/octet-stream;base64,")||J.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(J,{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,d).then(b,function(g){Y("wasm streaming compile failed: "+g);Y("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(na);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.g).apply(null,arguments)};var Pa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Pa= -a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Aa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Aa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Qa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Qa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},Ba=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ba=a._emscripten_bind_PointAttribute_PointAttribute_0= -a.asm.l).apply(null,arguments)},Ra=a._emscripten_bind_PointAttribute_size_0=function(){return(Ra=a._emscripten_bind_PointAttribute_size_0=a.asm.m).apply(null,arguments)},Sa=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Sa=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Ta=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Ta=a._emscripten_bind_PointAttribute_data_type_0=a.asm.o).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_num_components_0= -function(){return(Ua=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_normalized_0=function(){return(Va=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Wa=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(Xa=a._emscripten_bind_PointAttribute_byte_offset_0= -a.asm.s).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(Ya=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.t).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Za=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},Ca=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ca=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.v).apply(null,arguments)},$a=a._emscripten_bind_PointCloud_num_attributes_0= -function(){return($a=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},ab=a._emscripten_bind_PointCloud_num_points_0=function(){return(ab=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},bb=a._emscripten_bind_PointCloud___destroy___0=function(){return(bb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Da=a._emscripten_bind_Mesh_Mesh_0=function(){return(Da=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)}, -cb=a._emscripten_bind_Mesh_num_faces_0=function(){return(cb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},db=a._emscripten_bind_Mesh_num_attributes_0=function(){return(db=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},eb=a._emscripten_bind_Mesh_num_points_0=function(){return(eb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},fb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(fb=a._emscripten_bind_Mesh_set_num_points_1= -a.asm.D).apply(null,arguments)},gb=a._emscripten_bind_Mesh___destroy___0=function(){return(gb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ea=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ea=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},hb=a._emscripten_bind_Metadata___destroy___0=function(){return(hb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Fa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Fa= -a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},ib=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(ib=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.I).apply(null,arguments)},jb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(jb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},kb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(kb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null, -arguments)},Ga=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ga=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.N).apply(null,arguments)},nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4= -function(){return(nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.P).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(pb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)},Ha=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ha= -a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null,arguments)},rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)},sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(sb= -a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null,arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)},vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(vb= -a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(yb= -a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(zb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)},Ia=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Ia=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3= -a.asm.ba).apply(null,arguments)},Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2= -a.asm.ea).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=a.asm.ha).apply(null,arguments)}, -Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.ja).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5= -function(){return(Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Nb=a._emscripten_bind_MeshBuilder___destroy___0= -a.asm.oa).apply(null,arguments)},Ja=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ja=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.ra).apply(null,arguments)},Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5= -function(){return(Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.ta).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Tb= -a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.wa).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Wb= -a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},Xb=a._emscripten_bind_Encoder___destroy___0=function(){return(Xb=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Ka=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Ka=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1= -a.asm.Ba).apply(null,arguments)},Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},$b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return($b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= -a.asm.Ea).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0= -a.asm.Ha).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder___destroy___0=function(){return(fc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null, -arguments)},hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null, -arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE= -a.asm.Qa).apply(null,arguments)},nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING= -a.asm.Ta).apply(null,arguments)},qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)},Oa=a._malloc=function(){return(Oa=a._malloc=a.asm.Va).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Wa).apply(null,arguments)};var fa;da=function b(){fa||T();fa||(da=b)};a.run=T;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=n.size?(r(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>= -1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var e=0;e=aa.length&&(aa.length=f+1),aa[f]=b=sa.get(f));return b}function D(f){this.excPtr=f;this.ptr= +f-16;this.set_type=function(b){K[this.ptr+4>>2]=b};this.get_type=function(){return K[this.ptr+4>>2]};this.set_destructor=function(b){K[this.ptr+8>>2]=b};this.get_destructor=function(){return K[this.ptr+8>>2]};this.set_refcount=function(b){K[this.ptr>>2]=b};this.set_caught=function(b){Q[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Q[this.ptr+12>>0]};this.set_rethrown=function(b){Q[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Q[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b); +this.set_destructor(c);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){K[this.ptr>>2]+=1};this.release_ref=function(){var b=K[this.ptr>>2];K[this.ptr>>2]=b-1;return 1===b}}function G(f){function b(){if(!ba&&(ba=!0,a.calledRun=!0,!qa)){ta=!0;q(ma);ua(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)va.unshift(a.postRun.shift());q(va)}}if(!(0=d&&(d=65536+((d&1023)<< +10)|f.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1);c=0;d=b.length;if(0=g){var t=f.charCodeAt(++e);g=65536+((g&1023)<<10)|t&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12&63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0}f=n.alloc(b,Q);n.copy(b,Q, +f);return f}return f}function S(f){if("object"===typeof f){var b=n.alloc(f,Q);n.copy(f,Q,b);return b}return f}function ca(f){if("object"===typeof f){var b=n.alloc(f,fa);n.copy(f,fa,b);return b}return f}function U(f){if("object"===typeof f){var b=n.alloc(f,K);n.copy(f,K,b);return b}return f}function Y(f){if("object"===typeof f){var b=n.alloc(f,ia);n.copy(f,ia,b);return b}return f}function R(){throw"cannot construct a VoidPtr, no constructor in IDL";}function N(){this.ptr=xa();B(N)[this.ptr]=this}function z(){this.ptr= +ya();B(z)[this.ptr]=this}function H(){this.ptr=za();B(H)[this.ptr]=this}function E(){this.ptr=Aa();B(E)[this.ptr]=this}function O(){this.ptr=Ba();B(O)[this.ptr]=this}function I(){this.ptr=Ca();B(I)[this.ptr]=this}function F(){this.ptr=Da();B(F)[this.ptr]=this}function w(){this.ptr=Ea();B(w)[this.ptr]=this}function u(){this.ptr=Fa();B(u)[this.ptr]=this}function x(){this.ptr=Ga();B(x)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Ha(f);B(A)[this.ptr]=this}p=p||{};var a="undefined"!== +typeof p?p:{},Ia=Object.assign,ua,ja;a.ready=new Promise(function(f,b){ua=f;ja=b});var Ja=!1,Ka=!1;a.onRuntimeInitialized=function(){Ja=!0;if(Ka&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ka=!0;if(Ja&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(f){if("string"!==typeof f)return!1;f=f.split(".");return 2>f.length||3=f[1]?!0:0!=f[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);var e= +Math,g=e.min;d=Math.max(f,d);0>>16);r(ea.buffer);var t=1;break a}catch(tc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ea=a.asm.f;r(ea.buffer);sa=a.asm.h;ma.unshift(a.asm.g);T--;a.monitorRunDependencies&&a.monitorRunDependencies(T);0==T&&(null!==oa&&(clearInterval(oa),oa=null),Z&&(e=Z,Z=null,e()))}function b(e){f(e.instance)}function c(e){return h().then(function(g){return WebAssembly.instantiate(g, +d)}).then(function(g){return g}).then(e,function(g){V("failed to asynchronously prepare wasm: "+g);k(g)})}var d={a:sc};T++;a.monitorRunDependencies&&a.monitorRunDependencies(T);if(a.instantiateWasm)try{return a.instantiateWasm(d,f)}catch(e){return V("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return W||"function"!==typeof WebAssembly.instantiateStreaming||J.startsWith("data:application/octet-stream;base64,")||J.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(J, +{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,d).then(b,function(g){V("wasm streaming compile failed: "+g);V("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ja);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.g).apply(null,arguments)};var Pa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Pa=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},xa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0= +function(){return(xa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Qa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Qa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},ya=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(ya=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.l).apply(null,arguments)},Ra=a._emscripten_bind_PointAttribute_size_0=function(){return(Ra=a._emscripten_bind_PointAttribute_size_0= +a.asm.m).apply(null,arguments)},Sa=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Sa=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Ta=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Ta=a._emscripten_bind_PointAttribute_data_type_0=a.asm.o).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_num_components_0=function(){return(Ua=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_normalized_0= +function(){return(Va=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Wa=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(Xa=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.s).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(Ya=a._emscripten_bind_PointAttribute_unique_id_0= +a.asm.t).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Za=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},za=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(za=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.v).apply(null,arguments)},$a=a._emscripten_bind_PointCloud_num_attributes_0=function(){return($a=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},ab=a._emscripten_bind_PointCloud_num_points_0= +function(){return(ab=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},bb=a._emscripten_bind_PointCloud___destroy___0=function(){return(bb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Aa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Aa=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)},cb=a._emscripten_bind_Mesh_num_faces_0=function(){return(cb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},db=a._emscripten_bind_Mesh_num_attributes_0= +function(){return(db=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},eb=a._emscripten_bind_Mesh_num_points_0=function(){return(eb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},fb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(fb=a._emscripten_bind_Mesh_set_num_points_1=a.asm.D).apply(null,arguments)},gb=a._emscripten_bind_Mesh___destroy___0=function(){return(gb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ba=a._emscripten_bind_Metadata_Metadata_0= +function(){return(Ba=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},hb=a._emscripten_bind_Metadata___destroy___0=function(){return(hb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Ca=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ca=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},ib=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(ib=a._emscripten_bind_DracoInt8Array_GetValue_1= +a.asm.I).apply(null,arguments)},jb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(jb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},kb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(kb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null,arguments)},Da=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Da=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3= +function(){return(lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.N).apply(null,arguments)},nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3= +a.asm.P).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(pb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)},Ea=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ea=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null, +arguments)},rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)},sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null, +arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)},vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null, +arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(zb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)}, +Fa=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Fa=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.ba).apply(null,arguments)},Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5= +function(){return(Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.ea).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Fb= +a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=a.asm.ha).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5= +a.asm.ja).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Mb= +a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Nb=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.oa).apply(null,arguments)},Ga=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ga=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Ob= +a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.ra).apply(null,arguments)},Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=function(){return(Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2= +a.asm.ta).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3= +a.asm.wa).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},Xb=a._emscripten_bind_Encoder___destroy___0=function(){return(Xb=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Ha= +a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Ha=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.Ba).apply(null,arguments)},Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},$b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5= +function(){return($b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=a.asm.Ea).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2= +function(){return(cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.Ha).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder___destroy___0= +function(){return(fc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null,arguments)},hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ic= +a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null,arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(lc= +a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.Qa).apply(null,arguments)},nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= +function(){return(oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.Ta).apply(null,arguments)},qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)}, +Oa=a._malloc=function(){return(Oa=a._malloc=a.asm.Va).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Wa).apply(null,arguments)};var ba;Z=function b(){ba||G();ba||(Z=b)};a.run=G;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=n.size?(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var e=0;e>>0,$jscomp.propertyToPolyfillSymbol[h]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(h):$jscomp.POLYFILL_PREFIX+k+"$"+h),$jscomp.defineProperty(q,$jscomp.propertyToPolyfillSymbol[h],{configurable:!0,writable:!0,value:n})))}; -$jscomp.polyfill("Promise",function(m){function n(){this.batch_=null}function k(f){return f instanceof h?f:new h(function(p,v){p(f)})}if(m&&(!($jscomp.FORCE_POLYFILL_PROMISE||$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&"undefined"===typeof $jscomp.global.PromiseRejectionEvent)||!$jscomp.global.Promise||-1===$jscomp.global.Promise.toString().indexOf("[native code]")))return m;n.prototype.asyncExecute=function(f){if(null==this.batch_){this.batch_=[];var p=this;this.asyncExecuteFunction(function(){p.executeBatch_()})}this.batch_.push(f)}; -var q=$jscomp.global.setTimeout;n.prototype.asyncExecuteFunction=function(f){q(f,0)};n.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var f=this.batch_;this.batch_=[];for(var p=0;p=A}},"es6","es3"); -$jscomp.polyfill("Array.prototype.copyWithin",function(m){function n(k){k=Number(k);return Infinity===k||-Infinity===k?k:k|0}return m?m:function(k,q,h){var A=this.length;k=n(k);q=n(q);h=void 0===h?A:n(h);k=0>k?Math.max(A+k,0):Math.min(k,A);q=0>q?Math.max(A+q,0):Math.min(q,A);h=0>h?Math.max(A+h,0):Math.min(h,A);if(kq;)--h in this?this[--k]=this[h]:delete this[--k];return this}},"es6","es3"); -$jscomp.typedArrayCopyWithin=function(m){return m?m:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.owns=function(h,n){return Object.prototype.hasOwnProperty.call(h,n)};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1; +$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(h,n,k){if(h==Array.prototype||h==Object.prototype)return h;h[n]=k.value;return h};$jscomp.getGlobal=function(h){h=["object"==typeof globalThis&&globalThis,h,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var n=0;n>>0,$jscomp.propertyToPolyfillSymbol[l]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(l):$jscomp.POLYFILL_PREFIX+k+"$"+l),$jscomp.defineProperty(p,$jscomp.propertyToPolyfillSymbol[l],{configurable:!0,writable:!0,value:n})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(h,n){for(var k=1;k=y}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(h){function n(k){k=Number(k);return Infinity===k||-Infinity===k?k:k|0}return h?h:function(k,p,l){var y=this.length;k=n(k);p=n(p);l=void 0===l?y:n(l);k=0>k?Math.max(y+k,0):Math.min(k,y);p=0>p?Math.max(y+p,0):Math.min(p,y);l=0>l?Math.max(y+l,0):Math.min(l,y);if(kp;)--l in this?this[--k]=this[l]:delete this[--k];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(h){return h?h:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); $jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); -var DracoDecoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(n){function k(e){return a.locateFile?a.locateFile(e,U):U+e}function q(e,b){e||f("Assertion failed: "+b)}function h(e,b){if(e){var c=ma;var d=e+b;for(b=e;c[b]&&!(b>=d);)++b;if(16g?d+=String.fromCharCode(g):(g-=65536,d+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else d+=String.fromCharCode(g)}c=d}}else c="";return c}function A(e){xa=e;a.HEAP8=Y=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=V=new Int32Array(e);a.HEAPU8=ma=new Uint8Array(e);a.HEAPU16=new Uint16Array(e);a.HEAPU32=new Uint32Array(e);a.HEAPF32=new Float32Array(e);a.HEAPF64=new Float64Array(e)}function f(e){if(a.onAbort)a.onAbort(e); -e="Aborted("+e+")";ha(e);ya=!0;e=new WebAssembly.RuntimeError(e+". Build with -s ASSERTIONS=1 for more info.");qa(e);throw e;}function p(e){try{if(e==Q&&ia)return new Uint8Array(ia);if(ra)return ra(e);throw"both async and sync fetching of the wasm failed";}catch(b){f(b)}}function v(){if(!ia&&(za||ja)){if("function"===typeof fetch&&!Q.startsWith("file://"))return fetch(Q,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+Q+"'";return e.arrayBuffer()}).catch(function(){return p(Q)}); -if(sa)return new Promise(function(e,b){sa(Q,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return p(Q)})}function z(e){for(;0=na.length&&(na.length=e+1),na[e]=b=Aa.get(e));return b}function fa(e){this.excPtr=e;this.ptr=e-16;this.set_type=function(b){V[this.ptr+4>>2]=b};this.get_type= +var DracoDecoderModule=function(){var h="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(h=h||__filename);return function(n){function k(e){return a.locateFile?a.locateFile(e,U):U+e}function p(e,b){if(e){var c=ha;var d=e+b;for(b=e;c[b]&&!(b>=d);)++b;if(16g?d+=String.fromCharCode(g):(g-=65536,d+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else d+=String.fromCharCode(g)}c=d}}else c="";return c}function l(e){ua=e;a.HEAP8=Y=new Int8Array(e);a.HEAP16=new Int16Array(e);a.HEAP32=V=new Int32Array(e);a.HEAPU8=ha=new Uint8Array(e);a.HEAPU16=new Uint16Array(e);a.HEAPU32=new Uint32Array(e);a.HEAPF32=new Float32Array(e);a.HEAPF64=new Float64Array(e)}function y(e){if(a.onAbort)a.onAbort(e); +e="Aborted("+e+")";ca(e);va=!0;e=new WebAssembly.RuntimeError(e+". Build with -s ASSERTIONS=1 for more info.");ma(e);throw e;}function f(e){try{if(e==P&&da)return new Uint8Array(da);if(na)return na(e);throw"both async and sync fetching of the wasm failed";}catch(b){y(b)}}function q(){if(!da&&(wa||ea)){if("function"===typeof fetch&&!P.startsWith("file://"))return fetch(P,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+P+"'";return e.arrayBuffer()}).catch(function(){return f(P)}); +if(oa)return new Promise(function(e,b){oa(P,function(c){e(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return f(P)})}function v(e){for(;0=ia.length&&(ia.length=e+1),ia[e]=b=xa.get(e));return b}function O(e){this.excPtr=e;this.ptr=e-16;this.set_type=function(b){V[this.ptr+4>>2]=b};this.get_type= function(){return V[this.ptr+4>>2]};this.set_destructor=function(b){V[this.ptr+8>>2]=b};this.get_destructor=function(){return V[this.ptr+8>>2]};this.set_refcount=function(b){V[this.ptr>>2]=b};this.set_caught=function(b){Y[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Y[this.ptr+12>>0]};this.set_rethrown=function(b){Y[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Y[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b);this.set_destructor(c);this.set_refcount(0);this.set_caught(!1); -this.set_rethrown(!1)};this.add_ref=function(){V[this.ptr>>2]+=1};this.release_ref=function(){var b=V[this.ptr>>2];V[this.ptr>>2]=b-1;return 1===b}}function P(e){function b(){if(!oa&&(oa=!0,a.calledRun=!0,!ya)){Ba=!0;z(ta);Ca(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Da.unshift(a.postRun.shift());z(Da)}}if(!(0=d&&(d=65536+((d&1023)<<10)|e.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1); -c=0;d=b.length;if(0=u){var X=e.charCodeAt(++g);u=65536+((u&1023)<<10)|X&1023}if(127>=u){if(c>=d)break;b[c++]=u}else{if(2047>=u){if(c+1>=d)break;b[c++]=192|u>>6}else{if(65535>=u){if(c+2>=d)break;b[c++]=224|u>>12}else{if(c+3>=d)break;b[c++]=240|u>>18;b[c++]=128|u>>12&63}b[c++]=128|u>>6&63}b[c++]=128|u&63}}b[c]=0}e=r.alloc(b,Y);r.copy(b,Y,e);return e}return e}function ua(e){if("object"===typeof e){var b=r.alloc(e,Y);r.copy(e, -Y,b);return b}return e}function Z(){throw"cannot construct a VoidPtr, no constructor in IDL";}function S(){this.ptr=Fa();x(S)[this.ptr]=this}function R(){this.ptr=Ga();x(R)[this.ptr]=this}function W(){this.ptr=Ha();x(W)[this.ptr]=this}function w(){this.ptr=Ia();x(w)[this.ptr]=this}function C(){this.ptr=Ja();x(C)[this.ptr]=this}function G(){this.ptr=Ka();x(G)[this.ptr]=this}function H(){this.ptr=La();x(H)[this.ptr]=this}function E(){this.ptr=Ma();x(E)[this.ptr]=this}function T(){this.ptr=Na();x(T)[this.ptr]= -this}function B(){throw"cannot construct a Status, no constructor in IDL";}function I(){this.ptr=Oa();x(I)[this.ptr]=this}function J(){this.ptr=Pa();x(J)[this.ptr]=this}function K(){this.ptr=Qa();x(K)[this.ptr]=this}function L(){this.ptr=Ra();x(L)[this.ptr]=this}function M(){this.ptr=Sa();x(M)[this.ptr]=this}function N(){this.ptr=Ta();x(N)[this.ptr]=this}function O(){this.ptr=Ua();x(O)[this.ptr]=this}function y(){this.ptr=Va();x(y)[this.ptr]=this}function l(){this.ptr=Wa();x(l)[this.ptr]=this}n=n|| -{};var a="undefined"!==typeof n?n:{},Ca,qa;a.ready=new Promise(function(e,b){Ca=e;qa=b});var Xa=!1,Ya=!1;a.onRuntimeInitialized=function(){Xa=!0;if(Ya&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ya=!0;if(Xa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(e){if("string"!==typeof e)return!1;e=e.split(".");return 2>e.length||3=e[1]?!0:0!=e[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,e+100663296);var g=Math,u=g.min;d=Math.max(e,d);0>>16);A(pa.buffer);var X=1;break a}catch(vd){}X=void 0}if(X)return!0}return!1}};(function(){function e(g,u){a.asm=g.exports;pa=a.asm.f;A(pa.buffer);Aa=a.asm.h;ta.unshift(a.asm.g);ca--; -a.monitorRunDependencies&&a.monitorRunDependencies(ca);0==ca&&(null!==va&&(clearInterval(va),va=null),la&&(g=la,la=null,g()))}function b(g){e(g.instance)}function c(g){return v().then(function(u){return WebAssembly.instantiate(u,d)}).then(function(u){return u}).then(g,function(u){ha("failed to asynchronously prepare wasm: "+u);f(u)})}var d={a:ud};ca++;a.monitorRunDependencies&&a.monitorRunDependencies(ca);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(g){return ha("Module.instantiateWasm callback failed with error: "+ -g),!1}(function(){return ia||"function"!==typeof WebAssembly.instantiateStreaming||Q.startsWith("data:application/octet-stream;base64,")||Q.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(Q,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g,d).then(b,function(u){ha("wasm streaming compile failed: "+u);ha("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(qa);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors= -a.asm.g).apply(null,arguments)};var ab=a._emscripten_bind_VoidPtr___destroy___0=function(){return(ab=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Fa=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Fa=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.j).apply(null,arguments)},bb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(bb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.k).apply(null,arguments)},cb=a._emscripten_bind_DecoderBuffer___destroy___0= -function(){return(cb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.l).apply(null,arguments)},Ga=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(Ga=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.m).apply(null,arguments)},db=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(db=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.n).apply(null,arguments)},eb=a._emscripten_bind_AttributeTransformData___destroy___0= -function(){return(eb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.o).apply(null,arguments)},Ha=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Ha=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.p).apply(null,arguments)},fb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(fb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.q).apply(null,arguments)},Ia=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ia= -a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.r).apply(null,arguments)},gb=a._emscripten_bind_PointAttribute_size_0=function(){return(gb=a._emscripten_bind_PointAttribute_size_0=a.asm.s).apply(null,arguments)},hb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(hb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.t).apply(null,arguments)},ib=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(ib=a._emscripten_bind_PointAttribute_attribute_type_0= -a.asm.u).apply(null,arguments)},jb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(jb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.v).apply(null,arguments)},kb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(kb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.w).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(lb=a._emscripten_bind_PointAttribute_normalized_0=a.asm.x).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_byte_stride_0= -function(){return(mb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.y).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(nb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.z).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(ob=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.A).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(pb=a._emscripten_bind_PointAttribute___destroy___0= -a.asm.B).apply(null,arguments)},Ja=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Ja=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.C).apply(null,arguments)},qb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(qb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.D).apply(null,arguments)},rb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0= -function(){return(rb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.E).apply(null,arguments)},sb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(sb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.F).apply(null,arguments)},tb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(tb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.G).apply(null,arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform___destroy___0= -function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.H).apply(null,arguments)},Ka=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Ka=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.I).apply(null,arguments)},vb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(vb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.J).apply(null, -arguments)},wb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(wb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.K).apply(null,arguments)},xb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(xb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.L).apply(null,arguments)},La=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(La=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.M).apply(null, -arguments)},yb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(yb=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.N).apply(null,arguments)},zb=a._emscripten_bind_PointCloud_num_points_0=function(){return(zb=a._emscripten_bind_PointCloud_num_points_0=a.asm.O).apply(null,arguments)},Ab=a._emscripten_bind_PointCloud___destroy___0=function(){return(Ab=a._emscripten_bind_PointCloud___destroy___0=a.asm.P).apply(null,arguments)},Ma=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ma= -a._emscripten_bind_Mesh_Mesh_0=a.asm.Q).apply(null,arguments)},Bb=a._emscripten_bind_Mesh_num_faces_0=function(){return(Bb=a._emscripten_bind_Mesh_num_faces_0=a.asm.R).apply(null,arguments)},Cb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Cb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.S).apply(null,arguments)},Db=a._emscripten_bind_Mesh_num_points_0=function(){return(Db=a._emscripten_bind_Mesh_num_points_0=a.asm.T).apply(null,arguments)},Eb=a._emscripten_bind_Mesh___destroy___0=function(){return(Eb= -a._emscripten_bind_Mesh___destroy___0=a.asm.U).apply(null,arguments)},Na=a._emscripten_bind_Metadata_Metadata_0=function(){return(Na=a._emscripten_bind_Metadata_Metadata_0=a.asm.V).apply(null,arguments)},Fb=a._emscripten_bind_Metadata___destroy___0=function(){return(Fb=a._emscripten_bind_Metadata___destroy___0=a.asm.W).apply(null,arguments)},Gb=a._emscripten_bind_Status_code_0=function(){return(Gb=a._emscripten_bind_Status_code_0=a.asm.X).apply(null,arguments)},Hb=a._emscripten_bind_Status_ok_0=function(){return(Hb= -a._emscripten_bind_Status_ok_0=a.asm.Y).apply(null,arguments)},Ib=a._emscripten_bind_Status_error_msg_0=function(){return(Ib=a._emscripten_bind_Status_error_msg_0=a.asm.Z).apply(null,arguments)},Jb=a._emscripten_bind_Status___destroy___0=function(){return(Jb=a._emscripten_bind_Status___destroy___0=a.asm._).apply(null,arguments)},Oa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Oa=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.$).apply(null,arguments)}, -Kb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Kb=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.aa).apply(null,arguments)},Lb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Lb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ba).apply(null,arguments)},Mb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Mb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.ca).apply(null,arguments)},Pa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0= -function(){return(Pa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.da).apply(null,arguments)},Nb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Nb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ea).apply(null,arguments)},Ob=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Ob=a._emscripten_bind_DracoInt8Array_size_0=a.asm.fa).apply(null,arguments)},Pb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Pb=a._emscripten_bind_DracoInt8Array___destroy___0= -a.asm.ga).apply(null,arguments)},Qa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Qa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ha).apply(null,arguments)},Qb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Qb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.ia).apply(null,arguments)},Rb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Rb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ja).apply(null,arguments)},Sb=a._emscripten_bind_DracoUInt8Array___destroy___0= -function(){return(Sb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.ka).apply(null,arguments)},Ra=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ra=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.la).apply(null,arguments)},Tb=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(Tb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.ma).apply(null,arguments)},Ub=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Ub=a._emscripten_bind_DracoInt16Array_size_0= -a.asm.na).apply(null,arguments)},Vb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Vb=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.oa).apply(null,arguments)},Sa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Sa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.pa).apply(null,arguments)},Wb=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(Wb=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.qa).apply(null,arguments)}, -Xb=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(Xb=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ra).apply(null,arguments)},Yb=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(Yb=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.sa).apply(null,arguments)},Ta=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Ta=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.ta).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt32Array_GetValue_1= -function(){return(Zb=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.ua).apply(null,arguments)},$b=a._emscripten_bind_DracoInt32Array_size_0=function(){return($b=a._emscripten_bind_DracoInt32Array_size_0=a.asm.va).apply(null,arguments)},ac=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ac=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.wa).apply(null,arguments)},Ua=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Ua=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0= -a.asm.xa).apply(null,arguments)},bc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(bc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.ya).apply(null,arguments)},cc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(cc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.za).apply(null,arguments)},dc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(dc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Aa).apply(null,arguments)},Va=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0= -function(){return(Va=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ba).apply(null,arguments)},ec=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(ec=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Ca).apply(null,arguments)},fc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(fc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Da).apply(null,arguments)},gc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(gc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3= -a.asm.Ea).apply(null,arguments)},hc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(hc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Fa).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ga).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(jc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ha).apply(null,arguments)}, -kc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.Ia).apply(null,arguments)},lc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(lc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ja).apply(null,arguments)},Wa=a._emscripten_bind_Decoder_Decoder_0=function(){return(Wa=a._emscripten_bind_Decoder_Decoder_0=a.asm.Ka).apply(null,arguments)},mc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(mc= -a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.La).apply(null,arguments)},nc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(nc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Ma).apply(null,arguments)},oc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(oc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Na).apply(null,arguments)},pc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(pc=a._emscripten_bind_Decoder_GetAttributeIdByName_2= -a.asm.Oa).apply(null,arguments)},qc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(qc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Pa).apply(null,arguments)},rc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(rc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Qa).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ra).apply(null,arguments)}, -tc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(tc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Sa).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(uc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Ta).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(vc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Ua).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2= -function(){return(wc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Va).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(xc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Wa).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(yc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.Xa).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(zc= -a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.Ya).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Ac=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.Za).apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm._a).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Cc= -a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.$a).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.ab).apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.bb).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= -function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.cb).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.db).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.eb).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5= -function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.fb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Jc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.gb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Kc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.hb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2= -function(){return(Lc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.ib).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Mc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.jb).apply(null,arguments)},Nc=a._emscripten_bind_Decoder___destroy___0=function(){return(Nc=a._emscripten_bind_Decoder___destroy___0=a.asm.kb).apply(null,arguments)},Oc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Oc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= -a.asm.lb).apply(null,arguments)},Pc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Pc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.mb).apply(null,arguments)},Qc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Qc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.nb).apply(null,arguments)},Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM= -function(){return(Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.ob).apply(null,arguments)},Sc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Sc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.pb).apply(null,arguments)},Tc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Tc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.qb).apply(null,arguments)},Uc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL= -function(){return(Uc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.rb).apply(null,arguments)},Vc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Vc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.sb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.tb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC= -function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.ub).apply(null,arguments)},Yc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(Yc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.vb).apply(null,arguments)},Zc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(Zc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.wb).apply(null,arguments)},$c=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= -function(){return($c=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.xb).apply(null,arguments)},ad=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ad=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.yb).apply(null,arguments)},bd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(bd=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.zb).apply(null,arguments)},cd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(cd=a._emscripten_enum_draco_DataType_DT_UINT8= -a.asm.Ab).apply(null,arguments)},dd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(dd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Bb).apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(ed=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Cb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(fd=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Db).apply(null,arguments)},gd=a._emscripten_enum_draco_DataType_DT_UINT32= -function(){return(gd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Eb).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(hd=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Fb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(id=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Gb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Hb).apply(null, -arguments)},kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Ib).apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(ld=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Jb).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Kb).apply(null,arguments)},nd=a._emscripten_enum_draco_StatusCode_OK=function(){return(nd= -a._emscripten_enum_draco_StatusCode_OK=a.asm.Lb).apply(null,arguments)},od=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(od=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Mb).apply(null,arguments)},pd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(pd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Nb).apply(null,arguments)},qd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(qd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= -a.asm.Ob).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(rd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Pb).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(sd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Qb).apply(null,arguments)},$a=a._malloc=function(){return($a=a._malloc=a.asm.Rb).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Sb).apply(null,arguments)}; -var oa;la=function b(){oa||P();oa||(la=b)};a.run=P;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(q(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var g=0;g>2]+=1};this.release_ref=function(){var b=V[this.ptr>>2];V[this.ptr>>2]=b-1;return 1===b}}function aa(e){function b(){if(!ja&&(ja=!0,a.calledRun=!0,!va)){ya=!0;v(pa);za(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Aa.unshift(a.postRun.shift());v(Aa)}}if(!(0=d&&(d=65536+((d&1023)<<10)|e.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1); +c=0;d=b.length;if(0=u){var X=e.charCodeAt(++g);u=65536+((u&1023)<<10)|X&1023}if(127>=u){if(c>=d)break;b[c++]=u}else{if(2047>=u){if(c+1>=d)break;b[c++]=192|u>>6}else{if(65535>=u){if(c+2>=d)break;b[c++]=224|u>>12}else{if(c+3>=d)break;b[c++]=240|u>>18;b[c++]=128|u>>12&63}b[c++]=128|u>>6&63}b[c++]=128|u&63}}b[c]=0}e=r.alloc(b,Y);r.copy(b,Y,e);return e}return e}function qa(e){if("object"===typeof e){var b=r.alloc(e,Y);r.copy(e, +Y,b);return b}return e}function Z(){throw"cannot construct a VoidPtr, no constructor in IDL";}function S(){this.ptr=Ca();x(S)[this.ptr]=this}function Q(){this.ptr=Da();x(Q)[this.ptr]=this}function W(){this.ptr=Ea();x(W)[this.ptr]=this}function w(){this.ptr=Fa();x(w)[this.ptr]=this}function C(){this.ptr=Ga();x(C)[this.ptr]=this}function F(){this.ptr=Ha();x(F)[this.ptr]=this}function G(){this.ptr=Ia();x(G)[this.ptr]=this}function E(){this.ptr=Ja();x(E)[this.ptr]=this}function T(){this.ptr=Ka();x(T)[this.ptr]= +this}function B(){throw"cannot construct a Status, no constructor in IDL";}function H(){this.ptr=La();x(H)[this.ptr]=this}function I(){this.ptr=Ma();x(I)[this.ptr]=this}function J(){this.ptr=Na();x(J)[this.ptr]=this}function K(){this.ptr=Oa();x(K)[this.ptr]=this}function L(){this.ptr=Pa();x(L)[this.ptr]=this}function M(){this.ptr=Qa();x(M)[this.ptr]=this}function N(){this.ptr=Ra();x(N)[this.ptr]=this}function z(){this.ptr=Sa();x(z)[this.ptr]=this}function m(){this.ptr=Ta();x(m)[this.ptr]=this}n=n|| +{};var a="undefined"!==typeof n?n:{},Ua=Object.assign,za,ma;a.ready=new Promise(function(e,b){za=e;ma=b});var Va=!1,Wa=!1;a.onRuntimeInitialized=function(){Va=!0;if(Wa&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Wa=!0;if(Va&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(e){if("string"!==typeof e)return!1;e=e.split(".");return 2>e.length||3=e[1]?!0:0!=e[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,e+100663296);var g=Math,u=g.min;d=Math.max(e,d);0>>16);l(la.buffer);var X=1;break a}catch(vd){}X=void 0}if(X)return!0}return!1}};(function(){function e(g,u){a.asm=g.exports;la=a.asm.f;l(la.buffer);xa=a.asm.h;pa.unshift(a.asm.g);ba--;a.monitorRunDependencies&&a.monitorRunDependencies(ba);0==ba&&(null!==sa&&(clearInterval(sa),sa=null),fa&&(g=fa,fa=null,g()))} +function b(g){e(g.instance)}function c(g){return q().then(function(u){return WebAssembly.instantiate(u,d)}).then(function(u){return u}).then(g,function(u){ca("failed to asynchronously prepare wasm: "+u);y(u)})}var d={a:ud};ba++;a.monitorRunDependencies&&a.monitorRunDependencies(ba);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(g){return ca("Module.instantiateWasm callback failed with error: "+g),!1}(function(){return da||"function"!==typeof WebAssembly.instantiateStreaming||P.startsWith("data:application/octet-stream;base64,")|| +P.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(P,{credentials:"same-origin"}).then(function(g){return WebAssembly.instantiateStreaming(g,d).then(b,function(u){ca("wasm streaming compile failed: "+u);ca("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ma);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.g).apply(null,arguments)};var ab=a._emscripten_bind_VoidPtr___destroy___0=function(){return(ab=a._emscripten_bind_VoidPtr___destroy___0= +a.asm.i).apply(null,arguments)},Ca=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(Ca=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.j).apply(null,arguments)},bb=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(bb=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.k).apply(null,arguments)},cb=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(cb=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.l).apply(null,arguments)},Da=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0= +function(){return(Da=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.m).apply(null,arguments)},db=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(db=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.n).apply(null,arguments)},eb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(eb=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.o).apply(null,arguments)},Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0= +function(){return(Ea=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.p).apply(null,arguments)},fb=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(fb=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.q).apply(null,arguments)},Fa=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Fa=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.r).apply(null,arguments)},gb=a._emscripten_bind_PointAttribute_size_0=function(){return(gb=a._emscripten_bind_PointAttribute_size_0= +a.asm.s).apply(null,arguments)},hb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(hb=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.t).apply(null,arguments)},ib=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(ib=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.u).apply(null,arguments)},jb=a._emscripten_bind_PointAttribute_data_type_0=function(){return(jb=a._emscripten_bind_PointAttribute_data_type_0=a.asm.v).apply(null, +arguments)},kb=a._emscripten_bind_PointAttribute_num_components_0=function(){return(kb=a._emscripten_bind_PointAttribute_num_components_0=a.asm.w).apply(null,arguments)},lb=a._emscripten_bind_PointAttribute_normalized_0=function(){return(lb=a._emscripten_bind_PointAttribute_normalized_0=a.asm.x).apply(null,arguments)},mb=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(mb=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.y).apply(null,arguments)},nb=a._emscripten_bind_PointAttribute_byte_offset_0= +function(){return(nb=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.z).apply(null,arguments)},ob=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(ob=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.A).apply(null,arguments)},pb=a._emscripten_bind_PointAttribute___destroy___0=function(){return(pb=a._emscripten_bind_PointAttribute___destroy___0=a.asm.B).apply(null,arguments)},Ga=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Ga= +a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.C).apply(null,arguments)},qb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(qb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.D).apply(null,arguments)},rb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(rb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.E).apply(null,arguments)}, +sb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(sb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.F).apply(null,arguments)},tb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(tb=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.G).apply(null,arguments)},ub=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(ub=a._emscripten_bind_AttributeQuantizationTransform___destroy___0= +a.asm.H).apply(null,arguments)},Ha=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Ha=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.I).apply(null,arguments)},vb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(vb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.J).apply(null,arguments)},wb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0= +function(){return(wb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.K).apply(null,arguments)},xb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(xb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.L).apply(null,arguments)},Ia=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ia=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.M).apply(null,arguments)},yb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(yb= +a._emscripten_bind_PointCloud_num_attributes_0=a.asm.N).apply(null,arguments)},zb=a._emscripten_bind_PointCloud_num_points_0=function(){return(zb=a._emscripten_bind_PointCloud_num_points_0=a.asm.O).apply(null,arguments)},Ab=a._emscripten_bind_PointCloud___destroy___0=function(){return(Ab=a._emscripten_bind_PointCloud___destroy___0=a.asm.P).apply(null,arguments)},Ja=a._emscripten_bind_Mesh_Mesh_0=function(){return(Ja=a._emscripten_bind_Mesh_Mesh_0=a.asm.Q).apply(null,arguments)},Bb=a._emscripten_bind_Mesh_num_faces_0= +function(){return(Bb=a._emscripten_bind_Mesh_num_faces_0=a.asm.R).apply(null,arguments)},Cb=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Cb=a._emscripten_bind_Mesh_num_attributes_0=a.asm.S).apply(null,arguments)},Db=a._emscripten_bind_Mesh_num_points_0=function(){return(Db=a._emscripten_bind_Mesh_num_points_0=a.asm.T).apply(null,arguments)},Eb=a._emscripten_bind_Mesh___destroy___0=function(){return(Eb=a._emscripten_bind_Mesh___destroy___0=a.asm.U).apply(null,arguments)},Ka=a._emscripten_bind_Metadata_Metadata_0= +function(){return(Ka=a._emscripten_bind_Metadata_Metadata_0=a.asm.V).apply(null,arguments)},Fb=a._emscripten_bind_Metadata___destroy___0=function(){return(Fb=a._emscripten_bind_Metadata___destroy___0=a.asm.W).apply(null,arguments)},Gb=a._emscripten_bind_Status_code_0=function(){return(Gb=a._emscripten_bind_Status_code_0=a.asm.X).apply(null,arguments)},Hb=a._emscripten_bind_Status_ok_0=function(){return(Hb=a._emscripten_bind_Status_ok_0=a.asm.Y).apply(null,arguments)},Ib=a._emscripten_bind_Status_error_msg_0= +function(){return(Ib=a._emscripten_bind_Status_error_msg_0=a.asm.Z).apply(null,arguments)},Jb=a._emscripten_bind_Status___destroy___0=function(){return(Jb=a._emscripten_bind_Status___destroy___0=a.asm._).apply(null,arguments)},La=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(La=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.$).apply(null,arguments)},Kb=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Kb=a._emscripten_bind_DracoFloat32Array_GetValue_1= +a.asm.aa).apply(null,arguments)},Lb=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Lb=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.ba).apply(null,arguments)},Mb=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(Mb=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.ca).apply(null,arguments)},Ma=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ma=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.da).apply(null,arguments)},Nb=a._emscripten_bind_DracoInt8Array_GetValue_1= +function(){return(Nb=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ea).apply(null,arguments)},Ob=a._emscripten_bind_DracoInt8Array_size_0=function(){return(Ob=a._emscripten_bind_DracoInt8Array_size_0=a.asm.fa).apply(null,arguments)},Pb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Pb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.ga).apply(null,arguments)},Na=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Na=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0= +a.asm.ha).apply(null,arguments)},Qb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(Qb=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.ia).apply(null,arguments)},Rb=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(Rb=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.ja).apply(null,arguments)},Sb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Sb=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.ka).apply(null,arguments)},Oa=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0= +function(){return(Oa=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.la).apply(null,arguments)},Tb=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(Tb=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.ma).apply(null,arguments)},Ub=a._emscripten_bind_DracoInt16Array_size_0=function(){return(Ub=a._emscripten_bind_DracoInt16Array_size_0=a.asm.na).apply(null,arguments)},Vb=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(Vb=a._emscripten_bind_DracoInt16Array___destroy___0= +a.asm.oa).apply(null,arguments)},Pa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(Pa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.pa).apply(null,arguments)},Wb=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(Wb=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.qa).apply(null,arguments)},Xb=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(Xb=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ra).apply(null,arguments)},Yb=a._emscripten_bind_DracoUInt16Array___destroy___0= +function(){return(Yb=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.sa).apply(null,arguments)},Qa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(Qa=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.ta).apply(null,arguments)},Zb=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(Zb=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.ua).apply(null,arguments)},$b=a._emscripten_bind_DracoInt32Array_size_0=function(){return($b=a._emscripten_bind_DracoInt32Array_size_0= +a.asm.va).apply(null,arguments)},ac=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ac=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.wa).apply(null,arguments)},Ra=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(Ra=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.xa).apply(null,arguments)},bc=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(bc=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.ya).apply(null,arguments)}, +cc=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(cc=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.za).apply(null,arguments)},dc=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(dc=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Aa).apply(null,arguments)},Sa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(Sa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Ba).apply(null,arguments)},ec=a._emscripten_bind_MetadataQuerier_HasEntry_2= +function(){return(ec=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Ca).apply(null,arguments)},fc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(fc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Da).apply(null,arguments)},gc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(gc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.Ea).apply(null,arguments)},hc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(hc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2= +a.asm.Fa).apply(null,arguments)},ic=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(ic=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ga).apply(null,arguments)},jc=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(jc=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ha).apply(null,arguments)},kc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(kc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.Ia).apply(null,arguments)}, +lc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(lc=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.Ja).apply(null,arguments)},Ta=a._emscripten_bind_Decoder_Decoder_0=function(){return(Ta=a._emscripten_bind_Decoder_Decoder_0=a.asm.Ka).apply(null,arguments)},mc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(mc=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.La).apply(null,arguments)},nc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(nc= +a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Ma).apply(null,arguments)},oc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(oc=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Na).apply(null,arguments)},pc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(pc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.Oa).apply(null,arguments)},qc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(qc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3= +a.asm.Pa).apply(null,arguments)},rc=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(rc=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Qa).apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(sc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ra).apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(tc=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Sa).apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetAttributeMetadata_2= +function(){return(uc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Ta).apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(vc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Ua).apply(null,arguments)},wc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(wc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Va).apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(xc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3= +a.asm.Wa).apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(yc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.Xa).apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(zc=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm.Ya).apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Ac=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.Za).apply(null, +arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Bc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm._a).apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Cc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.$a).apply(null,arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Dc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.ab).apply(null, +arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ec=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.bb).apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=function(){return(Fc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.cb).apply(null,arguments)},Gc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Gc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3= +a.asm.db).apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(Hc=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.eb).apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Ic=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.fb).apply(null,arguments)},Jc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Jc=a._emscripten_bind_Decoder_SkipAttributeTransform_1= +a.asm.gb).apply(null,arguments)},Kc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Kc=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.hb).apply(null,arguments)},Lc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(Lc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.ib).apply(null,arguments)},Mc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Mc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2= +a.asm.jb).apply(null,arguments)},Nc=a._emscripten_bind_Decoder___destroy___0=function(){return(Nc=a._emscripten_bind_Decoder___destroy___0=a.asm.kb).apply(null,arguments)},Oc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Oc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.lb).apply(null,arguments)},Pc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Pc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM= +a.asm.mb).apply(null,arguments)},Qc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(Qc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.nb).apply(null,arguments)},Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(Rc=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.ob).apply(null,arguments)},Sc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID= +function(){return(Sc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.pb).apply(null,arguments)},Tc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Tc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.qb).apply(null,arguments)},Uc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(Uc=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.rb).apply(null,arguments)},Vc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR= +function(){return(Vc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.sb).apply(null,arguments)},Wc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(Wc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.tb).apply(null,arguments)},Xc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(Xc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.ub).apply(null,arguments)},Yc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE= +function(){return(Yc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.vb).apply(null,arguments)},Zc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(Zc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.wb).apply(null,arguments)},$c=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return($c=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.xb).apply(null,arguments)},ad=a._emscripten_enum_draco_DataType_DT_INVALID= +function(){return(ad=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.yb).apply(null,arguments)},bd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(bd=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.zb).apply(null,arguments)},cd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(cd=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.Ab).apply(null,arguments)},dd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(dd=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Bb).apply(null, +arguments)},ed=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(ed=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Cb).apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(fd=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Db).apply(null,arguments)},gd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(gd=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Eb).apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(hd= +a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Fb).apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(id=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Gb).apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Hb).apply(null,arguments)},kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Ib).apply(null, +arguments)},ld=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(ld=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Jb).apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Kb).apply(null,arguments)},nd=a._emscripten_enum_draco_StatusCode_OK=function(){return(nd=a._emscripten_enum_draco_StatusCode_OK=a.asm.Lb).apply(null,arguments)},od=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(od= +a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Mb).apply(null,arguments)},pd=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(pd=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Nb).apply(null,arguments)},qd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(qd=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.Ob).apply(null,arguments)},rd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(rd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION= +a.asm.Pb).apply(null,arguments)},sd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(sd=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Qb).apply(null,arguments)},$a=a._malloc=function(){return($a=a._malloc=a.asm.Rb).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Sb).apply(null,arguments)};var ja;fa=function b(){ja||aa();ja||(fa=b)};a.run=aa;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>= +1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var g=0;gb.byteLength)return a.INVALID_GEOMETRY_TYPE;switch(b[7]){case 0:return a.POINT_CLOUD;case 1:return a.TRIANGULAR_MESH;default:return a.INVALID_GEOMETRY_TYPE}};return n.ready}}(); "object"===typeof exports&&"object"===typeof module?module.exports=DracoDecoderModule:"function"===typeof define&&define.amd?define([],function(){return DracoDecoderModule}):"object"===typeof exports&&(exports.DracoDecoderModule=DracoDecoderModule); diff --git a/javascript/npm/draco3dgltf/draco_encoder.wasm b/javascript/npm/draco3dgltf/draco_encoder.wasm index 5c3fec33..e6514fd6 100755 Binary files a/javascript/npm/draco3dgltf/draco_encoder.wasm and b/javascript/npm/draco3dgltf/draco_encoder.wasm differ diff --git a/javascript/npm/draco3dgltf/draco_encoder_gltf_nodejs.js b/javascript/npm/draco3dgltf/draco_encoder_gltf_nodejs.js index 62c7e54f..ebfb5099 100644 --- a/javascript/npm/draco3dgltf/draco_encoder_gltf_nodejs.js +++ b/javascript/npm/draco3dgltf/draco_encoder_gltf_nodejs.js @@ -1,96 +1,96 @@ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(m){var p=0;return function(){return p>>0,$jscomp.propertyToPolyfillSymbol[l]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(l):$jscomp.POLYFILL_PREFIX+k+"$"+l),$jscomp.defineProperty(r,$jscomp.propertyToPolyfillSymbol[l],{configurable:!0,writable:!0,value:p})))}; -$jscomp.polyfill("Promise",function(m){function p(){this.batch_=null}function k(h){return h instanceof l?h:new l(function(q,v){q(h)})}if(m&&(!($jscomp.FORCE_POLYFILL_PROMISE||$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&"undefined"===typeof $jscomp.global.PromiseRejectionEvent)||!$jscomp.global.Promise||-1===$jscomp.global.Promise.toString().indexOf("[native code]")))return m;p.prototype.asyncExecute=function(h){if(null==this.batch_){this.batch_=[];var q=this;this.asyncExecuteFunction(function(){q.executeBatch_()})}this.batch_.push(h)}; -var r=$jscomp.global.setTimeout;p.prototype.asyncExecuteFunction=function(h){r(h,0)};p.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var h=this.batch_;this.batch_=[];for(var q=0;q=B}},"es6","es3"); -$jscomp.polyfill("Array.prototype.copyWithin",function(m){function p(k){k=Number(k);return Infinity===k||-Infinity===k?k:k|0}return m?m:function(k,r,l){var B=this.length;k=p(k);r=p(r);l=void 0===l?B:p(l);k=0>k?Math.max(B+k,0):Math.min(k,B);r=0>r?Math.max(B+r,0):Math.min(r,B);l=0>l?Math.max(B+l,0):Math.min(l,B);if(kr;)--l in this?this[--k]=this[l]:delete this[--k];return this}},"es6","es3"); -$jscomp.typedArrayCopyWithin=function(m){return m?m:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.owns=function(l,p){return Object.prototype.hasOwnProperty.call(l,p)};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1; +$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(l,p,m){if(l==Array.prototype||l==Object.prototype)return l;l[p]=m.value;return l};$jscomp.getGlobal=function(l){l=["object"==typeof globalThis&&globalThis,l,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var p=0;p>>0,$jscomp.propertyToPolyfillSymbol[k]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(k):$jscomp.POLYFILL_PREFIX+m+"$"+k),$jscomp.defineProperty(r,$jscomp.propertyToPolyfillSymbol[k],{configurable:!0,writable:!0,value:p})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(l,p){for(var m=1;m=C}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(l){function p(m){m=Number(m);return Infinity===m||-Infinity===m?m:m|0}return l?l:function(m,r,k){var C=this.length;m=p(m);r=p(r);k=void 0===k?C:p(k);m=0>m?Math.max(C+m,0):Math.min(m,C);r=0>r?Math.max(C+r,0):Math.min(r,C);k=0>k?Math.max(C+k,0):Math.min(k,C);if(mr;)--k in this?this[--m]=this[k]:delete this[--m];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(l){return l?l:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); $jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); -var DracoEncoderModule=function(){var m="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(m=m||__filename);return function(p){function k(f){return a.locateFile?a.locateFile(f,L):L+f}function r(f,b){f||B("Assertion failed: "+b)}function l(f){sa=f;a.HEAP8=P=new Int8Array(f);a.HEAP16=ka=new Int16Array(f);a.HEAP32=K=new Int32Array(f);a.HEAPU8=la=new Uint8Array(f);a.HEAPU16=new Uint16Array(f);a.HEAPU32=new Uint32Array(f);a.HEAPF32= -ma=new Float32Array(f);a.HEAPF64=new Float64Array(f)}function B(f){if(a.onAbort)a.onAbort(f);f="Aborted("+f+")";Y(f);ta=!0;f=new WebAssembly.RuntimeError(f+". Build with -s ASSERTIONS=1 for more info.");na(f);throw f;}function h(f){try{if(f==J&&Z)return new Uint8Array(Z);if(oa)return oa(f);throw"both async and sync fetching of the wasm failed";}catch(b){B(b)}}function q(){if(!Z&&(ua||aa)){if("function"===typeof fetch&&!J.startsWith("file://"))return fetch(J,{credentials:"same-origin"}).then(function(f){if(!f.ok)throw"failed to load wasm binary file at '"+ -J+"'";return f.arrayBuffer()}).catch(function(){return h(J)});if(pa)return new Promise(function(f,b){pa(J,function(c){f(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return h(J)})}function v(f){for(;0=ea.length&&(ea.length=f+1),ea[f]=b=va.get(f));return b}function I(f){this.excPtr=f;this.ptr= -f-16;this.set_type=function(b){K[this.ptr+4>>2]=b};this.get_type=function(){return K[this.ptr+4>>2]};this.set_destructor=function(b){K[this.ptr+8>>2]=b};this.get_destructor=function(){return K[this.ptr+8>>2]};this.set_refcount=function(b){K[this.ptr>>2]=b};this.set_caught=function(b){P[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=P[this.ptr+12>>0]};this.set_rethrown=function(b){P[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=P[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b); -this.set_destructor(c);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){K[this.ptr>>2]+=1};this.release_ref=function(){var b=K[this.ptr>>2];K[this.ptr>>2]=b-1;return 1===b}}function T(f){function b(){if(!fa&&(fa=!0,a.calledRun=!0,!ta)){wa=!0;v(qa);xa(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)ya.unshift(a.postRun.shift());v(ya)}}if(!(0=d&&(d=65536+((d&1023)<< -10)|f.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1);c=0;d=b.length;if(0=g){var t=f.charCodeAt(++e);g=65536+((g&1023)<<10)|t&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12&63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0}f=n.alloc(b,P);n.copy(b,P, -f);return f}return f}function ha(f){if("object"===typeof f){var b=n.alloc(f,P);n.copy(f,P,b);return b}return f}function ia(f){if("object"===typeof f){var b=n.alloc(f,ka);n.copy(f,ka,b);return b}return f}function V(f){if("object"===typeof f){var b=n.alloc(f,K);n.copy(f,K,b);return b}return f}function ba(f){if("object"===typeof f){var b=n.alloc(f,ma);n.copy(f,ma,b);return b}return f}function Q(){throw"cannot construct a VoidPtr, no constructor in IDL";}function M(){this.ptr=Aa();D(M)[this.ptr]=this} -function z(){this.ptr=Ba();D(z)[this.ptr]=this}function G(){this.ptr=Ca();D(G)[this.ptr]=this}function E(){this.ptr=Da();D(E)[this.ptr]=this}function N(){this.ptr=Ea();D(N)[this.ptr]=this}function H(){this.ptr=Fa();D(H)[this.ptr]=this}function F(){this.ptr=Ga();D(F)[this.ptr]=this}function x(){this.ptr=Ha();D(x)[this.ptr]=this}function u(){this.ptr=Ia();D(u)[this.ptr]=this}function y(){this.ptr=Ja();D(y)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Ka(f);D(A)[this.ptr]= -this}p=p||{};var a="undefined"!==typeof p?p:{},xa,na;a.ready=new Promise(function(f,b){xa=f;na=b});var La=!1,Ma=!1;a.onRuntimeInitialized=function(){La=!0;if(Ma&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ma=!0;if(La&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(f){if("string"!==typeof f)return!1;f=f.split(".");return 2>f.length||3=f[1]?!0:0!=f[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);var e=Math,g=e.min;d=Math.max(f,d);0>>16);l(ja.buffer);var t=1;break a}catch(tc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ja=a.asm.f;l(ja.buffer);va=a.asm.h;qa.unshift(a.asm.g);U--;a.monitorRunDependencies&&a.monitorRunDependencies(U);0==U&&(null!==ra&&(clearInterval(ra),ra= -null),da&&(e=da,da=null,e()))}function b(e){f(e.instance)}function c(e){return q().then(function(g){return WebAssembly.instantiate(g,d)}).then(function(g){return g}).then(e,function(g){Y("failed to asynchronously prepare wasm: "+g);B(g)})}var d={a:sc};U++;a.monitorRunDependencies&&a.monitorRunDependencies(U);if(a.instantiateWasm)try{return a.instantiateWasm(d,f)}catch(e){return Y("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return Z||"function"!==typeof WebAssembly.instantiateStreaming|| -J.startsWith("data:application/octet-stream;base64,")||J.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(J,{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,d).then(b,function(g){Y("wasm streaming compile failed: "+g);Y("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(na);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.g).apply(null,arguments)};var Pa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Pa= -a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},Aa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(Aa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Qa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Qa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},Ba=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(Ba=a._emscripten_bind_PointAttribute_PointAttribute_0= -a.asm.l).apply(null,arguments)},Ra=a._emscripten_bind_PointAttribute_size_0=function(){return(Ra=a._emscripten_bind_PointAttribute_size_0=a.asm.m).apply(null,arguments)},Sa=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Sa=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Ta=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Ta=a._emscripten_bind_PointAttribute_data_type_0=a.asm.o).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_num_components_0= -function(){return(Ua=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_normalized_0=function(){return(Va=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Wa=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(Xa=a._emscripten_bind_PointAttribute_byte_offset_0= -a.asm.s).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(Ya=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.t).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Za=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},Ca=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ca=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.v).apply(null,arguments)},$a=a._emscripten_bind_PointCloud_num_attributes_0= -function(){return($a=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},ab=a._emscripten_bind_PointCloud_num_points_0=function(){return(ab=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},bb=a._emscripten_bind_PointCloud___destroy___0=function(){return(bb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Da=a._emscripten_bind_Mesh_Mesh_0=function(){return(Da=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)}, -cb=a._emscripten_bind_Mesh_num_faces_0=function(){return(cb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},db=a._emscripten_bind_Mesh_num_attributes_0=function(){return(db=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},eb=a._emscripten_bind_Mesh_num_points_0=function(){return(eb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},fb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(fb=a._emscripten_bind_Mesh_set_num_points_1= -a.asm.D).apply(null,arguments)},gb=a._emscripten_bind_Mesh___destroy___0=function(){return(gb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ea=a._emscripten_bind_Metadata_Metadata_0=function(){return(Ea=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},hb=a._emscripten_bind_Metadata___destroy___0=function(){return(hb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Fa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Fa= -a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},ib=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(ib=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.I).apply(null,arguments)},jb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(jb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},kb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(kb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null, -arguments)},Ga=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Ga=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=function(){return(lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.N).apply(null,arguments)},nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4= -function(){return(nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=a.asm.P).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(pb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)},Ha=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ha= -a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null,arguments)},rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)},sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(sb= -a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null,arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)},vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(vb= -a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null,arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(yb= -a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(zb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)},Ia=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Ia=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3= -a.asm.ba).apply(null,arguments)},Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=function(){return(Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2= -a.asm.ea).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=a.asm.ha).apply(null,arguments)}, -Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=a.asm.ja).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5= -function(){return(Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Nb=a._emscripten_bind_MeshBuilder___destroy___0= -a.asm.oa).apply(null,arguments)},Ja=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ja=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.ra).apply(null,arguments)},Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5= -function(){return(Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=a.asm.ta).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Tb= -a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=a.asm.wa).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Wb= -a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},Xb=a._emscripten_bind_Encoder___destroy___0=function(){return(Xb=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Ka=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Ka=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1= -a.asm.Ba).apply(null,arguments)},Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},$b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=function(){return($b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2= -a.asm.Ea).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=function(){return(cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0= -a.asm.Ha).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder___destroy___0=function(){return(fc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null, -arguments)},hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null, -arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE= -a.asm.Qa).apply(null,arguments)},nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING= -a.asm.Ta).apply(null,arguments)},qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)},Oa=a._malloc=function(){return(Oa=a._malloc=a.asm.Va).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Wa).apply(null,arguments)};var fa;da=function b(){fa||T();fa||(da=b)};a.run=T;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=n.size?(r(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>= -1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var e=0;e=aa.length&&(aa.length=f+1),aa[f]=b=sa.get(f));return b}function D(f){this.excPtr=f;this.ptr= +f-16;this.set_type=function(b){K[this.ptr+4>>2]=b};this.get_type=function(){return K[this.ptr+4>>2]};this.set_destructor=function(b){K[this.ptr+8>>2]=b};this.get_destructor=function(){return K[this.ptr+8>>2]};this.set_refcount=function(b){K[this.ptr>>2]=b};this.set_caught=function(b){Q[this.ptr+12>>0]=b?1:0};this.get_caught=function(){return 0!=Q[this.ptr+12>>0]};this.set_rethrown=function(b){Q[this.ptr+13>>0]=b?1:0};this.get_rethrown=function(){return 0!=Q[this.ptr+13>>0]};this.init=function(b,c){this.set_type(b); +this.set_destructor(c);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){K[this.ptr>>2]+=1};this.release_ref=function(){var b=K[this.ptr>>2];K[this.ptr>>2]=b-1;return 1===b}}function G(f){function b(){if(!ba&&(ba=!0,a.calledRun=!0,!qa)){ta=!0;q(ma);ua(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)va.unshift(a.postRun.shift());q(va)}}if(!(0=d&&(d=65536+((d&1023)<< +10)|f.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}b=Array(b+1);c=0;d=b.length;if(0=g){var t=f.charCodeAt(++e);g=65536+((g&1023)<<10)|t&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12&63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0}f=n.alloc(b,Q);n.copy(b,Q, +f);return f}return f}function S(f){if("object"===typeof f){var b=n.alloc(f,Q);n.copy(f,Q,b);return b}return f}function ca(f){if("object"===typeof f){var b=n.alloc(f,fa);n.copy(f,fa,b);return b}return f}function U(f){if("object"===typeof f){var b=n.alloc(f,K);n.copy(f,K,b);return b}return f}function Y(f){if("object"===typeof f){var b=n.alloc(f,ia);n.copy(f,ia,b);return b}return f}function R(){throw"cannot construct a VoidPtr, no constructor in IDL";}function N(){this.ptr=xa();B(N)[this.ptr]=this}function z(){this.ptr= +ya();B(z)[this.ptr]=this}function H(){this.ptr=za();B(H)[this.ptr]=this}function E(){this.ptr=Aa();B(E)[this.ptr]=this}function O(){this.ptr=Ba();B(O)[this.ptr]=this}function I(){this.ptr=Ca();B(I)[this.ptr]=this}function F(){this.ptr=Da();B(F)[this.ptr]=this}function w(){this.ptr=Ea();B(w)[this.ptr]=this}function u(){this.ptr=Fa();B(u)[this.ptr]=this}function x(){this.ptr=Ga();B(x)[this.ptr]=this}function A(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr=Ha(f);B(A)[this.ptr]=this}p=p||{};var a="undefined"!== +typeof p?p:{},Ia=Object.assign,ua,ja;a.ready=new Promise(function(f,b){ua=f;ja=b});var Ja=!1,Ka=!1;a.onRuntimeInitialized=function(){Ja=!0;if(Ka&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ka=!0;if(Ja&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(f){if("string"!==typeof f)return!1;f=f.split(".");return 2>f.length||3=f[1]?!0:0!=f[0]||10>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,f+100663296);var e= +Math,g=e.min;d=Math.max(f,d);0>>16);r(ea.buffer);var t=1;break a}catch(tc){}t=void 0}if(t)return!0}return!1}};(function(){function f(e,g){a.asm=e.exports;ea=a.asm.f;r(ea.buffer);sa=a.asm.h;ma.unshift(a.asm.g);T--;a.monitorRunDependencies&&a.monitorRunDependencies(T);0==T&&(null!==oa&&(clearInterval(oa),oa=null),Z&&(e=Z,Z=null,e()))}function b(e){f(e.instance)}function c(e){return h().then(function(g){return WebAssembly.instantiate(g, +d)}).then(function(g){return g}).then(e,function(g){V("failed to asynchronously prepare wasm: "+g);k(g)})}var d={a:sc};T++;a.monitorRunDependencies&&a.monitorRunDependencies(T);if(a.instantiateWasm)try{return a.instantiateWasm(d,f)}catch(e){return V("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return W||"function"!==typeof WebAssembly.instantiateStreaming||J.startsWith("data:application/octet-stream;base64,")||J.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(J, +{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,d).then(b,function(g){V("wasm streaming compile failed: "+g);V("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ja);return{}})();a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.g).apply(null,arguments)};var Pa=a._emscripten_bind_VoidPtr___destroy___0=function(){return(Pa=a._emscripten_bind_VoidPtr___destroy___0=a.asm.i).apply(null,arguments)},xa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0= +function(){return(xa=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.j).apply(null,arguments)},Qa=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(Qa=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.k).apply(null,arguments)},ya=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(ya=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.l).apply(null,arguments)},Ra=a._emscripten_bind_PointAttribute_size_0=function(){return(Ra=a._emscripten_bind_PointAttribute_size_0= +a.asm.m).apply(null,arguments)},Sa=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(Sa=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.n).apply(null,arguments)},Ta=a._emscripten_bind_PointAttribute_data_type_0=function(){return(Ta=a._emscripten_bind_PointAttribute_data_type_0=a.asm.o).apply(null,arguments)},Ua=a._emscripten_bind_PointAttribute_num_components_0=function(){return(Ua=a._emscripten_bind_PointAttribute_num_components_0=a.asm.p).apply(null,arguments)},Va=a._emscripten_bind_PointAttribute_normalized_0= +function(){return(Va=a._emscripten_bind_PointAttribute_normalized_0=a.asm.q).apply(null,arguments)},Wa=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(Wa=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.r).apply(null,arguments)},Xa=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(Xa=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.s).apply(null,arguments)},Ya=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(Ya=a._emscripten_bind_PointAttribute_unique_id_0= +a.asm.t).apply(null,arguments)},Za=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Za=a._emscripten_bind_PointAttribute___destroy___0=a.asm.u).apply(null,arguments)},za=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(za=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.v).apply(null,arguments)},$a=a._emscripten_bind_PointCloud_num_attributes_0=function(){return($a=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.w).apply(null,arguments)},ab=a._emscripten_bind_PointCloud_num_points_0= +function(){return(ab=a._emscripten_bind_PointCloud_num_points_0=a.asm.x).apply(null,arguments)},bb=a._emscripten_bind_PointCloud___destroy___0=function(){return(bb=a._emscripten_bind_PointCloud___destroy___0=a.asm.y).apply(null,arguments)},Aa=a._emscripten_bind_Mesh_Mesh_0=function(){return(Aa=a._emscripten_bind_Mesh_Mesh_0=a.asm.z).apply(null,arguments)},cb=a._emscripten_bind_Mesh_num_faces_0=function(){return(cb=a._emscripten_bind_Mesh_num_faces_0=a.asm.A).apply(null,arguments)},db=a._emscripten_bind_Mesh_num_attributes_0= +function(){return(db=a._emscripten_bind_Mesh_num_attributes_0=a.asm.B).apply(null,arguments)},eb=a._emscripten_bind_Mesh_num_points_0=function(){return(eb=a._emscripten_bind_Mesh_num_points_0=a.asm.C).apply(null,arguments)},fb=a._emscripten_bind_Mesh_set_num_points_1=function(){return(fb=a._emscripten_bind_Mesh_set_num_points_1=a.asm.D).apply(null,arguments)},gb=a._emscripten_bind_Mesh___destroy___0=function(){return(gb=a._emscripten_bind_Mesh___destroy___0=a.asm.E).apply(null,arguments)},Ba=a._emscripten_bind_Metadata_Metadata_0= +function(){return(Ba=a._emscripten_bind_Metadata_Metadata_0=a.asm.F).apply(null,arguments)},hb=a._emscripten_bind_Metadata___destroy___0=function(){return(hb=a._emscripten_bind_Metadata___destroy___0=a.asm.G).apply(null,arguments)},Ca=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Ca=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.H).apply(null,arguments)},ib=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(ib=a._emscripten_bind_DracoInt8Array_GetValue_1= +a.asm.I).apply(null,arguments)},jb=a._emscripten_bind_DracoInt8Array_size_0=function(){return(jb=a._emscripten_bind_DracoInt8Array_size_0=a.asm.J).apply(null,arguments)},kb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(kb=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.K).apply(null,arguments)},Da=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=function(){return(Da=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=a.asm.L).apply(null,arguments)},lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3= +function(){return(lb=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=a.asm.M).apply(null,arguments)},mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=function(){return(mb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=a.asm.N).apply(null,arguments)},nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=function(){return(nb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=a.asm.O).apply(null,arguments)},ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=function(){return(ob=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3= +a.asm.P).apply(null,arguments)},pb=a._emscripten_bind_MetadataBuilder___destroy___0=function(){return(pb=a._emscripten_bind_MetadataBuilder___destroy___0=a.asm.Q).apply(null,arguments)},Ea=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=function(){return(Ea=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=a.asm.R).apply(null,arguments)},qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=function(){return(qb=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=a.asm.S).apply(null, +arguments)},rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=function(){return(rb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=a.asm.T).apply(null,arguments)},sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=function(){return(sb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=a.asm.U).apply(null,arguments)},tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=function(){return(tb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=a.asm.V).apply(null, +arguments)},ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=function(){return(ub=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=a.asm.W).apply(null,arguments)},vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=function(){return(vb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=a.asm.X).apply(null,arguments)},wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=function(){return(wb=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=a.asm.Y).apply(null, +arguments)},xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=function(){return(xb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=a.asm.Z).apply(null,arguments)},yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=function(){return(yb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=a.asm._).apply(null,arguments)},zb=a._emscripten_bind_PointCloudBuilder___destroy___0=function(){return(zb=a._emscripten_bind_PointCloudBuilder___destroy___0=a.asm.$).apply(null,arguments)}, +Fa=a._emscripten_bind_MeshBuilder_MeshBuilder_0=function(){return(Fa=a._emscripten_bind_MeshBuilder_MeshBuilder_0=a.asm.aa).apply(null,arguments)},Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=function(){return(Ab=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=a.asm.ba).apply(null,arguments)},Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=function(){return(Bb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=a.asm.ca).apply(null,arguments)},Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5= +function(){return(Cb=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=a.asm.da).apply(null,arguments)},Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=function(){return(Db=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=a.asm.ea).apply(null,arguments)},Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=function(){return(Eb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=a.asm.fa).apply(null,arguments)},Fb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=function(){return(Fb= +a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=a.asm.ga).apply(null,arguments)},Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=function(){return(Gb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=a.asm.ha).apply(null,arguments)},Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=function(){return(Hb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=a.asm.ia).apply(null,arguments)},Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=function(){return(Ib=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5= +a.asm.ja).apply(null,arguments)},Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=function(){return(Jb=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=a.asm.ka).apply(null,arguments)},Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=function(){return(Kb=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=a.asm.la).apply(null,arguments)},Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=function(){return(Lb=a._emscripten_bind_MeshBuilder_AddMetadata_2=a.asm.ma).apply(null,arguments)},Mb= +a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=function(){return(Mb=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=a.asm.na).apply(null,arguments)},Nb=a._emscripten_bind_MeshBuilder___destroy___0=function(){return(Nb=a._emscripten_bind_MeshBuilder___destroy___0=a.asm.oa).apply(null,arguments)},Ga=a._emscripten_bind_Encoder_Encoder_0=function(){return(Ga=a._emscripten_bind_Encoder_Encoder_0=a.asm.pa).apply(null,arguments)},Ob=a._emscripten_bind_Encoder_SetEncodingMethod_1=function(){return(Ob= +a._emscripten_bind_Encoder_SetEncodingMethod_1=a.asm.qa).apply(null,arguments)},Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=function(){return(Pb=a._emscripten_bind_Encoder_SetAttributeQuantization_2=a.asm.ra).apply(null,arguments)},Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=function(){return(Qb=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=a.asm.sa).apply(null,arguments)},Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2=function(){return(Rb=a._emscripten_bind_Encoder_SetSpeedOptions_2= +a.asm.ta).apply(null,arguments)},Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=function(){return(Sb=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=a.asm.ua).apply(null,arguments)},Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=function(){return(Tb=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=a.asm.va).apply(null,arguments)},Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=function(){return(Ub=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3= +a.asm.wa).apply(null,arguments)},Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=function(){return(Vb=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=a.asm.xa).apply(null,arguments)},Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=function(){return(Wb=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=a.asm.ya).apply(null,arguments)},Xb=a._emscripten_bind_Encoder___destroy___0=function(){return(Xb=a._emscripten_bind_Encoder___destroy___0=a.asm.za).apply(null,arguments)},Ha= +a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=function(){return(Ha=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=a.asm.Aa).apply(null,arguments)},Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=function(){return(Yb=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1=a.asm.Ba).apply(null,arguments)},Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=function(){return(Zb=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=a.asm.Ca).apply(null,arguments)},$b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5= +function(){return($b=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=a.asm.Da).apply(null,arguments)},ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=function(){return(ac=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=a.asm.Ea).apply(null,arguments)},bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=function(){return(bc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=a.asm.Fa).apply(null,arguments)},cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2= +function(){return(cc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=a.asm.Ga).apply(null,arguments)},dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=function(){return(dc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=a.asm.Ha).apply(null,arguments)},ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=function(){return(ec=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=a.asm.Ia).apply(null,arguments)},fc=a._emscripten_bind_ExpertEncoder___destroy___0= +function(){return(fc=a._emscripten_bind_ExpertEncoder___destroy___0=a.asm.Ja).apply(null,arguments)},gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(gc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.Ka).apply(null,arguments)},hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(hc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.La).apply(null,arguments)},ic=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(ic= +a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.Ma).apply(null,arguments)},jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(jc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.Na).apply(null,arguments)},kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(kc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.Oa).apply(null,arguments)},lc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(lc= +a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.Pa).apply(null,arguments)},mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(mc=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.Qa).apply(null,arguments)},nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(nc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.Ra).apply(null,arguments)},oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH= +function(){return(oc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.Sa).apply(null,arguments)},pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=function(){return(pc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=a.asm.Ta).apply(null,arguments)},qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=function(){return(qc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=a.asm.Ua).apply(null,arguments)}, +Oa=a._malloc=function(){return(Oa=a._malloc=a.asm.Va).apply(null,arguments)};a._free=function(){return(a._free=a.asm.Wa).apply(null,arguments)};var ba;Z=function b(){ba||G();ba||(Z=b)};a.run=G;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=n.size?(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var e=0;e { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(DracoDecoderModule) { + DracoDecoderModule = DracoDecoderModule || {}; + +var Module=typeof DracoDecoderModule!=="undefined"?DracoDecoderModule:{};var objAssign=Object.assign;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});if(!Object.getOwnPropertyDescriptor(Module["ready"],"_free")){Object.defineProperty(Module["ready"],"_free",{configurable:true,get:function(){abort("You are getting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_free",{configurable:true,set:function(){abort("You are setting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_malloc")){Object.defineProperty(Module["ready"],"_malloc",{configurable:true,get:function(){abort("You are getting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_malloc",{configurable:true,set:function(){abort("You are setting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_VoidPtr___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_VoidPtr___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_VoidPtr___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_VoidPtr___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_VoidPtr___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DecoderBuffer_DecoderBuffer_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DecoderBuffer_DecoderBuffer_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DecoderBuffer_DecoderBuffer_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DecoderBuffer_DecoderBuffer_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DecoderBuffer_DecoderBuffer_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DecoderBuffer_Init_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_DecoderBuffer_Init_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DecoderBuffer_Init_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DecoderBuffer_Init_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DecoderBuffer_Init_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DecoderBuffer___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DecoderBuffer___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DecoderBuffer___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DecoderBuffer___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DecoderBuffer___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeTransformData_AttributeTransformData_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeTransformData_AttributeTransformData_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeTransformData_AttributeTransformData_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeTransformData_AttributeTransformData_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeTransformData_AttributeTransformData_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeTransformData_transform_type_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeTransformData_transform_type_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeTransformData_transform_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeTransformData_transform_type_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeTransformData_transform_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeTransformData___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeTransformData___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeTransformData___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeTransformData___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeTransformData___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_GeometryAttribute_GeometryAttribute_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_GeometryAttribute_GeometryAttribute_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_GeometryAttribute_GeometryAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_GeometryAttribute_GeometryAttribute_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_GeometryAttribute_GeometryAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_GeometryAttribute___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_GeometryAttribute___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_GeometryAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_GeometryAttribute___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_GeometryAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_PointAttribute_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_PointAttribute_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_PointAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_PointAttribute_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_PointAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_GetAttributeTransformData_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_GetAttributeTransformData_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_GetAttributeTransformData_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_GetAttributeTransformData_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_GetAttributeTransformData_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_attribute_type_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_attribute_type_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_attribute_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_attribute_type_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_attribute_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_data_type_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_data_type_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_data_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_data_type_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_data_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_num_components_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_num_components_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_num_components_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_num_components_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_num_components_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_normalized_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_normalized_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_normalized_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_normalized_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_normalized_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_byte_stride_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_byte_stride_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_byte_stride_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_byte_stride_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_byte_stride_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_byte_offset_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_byte_offset_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_byte_offset_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_byte_offset_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_byte_offset_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_unique_id_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_unique_id_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_unique_id_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_unique_id_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_unique_id_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_min_value_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_min_value_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeQuantizationTransform_min_value_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_min_value_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeQuantizationTransform_min_value_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_range_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_range_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeQuantizationTransform_range_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform_range_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeQuantizationTransform_range_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeQuantizationTransform___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeQuantizationTransform___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeQuantizationTransform___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_AttributeOctahedronTransform___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_AttributeOctahedronTransform___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_AttributeOctahedronTransform___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloud_PointCloud_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_PointCloud_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloud_PointCloud_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_PointCloud_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloud_PointCloud_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloud_num_attributes_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_num_attributes_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloud_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_num_attributes_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloud_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloud_num_points_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_num_points_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloud_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_num_points_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloud_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloud___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloud___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloud___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_Mesh_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_Mesh_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_Mesh_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_Mesh_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_Mesh_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_num_faces_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_faces_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_num_faces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_faces_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_num_faces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_num_attributes_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_attributes_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_attributes_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_num_points_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_points_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_points_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Metadata_Metadata_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Metadata_Metadata_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Metadata_Metadata_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Metadata_Metadata_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Metadata_Metadata_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Metadata___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Metadata___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Metadata___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Metadata___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Metadata___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Status_code_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Status_code_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Status_code_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Status_code_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Status_code_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Status_ok_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Status_ok_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Status_ok_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Status_ok_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Status_ok_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Status_error_msg_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Status_error_msg_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Status_error_msg_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Status_error_msg_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Status_error_msg_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Status___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Status___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Status___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Status___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Status___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoFloat32Array_GetValue_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoFloat32Array_GetValue_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoFloat32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoFloat32Array_GetValue_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoFloat32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoFloat32Array_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoFloat32Array_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoFloat32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoFloat32Array_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoFloat32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoFloat32Array___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoFloat32Array___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoFloat32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoFloat32Array___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoFloat32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt8Array_DracoInt8Array_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_DracoInt8Array_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt8Array_DracoInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_DracoInt8Array_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt8Array_DracoInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt8Array_GetValue_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_GetValue_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_GetValue_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt8Array_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt8Array___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt8Array_DracoUInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt8Array_DracoUInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt8Array_GetValue_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt8Array_GetValue_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt8Array_GetValue_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt8Array_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt8Array_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt8Array_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt8Array___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt8Array___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt8Array___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt16Array_DracoInt16Array_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt16Array_DracoInt16Array_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt16Array_DracoInt16Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt16Array_DracoInt16Array_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt16Array_DracoInt16Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt16Array_GetValue_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt16Array_GetValue_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt16Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt16Array_GetValue_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt16Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt16Array_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt16Array_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt16Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt16Array_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt16Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt16Array___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt16Array___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt16Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt16Array___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt16Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt16Array_DracoUInt16Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt16Array_DracoUInt16Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt16Array_GetValue_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt16Array_GetValue_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt16Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt16Array_GetValue_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt16Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt16Array_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt16Array_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt16Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt16Array_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt16Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt16Array___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt16Array___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt16Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt16Array___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt16Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt32Array_DracoInt32Array_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt32Array_DracoInt32Array_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt32Array_DracoInt32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt32Array_DracoInt32Array_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt32Array_DracoInt32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt32Array_GetValue_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt32Array_GetValue_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt32Array_GetValue_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt32Array_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt32Array_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt32Array_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt32Array___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt32Array___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt32Array___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt32Array_DracoUInt32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt32Array_DracoUInt32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt32Array_GetValue_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt32Array_GetValue_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt32Array_GetValue_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt32Array_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt32Array_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt32Array_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoUInt32Array___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt32Array___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoUInt32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoUInt32Array___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoUInt32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier_MetadataQuerier_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_MetadataQuerier_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier_MetadataQuerier_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_MetadataQuerier_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier_MetadataQuerier_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier_HasEntry_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_HasEntry_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier_HasEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_HasEntry_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier_HasEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier_GetIntEntry_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetIntEntry_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier_GetIntEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetIntEntry_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier_GetIntEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier_GetIntEntryArray_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetIntEntryArray_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier_GetIntEntryArray_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetIntEntryArray_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier_GetIntEntryArray_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier_GetDoubleEntry_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetDoubleEntry_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier_GetDoubleEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetDoubleEntry_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier_GetDoubleEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier_GetStringEntry_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetStringEntry_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier_GetStringEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetStringEntry_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier_GetStringEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier_NumEntries_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_NumEntries_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier_NumEntries_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_NumEntries_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier_NumEntries_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier_GetEntryName_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetEntryName_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier_GetEntryName_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier_GetEntryName_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier_GetEntryName_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataQuerier___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataQuerier___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataQuerier___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataQuerier___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_Decoder_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_Decoder_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_Decoder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_Decoder_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_Decoder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_DecodeArrayToPointCloud_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_DecodeArrayToPointCloud_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_DecodeArrayToPointCloud_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_DecodeArrayToPointCloud_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_DecodeArrayToPointCloud_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_DecodeArrayToMesh_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_DecodeArrayToMesh_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_DecodeArrayToMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_DecodeArrayToMesh_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_DecodeArrayToMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeId_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeId_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeId_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeId_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeId_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIdByName_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIdByName_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeIdByName_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIdByName_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeIdByName_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttribute_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttribute_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttribute_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttribute_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttribute_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeByUniqueId_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeByUniqueId_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeByUniqueId_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeByUniqueId_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeByUniqueId_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetMetadata_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetMetadata_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetMetadata_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetMetadata_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetMetadata_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeMetadata_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeMetadata_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeMetadata_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetFaceFromMesh_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetFaceFromMesh_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetFaceFromMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetFaceFromMesh_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetFaceFromMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetTrianglesUInt16Array_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetTrianglesUInt16Array_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetTrianglesUInt16Array_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetTrianglesUInt16Array_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetTrianglesUInt16Array_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetTrianglesUInt32Array_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetTrianglesUInt32Array_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetTrianglesUInt32Array_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetTrianglesUInt32Array_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetTrianglesUInt32Array_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeFloat_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeFloat_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeFloat_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeFloat_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeFloat_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeIntForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeIntForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_SkipAttributeTransform_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_SkipAttributeTransform_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_SkipAttributeTransform_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_SkipAttributeTransform_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_SkipAttributeTransform_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_DecodeBufferToPointCloud_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_DecodeBufferToPointCloud_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_DecodeBufferToPointCloud_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_DecodeBufferToPointCloud_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_DecodeBufferToPointCloud_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder_DecodeBufferToMesh_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_DecodeBufferToMesh_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder_DecodeBufferToMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder_DecodeBufferToMesh_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder_DecodeBufferToMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Decoder___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Decoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Decoder___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Decoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_INVALID")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_INVALID",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_INVALID",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_POSITION")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_POSITION",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_POSITION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_POSITION",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_POSITION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_NORMAL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_NORMAL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_COLOR")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_COLOR",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_COLOR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_COLOR",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_COLOR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_GENERIC on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_GENERIC on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_INVALID")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INVALID",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INVALID",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT8")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT8",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_INT8 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT8",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_INT8 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT8")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT8",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_UINT8 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT8",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_UINT8 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT16")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT16",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_INT16 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT16",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_INT16 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT16")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT16",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_UINT16 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT16",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_UINT16 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT32")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT32",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_INT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT32",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_INT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT32")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT32",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_UINT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT32",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_UINT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT64")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT64",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_INT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_INT64",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_INT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT64")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT64",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_UINT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_UINT64",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_UINT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_FLOAT32")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_FLOAT32",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_FLOAT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_FLOAT32",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_FLOAT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_FLOAT64")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_FLOAT64",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_FLOAT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_FLOAT64",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_FLOAT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_BOOL")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_BOOL",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_BOOL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_BOOL",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_BOOL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_DataType_DT_TYPES_COUNT")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_TYPES_COUNT",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_DataType_DT_TYPES_COUNT on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_DataType_DT_TYPES_COUNT",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_DataType_DT_TYPES_COUNT on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_StatusCode_OK")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_OK",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_StatusCode_OK on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_OK",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_StatusCode_OK on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_StatusCode_DRACO_ERROR")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_DRACO_ERROR",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_StatusCode_DRACO_ERROR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_DRACO_ERROR",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_StatusCode_DRACO_ERROR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_StatusCode_IO_ERROR")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_IO_ERROR",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_StatusCode_IO_ERROR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_IO_ERROR",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_StatusCode_IO_ERROR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_StatusCode_INVALID_PARAMETER")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_INVALID_PARAMETER",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_StatusCode_INVALID_PARAMETER on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_INVALID_PARAMETER",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_StatusCode_INVALID_PARAMETER on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"onRuntimeInitialized")){Object.defineProperty(Module["ready"],"onRuntimeInitialized",{configurable:true,get:function(){abort("You are getting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"onRuntimeInitialized",{configurable:true,set:function(){abort("You are setting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides=objAssign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(!(typeof process==="object"&&typeof require==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=(()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}});read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?null:"utf8")};readBinary=(filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret});readAsync=((filename,onload,onerror)=>{var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})});if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof process==="object"&&typeof require==="function"||typeof window==="object"||typeof importScripts==="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(typeof read!="undefined"){read_=function shell_read(f){const data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){let data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};readAsync=function readAsync(f,onload,onerror){setTimeout(()=>onload(readBinary(f)),0)};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=((status,toThrow)=>{logExceptionOnExit(toThrow);quit(status)})}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}if(!(typeof window==="object"||typeof importScripts==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");{read_=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}});if(ENVIRONMENT_IS_WORKER){readBinary=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}})}readAsync=((url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=(()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()});xhr.onerror=onerror;xhr.send(null)})}setWindowTitle=(title=>document.title=title)}else{throw new Error("environment detection error")}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);objAssign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(!Object.getOwnPropertyDescriptor(Module,"arguments")){Object.defineProperty(Module,"arguments",{configurable:true,get:function(){abort("Module.arguments has been replaced with plain arguments_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(!Object.getOwnPropertyDescriptor(Module,"thisProgram")){Object.defineProperty(Module,"thisProgram",{configurable:true,get:function(){abort("Module.thisProgram has been replaced with plain thisProgram (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(Module["quit"])quit_=Module["quit"];if(!Object.getOwnPropertyDescriptor(Module,"quit")){Object.defineProperty(Module,"quit",{configurable:true,get:function(){abort("Module.quit has been replaced with plain quit_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]==="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]==="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]==="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]==="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");assert(typeof Module["TOTAL_MEMORY"]==="undefined","Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");if(!Object.getOwnPropertyDescriptor(Module,"read")){Object.defineProperty(Module,"read",{configurable:true,get:function(){abort("Module.read has been replaced with plain read_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"readAsync")){Object.defineProperty(Module,"readAsync",{configurable:true,get:function(){abort("Module.readAsync has been replaced with plain readAsync (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"readBinary")){Object.defineProperty(Module,"readBinary",{configurable:true,get:function(){abort("Module.readBinary has been replaced with plain readBinary (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"setWindowTitle")){Object.defineProperty(Module,"setWindowTitle",{configurable:true,get:function(){abort("Module.setWindowTitle has been replaced with plain setWindowTitle (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(!ENVIRONMENT_IS_SHELL,"shell environment detected but not enabled at build time. Add 'shell' to `-s ENVIRONMENT` to enable.");var POINTER_SIZE=4;function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){return func}var freeTableIndexes=[];var functionsInTableMap;function getEmptyTableSlot(){if(freeTableIndexes.length){return freeTableIndexes.pop()}try{wasmTable.grow(1)}catch(err){if(!(err instanceof RangeError)){throw err}throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."}return wasmTable.length-1}function updateTableMap(offset,count){for(var i=offset;i{tempRet0=value};var getTempRet0=()=>tempRet0;var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(!Object.getOwnPropertyDescriptor(Module,"wasmBinary")){Object.defineProperty(Module,"wasmBinary",{configurable:true,get:function(){abort("Module.wasmBinary has been replaced with plain wasmBinary (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}var noExitRuntime=Module["noExitRuntime"]||true;if(!Object.getOwnPropertyDescriptor(Module,"noExitRuntime")){Object.defineProperty(Module,"noExitRuntime",{configurable:true,get:function(){abort("Module.noExitRuntime has been replaced with plain noExitRuntime (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=( +// EMSCRIPTEN_START_ASM +function instantiate(sa){function c(d){d.set=function(a,b){this[a]=b};d.get=function(a){return this[a]};return d}var e;var f=new Uint8Array(123);for(var a=25;a>=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a>4;if(i>2;if(i>2];d=F[b+20>>2];e=F[b+16>>2];q=e+4|0;d=q>>>0<4?d+1|0:d;a:{b:{c:{if(q>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break c}d=e+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;q=F[b+16>>2];e=q+4|0;d=e>>>0<4?d+1|0:d;t=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[a>>2]>31){break c}e=F[b+12>>2];d=f;f=q+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=t+F[b>>2]|0;F[a+4>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;q=F[b+16>>2];e=q+4|0;d=e>>>0<4?d+1|0:d;t=e;F[b+16>>2]=e;F[b+20>>2]=d;e=F[b+12>>2];d=f;f=q+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=t+F[b>>2]|0;F[a+12>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;q=F[b+16>>2];e=q+4|0;d=e>>>0<4?d+1|0:d;p=e;F[b+16>>2]=e;F[b+20>>2]=d;d=F[a+20>>2];t=F[a+12>>2];if((t|0)!=(d|0)?d:0){break c}e=F[b+12>>2];d=f;f=q+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break c}d=p+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+16>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(f>>>0>=7){F[w>>2]=f;Wi(1857,w);break c}F[w+664>>2]=c;d:{if(!t){break d}e:{q=F[c>>2];if(t>>>0<=(F[c+8>>2]-q|0)/12>>>0){break e}if(t>>>0<357913942){e=F[c+4>>2];f=L(t,12);d=oj(f);t=d+f|0;f=d+L((e-q|0)/12|0,12)|0;d=f;if((e|0)!=(q|0)){d=f;while(1){d=d-12|0;e=e-12|0;F[d>>2]=F[e>>2];F[d+4>>2]=F[e+4>>2];F[d+8>>2]=F[e+8>>2];if((e|0)!=(q|0)){continue}break}}F[c+8>>2]=t;F[c+4>>2]=f;F[c>>2]=d;if(!q){break e}mj(q);break e}break b}f:{switch(F[a+16>>2]){case 0:h=sb(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;g:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break g}d=g+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;j=g;F[b+16>>2]=g;F[b+20>>2]=d;if(I[h>>2]>32){break g}g=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break g}d=j+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){break g}F[h+8>>2]=0;if(!ce(h+16|0,b)){break g}if(!ce(h+36|0,b)){break g}if(!ce(h+56|0,b)){break g}if(!ce(h+76|0,b)){break g}t=F[h+4>>2];f=0;b=0;e=fa-48|0;fa=e;g=F[h+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(g){if(g>>>0>=1073741824){break a}d=g<<2;f=oj(d);F[e+8>>2]=f;b=d+f|0;F[e+16>>2]=b;Qi(f,0,d);F[e+12>>2]=b}d=F[h+120>>2];j=F[d>>2];if(j){F[d+4>>2]=j;mj(j);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;g=F[h+12>>2];f=F[e+8>>2];b=F[e+12>>2]}F[d+4>>2]=b;F[d>>2]=f;F[d+8>>2]=F[e+16>>2];f=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;h:{if(g){if(g>>>0>=1073741824){break a}b=g<<2;i=oj(b);F[e+8>>2]=i;f=b+i|0;F[e+16>>2]=f;Qi(i,0,b);F[e+12>>2]=f}b=F[h+132>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[e+8>>2];f=F[e+12>>2]}F[b+4>>2]=f;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=t;b=F[e+28>>2];g=b+1|0;F[e+28>>2]=g;i:{if(b>>>0>g>>>0){break i}while(1){p=F[e+12>>2];f=F[e+24>>2];j=g-1|0;b=f+j|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;k=F[b+8>>2];i=F[b+4>>2];d=F[b>>2];F[e+28>>2]=j;b=F[e+16>>2];j=b-p|0;if(((j?L(j>>2,341)-1|0:0)-(g+f|0)|0)+1>>>0>=682){mj(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}f=0;if(d>>>0>t>>>0){break i}b=F[h+12>>2];i=(i|0)==(b-1|0)?0:i+1|0;if(i>>>0>=b>>>0){break i}g=L(k,12);p=g+F[h+132>>2]|0;j=g+F[h+120>>2]|0;j:{k:{m=i<<2;o=F[h>>2]-F[m+F[p>>2]>>2]|0;if(!o){if(!d){break k}while(1){b=F[j>>2];p=F[b+8>>2];m=F[b+4>>2];o=F[b>>2];b=F[q>>2];g=F[b+4>>2];l=F[b+8>>2];l:{if(g>>>0>>0){F[g+8>>2]=p;F[g+4>>2]=m;F[g>>2]=o;F[b+4>>2]=g+12;break l}k=F[b>>2];n=(g-k|0)/12|0;i=n+1|0;if(i>>>0>=357913942){break a}l=(l-k|0)/12|0;r=l<<1;i=l>>>0<178956970?i>>>0>r>>>0?i:r:357913941;if(i>>>0>=357913942){break b}v=L(n,12);l=L(i,12);n=oj(l);i=v+n|0;F[i+8>>2]=p;F[i+4>>2]=m;F[i>>2]=o;p=i+12|0;if((g|0)!=(k|0)){while(1){i=i-12|0;g=g-12|0;F[i>>2]=F[g>>2];F[i+4>>2]=F[g+4>>2];F[i+8>>2]=F[g+8>>2];if((g|0)!=(k|0)){continue}break}}F[b+8>>2]=l+n;F[b+4>>2]=p;F[b>>2]=i;if(!k){break l}mj(k)}F[h+8>>2]=F[h+8>>2]+1;f=f+1|0;if((d|0)!=(f|0)){continue}break}break k}m:{n:{o:{p:{if(d>>>0<=2){b=F[h+108>>2];F[b>>2]=i;f=1;g=F[h+12>>2];if(g>>>0>1){break p}break m}if(I[h+8>>2]>I[h+4>>2]){break i}b=F[h+120>>2];l=k+1|0;p=L(l,12);f=b+p|0;if((f|0)!=(j|0)){Na(f,F[j>>2],F[j+4>>2]);b=F[h+120>>2]}b=m+F[b+p>>2]|0;F[b>>2]=F[b>>2]+(1<>2];o=32-f|0;q:{if((b|0)<=(o|0)){j=F[h+28>>2];if((j|0)==F[h+20>>2]){f=0;break q}o=F[j>>2];n=b+f|0;F[h+32>>2]=n;f=o<>>32-b|0;if((n|0)!=32){break q}F[h+32>>2]=0;F[h+28>>2]=j+4;break q}j=F[h+28>>2];n=j+4|0;if((n|0)==F[h+20>>2]){f=0;break q}r=F[j>>2];F[h+28>>2]=n;o=b-o|0;F[h+32>>2]=o;f=F[j+4>>2]>>>32-o|r<>>32-b}b=(d>>>1|0)-f|0;f=d-b|0;r:{if((f|0)==(b|0)){d=b;break r}d=F[h+88>>2];if((d|0)==F[h+80>>2]){break o}j=F[d>>2];o=F[h+92>>2];n=o+1|0;F[h+92>>2]=n;j=j&-2147483648>>>o;s:{if((n|0)==32){F[h+92>>2]=0;F[h+88>>2]=d+4;if(j){break s}break o}if(!j){break o}}d=f}f=b;break n}while(1){i=(g-1|0)==(i|0)?0:i+1|0;F[b+(f<<2)>>2]=i;f=f+1|0;g=F[h+12>>2];if(f>>>0>>0){continue}break}break m}d=b}b=F[h+132>>2];g=b+g|0;j=F[g>>2];m=j+m|0;F[m>>2]=F[m>>2]+1;Na(b+p|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];j=F[e+16>>2]-b|0;if((g|0)==((j?L(j>>2,341)-1|0:0)|0)){Nb(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=b}b=(g>>>0)/341|0;b=F[j+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break k}g=F[e+28>>2]+F[e+24>>2]|0;f=F[e+12>>2];b=F[e+16>>2]-f|0;if((g|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;f=F[e+12>>2]}b=(g>>>0)/341|0;b=F[f+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=i;F[b>>2]=d;g=F[e+28>>2]+1|0;F[e+28>>2]=g;break j}i=0;if(!d){break k}while(1){f=F[h+96>>2];if(g){m=F[h+40>>2];r=F[h+108>>2];x=F[j>>2];z=F[p>>2];g=0;while(1){o=r+(g<<2)|0;F[(F[o>>2]<<2)+f>>2]=0;k=F[o>>2]<<2;b=F[h>>2]-F[k+z>>2]|0;t:{if(!b){break t}k=f+k|0;l=F[h+52>>2];s=32-l|0;if((s|0)>=(b|0)){n=F[h+48>>2];if((n|0)==(m|0)){F[k>>2]=0;break t}F[k>>2]=F[n>>2]<>>32-b;b=b+F[h+52>>2]|0;F[h+52>>2]=b;if((b|0)!=32){break t}F[h+52>>2]=0;F[h+48>>2]=n+4;break t}n=F[h+48>>2];u=n+4|0;if((u|0)==(m|0)){F[k>>2]=0;break t}y=F[n>>2];F[h+48>>2]=u;s=b-s|0;F[h+52>>2]=s;F[k>>2]=F[n+4>>2]>>>32-s|y<>>32-b}b=F[o>>2]<<2;k=b+f|0;F[k>>2]=F[k>>2]|F[b+x>>2];g=g+1|0;if(g>>>0>2]){continue}break}f=F[h+96>>2]}F[e+32>>2]=F[f>>2];F[e+36>>2]=F[f+4>>2];F[e+40>>2]=F[f+8>>2];Ni(F[q>>2],e+32|0);F[h+8>>2]=F[h+8>>2]+1;i=i+1|0;if((d|0)==(i|0)){break k}g=F[h+12>>2];continue}}g=F[e+28>>2]}if(g){continue}break}}F[e+28>>2]=0;g=F[e+16>>2];b=F[e+12>>2];i=g-b|0;if(i>>>0>=9){while(1){mj(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;g=F[e+16>>2];i=g-b|0;if(i>>>0>8){continue}break}}f=170;u:{switch((i>>>2|0)-1|0){case 1:f=341;case 0:F[e+24>>2]=f;break;default:break u}}v:{if((b|0)==(g|0)){break v}while(1){mj(F[b>>2]);b=b+4|0;if((g|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break v}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){mj(b)}fa=e+48|0;break h}}rb(h);break d;case 1:h=sb(w+8|0,3);t=w+664|0;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;w:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break w}d=g+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;k=g;F[b+16>>2]=g;F[b+20>>2]=d;if(I[h>>2]>32){break w}g=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break w}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){break w}F[h+8>>2]=0;if(!ce(h+16|0,b)){break w}if(!ce(h+36|0,b)){break w}if(!ce(h+56|0,b)){break w}if(!ce(h+76|0,b)){break w}p=F[h+4>>2];f=0;e=fa-48|0;fa=e;g=F[h+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(g){if(g>>>0>=1073741824){break a}b=g<<2;j=oj(b);F[e+8>>2]=j;f=b+j|0;F[e+16>>2]=f;Qi(j,0,b);F[e+12>>2]=f}b=F[h+120>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[e+8>>2];g=F[h+12>>2];f=F[e+12>>2]}F[b+4>>2]=f;F[b>>2]=j;F[b+8>>2]=F[e+16>>2];j=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;x:{if(g){if(g>>>0>=1073741824){break a}b=g<<2;i=oj(b);F[e+8>>2]=i;j=b+i|0;F[e+16>>2]=j;Qi(i,0,b);F[e+12>>2]=j}b=F[h+132>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;j=F[e+12>>2];i=F[e+8>>2]}F[b+4>>2]=j;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[e+28>>2];g=b+1|0;F[e+28>>2]=g;y:{if(b>>>0>g>>>0){break y}while(1){j=F[e+12>>2];f=F[e+24>>2];i=g-1|0;b=f+i|0;d=(b>>>0)/341|0;b=F[j+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;q=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[e+28>>2]=i;i=F[e+16>>2];j=i-j|0;if(((j?L(j>>2,341)-1|0:0)-(g+f|0)|0)+1>>>0>=682){mj(F[i-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(b>>>0>p>>>0){break y}f=0;g=F[h+12>>2];i=(d|0)==(g-1|0)?0:d+1|0;if(i>>>0>=g>>>0){break y}d=F[h+120>>2];g=L(q,12);k=d+g|0;z:{A:{j=i<<2;n=g+F[h+132>>2]|0;m=F[h>>2]-F[j+F[n>>2]>>2]|0;if(!m){if(!b){break A}while(1){d=F[k>>2];q=F[d+8>>2];m=F[d+4>>2];o=F[d>>2];d=F[t>>2];g=F[d+4>>2];l=F[d+8>>2];B:{if(g>>>0>>0){F[g+8>>2]=q;F[g+4>>2]=m;F[g>>2]=o;F[d+4>>2]=g+12;break B}j=F[d>>2];n=(g-j|0)/12|0;i=n+1|0;if(i>>>0>=357913942){break a}l=(l-j|0)/12|0;r=l<<1;i=l>>>0<178956970?i>>>0>r>>>0?i:r:357913941;if(i>>>0>=357913942){break b}v=L(n,12);l=L(i,12);n=oj(l);i=v+n|0;F[i+8>>2]=q;F[i+4>>2]=m;F[i>>2]=o;q=i+12|0;if((g|0)!=(j|0)){while(1){i=i-12|0;g=g-12|0;F[i>>2]=F[g>>2];F[i+4>>2]=F[g+4>>2];F[i+8>>2]=F[g+8>>2];if((g|0)!=(j|0)){continue}break}}F[d+8>>2]=l+n;F[d+4>>2]=q;F[d>>2]=i;if(!j){break B}mj(j)}F[h+8>>2]=F[h+8>>2]+1;f=f+1|0;if((b|0)!=(f|0)){continue}break}break A}C:{D:{E:{F:{if(b>>>0<=2){d=F[h+108>>2];F[d>>2]=i;j=1;g=F[h+12>>2];if(g>>>0>1){break F}break C}if(I[h+8>>2]>I[h+4>>2]){break y}f=d;d=g+12|0;Na(f+d|0,F[k>>2],F[k+4>>2]);d=j+F[d+F[h+120>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>2];m=32-f|0;G:{if((d|0)<=(m|0)){k=F[h+28>>2];if((k|0)==F[h+20>>2]){f=0;break G}m=F[k>>2];o=d+f|0;F[h+32>>2]=o;f=m<>>32-d|0;if((o|0)!=32){break G}F[h+32>>2]=0;F[h+28>>2]=k+4;break G}k=F[h+28>>2];o=k+4|0;if((o|0)==F[h+20>>2]){f=0;break G}l=F[k>>2];F[h+28>>2]=o;m=d-m|0;F[h+32>>2]=m;f=F[k+4>>2]>>>32-m|l<>>32-d}k=q+1|0;d=b;b=(b>>>1|0)-f|0;f=d-b|0;H:{if((f|0)==(b|0)){d=b;break H}d=F[h+88>>2];if((d|0)==F[h+80>>2]){break E}m=F[d>>2];o=F[h+92>>2];l=o+1|0;F[h+92>>2]=l;m=m&-2147483648>>>o;I:{if((l|0)==32){F[h+92>>2]=0;F[h+88>>2]=d+4;if(m){break I}break E}if(!m){break E}}d=f}f=b;break D}while(1){i=(g-1|0)==(i|0)?0:i+1|0;F[d+(j<<2)>>2]=i;g=F[h+12>>2];j=j+1|0;if(g>>>0>j>>>0){continue}break}break C}d=b}v=j;b=F[h+132>>2];g=b+g|0;j=F[g>>2];m=v+j|0;F[m>>2]=F[m>>2]+1;Na(b+L(k,12)|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;j=F[e+12>>2];b=F[e+16>>2]-j|0;if((g|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(e+8|0);j=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+j>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=i;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break A}g=F[e+28>>2]+F[e+24>>2]|0;j=F[e+12>>2];b=F[e+16>>2]-j|0;if((g|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(e+8|0);j=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+j>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=d;g=F[e+28>>2]+1|0;F[e+28>>2]=g;break z}i=0;if(!b){break A}while(1){j=F[h+96>>2];if(g){q=F[h+40>>2];r=F[h+108>>2];x=F[k>>2];z=F[n>>2];g=0;while(1){m=r+(g<<2)|0;F[(F[m>>2]<<2)+j>>2]=0;f=F[m>>2]<<2;d=F[h>>2]-F[f+z>>2]|0;J:{if(!d){break J}f=f+j|0;o=F[h+52>>2];s=32-o|0;if((s|0)>=(d|0)){l=F[h+48>>2];if((l|0)==(q|0)){F[f>>2]=0;break J}F[f>>2]=F[l>>2]<>>32-d;d=d+F[h+52>>2]|0;F[h+52>>2]=d;if((d|0)!=32){break J}F[h+52>>2]=0;F[h+48>>2]=l+4;break J}l=F[h+48>>2];u=l+4|0;if((u|0)==(q|0)){F[f>>2]=0;break J}y=F[l>>2];F[h+48>>2]=u;s=d-s|0;F[h+52>>2]=s;F[f>>2]=F[l+4>>2]>>>32-s|y<>>32-d}d=F[m>>2]<<2;f=d+j|0;F[f>>2]=F[f>>2]|F[d+x>>2];g=g+1|0;if(g>>>0>2]){continue}break}j=F[h+96>>2]}F[e+32>>2]=F[j>>2];F[e+36>>2]=F[j+4>>2];F[e+40>>2]=F[j+8>>2];Ni(F[t>>2],e+32|0);F[h+8>>2]=F[h+8>>2]+1;i=i+1|0;if((b|0)==(i|0)){break A}g=F[h+12>>2];continue}}g=F[e+28>>2]}if(g){continue}break}}F[e+28>>2]=0;g=F[e+16>>2];b=F[e+12>>2];i=g-b|0;if(i>>>0>=9){while(1){mj(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;g=F[e+16>>2];i=g-b|0;if(i>>>0>8){continue}break}}j=170;K:{switch((i>>>2|0)-1|0){case 1:j=341;case 0:F[e+24>>2]=j;break;default:break K}}L:{if((b|0)==(g|0)){break L}while(1){mj(F[b>>2]);b=b+4|0;if((g|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break L}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){mj(b)}fa=e+48|0;break x}}rb(h);break d;case 2:i=wb(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];e=g+4|0;d=e>>>0<4?d+1|0:d;M:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break M}d=g+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];g=e+4|0;d=g>>>0<4?d+1|0:d;h=g;F[b+16>>2]=h;F[b+20>>2]=d;if(I[i>>2]>32){break M}g=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(g|0)|(d|0)>(g|0)){break M}d=h+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){break M}F[i+8>>2]=0;if(!de(i+16|0,b)){break M}if(!ce(i+32|0,b)){break M}if(!ce(i+52|0,b)){break M}if(!ce(i+72|0,b)){break M}t=F[i+4>>2];f=0;b=0;g=fa-48|0;fa=g;e=F[i+12>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;if(e){if(e>>>0>=1073741824){break a}d=e<<2;f=oj(d);F[g+8>>2]=f;b=d+f|0;F[g+16>>2]=b;Qi(f,0,d);F[g+12>>2]=b}d=F[i+116>>2];h=F[d>>2];if(h){F[d+4>>2]=h;mj(h);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;e=F[i+12>>2];f=F[g+8>>2];b=F[g+12>>2]}F[d+4>>2]=b;F[d>>2]=f;F[d+8>>2]=F[g+16>>2];f=0;F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;N:{if(e){if(e>>>0>=1073741824){break a}b=e<<2;k=oj(b);F[g+8>>2]=k;f=b+k|0;F[g+16>>2]=f;Qi(k,0,b);F[g+12>>2]=f}b=F[i+128>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;k=F[g+8>>2];f=F[g+12>>2]}F[b+4>>2]=f;F[b>>2]=k;F[b+8>>2]=F[g+16>>2];F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;Nb(g+8|0);b=F[g+24>>2]+F[g+28>>2]|0;d=(b>>>0)/341|0;b=F[F[g+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=t;b=F[g+28>>2];e=b+1|0;F[g+28>>2]=e;O:{if(b>>>0>e>>>0){break O}r=i+16|0;while(1){p=F[g+12>>2];f=F[g+24>>2];k=e-1|0;b=f+k|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;j=F[b+8>>2];h=F[b+4>>2];d=F[b>>2];F[g+28>>2]=k;b=F[g+16>>2];k=b-p|0;if(((k?L(k>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){mj(F[b-4>>2]);F[g+16>>2]=F[g+16>>2]-4}f=0;if(d>>>0>t>>>0){break O}b=F[i+12>>2];k=(h|0)==(b-1|0)?0:h+1|0;if(k>>>0>=b>>>0){break O}e=L(j,12);p=e+F[i+128>>2]|0;h=e+F[i+116>>2]|0;P:{m=k<<2;o=F[i>>2]-F[m+F[p>>2]>>2]|0;if(!o){if(!d){break P}while(1){b=F[h>>2];p=F[b+8>>2];m=F[b+4>>2];o=F[b>>2];b=F[q>>2];e=F[b+4>>2];l=F[b+8>>2];Q:{if(e>>>0>>0){F[e+8>>2]=p;F[e+4>>2]=m;F[e>>2]=o;F[b+4>>2]=e+12;break Q}j=F[b>>2];n=(e-j|0)/12|0;k=n+1|0;if(k>>>0>=357913942){break a}l=(l-j|0)/12|0;x=l<<1;k=l>>>0<178956970?k>>>0>x>>>0?k:x:357913941;if(k>>>0>=357913942){break b}v=L(n,12);l=L(k,12);n=oj(l);k=v+n|0;F[k+8>>2]=p;F[k+4>>2]=m;F[k>>2]=o;p=k+12|0;if((e|0)!=(j|0)){while(1){k=k-12|0;e=e-12|0;F[k>>2]=F[e>>2];F[k+4>>2]=F[e+4>>2];F[k+8>>2]=F[e+8>>2];if((e|0)!=(j|0)){continue}break}}F[b+8>>2]=l+n;F[b+4>>2]=p;F[b>>2]=k;if(!j){break Q}mj(j)}F[i+8>>2]=F[i+8>>2]+1;f=f+1|0;if((d|0)!=(f|0)){continue}break}break P}R:{S:{T:{U:{if(d>>>0<=2){b=F[i+104>>2];F[b>>2]=k;f=1;e=F[i+12>>2];if(e>>>0>1){break U}break R}if(I[i+8>>2]>I[i+4>>2]){break O}b=F[i+116>>2];l=j+1|0;p=L(l,12);f=b+p|0;if((f|0)!=(h|0)){Na(f,F[h>>2],F[h+4>>2]);b=F[i+116>>2]}b=m+F[b+p>>2]|0;F[b>>2]=F[b>>2]+(1<>2]=0;ge(r,O(d)^31,g+32|0);b=(d>>>1|0)-F[g+32>>2]|0;f=d-b|0;V:{if((f|0)==(b|0)){d=b;break V}d=F[i+84>>2];if((d|0)==F[i+76>>2]){break T}h=F[d>>2];o=F[i+88>>2];n=o+1|0;F[i+88>>2]=n;h=h&-2147483648>>>o;W:{if((n|0)==32){F[i+88>>2]=0;F[i+84>>2]=d+4;if(h){break W}break T}if(!h){break T}}d=f}f=b;break S}while(1){k=(e-1|0)==(k|0)?0:k+1|0;F[b+(f<<2)>>2]=k;e=F[i+12>>2];f=f+1|0;if(e>>>0>f>>>0){continue}break}break R}d=b}b=F[i+128>>2];e=b+e|0;h=F[e>>2];m=h+m|0;F[m>>2]=F[m>>2]+1;Na(b+p|0,h,F[e+4>>2]);if(f){e=F[g+28>>2]+F[g+24>>2]|0;b=F[g+12>>2];h=F[g+16>>2]-b|0;if((e|0)==((h?L(h>>2,341)-1|0:0)|0)){Nb(g+8|0);e=F[g+24>>2]+F[g+28>>2]|0;v=F[g+12>>2]}else{v=b}b=(e>>>0)/341|0;b=F[v+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=j;F[b+4>>2]=k;F[b>>2]=f;F[g+28>>2]=F[g+28>>2]+1}if(!d){break P}e=F[g+28>>2]+F[g+24>>2]|0;f=F[g+12>>2];b=F[g+16>>2]-f|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(g+8|0);e=F[g+24>>2]+F[g+28>>2]|0;f=F[g+12>>2]}b=(e>>>0)/341|0;b=F[f+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=k;F[b>>2]=d;F[g+28>>2]=F[g+28>>2]+1;break P}k=0;if(!d){break P}while(1){f=F[i+92>>2];if(e){m=F[i+36>>2];x=F[i+104>>2];z=F[h>>2];s=F[p>>2];e=0;while(1){o=x+(e<<2)|0;F[(F[o>>2]<<2)+f>>2]=0;j=F[o>>2]<<2;b=F[i>>2]-F[j+s>>2]|0;X:{if(!b){break X}j=f+j|0;l=F[i+48>>2];u=32-l|0;if((u|0)>=(b|0)){n=F[i+44>>2];if((n|0)==(m|0)){F[j>>2]=0;break X}F[j>>2]=F[n>>2]<>>32-b;b=b+F[i+48>>2]|0;F[i+48>>2]=b;if((b|0)!=32){break X}F[i+48>>2]=0;F[i+44>>2]=n+4;break X}n=F[i+44>>2];y=n+4|0;if((y|0)==(m|0)){F[j>>2]=0;break X}v=F[n>>2];F[i+44>>2]=y;u=b-u|0;F[i+48>>2]=u;F[j>>2]=F[n+4>>2]>>>32-u|v<>>32-b}b=F[o>>2]<<2;j=b+f|0;F[j>>2]=F[j>>2]|F[b+z>>2];e=e+1|0;if(e>>>0>2]){continue}break}f=F[i+92>>2]}F[g+32>>2]=F[f>>2];F[g+36>>2]=F[f+4>>2];F[g+40>>2]=F[f+8>>2];Ni(F[q>>2],g+32|0);F[i+8>>2]=F[i+8>>2]+1;k=k+1|0;if((d|0)==(k|0)){break P}e=F[i+12>>2];continue}}e=F[g+28>>2];if(e){continue}break}}F[g+28>>2]=0;e=F[g+16>>2];b=F[g+12>>2];k=e-b|0;if(k>>>0>=9){while(1){mj(F[b>>2]);b=F[g+12>>2]+4|0;F[g+12>>2]=b;e=F[g+16>>2];k=e-b|0;if(k>>>0>8){continue}break}}f=170;Y:{switch((k>>>2|0)-1|0){case 1:f=341;case 0:F[g+24>>2]=f;break;default:break Y}}Z:{if((b|0)==(e|0)){break Z}while(1){mj(F[b>>2]);b=b+4|0;if((e|0)!=(b|0)){continue}break}b=F[g+16>>2];d=F[g+12>>2];if((b|0)==(d|0)){break Z}F[g+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[g+8>>2];if(b){mj(b)}fa=g+48|0;break N}}vb(i);break d;case 3:j=wb(w+8|0,3);t=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];h=e+4|0;d=h>>>0<4?d+1|0:d;_:{if(h>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break _}d=e+F[b>>2]|0;F[j>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;h=F[b+16>>2];e=h+4|0;d=e>>>0<4?d+1|0:d;k=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[j>>2]>32){break _}e=F[b+12>>2];d=f;f=h+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break _}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[j+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break _}F[j+8>>2]=0;if(!de(j+16|0,b)){break _}if(!ce(j+32|0,b)){break _}if(!ce(j+52|0,b)){break _}if(!ce(j+72|0,b)){break _}p=F[j+4>>2];f=0;h=fa-48|0;fa=h;e=F[j+12>>2];F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;if(e){if(e>>>0>=1073741824){break a}b=e<<2;g=oj(b);F[h+8>>2]=g;f=b+g|0;F[h+16>>2]=f;Qi(g,0,b);F[h+12>>2]=f}b=F[j+116>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;g=F[h+8>>2];e=F[j+12>>2];f=F[h+12>>2]}F[b+4>>2]=f;F[b>>2]=g;F[b+8>>2]=F[h+16>>2];g=0;F[h+16>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;$:{if(e){if(e>>>0>=1073741824){break a}b=e<<2;i=oj(b);F[h+8>>2]=i;g=b+i|0;F[h+16>>2]=g;Qi(i,0,b);F[h+12>>2]=g}b=F[j+128>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[h+8>>2];g=F[h+12>>2]}F[b+4>>2]=g;F[b>>2]=i;F[b+8>>2]=F[h+16>>2];F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h+8>>2]=0;F[h+12>>2]=0;Nb(h+8|0);b=F[h+24>>2]+F[h+28>>2]|0;d=(b>>>0)/341|0;b=F[F[h+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[h+28>>2];e=b+1|0;F[h+28>>2]=e;aa:{if(b>>>0>e>>>0){break aa}n=j+16|0;while(1){i=F[h+12>>2];f=F[h+24>>2];g=e-1|0;b=f+g|0;d=(b>>>0)/341|0;b=F[i+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;k=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[h+28>>2]=g;g=F[h+16>>2];i=g-i|0;if(((i?L(i>>2,341)-1|0:0)-(e+f|0)|0)+1>>>0>=682){mj(F[g-4>>2]);F[h+16>>2]=F[h+16>>2]-4}if(b>>>0>p>>>0){break aa}f=0;g=F[j+12>>2];i=(d|0)==(g-1|0)?0:d+1|0;if(i>>>0>=g>>>0){break aa}d=F[j+116>>2];g=L(k,12);q=d+g|0;ba:{e=i<<2;r=g+F[j+128>>2]|0;m=F[j>>2]-F[e+F[r>>2]>>2]|0;if(!m){if(!b){break ba}while(1){d=F[q>>2];k=F[d+8>>2];m=F[d+4>>2];o=F[d>>2];d=F[t>>2];e=F[d+4>>2];l=F[d+8>>2];ca:{if(e>>>0>>0){F[e+8>>2]=k;F[e+4>>2]=m;F[e>>2]=o;F[d+4>>2]=e+12;break ca}g=F[d>>2];r=(e-g|0)/12|0;i=r+1|0;if(i>>>0>=357913942){break a}l=(l-g|0)/12|0;x=l<<1;i=l>>>0<178956970?i>>>0>x>>>0?i:x:357913941;if(i>>>0>=357913942){break b}v=L(r,12);l=L(i,12);r=oj(l);i=v+r|0;F[i+8>>2]=k;F[i+4>>2]=m;F[i>>2]=o;k=i+12|0;if((e|0)!=(g|0)){while(1){i=i-12|0;e=e-12|0;F[i>>2]=F[e>>2];F[i+4>>2]=F[e+4>>2];F[i+8>>2]=F[e+8>>2];if((e|0)!=(g|0)){continue}break}}F[d+8>>2]=l+r;F[d+4>>2]=k;F[d>>2]=i;if(!g){break ca}mj(g)}F[j+8>>2]=F[j+8>>2]+1;f=f+1|0;if((b|0)!=(f|0)){continue}break}break ba}da:{ea:{fa:{ga:{if(b>>>0<=2){d=F[j+104>>2];F[d>>2]=i;g=1;e=F[j+12>>2];if(e>>>0>1){break ga}break da}if(I[j+8>>2]>I[j+4>>2]){break aa}f=d;d=g+12|0;Na(f+d|0,F[q>>2],F[q+4>>2]);d=e+F[d+F[j+116>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>2]=0;ge(n,O(b)^31,h+32|0);q=k+1|0;d=b;b=(b>>>1|0)-F[h+32>>2]|0;f=d-b|0;ha:{if((f|0)==(b|0)){d=b;break ha}d=F[j+84>>2];if((d|0)==F[j+76>>2]){break fa}m=F[d>>2];o=F[j+88>>2];l=o+1|0;F[j+88>>2]=l;m=m&-2147483648>>>o;ia:{if((l|0)==32){F[j+88>>2]=0;F[j+84>>2]=d+4;if(m){break ia}break fa}if(!m){break fa}}d=f}f=b;break ea}while(1){i=(e-1|0)==(i|0)?0:i+1|0;F[d+(g<<2)>>2]=i;e=F[j+12>>2];g=g+1|0;if(e>>>0>g>>>0){continue}break}break da}d=b}v=e;b=F[j+128>>2];g=b+g|0;e=F[g>>2];m=v+e|0;F[m>>2]=F[m>>2]+1;Na(b+L(q,12)|0,e,F[g+4>>2]);if(f){e=F[h+28>>2]+F[h+24>>2]|0;g=F[h+12>>2];b=F[h+16>>2]-g|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(h+8|0);e=F[h+24>>2]+F[h+28>>2]|0;g=F[h+12>>2]}b=(e>>>0)/341|0;b=F[g+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=f;F[h+28>>2]=F[h+28>>2]+1}if(!d){break ba}e=F[h+28>>2]+F[h+24>>2]|0;g=F[h+12>>2];b=F[h+16>>2]-g|0;if((e|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(h+8|0);e=F[h+24>>2]+F[h+28>>2]|0;g=F[h+12>>2]}b=(e>>>0)/341|0;b=F[g+(b<<2)>>2]+L(e-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=i;F[b>>2]=d;F[h+28>>2]=F[h+28>>2]+1;break ba}k=0;if(!b){break ba}while(1){g=F[j+92>>2];if(e){i=F[j+36>>2];x=F[j+104>>2];z=F[q>>2];s=F[r>>2];e=0;while(1){m=x+(e<<2)|0;F[(F[m>>2]<<2)+g>>2]=0;f=F[m>>2]<<2;d=F[j>>2]-F[f+s>>2]|0;ja:{if(!d){break ja}f=g+f|0;o=F[j+48>>2];u=32-o|0;if((u|0)>=(d|0)){l=F[j+44>>2];if((l|0)==(i|0)){F[f>>2]=0;break ja}F[f>>2]=F[l>>2]<>>32-d;d=d+F[j+48>>2]|0;F[j+48>>2]=d;if((d|0)!=32){break ja}F[j+48>>2]=0;F[j+44>>2]=l+4;break ja}l=F[j+44>>2];y=l+4|0;if((y|0)==(i|0)){F[f>>2]=0;break ja}v=F[l>>2];F[j+44>>2]=y;u=d-u|0;F[j+48>>2]=u;F[f>>2]=F[l+4>>2]>>>32-u|v<>>32-d}d=F[m>>2]<<2;f=d+g|0;F[f>>2]=F[f>>2]|F[d+z>>2];e=e+1|0;if(e>>>0>2]){continue}break}g=F[j+92>>2]}F[h+32>>2]=F[g>>2];F[h+36>>2]=F[g+4>>2];F[h+40>>2]=F[g+8>>2];Ni(F[t>>2],h+32|0);F[j+8>>2]=F[j+8>>2]+1;k=k+1|0;if((b|0)==(k|0)){break ba}e=F[j+12>>2];continue}}e=F[h+28>>2];if(e){continue}break}}F[h+28>>2]=0;e=F[h+16>>2];b=F[h+12>>2];i=e-b|0;if(i>>>0>=9){while(1){mj(F[b>>2]);b=F[h+12>>2]+4|0;F[h+12>>2]=b;e=F[h+16>>2];i=e-b|0;if(i>>>0>8){continue}break}}g=170;ka:{switch((i>>>2|0)-1|0){case 1:g=341;case 0:F[h+24>>2]=g;break;default:break ka}}la:{if((b|0)==(e|0)){break la}while(1){mj(F[b>>2]);b=b+4|0;if((e|0)!=(b|0)){continue}break}b=F[h+16>>2];d=F[h+12>>2];if((b|0)==(d|0)){break la}F[h+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[h+8>>2];if(b){mj(b)}fa=h+48|0;break $}}vb(j);break d;case 4:i=Ab(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;ma:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break ma}d=e+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;k=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[i>>2]>32){break ma}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break ma}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break ma}F[i+8>>2]=0;if(!Fb(i+16|0,b)){break ma}if(!ce(i+544|0,b)){break ma}if(!ce(i+564|0,b)){break ma}if(!ce(i+584|0,b)){break ma}t=F[i+4>>2];d=0;e=fa-48|0;fa=e;f=F[i+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;g=oj(b);F[e+8>>2]=g;d=b+g|0;F[e+16>>2]=d;Qi(g,0,b);F[e+12>>2]=d}b=F[i+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;mj(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[i+12>>2];g=F[e+8>>2];d=F[e+12>>2]}F[b+4>>2]=d;F[b>>2]=g;F[b+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;na:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;h=oj(b);F[e+8>>2]=h;g=b+h|0;F[e+16>>2]=g;Qi(h,0,b);F[e+12>>2]=g}b=F[i+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[e+8>>2];g=F[e+12>>2]}F[b+4>>2]=g;F[b>>2]=h;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=t;b=F[e+28>>2];f=b+1|0;F[e+28>>2]=f;oa:{if(b>>>0>f>>>0){break oa}while(1){p=F[e+12>>2];h=F[e+24>>2];j=f-1|0;b=h+j|0;d=(b>>>0)/341|0;b=F[p+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;k=F[b+8>>2];g=F[b+4>>2];d=F[b>>2];F[e+28>>2]=j;b=F[e+16>>2];j=b-p|0;if(((j?L(j>>2,341)-1|0:0)-(f+h|0)|0)+1>>>0>=682){mj(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(d>>>0>t>>>0){break oa}b=F[i+12>>2];h=(g|0)==(b-1|0)?0:g+1|0;if(h>>>0>=b>>>0){break oa}p=L(k,12);m=p+F[i+640>>2]|0;j=p+F[i+628>>2]|0;pa:{qa:{o=h<<2;f=F[i>>2]-F[o+F[m>>2]>>2]|0;if(!f){b=0;if(!d){break qa}while(1){f=F[j>>2];p=F[f+8>>2];m=F[f+4>>2];o=F[f>>2];g=F[q>>2];f=F[g+4>>2];l=F[g+8>>2];ra:{if(f>>>0>>0){F[f+8>>2]=p;F[f+4>>2]=m;F[f>>2]=o;F[g+4>>2]=f+12;break ra}k=F[g>>2];n=(f-k|0)/12|0;h=n+1|0;if(h>>>0>=357913942){break a}l=(l-k|0)/12|0;r=l<<1;h=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;if(h>>>0>=357913942){break b}v=L(n,12);l=L(h,12);n=oj(l);h=v+n|0;F[h+8>>2]=p;F[h+4>>2]=m;F[h>>2]=o;p=h+12|0;if((f|0)!=(k|0)){while(1){h=h-12|0;f=f-12|0;F[h>>2]=F[f>>2];F[h+4>>2]=F[f+4>>2];F[h+8>>2]=F[f+8>>2];if((f|0)!=(k|0)){continue}break}}F[g+8>>2]=l+n;F[g+4>>2]=p;F[g>>2]=h;if(!k){break ra}mj(k)}F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)!=(b|0)){continue}break}break qa}sa:{ta:{ua:{va:{if(d>>>0<=2){b=F[i+616>>2];F[b>>2]=h;g=1;f=F[i+12>>2];if(f>>>0>1){break va}break sa}if(I[i+8>>2]>I[i+4>>2]){break oa}b=F[i+628>>2];l=k+1|0;m=L(l,12);g=b+m|0;if((g|0)!=(j|0)){Na(g,F[j>>2],F[j+4>>2]);b=F[i+628>>2]}b=o+F[b+m>>2]|0;F[b>>2]=F[b>>2]+(1<>>1|0)-g|0;f=d-b|0;wa:{if((f|0)==(b|0)){d=b;break wa}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break ua}g=F[d>>2];j=F[i+600>>2];n=j+1|0;F[i+600>>2]=n;g=g&-2147483648>>>j;xa:{if((n|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(g){break xa}break ua}if(!g){break ua}}d=f}f=b;break ta}while(1){h=(f-1|0)==(h|0)?0:h+1|0;F[b+(g<<2)>>2]=h;f=F[i+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}break sa}d=b}b=F[i+640>>2];g=b+p|0;j=F[g>>2];p=j+o|0;F[p>>2]=F[p>>2]+1;Na(b+m|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];j=F[e+16>>2]-b|0;if((g|0)==((j?L(j>>2,341)-1|0:0)|0)){Nb(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=b}b=(g>>>0)/341|0;b=F[j+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=h;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break qa}f=F[e+28>>2]+F[e+24>>2]|0;g=F[e+12>>2];b=F[e+16>>2]-g|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(e+8|0);g=F[e+12>>2];f=F[e+24>>2]+F[e+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+g>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=h;F[b>>2]=d;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break pa}b=0;if(!d){break qa}while(1){g=F[i+604>>2];if(f){p=F[i+548>>2];r=F[i+616>>2];x=F[j>>2];z=F[m>>2];f=0;while(1){o=r+(f<<2)|0;F[(F[o>>2]<<2)+g>>2]=0;k=F[o>>2]<<2;h=F[i>>2]-F[k+z>>2]|0;ya:{if(!h){break ya}k=g+k|0;l=F[i+560>>2];s=32-l|0;if((s|0)>=(h|0)){n=F[i+556>>2];if((n|0)==(p|0)){F[k>>2]=0;break ya}F[k>>2]=F[n>>2]<>>32-h;h=h+F[i+560>>2]|0;F[i+560>>2]=h;if((h|0)!=32){break ya}F[i+560>>2]=0;F[i+556>>2]=n+4;break ya}n=F[i+556>>2];u=n+4|0;if((u|0)==(p|0)){F[k>>2]=0;break ya}y=F[n>>2];F[i+556>>2]=u;s=h-s|0;F[i+560>>2]=s;F[k>>2]=F[n+4>>2]>>>32-s|y<>>32-h}h=F[o>>2]<<2;k=h+g|0;F[k>>2]=F[k>>2]|F[h+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}g=F[i+604>>2]}F[e+32>>2]=F[g>>2];F[e+36>>2]=F[g+4>>2];F[e+40>>2]=F[g+8>>2];Ni(F[q>>2],e+32|0);F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)==(b|0)){break qa}f=F[i+12>>2];continue}}f=F[e+28>>2]}if(f){continue}break}}F[e+28>>2]=0;f=F[e+16>>2];b=F[e+12>>2];h=f-b|0;if(h>>>0>=9){while(1){mj(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;f=F[e+16>>2];h=f-b|0;if(h>>>0>8){continue}break}}d=170;za:{switch((h>>>2|0)-1|0){case 1:d=341;case 0:F[e+24>>2]=d;break;default:break za}}Aa:{if((b|0)==(f|0)){break Aa}while(1){mj(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break Aa}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){mj(b)}fa=e+48|0;break na}}zb(i);break d;case 5:h=Ab(w+8|0,3);t=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;Ba:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break Ba}d=e+F[b>>2]|0;F[h>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;k=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[h>>2]>32){break Ba}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break Ba}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[h+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break Ba}F[h+8>>2]=0;if(!Fb(h+16|0,b)){break Ba}if(!ce(h+544|0,b)){break Ba}if(!ce(h+564|0,b)){break Ba}if(!ce(h+584|0,b)){break Ba}p=F[h+4>>2];d=0;e=fa-48|0;fa=e;f=F[h+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;g=oj(b);F[e+8>>2]=g;d=b+g|0;F[e+16>>2]=d;Qi(g,0,b);F[e+12>>2]=d}b=F[h+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;mj(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[h+12>>2];g=F[e+8>>2];d=F[e+12>>2]}F[b+4>>2]=d;F[b>>2]=g;F[b+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Ca:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;i=oj(b);F[e+8>>2]=i;g=b+i|0;F[e+16>>2]=g;Qi(i,0,b);F[e+12>>2]=g}b=F[h+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;i=F[e+8>>2];g=F[e+12>>2]}F[b+4>>2]=g;F[b>>2]=i;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=p;b=F[e+28>>2];f=b+1|0;F[e+28>>2]=f;Da:{if(b>>>0>f>>>0){break Da}while(1){j=F[e+12>>2];g=F[e+24>>2];i=f-1|0;b=g+i|0;d=(b>>>0)/341|0;b=F[j+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;q=F[b+8>>2];d=F[b+4>>2];b=F[b>>2];F[e+28>>2]=i;i=F[e+16>>2];j=i-j|0;if(((j?L(j>>2,341)-1|0:0)-(g+f|0)|0)+1>>>0>=682){mj(F[i-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(b>>>0>p>>>0){break Da}f=F[h+12>>2];i=(d|0)==(f-1|0)?0:d+1|0;if(i>>>0>=f>>>0){break Da}d=F[h+628>>2];j=L(q,12);k=d+j|0;Ea:{Fa:{m=i<<2;n=j+F[h+640>>2]|0;f=F[h>>2]-F[m+F[n>>2]>>2]|0;if(!f){j=0;if(!b){break Fa}while(1){d=F[k>>2];q=F[d+8>>2];m=F[d+4>>2];o=F[d>>2];d=F[t>>2];f=F[d+4>>2];l=F[d+8>>2];Ga:{if(f>>>0>>0){F[f+8>>2]=q;F[f+4>>2]=m;F[f>>2]=o;F[d+4>>2]=f+12;break Ga}g=F[d>>2];n=(f-g|0)/12|0;i=n+1|0;if(i>>>0>=357913942){break a}l=(l-g|0)/12|0;r=l<<1;i=l>>>0<178956970?i>>>0>r>>>0?i:r:357913941;if(i>>>0>=357913942){break b}v=L(n,12);l=L(i,12);n=oj(l);i=v+n|0;F[i+8>>2]=q;F[i+4>>2]=m;F[i>>2]=o;q=i+12|0;if((g|0)!=(f|0)){while(1){i=i-12|0;f=f-12|0;F[i>>2]=F[f>>2];F[i+4>>2]=F[f+4>>2];F[i+8>>2]=F[f+8>>2];if((g|0)!=(f|0)){continue}break}}F[d+8>>2]=l+n;F[d+4>>2]=q;F[d>>2]=i;if(!g){break Ga}mj(g)}F[h+8>>2]=F[h+8>>2]+1;j=j+1|0;if((b|0)!=(j|0)){continue}break}break Fa}Ha:{Ia:{Ja:{Ka:{if(b>>>0<=2){d=F[h+616>>2];F[d>>2]=i;g=1;f=F[h+12>>2];if(f>>>0>1){break Ka}break Ha}if(I[h+8>>2]>I[h+4>>2]){break Da}g=d;d=j+12|0;Na(g+d|0,F[k>>2],F[k+4>>2]);d=m+F[d+F[h+628>>2]>>2]|0;F[d>>2]=F[d>>2]+(1<>>1|0)-g|0;f=d-b|0;La:{if((f|0)==(b|0)){d=b;break La}d=F[h+596>>2];if((d|0)==F[h+588>>2]){break Ja}g=F[d>>2];o=F[h+600>>2];l=o+1|0;F[h+600>>2]=l;g=g&-2147483648>>>o;Ma:{if((l|0)==32){F[h+600>>2]=0;F[h+596>>2]=d+4;if(g){break Ma}break Ja}if(!g){break Ja}}d=f}f=b;break Ia}while(1){i=(f-1|0)==(i|0)?0:i+1|0;F[d+(g<<2)>>2]=i;f=F[h+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}break Ha}d=b}b=F[h+640>>2];g=b+j|0;j=F[g>>2];m=j+m|0;F[m>>2]=F[m>>2]+1;Na(b+L(k,12)|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;j=F[e+12>>2];b=F[e+16>>2]-j|0;if((g|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(e+8|0);j=F[e+12>>2];g=F[e+24>>2]+F[e+28>>2]|0}b=(g>>>0)/341|0;b=F[(b<<2)+j>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=q;F[b+4>>2]=i;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break Fa}f=F[e+28>>2]+F[e+24>>2]|0;g=F[e+12>>2];b=F[e+16>>2]-g|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(e+8|0);g=F[e+12>>2];f=F[e+24>>2]+F[e+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+g>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=i;F[b>>2]=d;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break Ea}j=0;if(!b){break Fa}while(1){g=F[h+604>>2];if(f){q=F[h+548>>2];r=F[h+616>>2];x=F[k>>2];z=F[n>>2];f=0;while(1){m=r+(f<<2)|0;F[(F[m>>2]<<2)+g>>2]=0;i=F[m>>2]<<2;d=F[h>>2]-F[i+z>>2]|0;Na:{if(!d){break Na}i=g+i|0;o=F[h+560>>2];s=32-o|0;if((s|0)>=(d|0)){l=F[h+556>>2];if((l|0)==(q|0)){F[i>>2]=0;break Na}F[i>>2]=F[l>>2]<>>32-d;d=d+F[h+560>>2]|0;F[h+560>>2]=d;if((d|0)!=32){break Na}F[h+560>>2]=0;F[h+556>>2]=l+4;break Na}l=F[h+556>>2];u=l+4|0;if((u|0)==(q|0)){F[i>>2]=0;break Na}y=F[l>>2];F[h+556>>2]=u;s=d-s|0;F[h+560>>2]=s;F[i>>2]=F[l+4>>2]>>>32-s|y<>>32-d}d=F[m>>2]<<2;i=d+g|0;F[i>>2]=F[i>>2]|F[d+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}g=F[h+604>>2]}F[e+32>>2]=F[g>>2];F[e+36>>2]=F[g+4>>2];F[e+40>>2]=F[g+8>>2];Ni(F[t>>2],e+32|0);F[h+8>>2]=F[h+8>>2]+1;j=j+1|0;if((b|0)==(j|0)){break Fa}f=F[h+12>>2];continue}}f=F[e+28>>2]}if(f){continue}break}}F[e+28>>2]=0;f=F[e+16>>2];b=F[e+12>>2];i=f-b|0;if(i>>>0>=9){while(1){mj(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;f=F[e+16>>2];i=f-b|0;if(i>>>0>8){continue}break}}g=170;Oa:{switch((i>>>2|0)-1|0){case 1:g=341;case 0:F[e+24>>2]=g;break;default:break Oa}}Pa:{if((b|0)==(f|0)){break Pa}while(1){mj(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break Pa}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){mj(b)}fa=e+48|0;break Ca}}zb(h);break d;case 6:break f;default:break c}}i=Ab(w+8|0,3);q=w+664|0;f=F[b+12>>2];d=F[b+20>>2];e=F[b+16>>2];j=e+4|0;d=j>>>0<4?d+1|0:d;Qa:{if(j>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break Qa}d=e+F[b>>2]|0;F[i>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;j=F[b+16>>2];e=j+4|0;d=e>>>0<4?d+1|0:d;k=e;F[b+16>>2]=e;F[b+20>>2]=d;if(I[i>>2]>32){break Qa}e=F[b+12>>2];d=f;f=j+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break Qa}d=k+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[i+4>>2]=f;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;if(!f){break Qa}F[i+8>>2]=0;if(!Fb(i+16|0,b)){break Qa}if(!ce(i+544|0,b)){break Qa}if(!ce(i+564|0,b)){break Qa}if(!ce(i+584|0,b)){break Qa}t=F[i+4>>2];d=0;e=fa-48|0;fa=e;f=F[i+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(f){if(f>>>0>=1073741824){break a}b=f<<2;g=oj(b);F[e+8>>2]=g;d=b+g|0;F[e+16>>2]=d;Qi(g,0,b);F[e+12>>2]=d}b=F[i+628>>2];j=F[b>>2];if(j){F[b+4>>2]=j;mj(j);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;f=F[i+12>>2];g=F[e+8>>2];d=F[e+12>>2]}F[b+4>>2]=d;F[b>>2]=g;F[b+8>>2]=F[e+16>>2];g=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Ra:{if(f){if(f>>>0>=1073741824){break a}b=f<<2;h=oj(b);F[e+8>>2]=h;g=b+h|0;F[e+16>>2]=g;Qi(h,0,b);F[e+12>>2]=g}b=F[i+640>>2];d=F[b>>2];if(d){F[b+4>>2]=d;mj(d);F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;h=F[e+8>>2];g=F[e+12>>2]}F[b+4>>2]=g;F[b>>2]=h;F[b+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;d=(b>>>0)/341|0;b=F[F[e+12>>2]+(d<<2)>>2]+L(b-L(d,341)|0,12)|0;F[b+4>>2]=0;F[b+8>>2]=0;F[b>>2]=t;b=F[e+28>>2];f=b+1|0;F[e+28>>2]=f;Sa:{if(b>>>0>f>>>0){break Sa}while(1){j=F[e+12>>2];b=F[e+24>>2];g=f-1|0;d=b+g|0;h=(d>>>0)/341|0;d=F[j+(h<<2)>>2]+L(d-L(h,341)|0,12)|0;k=F[d+8>>2];d=F[d>>2];F[e+28>>2]=g;g=F[e+16>>2];h=g-j|0;if(((h?L(h>>2,341)-1|0:0)-(b+f|0)|0)+1>>>0>=682){mj(F[g-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(d>>>0>t>>>0){break Sa}b=F[i+628>>2];p=L(k,12);m=p+F[i+640>>2]|0;h=Li(i,d,m);if(h>>>0>=I[i+12>>2]){break Sa}j=b+p|0;Ta:{Ua:{o=h<<2;f=F[i>>2]-F[o+F[m>>2]>>2]|0;if(!f){b=0;if(!d){break Ua}while(1){f=F[j>>2];p=F[f+8>>2];m=F[f+4>>2];o=F[f>>2];g=F[q>>2];f=F[g+4>>2];l=F[g+8>>2];Va:{if(f>>>0>>0){F[f+8>>2]=p;F[f+4>>2]=m;F[f>>2]=o;F[g+4>>2]=f+12;break Va}k=F[g>>2];n=(f-k|0)/12|0;h=n+1|0;if(h>>>0>=357913942){break a}l=(l-k|0)/12|0;r=l<<1;h=l>>>0<178956970?h>>>0>r>>>0?h:r:357913941;if(h>>>0>=357913942){break b}v=L(n,12);l=L(h,12);n=oj(l);h=v+n|0;F[h+8>>2]=p;F[h+4>>2]=m;F[h>>2]=o;p=h+12|0;if((f|0)!=(k|0)){while(1){h=h-12|0;f=f-12|0;F[h>>2]=F[f>>2];F[h+4>>2]=F[f+4>>2];F[h+8>>2]=F[f+8>>2];if((f|0)!=(k|0)){continue}break}}F[g+8>>2]=l+n;F[g+4>>2]=p;F[g>>2]=h;if(!k){break Va}mj(k)}F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)!=(b|0)){continue}break}break Ua}Wa:{Xa:{Ya:{Za:{if(d>>>0<=2){b=F[i+616>>2];F[b>>2]=h;g=1;f=F[i+12>>2];if(f>>>0>1){break Za}break Wa}if(I[i+8>>2]>I[i+4>>2]){break Sa}b=F[i+628>>2];l=k+1|0;m=L(l,12);g=b+m|0;if((g|0)!=(j|0)){Na(g,F[j>>2],F[j+4>>2]);b=F[i+628>>2]}b=o+F[b+m>>2]|0;F[b>>2]=F[b>>2]+(1<>>1|0)-g|0;f=d-b|0;_a:{if((f|0)==(b|0)){d=b;break _a}d=F[i+596>>2];if((d|0)==F[i+588>>2]){break Ya}g=F[d>>2];j=F[i+600>>2];n=j+1|0;F[i+600>>2]=n;g=g&-2147483648>>>j;$a:{if((n|0)==32){F[i+600>>2]=0;F[i+596>>2]=d+4;if(g){break $a}break Ya}if(!g){break Ya}}d=f}f=b;break Xa}while(1){h=(f-1|0)==(h|0)?0:h+1|0;F[b+(g<<2)>>2]=h;f=F[i+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}break Wa}d=b}b=F[i+640>>2];g=b+p|0;j=F[g>>2];p=j+o|0;F[p>>2]=F[p>>2]+1;Na(b+m|0,j,F[g+4>>2]);if(f){g=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];j=F[e+16>>2]-b|0;if((g|0)==((j?L(j>>2,341)-1|0:0)|0)){Nb(e+8|0);g=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=b}b=(g>>>0)/341|0;b=F[j+(b<<2)>>2]+L(g-L(b,341)|0,12)|0;F[b+8>>2]=k;F[b+4>>2]=h;F[b>>2]=f;F[e+28>>2]=F[e+28>>2]+1}if(!d){break Ua}f=F[e+28>>2]+F[e+24>>2]|0;g=F[e+12>>2];b=F[e+16>>2]-g|0;if((f|0)==((b?L(b>>2,341)-1|0:0)|0)){Nb(e+8|0);g=F[e+12>>2];f=F[e+24>>2]+F[e+28>>2]|0}b=(f>>>0)/341|0;b=F[(b<<2)+g>>2]+L(f-L(b,341)|0,12)|0;F[b+8>>2]=l;F[b+4>>2]=h;F[b>>2]=d;f=F[e+28>>2]+1|0;F[e+28>>2]=f;break Ta}b=0;if(!d){break Ua}while(1){g=F[i+604>>2];if(f){p=F[i+548>>2];r=F[i+616>>2];x=F[j>>2];z=F[m>>2];f=0;while(1){o=r+(f<<2)|0;F[(F[o>>2]<<2)+g>>2]=0;k=F[o>>2]<<2;h=F[i>>2]-F[k+z>>2]|0;ab:{if(!h){break ab}k=g+k|0;l=F[i+560>>2];s=32-l|0;if((s|0)>=(h|0)){n=F[i+556>>2];if((n|0)==(p|0)){F[k>>2]=0;break ab}F[k>>2]=F[n>>2]<>>32-h;h=h+F[i+560>>2]|0;F[i+560>>2]=h;if((h|0)!=32){break ab}F[i+560>>2]=0;F[i+556>>2]=n+4;break ab}n=F[i+556>>2];u=n+4|0;if((u|0)==(p|0)){F[k>>2]=0;break ab}y=F[n>>2];F[i+556>>2]=u;s=h-s|0;F[i+560>>2]=s;F[k>>2]=F[n+4>>2]>>>32-s|y<>>32-h}h=F[o>>2]<<2;k=h+g|0;F[k>>2]=F[k>>2]|F[h+x>>2];f=f+1|0;if(f>>>0>2]){continue}break}g=F[i+604>>2]}F[e+32>>2]=F[g>>2];F[e+36>>2]=F[g+4>>2];F[e+40>>2]=F[g+8>>2];Ni(F[q>>2],e+32|0);F[i+8>>2]=F[i+8>>2]+1;b=b+1|0;if((d|0)==(b|0)){break Ua}f=F[i+12>>2];continue}}f=F[e+28>>2]}if(f){continue}break}}F[e+28>>2]=0;f=F[e+16>>2];b=F[e+12>>2];h=f-b|0;if(h>>>0>=9){while(1){mj(F[b>>2]);b=F[e+12>>2]+4|0;F[e+12>>2]=b;f=F[e+16>>2];h=f-b|0;if(h>>>0>8){continue}break}}d=170;bb:{switch((h>>>2|0)-1|0){case 1:d=341;case 0:F[e+24>>2]=d;break;default:break bb}}cb:{if((b|0)==(f|0)){break cb}while(1){mj(F[b>>2]);b=b+4|0;if((f|0)!=(b|0)){continue}break}b=F[e+16>>2];d=F[e+12>>2];if((b|0)==(d|0)){break cb}F[e+16>>2]=b+(((b-d|0)-4>>>2^-1)<<2)}b=F[e+8>>2];if(b){mj(b)}fa=e+48|0;break Ra}}zb(i)}g=F[a+12>>2]==((F[c+4>>2]-F[c>>2]|0)/12|0)}fa=w+672|0;return g}Ua(1336);V()}Ha();V()}function me(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;if(!a){return 1}e=F[c+20>>2];g=F[c+12>>2];f=F[c+16>>2];a:{if((e|0)>=(g|0)&f>>>0>=I[c+8>>2]|(e|0)>(g|0)){break a}g=G[f+F[c>>2]|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;b:{switch(g|0){case 0:k=a;h=b;f=d;a=0;d=0;o=fa+-64|0;fa=o;F[o+56>>2]=0;F[o+48>>2]=0;F[o+52>>2]=0;F[o+40>>2]=0;F[o+44>>2]=0;F[o+32>>2]=0;F[o+36>>2]=0;F[o+24>>2]=0;F[o+28>>2]=0;F[o+16>>2]=0;F[o+20>>2]=0;F[o+8>>2]=0;F[o+12>>2]=0;c:{if(!ne(o+8|0,c)){break c}if(!oe(o+8|0,c)|(F[o+20>>2]?0:k)){break c}lg(c,0,0);if(k){p=h<<2;q=F[o+36>>2];s=F[o+48>>2];t=F[o+24>>2];while(1){m=F[o+56>>2];d:{if(m>>>0>16383){break d}a=F[o+52>>2];while(1){if((a|0)<=0){break d}a=a-1|0;F[o+52>>2]=a;m=G[a+s|0]|m<<8;F[o+56>>2]=m;if(m>>>0<16384){continue}break}}a=m&4095;n=F[(a<<2)+t>>2];b=q+(n<<3)|0;F[o+56>>2]=(L(F[b>>2],m>>>12|0)+a|0)-F[b+4>>2];e:{if((h|0)<=0){break e}a=0;if(!G[c+36|0]|n>>>0>32){break c}if(n){w=n&-2;x=n&1;g=d+h|0;b=F[c+32>>2];while(1){i=F[c+28>>2];j=F[c+24>>2];m=0;a=b;e=0;r=0;if((n|0)!=1){while(1){l=j+(a>>>3|0)|0;f:{if(l>>>0>=i>>>0){l=0;break f}l=G[l|0];b=a+1|0;F[c+32>>2]=b;l=l>>>(a&7)&1;a=b}l=l<>>3|0)|0;if(u>>>0>>0){e=G[u|0];b=a+1|0;F[c+32>>2]=b;e=e>>>(a&7)&1;a=b}u=m|1;m=m+2|0;e=l|e<>>3|0)|0;if(r>>>0>i>>>0){i=G[i|0];b=a+1|0;F[c+32>>2]=b;a=i>>>(a&7)&1}else{a=0}e=a<>2]=e;d=d+1|0;if((g|0)!=(d|0)){continue}break}d=g;break e}Qi(f+(d<<2)|0,0,p);d=d+h|0}v=h+v|0;if(k>>>0>v>>>0){continue}break}}D[c+36|0]=0;b=F[c+20>>2];e=0;a=F[c+32>>2]+7|0;e=a>>>0<7?1:e;d=(e&7)<<29|a>>>3;a=d+F[c+16>>2]|0;e=(e>>>3|0)+b|0;F[c+16>>2]=a;F[c+20>>2]=a>>>0>>0?e+1|0:e;a=1}b=F[o+36>>2];if(b){F[o+40>>2]=b;mj(b)}b=F[o+24>>2];if(b){F[o+28>>2]=b;mj(b)}b=F[o+8>>2];if(b){F[o+12>>2]=b;mj(b)}fa=o- -64|0;return a;case 1:break b;default:break a}}b=0;e=F[c+20>>2];g=F[c+12>>2];f=F[c+16>>2];g:{if((e|0)>=(g|0)&f>>>0>=I[c+8>>2]|(e|0)>(g|0)){break g}g=G[f+F[c>>2]|0];f=f+1|0;e=f?e:e+1|0;F[c+16>>2]=f;F[c+20>>2]=e;h:{switch(g-1|0){case 8:g=a;o=d;f=fa+-64|0;fa=f;F[f+56>>2]=0;F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;n=f+8|0;a=H[c+38>>1];i:{j:{if(!a){break j}k:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break j}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[n+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break k}if(!qe(1,n+12|0,c)){break j}j=F[n+12>>2]}b=F[n>>2];a=F[n+4>>2]-b>>2;l:{if(a>>>0>>0){Ja(n,j-a|0);j=F[n+12>>2];break l}if(a>>>0<=j>>>0){break l}F[n+4>>2]=b+(j<<2)}d=1;if(!j){break i}q=F[c+8>>2];l=F[c+12>>2];s=F[n>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((l|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(l|0)){break i}d=F[c>>2];p=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=p>>>2|0;i=0;m:{n:{o:{p:{t=p&3;switch(t|0){case 0:break n;case 3:break p;default:break o}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break i}Qi(s+(b<<2)|0,0,(p&252)+4|0);b=a;break m}while(1){if((e|0)>=(l|0)&h>>>0>=q>>>0|(e|0)>(l|0)){break j}j=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[n+12>>2];if(b>>>0>>0){continue}break}h=n+16|0;p=F[n>>2];b=F[n+16>>2];a=F[n+20>>2]-b|0;q:{if(a>>>0<=32767){Ja(h,8192-(a>>>2|0)|0);break q}if((a|0)==32768){break q}F[n+20>>2]=b+32768}a=n+28|0;b=F[a>>2];d=F[n+32>>2]-b>>3;r:{if(d>>>0>>0){re(a,j-d|0);b=F[a>>2];break r}if(d>>>0>j>>>0){F[n+32>>2]=(j<<3)+b}if(!j){break j}}i=0;d=0;while(1){e=p+(i<<2)|0;n=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=n;e=F[e>>2];d=e+a|0;if(d>>>0>8192){break j}s:{if(a>>>0>=d>>>0){break s}n=F[h>>2];l=0;q=e&7;if(q){while(1){F[n+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break s}while(1){e=n+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==8192}d=k}t:{if(!d|(F[f+20>>2]?0:g)){break t}d=0;n=fa-16|0;fa=n;u:{v:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break u}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break v}if(!se(1,n+8|0,c)){break u}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[n+8>>2];k=F[n+12>>2]}j=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>j>>>0|b>>>0>>0){break u}e=e+k|0;b=a+h|0;e=b>>>0>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break u}b=h+F[c>>2]|0;F[f+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];w:{if(h>>>0<=63){F[f+52>>2]=c;a=G[e|0]&63;break w}x:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break u}F[f+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break w;case 1:if(a>>>0<3){break u}F[f+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break w;default:break x}}F[f+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a+32768|0;F[f+56>>2]=a;d=a>>>0<8388608}fa=n+16|0;if(!d){break t}if(!g){m=1;break t}b=F[f+36>>2];c=F[f+48>>2];d=F[f+24>>2];a=F[f+56>>2];while(1){y:{if(a>>>0>32767){break y}m=F[f+52>>2];while(1){if((m|0)<=0){break y}m=m-1|0;F[f+52>>2]=m;a=G[c+m|0]|a<<8;F[f+56>>2]=a;if(a>>>0<32768){continue}break}}e=a&8191;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>13|0)+e|0)-F[m+4>>2]|0;F[f+56>>2]=a;F[o+(r<<2)>>2]=h;m=1;r=r+1|0;if((g|0)!=(r|0)){continue}break}}a=F[f+36>>2];if(a){F[f+40>>2]=a;mj(a)}a=F[f+24>>2];if(a){F[f+28>>2]=a;mj(a)}a=F[f+8>>2];if(a){F[f+12>>2]=a;mj(a)}fa=f- -64|0;b=m;break g;case 9:o=a;n=d;g=fa+-64|0;fa=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;f=g+8|0;a=H[c+38>>1];z:{A:{if(!a){break A}B:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break A}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break B}if(!qe(1,f+12|0,c)){break A}j=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;C:{if(a>>>0>>0){Ja(f,j-a|0);j=F[f+12>>2];break C}if(a>>>0<=j>>>0){break C}F[f+4>>2]=b+(j<<2)}d=1;if(!j){break z}q=F[c+8>>2];l=F[c+12>>2];s=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((l|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(l|0)){break z}d=F[c>>2];p=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=p>>>2|0;i=0;D:{E:{F:{G:{t=p&3;switch(t|0){case 0:break E;case 3:break G;default:break F}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break z}Qi(s+(b<<2)|0,0,(p&252)+4|0);b=a;break D}while(1){if((e|0)>=(l|0)&h>>>0>=q>>>0|(e|0)>(l|0)){break A}j=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;p=F[f>>2];b=F[f+16>>2];a=F[f+20>>2]-b|0;H:{if(a>>>0<=131071){Ja(h,32768-(a>>>2|0)|0);break H}if((a|0)==131072){break H}F[f+20>>2]=b+131072}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;I:{if(d>>>0>>0){re(a,j-d|0);b=F[a>>2];break I}if(d>>>0>j>>>0){F[f+32>>2]=(j<<3)+b}if(!j){break A}}i=0;d=0;while(1){e=p+(i<<2)|0;f=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=f;e=F[e>>2];d=e+a|0;if(d>>>0>32768){break A}J:{if(a>>>0>=d>>>0){break J}f=F[h>>2];l=0;q=e&7;if(q){while(1){F[f+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break J}while(1){e=f+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==32768}d=k}K:{if(!d|(F[g+20>>2]?0:o)){break K}d=0;j=fa-16|0;fa=j;L:{M:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break L}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break M}if(!se(1,j+8|0,c)){break L}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[j+8>>2];k=F[j+12>>2]}f=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>f>>>0|b>>>0>>0){break L}f=e+k|0;b=a+h|0;f=b>>>0>>0?f+1|0:f;F[c+16>>2]=b;F[c+20>>2]=f;if((a|0)<=0){break L}b=h+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];N:{if(h>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break N}O:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break L}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break N;case 1:if(a>>>0<3){break L}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break N;default:break O}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a+131072|0;F[g+56>>2]=a;d=a>>>0<33554432}fa=j+16|0;if(!d){break K}if(!o){m=1;break K}b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];a=F[g+56>>2];while(1){P:{if(a>>>0>131071){break P}m=F[g+52>>2];while(1){if((m|0)<=0){break P}m=m-1|0;F[g+52>>2]=m;a=G[c+m|0]|a<<8;F[g+56>>2]=a;if(a>>>0<131072){continue}break}}e=a&32767;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>15|0)+e|0)-F[m+4>>2]|0;F[g+56>>2]=a;F[n+(r<<2)>>2]=h;m=1;r=r+1|0;if((o|0)!=(r|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;mj(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;mj(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;mj(a)}fa=g- -64|0;b=m;break g;case 10:o=a;n=d;g=fa+-64|0;fa=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;l=g+8|0;a=H[c+38>>1];Q:{R:{if(!a){break R}S:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break R}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[l+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break S}if(!qe(1,l+12|0,c)){break R}j=F[l+12>>2]}b=F[l>>2];a=F[l+4>>2]-b>>2;T:{if(a>>>0>>0){Ja(l,j-a|0);j=F[l+12>>2];break T}if(a>>>0<=j>>>0){break T}F[l+4>>2]=b+(j<<2)}d=1;if(!j){break Q}q=F[c+8>>2];p=F[c+12>>2];s=F[l>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((p|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(p|0)){break Q}d=F[c>>2];f=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=f>>>2|0;i=0;U:{V:{W:{X:{t=f&3;switch(t|0){case 0:break V;case 3:break X;default:break W}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break Q}Qi(s+(b<<2)|0,0,(f&252)+4|0);b=a;break U}while(1){if((e|0)>=(p|0)&h>>>0>=q>>>0|(e|0)>(p|0)){break R}j=G[d+h|0];f=e;e=h+1|0;f=e?f:f+1|0;h=e;F[c+16>>2]=e;e=f;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[l+12>>2];if(b>>>0>>0){continue}break}h=l+16|0;p=F[l>>2];b=F[l+16>>2];a=F[l+20>>2]-b|0;Y:{if(a>>>0<=262143){Ja(h,65536-(a>>>2|0)|0);break Y}if((a|0)==262144){break Y}F[l+20>>2]=b+262144}a=l+28|0;b=F[a>>2];d=F[l+32>>2]-b>>3;Z:{if(d>>>0>>0){re(a,j-d|0);b=F[a>>2];break Z}if(d>>>0>j>>>0){F[l+32>>2]=(j<<3)+b}if(!j){break R}}i=0;d=0;while(1){e=p+(i<<2)|0;f=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=f;e=F[e>>2];d=e+a|0;if(d>>>0>65536){break R}_:{if(a>>>0>=d>>>0){break _}f=F[h>>2];l=0;q=e&7;if(q){while(1){F[f+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break _}while(1){e=f+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==65536}d=k}$:{if(!d|(F[g+20>>2]?0:o)){break $}d=0;f=fa-16|0;fa=f;aa:{ba:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break aa}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break ba}if(!se(1,f+8|0,c)){break aa}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[f+8>>2];k=F[f+12>>2]}j=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>j>>>0|b>>>0>>0){break aa}e=e+k|0;b=a+h|0;e=b>>>0>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break aa}b=h+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];ca:{if(h>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break ca}da:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break aa}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break ca;case 1:if(a>>>0<3){break aa}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break ca;default:break da}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a+262144|0;F[g+56>>2]=a;d=a>>>0<67108864}fa=f+16|0;if(!d){break $}if(!o){m=1;break $}b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];a=F[g+56>>2];while(1){ea:{if(a>>>0>262143){break ea}m=F[g+52>>2];while(1){if((m|0)<=0){break ea}m=m-1|0;F[g+52>>2]=m;a=G[c+m|0]|a<<8;F[g+56>>2]=a;if(a>>>0<262144){continue}break}}e=a&65535;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>16|0)+e|0)-F[m+4>>2]|0;F[g+56>>2]=a;F[n+(r<<2)>>2]=h;m=1;r=r+1|0;if((o|0)!=(r|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;mj(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;mj(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;mj(a)}fa=g- -64|0;b=m;break g;case 11:g=a;o=d;f=fa+-64|0;fa=f;F[f+56>>2]=0;F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;n=f+8|0;a=H[c+38>>1];fa:{ga:{if(!a){break ga}ha:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break ga}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[n+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break ha}if(!qe(1,n+12|0,c)){break ga}j=F[n+12>>2]}b=F[n>>2];a=F[n+4>>2]-b>>2;ia:{if(a>>>0>>0){Ja(n,j-a|0);j=F[n+12>>2];break ia}if(a>>>0<=j>>>0){break ia}F[n+4>>2]=b+(j<<2)}d=1;if(!j){break fa}q=F[c+8>>2];l=F[c+12>>2];s=F[n>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((l|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(l|0)){break fa}d=F[c>>2];p=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=p>>>2|0;i=0;ja:{ka:{la:{ma:{t=p&3;switch(t|0){case 0:break ka;case 3:break ma;default:break la}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break fa}Qi(s+(b<<2)|0,0,(p&252)+4|0);b=a;break ja}while(1){if((e|0)>=(l|0)&h>>>0>=q>>>0|(e|0)>(l|0)){break ga}j=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[n+12>>2];if(b>>>0>>0){continue}break}h=n+16|0;p=F[n>>2];b=F[n+16>>2];a=F[n+20>>2]-b|0;na:{if(a>>>0<=1048575){Ja(h,262144-(a>>>2|0)|0);break na}if((a|0)==1048576){break na}F[n+20>>2]=b- -1048576}a=n+28|0;b=F[a>>2];d=F[n+32>>2]-b>>3;oa:{if(d>>>0>>0){re(a,j-d|0);b=F[a>>2];break oa}if(d>>>0>j>>>0){F[n+32>>2]=(j<<3)+b}if(!j){break ga}}i=0;d=0;while(1){e=p+(i<<2)|0;n=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=n;e=F[e>>2];d=e+a|0;if(d>>>0>262144){break ga}pa:{if(a>>>0>=d>>>0){break pa}n=F[h>>2];l=0;q=e&7;if(q){while(1){F[n+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break pa}while(1){e=n+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==262144}d=k}qa:{if(!d|(F[f+20>>2]?0:g)){break qa}d=0;n=fa-16|0;fa=n;ra:{sa:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break ra}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break sa}if(!se(1,n+8|0,c)){break ra}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[n+8>>2];k=F[n+12>>2]}j=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>j>>>0|b>>>0>>0){break ra}e=e+k|0;b=a+h|0;e=b>>>0>>0?e+1|0:e;F[c+16>>2]=b;F[c+20>>2]=e;if((a|0)<=0){break ra}b=h+F[c>>2]|0;F[f+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];ta:{if(h>>>0<=63){F[f+52>>2]=c;a=G[e|0]&63;break ta}ua:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break ra}F[f+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break ta;case 1:if(a>>>0<3){break ra}F[f+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break ta;default:break ua}}F[f+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a- -1048576|0;F[f+56>>2]=a;d=a>>>0<268435456}fa=n+16|0;if(!d){break qa}if(!g){m=1;break qa}b=F[f+36>>2];c=F[f+48>>2];d=F[f+24>>2];a=F[f+56>>2];while(1){va:{if(a>>>0>1048575){break va}m=F[f+52>>2];while(1){if((m|0)<=0){break va}m=m-1|0;F[f+52>>2]=m;a=G[c+m|0]|a<<8;F[f+56>>2]=a;if(a>>>0<1048576){continue}break}}e=a&262143;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>18|0)+e|0)-F[m+4>>2]|0;F[f+56>>2]=a;F[o+(r<<2)>>2]=h;m=1;r=r+1|0;if((g|0)!=(r|0)){continue}break}}a=F[f+36>>2];if(a){F[f+40>>2]=a;mj(a)}a=F[f+24>>2];if(a){F[f+28>>2]=a;mj(a)}a=F[f+8>>2];if(a){F[f+12>>2]=a;mj(a)}fa=f- -64|0;b=m;break g;case 12:o=a;n=d;g=fa+-64|0;fa=g;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;f=g+8|0;a=H[c+38>>1];wa:{xa:{if(!a){break xa}ya:{if(a>>>0<=511){a=F[c+12>>2];e=F[c+20>>2];b=F[c+16>>2];d=b+4|0;e=d>>>0<4?e+1|0:e;if((a|0)<=(e|0)&d>>>0>I[c+8>>2]|(a|0)<(e|0)){break xa}a=b+F[c>>2]|0;j=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[f+12>>2]=j;e=F[c+20>>2];a=F[c+16>>2]+4|0;e=a>>>0<4?e+1|0:e;F[c+16>>2]=a;F[c+20>>2]=e;break ya}if(!qe(1,f+12|0,c)){break xa}j=F[f+12>>2]}b=F[f>>2];a=F[f+4>>2]-b>>2;za:{if(a>>>0>>0){Ja(f,j-a|0);j=F[f+12>>2];break za}if(a>>>0<=j>>>0){break za}F[f+4>>2]=b+(j<<2)}d=1;if(!j){break wa}q=F[c+8>>2];l=F[c+12>>2];s=F[f>>2];b=0;while(1){e=F[c+20>>2];a=F[c+16>>2];d=0;if((l|0)<=(e|0)&q>>>0<=a>>>0|(e|0)>(l|0)){break wa}d=F[c>>2];p=G[d+a|0];a=a+1|0;e=a?e:e+1|0;h=a;F[c+16>>2]=a;F[c+20>>2]=e;a=p>>>2|0;i=0;Aa:{Ba:{Ca:{Da:{t=p&3;switch(t|0){case 0:break Ba;case 3:break Da;default:break Ca}}a=a+b|0;d=0;if(a>>>0>=j>>>0){break wa}Qi(s+(b<<2)|0,0,(p&252)+4|0);b=a;break Aa}while(1){if((e|0)>=(l|0)&h>>>0>=q>>>0|(e|0)>(l|0)){break xa}j=G[d+h|0];h=h+1|0;e=h?e:e+1|0;F[c+16>>2]=h;F[c+20>>2]=e;a=j<<(i<<3|6)|a;i=i+1|0;if((t|0)!=(i|0)){continue}break}}F[s+(b<<2)>>2]=a}b=b+1|0;j=F[f+12>>2];if(b>>>0>>0){continue}break}h=f+16|0;p=F[f>>2];b=F[f+16>>2];a=F[f+20>>2]-b|0;Ea:{if(a>>>0<=2097151){Ja(h,524288-(a>>>2|0)|0);break Ea}if((a|0)==2097152){break Ea}F[f+20>>2]=b+2097152}a=f+28|0;b=F[a>>2];d=F[f+32>>2]-b>>3;Fa:{if(d>>>0>>0){re(a,j-d|0);b=F[a>>2];break Fa}if(d>>>0>j>>>0){F[f+32>>2]=(j<<3)+b}if(!j){break xa}}i=0;d=0;while(1){e=p+(i<<2)|0;f=F[e>>2];l=(i<<3)+b|0;a=d;F[l+4>>2]=a;F[l>>2]=f;e=F[e>>2];d=e+a|0;if(d>>>0>524288){break xa}Ga:{if(a>>>0>=d>>>0){break Ga}f=F[h>>2];l=0;q=e&7;if(q){while(1){F[f+(a<<2)>>2]=i;a=a+1|0;l=l+1|0;if((q|0)!=(l|0)){continue}break}}if(e-1>>>0<=6){break Ga}while(1){e=f+(a<<2)|0;F[e>>2]=i;F[e+28>>2]=i;F[e+24>>2]=i;F[e+20>>2]=i;F[e+16>>2]=i;F[e+12>>2]=i;F[e+8>>2]=i;F[e+4>>2]=i;a=a+8|0;if((d|0)!=(a|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}k=(d|0)==524288}d=k}Ha:{if(!d|(F[g+20>>2]?0:o)){break Ha}d=0;j=fa-16|0;fa=j;Ia:{Ja:{if(H[c+38>>1]<=511){i=F[c+12>>2];a=i;e=F[c+20>>2];k=F[c+16>>2];h=k+8|0;e=h>>>0<8?e+1|0:e;b=F[c+8>>2];if(b>>>0>>0&(a|0)<=(e|0)|(a|0)<(e|0)){break Ia}k=k+F[c>>2]|0;a=G[k|0]|G[k+1|0]<<8|(G[k+2|0]<<16|G[k+3|0]<<24);k=G[k+4|0]|G[k+5|0]<<8|(G[k+6|0]<<16|G[k+7|0]<<24);F[c+16>>2]=h;F[c+20>>2]=e;break Ja}if(!se(1,j+8|0,c)){break Ia}h=F[c+16>>2];e=F[c+20>>2];b=F[c+8>>2];i=F[c+12>>2];a=F[j+8>>2];k=F[j+12>>2]}f=b-h|0;b=i-((b>>>0>>0)+e|0)|0;if((b|0)==(k|0)&a>>>0>f>>>0|b>>>0>>0){break Ia}f=e+k|0;b=a+h|0;f=b>>>0>>0?f+1|0:f;F[c+16>>2]=b;F[c+20>>2]=f;if((a|0)<=0){break Ia}b=h+F[c>>2]|0;F[g+48>>2]=b;c=a-1|0;e=c+b|0;h=G[e|0];Ka:{if(h>>>0<=63){F[g+52>>2]=c;a=G[e|0]&63;break Ka}La:{switch((h>>>6|0)-1|0){case 0:if(a>>>0<2){break Ia}F[g+52>>2]=a-2;a=(a+b|0)-2|0;a=G[a+1|0]<<8&16128|G[a|0];break Ka;case 1:if(a>>>0<3){break Ia}F[g+52>>2]=a-3;a=(a+b|0)-3|0;a=G[a+2|0]<<16&4128768|G[a+1|0]<<8|G[a|0];break Ka;default:break La}}F[g+52>>2]=a-4;a=(a+b|0)-4|0;a=G[a+2|0]<<16|G[a+3|0]<<24&1056964608|G[a+1|0]<<8|G[a|0]}a=a+2097152|0;F[g+56>>2]=a;d=a>>>0<536870912}fa=j+16|0;if(!d){break Ha}if(!o){m=1;break Ha}b=F[g+36>>2];c=F[g+48>>2];d=F[g+24>>2];a=F[g+56>>2];while(1){Ma:{if(a>>>0>2097151){break Ma}m=F[g+52>>2];while(1){if((m|0)<=0){break Ma}m=m-1|0;F[g+52>>2]=m;a=G[c+m|0]|a<<8;F[g+56>>2]=a;if(a>>>0<2097152){continue}break}}e=a&524287;h=F[d+(e<<2)>>2];m=b+(h<<3)|0;a=(L(F[m>>2],a>>>19|0)+e|0)-F[m+4>>2]|0;F[g+56>>2]=a;F[n+(r<<2)>>2]=h;m=1;r=r+1|0;if((o|0)!=(r|0)){continue}break}}a=F[g+36>>2];if(a){F[g+40>>2]=a;mj(a)}a=F[g+24>>2];if(a){F[g+28>>2]=a;mj(a)}a=F[g+8>>2];if(a){F[g+12>>2]=a;mj(a)}fa=g- -64|0;b=m;break g;case 17:b=pe(a,c,d);break g;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:e=fa+-64|0;fa=e;F[e+56>>2]=0;F[e+48>>2]=0;F[e+52>>2]=0;F[e+40>>2]=0;F[e+44>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Na:{if(!ne(e+8|0,c)|(F[e+20>>2]?0:a)){break Na}if(!oe(e+8|0,c)){break Na}if(!a){b=1;break Na}m=F[e+36>>2];k=F[e+48>>2];f=F[e+24>>2];c=F[e+56>>2];while(1){Oa:{if(c>>>0>16383){break Oa}b=F[e+52>>2];while(1){if((b|0)<=0){break Oa}b=b-1|0;F[e+52>>2]=b;c=G[b+k|0]|c<<8;F[e+56>>2]=c;if(c>>>0<16384){continue}break}}b=c&4095;g=F[f+(b<<2)>>2];o=m+(g<<3)|0;c=(L(F[o>>2],c>>>12|0)+b|0)-F[o+4>>2]|0;F[e+56>>2]=c;F[(h<<2)+d>>2]=g;b=1;h=h+1|0;if((h|0)!=(a|0)){continue}break}}a=F[e+36>>2];if(a){F[e+40>>2]=a;mj(a)}a=F[e+24>>2];if(a){F[e+28>>2]=a;mj(a)}a=F[e+8>>2];if(a){F[e+12>>2]=a;mj(a)}fa=e- -64|0;break g;case 13:case 14:case 15:case 16:break h;default:break g}}b=pe(a,c,d)}h=b}return h}function hf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0;k=fa+-64|0;fa=k;F[a+132>>2]=0;if(F[a+148>>2]){b=F[a+144>>2];if(b){while(1){e=F[b>>2];mj(b);b=e;if(b){continue}break}}b=0;F[a+144>>2]=0;e=F[a+140>>2];a:{if(!e){break a}if(e-1>>>0>=3){d=e&-4;while(1){g=b<<2;F[g+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(g|4)>>2]=0;F[F[a+136>>2]+(g|8)>>2]=0;F[F[a+136>>2]+(g|12)>>2]=0;b=b+4|0;h=h+4|0;if((d|0)!=(h|0)){continue}break}}e=e&3;if(!e){break a}while(1){F[F[a+136>>2]+(b<<2)>>2]=0;b=b+1|0;v=v+1|0;if((e|0)!=(v|0)){continue}break}}F[a+148>>2]=0}b:{c:{b=F[a+4>>2];v=G[b+36|0];h=v<<8|G[b+37|0];d:{if(h>>>0>513){break d}e=F[b+32>>2];if(h>>>0<=511){h=F[e+20>>2];g=F[e+16>>2];d=g+4|0;h=d>>>0<4?h+1|0:h;c=F[e+12>>2];if((c|0)<=(h|0)&d>>>0>I[e+8>>2]|(c|0)<(h|0)){break c}g=g+F[e>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[e+16>>2]=d;F[e+20>>2]=h;F[a+132>>2]=g;break d}if(!Oe(1,k,e)){break c}b=F[a+4>>2];v=G[b+36|0];F[a+132>>2]=F[k>>2]}h=F[b+32>>2];e:{f:{g:{if((v&255)>>>0<=1){v=0;e=F[h+20>>2];g=F[h+16>>2];d=g+4|0;e=d>>>0<4?e+1|0:e;c=F[h+12>>2];if((c|0)<=(e|0)&d>>>0>I[h+8>>2]|(c|0)<(e|0)){break b}g=g+F[h>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[k+60>>2]=g;F[h+16>>2]=d;F[h+20>>2]=e;F[a+156>>2]=g;d=a+156|0;break g}v=0;if(!Oe(1,k+60|0,h)){break b}b=F[a+4>>2];e=G[b+36|0];F[a+156>>2]=F[k+60>>2];d=a+156|0;if(e>>>0>1){break f}}e=F[b+32>>2];b=F[e+8>>2];h=F[e+12>>2];i=b;b=F[e+20>>2];g=F[e+16>>2];c=g+4|0;b=c>>>0<4?b+1|0:b;if(i>>>0>>0&(b|0)>=(h|0)|(b|0)>(h|0)){break b}h=g+F[e>>2]|0;h=G[h|0]|G[h+1|0]<<8|(G[h+2|0]<<16|G[h+3|0]<<24);F[k+56>>2]=h;F[e+16>>2]=c;F[e+20>>2]=b;break e}if(!Oe(1,k+56|0,F[b+32>>2])){break b}h=F[k+56>>2]}if(h>>>0>1431655765|I[d>>2]>L(h,3)>>>0){break b}f=F[a+4>>2];g=F[f+32>>2];b=g;j=F[b+8>>2];d=F[b+12>>2];e=F[b+20>>2];c=F[b+16>>2];if((d|0)<=(e|0)&j>>>0<=c>>>0|(e|0)>(d|0)){break b}m=F[g>>2];i=G[m+c|0];b=e;y=c+1|0;b=y?b:b+1|0;F[g+16>>2]=y;F[g+20>>2]=b;h:{if(G[f+36|0]<=1){b=d;d=c+5|0;e=d>>>0<5?e+1|0:e;c=d;if((b|0)<=(e|0)&c>>>0>j>>>0|(b|0)<(e|0)){break b}b=m+y|0;d=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[k+52>>2]=d;F[g+16>>2]=c;F[g+20>>2]=e;break h}if(!Oe(1,k+52|0,g)){break b}d=F[k+52>>2]}if(((d>>>0)/3|0)+d>>>0>>0|d>>>0>h>>>0){break b}b=F[a+4>>2];g=F[b+32>>2];i:{if(G[b+36|0]<=1){b=F[g+20>>2];e=F[g+16>>2];c=e+4|0;b=c>>>0<4?b+1|0:b;f=F[g+12>>2];if((f|0)<=(b|0)&c>>>0>I[g+8>>2]|(b|0)>(f|0)){break b}e=e+F[g>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[k+48>>2]=e;F[g+16>>2]=c;F[g+20>>2]=b;break i}if(!Oe(1,k+48|0,g)){break b}e=F[k+48>>2]}if(e>>>0>d>>>0){break b}F[a+28>>2]=F[a+24>>2];g=oj(88);ni(g);b=F[a+8>>2];F[a+8>>2]=g;if(b){Pe(b);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Qe(a+160|0,h);F[a+176>>2]=F[a+172>>2];Qe(a+172|0,h);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];M=a+216|0;Re(M);Se(M,i);if(!oi(F[a+8>>2],h,F[a+156>>2]+e|0)){break b}b=F[a+156>>2];D[k|0]=1;Le(a+120|0,b+e|0,k);b=F[a+4>>2];h=H[b+36>>1];h=(h<<8|h>>>8)&65535;j:{if(h>>>0<=513){g=F[b+32>>2];k:{if(h>>>0<=511){h=F[g+20>>2];c=F[g+16>>2];b=c+4|0;h=b>>>0<4?h+1|0:h;f=b;b=h;j=F[g+12>>2];if(f>>>0>I[g+8>>2]&(b|0)>=(j|0)|(b|0)>(j|0)){break b}h=c+F[g>>2]|0;h=G[h|0]|G[h+1|0]<<8|(G[h+2|0]<<16|G[h+3|0]<<24);F[g+16>>2]=f;F[g+20>>2]=b;break k}if(!Oe(1,k+44|0,g)){break b}h=F[k+44>>2]}if(!h){break b}b=F[F[a+4>>2]+32>>2];g=F[b+8>>2];c=F[b+16>>2];f=g-c|0;b=F[b+12>>2]-(F[b+20>>2]+(c>>>0>g>>>0)|0)|0;if(f>>>0>>0&(b|0)<=0|(b|0)<0){break b}E[k+38>>1]=0;F[k>>2]=0;F[k+8>>2]=0;F[k+12>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;F[k+24>>2]=0;F[k+28>>2]=0;D[k+29|0]=0;D[k+30|0]=0;D[k+31|0]=0;D[k+32|0]=0;D[k+33|0]=0;D[k+34|0]=0;D[k+35|0]=0;D[k+36|0]=0;g=F[F[a+4>>2]+32>>2];b=F[g+16>>2];c=(b+F[g>>2]|0)+h|0;f=F[g+8>>2];b=(f-b|0)-h|0;E[k+38>>1]=H[g+38>>1];F[k>>2]=c;F[k+16>>2]=0;F[k+20>>2]=0;F[k+8>>2]=b;F[k+12>>2]=0;y=Te(a,k);if((y|0)==-1){break b}N=y>>31;break j}y=-1;N=-1;if((Te(a,F[b+32>>2])|0)==-1){break b}}f=a+232|0;ff(f,a);F[a+372>>2]=i;F[a+384>>2]=F[a+156>>2]+e;E[k+38>>1]=0;F[k>>2]=0;F[k+8>>2]=0;F[k+12>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;F[k+24>>2]=0;F[k+28>>2]=0;D[k+29|0]=0;D[k+30|0]=0;D[k+31|0]=0;D[k+32|0]=0;D[k+33|0]=0;D[k+34|0]=0;D[k+35|0]=0;D[k+36|0]=0;h=0;i=fa-16|0;fa=i;l:{m:{b=F[f+144>>2];b=H[(ia[F[F[b>>2]+32>>2]](b)|0)+36>>1];if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[f+4>>2];F[f+40>>2]=F[f>>2];F[f+44>>2]=b;b=F[f+36>>2];F[f+72>>2]=F[f+32>>2];F[f+76>>2]=b;e=F[f+28>>2];b=f- -64|0;F[b>>2]=F[f+24>>2];F[b+4>>2]=e;b=F[f+20>>2];F[f+56>>2]=F[f+16>>2];F[f+60>>2]=b;b=F[f+12>>2];F[f+48>>2]=F[f+8>>2];F[f+52>>2]=b;if(!lg(f+40|0,1,i+8|0)){break m}b=F[f+44>>2];F[f>>2]=F[f+40>>2];F[f+4>>2]=b;b=F[f+76>>2];F[f+32>>2]=F[f+72>>2];F[f+36>>2]=b;b=F[f+68>>2];F[f+24>>2]=F[f+64>>2];F[f+28>>2]=b;e=F[f+60>>2];g=e;b=F[f+56>>2];F[f+16>>2]=b;F[f+20>>2]=e;c=F[f+52>>2];e=F[f+48>>2];F[f+8>>2]=e;F[f+12>>2]=c;j=e-b|0;m=F[i+12>>2];e=c-((b>>>0>e>>>0)+g|0)|0;c=F[i+8>>2];if((m|0)==(e|0)&j>>>0>>0|e>>>0>>0){break m}e=b;c=b+c|0;b=g+m|0;F[f+16>>2]=c;F[f+20>>2]=c>>>0>>0?b+1|0:b}n:{if(H[f+38>>1]<=513){b=F[f+4>>2];F[f+96>>2]=F[f>>2];F[f+100>>2]=b;b=F[f+36>>2];F[f+128>>2]=F[f+32>>2];F[f+132>>2]=b;b=F[f+28>>2];F[f+120>>2]=F[f+24>>2];F[f+124>>2]=b;b=F[f+20>>2];F[f+112>>2]=F[f+16>>2];F[f+116>>2]=b;b=F[f+12>>2];F[f+104>>2]=F[f+8>>2];F[f+108>>2]=b;if(!lg(f+96|0,1,i+8|0)){break m}b=F[f+100>>2];F[f>>2]=F[f+96>>2];F[f+4>>2]=b;b=F[f+132>>2];F[f+32>>2]=F[f+128>>2];F[f+36>>2]=b;b=F[f+124>>2];F[f+24>>2]=F[f+120>>2];F[f+28>>2]=b;e=F[f+116>>2];g=e;b=F[f+112>>2];F[f+16>>2]=b;F[f+20>>2]=e;c=F[f+108>>2];e=F[f+104>>2];F[f+8>>2]=e;F[f+12>>2]=c;j=e-b|0;m=F[i+12>>2];e=c-((b>>>0>e>>>0)+g|0)|0;c=F[i+8>>2];if((m|0)==(e|0)&j>>>0>>0|e>>>0>>0){break m}e=g+m|0;c=b+c|0;e=c>>>0>>0?e+1|0:e;F[f+16>>2]=c;F[f+20>>2]=e;break n}if(!de(f+80|0,f)){break l}}if(!$e(f)){break l}b=F[f+4>>2];F[k>>2]=F[f>>2];F[k+4>>2]=b;b=F[f+36>>2];F[k+32>>2]=F[f+32>>2];F[k+36>>2]=b;b=F[f+28>>2];F[k+24>>2]=F[f+24>>2];F[k+28>>2]=b;b=F[f+20>>2];F[k+16>>2]=F[f+16>>2];F[k+20>>2]=b;b=F[f+12>>2];F[k+8>>2]=F[f+8>>2];F[k+12>>2]=b;b=F[f+144>>2];b=H[(ia[F[F[b>>2]+32>>2]](b)|0)+36>>1];o:{if(((b<<8|b>>>8)&65535)>>>0<=513){b=F[f+144>>2];p:{if(G[(ia[F[F[b>>2]+32>>2]](b)|0)+36|0]<=1){b=F[k+20>>2];e=F[k+16>>2];g=e+4|0;b=g>>>0<4?b+1|0:b;c=F[k+12>>2];if((c|0)<=(b|0)&g>>>0>I[k+8>>2]|(b|0)>(c|0)){break l}e=e+F[k>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[k+16>>2]=g;F[k+20>>2]=b;break p}if(!Oe(1,i+8|0,k)){break l}e=F[i+8>>2]}b=F[f+152>>2];if(e>>>0>=b>>>0){break l}e=F[k+20>>2];c=F[k+12>>2];g=F[k+16>>2];if((e|0)>=(c|0)&g>>>0>=I[k+8>>2]|(c|0)<(e|0)){break l}c=G[g+F[k>>2]|0];g=g+1|0;e=g?e:e+1|0;F[k+16>>2]=g;F[k+20>>2]=e;if(c){break l}F[f+176>>2]=2;F[f+180>>2]=7;break o}F[f+176>>2]=2;F[f+180>>2]=7;b=F[f+152>>2]}if((b|0)<0){break l}F[i+8>>2]=0;h=2;c=F[f+156>>2];g=F[f+160>>2]-c>>2;q:{if(g>>>0>>0){eb(f+156|0,b-g|0,i+8|0);h=F[f+176>>2];e=F[f+180>>2];break q}e=7;if(b>>>0>=g>>>0){break q}F[f+160>>2]=c+(b<<2)}g=f+184|0;e=(e-h|0)+1|0;b=F[f+188>>2];c=F[f+184>>2];h=(b-c|0)/12|0;r:{if(e>>>0>h>>>0){e=e-h|0;j=F[g+8>>2];b=F[g+4>>2];s:{if(e>>>0<=(j-b|0)/12>>>0){if(e){h=b;b=L((L(e,12)-12>>>0)/12|0,12)+12|0;b=Qi(h,0,b)+b|0}F[g+4>>2]=b;break s}t:{u:{v:{h=F[g>>2];m=(b-h|0)/12|0;c=m+e|0;if(c>>>0<357913942){j=(j-h|0)/12|0;l=j<<1;j=j>>>0<178956970?c>>>0>l>>>0?c:l:357913941;if(j){if(j>>>0>=357913942){break v}s=oj(L(j,12))}c=L(m,12)+s|0;m=L((L(e,12)-12>>>0)/12|0,12)+12|0;e=Qi(c,0,m);m=e+m|0;j=L(j,12)+s|0;if((b|0)==(h|0)){break u}while(1){c=c-12|0;b=b-12|0;F[c>>2]=F[b>>2];F[c+4>>2]=F[b+4>>2];F[c+8>>2]=F[b+8>>2];F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;if((b|0)!=(h|0)){continue}break}F[g+8>>2]=j;e=F[g+4>>2];F[g+4>>2]=m;b=F[g>>2];F[g>>2]=c;if((b|0)==(e|0)){break t}while(1){h=e-12|0;c=F[h>>2];if(c){F[e-8>>2]=c;mj(c)}e=h;if((e|0)!=(b|0)){continue}break}break t}Ha();V()}Ua(1336);V()}F[g+8>>2]=j;F[g+4>>2]=m;F[g>>2]=e}if(b){mj(b)}}e=F[f+188>>2];break r}if(e>>>0>=h>>>0){e=b;break r}e=c+L(e,12)|0;if((e|0)!=(b|0)){while(1){h=b-12|0;c=F[h>>2];if(c){F[b-8>>2]=c;mj(c)}b=h;if((e|0)!=(b|0)){continue}break}}F[f+188>>2]=e}j=f+196|0;h=F[f+184>>2];b=(e-h|0)/12|0;s=F[f+196>>2];c=F[f+200>>2]-s>>2;w:{if(b>>>0>c>>>0){Ja(j,b-c|0);h=F[f+184>>2];e=F[f+188>>2];break w}if(b>>>0>=c>>>0){break w}F[f+200>>2]=s+(b<<2)}if((e|0)==(h|0)){h=1;break l}b=0;while(1){if(!Oe(1,i+8|0,k)){break m}h=F[i+8>>2];e=F[f+148>>2];if(h>>>0>(F[e+4>>2]-F[e>>2]>>2>>>0)/3>>>0){break m}if(h){e=F[g>>2];l=L(b,12);c=e+l|0;s=F[c>>2];m=F[c+4>>2]-s>>2;x:{if(m>>>0>>0){Ja(c,h-m|0);e=F[g>>2];break x}if(h>>>0>=m>>>0){break x}F[c+4>>2]=s+(h<<2)}me(h,1,k,F[e+l>>2]);F[F[j>>2]+(b<<2)>>2]=h}h=1;b=b+1|0;if(b>>>0<(F[f+188>>2]-F[f+184>>2]|0)/12>>>0){continue}break}break l}h=0}fa=i+16|0;y:{if(!h){break y}b=0;i=0;e=0;g=0;s=0;h=0;o=fa-96|0;fa=o;F[o+72>>2]=0;F[o+64>>2]=0;F[o+68>>2]=0;F[o+48>>2]=0;F[o+52>>2]=0;F[o+40>>2]=0;F[o+44>>2]=0;F[o+56>>2]=1065353216;F[o+32>>2]=0;F[o+24>>2]=0;F[o+28>>2]=0;t=1;l=a;B=F[a+124>>2];z:{A:{B:{C:{m=d;D:{E:{if((d|0)<=0){break E}r=l+232|0;O=F[l+216>>2]!=F[l+220>>2];while(1){a=s;s=a+1|0;d=F[r+172>>2];F:{if((d|0)!=-1){c=F[r+196>>2]+(d<<2)|0;j=F[c>>2];d=j-1|0;F[c>>2]=d;c=9;if((j|0)<=0){break F}c=F[(F[F[F[r+184>>2]+L(F[r+172>>2],12)>>2]+(d<<2)>>2]<<2)+12176>>2];F[r+168>>2]=c;break F}c=7;d=F[r+144>>2];d=H[(ia[F[F[d>>2]+32>>2]](d)|0)+36>>1];G:{if(((d<<8|d>>>8)&65535)>>>0>513){break G}if(!G[r+76|0]){F[r+168>>2]=1;c=1;break F}c=0;n=F[r- -64>>2];j=F[r+72>>2];d=n+(j>>>3|0)|0;q=F[r+68>>2];if(d>>>0>=q>>>0){break G}p=G[d|0];d=j+1|0;F[r+72>>2]=d;if(!(p>>>(j&7)&1)){break G}p=d>>>3|0;c=n+p|0;H:{if(c>>>0>=q>>>0){c=d;d=0;break H}w=G[c|0];c=j+2|0;F[r+72>>2]=c;p=c>>>3|0;d=w>>>(d&7)&1}j=n+p|0;if(j>>>0>>0){j=G[j|0];F[r+72>>2]=c+1;c=j>>>(c&7)<<1&2}else{c=0}c=(d|c)<<1|1}F[r+168>>2]=c}I:{J:{if(!c){if((e|0)==(g|0)){j=-1;break D}c=-1;n=F[l+8>>2];p=F[n+24>>2];b=p;q=e-4|0;j=F[q>>2];d=-1;K:{if((j|0)==-1){break K}i=j+1|0;i=(i>>>0)%3|0?i:j-2|0;d=-1;if((i|0)==-1){break K}d=F[F[n>>2]+(i<<2)>>2]}b=F[b+(d<<2)>>2];if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b-2|0}i=F[n+12>>2];b=L(a,3);a=b+1|0;F[i+(j<<2)>>2]=a;w=a<<2;F[w+i>>2]=j;t=b+2|0;F[i+(c<<2)>>2]=t;x=t<<2;F[x+i>>2]=c;i=-1;a=-1;L:{if((j|0)==-1){break L}M:{if((j>>>0)%3|0){j=j-1|0;break M}j=j+2|0;a=-1;if((j|0)==-1){break L}}a=F[F[n>>2]+(j<<2)>>2]}N:{if((c|0)==-1){break N}j=c+1|0;c=(j>>>0)%3|0?j:c-2|0;if((c|0)==-1){break N}i=F[F[n>>2]+(c<<2)>>2]}j=-1;if((a|0)==(d|0)|(d|0)==(i|0)){break D}c=F[n>>2];F[c+(b<<2)>>2]=d;F[c+w>>2]=i;F[c+x>>2]=a;if((a|0)!=-1){F[p+(a<<2)>>2]=t}a=F[l+120>>2]+(d>>>3&536870908)|0;c=F[a>>2];P=a,Q=Vj(d)&c,F[P>>2]=Q;F[q>>2]=b;break J}j=-1;O:{P:{Q:{R:{S:{T:{U:{V:{W:{X:{switch(c-1|0){case 2:case 4:if((b|0)==(g|0)){break D}d=F[l+8>>2];i=F[d+12>>2];n=L(a,3);w=(c|0)==5;p=n+(w?2:1)|0;x=p<<2;J=b-4|0;c=F[J>>2];F[i+x>>2]=c;F[i+(c<<2)>>2]=p;af(d+24|0);i=F[l+8>>2];q=F[i+24>>2];if(F[i+28>>2]-q>>2>(B|0)){break D}i=F[i>>2];K=i+x|0;d=F[d+28>>2]-F[d+24>>2]|0;x=(d>>2)-1|0;F[K>>2]=x;if(d){F[q+(x<<2)>>2]=p}p=w?n:n+2|0;K=i+(n+w<<2)|0;Y:{if((c|0)==-1){F[i+(p<<2)>>2]=-1;d=-1;break Y}Z:{_:{$:{if((c>>>0)%3|0){d=c-1|0;break $}d=c+2|0;if((d|0)==-1){break _}}d=F[i+(d<<2)>>2];F[i+(p<<2)>>2]=d;if((d|0)==-1){break Z}F[q+(d<<2)>>2]=p;break Z}F[i+(p<<2)>>2]=-1}p=c+1|0;c=(p>>>0)%3|0?p:c-2|0;d=-1;if((c|0)==-1){break Y}d=F[i+(c<<2)>>2]}F[K>>2]=d;F[J>>2]=n;break W;case 0:if((b|0)==(i|0)){break D}e=b-4|0;p=F[e>>2];F[o+68>>2]=e;q=F[o+44>>2];aa:{if(!q){break aa}c=F[o+40>>2];w=Uj(q)>>>0>1;d=a&q+2147483647;ba:{if(!w){break ba}d=a;if(a>>>0>>0){break ba}d=(a>>>0)%(q>>>0)|0}n=d;d=F[c+(n<<2)>>2];if(!d){break aa}d=F[d>>2];if(!d){break aa}ca:{if(!w){c=q-1|0;while(1){q=F[d+4>>2];da:{if((q|0)!=(a|0)){if((n|0)==(c&q)){break da}break aa}if((a|0)==F[d+8>>2]){break ca}}d=F[d>>2];if(d){continue}break}break aa}while(1){c=F[d+4>>2];ea:{if((c|0)!=(a|0)){if(c>>>0>=q>>>0){c=(c>>>0)%(q>>>0)|0}if((c|0)==(n|0)){break ea}break aa}if((a|0)==F[d+8>>2]){break ca}}d=F[d>>2];if(d){continue}break}break aa}if((e|0)!=(A|0)){F[e>>2]=F[d+12>>2];F[o+68>>2]=b;e=b;break aa}b=A-i|0;c=b>>2;e=c+1|0;if(e>>>0>=1073741824){break T}g=b>>1;e=b>>>0<2147483644?e>>>0>g>>>0?e:g:1073741823;if(e){if(e>>>0>=1073741824){break A}g=oj(e<<2)}else{g=0}c=g+(c<<2)|0;F[c>>2]=F[d+12>>2];A=(e<<2)+g|0;e=c+4|0;if((b|0)>0){Oi(g,i,b)}F[o+72>>2]=A;F[o+68>>2]=e;F[o+64>>2]=g;if(!i){break aa}mj(i)}if((e|0)==(g|0)){break U}w=e-4|0;c=F[w>>2];d=(c|0)==-1;n=F[l+8>>2];if(!d&F[F[n+12>>2]+(c<<2)>>2]!=-1){break U}q=F[n+12>>2];if((p|0)!=-1&F[q+(p<<2)>>2]!=-1){break U}b=L(a,3);t=b+2|0;F[q+(c<<2)>>2]=t;a=t<<2;F[a+q>>2]=c;i=b+1|0;F[q+(p<<2)>>2]=i;x=i<<2;F[x+q>>2]=p;if(d){break S}if((c>>>0)%3|0){j=c-1|0;break Q}j=c+2|0;if((j|0)!=-1){break Q}i=F[n>>2];d=-1;break P;case 6:break X;default:break D}}c=F[l+8>>2];af(c+24|0);d=F[l+8>>2];e=L(a,3);p=F[c+28>>2]-F[c+24>>2]|0;n=p>>2;w=n-1|0;F[F[d>>2]+(e<<2)>>2]=w;af(d+24|0);q=e+1|0;F[F[d>>2]+(q<<2)>>2]=(F[d+28>>2]-F[d+24>>2]>>2)-1;d=F[l+8>>2];af(d+24|0);x=e+2|0;F[F[d>>2]+(x<<2)>>2]=(F[d+28>>2]-F[d+24>>2]>>2)-1;d=F[l+8>>2];c=F[d+24>>2];if(F[d+28>>2]-c>>2>(B|0)){break D}fa:{ga:{if(!p){F[c+(n<<2)>>2]=q;d=1;break ga}F[c+(w<<2)>>2]=e;d=0;if((p|0)==-4){break ga}F[c+(n<<2)>>2]=q;d=n+1|0;if((d|0)==-1){break fa}}F[c+(d<<2)>>2]=x}if((b|0)!=(A|0)){F[b>>2]=e;e=b+4|0;F[o+68>>2]=e;b=e;break V}b=b-i|0;c=b>>2;g=c+1|0;if(g>>>0>=1073741824){break R}d=b>>1;d=b>>>0<2147483644?d>>>0>>0?g:d:1073741823;if(d){if(d>>>0>=1073741824){break A}g=oj(d<<2)}else{g=0}c=g+(c<<2)|0;F[c>>2]=e;A=(d<<2)+g|0;e=c+4|0;if((b|0)>0){Oi(g,i,b)}F[o+72>>2]=A;F[o+68>>2]=e;F[o+64>>2]=g;if(i){mj(i)}b=e}i=g}jf(r,F[b-4>>2]);d=F[l+40>>2];if((d|0)==F[l+36>>2]){break I}c=m+(a^-1)|0;n=e-4|0;while(1){a=F[d-8>>2];if(a>>>0>c>>>0){break U}if((a|0)!=(c|0)){break I}p=G[d-4|0];a=d-12|0;b=F[a>>2];F[l+40>>2]=a;if((b|0)<0){break U}a=F[n>>2];F[o+20>>2]=m+(b^-1);b=o+20|0;F[o+88>>2]=b;bf(o,o+40|0,b,o+88|0);d=F[o>>2];ha:{if(p&1){b=-1;if((a|0)==-1){break ha}b=a+1|0;b=(b>>>0)%3|0?b:a-2|0;break ha}b=-1;if((a|0)==-1){break ha}b=a-1|0;if((a>>>0)%3|0){break ha}b=a+2|0}F[d+12>>2]=b;b=e;d=F[l+40>>2];if((d|0)!=F[l+36>>2]){continue}break}break I}if(t&1){break D}break E}Ha();V()}d=-1;i=F[n>>2];F[i+(b<<2)>>2]=-1;j=-1;break O}Ha();V()}i=F[n>>2];d=F[i+(j<<2)>>2]}F[(b<<2)+i>>2]=d;J=c+1|0;c=(J>>>0)%3|0?J:c-2|0;j=-1;if((c|0)==-1){break O}j=F[(c<<2)+i>>2]}F[i+x>>2]=j;ia:{if((p|0)==-1){F[a+i>>2]=-1;t=-1;j=-1;break ia}ja:{ka:{la:{if((p>>>0)%3|0){j=p-1|0;break la}j=p+2|0;if((j|0)==-1){break ka}}c=a+i|0;a=F[(j<<2)+i>>2];F[c>>2]=a;if((a|0)==-1){break ja}F[F[n+24>>2]+(a<<2)>>2]=t;break ja}F[a+i>>2]=-1}t=-1;a=p+1|0;a=(a>>>0)%3|0?a:p-2|0;j=-1;if((a|0)==-1){break ia}t=F[(a<<2)+i>>2];j=a}a=F[l+388>>2];c=d<<2;p=a+c|0;K=a;a=t<<2;F[p>>2]=F[p>>2]+F[K+a>>2];n=F[n+24>>2];a=n+a|0;if((d|0)!=-1){F[c+n>>2]=F[a>>2]}ma:{if((j|0)==-1){break ma}while(1){F[(j<<2)+i>>2]=d;c=j+1|0;c=(c>>>0)%3|0?c:j-2|0;if((c|0)==-1){break ma}c=F[q+(c<<2)>>2];if((c|0)==-1){break ma}j=c+1|0;j=(j>>>0)%3|0?j:c-2|0;if((j|0)!=-1){continue}break}}F[a>>2]=-1;na:{if(O){break na}if((z|0)!=(C|0)){F[z>>2]=t;z=z+4|0;F[o+28>>2]=z;break na}oa:{a=C-u|0;c=a>>2;h=c+1|0;if(h>>>0<1073741824){d=a>>1;d=a>>>0<2147483644?d>>>0>>0?h:d:1073741823;if(d){if(d>>>0>=1073741824){break oa}h=oj(d<<2)}else{h=0}c=h+(c<<2)|0;F[c>>2]=t;C=(d<<2)+h|0;z=c+4|0;if((a|0)>0){Oi(h,u,a)}F[o+32>>2]=C;F[o+28>>2]=z;F[o+24>>2]=h;if(u){mj(u)}u=h;break na}Ha();V()}break A}F[w>>2]=b}jf(r,b);b=e;i=g}t=(m|0)>(s|0);if((m|0)!=(s|0)){continue}break}s=m}j=-1;b=F[l+8>>2];if(F[b+28>>2]-F[b+24>>2]>>2>(B|0)){break D}if((e|0)!=(g|0)){a=l+60|0;A=l+312|0;while(1){e=e-4|0;u=F[e>>2];F[o+68>>2]=e;pa:{qa:{ra:{sa:{if(H[l+270>>1]<=513){if(!G[l+364|0]){break ra}b=F[l+360>>2];d=F[l+352>>2]+(b>>>3|0)|0;if(d>>>0>=I[l+356>>2]){break qa}d=G[d|0];F[l+360>>2]=b+1;b=d>>>(b&7)&1;break sa}b=fe(A)}if(!b){break qa}}r=F[l+8>>2];n=F[r>>2];if(((F[r+4>>2]-n>>2>>>0)/3|0)<=(s|0)){break D}d=-1;c=-1;i=F[r+24>>2];b=-1;ta:{if((u|0)==-1){break ta}m=u+1|0;m=(m>>>0)%3|0?m:u-2|0;b=-1;if((m|0)==-1){break ta}b=F[n+(m<<2)>>2]}m=b;b=F[i+(m<<2)>>2];ua:{if((b|0)==-1){break ua}t=b+1|0;b=(t>>>0)%3|0?t:b-2|0;if((b|0)==-1){break ua}d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=F[n+(d<<2)>>2]}d=b}t=-1;p=-1;i=F[i+(c<<2)>>2];b=-1;va:{if((i|0)==-1){break va}q=i+1|0;i=(q>>>0)%3|0?q:i-2|0;b=-1;if((i|0)==-1){break va}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)!=-1){p=F[n+(b<<2)>>2]}b=i}r=F[r+12>>2];i=L(s,3);B=i<<2;F[r+B>>2]=u;F[r+(u<<2)>>2]=i;u=i+1|0;C=u<<2;F[C+r>>2]=d;F[r+(d<<2)>>2]=u;q=i+2|0;d=q<<2;F[d+r>>2]=b;F[r+(b<<2)>>2]=q;F[n+B>>2]=c;r=n+C|0;F[r>>2]=p;n=d+n|0;F[n>>2]=m;b=F[l+120>>2];d=i>>>0>u>>>0?-1:c;c=b+(d>>>3&536870908)|0;m=F[c>>2];P=c,Q=Vj(d)&m,F[P>>2]=Q;t=(u|0)!=-1?F[r>>2]:t;d=b+(t>>>3&536870908)|0;c=F[d>>2];P=d,Q=Vj(t)&c,F[P>>2]=Q;d=-1;d=(q|0)!=-1?F[n>>2]:d;b=b+(d>>>3&536870908)|0;c=F[b>>2];P=b,Q=Vj(d)&c,F[P>>2]=Q;d=F[l+64>>2];b=F[l+68>>2];if((d|0)==b<<5){if((d+1|0)<0){break C}if(d>>>0<=1073741822){d=d+32&-32;b=b<<6;b=b>>>0>>0?d:b}else{b=2147483647}Hc(a,b);d=F[l+64>>2]}s=s+1|0;F[l+64>>2]=d+1;b=F[l+60>>2]+(d>>>3&536870908)|0;F[b>>2]=F[b>>2]|1<>2];if((b|0)!=F[l+80>>2]){F[b>>2]=i;F[l+76>>2]=b+4;break pa}c=F[l+72>>2];d=b-c|0;u=d>>2;b=u+1|0;if(b>>>0>=1073741824){break B}m=d>>1;m=d>>>0<2147483644?b>>>0>m>>>0?b:m:1073741823;if(m){if(m>>>0>=1073741824){break A}b=oj(m<<2)}else{b=0}u=b+(u<<2)|0;F[u>>2]=i;if((d|0)>0){Oi(b,c,d)}F[l+80>>2]=b+(m<<2);F[l+76>>2]=u+4;F[l+72>>2]=b;if(!c){break pa}mj(c);break pa}b=F[l+64>>2];d=F[l+68>>2];if((b|0)==d<<5){if((b+1|0)<0){break C}if(b>>>0<=1073741822){b=b+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Hc(a,b);b=F[l+64>>2]}F[l+64>>2]=b+1;d=F[l+60>>2]+(b>>>3&536870908)|0;c=F[d>>2];P=d,Q=Vj(b)&c,F[P>>2]=Q;b=F[l+76>>2];if((b|0)!=F[l+80>>2]){F[b>>2]=u;F[l+76>>2]=b+4;break pa}c=F[l+72>>2];d=b-c|0;m=d>>2;b=m+1|0;if(b>>>0>=1073741824){break B}i=d>>1;i=d>>>0<2147483644?b>>>0>i>>>0?b:i:1073741823;if(i){if(i>>>0>=1073741824){break A}b=oj(i<<2)}else{b=0}m=b+(m<<2)|0;F[m>>2]=u;if((d|0)>0){Oi(b,c,d)}F[l+80>>2]=b+(i<<2);F[l+76>>2]=m+4;F[l+72>>2]=b;if(!c){break pa}mj(c)}if((e|0)!=(g|0)){continue}break}b=F[l+8>>2]}if(((F[b+4>>2]-F[b>>2]>>2>>>0)/3|0)!=(s|0)){break D}d=F[b+24>>2];j=F[b+28>>2]-d>>2;if((h|0)==(z|0)){h=z;break D}c=h;while(1){a=F[c>>2];e=j-1|0;i=(e<<2)+d|0;if(F[i>>2]==-1){while(1){e=j-2|0;j=j-1|0;i=(e<<2)+d|0;if(F[i>>2]==-1){continue}break}}if(a>>>0<=e>>>0){F[o>>2]=b;d=F[i>>2];D[o+12|0]=1;F[o+8>>2]=d;F[o+4>>2]=d;if((d|0)!=-1){while(1){F[F[b>>2]+(d<<2)>>2]=a;sd(o);b=F[l+8>>2];d=F[o+8>>2];if((d|0)!=-1){continue}break}}d=F[b+24>>2];i=d+(e<<2)|0;if((a|0)!=-1){F[(a<<2)+d>>2]=F[i>>2]}F[i>>2]=-1;i=1<>2];a=s+(a>>>3&536870908)|0;s=s+(e>>>3&536870908)|0;e=1<>2]&e){i=i|F[a>>2]}else{i=F[a>>2]&(i^-1)}F[a>>2]=i;F[s>>2]=F[s>>2]&(e^-1);j=j-1|0}c=c+4|0;if((z|0)!=(c|0)){continue}break}}if(h){mj(h)}a=F[o+48>>2];if(a){while(1){b=F[a>>2];mj(a);a=b;if(b){continue}break}}a=F[o+40>>2];F[o+40>>2]=0;if(a){mj(a)}if(g){F[o+68>>2]=g;mj(g)}fa=o+96|0;break z}vj();V()}Ha();V()}Ua(1336);V()}if((j|0)==-1){break y}a=F[k+16>>2];b=a+F[k>>2]|0;e=F[k+8>>2];e=e-a|0;a=F[F[l+4>>2]+32>>2];E[a+38>>1]=H[a+38>>1];F[a>>2]=b;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=e;F[a+12>>2]=0;a=F[l+4>>2];b=H[a+36>>1];h=b<<8|b>>>8;if((h&65535)>>>0<=513){a=F[a+32>>2];e=N+F[a+20>>2]|0;b=y+F[a+16>>2]|0;e=b>>>0>>0?e+1|0:e;F[a+16>>2]=b;F[a+20>>2]=e}wa:{if(F[l+216>>2]==F[l+220>>2]){break wa}b=F[l+8>>2];a=F[b>>2];b=F[b+4>>2];xa:{if((h&65535)>>>0>=513){if((a|0)==(b|0)){break wa}b=0;break xa}if((a|0)==(b|0)){break wa}b=0;while(1){if(Ve(l,b)){b=b+3|0;a=F[l+8>>2];if(b>>>0>2]-F[a>>2]>>2>>>0){continue}break wa}break}break y}while(1){if(We(l,b)){b=b+3|0;a=F[l+8>>2];if(b>>>0>2]-F[a>>2]>>2>>>0){continue}break wa}break}break y}Xe(f);b=F[l+216>>2];if((b|0)!=F[l+220>>2]){h=0;while(1){a=L(h,144);wi((a+b|0)+4|0,F[l+8>>2]);v=F[M>>2];e=a+v|0;b=F[e+132>>2];e=F[e+136>>2];if((b|0)!=(e|0)){while(1){yi((a+v|0)+4|0,F[b>>2]);v=F[M>>2];b=b+4|0;if((e|0)!=(b|0)){continue}break}}xi((a+v|0)+4|0);h=h+1|0;b=F[l+216>>2];if(h>>>0<(F[l+220>>2]-b|0)/144>>>0){continue}break}}a=F[l+8>>2];Ye(l+184|0,F[a+28>>2]-F[a+24>>2]>>2);v=F[l+216>>2];if((v|0)!=F[l+220>>2]){b=0;while(1){a=L(b,144)+v|0;e=F[a+60>>2]-F[a+56>>2]>>2;h=a+104|0;a=F[l+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ye(h,(a|0)>(e|0)?a:e);b=b+1|0;v=F[l+216>>2];if(b>>>0<(F[l+220>>2]-v|0)/144>>>0){continue}break}}v=Ze(l,j)}break b}v=0}fa=k- -64|0;return v|0}function ef(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;m=fa+-64|0;fa=m;F[a+132>>2]=0;if(F[a+148>>2]){e=F[a+144>>2];if(e){while(1){d=F[e>>2];mj(e);e=d;if(d){continue}break}}e=0;F[a+144>>2]=0;f=F[a+140>>2];a:{if(!f){break a}if(f-1>>>0>=3){d=f&-4;while(1){b=e<<2;F[b+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(b|4)>>2]=0;F[F[a+136>>2]+(b|8)>>2]=0;F[F[a+136>>2]+(b|12)>>2]=0;e=e+4|0;g=g+4|0;if((d|0)!=(g|0)){continue}break}}d=f&3;if(!d){break a}while(1){F[F[a+136>>2]+(e<<2)>>2]=0;e=e+1|0;v=v+1|0;if((d|0)!=(v|0)){continue}break}}F[a+148>>2]=0}b:{c:{e=F[a+4>>2];v=G[e+36|0];d=v<<8|G[e+37|0];d:{if(d>>>0>513){break d}c=F[e+32>>2];if(d>>>0<=511){d=F[c+20>>2];f=F[c+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;b=g;g=F[c+12>>2];if(b>>>0>I[c+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break c}g=f+F[c>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[c+16>>2]=b;F[c+20>>2]=d;F[a+132>>2]=g;break d}if(!Oe(1,m,c)){break c}e=F[a+4>>2];v=G[e+36|0];F[a+132>>2]=F[m>>2]}c=F[e+32>>2];e:{f:{g:{if((v&255)>>>0<=1){v=0;d=F[c+20>>2];f=F[c+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;b=g;g=F[c+12>>2];if(b>>>0>I[c+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break b}g=f+F[c>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[m+60>>2]=g;F[c+16>>2]=b;F[c+20>>2]=d;F[a+156>>2]=g;c=a+156|0;break g}v=0;if(!Oe(1,m+60|0,c)){break b}e=F[a+4>>2];d=G[e+36|0];F[a+156>>2]=F[m+60>>2];c=a+156|0;if(d>>>0>1){break f}}o=F[e+32>>2];d=F[o+8>>2];f=F[o+12>>2];j=d;d=F[o+20>>2];b=F[o+16>>2];g=b+4|0;d=g>>>0<4?d+1|0:d;e=g;if(j>>>0>>0&(d|0)>=(f|0)|(d|0)>(f|0)){break b}g=b+F[o>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[m+56>>2]=g;F[o+16>>2]=e;F[o+20>>2]=d;break e}if(!Oe(1,m+56|0,F[e+32>>2])){break b}g=F[m+56>>2]}if(g>>>0>1431655765|I[c>>2]>L(g,3)>>>0){break b}x=F[a+4>>2];e=F[x+32>>2];j=F[e+8>>2];f=j;b=F[e+12>>2];d=F[e+20>>2];l=F[e+16>>2];if((b|0)<=(d|0)&l>>>0>=f>>>0|(d|0)>(b|0)){break b}o=F[e>>2];i=G[o+l|0];c=l+1|0;f=c?d:d+1|0;F[e+16>>2]=c;F[e+20>>2]=f;h:{if(G[x+36|0]<=1){f=l+5|0;d=f>>>0<5?d+1|0:d;if(f>>>0>j>>>0&(d|0)>=(b|0)|(d|0)>(b|0)){break b}b=c+o|0;c=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[m+52>>2]=c;F[e+16>>2]=f;F[e+20>>2]=d;break h}if(!Oe(1,m+52|0,e)){break b}c=F[m+52>>2]}if(((c>>>0)/3|0)+c>>>0>>0|c>>>0>g>>>0){break b}d=F[a+4>>2];o=F[d+32>>2];i:{if(G[d+36|0]<=1){d=F[o+20>>2];b=F[o+16>>2];e=b+4|0;d=e>>>0<4?d+1|0:d;f=e;e=F[o+12>>2];if(f>>>0>I[o+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break b}e=b+F[o>>2]|0;b=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[m+48>>2]=b;F[o+16>>2]=f;F[o+20>>2]=d;break i}if(!Oe(1,m+48|0,o)){break b}b=F[m+48>>2]}if(c>>>0>>0){break b}F[a+28>>2]=F[a+24>>2];d=oj(88);ni(d);e=F[a+8>>2];F[a+8>>2]=d;if(e){Pe(e);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Qe(a+160|0,g);F[a+176>>2]=F[a+172>>2];Qe(a+172|0,g);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];N=a+216|0;Re(N);Se(N,i);if(!oi(F[a+8>>2],g,F[a+156>>2]+b|0)){break b}d=F[a+156>>2];D[m|0]=1;Le(a+120|0,d+b|0,m);g=F[a+4>>2];d=H[g+36>>1];d=(d<<8|d>>>8)&65535;j:{if(d>>>0<=513){o=F[g+32>>2];k:{if(d>>>0<=511){d=F[o+20>>2];f=F[o+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;e=g;g=F[o+12>>2];if(e>>>0>I[o+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break b}g=f+F[o>>2]|0;g=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[o+16>>2]=e;F[o+20>>2]=d;break k}if(!Oe(1,m+44|0,o)){break b}g=F[m+44>>2]}if(!g){break b}o=F[F[a+4>>2]+32>>2];f=F[o+8>>2];d=F[o+16>>2];e=f-d|0;d=F[o+12>>2]-(F[o+20>>2]+(d>>>0>f>>>0)|0)|0;if(e>>>0>>0&(d|0)<=0|(d|0)<0){break b}E[m+38>>1]=0;F[m>>2]=0;F[m+8>>2]=0;F[m+12>>2]=0;F[m+16>>2]=0;F[m+20>>2]=0;F[m+24>>2]=0;F[m+28>>2]=0;D[m+29|0]=0;D[m+30|0]=0;D[m+31|0]=0;D[m+32|0]=0;D[m+33|0]=0;D[m+34|0]=0;D[m+35|0]=0;D[m+36|0]=0;o=F[F[a+4>>2]+32>>2];e=o;d=F[e+16>>2];f=(d+F[e>>2]|0)+g|0;e=F[e+8>>2];d=(e-d|0)-g|0;E[m+38>>1]=H[o+38>>1];F[m>>2]=f;F[m+16>>2]=0;F[m+20>>2]=0;F[m+8>>2]=d;F[m+12>>2]=0;o=Te(a,m);if((o|0)==-1){break b}Q=o>>31;break j}o=-1;Q=-1;if((Te(a,F[g+32>>2])|0)==-1){break b}}C=a+232|0;ff(C,a);F[a+372>>2]=i;F[a+384>>2]=F[a+156>>2]+b;E[m+38>>1]=0;F[m>>2]=0;d=m;F[d+8>>2]=0;F[d+12>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+24>>2]=0;F[d+28>>2]=0;D[d+29|0]=0;D[d+30|0]=0;D[d+31|0]=0;D[d+32|0]=0;D[d+33|0]=0;D[d+34|0]=0;D[d+35|0]=0;D[d+36|0]=0;l=0;j=fa-16|0;fa=j;l:{if(!Ue(C,d)){break l}g=d;d=F[d+20>>2];f=F[g+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;b=e;e=F[g+12>>2];if(b>>>0>I[g+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break l}e=f+F[g>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[g+16>>2]=b;F[g+20>>2]=d;if((e|0)<0){break l}b=F[C+152>>2];if((b|0)<=(e|0)){break l}F[j+12>>2]=0;d=F[C+156>>2];e=F[C+160>>2]-d>>2;m:{if(e>>>0>>0){eb(C+156|0,b-e|0,j+12|0);break m}if(b>>>0>=e>>>0){break m}F[C+160>>2]=d+(b<<2)}l=de(C+168|0,g)}fa=j+16|0;n:{if(!l){break n}b=0;l=0;e=0;d=0;g=0;x=0;n=fa-96|0;fa=n;F[n+72>>2]=0;F[n+64>>2]=0;F[n+68>>2]=0;F[n+48>>2]=0;F[n+52>>2]=0;F[n+40>>2]=0;F[n+44>>2]=0;F[n+56>>2]=1065353216;F[n+32>>2]=0;F[n+24>>2]=0;F[n+28>>2]=0;p=1;h=a;O=F[a+124>>2];o:{p:{q:{r:{j=c;s:{t:{if((c|0)<=0){break t}K=h+400|0;P=h+232|0;z=F[h+216>>2]!=F[h+220>>2];while(1){i=x;x=i+1|0;u:{v:{w:{x:{y:{if(F[h+420>>2]!=-1){if(fe(K)){break y}}if(G[h+308|0]){q=F[h+296>>2];r=F[h+304>>2];a=q+(r>>>3|0)|0;s=F[h+300>>2];if(a>>>0>=s>>>0){break x}f=G[a|0];a=r+1|0;F[h+304>>2]=a;if(!(f>>>(r&7)&1)){break x}k=a>>>3|0;f=q+k|0;z:{if(f>>>0>=s>>>0){f=a;a=0;break z}c=G[f|0];f=r+2|0;F[h+304>>2]=f;k=f>>>3|0;a=c>>>(a&7)&1}c=k+q|0;if(c>>>0>>0){c=G[c|0];F[h+304>>2]=f+1;f=c>>>(f&7)<<1&2}else{f=0}c=(a|f)<<1|1}else{c=1}F[h+416>>2]=c;break v}c=F[h+420>>2];F[h+416>>2]=c;if(c){break v}break w}F[h+416>>2]=0}if((b|0)==(l|0)){f=-1;break s}s=-1;y=F[h+8>>2];r=F[y+24>>2];a=r;q=b-4|0;A=F[q>>2];c=-1;A:{if((A|0)==-1){break A}f=A+1|0;f=(f>>>0)%3|0?f:A-2|0;c=-1;if((f|0)==-1){break A}c=F[F[y>>2]+(f<<2)>>2]}f=F[a+(c<<2)>>2];if((f|0)!=-1){a=f+1|0;s=(a>>>0)%3|0?a:f-2|0}f=F[y+12>>2];u=L(i,3);a=u+1|0;F[f+(A<<2)>>2]=a;k=a<<2;F[k+f>>2]=A;t=u+2|0;F[f+(s<<2)>>2]=t;i=t<<2;F[i+f>>2]=s;p=-1;a=-1;B:{if((A|0)==-1){break B}C:{if((A>>>0)%3|0){f=A-1|0;break C}f=A+2|0;a=-1;if((f|0)==-1){break B}}a=F[F[y>>2]+(f<<2)>>2]}D:{if((s|0)==-1){break D}f=s+1|0;f=(f>>>0)%3|0?f:s-2|0;if((f|0)==-1){break D}p=F[F[y>>2]+(f<<2)>>2]}f=-1;if((a|0)==(c|0)|(c|0)==(p|0)){break s}f=F[y>>2];F[f+(u<<2)>>2]=c;F[f+k>>2]=p;F[f+i>>2]=a;if((a|0)!=-1){F[r+(a<<2)>>2]=t}f=F[h+120>>2]+(c>>>3&536870908)|0;a=F[f>>2];R=f,S=Vj(c)&a,F[R>>2]=S;F[q>>2]=u;gf(P,u);break u}f=-1;E:{F:{G:{H:{I:{J:{K:{L:{M:{N:{switch(c-1|0){case 2:case 4:if((d|0)==(b|0)){break s}q=F[h+8>>2];k=F[q+12>>2];r=L(i,3);s=(c|0)==5;c=r+(s?2:1)|0;a=c<<2;l=b-4|0;u=F[l>>2];F[k+a>>2]=u;F[k+(u<<2)>>2]=c;af(q+24|0);b=F[h+8>>2];k=F[b+24>>2];if(F[b+28>>2]-k>>2>(O|0)){break s}t=F[b>>2];A=t+a|0;b=F[q+28>>2]-F[q+24>>2]|0;a=(b>>2)-1|0;F[A>>2]=a;if(b){F[k+(a<<2)>>2]=c}q=s?r:r+2|0;b=t+(s+r<<2)|0;O:{if((u|0)==-1){F[t+(q<<2)>>2]=-1;c=-1;break O}P:{Q:{R:{if((u>>>0)%3|0){c=u-1|0;break R}c=u+2|0;if((c|0)==-1){break Q}}a=F[t+(c<<2)>>2];F[t+(q<<2)>>2]=a;if((a|0)==-1){break P}F[k+(a<<2)>>2]=q;break P}F[t+(q<<2)>>2]=-1}a=u+1|0;a=(a>>>0)%3|0?a:u-2|0;c=-1;if((a|0)==-1){break O}c=F[t+(a<<2)>>2]}F[b>>2]=c;F[l>>2]=r;break M;case 0:if((b|0)==(l|0)){break s}e=b-4|0;y=F[e>>2];F[n+68>>2]=e;q=F[n+44>>2];S:{if(!q){break S}c=F[n+40>>2];s=Uj(q)>>>0>1;a=i&q+2147483647;T:{if(!s){break T}a=i;if(a>>>0>>0){break T}a=(i>>>0)%(q>>>0)|0}k=a;a=F[c+(k<<2)>>2];if(!a){break S}c=F[a>>2];if(!c){break S}U:{if(!s){s=q-1|0;while(1){a=F[c+4>>2];V:{if((a|0)!=(i|0)){if((k|0)==(a&s)){break V}break S}if((i|0)==F[c+8>>2]){break U}}c=F[c>>2];if(c){continue}break}break S}while(1){a=F[c+4>>2];W:{if((a|0)!=(i|0)){if(a>>>0>=q>>>0){a=(a>>>0)%(q>>>0)|0}if((a|0)==(k|0)){break W}break S}if((i|0)==F[c+8>>2]){break U}}c=F[c>>2];if(c){continue}break}break S}if((e|0)!=(M|0)){F[e>>2]=F[c+12>>2];F[n+68>>2]=b;e=b;break S}k=M-l|0;e=k>>2;d=e+1|0;if(d>>>0>=1073741824){break J}a=k>>1;b=k>>>0<2147483644?a>>>0>>0?d:a:1073741823;if(b){if(b>>>0>=1073741824){break p}d=oj(b<<2)}else{d=0}a=d+(e<<2)|0;F[a>>2]=F[c+12>>2];M=(b<<2)+d|0;e=a+4|0;if((k|0)>0){Oi(d,l,k)}F[n+72>>2]=M;F[n+68>>2]=e;F[n+64>>2]=d;if(!l){break S}mj(l)}if((d|0)==(e|0)){break K}k=e-4|0;u=F[k>>2];c=(u|0)==-1;t=F[h+8>>2];if(!c&F[F[t+12>>2]+(u<<2)>>2]!=-1){break K}r=F[t+12>>2];if((y|0)!=-1&F[r+(y<<2)>>2]!=-1){break K}q=L(i,3);i=q+2|0;F[r+(u<<2)>>2]=i;l=i<<2;F[l+r>>2]=u;a=q+1|0;F[r+(y<<2)>>2]=a;b=a<<2;F[b+r>>2]=y;if(c){break I}if((u>>>0)%3|0){f=u-1|0;break G}f=u+2|0;if((f|0)!=-1){break G}p=F[t>>2];a=-1;break F;case 6:break N;default:break s}}a=F[h+8>>2];af(a+24|0);e=F[h+8>>2];t=L(i,3);s=F[a+28>>2]-F[a+24>>2]|0;q=s>>2;c=q-1|0;F[F[e>>2]+(t<<2)>>2]=c;af(e+24|0);k=t+1|0;F[F[e>>2]+(k<<2)>>2]=(F[e+28>>2]-F[e+24>>2]>>2)-1;a=F[h+8>>2];af(a+24|0);e=t+2|0;F[F[a>>2]+(e<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[h+8>>2];r=F[a+24>>2];if(F[a+28>>2]-r>>2>(O|0)){break s}X:{Y:{if(!s){F[r+(q<<2)>>2]=k;c=1;break Y}F[r+(c<<2)>>2]=t;c=0;if((s|0)==-4){break Y}F[r+(q<<2)>>2]=k;c=q+1|0;if((c|0)==-1){break X}}F[r+(c<<2)>>2]=e}if((b|0)!=(M|0)){F[b>>2]=t;e=b+4|0;F[n+68>>2]=e;break L}c=M-l|0;e=c>>2;d=e+1|0;if(d>>>0>=1073741824){break H}a=c>>1;b=c>>>0<2147483644?a>>>0>>0?d:a:1073741823;if(b){if(b>>>0>=1073741824){break p}d=oj(b<<2)}else{d=0}a=d+(e<<2)|0;F[a>>2]=t;M=(b<<2)+d|0;e=a+4|0;if((c|0)>0){Oi(d,l,c)}F[n+72>>2]=M;F[n+68>>2]=e;F[n+64>>2]=d;if(!l){break M}mj(l)}l=d}gf(P,F[e-4>>2]);c=F[h+40>>2];Z:{if((c|0)==F[h+36>>2]){break Z}s=j+(i^-1)|0;k=e-4|0;while(1){a=F[c-8>>2];if(a>>>0>s>>>0){break K}if((a|0)!=(s|0)){break Z}i=G[c-4|0];a=c-12|0;b=F[a>>2];F[h+40>>2]=a;if((b|0)<0){break K}c=F[k>>2];F[n+20>>2]=j+(b^-1);a=n+20|0;F[n+88>>2]=a;bf(n,n+40|0,a,n+88|0);b=F[n>>2];_:{if(i&1){a=-1;if((c|0)==-1){break _}a=c+1|0;a=(a>>>0)%3|0?a:c-2|0;break _}a=-1;if((c|0)==-1){break _}a=c-1|0;if((c>>>0)%3|0){break _}a=c+2|0}F[b+12>>2]=a;c=F[h+40>>2];if((c|0)!=F[h+36>>2]){continue}break}}b=e;break u}if(p){break s}break t}Ha();V()}s=-1;p=F[t>>2];F[p+(q<<2)>>2]=-1;f=-1;break E}Ha();V()}p=F[t>>2];a=F[p+(f<<2)>>2]}s=a;F[(q<<2)+p>>2]=a;a=u+1|0;a=(a>>>0)%3|0?a:u-2|0;f=-1;if((a|0)==-1){break E}f=F[(a<<2)+p>>2]}F[b+p>>2]=f;$:{if((y|0)==-1){F[l+p>>2]=-1;l=-1;f=-1;break $}aa:{ba:{ca:{if((y>>>0)%3|0){f=y-1|0;break ca}f=y+2|0;if((f|0)==-1){break ba}}a=F[(f<<2)+p>>2];F[l+p>>2]=a;if((a|0)==-1){break aa}F[F[t+24>>2]+(a<<2)>>2]=i;break aa}F[l+p>>2]=-1}l=-1;a=y+1|0;a=(a>>>0)%3|0?a:y-2|0;f=-1;if((a|0)==-1){break $}l=F[(a<<2)+p>>2];f=a}c=F[h+388>>2];b=s<<2;a=c+b|0;i=a;A=F[a>>2];a=l<<2;F[i>>2]=A+F[a+c>>2];i=a;a=F[t+24>>2];c=i+a|0;if((s|0)!=-1){F[a+b>>2]=F[c>>2]}da:{if((f|0)==-1){break da}while(1){F[(f<<2)+p>>2]=s;a=f+1|0;a=(a>>>0)%3|0?a:f-2|0;if((a|0)==-1){break da}b=F[r+(a<<2)>>2];if((b|0)==-1){break da}a=b+1|0;f=(a>>>0)%3|0?a:b-2|0;if((f|0)!=-1){continue}break}}F[c>>2]=-1;ea:{if(z){break ea}if((B|0)!=(J|0)){F[J>>2]=l;J=J+4|0;F[n+28>>2]=J;break ea}fa:{c=B-w|0;b=c>>2;g=b+1|0;if(g>>>0<1073741824){a=c>>1;f=c>>>0<2147483644?a>>>0>>0?g:a:1073741823;if(f){if(f>>>0>=1073741824){break fa}g=oj(f<<2)}else{g=0}a=g+(b<<2)|0;F[a>>2]=l;B=(f<<2)+g|0;J=a+4|0;if((c|0)>0){Oi(g,w,c)}F[n+32>>2]=B;F[n+28>>2]=J;F[n+24>>2]=g;if(w){mj(w)}w=g;break ea}Ha();V()}break p}F[k>>2]=q;b=e;l=d;gf(P,q)}p=(j|0)>(x|0);if((j|0)!=(x|0)){continue}break}x=j}f=-1;p=F[h+8>>2];if(F[p+28>>2]-F[p+24>>2]>>2>(O|0)){break s}if((d|0)!=(e|0)){a=h+60|0;q=h+312|0;while(1){e=e-4|0;z=F[e>>2];F[n+68>>2]=e;ga:{ha:{ia:{ja:{if(H[h+270>>1]<=513){if(!G[h+364|0]){break ia}c=F[h+360>>2];b=F[h+352>>2]+(c>>>3|0)|0;if(b>>>0>=I[h+356>>2]){break ha}b=G[b|0];F[h+360>>2]=c+1;b=b>>>(c&7)&1;break ja}b=fe(q)}if(!b){break ha}}r=F[h+8>>2];B=F[r>>2];if(((F[r+4>>2]-B>>2>>>0)/3|0)<=(x|0)){break s}c=-1;l=-1;s=-1;w=F[r+24>>2];i=w;j=-1;ka:{if((z|0)==-1){break ka}b=z+1|0;b=(b>>>0)%3|0?b:z-2|0;j=-1;if((b|0)==-1){break ka}j=F[B+(b<<2)>>2]}k=F[(j<<2)+i>>2];b=-1;la:{if((k|0)==-1){break la}i=k+1|0;i=(i>>>0)%3|0?i:k-2|0;b=-1;if((i|0)==-1){break la}b=i+1|0;c=i;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){b=F[B+(b<<2)>>2]}else{b=-1}}w=F[w+(b<<2)>>2];k=-1;ma:{if((w|0)==-1){break ma}i=w+1|0;i=(i>>>0)%3|0?i:w-2|0;k=-1;if((i|0)==-1){break ma}k=i+1|0;k=(k>>>0)%3|0?k:i-2|0;if((k|0)!=-1){s=F[B+(k<<2)>>2]}k=i}K=F[r+12>>2];t=L(x,3);w=t<<2;F[K+w>>2]=z;F[K+(z<<2)>>2]=t;z=t+1|0;i=z<<2;F[i+K>>2]=c;F[K+(c<<2)>>2]=z;r=t+2|0;c=r<<2;F[c+K>>2]=k;F[K+(k<<2)>>2]=r;F[w+B>>2]=b;k=i+B|0;F[k>>2]=s;i=c+B|0;F[i>>2]=j;w=F[h+120>>2];j=t>>>0>z>>>0?-1:b;c=w+(j>>>3&536870908)|0;b=F[c>>2];R=c,S=Vj(j)&b,F[R>>2]=S;l=(z|0)!=-1?F[k>>2]:l;c=w+(l>>>3&536870908)|0;b=F[c>>2];R=c,S=Vj(l)&b,F[R>>2]=S;c=-1;c=(r|0)!=-1?F[i>>2]:c;j=w+(c>>>3&536870908)|0;b=F[j>>2];R=j,S=Vj(c)&b,F[R>>2]=S;c=F[h+64>>2];b=F[h+68>>2];if((c|0)==b<<5){if((c+1|0)<0){break r}if(c>>>0<=1073741822){c=c+32&-32;b=b<<6;b=c>>>0>b>>>0?c:b}else{b=2147483647}Hc(a,b);c=F[h+64>>2]}x=x+1|0;F[h+64>>2]=c+1;b=F[h+60>>2]+(c>>>3&536870908)|0;F[b>>2]=F[b>>2]|1<>2];if((b|0)!=F[h+80>>2]){F[b>>2]=t;F[h+76>>2]=b+4;break ga}i=F[h+72>>2];l=b-i|0;c=l>>2;j=c+1|0;if(j>>>0>=1073741824){break q}b=l>>1;j=l>>>0<2147483644?b>>>0>>0?j:b:1073741823;if(j){if(j>>>0>=1073741824){break p}b=oj(j<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=t;if((l|0)>0){Oi(b,i,l)}F[h+80>>2]=b+(j<<2);F[h+76>>2]=c+4;F[h+72>>2]=b;if(!i){break ga}mj(i);break ga}p=F[h+64>>2];b=F[h+68>>2];if((p|0)==b<<5){if((p+1|0)<0){break r}if(p>>>0<=1073741822){c=p+32&-32;b=b<<6;b=c>>>0>b>>>0?c:b}else{b=2147483647}Hc(a,b);p=F[h+64>>2]}F[h+64>>2]=p+1;c=F[h+60>>2]+(p>>>3&536870908)|0;b=F[c>>2];R=c,S=Vj(p)&b,F[R>>2]=S;b=F[h+76>>2];if((b|0)!=F[h+80>>2]){F[b>>2]=z;F[h+76>>2]=b+4;break ga}i=F[h+72>>2];l=b-i|0;c=l>>2;j=c+1|0;if(j>>>0>=1073741824){break q}b=l>>1;j=l>>>0<2147483644?b>>>0>>0?j:b:1073741823;if(j){if(j>>>0>=1073741824){break p}b=oj(j<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=z;if((l|0)>0){Oi(b,i,l)}F[h+80>>2]=b+(j<<2);F[h+76>>2]=c+4;F[h+72>>2]=b;if(!i){break ga}mj(i)}if((d|0)!=(e|0)){continue}break}p=F[h+8>>2]}if(((F[p+4>>2]-F[p>>2]>>2>>>0)/3|0)!=(x|0)){break s}e=F[p+24>>2];f=F[p+28>>2]-e>>2;if((g|0)==(J|0)){g=J;break s}a=g;while(1){j=F[a>>2];c=f-1|0;b=(c<<2)+e|0;if(F[b>>2]==-1){while(1){c=f-2|0;f=f-1|0;b=(c<<2)+e|0;if(F[b>>2]==-1){continue}break}}if(c>>>0>=j>>>0){F[n>>2]=p;e=F[b>>2];D[n+12|0]=1;F[n+8>>2]=e;F[n+4>>2]=e;if((e|0)!=-1){while(1){F[F[p>>2]+(e<<2)>>2]=j;sd(n);p=F[h+8>>2];e=F[n+8>>2];if((e|0)!=-1){continue}break}}e=F[p+24>>2];b=e+(c<<2)|0;if((j|0)!=-1){F[(j<<2)+e>>2]=F[b>>2]}F[b>>2]=-1;i=1<>2];j=b+(j>>>3&536870908)|0;x=b+(c>>>3&536870908)|0;b=1<>2]&b){i=i|F[j>>2]}else{i=F[j>>2]&(i^-1)}F[j>>2]=i;F[x>>2]=F[x>>2]&(b^-1);f=f-1|0}a=a+4|0;if((J|0)!=(a|0)){continue}break}}if(g){mj(g)}a=F[n+48>>2];if(a){while(1){g=F[a>>2];mj(a);a=g;if(a){continue}break}}a=F[n+40>>2];F[n+40>>2]=0;if(a){mj(a)}if(d){F[n+68>>2]=d;mj(d)}fa=n+96|0;break o}vj();V()}Ha();V()}Ua(1336);V()}if((f|0)==-1){break n}a=F[m+16>>2];g=a+F[m>>2]|0;d=F[m+8>>2];a=d-a|0;d=F[F[h+4>>2]+32>>2];E[d+38>>1]=H[d+38>>1];F[d>>2]=g;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=a;F[d+12>>2]=0;d=F[h+4>>2];a=H[d+36>>1];g=a<<8|a>>>8;if((g&65535)>>>0<=513){a=F[d+32>>2];d=Q+F[a+20>>2]|0;e=o+F[a+16>>2]|0;d=e>>>0>>0?d+1|0:d;F[a+16>>2]=e;F[a+20>>2]=d}na:{if(F[h+216>>2]==F[h+220>>2]){break na}a=F[h+8>>2];d=F[a>>2];a=F[a+4>>2];oa:{if((g&65535)>>>0>=513){if((a|0)==(d|0)){break na}e=0;break oa}if((a|0)==(d|0)){break na}e=0;while(1){if(Ve(h,e)){e=e+3|0;a=F[h+8>>2];if(e>>>0>2]-F[a>>2]>>2>>>0){continue}break na}break}break n}while(1){if(We(h,e)){e=e+3|0;a=F[h+8>>2];if(e>>>0>2]-F[a>>2]>>2>>>0){continue}break na}break}break n}Xe(C);e=F[h+216>>2];if((e|0)!=F[h+220>>2]){g=0;while(1){d=L(g,144);wi((d+e|0)+4|0,F[h+8>>2]);v=F[N>>2];a=d+v|0;e=F[a+132>>2];a=F[a+136>>2];if((e|0)!=(a|0)){while(1){yi((d+v|0)+4|0,F[e>>2]);v=F[N>>2];e=e+4|0;if((a|0)!=(e|0)){continue}break}}xi((d+v|0)+4|0);g=g+1|0;e=F[h+216>>2];if(g>>>0<(F[h+220>>2]-e|0)/144>>>0){continue}break}}a=F[h+8>>2];Ye(h+184|0,F[a+28>>2]-F[a+24>>2]>>2);v=F[h+216>>2];if((v|0)!=F[h+220>>2]){e=0;while(1){a=L(e,144)+v|0;d=F[a+60>>2]-F[a+56>>2]>>2;g=a+104|0;a=F[h+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ye(g,(a|0)>(d|0)?a:d);e=e+1|0;v=F[h+216>>2];if(e>>>0<(F[h+220>>2]-v|0)/144>>>0){continue}break}}v=Ze(h,f)}break b}v=0}fa=m- -64|0;return v|0}function Ne(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,J=0,K=0,M=0,N=0,O=0,P=0;i=fa+-64|0;fa=i;F[a+132>>2]=0;if(F[a+148>>2]){c=F[a+144>>2];if(c){while(1){b=F[c>>2];mj(c);c=b;if(b){continue}break}}c=0;F[a+144>>2]=0;d=F[a+140>>2];a:{if(!d){break a}if(d-1>>>0>=3){b=d&-4;while(1){j=c<<2;F[j+F[a+136>>2]>>2]=0;F[F[a+136>>2]+(j|4)>>2]=0;F[F[a+136>>2]+(j|8)>>2]=0;F[F[a+136>>2]+(j|12)>>2]=0;c=c+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}}b=d&3;if(!b){break a}while(1){F[F[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;x=x+1|0;if((b|0)!=(x|0)){continue}break}}F[a+148>>2]=0}b:{c:{c=F[a+4>>2];x=G[c+36|0];b=x<<8|G[c+37|0];d:{if(b>>>0>513){break d}o=F[c+32>>2];if(b>>>0<=511){b=F[o+20>>2];d=F[o+16>>2];e=d+4|0;b=e>>>0<4?b+1|0:b;j=e;e=F[o+12>>2];if(j>>>0>I[o+8>>2]&(e|0)<=(b|0)|(b|0)>(e|0)){break c}e=d+F[o>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[o+16>>2]=j;F[o+20>>2]=b;F[a+132>>2]=e;break d}if(!Oe(1,i,o)){break c}c=F[a+4>>2];x=G[c+36|0];F[a+132>>2]=F[i>>2]}o=F[c+32>>2];e:{f:{g:{if((x&255)>>>0<=1){x=0;b=F[o+20>>2];d=F[o+16>>2];e=d+4|0;b=e>>>0<4?b+1|0:b;j=e;e=F[o+12>>2];if(j>>>0>I[o+8>>2]&(e|0)<=(b|0)|(b|0)>(e|0)){break b}e=d+F[o>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[i+60>>2]=e;F[o+16>>2]=j;F[o+20>>2]=b;F[a+156>>2]=e;k=a+156|0;break g}x=0;if(!Oe(1,i+60|0,o)){break b}c=F[a+4>>2];b=G[c+36|0];F[a+156>>2]=F[i+60>>2];k=a+156|0;if(b>>>0>1){break f}}d=F[c+32>>2];c=F[d+8>>2];j=F[d+12>>2];h=c;c=F[d+20>>2];e=F[d+16>>2];b=e+4|0;c=b>>>0<4?c+1|0:c;if(h>>>0>>0&(c|0)>=(j|0)|(c|0)>(j|0)){break b}e=e+F[d>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[i+56>>2]=e;F[d+16>>2]=b;F[d+20>>2]=c;break e}if(!Oe(1,i+56|0,F[c+32>>2])){break b}e=F[i+56>>2]}if(e>>>0>1431655765|I[k>>2]>L(e,3)>>>0){break b}f=F[a+4>>2];b=F[f+32>>2];v=F[b+8>>2];d=v;j=F[b+12>>2];c=F[b+20>>2];k=F[b+16>>2];if((j|0)<=(c|0)&k>>>0>=d>>>0|(c|0)>(j|0)){break b}h=F[b>>2];g=G[h+k|0];o=k+1|0;d=o?c:c+1|0;F[b+16>>2]=o;F[b+20>>2]=d;h:{if(G[f+36|0]<=1){d=k+5|0;c=d>>>0<5?c+1|0:c;if(d>>>0>v>>>0&(c|0)>=(j|0)|(c|0)>(j|0)){break b}j=h+o|0;k=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[i+52>>2]=k;F[b+16>>2]=d;F[b+20>>2]=c;break h}if(!Oe(1,i+52|0,b)){break b}k=F[i+52>>2]}if(e>>>0>>0|((k>>>0)/3|0)+k>>>0>>0){break b}c=F[a+4>>2];o=F[c+32>>2];i:{if(G[c+36|0]<=1){c=F[o+20>>2];d=F[o+16>>2];b=d+4|0;c=b>>>0<4?c+1|0:c;j=b;b=F[o+12>>2];if(j>>>0>I[o+8>>2]&(b|0)<=(c|0)|(b|0)<(c|0)){break b}b=d+F[o>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[i+48>>2]=b;F[o+16>>2]=j;F[o+20>>2]=c;break i}if(!Oe(1,i+48|0,o)){break b}b=F[i+48>>2]}if(b>>>0>k>>>0){break b}F[a+28>>2]=F[a+24>>2];c=oj(88);ni(c);j=F[a+8>>2];F[a+8>>2]=c;if(j){Pe(j);if(!F[a+8>>2]){break b}}F[a+164>>2]=F[a+160>>2];Qe(a+160|0,e);F[a+176>>2]=F[a+172>>2];Qe(a+172|0,e);F[a- -64>>2]=0;F[a+92>>2]=-1;F[a+84>>2]=-1;F[a+88>>2]=-1;F[a+40>>2]=F[a+36>>2];F[a+52>>2]=F[a+48>>2];F[a+76>>2]=F[a+72>>2];J=a+216|0;Re(J);Se(J,g);if(!oi(F[a+8>>2],e,F[a+156>>2]+b|0)){break b}c=F[a+156>>2];D[i|0]=1;Le(a+120|0,b+c|0,i);b=F[a+4>>2];c=H[b+36>>1];c=(c<<8|c>>>8)&65535;j:{if(c>>>0<=513){d=F[b+32>>2];k:{if(c>>>0<=511){b=F[d+20>>2];e=F[d+16>>2];c=e+4|0;b=c>>>0<4?b+1|0:b;j=c;c=F[d+12>>2];if(j>>>0>I[d+8>>2]&(c|0)<=(b|0)|(b|0)>(c|0)){break b}c=e+F[d>>2]|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[d+16>>2]=j;F[d+20>>2]=b;break k}if(!Oe(1,i+44|0,d)){break b}e=F[i+44>>2]}if(!e){break b}d=F[F[a+4>>2]+32>>2];j=F[d+8>>2];c=F[d+16>>2];b=j-c|0;c=F[d+12>>2]-(F[d+20>>2]+(c>>>0>j>>>0)|0)|0;if(b>>>0>>0&(c|0)<=0|(c|0)<0){break b}E[i+38>>1]=0;F[i>>2]=0;F[i+8>>2]=0;F[i+12>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i+24>>2]=0;F[i+28>>2]=0;D[i+29|0]=0;D[i+30|0]=0;D[i+31|0]=0;D[i+32|0]=0;D[i+33|0]=0;D[i+34|0]=0;D[i+35|0]=0;D[i+36|0]=0;d=F[F[a+4>>2]+32>>2];c=F[d+16>>2];j=(c+F[d>>2]|0)+e|0;b=F[d+8>>2];c=(b-c|0)-e|0;E[i+38>>1]=H[d+38>>1];F[i>>2]=j;F[i+16>>2]=0;F[i+20>>2]=0;F[i+8>>2]=c;F[i+12>>2]=0;o=Te(a,i);if((o|0)==-1){break b}M=o>>31;break j}o=-1;M=-1;if((Te(a,F[b+32>>2])|0)==-1){break b}}N=a+232|0;j=N;F[j+144>>2]=a;c=F[(ia[F[F[a>>2]+32>>2]](a)|0)+32>>2];e=F[c>>2]+F[c+16>>2]|0;b=F[(ia[F[F[a>>2]+32>>2]](a)|0)+32>>2];c=F[b+8>>2];b=F[b+16>>2];c=c-b|0;O=j,P=H[F[(ia[F[F[a>>2]+32>>2]](a)|0)+32>>2]+38>>1],E[O+38>>1]=P;F[j>>2]=e;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=c;F[j+12>>2]=0;F[a+372>>2]=g;E[i+38>>1]=0;F[i>>2]=0;F[i+8>>2]=0;F[i+12>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i+24>>2]=0;F[i+28>>2]=0;D[i+29|0]=0;D[i+30|0]=0;D[i+31|0]=0;D[i+32|0]=0;D[i+33|0]=0;D[i+34|0]=0;D[i+35|0]=0;D[i+36|0]=0;l:{if(!Ue(j,i)){break l}b=0;e=0;c=0;v=0;j=0;m=fa-96|0;fa=m;F[m+72>>2]=0;F[m+64>>2]=0;F[m+68>>2]=0;F[m+48>>2]=0;F[m+52>>2]=0;F[m+40>>2]=0;F[m+44>>2]=0;F[m+56>>2]=1065353216;F[m+32>>2]=0;F[m+24>>2]=0;F[m+28>>2]=0;n=1;g=a;K=F[a+124>>2];m:{n:{o:{p:{q:{r:{s:{t:{if((k|0)<=0){break t}z=F[g+216>>2]!=F[g+220>>2];while(1){h=v;v=h+1|0;u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{if(!G[g+308|0]){break E}F:{G:{t=F[g+296>>2];p=F[g+304>>2];a=t+(p>>>3|0)|0;l=F[g+300>>2];if(a>>>0>=l>>>0){break G}d=G[a|0];a=p+1|0;F[g+304>>2]=a;if(!(d>>>(p&7)&1)){break G}r=a>>>3|0;d=t+r|0;H:{if(d>>>0>=l>>>0){d=a;a=0;break H}f=G[d|0];d=p+2|0;F[g+304>>2]=d;r=d>>>3|0;a=f>>>(a&7)&1}f=r+t|0;if(f>>>0>>0){f=G[f|0];F[g+304>>2]=d+1;d=f>>>(d&7)<<1&2}else{d=0}a=(a|d)<<1;switch(a-1|0){case 0:case 2:case 4:break o;case 5:break D;case 1:case 3:break F;default:break E}}if((c|0)==(e|0)){d=-1;break s}r=-1;s=F[g+8>>2];t=F[s+24>>2];l=c-4|0;y=F[l>>2];a=-1;I:{if((y|0)==-1){break I}b=y+1|0;b=(b>>>0)%3|0?b:y-2|0;a=-1;if((b|0)==-1){break I}a=F[F[s>>2]+(b<<2)>>2]}b=a;d=F[t+(b<<2)>>2];if((d|0)!=-1){a=d+1|0;r=(a>>>0)%3|0?a:d-2|0}d=F[s+12>>2];q=L(h,3);a=q+1|0;F[d+(y<<2)>>2]=a;f=a<<2;F[f+d>>2]=y;p=q+2|0;F[d+(r<<2)>>2]=p;h=p<<2;F[h+d>>2]=r;u=-1;a=-1;J:{if((y|0)==-1){break J}K:{if((y>>>0)%3|0){d=y-1|0;break K}d=y+2|0;a=-1;if((d|0)==-1){break J}}a=F[F[s>>2]+(d<<2)>>2]}L:{if((r|0)==-1){break L}d=r+1|0;d=(d>>>0)%3|0?d:r-2|0;if((d|0)==-1){break L}u=F[F[s>>2]+(d<<2)>>2]}d=-1;if((a|0)==(b|0)|(b|0)==(u|0)){break s}d=F[s>>2];F[d+(q<<2)>>2]=b;F[d+f>>2]=u;F[d+h>>2]=a;if((a|0)!=-1){F[t+(a<<2)>>2]=p}d=F[g+120>>2]+(b>>>3&536870908)|0;a=F[d>>2];O=d,P=Vj(b)&a,F[O>>2]=P;F[l>>2]=q;b=e;break u}if((c|0)==(e|0)){d=-1;break s}u=F[g+8>>2];b=F[u+12>>2];q=L(h,3);t=(a|1)==5;l=q+(t?2:1)|0;a=l<<2;f=c-4|0;y=F[f>>2];F[b+a>>2]=y;F[b+(y<<2)>>2]=l;af(u+24|0);d=-1;b=F[g+8>>2];p=F[b+24>>2];if((K|0)>2]-p>>2){break s}s=F[b>>2];d=s+a|0;b=F[u+28>>2]-F[u+24>>2]|0;a=(b>>2)-1|0;F[d>>2]=a;if(b){F[p+(a<<2)>>2]=l}l=t?q:q+2|0;d=s+(q+t<<2)|0;M:{if((y|0)==-1){F[s+(l<<2)>>2]=-1;b=-1;break M}N:{O:{P:{if((y>>>0)%3|0){b=y-1|0;break P}b=y+2|0;if((b|0)==-1){break O}}a=F[s+(b<<2)>>2];F[s+(l<<2)>>2]=a;if((a|0)==-1){break N}F[p+(a<<2)>>2]=l;break N}F[s+(l<<2)>>2]=-1}a=y+1|0;a=(a>>>0)%3|0?a:y-2|0;b=-1;if((a|0)==-1){break M}b=F[s+(a<<2)>>2]}F[d>>2]=b;F[f>>2]=q;b=e;break C}if((c|0)==(e|0)){d=-1;break s}a=c-4|0;s=F[a>>2];F[m+68>>2]=a;l=F[m+44>>2];Q:{if(!l){c=a;break Q}f=Uj(l)>>>0>1;R:{if(!f){b=h&l+2147483647;break R}b=h;if(l>>>0>b>>>0){break R}b=(h>>>0)%(l>>>0)|0}d=F[F[m+40>>2]+(b<<2)>>2];if(!d){c=a;break Q}d=F[d>>2];if(!d){c=a;break Q}S:{if(!f){l=l-1|0;while(1){f=F[d+4>>2];T:{if((f|0)!=(h|0)){if((f&l)==(b|0)){break T}c=a;break Q}if((h|0)==F[d+8>>2]){break S}}d=F[d>>2];if(d){continue}break}c=a;break Q}while(1){f=F[d+4>>2];U:{if((f|0)!=(h|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((b|0)==(f|0)){break U}c=a;break Q}if((h|0)==F[d+8>>2]){break S}}d=F[d>>2];if(d){continue}break}c=a;break Q}if((a|0)!=(C|0)){F[a>>2]=F[d+12>>2];F[m+68>>2]=c;break Q}f=C-e|0;c=f>>2;b=c+1|0;if(b>>>0>=1073741824){break A}a=f>>1;b=f>>>0<2147483644?a>>>0>>0?b:a:1073741823;if(b){if(b>>>0>=1073741824){break n}w=oj(b<<2)}else{w=0}a=w+(c<<2)|0;F[a>>2]=F[d+12>>2];C=(b<<2)+w|0;c=a+4|0;if((f|0)>0){Oi(w,e,f)}F[m+72>>2]=C;F[m+68>>2]=c;F[m+64>>2]=w;if(!e){break Q}mj(e)}if((c|0)==(w|0)){break B}f=c-4|0;q=F[f>>2];b=(q|0)==-1;u=F[g+8>>2];if(!b&F[F[u+12>>2]+(q<<2)>>2]!=-1){break B}p=F[u+12>>2];if((s|0)!=-1&F[p+(s<<2)>>2]!=-1){break B}t=L(h,3);h=t+2|0;F[p+(q<<2)>>2]=h;l=h<<2;F[l+p>>2]=q;a=t+1|0;F[p+(s<<2)>>2]=a;e=a<<2;F[e+p>>2]=s;if(b){break z}if((q>>>0)%3|0){n=q-1|0;break x}n=q+2|0;if((n|0)!=-1){break x}r=F[u>>2];b=-1;break w}a=F[g+8>>2];af(a+24|0);d=-1;f=F[g+8>>2];s=L(h,3);p=F[a+28>>2]-F[a+24>>2]|0;u=p>>2;l=u-1|0;F[F[f>>2]+(s<<2)>>2]=l;af(f+24|0);t=s+1|0;F[F[f>>2]+(t<<2)>>2]=(F[f+28>>2]-F[f+24>>2]>>2)-1;a=F[g+8>>2];af(a+24|0);f=s+2|0;F[F[a>>2]+(f<<2)>>2]=(F[a+28>>2]-F[a+24>>2]>>2)-1;a=F[g+8>>2];q=F[a+24>>2];if((K|0)>2]-q>>2){break s}V:{W:{if(!p){F[q+(u<<2)>>2]=t;d=1;break W}F[q+(l<<2)>>2]=s;d=0;if((p|0)==-4){break W}F[q+(u<<2)>>2]=t;d=u+1|0;if((d|0)==-1){break V}}F[q+(d<<2)>>2]=f}if((c|0)!=(C|0)){F[c>>2]=s;c=c+4|0;F[m+68>>2]=c;break C}d=c-b|0;c=d>>2;w=c+1|0;if(w>>>0>=1073741824){break y}a=d>>1;e=d>>>0<2147483644?a>>>0>>0?w:a:1073741823;if(e){if(e>>>0>=1073741824){break n}w=oj(e<<2)}else{w=0}a=w+(c<<2)|0;F[a>>2]=s;C=(e<<2)+w|0;c=a+4|0;if((d|0)>0){Oi(w,b,d)}F[m+72>>2]=C;F[m+68>>2]=c;F[m+64>>2]=w;if(b){mj(b)}e=w;b=e}d=F[g+40>>2];if((d|0)==F[g+36>>2]){break u}l=(h^-1)+k|0;f=c-4|0;while(1){a=F[d-8>>2];if(a>>>0>l>>>0){break B}if((a|0)!=(l|0)){break u}h=G[d-4|0];a=d-12|0;d=F[a>>2];F[g+40>>2]=a;if((d|0)<0){break B}t=F[f>>2];F[m+20>>2]=(d^-1)+k;a=m+20|0;F[m+88>>2]=a;bf(m,m+40|0,a,m+88|0);d=F[m>>2];X:{if(h&1){a=-1;if((t|0)==-1){break X}a=t+1|0;a=(a>>>0)%3|0?a:t-2|0;break X}a=-1;if((t|0)==-1){break X}a=t-1|0;if((t>>>0)%3|0){break X}a=t+2|0}F[d+12>>2]=a;d=F[g+40>>2];if((d|0)!=F[g+36>>2]){continue}break}break u}d=-1;if(n&1){break s}break t}Ha();V()}b=-1;r=F[u>>2];F[r+(t<<2)>>2]=-1;d=-1;break v}Ha();V()}r=F[u>>2];b=F[r+(n<<2)>>2]}F[(t<<2)+r>>2]=b;a=q+1|0;a=(a>>>0)%3|0?a:q-2|0;d=-1;if((a|0)==-1){break v}d=F[(a<<2)+r>>2]}F[e+r>>2]=d;Y:{if((s|0)==-1){F[l+r>>2]=-1;n=-1;d=-1;break Y}Z:{_:{$:{if((s>>>0)%3|0){d=s-1|0;break $}d=s+2|0;if((d|0)==-1){break _}}a=F[(d<<2)+r>>2];F[l+r>>2]=a;if((a|0)==-1){break Z}F[F[u+24>>2]+(a<<2)>>2]=h;break Z}F[l+r>>2]=-1}n=-1;a=s+1|0;a=(a>>>0)%3|0?a:s-2|0;d=-1;if((a|0)==-1){break Y}n=F[(a<<2)+r>>2];d=a}a=F[u+24>>2];h=a+(n<<2)|0;if((b|0)!=-1){F[a+(b<<2)>>2]=F[h>>2]}aa:{if((d|0)==-1){break aa}while(1){F[(d<<2)+r>>2]=b;a=d+1|0;a=(a>>>0)%3|0?a:d-2|0;if((a|0)==-1){break aa}e=F[p+(a<<2)>>2];if((e|0)==-1){break aa}a=e+1|0;d=(a>>>0)%3|0?a:e-2|0;if((d|0)!=-1){continue}break}}F[h>>2]=-1;ba:{if(z){break ba}if((A|0)!=(B|0)){F[B>>2]=n;B=B+4|0;F[m+28>>2]=B;break ba}ca:{d=A-j|0;b=d>>2;e=b+1|0;if(e>>>0<1073741824){a=d>>1;e=d>>>0<2147483644?a>>>0>>0?e:a:1073741823;if(e){if(e>>>0>=1073741824){break ca}a=oj(e<<2)}else{a=0}b=a+(b<<2)|0;F[b>>2]=n;A=a+(e<<2)|0;B=b+4|0;if((d|0)>0){Oi(a,j,d)}F[m+32>>2]=A;F[m+28>>2]=B;F[m+24>>2]=a;if(j){mj(j)}j=a;break ba}Ha();V()}break n}F[f>>2]=t;e=w;b=e}n=(k|0)>(v|0);if((k|0)!=(v|0)){continue}break}v=k}d=-1;n=F[g+8>>2];if((K|0)>2]-F[n+24>>2]>>2){break s}if((c|0)!=(w|0)){e=g+60|0;t=g+312|0;while(1){c=c-4|0;p=F[c>>2];F[m+68>>2]=c;da:{ea:{fa:{ga:{if(H[g+270>>1]<=513){if(!G[g+364|0]){break fa}b=F[g+360>>2];a=F[g+352>>2]+(b>>>3|0)|0;if(a>>>0>=I[g+356>>2]){break ea}a=G[a|0];F[g+360>>2]=b+1;a=a>>>(b&7)&1;break ga}a=fe(t)}if(!a){break ea}}z=F[g+8>>2];q=F[z>>2];if(((F[z+4>>2]-q>>2>>>0)/3|0)<=(v|0)){break s}a=-1;b=-1;l=F[z+24>>2];h=-1;ha:{if((p|0)==-1){break ha}f=p+1|0;f=(f>>>0)%3|0?f:p-2|0;h=-1;if((f|0)==-1){break ha}h=F[q+(f<<2)>>2]}k=F[l+(h<<2)>>2];ia:{if((k|0)==-1){break ia}f=k+1|0;f=(f>>>0)%3|0?f:k-2|0;if((f|0)==-1){break ia}a=f+1|0;a=(a>>>0)%3|0?a:f-2|0;if((a|0)!=-1){b=F[q+(a<<2)>>2]}a=f}n=-1;r=-1;l=F[l+(b<<2)>>2];k=-1;ja:{if((l|0)==-1){break ja}f=l+1|0;f=(f>>>0)%3|0?f:l-2|0;k=-1;if((f|0)==-1){break ja}k=f+1|0;k=(k>>>0)%3|0?k:f-2|0;if((k|0)!=-1){r=F[q+(k<<2)>>2]}k=f}A=F[z+12>>2];u=L(v,3);l=u<<2;F[A+l>>2]=p;F[A+(p<<2)>>2]=u;p=u+1|0;f=p<<2;F[f+A>>2]=a;F[A+(a<<2)>>2]=p;z=u+2|0;a=z<<2;F[a+A>>2]=k;F[A+(k<<2)>>2]=z;F[l+q>>2]=b;k=f+q|0;F[k>>2]=r;f=a+q|0;F[f>>2]=h;l=F[g+120>>2];h=p>>>0>>0?-1:b;b=l+(h>>>3&536870908)|0;a=F[b>>2];O=b,P=Vj(h)&a,F[O>>2]=P;n=(p|0)!=-1?F[k>>2]:n;b=l+(n>>>3&536870908)|0;a=F[b>>2];O=b,P=Vj(n)&a,F[O>>2]=P;n=-1;n=(z|0)!=-1?F[f>>2]:n;b=l+(n>>>3&536870908)|0;a=F[b>>2];O=b,P=Vj(n)&a,F[O>>2]=P;n=F[g+64>>2];a=F[g+68>>2];if((n|0)==a<<5){if((n+1|0)<0){break r}if(n>>>0<=1073741822){b=n+32&-32;a=a<<6;a=a>>>0>>0?b:a}else{a=2147483647}Hc(e,a);n=F[g+64>>2]}v=v+1|0;F[g+64>>2]=n+1;a=F[g+60>>2]+(n>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>2];if((a|0)!=F[g+80>>2]){F[a>>2]=u;F[g+76>>2]=a+4;break da}f=F[g+72>>2];k=a-f|0;b=k>>2;h=b+1|0;if(h>>>0>=1073741824){break q}a=k>>1;h=k>>>0<2147483644?a>>>0>>0?h:a:1073741823;if(h){if(h>>>0>=1073741824){break n}a=oj(h<<2)}else{a=0}b=a+(b<<2)|0;F[b>>2]=u;if((k|0)>0){Oi(a,f,k)}F[g+80>>2]=a+(h<<2);F[g+76>>2]=b+4;F[g+72>>2]=a;if(!f){break da}mj(f);break da}a=F[g+64>>2];h=F[g+68>>2];if((a|0)==h<<5){if((a+1|0)<0){break r}if(a>>>0<=1073741822){b=a+32&-32;a=h<<6;a=a>>>0>>0?b:a}else{a=2147483647}Hc(e,a);a=F[g+64>>2]}F[g+64>>2]=a+1;h=F[g+60>>2]+(a>>>3&536870908)|0;b=F[h>>2];O=h,P=Vj(a)&b,F[O>>2]=P;a=F[g+76>>2];if((a|0)!=F[g+80>>2]){F[a>>2]=p;F[g+76>>2]=a+4;break da}f=F[g+72>>2];k=a-f|0;b=k>>2;h=b+1|0;if(h>>>0>=1073741824){break q}a=k>>1;h=k>>>0<2147483644?a>>>0>>0?h:a:1073741823;if(h){if(h>>>0>=1073741824){break p}a=oj(h<<2)}else{a=0}b=a+(b<<2)|0;F[b>>2]=p;if((k|0)>0){Oi(a,f,k)}F[g+80>>2]=a+(h<<2);F[g+76>>2]=b+4;F[g+72>>2]=a;if(!f){break da}mj(f)}if((c|0)!=(w|0)){continue}break}n=F[g+8>>2]}if(((F[n+4>>2]-F[n>>2]>>2>>>0)/3|0)!=(v|0)){break s}v=F[n+24>>2];d=F[n+28>>2]-v>>2;if((j|0)==(B|0)){j=B;break s}b=j;while(1){e=F[b>>2];c=d-1|0;r=(c<<2)+v|0;if(F[r>>2]==-1){while(1){c=d-2|0;d=d-1|0;r=(c<<2)+v|0;if(F[r>>2]==-1){continue}break}}if(c>>>0>=e>>>0){F[m>>2]=n;v=F[r>>2];D[m+12|0]=1;F[m+8>>2]=v;F[m+4>>2]=v;if((v|0)!=-1){while(1){F[F[n>>2]+(v<<2)>>2]=e;sd(m);n=F[g+8>>2];v=F[m+8>>2];if((v|0)!=-1){continue}break}}v=F[n+24>>2];a=v+(c<<2)|0;if((e|0)!=-1){F[(e<<2)+v>>2]=F[a>>2]}F[a>>2]=-1;f=1<>2];e=a+(e>>>3&536870908)|0;h=a+(c>>>3&536870908)|0;a=1<>2]&a){c=f|F[e>>2]}else{c=F[e>>2]&(f^-1)}F[e>>2]=c;F[h>>2]=F[h>>2]&(a^-1);d=d-1|0}b=b+4|0;if((B|0)!=(b|0)){continue}break}}if(j){mj(j)}a=F[m+48>>2];if(a){while(1){c=F[a>>2];mj(a);a=c;if(a){continue}break}}a=F[m+40>>2];F[m+40>>2]=0;if(a){mj(a)}if(w){F[m+68>>2]=w;mj(w)}fa=m+96|0;break m}vj();V()}Ha();V()}Ua(1336)}V()}Ua(1336);V()}if((d|0)==-1){break l}a=F[i+16>>2];b=a+F[i>>2]|0;c=F[i+8>>2];a=c-a|0;c=F[F[g+4>>2]+32>>2];E[c+38>>1]=H[c+38>>1];F[c>>2]=b;F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=a;F[c+12>>2]=0;b=F[g+4>>2];a=H[b+36>>1];c=a<<8|a>>>8;if((c&65535)>>>0<=513){a=F[b+32>>2];b=M+F[a+20>>2]|0;w=o+F[a+16>>2]|0;b=w>>>0>>0?b+1|0:b;F[a+16>>2]=w;F[a+20>>2]=b}ka:{if(F[g+216>>2]==F[g+220>>2]){break ka}a=F[g+8>>2];b=F[a>>2];a=F[a+4>>2];la:{if((c&65535)>>>0>=513){if((a|0)==(b|0)){break ka}c=0;break la}if((a|0)==(b|0)){break ka}c=0;while(1){if(Ve(g,c)){c=c+3|0;a=F[g+8>>2];if(c>>>0>2]-F[a>>2]>>2>>>0){continue}break ka}break}break l}while(1){if(We(g,c)){c=c+3|0;a=F[g+8>>2];if(c>>>0>2]-F[a>>2]>>2>>>0){continue}break ka}break}break l}Xe(N);c=F[g+216>>2];if((c|0)!=F[g+220>>2]){e=0;while(1){b=L(e,144);wi((b+c|0)+4|0,F[g+8>>2]);x=F[J>>2];a=b+x|0;c=F[a+132>>2];a=F[a+136>>2];if((c|0)!=(a|0)){while(1){yi((b+x|0)+4|0,F[c>>2]);x=F[J>>2];c=c+4|0;if((a|0)!=(c|0)){continue}break}}xi((b+x|0)+4|0);e=e+1|0;c=F[g+216>>2];if(e>>>0<(F[g+220>>2]-c|0)/144>>>0){continue}break}}a=F[g+8>>2];Ye(g+184|0,F[a+28>>2]-F[a+24>>2]>>2);x=F[g+216>>2];if((x|0)!=F[g+220>>2]){c=0;while(1){a=L(c,144)+x|0;b=F[a+60>>2]-F[a+56>>2]>>2;e=a+104|0;a=F[g+8>>2];a=F[a+28>>2]-F[a+24>>2]>>2;Ye(e,(a|0)>(b|0)?a:b);c=c+1|0;x=F[g+216>>2];if(c>>>0<(F[g+220>>2]-x|0)/144>>>0){continue}break}}x=Ze(g,d)}break b}x=0}fa=i- -64|0;return x|0}function Qh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;a:{b:{c:{d:{e:{switch(d-1|0){case 0:a=0;m=fa-16|0;fa=m;j=F[b+80>>2];g=D[c+24|0];f:{if((L(j,g)|0)!=(e|0)){break f}b=F[c+28>>2]!=1;a=G[c+84|0];if(!(b|!a)){Oi(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break f}d=0;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(g){if((g|0)<0){break d}h=oj(g);F[m>>2]=h;Qi(h,0,g)}g:{h:{if(!j){break h}if(!b){if(g){n=g&-4;l=g&3;b=0;o=g-1>>>0<3;while(1){e=F[F[c>>2]>>2];p=F[c+40>>2];a=F[c+48>>2]+Rj(p,F[c+44>>2],a&255?d:F[F[c+68>>2]+(d<<2)>>2],0)|0;g=Oi(h,e+a|0,p);e=0;a=0;i=0;if(!o){while(1){k=b+f|0;D[k|0]=G[a+g|0];D[k+1|0]=G[g+(a|1)|0];D[k+2|0]=G[g+(a|2)|0];D[k+3|0]=G[g+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){D[b+f|0]=G[a+g|0];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break g}a=G[c+84|0];continue}}l=F[c>>2];e=F[c+48>>2];o=F[c+68>>2];f=F[c+44>>2];c=F[c+40>>2];p=c;b=0;if((j|0)!=1){q=j&-2;s=a&255;while(1){g=b|1;n=F[l>>2];k=Rj(c,f,s?b:F[o+(b<<2)>>2],0)+e|0;k=Oi(h,n+k|0,p);r=F[l>>2];if(!s){g=F[o+(g<<2)>>2]}g=Rj(c,f,g,0)+e|0;Oi(k,g+r|0,p);b=b+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!(j&1)){break h}i=F[l>>2];if(!(a&255)){b=F[o+(b<<2)>>2]}a=Rj(c,f,b,0)+e|0;Oi(h,a+i|0,p);break h}if(!g){b=0;d=1;while(1){if(!qg(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break h}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break h}a=G[c+84|0];continue}}l=g&-4;k=g&3;b=0;n=g-1>>>0<3;d=1;while(1){if(!qg(c,a&255?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],h)){break h}d=0;a=0;e=0;if(!n){while(1){g=b+f|0;D[g|0]=G[a+h|0];D[g+1|0]=G[(a|1)+h|0];D[g+2|0]=G[(a|2)+h|0];D[g+3|0]=G[(a|3)+h|0];a=a+4|0;b=b+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}if(k){while(1){D[b+f|0]=G[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){d=i>>>0>>0;a=G[c+84|0];continue}break}a=i>>>0>=j>>>0;break g}a=d^1;if(!h){break f}}mj(h)}break c;case 2:a=0;m=fa-16|0;fa=m;d=D[c+24|0];g=d<<1;j=F[b+80>>2];i:{if((L(g,j)|0)!=(e|0)){break i}b=F[c+28>>2]!=3;a=G[c+84|0];if(!(b|!a)){Oi(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break i}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=oj(g);F[m>>2]=h;Qi(h,0,d<<1)}j:{k:{if(!j){break k}if(!b){n=F[c>>2];e=F[c+48>>2];p=F[c+68>>2];g=F[c+44>>2];k=F[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=F[n>>2];a=Rj(k,g,u?d:F[p+(d<<2)>>2],0)+e|0;l=Oi(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<1)+f|0;r=a<<1;E[q>>1]=H[r+l>>1];E[q+2>>1]=H[l+(r|2)>>1];E[q+4>>1]=H[l+(r|4)>>1];E[q+6>>1]=H[l+(r|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){E[(b<<1)+f>>1]=H[l+(a<<1)>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break j}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=F[n>>2];f=Rj(k,g,l?b:F[p+(b<<2)>>2],0)+e|0;f=Oi(h,o+f|0,s);r=F[n>>2];if(!l){c=F[p+(c<<2)>>2]}c=Rj(k,g,c,0)+e|0;Oi(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break k}c=F[n>>2];if(!(a&255)){b=F[p+(b<<2)>>2]}a=Rj(k,g,b,0)+e|0;Oi(h,a+c|0,s);break k}if(!d){b=0;i=1;while(1){if(!tg(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break k}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break k}a=G[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!tg(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break k}e=0;a=0;i=0;if(!o){while(1){g=(b<<1)+f|0;k=a<<1;E[g>>1]=H[k+h>>1];E[g+2>>1]=H[(k|2)+h>>1];E[g+4>>1]=H[(k|4)+h>>1];E[g+6>>1]=H[(k|6)+h>>1];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){E[(b<<1)+f>>1]=H[(a<<1)+h>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break j}a=!i;if(!h){break i}}mj(h)}break b;case 4:a=0;m=fa-16|0;fa=m;d=D[c+24|0];g=d<<2;j=F[b+80>>2];l:{if((L(g,j)|0)!=(e|0)){break l}b=F[c+28>>2]!=5;a=G[c+84|0];if(!(b|!a)){Oi(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break l}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=oj(g);F[m>>2]=h;Qi(h,0,d<<2)}m:{n:{if(!j){break n}if(!b){n=F[c>>2];e=F[c+48>>2];p=F[c+68>>2];g=F[c+44>>2];k=F[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=F[n>>2];a=Rj(k,g,u?d:F[p+(d<<2)>>2],0)+e|0;l=Oi(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<2)+f|0;r=a<<2;F[q>>2]=F[r+l>>2];F[q+4>>2]=F[l+(r|4)>>2];F[q+8>>2]=F[l+(r|8)>>2];F[q+12>>2]=F[l+(r|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){F[(b<<2)+f>>2]=F[l+(a<<2)>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break m}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=F[n>>2];f=Rj(k,g,l?b:F[p+(b<<2)>>2],0)+e|0;f=Oi(h,o+f|0,s);r=F[n>>2];if(!l){c=F[p+(c<<2)>>2]}c=Rj(k,g,c,0)+e|0;Oi(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break n}c=F[n>>2];if(!(a&255)){b=F[p+(b<<2)>>2]}a=Rj(k,g,b,0)+e|0;Oi(h,a+c|0,s);break n}if(!d){b=0;i=1;while(1){if(!vg(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break n}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break n}a=G[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!vg(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break n}e=0;a=0;i=0;if(!o){while(1){g=(b<<2)+f|0;k=a<<2;F[g>>2]=F[k+h>>2];F[g+4>>2]=F[(k|4)+h>>2];F[g+8>>2]=F[(k|8)+h>>2];F[g+12>>2]=F[(k|12)+h>>2];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){F[(b<<2)+f>>2]=F[(a<<2)+h>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break m}a=!i;if(!h){break l}}mj(h)}break b;case 1:a=0;m=fa-16|0;fa=m;j=F[b+80>>2];g=D[c+24|0];o:{if((L(j,g)|0)!=(e|0)){break o}b=F[c+28>>2]!=2;a=G[c+84|0];if(!(b|!a)){Oi(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break o}d=0;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(g){if((g|0)<0){break d}h=oj(g);F[m>>2]=h;Qi(h,0,g)}p:{q:{if(!j){break q}if(!b){if(g){n=g&-4;l=g&3;b=0;o=g-1>>>0<3;while(1){e=F[F[c>>2]>>2];p=F[c+40>>2];a=F[c+48>>2]+Rj(p,F[c+44>>2],a&255?d:F[F[c+68>>2]+(d<<2)>>2],0)|0;g=Oi(h,e+a|0,p);e=0;a=0;i=0;if(!o){while(1){k=b+f|0;D[k|0]=G[a+g|0];D[k+1|0]=G[g+(a|1)|0];D[k+2|0]=G[g+(a|2)|0];D[k+3|0]=G[g+(a|3)|0];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){D[b+f|0]=G[a+g|0];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}a=1;d=d+1|0;if((j|0)==(d|0)){break p}a=G[c+84|0];continue}}l=F[c>>2];e=F[c+48>>2];o=F[c+68>>2];f=F[c+44>>2];c=F[c+40>>2];p=c;b=0;if((j|0)!=1){q=j&-2;s=a&255;while(1){g=b|1;n=F[l>>2];k=Rj(c,f,s?b:F[o+(b<<2)>>2],0)+e|0;k=Oi(h,n+k|0,p);r=F[l>>2];if(!s){g=F[o+(g<<2)>>2]}g=Rj(c,f,g,0)+e|0;Oi(k,g+r|0,p);b=b+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!(j&1)){break q}i=F[l>>2];if(!(a&255)){b=F[o+(b<<2)>>2]}a=Rj(c,f,b,0)+e|0;Oi(h,a+i|0,p);break q}if(!g){b=0;d=1;while(1){if(!rg(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break q}b=b+1|0;d=j>>>0>b>>>0;if((b|0)==(j|0)){break q}a=G[c+84|0];continue}}l=g&-4;k=g&3;b=0;n=g-1>>>0<3;d=1;while(1){if(!rg(c,a&255?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],h)){break q}d=0;a=0;e=0;if(!n){while(1){g=b+f|0;D[g|0]=G[a+h|0];D[g+1|0]=G[(a|1)+h|0];D[g+2|0]=G[(a|2)+h|0];D[g+3|0]=G[(a|3)+h|0];a=a+4|0;b=b+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}if(k){while(1){D[b+f|0]=G[a+h|0];a=a+1|0;b=b+1|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}i=i+1|0;if((j|0)!=(i|0)){d=i>>>0>>0;a=G[c+84|0];continue}break}a=i>>>0>=j>>>0;break p}a=d^1;if(!h){break o}}mj(h)}break c;case 3:a=0;m=fa-16|0;fa=m;d=D[c+24|0];g=d<<1;j=F[b+80>>2];r:{if((L(g,j)|0)!=(e|0)){break r}b=F[c+28>>2]!=4;a=G[c+84|0];if(!(b|!a)){Oi(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break r}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=oj(g);F[m>>2]=h;Qi(h,0,d<<1)}s:{t:{if(!j){break t}if(!b){n=F[c>>2];e=F[c+48>>2];p=F[c+68>>2];g=F[c+44>>2];k=F[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=F[n>>2];a=Rj(k,g,u?d:F[p+(d<<2)>>2],0)+e|0;l=Oi(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<1)+f|0;r=a<<1;E[q>>1]=H[r+l>>1];E[q+2>>1]=H[l+(r|2)>>1];E[q+4>>1]=H[l+(r|4)>>1];E[q+6>>1]=H[l+(r|6)>>1];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){E[(b<<1)+f>>1]=H[l+(a<<1)>>1];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break s}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=F[n>>2];f=Rj(k,g,l?b:F[p+(b<<2)>>2],0)+e|0;f=Oi(h,o+f|0,s);r=F[n>>2];if(!l){c=F[p+(c<<2)>>2]}c=Rj(k,g,c,0)+e|0;Oi(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break t}c=F[n>>2];if(!(a&255)){b=F[p+(b<<2)>>2]}a=Rj(k,g,b,0)+e|0;Oi(h,a+c|0,s);break t}if(!d){b=0;i=1;while(1){if(!ug(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break t}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break t}a=G[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!ug(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break t}e=0;a=0;i=0;if(!o){while(1){g=(b<<1)+f|0;k=a<<1;E[g>>1]=H[k+h>>1];E[g+2>>1]=H[(k|2)+h>>1];E[g+4>>1]=H[(k|4)+h>>1];E[g+6>>1]=H[(k|6)+h>>1];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){E[(b<<1)+f>>1]=H[(a<<1)+h>>1];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break s}a=!i;if(!h){break r}}mj(h)}break b;case 5:a=0;m=fa-16|0;fa=m;d=D[c+24|0];g=d<<2;j=F[b+80>>2];u:{if((L(g,j)|0)!=(e|0)){break u}b=F[c+28>>2]!=6;a=G[c+84|0];if(!(b|!a)){Oi(f,F[F[c>>2]>>2]+F[c+48>>2]|0,e);a=1;break u}F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;if(d){if((d|0)<0){break d}h=oj(g);F[m>>2]=h;Qi(h,0,d<<2)}v:{w:{if(!j){break w}if(!b){n=F[c>>2];e=F[c+48>>2];p=F[c+68>>2];g=F[c+44>>2];k=F[c+40>>2];s=k;if(d){t=d&-4;o=d&3;b=0;u=a&255;v=d-1>>>0<3;d=0;while(1){c=F[n>>2];a=Rj(k,g,u?d:F[p+(d<<2)>>2],0)+e|0;l=Oi(h,c+a|0,s);i=0;a=0;c=0;if(!v){while(1){q=(b<<2)+f|0;r=a<<2;F[q>>2]=F[r+l>>2];F[q+4>>2]=F[l+(r|4)>>2];F[q+8>>2]=F[l+(r|8)>>2];F[q+12>>2]=F[l+(r|12)>>2];a=a+4|0;b=b+4|0;c=c+4|0;if((t|0)!=(c|0)){continue}break}}if(o){while(1){F[(b<<2)+f>>2]=F[l+(a<<2)>>2];a=a+1|0;b=b+1|0;i=i+1|0;if((o|0)!=(i|0)){continue}break}}a=1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break v}b=0;if((j|0)!=1){q=j&-2;l=a&255;d=0;while(1){c=b|1;o=F[n>>2];f=Rj(k,g,l?b:F[p+(b<<2)>>2],0)+e|0;f=Oi(h,o+f|0,s);r=F[n>>2];if(!l){c=F[p+(c<<2)>>2]}c=Rj(k,g,c,0)+e|0;Oi(f,c+r|0,s);b=b+2|0;d=d+2|0;if((q|0)!=(d|0)){continue}break}}if(!(j&1)){break w}c=F[n>>2];if(!(a&255)){b=F[p+(b<<2)>>2]}a=Rj(k,g,b,0)+e|0;Oi(h,a+c|0,s);break w}if(!d){b=0;i=1;while(1){if(!wg(c,a&255?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],h)){break w}b=b+1|0;i=j>>>0>b>>>0;if((b|0)==(j|0)){break w}a=G[c+84|0];continue}}n=d&-4;l=d&3;b=0;o=d-1>>>0<3;i=1;d=0;while(1){if(!wg(c,a&255?d:F[F[c+68>>2]+(d<<2)>>2],D[c+24|0],h)){break w}e=0;a=0;i=0;if(!o){while(1){g=(b<<2)+f|0;k=a<<2;F[g>>2]=F[k+h>>2];F[g+4>>2]=F[(k|4)+h>>2];F[g+8>>2]=F[(k|8)+h>>2];F[g+12>>2]=F[(k|12)+h>>2];a=a+4|0;b=b+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}if(l){while(1){F[(b<<2)+f>>2]=F[(a<<2)+h>>2];a=a+1|0;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}d=d+1|0;if((j|0)!=(d|0)){i=d>>>0>>0;a=G[c+84|0];continue}break}a=d>>>0>=j>>>0;break v}a=!i;if(!h){break u}}mj(h)}break b;case 8:break e;default:break a}}a=0;j=fa-16|0;fa=j;i=D[c+24|0];d=i<<2;k=F[b+80>>2];x:{if((L(d,k)|0)!=(e|0)){break x}e=F[c+28>>2];F[j+8>>2]=0;F[j>>2]=0;F[j+4>>2]=0;b=0;y:{z:{A:{B:{if(!i){break B}if((i|0)<0){break A}b=oj(d);F[j>>2]=b;g=(i<<2)+b|0;F[j+8>>2]=g;d=d-4|0;m=(d>>>2|0)+1&7;C:{if(!m){a=b;break C}a=b;while(1){F[a>>2]=-1073741824;a=a+4|0;h=h+1|0;if((m|0)!=(h|0)){continue}break}}if(d>>>0<28){break B}while(1){F[a+24>>2]=-1073741824;F[a+28>>2]=-1073741824;F[a+16>>2]=-1073741824;F[a+20>>2]=-1073741824;F[a+8>>2]=-1073741824;F[a+12>>2]=-1073741824;F[a>>2]=-1073741824;F[a+4>>2]=-1073741824;a=a+32|0;if((g|0)!=(a|0)){continue}break}}if(!k){break z}if((e|0)==9){a=0;n=F[c>>2];d=F[c+48>>2];p=F[c+68>>2];s=G[c+84|0];e=F[c+44>>2];g=F[c+40>>2];q=g;if((i|0)<=0){if((k|0)!=1){i=k&-2;c=0;while(1){f=a|1;m=F[n>>2];h=Rj(g,e,s?a:F[p+(a<<2)>>2],0)+d|0;h=Oi(b,m+h|0,q);m=F[n>>2];if(!s){f=F[p+(f<<2)>>2]}f=Rj(g,e,f,0)+d|0;Oi(h,f+m|0,q);a=a+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(!(k&1)){break z}c=F[n>>2];if(!s){a=F[p+(a<<2)>>2]}a=Rj(g,e,a,0)+d|0;Oi(b,a+c|0,q);break z}u=i&-4;o=i&3;h=0;v=i-1>>>0<3;i=0;while(1){c=F[n>>2];a=Rj(g,e,s?i:F[p+(i<<2)>>2],0)+d|0;c=Oi(b,c+a|0,q);m=0;a=0;t=0;if(!v){while(1){l=(h<<2)+f|0;r=a<<2;J[l>>2]=J[r+c>>2];J[l+4>>2]=J[c+(r|4)>>2];J[l+8>>2]=J[c+(r|8)>>2];J[l+12>>2]=J[c+(r|12)>>2];a=a+4|0;h=h+4|0;t=t+4|0;if((u|0)!=(t|0)){continue}break}}if(o){while(1){J[(h<<2)+f>>2]=J[c+(a<<2)>>2];a=a+1|0;h=h+1|0;m=m+1|0;if((o|0)!=(m|0)){continue}break}}a=1;i=i+1|0;if((k|0)!=(i|0)){continue}break}break y}l=1;if((i|0)<=0){a=0;while(1){if(!Pc(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],b)){break z}a=a+1|0;l=k>>>0>a>>>0;if((a|0)!=(k|0)){continue}break}break z}n=i&-4;g=i&3;h=0;o=i-1>>>0<3;i=0;while(1){if(!Pc(c,G[c+84|0]?i:F[F[c+68>>2]+(i<<2)>>2],D[c+24|0],b)){break z}l=0;a=0;m=0;if(!o){while(1){d=(h<<2)+f|0;e=a<<2;J[d>>2]=J[e+b>>2];J[d+4>>2]=J[(e|4)+b>>2];J[d+8>>2]=J[(e|8)+b>>2];J[d+12>>2]=J[(e|12)+b>>2];a=a+4|0;h=h+4|0;m=m+4|0;if((n|0)!=(m|0)){continue}break}}if(g){while(1){J[(h<<2)+f>>2]=J[(a<<2)+b>>2];a=a+1|0;h=h+1|0;l=l+1|0;if((g|0)!=(l|0)){continue}break}}i=i+1|0;l=k>>>0>i>>>0;if((i|0)!=(k|0)){continue}break}a=i>>>0>=k>>>0;break y}Ha();V()}a=l^1;if(!b){break x}}mj(b)}fa=j+16|0;h=a&1;break a}Ha();V()}fa=m+16|0;h=a&1;break a}fa=m+16|0;h=a&1}return h|0}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,M=0,N=0;z=c;c=0;m=fa-96|0;fa=m;k=m+16|0;Qi(k,0,76);F[m+92>>2]=-1;F[m+8>>2]=0;F[m>>2]=0;F[m+4>>2]=0;s=fa-16|0;fa=s;F[k+68>>2]=0;F[k+72>>2]=0;F[k>>2]=b;t=fa-16|0;fa=t;x=b;a=F[b+20>>2];a:{if((F[b+24>>2]-a|0)<=0){break a}a=F[a>>2];if((a|0)==-1){break a}c=F[F[x+8>>2]+(a<<2)>>2]}b:{c:{d:{e:{if(!c){a=0;break e}a=F[x+100>>2];e=F[x+96>>2];F[t+8>>2]=0;F[t>>2]=0;F[t+4>>2]=0;d=a-e|0;b=(d|0)/12|0;f:{if(!d){break f}if(b>>>0>=357913942){break c}f=oj(d);F[t>>2]=f;F[t+8>>2]=f+L(b,12);a=0;g=f;f=L((d-12>>>0)/12|0,12)+12|0;d=Qi(g,0,f);F[t+4>>2]=d+f;if(G[c+84|0]){c=b>>>0>1?b:1;g=c&1;if(b>>>0>=2){j=c&-2;c=0;while(1){f=L(a,12);b=f+e|0;n=F[b+4>>2];o=F[b>>2];f=d+f|0;F[f+8>>2]=F[b+8>>2];F[f>>2]=o;F[f+4>>2]=n;f=L(a|1,12);b=f+e|0;n=F[b+8>>2];o=F[b+4>>2];f=d+f|0;F[f>>2]=F[b>>2];F[f+4>>2]=o;F[f+8>>2]=n;a=a+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!g){break f}b=L(a,12);a=b+e|0;c=F[a+4>>2];e=F[a>>2];b=b+d|0;F[b+8>>2]=F[a+8>>2];F[b>>2]=e;F[b+4>>2]=c;break f}g=b>>>0>1?b:1;a=F[c+68>>2];c=0;while(1){f=L(c,12);b=f+e|0;j=F[a+(F[b>>2]<<2)>>2];n=F[a+(F[b+4>>2]<<2)>>2];f=d+f|0;F[f+8>>2]=F[a+(F[b+8>>2]<<2)>>2];F[f+4>>2]=n;F[f>>2]=j;c=c+1|0;if((g|0)!=(c|0)){continue}break}}C=fa-16|0;fa=C;g=oj(88);F[g>>2]=0;F[g+4>>2]=0;F[g+56>>2]=0;F[g+48>>2]=0;F[g+52>>2]=0;F[g+40>>2]=0;F[g+44>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;F[g+24>>2]=0;F[g+28>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a=g- -64|0;F[a>>2]=0;F[a+4>>2]=0;F[g+72>>2]=0;F[g+76>>2]=0;F[g+80>>2]=0;F[g+84>>2]=0;F[g+60>>2]=g;A=fa-16|0;fa=A;F[g+80>>2]=0;F[g+84>>2]=0;a=F[g+76>>2];F[g+76>>2]=0;if(a){mj(a)}F[g+68>>2]=0;F[g+72>>2]=0;b=g- -64|0;a=F[b>>2];F[b>>2]=0;if(a){mj(a)}b=F[t>>2];c=F[t+4>>2]-b|0;j=(c|0)/12|0;a=L(j,3);d=F[g>>2];e=F[g+4>>2]-d>>2;g:{if(a>>>0>e>>>0){Ja(g,a-e|0);b=F[t>>2];c=F[t+4>>2]-b|0;j=(c|0)/12|0;d=F[g>>2];break g}if(a>>>0>=e>>>0){break g}F[g+4>>2]=(a<<2)+d}if(c){f=j>>>0>1?j:1;a=0;while(1){e=L(a,12);c=e+d|0;e=b+e|0;F[c>>2]=F[e>>2];F[c+4>>2]=F[e+4>>2];F[c+8>>2]=F[e+8>>2];a=a+1|0;if((f|0)!=(a|0)){continue}break}}F[A+12>>2]=-1;f=fa-48|0;fa=f;h:{i:{w=A+12|0;j:{if(!w){break j}d=F[g+4>>2];n=F[g>>2];c=d-n|0;o=c>>2;b=F[g+12>>2];a=F[g+16>>2]-b>>2;k:{if(o>>>0>a>>>0){eb(g+12|0,o-a|0,13684);d=F[g+4>>2];n=F[g>>2];c=d-n|0;o=c>>2;break k}if(a>>>0<=o>>>0){break k}F[g+16>>2]=b+(o<<2)}b=0;F[f+40>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;l:{if(!c){F[f+24>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;break l}m:{if((c|0)>=0){b=oj(c);F[f+36>>2]=b;F[f+32>>2]=b;F[f+40>>2]=(o<<2)+b;a=b;c=0;while(1){j=F[(c<<2)+n>>2];a=a-b>>2;n:{if(j>>>0>>0){break n}F[f+16>>2]=0;e=j+1|0;if(e>>>0>a>>>0){eb(f+32|0,e-a|0,f+16|0);n=F[g>>2];d=F[g+4>>2];b=F[f+32>>2];break n}if(a>>>0<=e>>>0){break n}F[f+36>>2]=(e<<2)+b}a=(j<<2)+b|0;F[a>>2]=F[a>>2]+1;c=c+1|0;a=d-n|0;o=a>>2;if(c>>>0>=o>>>0){break m}a=F[f+36>>2];continue}}break i}F[f+24>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;if(!a){break l}if(a>>>0>=2147483645){break c}c=a<<1;a=oj(c);F[f+16>>2]=a;e=a+(o<<3)|0;F[f+24>>2]=e;Qi(a,255,c);F[f+20>>2]=e}d=0;F[f+8>>2]=0;F[f>>2]=0;F[f+4>>2]=0;a=F[f+36>>2]-b|0;j=a>>2;o:{if(!a){break o}if((a|0)<0){break c}l=oj(a);F[f>>2]=l;a=j<<2;c=a+l|0;F[f+8>>2]=c;a=Qi(l,0,a);F[f+4>>2]=c;e=j>>>0>1?j:1;q=e&3;c=0;if(e-1>>>0>=3){r=e&-4;while(1){e=i<<2;F[e+a>>2]=c;y=e|4;c=F[b+e>>2]+c|0;F[y+a>>2]=c;v=e|8;c=c+F[b+y>>2]|0;F[v+a>>2]=c;e=e|12;c=c+F[b+v>>2]|0;F[e+a>>2]=c;c=c+F[b+e>>2]|0;i=i+4|0;h=h+4|0;if((r|0)!=(h|0)){continue}break}}if(!q){break o}while(1){e=i<<2;F[e+a>>2]=c;i=i+1|0;c=F[b+e>>2]+c|0;p=p+1|0;if((q|0)!=(p|0)){continue}break}}if(o){y=F[g+12>>2];while(1){E=d<<2;c=E+n|0;h=-1;e=d+1|0;a=(e>>>0)%3|0?e:d-2|0;if((a|0)!=-1){h=F[(a<<2)+n>>2]}a=F[c>>2];p:{q:{if(!((d>>>0)%3|0)){p=-1;c=d+2|0;if((c|0)!=-1){p=F[(c<<2)+n>>2]}if(!((a|0)==(h|0)|(a|0)==(p|0))&(h|0)!=(p|0)){break q}F[g+40>>2]=F[g+40>>2]+1;e=d+3|0;break p}p=F[c-4>>2]}c=p<<2;v=F[c+b>>2];r:{s:{if((v|0)<=0){break s}q=F[f+16>>2];c=F[c+l>>2];i=0;while(1){r=q+(c<<3)|0;u=F[r>>2];if((u|0)==-1){break s}t:{if((h|0)!=(u|0)){break t}r=F[r+4>>2];if((r|0)!=-1){u=F[(r<<2)+n>>2]}else{u=-1}if((u|0)==(a|0)){break t}while(1){u:{a=c;i=i+1|0;if((v|0)<=(i|0)){break u}u=q+(a<<3)|0;c=a+1|0;H=q+(c<<3)|0;I=F[H>>2];F[u>>2]=I;F[u+4>>2]=F[H+4>>2];if((I|0)!=-1){continue}}break}F[q+(a<<3)>>2]=-1;if((r|0)==-1){break s}F[y+E>>2]=r;F[y+(r<<2)>>2]=d;break r}c=c+1|0;i=i+1|0;if((v|0)!=(i|0)){continue}break}}a=h<<2;h=F[a+b>>2];if((h|0)<=0){break r}q=F[f+16>>2];c=F[a+l>>2];i=0;while(1){a=q+(c<<3)|0;if(F[a>>2]==-1){F[a>>2]=p;F[a+4>>2]=d;break r}c=c+1|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}}d=e;if(o>>>0>d>>>0){continue}break}}F[w>>2]=j;if(l){mj(l)}a=F[f+16>>2];if(a){F[f+20>>2]=a;mj(a)}a=F[f+32>>2];if(!a){break j}F[f+36>>2]=a;mj(a)}fa=f+48|0;y=(w|0)!=0;if(y){h=fa-32|0;fa=h;o=F[g>>2];a=F[g+4>>2];F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;v:{w:{b=a-o|0;x:{if(!b){break x}if((b|0)<0){break w}c=b>>2;d=c-1>>>5|0;f=d+1|0;e=oj(f<<2);F[h+24>>2]=f;F[h+16>>2]=e;F[h+20>>2]=c;F[e+((b>>>0<132?0:d)<<2)>>2]=0;b=c>>>5<<2;e=Qi(e,0,b);c=c&31;if(!c){break x}b=b+e|0;F[b>>2]=F[b>>2]&(-1>>>32-c^-1)}F[h+8>>2]=0;F[h>>2]=0;while(1){y:{q=0;b=0;if((a|0)==(o|0)){break y}while(1){d=F[h+16>>2];z:{if(F[d+(b>>>3&536870908)>>2]>>>b&1){break z}e=F[h>>2];F[h+4>>2]=e;c=F[g+12>>2];a=b;while(1){A:{f=a+1|0;i=a;a=(f>>>0)%3|0?f:a-2|0;if((a|0)==-1){break A}a=F[c+(a<<2)>>2];if((a|0)==-1){break A}f=a+1|0;a=(f>>>0)%3|0?f:a-2|0;if((b|0)==(a|0)|(a|0)==-1){break A}if(!(F[(a>>>3&536870908)+d>>2]>>>a&1)){continue}}break}c=e;j=i;B:{C:{while(1){a=(j>>>3&536870908)+d|0;F[a>>2]=F[a>>2]|1<>>0)%3|0?a:j-2|0;v=(j>>>0)%3|0;n=(v?-1:2)+j|0;r=n<<2;D:{if((c|0)==(e|0)){break D}w=F[(f<<2)+o>>2];l=F[g+12>>2];a=c;if((n|0)!=-1){u=l+r|0;while(1){E:{if((w|0)!=F[a>>2]){break E}d=F[a+4>>2];p=F[u>>2];if((d|0)==(p|0)){break E}e=-1;a=-1;if((d|0)==-1){break B}break C}a=a+8|0;if((e|0)!=(a|0)){continue}break}break D}while(1){if((w|0)==F[a>>2]){p=-1;n=-1;d=F[a+4>>2];if((d|0)!=-1){break C}}a=a+8|0;if((e|0)!=(a|0)){continue}break}}n=F[o+r>>2];F:{if(F[h+8>>2]!=(e|0)){F[e>>2]=n;F[e+4>>2]=f;e=e+8|0;F[h+4>>2]=e;break F}d=e-c|0;e=d>>3;a=e+1|0;if(a>>>0>=536870912){break c}l=d>>2;l=d>>>0<2147483640?a>>>0>l>>>0?a:l:536870911;if(l){if(l>>>0>=536870912){break i}a=oj(l<<3)}else{a=0}e=a+(e<<3)|0;F[e>>2]=n;F[e+4>>2]=f;e=e+8|0;if((d|0)>0){Oi(a,c,d)}F[h+8>>2]=a+(l<<3);F[h+4>>2]=e;F[h>>2]=a;if(!c){break F}mj(c)}G:{H:{if(v){a=j-1|0;break H}a=j+2|0;if((a|0)==-1){break G}}a=F[F[g+12>>2]+(a<<2)>>2];if((a|0)==-1){break G}j=a+((a>>>0)%3|0?-1:2)|0;if((i|0)==(j|0)|(j|0)==-1){break G}o=F[g>>2];c=F[h>>2];d=F[h+16>>2];continue}break}o=F[g>>2];break z}e=d;a=F[l+(e<<2)>>2]}if((p|0)!=-1){F[l+(p<<2)>>2]=-1}if((a|0)!=-1){F[F[g+12>>2]+(a<<2)>>2]=-1}a=F[g+12>>2];F[a+(n<<2)>>2]=-1;F[a+(e<<2)>>2]=-1;q=1}b=b+1|0;a=F[g+4>>2];if(b>>>0>2>>>0){continue}break}if(q){continue}}break}a=F[h>>2];if(a){mj(a)}a=F[h+16>>2];if(a){mj(a)}fa=h+32|0;break v}vj();V()}n=0;i=fa-32|0;fa=i;a=F[A+12>>2];F[g+36>>2]=a;o=g+24|0;I:{J:{K:{L:{M:{c=F[g+24>>2];b=F[g+28>>2]-c>>2;N:{O:{if(b>>>0>>0){eb(o,a-b|0,13684);F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;break O}if(a>>>0>>0){F[g+28>>2]=c+(a<<2)}b=0;F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;if(!a){break N}}if((a|0)<0){break M}c=a-1>>>5|0;e=c+1|0;b=oj(e<<2);F[i+24>>2]=e;F[i+16>>2]=b;F[i+20>>2]=a;F[((a>>>0<33?0:c)<<2)+b>>2]=0;c=a>>>5<<2;e=Qi(b,0,c);d=a&31;if(!d){break N}c=c+e|0;F[c>>2]=F[c>>2]&(-1>>>32-d^-1)}l=F[g>>2];j=F[g+4>>2];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;c=j-l|0;if(!c){break I}if((c|0)<0){break L}e=c>>2;d=e-1>>>5|0;f=d+1|0;h=oj(f<<2);F[i+8>>2]=f;F[i>>2]=h;F[i+4>>2]=e;p=0;F[((c>>>0<132?0:d)<<2)+h>>2]=0;d=e>>>5<<2;f=Qi(h,0,d);e=e&31;if(e){d=d+f|0;F[d>>2]=F[d>>2]&(-1>>>32-e^-1)}if(c>>>0<12){break I}while(1){r=L(p,3);e=(r<<2)+l|0;c=F[e>>2];d=-1;f=r+1|0;if((f|0)!=-1){d=F[(f<<2)+l>>2]}P:{if((c|0)==(d|0)){break P}f=c;c=F[e+8>>2];if((f|0)==(c|0)){break P}q=0;if((c|0)==(d|0)){break P}while(1){e=q+r|0;if(!(F[(e>>>3&536870908)+h>>2]>>>e&1)){c=F[(e<<2)+l>>2];d=1<>>5|0;w=d&F[(h<<2)+b>>2];if(w){b=F[g+28>>2];Q:{if((b|0)!=F[g+32>>2]){F[b>>2]=-1;F[g+28>>2]=b+4;break Q}f=F[o>>2];d=b-f|0;h=d>>2;b=h+1|0;if(b>>>0>=1073741824){break c}j=d>>1;j=d>>>0<2147483644?b>>>0>j>>>0?b:j:1073741823;if(j){if(j>>>0>=1073741824){break i}b=oj(j<<2)}else{b=0}h=b+(h<<2)|0;F[h>>2]=-1;if((d|0)>0){Oi(b,f,d)}F[g+32>>2]=b+(j<<2);F[g+28>>2]=h+4;F[g+24>>2]=b;if(!f){break Q}mj(f)}b=F[g+52>>2];R:{if((b|0)!=F[g+56>>2]){F[b>>2]=c;F[g+52>>2]=b+4;break R}f=F[g+48>>2];d=b-f|0;h=d>>2;b=h+1|0;if(b>>>0>=1073741824){break c}j=d>>1;j=d>>>0<2147483644?b>>>0>j>>>0?b:j:1073741823;if(j){if(j>>>0>=1073741824){break i}b=oj(j<<2)}else{b=0}h=b+(h<<2)|0;F[h>>2]=c;if((d|0)>0){Oi(b,f,d)}F[g+56>>2]=b+(j<<2);F[g+52>>2]=h+4;F[g+48>>2]=b;if(!f){break R}mj(f)}d=F[i+20>>2];b=F[i+24>>2];if((d|0)==b<<5){if((d+1|0)<0){break K}c=i+16|0;if(d>>>0<=1073741822){d=d+32&-32;b=b<<6;b=b>>>0>>0?d:b}else{b=2147483647}Hc(c,b);d=F[i+20>>2]}F[i+20>>2]=d+1;b=F[i+16>>2]+(d>>>3&536870908)|0;c=F[b>>2];M=b,N=Vj(d)&c,F[M>>2]=N;d=1<>>5|0;c=a;a=a+1|0}f=a;b=F[i+16>>2];a=b+(h<<2)|0;F[a>>2]=F[a>>2]|d;v=F[g+24>>2]+(c<<2)|0;j=F[g+12>>2];l=F[g>>2];h=F[i>>2];a=e;S:{T:{U:{V:{W:{X:{while(1){if((a|0)==-1){break X}d=(a>>>3&536870908)+h|0;F[d>>2]=F[d>>2]|1<>2]=a;if(w){F[(a<<2)+l>>2]=c}u=a+1|0;a=(u>>>0)%3|0?u:a-2|0;d=-1;Y:{if((a|0)==-1){break Y}a=F[j+(a<<2)>>2];d=-1;if((a|0)==-1){break Y}d=a+1|0;d=(d>>>0)%3|0?d:a-2|0}a=d;if((e|0)!=(a|0)){continue}break}if((e|0)!=-1){break S}a=1;break W}if((e>>>0)%3|0){a=e-1|0;break W}a=e+2|0;if((a|0)==-1){break V}}a=F[j+(a<<2)>>2];if((a|0)==-1){break V}if(!((a>>>0)%3|0)){break U}a=a-1|0;l=F[g>>2];h=F[i>>2];break T}l=F[g>>2];h=F[i>>2];break S}l=F[g>>2];h=F[i>>2];a=a+2|0;if((a|0)==-1){break S}}e=F[g+12>>2];while(1){d=(a>>>3&536870908)+h|0;F[d>>2]=F[d>>2]|1<>2]=c}Z:{if((a>>>0)%3|0){a=a-1|0;break Z}a=a+2|0;if((a|0)==-1){break S}}a=F[e+(a<<2)>>2];if((a|0)==-1){break S}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=f}q=q+1|0;if((q|0)!=3){continue}break}l=F[g>>2];j=F[g+4>>2]}p=p+1|0;if(p>>>0<(j-l>>2>>>0)/3>>>0){continue}break}break J}vj();V()}vj();V()}vj();V()}b=F[i+16>>2]}F[g+44>>2]=0;a=F[i+20>>2];if(a){c=a&31;e=(a>>>3&536870908)+b|0;a=b;h=0;while(1){if(!(F[a>>2]>>>n&1)){h=h+1|0;F[g+44>>2]=h}d=(n|0)==31;n=d?0:n+1|0;a=(d<<2)+a|0;if((e|0)!=(a|0)|(c|0)!=(n|0)){continue}break}}a=F[i>>2];if(a){mj(a);b=F[i+16>>2]}if(b){mj(b)}fa=i+32|0}fa=A+16|0;if(!y){F[C+8>>2]=0;Pe(g);g=0}fa=C+16|0;a=g;break h}Ua(1336);V()}b=F[t>>2];if(!b){break e}F[t+4>>2]=b;mj(b)}fa=t+16|0;break d}b=F[k+4>>2];F[k+4>>2]=a;if(b){Pe(b);a=F[k+4>>2]}_:{if(!a){break _}a=F[x+100>>2];b=F[x+96>>2];D[s+12|0]=0;Le(k+56|0,(a-b|0)/12|0,s+12|0);a=F[x+100>>2];c=F[x+96>>2];if((a|0)==(c|0)){J=1;break _}while(1){if(!(F[F[k+56>>2]+(B>>>3&536870908)>>2]>>>B&1)){a=L(B,3);zi(k,0,a);b=F[k+8>>2];c=F[k+12>>2];zi(k,1,a+1|0);e=F[k+20>>2];d=F[k+24>>2];zi(k,2,a+2|0);e=d-e>>2;b=c-b|0;c=b>>2;a=e>>>0>c>>>0;c=F[k+36>>2]-F[k+32>>2]>>2>>>0>(a?e:c)>>>0?2:a?1:b?0:-1;$:{if(F[k+68>>2]<=0){break $}F[s+12>>2]=F[k+76>>2];F[s+8>>2]=m;pg(s+8|0,s+12|0);a=F[((c<<2)+k|0)+44>>2];if((a|0)<0){a=-1}else{b=(a>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(b,12)|0)+(a-L(b,3)<<2)>>2]}F[s+12>>2]=a;F[s+8>>2]=m;pg(s+8|0,s+12|0);b=F[k+72>>2];F[k+72>>2]=b+2;if(!(b&1)){break $}F[s+12>>2]=a;F[s+8>>2]=m;pg(s+8|0,s+12|0);F[k+72>>2]=F[k+72>>2]+1}b=fa-16|0;fa=b;F[k+68>>2]=F[k+68>>2]+1;a=L(c,12)+k|0;e=F[a+12>>2]-F[a+8>>2]|0;aa:{if((e|0)<=0){break aa}a=-1;c=F[((c<<2)+k|0)+44>>2];d=(c>>>0)/3|0;i=(c|0)==-1;f=i?-1:d;g=F[k+56>>2]+(f>>>3&536870908)|0;F[g>>2]=F[g>>2]|1<>2]=F[k+72>>2]+1;F[b+12>>2]=(c|0)>=0?F[(F[F[k>>2]+96>>2]+L(d,12)|0)+((c>>>0)%3<<2)>>2]:-1;F[b+8>>2]=m;pg(b+8|0,b+12|0);ba:{if(!i){f=c+1|0;f=(f>>>0)%3|0?f:c-2|0;if((f|0)>=0){i=(f>>>0)/3|0;f=F[(F[F[k>>2]+96>>2]+L(i,12)|0)+(f-L(i,3)<<2)>>2]}else{f=-1}F[b+12>>2]=f;F[b+8>>2]=m;pg(b+8|0,b+12|0);d=c+(c-L(d,3)|0?-1:2)|0;if((d|0)<0){break ba}a=(d>>>0)/3|0;a=F[(F[F[k>>2]+96>>2]+L(a,12)|0)+(d-L(a,3)<<2)>>2];break ba}F[b+12>>2]=-1;F[b+8>>2]=m;pg(b+8|0,b+12|0)}F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=m;a=-1;pg(b+8|0,b+12|0);a=(c|0)!=-1?F[F[F[k+4>>2]+12>>2]+(c<<2)>>2]:a;if(e>>>0<=7){break aa}c=e>>>2|0;i=c>>>0>1?c:1;e=1;while(1){c=a;f=(a>>>0)/3|0;a=(a|0)==-1?-1:f;d=F[k+56>>2]+(a>>>3&536870908)|0;F[d>>2]=F[d>>2]|1<>2]=F[k+72>>2]+1;a=-1;a=(c|0)>=0?F[(F[F[k>>2]+96>>2]+L(f,12)|0)+((c>>>0)%3<<2)>>2]:a;F[k+76>>2]=a;F[b+12>>2]=a;F[b+8>>2]=m;pg(b+8|0,b+12|0);ca:{da:{ea:{if(e&1){d=-1;if((c|0)==-1){break ca}if((c|0)!=(L(f,3)|0)){a=c-1|0;break da}a=c+2|0;break ea}d=-1;if((c|0)==-1){break ca}a=c+1|0;a=(a>>>0)%3|0?a:c-2|0}d=-1;if((a|0)==-1){break ca}}d=F[F[F[k+4>>2]+12>>2]+(a<<2)>>2]}a=d;e=e+1|0;if((i|0)!=(e|0)){continue}break}}fa=b+16|0;c=F[x+96>>2];a=F[x+100>>2]}J=1;B=B+1|0;if(B>>>0<(a-c|0)/12>>>0){continue}break}}fa=s+16|0;fa:{if(J){a=F[z>>2];if(a){F[z+4>>2]=a;mj(a)}F[z>>2]=F[m>>2];F[z+4>>2]=F[m+4>>2];F[z+8>>2]=F[m+8>>2];K=F[m+84>>2];break fa}a=F[m>>2];if(!a){break fa}F[m+4>>2]=a;mj(a)}a=F[m+72>>2];if(a){mj(a)}a=F[m+48>>2];if(a){F[m+52>>2]=a;mj(a)}a=F[m+36>>2];if(a){F[m+40>>2]=a;mj(a)}a=F[m+24>>2];if(a){F[m+28>>2]=a;mj(a)}a=F[m+20>>2];F[m+20>>2]=0;if(a){Pe(a)}fa=m+96|0;break b}Ha();V()}return K|0}function lj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=fa-16|0;fa=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=F[4233];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=F[b+16980>>2];a=f+8|0;c=F[f+8>>2];b=b+16972|0;l:{if((c|0)==(b|0)){m=16932,n=Vj(d)&e,F[m>>2]=n;break l}F[c+12>>2]=b;F[b+8>>2]=c}b=d<<3;F[f+4>>2]=b|3;b=b+f|0;F[b+4>>2]=F[b+4>>2]|1;break a}k=F[4235];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=F[a+16980>>2];b=F[g+8>>2];a=a+16972|0;m:{if((b|0)==(a|0)){e=Vj(c)&e;F[4233]=e;break m}F[b+12>>2]=a;F[a+8>>2]=b}a=g+8|0;F[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;F[d+4>>2]=f|1;F[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+16972|0;g=F[4238];b=1<>2]}F[c+8>>2]=g;F[b+12>>2]=g;F[g+12>>2]=c;F[g+8>>2]=b}F[4238]=d;F[4235]=f;break a}j=F[4234];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=F[((c|a)+(b>>>a|0)<<2)+17236>>2];d=(F[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=F[c+16>>2];if(!a){a=F[c+20>>2];if(!a){break o}}c=(F[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=F[b+24>>2];f=F[b+12>>2];if((f|0)!=(b|0)){a=F[b+8>>2];F[a+12>>2]=f;F[f+8>>2]=a;break b}c=b+20|0;a=F[c>>2];if(!a){a=F[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=F[c>>2];if(a){continue}c=f+16|0;a=F[f+16>>2];if(a){continue}break}F[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=F[4234];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=F[(e<<2)+17236>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(F[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=F[c+20>>2];c=F[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=F[((c|a)+(b>>>a|0)<<2)+17236>>2]}if(!a){break q}}while(1){b=(F[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=F[a+16>>2];if(b){a=b}else{a=F[a+20>>2]}if(a){continue}break}}if(!f|F[4235]-h>>>0<=d>>>0){break k}e=F[f+24>>2];b=F[f+12>>2];if((f|0)!=(b|0)){a=F[f+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break c}c=f+20|0;a=F[c>>2];if(!a){a=F[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=F[c>>2];if(a){continue}c=b+16|0;a=F[b+16>>2];if(a){continue}break}F[g>>2]=0;break c}c=F[4235];if(c>>>0>=h>>>0){d=F[4238];b=c-h|0;u:{if(b>>>0>=16){F[4235]=b;a=d+h|0;F[4238]=a;F[a+4>>2]=b|1;F[c+d>>2]=b;F[d+4>>2]=h|3;break u}F[4238]=0;F[4235]=0;F[d+4>>2]=c|3;a=c+d|0;F[a+4>>2]=F[a+4>>2]|1}a=d+8|0;break a}i=F[4236];if(i>>>0>h>>>0){b=i-h|0;F[4236]=b;c=F[4239];a=c+h|0;F[4239]=a;F[a+4>>2]=b|1;F[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(F[4351]){c=F[4353]}else{F[4354]=-1;F[4355]=-1;F[4352]=4096;F[4353]=4096;F[4351]=l+12&-16^1431655768;F[4356]=0;F[4344]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=F[4343];if(d){b=F[4341];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(G[17376]&4){break f}v:{w:{d=F[4239];if(d){a=17380;while(1){b=F[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=F[a+8>>2];if(a){continue}break}}b=kj(0);if((b|0)==-1){break g}e=c;d=F[4352];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=F[4343];if(d){a=F[4341];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=kj(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=kj(e);if((b|0)==(F[a>>2]+F[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=F[4353];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((kj(b)|0)!=-1){e=b+e|0;b=a;break e}kj(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}F[4344]=F[4344]|4}if(c>>>0>2147483646){break d}b=kj(c);a=kj(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=F[4341]+e|0;F[4341]=a;if(a>>>0>I[4342]){F[4342]=a}x:{y:{z:{g=F[4239];if(g){a=17380;while(1){d=F[a>>2];c=F[a+4>>2];if((d+c|0)==(b|0)){break z}a=F[a+8>>2];if(a){continue}break}break y}a=F[4237];if(!(a>>>0<=b>>>0?a:0)){F[4237]=b}a=0;F[4346]=e;F[4345]=b;F[4241]=-1;F[4242]=F[4351];F[4348]=0;while(1){d=a<<3;c=d+16972|0;F[d+16980>>2]=c;F[d+16984>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[4236]=c;a=a+b|0;F[4239]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[4240]=F[4355];break x}if(G[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}F[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;F[4239]=c;b=F[4236]+e|0;a=b-a|0;F[4236]=a;F[c+4>>2]=a|1;F[(b+g|0)+4>>2]=40;F[4240]=F[4355];break x}if(I[4237]>b>>>0){F[4237]=b}c=b+e|0;a=17380;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=F[a>>2]){a=F[a+8>>2];if(a){continue}break F}break}if(!(G[a+12|0]&8)){break E}}a=17380;while(1){c=F[a>>2];if(c>>>0<=g>>>0){f=c+F[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=F[a+8>>2];continue}}F[a>>2]=b;F[a+4>>2]=F[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;F[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){F[4239]=i;a=F[4236]+c|0;F[4236]=a;F[i+4>>2]=a|1;break B}if(F[4238]==(e|0)){F[4238]=i;a=F[4235]+c|0;F[4235]=a;F[i+4>>2]=a|1;F[a+i>>2]=a;break B}a=F[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=F[e+8>>2];a=a>>>3|0;b=F[e+12>>2];if((b|0)==(d|0)){m=16932,n=F[4233]&Vj(a),F[m>>2]=n;break G}F[d+12>>2]=b;F[b+8>>2]=d;break G}h=F[e+24>>2];b=F[e+12>>2];H:{if((e|0)!=(b|0)){a=F[e+8>>2];F[a+12>>2]=b;F[b+8>>2]=a;break H}I:{a=e+20|0;d=F[a>>2];if(d){break I}a=e+16|0;d=F[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=F[a>>2];if(d){continue}a=b+16|0;d=F[b+16>>2];if(d){continue}break}F[f>>2]=0}if(!h){break G}d=F[e+28>>2];a=(d<<2)+17236|0;J:{if(F[a>>2]==(e|0)){F[a>>2]=b;if(b){break J}m=16936,n=F[4234]&Vj(d),F[m>>2]=n;break G}F[h+(F[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}F[b+24>>2]=h;a=F[e+16>>2];if(a){F[b+16>>2]=a;F[a+24>>2]=b}a=F[e+20>>2];if(!a){break G}F[b+20>>2]=a;F[a+24>>2]=b}e=e+g|0;c=c+g|0}F[e+4>>2]=F[e+4>>2]&-2;F[i+4>>2]=c|1;F[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+16972|0;c=F[4233];a=1<>2]}F[b+8>>2]=i;F[a+12>>2]=i;F[i+12>>2]=b;F[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}F[i+28>>2]=a;F[i+16>>2]=0;F[i+20>>2]=0;f=(a<<2)+17236|0;d=F[4234];b=1<>2]=i;F[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[f>>2];while(1){d=b;if((F[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=F[f+16>>2];if(b){continue}break}F[f+16>>2]=i;F[i+24>>2]=d}F[i+12>>2]=i;F[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;F[4236]=c;a=a+b|0;F[4239]=a;F[a+4>>2]=c|1;F[(b+d|0)+4>>2]=40;F[4240]=F[4355];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;F[c+4>>2]=27;a=F[4348];F[c+16>>2]=F[4347];F[c+20>>2]=a;a=F[4346];F[c+8>>2]=F[4345];F[c+12>>2]=a;F[4347]=c+8;F[4346]=e;F[4345]=b;F[4348]=0;a=c+24|0;while(1){F[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}F[c+4>>2]=F[c+4>>2]&-2;f=c-g|0;F[g+4>>2]=f|1;F[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+16972|0;c=F[4233];a=1<>2]}F[b+8>>2]=g;F[a+12>>2]=g;F[g+12>>2]=b;F[g+8>>2]=a;break x}a=31;F[g+16>>2]=0;F[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}F[g+28>>2]=a;d=(a<<2)+17236|0;c=F[4234];b=1<>2]=g;F[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=F[d>>2];while(1){c=b;if((f|0)==(F[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=F[d+16>>2];if(b){continue}break}F[d+16>>2]=g;F[g+24>>2]=c}F[g+12>>2]=g;F[g+8>>2]=g;break x}a=F[d+8>>2];F[a+12>>2]=i;F[d+8>>2]=i;F[i+24>>2]=0;F[i+12>>2]=d;F[i+8>>2]=a}a=j+8|0;break a}a=F[c+8>>2];F[a+12>>2]=g;F[c+8>>2]=g;F[g+24>>2]=0;F[g+12>>2]=c;F[g+8>>2]=a}a=F[4236];if(a>>>0<=h>>>0){break d}b=a-h|0;F[4236]=b;c=F[4239];a=c+h|0;F[4239]=a;F[a+4>>2]=b|1;F[c+4>>2]=h|3;a=c+8|0;break a}F[4190]=48;a=0;break a}O:{if(!e){break O}c=F[f+28>>2];a=(c<<2)+17236|0;P:{if(F[a>>2]==(f|0)){F[a>>2]=b;if(b){break P}j=Vj(c)&j;F[4234]=j;break O}F[e+(F[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}F[b+24>>2]=e;a=F[f+16>>2];if(a){F[b+16>>2]=a;F[a+24>>2]=b}a=F[f+20>>2];if(!a){break O}F[b+20>>2]=a;F[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;F[f+4>>2]=a|3;a=a+f|0;F[a+4>>2]=F[a+4>>2]|1;break Q}F[f+4>>2]=h|3;e=f+h|0;F[e+4>>2]=d|1;F[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+16972|0;c=F[4233];a=1<>2]}F[b+8>>2]=e;F[a+12>>2]=e;F[e+12>>2]=b;F[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}F[e+28>>2]=a;F[e+16>>2]=0;F[e+20>>2]=0;b=(a<<2)+17236|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=F[b>>2];while(1){b=h;if((F[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=F[c+16>>2];if(h){continue}break}F[c+16>>2]=e}F[e+24>>2]=b;F[e+12>>2]=e;F[e+8>>2]=e;break Q}a=F[b+8>>2];F[a+12>>2]=e;F[b+8>>2]=e;F[e+24>>2]=0;F[e+12>>2]=b;F[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=F[b+28>>2];a=(c<<2)+17236|0;V:{if(F[a>>2]==(b|0)){F[a>>2]=f;if(f){break V}m=16936,n=Vj(c)&j,F[m>>2]=n;break U}F[i+(F[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}F[f+24>>2]=i;a=F[b+16>>2];if(a){F[f+16>>2]=a;F[a+24>>2]=f}a=F[b+20>>2];if(!a){break U}F[f+20>>2]=a;F[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;F[b+4>>2]=a|3;a=a+b|0;F[a+4>>2]=F[a+4>>2]|1;break W}F[b+4>>2]=h|3;f=b+h|0;F[f+4>>2]=d|1;F[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+16972|0;g=F[4238];a=1<>2]}F[c+8>>2]=g;F[a+12>>2]=g;F[g+12>>2]=c;F[g+8>>2]=a}F[4238]=f;F[4235]=d}a=b+8|0}fa=l+16|0;return a|0}function kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=fa-48|0;fa=j;a:{if((c|0)!=1){break a}f=F[a+4>>2];i=F[a+12>>2];F[j+40>>2]=0;F[j+32>>2]=0;F[j+36>>2]=0;F[j+24>>2]=0;F[j+28>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;e=j+8|0;b:{if((b|0)==-2){break b}m=F[F[F[f+4>>2]+8>>2]+(i<<2)>>2];if((ia[F[F[f>>2]+8>>2]](f)|0)==1){a=H[f+36>>1];l=(a<<8|a>>>8)&65535;a=0;k=fa-32|0;fa=k;g=F[F[F[f+4>>2]+8>>2]+(i<<2)>>2];c:{if((ia[F[F[f>>2]+8>>2]](f)|0)!=1|b-1>>>0>5){break c}d=ia[F[F[f>>2]+36>>2]](f)|0;h=ia[F[F[f>>2]+44>>2]](f,i)|0;if(!d|!h){break c}c=ia[F[F[f>>2]+40>>2]](f,i)|0;if(c){a=F[f+44>>2];F[k+12>>2]=c;F[k+8>>2]=a;F[k+20>>2]=h;F[k+16>>2]=h+12;f=k+8|0;a=0;d:{e:{f:{switch(b-1|0){case 0:a=oj(60);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=2592;break d;case 1:a=oj(60);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=3356;break d;case 3:a=oj(112);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=3592;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;break d;case 2:a=oj(92);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=3840;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=l;break d;case 4:a=oj(104);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break e}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;c=F[f+8>>2];b=F[f+12>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=4068;F[a+52>>2]=c;F[a+56>>2]=b;b=F[f+4>>2];F[a+88>>2]=F[f>>2];F[a+92>>2]=b;b=F[f+12>>2];F[a+96>>2]=F[f+8>>2];F[a+100>>2]=b;break d;case 5:break f;default:break d}}a=oj(128);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;g:{h:{c=F[e+28>>2]-F[e+24>>2]|0;if(c){if((c|0)<0){break h}b=oj(c);F[a+32>>2]=b;F[a+36>>2]=b;F[a+40>>2]=b+(c>>2<<2);c=F[e+24>>2];d=F[e+28>>2]-c|0;if((d|0)>0){b=Oi(b,c,d)+d|0}F[a+36>>2]=b}F[a>>2]=3244;b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+60>>2]=4932;F[a>>2]=4304;b=F[f+4>>2];F[a+72>>2]=F[f>>2];F[a+76>>2]=b;b=F[f+12>>2];F[a+80>>2]=F[f+8>>2];F[a+84>>2]=b;F[a+104>>2]=1065353216;F[a+108>>2]=-1;F[a+96>>2]=-1;F[a+100>>2]=-1;F[a+88>>2]=1;F[a+92>>2]=-1;F[a+60>>2]=4540;F[a+112>>2]=0;F[a+116>>2]=0;D[a+117|0]=0;D[a+118|0]=0;D[a+119|0]=0;D[a+120|0]=0;D[a+121|0]=0;D[a+122|0]=0;D[a+123|0]=0;D[a+124|0]=0;break g}Ha();V()}break d}Ha();V()}break c}a=F[f+44>>2];F[k+12>>2]=d;F[k+8>>2]=a;F[k+20>>2]=h;F[k+16>>2]=h+12;f=k+8|0;a=0;i:{j:{k:{switch(b-1|0){case 0:a=oj(60);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=4960;break i;case 1:a=oj(60);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a>>2]=5384;break i;case 3:a=oj(112);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=5608;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;break i;case 2:a=oj(92);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=5844;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=l;break i;case 4:a=oj(104);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;b=F[e+24>>2];d=F[e+28>>2]-b|0;if(d){if((d|0)<0){break j}c=oj(d);F[a+32>>2]=c;F[a+40>>2]=c+(d>>2<<2);n=a,o=Oi(c,b,d)+d|0,F[n+36>>2]=o}b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;c=F[f+8>>2];b=F[f+12>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a>>2]=6060;F[a+52>>2]=c;F[a+56>>2]=b;b=F[f+4>>2];F[a+88>>2]=F[f>>2];F[a+92>>2]=b;b=F[f+12>>2];F[a+96>>2]=F[f+8>>2];F[a+100>>2]=b;break i;case 5:break k;default:break i}}a=oj(128);F[a+4>>2]=g;F[a>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];d=F[e+20>>2];c=F[e>>2];b=F[e+4>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=i;F[a+28>>2]=d;F[a+16>>2]=g;F[a+20>>2]=h;F[a+8>>2]=c;F[a+12>>2]=b;l:{m:{c=F[e+28>>2]-F[e+24>>2]|0;if(c){if((c|0)<0){break m}b=oj(c);F[a+32>>2]=b;F[a+36>>2]=b;F[a+40>>2]=b+(c>>2<<2);c=F[e+24>>2];d=F[e+28>>2]-c|0;if((d|0)>0){b=Oi(b,c,d)+d|0}F[a+36>>2]=b}F[a>>2]=5328;b=F[f+4>>2];F[a+44>>2]=F[f>>2];F[a+48>>2]=b;b=F[f+12>>2];F[a+52>>2]=F[f+8>>2];F[a+56>>2]=b;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+60>>2]=6868;F[a>>2]=6284;b=F[f+4>>2];F[a+72>>2]=F[f>>2];F[a+76>>2]=b;b=F[f+12>>2];F[a+80>>2]=F[f+8>>2];F[a+84>>2]=b;F[a+104>>2]=1065353216;F[a+108>>2]=-1;F[a+96>>2]=-1;F[a+100>>2]=-1;F[a+88>>2]=1;F[a+92>>2]=-1;F[a+60>>2]=6504;F[a+112>>2]=0;F[a+116>>2]=0;D[a+117|0]=0;D[a+118|0]=0;D[a+119|0]=0;D[a+120|0]=0;D[a+121|0]=0;D[a+122|0]=0;D[a+123|0]=0;D[a+124|0]=0;break l}Ha();V()}break i}Ha();V()}}fa=k+32|0;d=a;if(a){break b}}d=oj(44);F[d+4>>2]=m;F[d>>2]=3300;g=F[e+8>>2];h=F[e+12>>2];i=F[e+16>>2];c=F[e+20>>2];b=F[e>>2];a=F[e+4>>2];F[d+40>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;F[d+24>>2]=i;F[d+28>>2]=c;F[d+16>>2]=g;F[d+20>>2]=h;F[d+8>>2]=b;F[d+12>>2]=a;n:{a=F[e+24>>2];c=F[e+28>>2]-a|0;if(c){if((c|0)<0){break n}b=oj(c);F[d+32>>2]=b;F[d+40>>2]=b+(c>>2<<2);n=d,o=Oi(b,a,c)+c|0,F[n+36>>2]=o}F[d>>2]=6896;break b}Ha();V()}a=F[j+32>>2];if(!a){break a}F[j+36>>2]=a;mj(a)}fa=j+48|0;return d|0}function Bi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=fa-48|0;fa=k;c=oj(8);F[c+4>>2]=b;F[c>>2]=0;b=c+8|0;F[k+40>>2]=b;F[k+36>>2]=b;F[k+32>>2]=c;a:{b:{c:{d:{while(1){b=b-8|0;j=F[b+4>>2];g=F[b>>2];F[k+36>>2]=b;if(g){F[k+24>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;c=1;b=F[a>>2];e=F[b+8>>2];h=F[b+12>>2];d=F[b+20>>2];f=F[b+16>>2];e:{if((h|0)<=(d|0)&f>>>0>=e>>>0|(d|0)>(h|0)){break e}e=G[f+F[b>>2]|0];f=f+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;uj(k+16|0,e);if(e){d=F[a>>2];m=tj(k+16|0);f=F[d+20>>2];i=F[d+16>>2];b=e;n=i+e|0;h=F[d+12>>2];f=e>>>0>n>>>0?f+1|0:f;if(n>>>0>I[d+8>>2]&(h|0)<=(f|0)|(f|0)>(h|0)){break e}Oi(m,i+F[d>>2]|0,e);c=F[d+20>>2];e=b+F[d+16>>2]|0;c=e>>>0>>0?c+1|0:c;F[d+16>>2]=e;F[d+20>>2]=c}j=oj(24);b=j;F[b+4>>2]=0;F[b+8>>2]=0;b=b+16|0;F[b>>2]=0;F[b+4>>2]=0;F[j>>2]=j+4;F[j+12>>2]=b;e=fa-32|0;fa=e;f=g+12|0;c=k+16|0;l=ng(f,c);p=g+16|0;f:{if((l|0)==(p|0)){F[e+16>>2]=c;b=F[f+4>>2];g:{h:{if(b){d=G[c+11|0];g=d<<24>>24<0;h=g?F[c>>2]:c;g=g?F[c+4>>2]:d;c=f+4|0;while(1){d=G[b+27|0];n=d<<24>>24<0;d=n?F[b+20>>2]:d;m=d>>>0>>0;i:{j:{k:{l:{m:{i=m?d:g;n:{if(i){o=b+16|0;n=n?F[o>>2]:o;o=Vi(h,n,i);if(!o){if(d>>>0>g>>>0){break n}break m}if((o|0)>=0){break m}break n}if(d>>>0<=g>>>0){break l}}d=F[b>>2];if(d){break i}break h}d=Vi(n,h,i);if(d){break k}}if(m){break j}break g}if((d|0)>=0){break g}}c=b+4|0;d=F[b+4>>2];if(!d){break g}b=c}c=b;b=d;continue}}b=f+4|0}c=b}d=F[c>>2];if(d){b=0}else{d=oj(32);h=d+16|0;g=F[e+16>>2];o:{if(D[g+11|0]>=0){n=F[g+4>>2];F[h>>2]=F[g>>2];F[h+4>>2]=n;F[h+8>>2]=F[g+8>>2];break o}qj(h,F[g>>2],F[g+4>>2])}F[d+8>>2]=b;F[d>>2]=0;F[d+4>>2]=0;F[d+28>>2]=0;F[c>>2]=d;b=F[F[f>>2]>>2];if(b){F[f>>2]=b;b=F[c>>2]}else{b=d}je(F[f+4>>2],b);F[f+8>>2]=F[f+8>>2]+1;b=1}D[e+28|0]=b;F[e+24>>2]=d;c=F[e+24>>2];b=F[c+28>>2];F[c+28>>2]=j;if(!b){break f}eg(b+12|0,F[b+16>>2]);fg(b,F[b+4>>2]);mj(b);break f}if(!j){break f}eg(j+12|0,F[j+16>>2]);fg(j,F[j+4>>2]);mj(j)}fa=e+32|0;c=(l|0)!=(p|0)}if(D[k+27|0]<0){mj(F[k+16>>2])}if(c){break b}}if(!j){break b}F[k+16>>2]=0;if(!Ci(1,k+16|0,F[a>>2])){break b}b=0;r=F[k+16>>2];if(r){while(1){n=0;i=fa-32|0;fa=i;F[i+24>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;c=F[a>>2];e=F[c+8>>2];p:{q:{f=F[c+12>>2];d=F[c+20>>2];g=F[c+16>>2];r:{if((f|0)<=(d|0)&g>>>0>=e>>>0|(d|0)>(f|0)){break r}f=G[g+F[c>>2]|0];e=c;c=d;d=g+1|0;c=d?c:c+1|0;F[e+16>>2]=d;F[e+20>>2]=c;uj(i+16|0,f);if(f){e=F[a>>2];m=tj(i+16|0);d=F[e+20>>2];l=F[e+16>>2];c=f;h=l+c|0;g=F[e+12>>2];d=c>>>0>h>>>0?d+1|0:d;if(h>>>0>I[e+8>>2]&(g|0)<=(d|0)|(d|0)>(g|0)){break r}Oi(m,l+F[e>>2]|0,f);d=F[e+20>>2];f=c+F[e+16>>2]|0;d=f>>>0>>0?d+1|0:d;F[e+16>>2]=f;F[e+20>>2]=d}F[i+12>>2]=0;if(!Ci(1,i+12|0,F[a>>2])){break r}c=F[i+12>>2];if(!c){break r}F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;if((c|0)<0){break q}d=oj(c);F[i>>2]=d;e=c+d|0;F[i+8>>2]=e;m=Qi(d,0,c);F[i+4>>2]=e;e=F[a>>2];n=F[e+8>>2];g=F[e+12>>2];f=F[e+20>>2];l=F[e+16>>2];h=c+l|0;f=h>>>0>>0?f+1|0:f;n=(f|0)<=(g|0)&h>>>0<=n>>>0|(f|0)<(g|0);if(n){Oi(m,l+F[e>>2]|0,c);d=c;f=c+F[e+16>>2]|0;c=F[e+20>>2];F[e+16>>2]=f;F[e+20>>2]=d>>>0>f>>>0?c+1|0:c;g=fa-48|0;fa=g;d=ng(j,i+16|0);if((d|0)!=(j+4|0)){e=F[d+4>>2];s:{if(!e){f=F[d+8>>2];if(F[f>>2]==(d|0)){break s}c=d+8|0;while(1){e=F[c>>2];c=e+8|0;f=F[e+8>>2];if((e|0)!=F[f>>2]){continue}break}break s}while(1){f=e;e=F[e>>2];if(e){continue}break}}if(F[j>>2]==(d|0)){F[j>>2]=f}F[j+8>>2]=F[j+8>>2]-1;f=F[j+4>>2];h=d;t:{u:{e=F[d>>2];if(e){c=F[h+4>>2];if(!c){break u}while(1){d=c;c=F[c>>2];if(c){continue}break}}e=F[d+4>>2];if(e){break u}e=0;m=1;break t}F[e+8>>2]=F[d+8>>2];m=0}l=F[d+8>>2];c=F[l>>2];v:{if((d|0)==(c|0)){F[l>>2]=e;if((d|0)==(f|0)){c=0;f=e;break v}c=F[l+4>>2];break v}F[l+4>>2]=e}o=!G[d+12|0];if((d|0)!=(h|0)){l=F[h+8>>2];F[d+8>>2]=l;F[l+(((h|0)!=F[F[h+8>>2]>>2])<<2)>>2]=d;l=F[h>>2];F[d>>2]=l;F[l+8>>2]=d;l=F[h+4>>2];F[d+4>>2]=l;if(l){F[l+8>>2]=d}D[d+12|0]=G[h+12|0];f=(f|0)==(h|0)?d:f}w:{if(o|!f){break w}if(m){while(1){e=G[c+12|0];x:{d=F[c+8>>2];if(F[d>>2]!=(c|0)){if(!e){D[c+12|0]=1;D[d+12|0]=0;e=F[d+4>>2];m=F[e>>2];F[d+4>>2]=m;if(m){F[m+8>>2]=d}F[e+8>>2]=F[d+8>>2];m=F[d+8>>2];F[(((d|0)!=F[m>>2])<<2)+m>>2]=e;F[e>>2]=d;F[d+8>>2]=e;d=c;c=F[c>>2];f=(c|0)==(f|0)?d:f;c=F[c+4>>2]}y:{z:{d=F[c>>2];A:{if(!(G[d+12|0]?0:d)){e=F[c+4>>2];if(G[e+12|0]?0:e){break A}D[c+12|0]=0;c=F[c+8>>2];B:{if((f|0)==(c|0)){c=f;break B}if(G[c+12|0]){break x}}D[c+12|0]=1;break w}e=F[c+4>>2];if(!e){break z}}if(G[e+12|0]){break z}d=c;break y}D[d+12|0]=1;D[c+12|0]=0;e=F[d+4>>2];F[c>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[((F[e>>2]!=(c|0))<<2)+e>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;e=c}c=F[d+8>>2];D[d+12|0]=G[c+12|0];D[c+12|0]=1;D[e+12|0]=1;d=F[c+4>>2];e=F[d>>2];F[c+4>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[(((c|0)!=F[e>>2])<<2)+e>>2]=d;F[d>>2]=c;F[c+8>>2]=d;break w}if(!e){D[c+12|0]=1;D[d+12|0]=0;e=F[c+4>>2];F[d>>2]=e;if(e){F[e+8>>2]=d}F[c+8>>2]=F[d+8>>2];e=F[d+8>>2];F[(((d|0)!=F[e>>2])<<2)+e>>2]=c;F[c+4>>2]=d;F[d+8>>2]=c;f=(d|0)==(f|0)?c:f;c=F[d>>2]}e=F[c>>2];C:{if(!(!e|G[e+12|0])){d=c;break C}d=F[c+4>>2];if(!(G[d+12|0]?0:d)){D[c+12|0]=0;c=F[c+8>>2];if((c|0)!=(f|0)?G[c+12|0]:0){break x}D[c+12|0]=1;break w}if(e){if(!G[e+12|0]){d=c;break C}d=F[c+4>>2]}D[d+12|0]=1;D[c+12|0]=0;e=F[d>>2];F[c+4>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[((F[e>>2]!=(c|0))<<2)+e>>2]=d;F[d>>2]=c;F[c+8>>2]=d;e=c}c=F[d+8>>2];D[d+12|0]=G[c+12|0];D[c+12|0]=1;D[e+12|0]=1;d=F[c>>2];e=F[d+4>>2];F[c>>2]=e;if(e){F[e+8>>2]=c}F[d+8>>2]=F[c+8>>2];e=F[c+8>>2];F[(((c|0)!=F[e>>2])<<2)+e>>2]=d;F[d+4>>2]=c;F[c+8>>2]=d;break w}d=c;c=F[c+8>>2];c=F[(((d|0)==F[c>>2])<<2)+c>>2];continue}}D[e+12|0]=1}c=F[h+28>>2];if(c){F[h+32>>2]=c;mj(c)}if(D[h+27|0]<0){mj(F[h+16>>2])}mj(h)}F[g>>2]=0;F[g+4>>2]=0;F[g+8>>2]=0;c=F[i+4>>2]-F[i>>2]|0;Db(g,c);Oi(F[g>>2],F[i>>2],c);D:{if(D[i+27|0]>=0){F[g+24>>2]=F[i+24>>2];c=F[i+20>>2];F[g+16>>2]=F[i+16>>2];F[g+20>>2]=c;break D}qj(g+16|0,F[i+16>>2],F[i+20>>2])}F[g+36>>2]=0;F[g+28>>2]=0;F[g+32>>2]=0;Db(g+28|0,F[g+4>>2]-F[g>>2]|0);c=F[g>>2];Oi(F[g+28>>2],c,F[g+4>>2]-c|0);f=g+16|0;d=f;c=F[j+4>>2];E:{F:{if(c){e=G[d+11|0];h=e<<24>>24<0;m=h?F[d>>2]:d;h=h?F[d+4>>2]:e;d=j+4|0;while(1){e=G[c+27|0];l=e<<24>>24<0;e=l?F[c+20>>2]:e;p=e>>>0>>0;G:{H:{I:{J:{K:{o=p?e:h;L:{if(o){q=c+16|0;l=l?F[q>>2]:q;q=Vi(m,l,o);if(!q){if(e>>>0>h>>>0){break L}break K}if((q|0)>=0){break K}break L}if(e>>>0<=h>>>0){break J}}e=F[c>>2];if(e){break G}break F}e=Vi(l,m,o);if(e){break I}}if(p){break H}break E}if((e|0)>=0){break E}}d=c+4|0;e=F[c+4>>2];if(!e){break E}c=d}d=c;c=e;continue}}c=j+4|0}d=c}e=F[d>>2];if(e){c=0}else{e=oj(40);F[e+24>>2]=F[f+8>>2];h=F[f+4>>2];F[e+16>>2]=F[f>>2];F[e+20>>2]=h;F[f>>2]=0;F[f+4>>2]=0;F[f+8>>2]=0;F[e+36>>2]=0;h=e+28|0;F[h>>2]=0;F[h+4>>2]=0;Db(h,F[f+16>>2]-F[f+12>>2]|0);m=F[h>>2];h=F[f+12>>2];Oi(m,h,F[f+16>>2]-h|0);F[e+8>>2]=c;F[e>>2]=0;F[e+4>>2]=0;F[d>>2]=e;c=F[F[j>>2]>>2];if(c){F[j>>2]=c;c=F[d>>2]}else{c=e}je(F[j+4>>2],c);F[j+8>>2]=F[j+8>>2]+1;c=1}D[g+44|0]=c;F[g+40>>2]=e;c=F[g+28>>2];if(c){F[g+32>>2]=c;mj(c)}if(D[g+27|0]<0){mj(F[g+16>>2])}c=F[g>>2];if(c){F[g+4>>2]=c;mj(c)}fa=g+48|0;d=F[i>>2];if(!d){break r}}F[i+4>>2]=d;mj(d)}if(D[i+27|0]<0){mj(F[i+16>>2])}fa=i+32|0;break p}Ha();V()}if(!n){break b}b=b+1|0;if((r|0)!=(b|0)){continue}break}}F[k+12>>2]=0;if(!Ci(1,k+12|0,F[a>>2])){break b}b=F[a>>2];c=F[b+8>>2];d=F[b+16>>2];e=c-d|0;f=F[k+12>>2];b=F[b+12>>2]-(F[b+20>>2]+(c>>>0>>0)|0)|0;if(e>>>0>>0&(b|0)<=0|(b|0)<0){break b}c=0;b=F[k+36>>2];if(f){while(1){e=F[k+40>>2];M:{if(e>>>0>b>>>0){F[b+4>>2]=0;F[b>>2]=j;b=b+8|0;F[k+36>>2]=b;break M}d=F[k+32>>2];g=b-d|0;h=g>>3;b=h+1|0;if(b>>>0>=536870912){break d}e=e-d|0;n=e>>2;b=e>>>0<2147483640?b>>>0>n>>>0?b:n:536870911;if(b>>>0>=536870912){break c}m=h<<3;h=b<<3;e=oj(h);b=m+e|0;F[b+4>>2]=0;F[b>>2]=j;b=b+8|0;if((g|0)>0){Oi(e,d,g)}F[k+40>>2]=e+h;F[k+36>>2]=b;F[k+32>>2]=e;if(!d){break M}mj(d)}c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(F[k+32>>2]!=(b|0)){continue}break}a=1;break a}Ha();V()}Ua(1336);V()}b=F[k+32>>2];a=0}if(b){mj(b)}fa=k+48|0;return a}function bg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=fa-32|0;fa=h;F[b+32>>2]=d;F[b+40>>2]=c;F[b+4>>2]=e;Zf(a,d,h+16|0);a:{if(F[a>>2]){break a}i=a+4|0;if(D[a+15|0]<0){mj(F[i>>2])}d=G[h+23|0];if((ia[F[F[b>>2]+8>>2]](b)|0)!=(d|0)){b=oj(64);c=G[1458]|G[1459]<<8;D[b+48|0]=c;D[b+49|0]=c>>>8;c=G[1454]|G[1455]<<8|(G[1456]<<16|G[1457]<<24);d=G[1450]|G[1451]<<8|(G[1452]<<16|G[1453]<<24);D[b+40|0]=d;D[b+41|0]=d>>>8;D[b+42|0]=d>>>16;D[b+43|0]=d>>>24;D[b+44|0]=c;D[b+45|0]=c>>>8;D[b+46|0]=c>>>16;D[b+47|0]=c>>>24;c=G[1446]|G[1447]<<8|(G[1448]<<16|G[1449]<<24);d=G[1442]|G[1443]<<8|(G[1444]<<16|G[1445]<<24);D[b+32|0]=d;D[b+33|0]=d>>>8;D[b+34|0]=d>>>16;D[b+35|0]=d>>>24;D[b+36|0]=c;D[b+37|0]=c>>>8;D[b+38|0]=c>>>16;D[b+39|0]=c>>>24;c=G[1438]|G[1439]<<8|(G[1440]<<16|G[1441]<<24);d=G[1434]|G[1435]<<8|(G[1436]<<16|G[1437]<<24);D[b+24|0]=d;D[b+25|0]=d>>>8;D[b+26|0]=d>>>16;D[b+27|0]=d>>>24;D[b+28|0]=c;D[b+29|0]=c>>>8;D[b+30|0]=c>>>16;D[b+31|0]=c>>>24;c=G[1430]|G[1431]<<8|(G[1432]<<16|G[1433]<<24);d=G[1426]|G[1427]<<8|(G[1428]<<16|G[1429]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1422]|G[1423]<<8|(G[1424]<<16|G[1425]<<24);d=G[1418]|G[1419]<<8|(G[1420]<<16|G[1421]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1414]|G[1415]<<8|(G[1416]<<16|G[1417]<<24);d=G[1410]|G[1411]<<8|(G[1412]<<16|G[1413]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+50|0]=0;F[a>>2]=-1;qj(i,b,50);mj(b);break a}c=G[h+21|0];D[b+36|0]=c;e=G[h+22|0];D[b+37|0]=e;if((c-3&255)>>>0<=253){b=oj(32);c=G[1571]|G[1572]<<8|(G[1573]<<16|G[1574]<<24);d=G[1567]|G[1568]<<8|(G[1569]<<16|G[1570]<<24);D[b+14|0]=d;D[b+15|0]=d>>>8;D[b+16|0]=d>>>16;D[b+17|0]=d>>>24;D[b+18|0]=c;D[b+19|0]=c>>>8;D[b+20|0]=c>>>16;D[b+21|0]=c>>>24;c=G[1565]|G[1566]<<8|(G[1567]<<16|G[1568]<<24);d=G[1561]|G[1562]<<8|(G[1563]<<16|G[1564]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1557]|G[1558]<<8|(G[1559]<<16|G[1560]<<24);d=G[1553]|G[1554]<<8|(G[1555]<<16|G[1556]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+22|0]=0;F[a>>2]=-5;qj(i,b,22);mj(b);break a}if(!((c|0)!=2|e>>>0<=(d?2:3)>>>0)){b=oj(32);c=G[1548]|G[1549]<<8|(G[1550]<<16|G[1551]<<24);d=G[1544]|G[1545]<<8|(G[1546]<<16|G[1547]<<24);D[b+14|0]=d;D[b+15|0]=d>>>8;D[b+16|0]=d>>>16;D[b+17|0]=d>>>24;D[b+18|0]=c;D[b+19|0]=c>>>8;D[b+20|0]=c>>>16;D[b+21|0]=c>>>24;c=G[1542]|G[1543]<<8|(G[1544]<<16|G[1545]<<24);d=G[1538]|G[1539]<<8|(G[1540]<<16|G[1541]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1534]|G[1535]<<8|(G[1536]<<16|G[1537]<<24);d=G[1530]|G[1531]<<8|(G[1532]<<16|G[1533]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+22|0]=0;F[a>>2]=-5;qj(i,b,22);mj(b);break a}c=e|c<<8;E[F[b+32>>2]+38>>1]=c;b:{if((c&65535)>>>0<259|E[h+26>>1]>=0){break b}j=fa-16|0;fa=j;e=oj(36);c=e;F[c+4>>2]=0;F[c+8>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;c=c+16|0;F[c>>2]=0;F[c+4>>2]=0;F[e>>2]=e+4;F[e+32>>2]=0;F[e+12>>2]=c;F[j>>2]=0;d=F[b+32>>2];k=fa-16|0;fa=k;c=0;c:{if(!e){break c}F[j>>2]=d;F[k+12>>2]=0;c=0;if(!Ci(1,k+12|0,d)){break c}n=F[k+12>>2];if(n){while(1){d:{if(Ci(1,k+8|0,F[j>>2])){c=oj(28);F[c+4>>2]=0;F[c+8>>2]=0;d=c+16|0;F[d>>2]=0;F[d+4>>2]=0;F[c>>2]=c+4;F[c+12>>2]=d;F[c+24>>2]=F[k+8>>2];if(Bi(j,c)){break d}eg(c+12|0,F[c+16>>2]);fg(c,F[c+4>>2]);mj(c)}c=0;break c}f=fa-16|0;fa=f;F[f+8>>2]=c;e:{if(!c){F[f+8>>2]=0;break e}d=F[e+28>>2];f:{if(d>>>0>2]){F[f+8>>2]=0;F[d>>2]=c;F[e+28>>2]=d+4;break f}d=0;g:{h:{i:{g=F[e+24>>2];m=F[e+28>>2]-g>>2;c=m+1|0;if(c>>>0<1073741824){g=F[e+32>>2]-g|0;l=g>>1;c=g>>>0<2147483644?c>>>0>l>>>0?c:l:1073741823;if(c){if(c>>>0>=1073741824){break i}d=oj(c<<2)}l=F[f+8>>2];F[f+8>>2]=0;g=(m<<2)+d|0;F[g>>2]=l;m=(c<<2)+d|0;l=g+4|0;d=F[e+28>>2];c=F[e+24>>2];if((d|0)==(c|0)){break h}while(1){d=d-4|0;p=F[d>>2];F[d>>2]=0;g=g-4|0;F[g>>2]=p;if((c|0)!=(d|0)){continue}break}F[e+32>>2]=m;d=F[e+28>>2];F[e+28>>2]=l;c=F[e+24>>2];F[e+24>>2]=g;if((c|0)==(d|0)){break g}while(1){d=d-4|0;g=F[d>>2];F[d>>2]=0;if(g){eg(g+12|0,F[g+16>>2]);fg(g,F[g+4>>2]);mj(g)}if((c|0)!=(d|0)){continue}break}break g}Ha();V()}Ua(1336);V()}F[e+32>>2]=m;F[e+28>>2]=l;F[e+24>>2]=g}if(c){mj(c)}}c=F[f+8>>2];F[f+8>>2]=0;if(!c){break e}eg(c+12|0,F[c+16>>2]);fg(c,F[c+4>>2]);mj(c)}fa=f+16|0;o=o+1|0;if((n|0)!=(o|0)){continue}break}}c=Bi(j,e)}fa=k+16|0;j:{if(c){d=F[b+4>>2];c=F[d+4>>2];F[d+4>>2]=e;if(c){ag(c)}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;break j}c=oj(32);d=G[1723]|G[1724]<<8;D[c+24|0]=d;D[c+25|0]=d>>>8;d=G[1719]|G[1720]<<8|(G[1721]<<16|G[1722]<<24);f=G[1715]|G[1716]<<8|(G[1717]<<16|G[1718]<<24);D[c+16|0]=f;D[c+17|0]=f>>>8;D[c+18|0]=f>>>16;D[c+19|0]=f>>>24;D[c+20|0]=d;D[c+21|0]=d>>>8;D[c+22|0]=d>>>16;D[c+23|0]=d>>>24;d=G[1711]|G[1712]<<8|(G[1713]<<16|G[1714]<<24);f=G[1707]|G[1708]<<8|(G[1709]<<16|G[1710]<<24);D[c+8|0]=f;D[c+9|0]=f>>>8;D[c+10|0]=f>>>16;D[c+11|0]=f>>>24;D[c+12|0]=d;D[c+13|0]=d>>>8;D[c+14|0]=d>>>16;D[c+15|0]=d>>>24;d=G[1703]|G[1704]<<8|(G[1705]<<16|G[1706]<<24);f=G[1699]|G[1700]<<8|(G[1701]<<16|G[1702]<<24);D[c|0]=f;D[c+1|0]=f>>>8;D[c+2|0]=f>>>16;D[c+3|0]=f>>>24;D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;D[c+26|0]=0;F[a>>2]=-1;qj(a+4|0,c,26);mj(c);F[j+8>>2]=0;ag(e)}fa=j+16|0;if(F[a>>2]){break a}if(D[i+11|0]>=0){break b}mj(F[i>>2])}if(!(ia[F[F[b>>2]+12>>2]](b)|0)){b=oj(48);D[b+32|0]=G[1528];c=G[1524]|G[1525]<<8|(G[1526]<<16|G[1527]<<24);d=G[1520]|G[1521]<<8|(G[1522]<<16|G[1523]<<24);D[b+24|0]=d;D[b+25|0]=d>>>8;D[b+26|0]=d>>>16;D[b+27|0]=d>>>24;D[b+28|0]=c;D[b+29|0]=c>>>8;D[b+30|0]=c>>>16;D[b+31|0]=c>>>24;c=G[1516]|G[1517]<<8|(G[1518]<<16|G[1519]<<24);d=G[1512]|G[1513]<<8|(G[1514]<<16|G[1515]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1508]|G[1509]<<8|(G[1510]<<16|G[1511]<<24);d=G[1504]|G[1505]<<8|(G[1506]<<16|G[1507]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1500]|G[1501]<<8|(G[1502]<<16|G[1503]<<24);d=G[1496]|G[1497]<<8|(G[1498]<<16|G[1499]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+33|0]=0;F[a>>2]=-1;qj(i,b,33);mj(b);break a}if(!(ia[F[F[b>>2]+20>>2]](b)|0)){b=_f(h,1726);F[a>>2]=-1;if(D[b+11|0]>=0){a=F[h+4>>2];F[i>>2]=F[h>>2];F[i+4>>2]=a;F[i+8>>2]=F[h+8>>2];break a}qj(i,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break a}mj(F[b>>2]);break a}if(!(ia[F[F[b>>2]+24>>2]](b)|0)){b=_f(h,1461);F[a>>2]=-1;if(D[b+11|0]>=0){a=F[h+4>>2];F[i>>2]=F[h>>2];F[i+4>>2]=a;F[i+8>>2]=F[h+8>>2];break a}qj(i,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break a}mj(F[b>>2]);break a}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}fa=h+32|0}function Hb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=M(0),p=0,q=0,r=0;f=fa-720|0;fa=f;a:{b:{c:{d:{e:{f:{g:{h:{if(H[b+38>>1]>=515){F[f+680>>2]=0;F[f+672>>2]=0;F[f+676>>2]=0;if((ia[F[F[a>>2]+24>>2]](a)|0)<=0){break d}while(1){c=ia[F[F[a>>2]+20>>2]](a,k)|0;d=F[F[F[(ia[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];if(F[d+28>>2]==9){e=F[f+672>>2];c=F[f+676>>2]-e>>2;g=D[d+24|0];i:{if(c>>>0>>0){Ja(f+672|0,g-c|0);break i}if(c>>>0<=g>>>0){break i}F[f+676>>2]=e+(g<<2)}h=0;c=F[b+20>>2];j=F[b+16>>2];d=g<<2;i=j+d|0;e=F[b+12>>2];c=d>>>0>i>>>0?c+1|0:c;if(i>>>0>I[b+8>>2]&(e|0)<=(c|0)|(c|0)>(e|0)){break b}Oi(F[f+672>>2],j+F[b>>2]|0,d);c=F[b+20>>2];e=d+F[b+16>>2]|0;c=e>>>0>>0?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;l=F[b+12>>2];j=l;i=e+4|0;d=i>>>0<4?c+1|0:c;m=F[b+8>>2];if(m>>>0>>0&(d|0)>=(j|0)|(d|0)>(j|0)){break b}n=F[b>>2];j=n+e|0;j=G[j|0]|G[j+1|0]<<8|(G[j+2|0]<<16|G[j+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=d;if((d|0)>=(l|0)&i>>>0>=m>>>0|(d|0)>(l|0)){break b}d=G[i+n|0];e=e+5|0;c=e>>>0<5?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;if(d>>>0>31){break b}o=(z(2,j),A());F[f+20>>2]=-1;F[f+16>>2]=1140;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;c=f+16|0;e=F[f+672>>2];i=d-1|0;if(i>>>0<=29){F[c+4>>2]=d;Na(c+8|0,e,e+(g<<2)|0);J[c+20>>2]=o}j:{if(i>>>0>=30){break j}if(!Va(f+16|0,F[F[a+60>>2]+((F[a+40>>2]-F[a+36>>2]|0)/24<<2)>>2])){break j}c=F[a+40>>2];k:{if((c|0)!=F[a+44>>2]){F[c>>2]=1140;d=F[f+20>>2];F[c+16>>2]=0;F[c+8>>2]=0;F[c+12>>2]=0;F[c+4>>2]=d;g=F[f+28>>2]-F[f+24>>2]|0;if(g){if((g|0)<0){break h}d=oj(g);F[c+8>>2]=d;F[c+12>>2]=d;F[c+16>>2]=d+(g>>2<<2);e=F[f+24>>2];g=F[f+28>>2]-e|0;if((g|0)>0){d=Oi(d,e,g)+g|0}F[c+12>>2]=d}J[c+20>>2]=J[f+36>>2];F[a+40>>2]=c+24;break k}c=0;l:{m:{n:{o:{g=F[a+40>>2];h=F[a+36>>2];e=(g-h|0)/24|0;d=e+1|0;if(d>>>0<178956971){i=(F[a+44>>2]-h|0)/24|0;j=i<<1;i=i>>>0<89478485?d>>>0>j>>>0?d:j:178956970;if(i){if(i>>>0>=178956971){break o}c=oj(L(i,24))}e=L(e,24)+c|0;F[e>>2]=1140;d=F[f+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+4>>2]=d;l=F[f+24>>2];d=F[f+28>>2]-l|0;if(d){if((d|0)<0){break n}j=oj(d);F[e+8>>2]=j;F[e+16>>2]=j+(d>>2<<2);q=e,r=Oi(j,l,d)+d|0,F[q+12>>2]=r}c=L(i,24)+c|0;J[e+20>>2]=J[f+36>>2];d=e+24|0;if((g|0)==(h|0)){break m}while(1){e=e-24|0;F[e>>2]=1140;F[e+4>>2]=F[g-20>>2];i=g-16|0;F[e+8>>2]=F[i>>2];F[e+12>>2]=F[g-12>>2];j=g-8|0;F[e+16>>2]=F[j>>2];F[j>>2]=0;F[i>>2]=0;F[i+4>>2]=0;J[e+20>>2]=J[g-4>>2];g=g-24|0;if((h|0)!=(g|0)){continue}break}F[a+44>>2]=c;h=F[a+40>>2];F[a+40>>2]=d;g=F[a+36>>2];F[a+36>>2]=e;if((g|0)==(h|0)){break l}while(1){h=h-24|0;ia[F[F[h>>2]>>2]](h)|0;if((g|0)!=(h|0)){continue}break}break l}Ha();V()}Ua(1336);V()}Ha();V()}F[a+44>>2]=c;F[a+40>>2]=d;F[a+36>>2]=e}if(g){mj(g)}}h=1}F[f+16>>2]=1140;c=F[f+24>>2];if(c){F[f+28>>2]=c;mj(c)}if(!h){break c}}k=k+1|0;if((ia[F[F[a>>2]+24>>2]](a)|0)>(k|0)){continue}break}break d}i=ia[F[F[a>>2]+24>>2]](a)|0;F[f+712>>2]=0;F[f+704>>2]=0;F[f+708>>2]=0;if(i){if(i>>>0>=214748365){break g}c=L(i,20);d=oj(c);F[f+704>>2]=d;F[f+712>>2]=c+d;c=L((c-20>>>0)/20|0,20)+20|0;q=f,r=Qi(d,0,c)+c|0,F[q+708>>2]=r;while(1){c=ia[F[F[a>>2]+20>>2]](a,k)|0;d=F[F[F[(ia[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];g=F[d+28>>2];c=g-1|0;if(c>>>0<=10){c=F[(c<<2)+13616>>2]}else{c=-1}j=(c|0)>0?c:0;if(j>>>0>4){break e}c=F[f+704>>2]+L(k,20)|0;l=D[d+24|0];F[c+16>>2]=l;F[c+12>>2]=j;F[c+8>>2]=g;F[c+4>>2]=e;F[c>>2]=d;e=e+l|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}c=ia[F[F[a>>2]+20>>2]](a,0)|0;m=F[F[F[(ia[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];D[m+84|0]=1;F[m+72>>2]=F[m+68>>2];g=F[b+12>>2];c=g;d=F[b+20>>2];j=F[b+8>>2];k=F[b+16>>2];if((c|0)<=(d|0)&j>>>0<=k>>>0|(c|0)<(d|0)){break e}n=F[b>>2];p=G[n+k|0];c=d;l=k+1|0;c=l?c:c+1|0;F[b+16>>2]=l;F[b+20>>2]=c;p:{switch(p|0){case 0:q:{if(j>>>0<=l>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break q}c=d;a=k+2|0;c=a>>>0<2?c+1|0:c;F[b+16>>2]=a;F[b+20>>2]=c;c=d;d=k+6|0;c=d>>>0<6?c+1|0:c;if(d>>>0>j>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break q}a=a+n|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;_a(m,a);h=f+672|0;F[h+20>>2]=0;F[h+12>>2]=0;F[h+16>>2]=0;F[h>>2]=0;F[h+4>>2]=0;F[h+20>>2]=a;k=pb(f+16|0,f+704|0);g=0;e=fa-32|0;fa=e;F[e+24>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;a=F[b+12>>2];j=a;c=F[b+20>>2];d=c;l=F[b+16>>2];i=l+4|0;c=i>>>0<4?c+1|0:c;m=F[b+8>>2];r:{if(m>>>0>>0&(a|0)<=(c|0)|(a|0)<(c|0)){break r}n=F[b>>2];a=n+l|0;a=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;s:{t:{switch(a-2|0){case 1:if((c|0)>=(j|0)&i>>>0>=m>>>0|(c|0)>(j|0)){break r}a=D[i+n|0];c=d;d=l+5|0;c=d>>>0<5?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;F[h+8>>2]=a;if((a|0)==1){if(Mi(h,b,e+16|0)){break s}break r}Ui(1943,23,F[3451]);break r;default:Ui(1918,24,F[3451]);break r;case 0:break t}}if(!Mi(h,b,e+16|0)){break r}}F[e+8>>2]=F[e+16>>2];F[e>>2]=F[e+20>>2];a=fa-32|0;fa=a;b=F[h>>2];o=J[h+4>>2];g=a+24|0;F[g>>2]=1065353216;b=-1<0){J[g>>2]=o/M(b|0)}h=F[e+8>>2];if((h|0)!=F[e>>2]){c=F[k+28>>2];while(1){d=F[h>>2];i=F[h+4>>2];o=J[g>>2];J[a+16>>2]=o*M(F[h+8>>2]-b|0);J[a+12>>2]=o*M(i-b|0);J[a+8>>2]=o*M(d-b|0);i=F[k+16>>2];d=F[i>>2];if(!G[d+84|0]){c=F[F[d+68>>2]+(c<<2)>>2]}j=c;c=F[d+40>>2];Oi(F[F[d>>2]>>2]+L(j,c)|0,(a+8|0)+(F[i+4>>2]<<2)|0,c);c=F[k+28>>2]+1|0;F[k+28>>2]=c;h=h+12|0;if((h|0)!=F[e>>2]){continue}break}}fa=a+32|0;g=1}a=F[e+16>>2];if(a){F[e+20>>2]=a;mj(a)}fa=e+32|0;Gb(k);h=1;if(g){break e}}h=0;break e;case 1:break p;default:break e}}if(j>>>0<=l>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break e}l=G[l+n|0];c=d;m=k+2|0;c=m>>>0<2?c+1|0:c;F[b+16>>2]=m;F[b+20>>2]=c;if(l>>>0>=7){F[f>>2]=l;Wi(1795,f);break e}c=d;d=k+6|0;c=d>>>0<6?c+1|0:c;k=d;if(d>>>0>j>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break e}d=m+n|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=k;F[b+20>>2]=c;if(i){k=0;while(1){c=ia[F[F[a>>2]+20>>2]](a,k)|0;c=F[F[F[(ia[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];_a(c,d);D[c+84|0]=1;F[c+72>>2]=F[c+68>>2];k=k+1|0;if((i|0)!=(k|0)){continue}break}}a=pb(f+672|0,f+704|0);u:{v:{switch(l|0){case 1:c=sb(f+16|0,e);b=tb(c,b,a);rb(c);if(!b){break f}break u;case 2:c=wb(f+16|0,e);b=ub(c,b,a);vb(c);if(!b){break f}break u;case 3:c=wb(f+16|0,e);b=xb(c,b,a);vb(c);if(!b){break f}break u;case 4:c=Ab(f+16|0,e);b=yb(c,b,a);zb(c);if(!b){break f}break u;case 5:c=Ab(f+16|0,e);b=Bb(c,b,a);zb(c);if(!b){break f}break u;case 6:c=Ab(f+16|0,e);b=Cb(c,b,a);zb(c);if(b){break u}break f;case 0:break v;default:break f}}c=sb(f+16|0,e);b=qb(c,b,a);rb(c);if(!b){break f}}Gb(a);h=1;break e}Ha();V()}Ha();V()}Gb(a)}a=F[f+704>>2];if(!a){break a}F[f+708>>2]=a;mj(a);break a}if(F[a+52>>2]==F[a+48>>2]){h=1;break b}k=0;while(1){if(!Ib(1,f+16|0,b)){break c}h=1;c=F[a+48>>2];d=F[f+16>>2];F[c+(k<<2)>>2]=d>>>1^0-(d&1);k=k+1|0;if(k>>>0>2]-c>>2>>>0){continue}break}break b}h=0}a=F[f+672>>2];if(!a){break a}F[f+676>>2]=a;mj(a)}fa=f+720|0;return h|0}function qb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?d+1|0:d;j=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=j+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=h;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!h){return 1}h=0;F[a+8>>2]=0;if(!ce(a+16|0,b)){break a}if(!ce(a+36|0,b)){break a}if(!ce(a+56|0,b)){break a}if(!ce(a+76|0,b)){break a}r=F[a+4>>2];i=c;b=0;c=0;e=fa-32|0;fa=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=oj(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;Qi(b,0,d);F[e+12>>2]=c}d=F[f+120>>2];h=F[d>>2];if(h){F[d+4>>2]=h;mj(h);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=oj(a);F[e+8>>2]=g;b=a+g|0;F[e+16>>2]=b;Qi(g,0,a);F[e+12>>2]=b}a=F[f+132>>2];c=F[a>>2];if(c){F[a+4>>2]=c;mj(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=r;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}while(1){k=F[e+12>>2];d=F[e+24>>2];g=a-1|0;b=d+g|0;c=(b>>>0)/341|0;c=F[k+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;b=F[c+8>>2];h=F[c+4>>2];j=F[c>>2];F[e+28>>2]=g;c=F[e+16>>2];g=c-k|0;if(((g?L(g>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){mj(F[c-4>>2]);F[e+16>>2]=F[e+16>>2]-4}d=0;if(j>>>0>r>>>0){break e}a=F[f+12>>2];g=(h|0)==(a-1|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}l=L(b,12);m=l+F[f+132>>2]|0;k=l+F[f+120>>2]|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){if(!j){break g}m=0;a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=j+F[i+28>>2];F[f+8>>2]=a+j;break g}while(1){h=0;h:{if((a|0)==(g|0)){break h}while(1){d=L(h,20)+a|0;c=F[k>>2]+(F[d+4>>2]<<2)|0;l=F[d>>2];g=F[d+12>>2];i:{if(g>>>0>3){break i}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break i}a=0;while(1){b=Oi(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break h}b=a;a=F[l+40>>2];Oi(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((j|0)==(m|0)){break g}a=F[i+16>>2];g=F[i+20>>2];continue}}j:{k:{l:{m:{if(j>>>0<=2){c=F[f+108>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+120>>2];n=b+1|0;m=L(n,12);d=a+m|0;if((d|0)!=(k|0)){Na(d,F[k>>2],F[k+4>>2]);a=F[f+120>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>2];h=32-c|0;n:{if((a|0)<=(h|0)){h=F[f+28>>2];if((h|0)==F[f+20>>2]){d=0;break n}d=F[h>>2];k=a+c|0;F[f+32>>2]=k;d=d<>>32-a|0;if((k|0)!=32){break n}F[f+32>>2]=0;F[f+28>>2]=h+4;break n}d=F[f+28>>2];k=d+4|0;if((k|0)==F[f+20>>2]){d=0;break n}q=F[d>>2];F[f+28>>2]=k;h=a-h|0;F[f+32>>2]=h;d=F[d+4>>2]>>>32-h|q<>>32-a}a=(j>>>1|0)-d|0;d=j-a|0;o:{if((d|0)==(a|0)){d=a;break o}c=F[f+88>>2];if((c|0)==F[f+80>>2]){break l}h=F[c>>2];j=F[f+92>>2];k=j+1|0;F[f+92>>2]=k;h=h&-2147483648>>>j;p:{if((k|0)==32){F[f+92>>2]=0;F[f+88>>2]=c+4;if(h){break p}break l}if(!h){break l}}}h=d;d=a;break k}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break j}h=a}a=F[f+132>>2];c=a+l|0;j=F[c>>2];k=j+o|0;F[k>>2]=F[k>>2]+1;Na(a+m|0,j,F[c+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];j=F[e+16>>2]-c|0;if((a|0)==((j?L(j>>2,341)-1|0:0)|0)){Nb(e+8|0);c=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}j=c;c=(a>>>0)/341|0;a=F[j+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;F[a+8>>2]=b;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!h){break g}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){Nb(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=h;a=F[e+28>>2]+1|0;F[e+28>>2]=a;break f}o=0;if(!j){break g}while(1){if(a){h=F[f+40>>2];d=F[f+96>>2];q=F[f+108>>2];t=F[k>>2];u=F[m>>2];a=0;while(1){g=q+(a<<2)|0;F[d+(F[g>>2]<<2)>>2]=0;c=F[g>>2]<<2;b=F[f>>2]-F[c+u>>2]|0;q:{if(!b){break q}c=c+d|0;l=F[f+52>>2];p=32-l|0;if((p|0)>=(b|0)){n=F[f+48>>2];if((n|0)==(h|0)){F[c>>2]=0;break q}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+52>>2]|0;F[f+52>>2]=b;if((b|0)!=32){break q}F[f+52>>2]=0;F[f+48>>2]=n+4;break q}n=F[f+48>>2];s=n+4|0;if((h|0)==(s|0)){F[c>>2]=0;break q}v=F[n>>2];F[f+48>>2]=s;p=b-p|0;F[f+52>>2]=p;F[c>>2]=F[n+4>>2]>>>32-p|v<>>32-b}b=F[g>>2]<<2;c=b+d|0;F[c>>2]=F[c>>2]|F[b+t>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];r:{if((a|0)==F[i+20>>2]){break r}while(1){d=L(h,20)+a|0;c=F[f+96>>2]+(F[d+4>>2]<<2)|0;l=F[d>>2];g=F[d+12>>2];s:{if(g>>>0>3){break s}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break s}a=0;while(1){b=Oi(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break r}b=a;a=F[l+40>>2];Oi(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((j|0)==(o|0)){break g}a=F[f+12>>2];continue}}a=F[e+28>>2]}if(a){continue}break}d=1}F[e+28>>2]=0;g=F[e+16>>2];a=F[e+12>>2];b=g-a|0;if(b>>>0>=9){while(1){mj(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;g=F[e+16>>2];b=g-a|0;if(b>>>0>8){continue}break}}c=170;t:{switch((b>>>2|0)-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break t}}u:{if((a|0)==(g|0)){break u}while(1){mj(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break u}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){mj(a)}fa=e+32|0;break b}Ha();V()}Ha();V()}h=d}return h}function tb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?f+1|0:f;k=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=k+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=g;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!g){return 1}g=0;F[a+8>>2]=0;if(!ce(a+16|0,b)){break a}if(!ce(a+36|0,b)){break a}if(!ce(a+56|0,b)){break a}if(!ce(a+76|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;e=fa-32|0;fa=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=oj(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;Qi(b,0,d);F[e+12>>2]=c}d=F[f+120>>2];g=F[d>>2];if(g){F[d+4>>2]=g;mj(g);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;h=oj(a);F[e+8>>2]=h;b=a+h|0;F[e+16>>2]=b;Qi(h,0,a);F[e+12>>2]=b}a=F[f+132>>2];c=F[a>>2];if(c){F[a+4>>2]=c;mj(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;h=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=h;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}while(1){j=F[e+12>>2];d=F[e+24>>2];h=a-1|0;b=d+h|0;c=(b>>>0)/341|0;b=F[j+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;c=F[b+8>>2];g=F[b+4>>2];k=F[b>>2];F[e+28>>2]=h;b=F[e+16>>2];h=b-j|0;if(((h?L(h>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){mj(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(k>>>0>p>>>0){d=0;break e}d=0;a=F[f+12>>2];h=(g|0)==(a-1|0)?0:g+1|0;if(h>>>0>=a>>>0){break e}a=F[f+120>>2];b=L(c,12);m=a+b|0;f:{g:{j=h<<2;q=b+F[f+132>>2]|0;g=F[f>>2]-F[j+F[q>>2]>>2]|0;if(!g){if(!k){break g}a=F[i+16>>2];h=F[i+20>>2];if((a|0)==(h|0)){a=F[f+8>>2];F[i+28>>2]=k+F[i+28>>2];F[f+8>>2]=a+k;break g}while(1){g=0;h:{if((a|0)==(h|0)){break h}while(1){j=L(g,20)+a|0;c=F[m>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];h=F[j+12>>2];i:{if(h>>>0>3){break i}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break i}a=0;while(1){b=Oi(b,(a<<2)+c|0,h);h=F[j+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break h}b=a;a=F[l+40>>2];Oi(F[F[l>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[i+16>>2];if(g>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;d=d+1|0;if((k|0)==(d|0)){break g}a=F[i+16>>2];h=F[i+20>>2];continue}}j:{k:{l:{m:{if(k>>>0<=2){c=F[f+108>>2];F[c>>2]=h;b=1;a=F[f+12>>2];if(a>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}d=a;a=b+12|0;Na(d+a|0,F[m>>2],F[m+4>>2]);a=j+F[a+F[f+120>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2];l=32-d|0;n:{if((a|0)<=(l|0)){g=F[f+28>>2];if((g|0)==F[f+20>>2]){d=0;break n}l=F[g>>2];m=a+d|0;F[f+32>>2]=m;d=l<>>32-a|0;if((m|0)!=32){break n}F[f+32>>2]=0;F[f+28>>2]=g+4;break n}g=F[f+28>>2];m=g+4|0;if((m|0)==F[f+20>>2]){d=0;break n}n=F[g>>2];F[f+28>>2]=m;l=a-l|0;F[f+32>>2]=l;d=F[g+4>>2]>>>32-l|n<>>32-a}l=c+1|0;a=(k>>>1|0)-d|0;d=k-a|0;o:{if((d|0)==(a|0)){d=a;break o}g=F[f+88>>2];if((g|0)==F[f+80>>2]){break l}k=F[g>>2];m=F[f+92>>2];n=m+1|0;F[f+92>>2]=n;k=k&-2147483648>>>m;p:{if((n|0)==32){F[f+92>>2]=0;F[f+88>>2]=g+4;if(k){break p}break l}if(!k){break l}}}g=d;d=a;break k}while(1){h=(a-1|0)==(h|0)?0:h+1|0;F[c+(b<<2)>>2]=h;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break j}g=a}a=F[f+132>>2];b=a+b|0;k=F[b>>2];j=k+j|0;F[j>>2]=F[j>>2]+1;Na(a+L(l,12)|0,k,F[b+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];k=F[e+16>>2]-b|0;if((a|0)==((k?L(k>>2,341)-1|0:0)|0)){Nb(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}k=b;b=(a>>>0)/341|0;a=F[k+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=h;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!g){break g}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){Nb(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=h;F[a>>2]=g;a=F[e+28>>2]+1|0;F[e+28>>2]=a;break f}if(!k){break g}while(1){if(a){h=F[f+40>>2];g=F[f+96>>2];s=F[f+108>>2];t=F[m>>2];u=F[q>>2];a=0;while(1){j=(a<<2)+s|0;F[g+(F[j>>2]<<2)>>2]=0;c=F[j>>2]<<2;b=F[f>>2]-F[c+u>>2]|0;q:{if(!b){break q}c=c+g|0;l=F[f+52>>2];o=32-l|0;if((o|0)>=(b|0)){n=F[f+48>>2];if((n|0)==(h|0)){F[c>>2]=0;break q}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+52>>2]|0;F[f+52>>2]=b;if((b|0)!=32){break q}F[f+52>>2]=0;F[f+48>>2]=n+4;break q}n=F[f+48>>2];r=n+4|0;if((h|0)==(r|0)){F[c>>2]=0;break q}v=F[n>>2];F[f+48>>2]=r;o=b-o|0;F[f+52>>2]=o;F[c>>2]=F[n+4>>2]>>>32-o|v<>>32-b}b=F[j>>2]<<2;c=b+g|0;F[c>>2]=F[c>>2]|F[b+t>>2];a=a+1|0;if(a>>>0>2]){continue}break}}g=0;a=F[i+16>>2];r:{if((a|0)==F[i+20>>2]){break r}while(1){j=L(g,20)+a|0;c=F[f+96>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];h=F[j+12>>2];s:{if(h>>>0>3){break s}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break s}a=0;while(1){b=Oi(b,(a<<2)+c|0,h);h=F[j+12>>2];b=b+h|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break r}b=a;a=F[l+40>>2];Oi(F[F[l>>2]>>2]+L(b,a)|0,c,a);g=g+1|0;a=F[i+16>>2];if(g>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;d=d+1|0;if((k|0)==(d|0)){break g}a=F[f+12>>2];continue}}a=F[e+28>>2]}if(a){continue}break}d=1}F[e+28>>2]=0;h=F[e+16>>2];a=F[e+12>>2];b=h-a|0;if(b>>>0>=9){while(1){mj(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;h=F[e+16>>2];b=h-a|0;if(b>>>0>8){continue}break}}c=170;t:{switch((b>>>2|0)-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break t}}u:{if((a|0)==(h|0)){break u}while(1){mj(F[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break u}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){mj(a)}fa=e+32|0;break b}Ha();V()}Ha();V()}g=d}return g}function ub(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=F[b+12>>2];d=F[b+20>>2];i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;a:{if(e>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){break a}d=i+F[b>>2]|0;F[a>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[b+20>>2];f=d;e=F[b+16>>2];i=e+4|0;d=i>>>0<4?d+1|0:d;j=i;F[b+16>>2]=i;F[b+20>>2]=d;if(I[a>>2]>32){break a}i=F[b+12>>2];d=f;f=e+8|0;d=f>>>0<8?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(i|0)|(d|0)>(i|0)){break a}d=j+F[b>>2]|0;h=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=h;d=F[b+20>>2];f=F[b+16>>2]+4|0;d=f>>>0<4?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(!h){return 1}h=0;F[a+8>>2]=0;if(!de(a+16|0,b)){break a}if(!ce(a+32|0,b)){break a}if(!ce(a+52|0,b)){break a}if(!ce(a+72|0,b)){break a}q=F[a+4>>2];i=c;b=0;c=0;e=fa-32|0;fa=e;f=a;a=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}d=a<<2;b=oj(d);F[e+8>>2]=b;c=b+d|0;F[e+16>>2]=c;Qi(b,0,d);F[e+12>>2]=c}d=F[f+116>>2];h=F[d>>2];if(h){F[d+4>>2]=h;mj(h);F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=F[e+12>>2];b=F[e+8>>2];a=F[f+12>>2]}F[d+4>>2]=c;F[d>>2]=b;F[d+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=oj(a);F[e+8>>2]=g;b=a+g|0;F[e+16>>2]=b;Qi(g,0,a);F[e+12>>2]=b}a=F[f+128>>2];c=F[a>>2];if(c){F[a+4>>2]=c;mj(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;d=1;b=F[e+28>>2];a=b+1|0;F[e+28>>2]=a;e:{if(a>>>0>>0){break e}s=f+16|0;while(1){l=F[e+12>>2];d=F[e+24>>2];g=a-1|0;b=d+g|0;c=(b>>>0)/341|0;c=F[l+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;b=F[c+8>>2];h=F[c+4>>2];j=F[c>>2];F[e+28>>2]=g;c=F[e+16>>2];g=c-l|0;if(((g?L(g>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){mj(F[c-4>>2]);F[e+16>>2]=F[e+16>>2]-4}d=0;if(j>>>0>q>>>0){break e}a=F[f+12>>2];g=(a-1|0)==(h|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}c=L(b,12);m=c+F[f+128>>2]|0;l=c+F[f+116>>2]|0;f:{k=g<<2;h=F[f>>2]-F[k+F[m>>2]>>2]|0;if(!h){if(!j){break f}m=0;a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=j+F[i+28>>2];F[f+8>>2]=a+j;break f}while(1){h=0;g:{if((a|0)==(g|0)){break g}while(1){d=L(h,20)+a|0;c=F[l>>2]+(F[d+4>>2]<<2)|0;k=F[d>>2];g=F[d+12>>2];h:{if(g>>>0>3){break h}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break h}a=0;while(1){b=Oi(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[k+84|0]?a:F[F[k+68>>2]+(a<<2)>>2];if(a>>>0>=I[k+80>>2]){break g}b=a;a=F[k+40>>2];Oi(F[F[k>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((j|0)==(m|0)){break f}a=F[i+16>>2];g=F[i+20>>2];continue}}i:{j:{k:{l:{if(j>>>0<=2){c=F[f+104>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break l}break i}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+116>>2];o=b+1|0;m=L(o,12);d=a+m|0;if((d|0)!=(l|0)){Na(d,F[l>>2],F[l+4>>2]);a=F[f+116>>2]}a=k+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=0;ge(s,O(j)^31,e+4|0);a=(j>>>1|0)-F[e+4>>2]|0;d=j-a|0;m:{if((d|0)==(a|0)){d=a;break m}h=F[f+84>>2];if((h|0)==F[f+76>>2]){break k}j=F[h>>2];l=F[f+88>>2];n=l+1|0;F[f+88>>2]=n;j=j&-2147483648>>>l;n:{if((n|0)==32){F[f+88>>2]=0;F[f+84>>2]=h+4;if(j){break n}break k}if(!j){break k}}}h=d;d=a;break j}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break i}h=a}a=F[f+128>>2];c=a+c|0;j=F[c>>2];l=j+k|0;F[l>>2]=F[l>>2]+1;Na(a+m|0,j,F[c+4>>2]);if(d){a=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];j=F[e+16>>2]-c|0;if((a|0)==((j?L(j>>2,341)-1|0:0)|0)){Nb(e+8|0);c=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}j=c;c=(a>>>0)/341|0;a=F[j+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;F[a+8>>2]=b;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!h){break f}a=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];c=F[e+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){Nb(e+8|0);b=F[e+12>>2];a=F[e+24>>2]+F[e+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=o;F[a+4>>2]=g;F[a>>2]=h;F[e+28>>2]=F[e+28>>2]+1;break f}o=0;if(!j){break f}while(1){if(a){h=F[f+36>>2];d=F[f+92>>2];t=F[f+104>>2];u=F[l>>2];v=F[m>>2];a=0;while(1){g=(a<<2)+t|0;F[d+(F[g>>2]<<2)>>2]=0;c=F[g>>2]<<2;b=F[f>>2]-F[c+v>>2]|0;o:{if(!b){break o}c=c+d|0;k=F[f+48>>2];p=32-k|0;if((p|0)>=(b|0)){n=F[f+44>>2];if((n|0)==(h|0)){F[c>>2]=0;break o}F[c>>2]=F[n>>2]<>>32-b;b=b+F[f+48>>2]|0;F[f+48>>2]=b;if((b|0)!=32){break o}F[f+48>>2]=0;F[f+44>>2]=n+4;break o}n=F[f+44>>2];r=n+4|0;if((h|0)==(r|0)){F[c>>2]=0;break o}w=F[n>>2];F[f+44>>2]=r;p=b-p|0;F[f+48>>2]=p;F[c>>2]=F[n+4>>2]>>>32-p|w<>>32-b}b=F[g>>2]<<2;c=b+d|0;F[c>>2]=F[c>>2]|F[b+u>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];p:{if((a|0)==F[i+20>>2]){break p}while(1){d=L(h,20)+a|0;c=F[f+92>>2]+(F[d+4>>2]<<2)|0;k=F[d>>2];g=F[d+12>>2];q:{if(g>>>0>3){break q}b=F[i+12>>2];if(!F[d+16>>2]){c=b;break q}a=0;while(1){b=Oi(b,(a<<2)+c|0,g);g=F[d+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[k+84|0]?a:F[F[k+68>>2]+(a<<2)>>2];if(a>>>0>=I[k+80>>2]){break p}b=a;a=F[k+40>>2];Oi(F[F[k>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((j|0)==(o|0)){break f}a=F[f+12>>2];continue}}a=F[e+28>>2];if(a){continue}break}d=1}F[e+28>>2]=0;g=F[e+16>>2];a=F[e+12>>2];b=g-a|0;if(b>>>0>=9){while(1){mj(F[a>>2]);a=F[e+12>>2]+4|0;F[e+12>>2]=a;g=F[e+16>>2];b=g-a|0;if(b>>>0>8){continue}break}}c=170;r:{switch((b>>>2|0)-1|0){case 1:c=341;case 0:F[e+24>>2]=c;break;default:break r}}s:{if((a|0)==(g|0)){break s}while(1){mj(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break s}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){mj(a)}fa=e+32|0;break b}Ha();V()}Ha();V()}h=d}return h}function yb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F[b+12>>2];f=F[b+20>>2];e=F[b+16>>2];g=e+4|0;f=g>>>0<4?f+1|0:f;a:{if(g>>>0>I[b+8>>2]&(f|0)>=(h|0)|(f|0)>(h|0)){break a}f=e+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];h=f;g=F[b+16>>2];e=g+4|0;f=e>>>0<4?f+1|0:f;i=e;F[b+16>>2]=e;F[b+20>>2]=f;if(I[a>>2]>32){break a}e=F[b+12>>2];f=h;h=g+8|0;f=h>>>0<8?f+1|0:f;if((e|0)<=(f|0)&h>>>0>I[b+8>>2]|(e|0)<(f|0)){break a}d=i+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!Fb(a+16|0,b)){break a}if(!ce(a+544|0,b)){break a}if(!ce(a+564|0,b)){break a}if(!ce(a+584|0,b)){break a}q=F[a+4>>2];h=c;c=0;b=0;e=fa-32|0;fa=e;f=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;c=oj(a);F[e+8>>2]=c;b=a+c|0;F[e+16>>2]=b;Qi(c,0,a);F[e+12>>2]=b}a=F[f+628>>2];g=F[a>>2];if(g){F[a+4>>2]=g;mj(g);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[f+12>>2];c=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=c;F[a+8>>2]=F[e+16>>2];c=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;g=oj(a);F[e+8>>2]=g;c=a+g|0;F[e+16>>2]=c;Qi(g,0,a);F[e+12>>2]=c}a=F[f+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;mj(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];c=F[e+12>>2]}F[a+4>>2]=c;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){l=F[e+12>>2];b=F[e+24>>2];g=d-1|0;a=b+g|0;c=(a>>>0)/341|0;a=F[l+(c<<2)>>2]+L(a-L(c,341)|0,12)|0;j=F[a+8>>2];c=F[a+4>>2];i=F[a>>2];F[e+28>>2]=g;a=F[e+16>>2];g=a-l|0;if(((g?L(g>>2,341)-1|0:0)-(b+d|0)|0)+1>>>0>=682){mj(F[a-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(i>>>0>q>>>0){break e}a=F[f+12>>2];g=(a-1|0)==(c|0)?0:c+1|0;if(g>>>0>=a>>>0){break e}k=L(j,12);m=k+F[f+640>>2]|0;l=k+F[f+628>>2]|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){m=0;if(!i){break g}while(1){a=0;d=F[h+16>>2];h:{if((d|0)==F[h+20>>2]){break h}while(1){j=L(a,20)+d|0;b=F[l>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];i:{if(g>>>0>3){break i}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break i}d=0;while(1){c=Oi(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}c=F[k+40>>2];Oi(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((i|0)!=(m|0)){continue}break}break g}j:{k:{l:{m:{if(i>>>0<=2){a=F[f+616>>2];F[a>>2]=g;c=1;d=F[f+12>>2];if(d>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];n=j+1|0;m=L(n,12);b=a+m|0;if((b|0)!=(l|0)){Na(b,F[l>>2],F[l+4>>2]);a=F[f+628>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-c|0;d=i-a|0;n:{if((d|0)==(a|0)){b=a;break n}b=F[f+596>>2];if((b|0)==F[f+588>>2]){break l}c=F[b>>2];i=F[f+600>>2];l=i+1|0;F[f+600>>2]=l;c=c&-2147483648>>>i;o:{if((l|0)==32){F[f+600>>2]=0;F[f+596>>2]=b+4;if(c){break o}break l}if(!c){break l}}b=d}d=a;break k}while(1){g=(d-1|0)==(g|0)?0:g+1|0;F[a+(c<<2)>>2]=g;c=c+1|0;d=F[f+12>>2];if(c>>>0>>0){continue}break}break j}b=a}a=F[f+640>>2];c=a+k|0;i=F[c>>2];l=i+o|0;F[l>>2]=F[l>>2]+1;Na(a+m|0,i,F[c+4>>2]);if(d){c=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];i=F[e+16>>2]-a|0;if((c|0)==((i?L(i>>2,341)-1|0:0)|0)){Nb(e+8|0);c=F[e+24>>2]+F[e+28>>2]|0;i=F[e+12>>2]}else{i=a}a=(c>>>0)/341|0;a=F[i+(a<<2)>>2]+L(c-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}d=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];a=F[e+16>>2]-c|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){Nb(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;c=F[e+12>>2]}a=(d>>>0)/341|0;a=F[c+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}o=0;if(!i){break g}while(1){if(d){g=F[f+548>>2];c=F[f+604>>2];s=F[f+616>>2];t=F[l>>2];u=F[m>>2];d=0;while(1){j=(d<<2)+s|0;F[c+(F[j>>2]<<2)>>2]=0;b=F[j>>2]<<2;a=F[f>>2]-F[b+u>>2]|0;p:{if(!a){break p}b=b+c|0;k=F[f+560>>2];p=32-k|0;if((p|0)>=(a|0)){n=F[f+556>>2];if((n|0)==(g|0)){F[b>>2]=0;break p}F[b>>2]=F[n>>2]<>>32-a;a=a+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break p}F[f+560>>2]=0;F[f+556>>2]=n+4;break p}n=F[f+556>>2];r=n+4|0;if((g|0)==(r|0)){F[b>>2]=0;break p}v=F[n>>2];F[f+556>>2]=r;p=a-p|0;F[f+560>>2]=p;F[b>>2]=F[n+4>>2]>>>32-p|v<>>32-a}a=F[j>>2]<<2;b=a+c|0;F[b>>2]=F[b>>2]|F[a+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=0;d=F[h+16>>2];q:{if((d|0)==F[h+20>>2]){break q}while(1){j=L(a,20)+d|0;b=F[f+604>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];r:{if(g>>>0>3){break r}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break r}d=0;while(1){c=Oi(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}c=F[k+40>>2];Oi(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((i|0)==(o|0)){break g}d=F[f+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;g=F[e+16>>2];d=F[e+12>>2];c=g-d|0;if(c>>>0>=9){while(1){mj(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;g=F[e+16>>2];c=g-d|0;if(c>>>0>8){continue}break}}a=170;s:{switch((c>>>2|0)-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(g|0)){break t}while(1){mj(F[d>>2]);d=d+4|0;if((g|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break t}F[e+16>>2]=a+(((a-c|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){mj(a)}fa=e+32|0;break b}Ha();V()}Ha();V()}d=b}return d}function xb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=F[b+12>>2];e=F[b+20>>2];i=F[b+16>>2];d=i+4|0;e=d>>>0<4?e+1|0:e;a:{if(d>>>0>I[b+8>>2]&(e|0)>=(f|0)|(e|0)>(f|0)){break a}e=i+F[b>>2]|0;F[a>>2]=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);e=F[b+20>>2];f=e;d=F[b+16>>2];i=d+4|0;e=i>>>0<4?f+1|0:f;k=i;F[b+16>>2]=i;F[b+20>>2]=e;if(I[a>>2]>32){break a}i=F[b+12>>2];e=f;f=d+8|0;e=f>>>0<8?e+1|0:e;if(f>>>0>I[b+8>>2]&(e|0)>=(i|0)|(e|0)>(i|0)){break a}e=k+F[b>>2]|0;h=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[a+4>>2]=h;e=F[b+20>>2];f=F[b+16>>2]+4|0;e=f>>>0<4?e+1|0:e;F[b+16>>2]=f;F[b+20>>2]=e;if(!h){return 1}h=0;F[a+8>>2]=0;if(!de(a+16|0,b)){break a}if(!ce(a+32|0,b)){break a}if(!ce(a+52|0,b)){break a}if(!ce(a+72|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;d=fa-32|0;fa=d;f=a;a=F[a+12>>2];F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;b:{c:{if(a){if(a>>>0>=1073741824){break c}e=a<<2;b=oj(e);F[d+8>>2]=b;c=b+e|0;F[d+16>>2]=c;Qi(b,0,e);F[d+12>>2]=c}e=F[f+116>>2];h=F[e>>2];if(h){F[e+4>>2]=h;mj(h);F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=F[d+12>>2];b=F[d+8>>2];a=F[f+12>>2]}F[e+4>>2]=c;F[e>>2]=b;F[e+8>>2]=F[d+16>>2];b=0;F[d+16>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;d:{if(a){if(a>>>0>=1073741824){break d}a=a<<2;g=oj(a);F[d+8>>2]=g;b=a+g|0;F[d+16>>2]=b;Qi(g,0,a);F[d+12>>2]=b}a=F[f+128>>2];c=F[a>>2];if(c){F[a+4>>2]=c;mj(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[d+8>>2];b=F[d+12>>2]}F[a+4>>2]=b;F[a>>2]=g;F[a+8>>2]=F[d+16>>2];F[d+24>>2]=0;F[d+28>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;Nb(d+8|0);a=F[d+24>>2]+F[d+28>>2]|0;b=(a>>>0)/341|0;a=F[F[d+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;e=1;b=F[d+28>>2];a=b+1|0;F[d+28>>2]=a;e:{if(a>>>0>>0){break e}s=f+16|0;while(1){j=F[d+12>>2];e=F[d+24>>2];g=a-1|0;b=e+g|0;c=(b>>>0)/341|0;b=F[j+(c<<2)>>2]+L(b-L(c,341)|0,12)|0;c=F[b+8>>2];h=F[b+4>>2];k=F[b>>2];F[d+28>>2]=g;b=F[d+16>>2];g=b-j|0;if(((g?L(g>>2,341)-1|0:0)-(a+e|0)|0)+1>>>0>=682){mj(F[b-4>>2]);F[d+16>>2]=F[d+16>>2]-4}if(k>>>0>p>>>0){e=0;break e}e=0;a=F[f+12>>2];g=(h|0)==(a-1|0)?0:h+1|0;if(g>>>0>=a>>>0){break e}a=F[f+116>>2];b=L(c,12);n=a+b|0;f:{j=g<<2;q=b+F[f+128>>2]|0;h=F[f>>2]-F[j+F[q>>2]>>2]|0;if(!h){if(!k){break f}a=F[i+16>>2];g=F[i+20>>2];if((a|0)==(g|0)){a=F[f+8>>2];F[i+28>>2]=k+F[i+28>>2];F[f+8>>2]=a+k;break f}while(1){h=0;g:{if((a|0)==(g|0)){break g}while(1){j=L(h,20)+a|0;c=F[n>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];g=F[j+12>>2];h:{if(g>>>0>3){break h}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break h}a=0;while(1){b=Oi(b,(a<<2)+c|0,g);g=F[j+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break g}b=a;a=F[l+40>>2];Oi(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((k|0)==(e|0)){break f}a=F[i+16>>2];g=F[i+20>>2];continue}}i:{j:{k:{l:{if(k>>>0<=2){c=F[f+104>>2];F[c>>2]=g;b=1;a=F[f+12>>2];if(a>>>0>1){break l}break i}if(I[f+8>>2]>I[f+4>>2]){break e}e=a;a=b+12|0;Na(e+a|0,F[n>>2],F[n+4>>2]);a=j+F[a+F[f+116>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>2]=0;ge(s,O(k)^31,d+4|0);l=c+1|0;a=(k>>>1|0)-F[d+4>>2]|0;e=k-a|0;m:{if((e|0)==(a|0)){e=a;break m}h=F[f+84>>2];if((h|0)==F[f+76>>2]){break k}k=F[h>>2];n=F[f+88>>2];m=n+1|0;F[f+88>>2]=m;k=k&-2147483648>>>n;n:{if((m|0)==32){F[f+88>>2]=0;F[f+84>>2]=h+4;if(k){break n}break k}if(!k){break k}}}h=e;e=a;break j}while(1){g=(a-1|0)==(g|0)?0:g+1|0;F[c+(b<<2)>>2]=g;a=F[f+12>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}break i}h=a}a=F[f+128>>2];b=a+b|0;k=F[b>>2];j=k+j|0;F[j>>2]=F[j>>2]+1;Na(a+L(l,12)|0,k,F[b+4>>2]);if(e){a=F[d+28>>2]+F[d+24>>2]|0;b=F[d+12>>2];k=F[d+16>>2]-b|0;if((a|0)==((k?L(k>>2,341)-1|0:0)|0)){Nb(d+8|0);b=F[d+12>>2];a=F[d+24>>2]+F[d+28>>2]|0}k=b;b=(a>>>0)/341|0;a=F[k+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=g;F[a>>2]=e;F[d+28>>2]=F[d+28>>2]+1}if(!h){break f}a=F[d+28>>2]+F[d+24>>2]|0;b=F[d+12>>2];c=F[d+16>>2]-b|0;if((a|0)==((c?L(c>>2,341)-1|0:0)|0)){Nb(d+8|0);b=F[d+12>>2];a=F[d+24>>2]+F[d+28>>2]|0}c=b;b=(a>>>0)/341|0;a=F[c+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=g;F[a>>2]=h;F[d+28>>2]=F[d+28>>2]+1;break f}if(!k){break f}while(1){if(a){g=F[f+36>>2];h=F[f+92>>2];t=F[f+104>>2];u=F[n>>2];v=F[q>>2];a=0;while(1){j=(a<<2)+t|0;F[h+(F[j>>2]<<2)>>2]=0;c=F[j>>2]<<2;b=F[f>>2]-F[c+v>>2]|0;o:{if(!b){break o}c=c+h|0;l=F[f+48>>2];o=32-l|0;if((o|0)>=(b|0)){m=F[f+44>>2];if((m|0)==(g|0)){F[c>>2]=0;break o}F[c>>2]=F[m>>2]<>>32-b;b=b+F[f+48>>2]|0;F[f+48>>2]=b;if((b|0)!=32){break o}F[f+48>>2]=0;F[f+44>>2]=m+4;break o}m=F[f+44>>2];r=m+4|0;if((g|0)==(r|0)){F[c>>2]=0;break o}w=F[m>>2];F[f+44>>2]=r;o=b-o|0;F[f+48>>2]=o;F[c>>2]=F[m+4>>2]>>>32-o|w<>>32-b}b=F[j>>2]<<2;c=b+h|0;F[c>>2]=F[c>>2]|F[b+u>>2];a=a+1|0;if(a>>>0>2]){continue}break}}h=0;a=F[i+16>>2];p:{if((a|0)==F[i+20>>2]){break p}while(1){j=L(h,20)+a|0;c=F[f+92>>2]+(F[j+4>>2]<<2)|0;l=F[j>>2];g=F[j+12>>2];q:{if(g>>>0>3){break q}b=F[i+12>>2];if(!F[j+16>>2]){c=b;break q}a=0;while(1){b=Oi(b,(a<<2)+c|0,g);g=F[j+12>>2];b=b+g|0;a=a+1|0;if(a>>>0>2]){continue}break}c=F[i+12>>2]}a=F[i+28>>2];a=G[l+84|0]?a:F[F[l+68>>2]+(a<<2)>>2];if(a>>>0>=I[l+80>>2]){break p}b=a;a=F[l+40>>2];Oi(F[F[l>>2]>>2]+L(b,a)|0,c,a);h=h+1|0;a=F[i+16>>2];if(h>>>0<(F[i+20>>2]-a|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;e=e+1|0;if((k|0)==(e|0)){break f}a=F[f+12>>2];continue}}a=F[d+28>>2];if(a){continue}break}e=1}F[d+28>>2]=0;g=F[d+16>>2];a=F[d+12>>2];b=g-a|0;if(b>>>0>=9){while(1){mj(F[a>>2]);a=F[d+12>>2]+4|0;F[d+12>>2]=a;g=F[d+16>>2];b=g-a|0;if(b>>>0>8){continue}break}}c=170;r:{switch((b>>>2|0)-1|0){case 1:c=341;case 0:F[d+24>>2]=c;break;default:break r}}s:{if((a|0)==(g|0)){break s}while(1){mj(F[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=F[d+16>>2];b=F[d+12>>2];if((a|0)==(b|0)){break s}F[d+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[d+8>>2];if(a){mj(a)}fa=d+32|0;break b}Ha();V()}Ha();V()}h=e}return h}function Bb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=F[b+12>>2];f=F[b+20>>2];i=F[b+16>>2];e=i+4|0;f=e>>>0<4?f+1|0:f;a:{if((g|0)<=(f|0)&e>>>0>I[b+8>>2]|(g|0)<(f|0)){break a}f=i+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];g=f;e=F[b+16>>2];i=e+4|0;f=i>>>0<4?g+1|0:g;j=i;F[b+16>>2]=i;F[b+20>>2]=f;if(I[a>>2]>32){break a}i=F[b+12>>2];f=g;g=e+8|0;f=g>>>0<8?f+1|0:f;if(g>>>0>I[b+8>>2]&(f|0)>=(i|0)|(f|0)>(i|0)){break a}d=j+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];g=F[b+16>>2]+4|0;d=g>>>0<4?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!Fb(a+16|0,b)){break a}if(!ce(a+544|0,b)){break a}if(!ce(a+564|0,b)){break a}if(!ce(a+584|0,b)){break a}p=F[a+4>>2];i=c;b=0;c=0;e=fa-32|0;fa=e;g=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;b=oj(a);F[e+8>>2]=b;c=a+b|0;F[e+16>>2]=c;Qi(b,0,a);F[e+12>>2]=c}a=F[g+628>>2];f=F[a>>2];if(f){F[a+4>>2]=f;mj(f);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[g+12>>2];c=F[e+12>>2];b=F[e+8>>2]}F[a+4>>2]=c;F[a>>2]=b;F[a+8>>2]=F[e+16>>2];b=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;h=oj(a);F[e+8>>2]=h;b=a+h|0;F[e+16>>2]=b;Qi(h,0,a);F[e+12>>2]=b}a=F[g+640>>2];c=F[a>>2];if(c){F[a+4>>2]=c;mj(c);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;h=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=h;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=p;c=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){h=F[e+12>>2];c=F[e+24>>2];f=d-1|0;a=c+f|0;b=(a>>>0)/341|0;a=F[h+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;l=F[a+8>>2];b=F[a+4>>2];j=F[a>>2];F[e+28>>2]=f;a=F[e+16>>2];f=a-h|0;if(((f?L(f>>2,341)-1|0:0)-(c+d|0)|0)+1>>>0>=682){mj(F[a-4>>2]);F[e+16>>2]=F[e+16>>2]-4}if(j>>>0>p>>>0){c=0;break e}c=0;a=F[g+12>>2];h=(b|0)==(a-1|0)?0:b+1|0;if(h>>>0>=a>>>0){break e}a=F[g+628>>2];k=L(l,12);n=a+k|0;f:{g:{m=h<<2;q=k+F[g+640>>2]|0;b=F[g>>2]-F[m+F[q>>2]>>2]|0;if(!b){a=0;if(!j){break g}while(1){f=0;d=F[i+16>>2];h:{if((d|0)==F[i+20>>2]){break h}while(1){l=L(f,20)+d|0;c=F[n>>2]+(F[l+4>>2]<<2)|0;k=F[l>>2];h=F[l+12>>2];i:{if(h>>>0>3){break i}b=F[i+12>>2];if(!F[l+16>>2]){c=b;break i}d=0;while(1){b=Oi(b,(d<<2)+c|0,h);h=F[l+12>>2];b=b+h|0;d=d+1|0;if(d>>>0>2]){continue}break}c=F[i+12>>2]}d=F[i+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}b=F[k+40>>2];Oi(F[F[k>>2]>>2]+L(b,d)|0,c,b);f=f+1|0;d=F[i+16>>2];if(f>>>0<(F[i+20>>2]-d|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[g+8>>2]=F[g+8>>2]+1;a=a+1|0;if((j|0)!=(a|0)){continue}break}break g}j:{k:{l:{m:{if(j>>>0<=2){a=F[g+616>>2];F[a>>2]=h;b=1;d=F[g+12>>2];if(d>>>0>1){break m}break j}if(I[g+8>>2]>I[g+4>>2]){break e}c=a;a=k+12|0;Na(c+a|0,F[n>>2],F[n+4>>2]);a=m+F[a+F[g+628>>2]>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-b|0;d=j-a|0;n:{if((d|0)==(a|0)){d=a;break n}b=F[g+596>>2];if((b|0)==F[g+588>>2]){break l}f=F[b>>2];j=F[g+600>>2];n=j+1|0;F[g+600>>2]=n;f=f&-2147483648>>>j;o:{if((n|0)==32){F[g+600>>2]=0;F[g+596>>2]=b+4;if(f){break o}break l}if(!f){break l}}}f=d;d=a;break k}while(1){h=(d-1|0)==(h|0)?0:h+1|0;F[a+(b<<2)>>2]=h;b=b+1|0;d=F[g+12>>2];if(b>>>0>>0){continue}break}break j}f=a}a=F[g+640>>2];b=a+k|0;j=F[b>>2];k=j+m|0;F[k>>2]=F[k>>2]+1;Na(a+L(c,12)|0,j,F[b+4>>2]);if(d){b=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];j=F[e+16>>2]-a|0;if((b|0)==((j?L(j>>2,341)-1|0:0)|0)){Nb(e+8|0);b=F[e+24>>2]+F[e+28>>2]|0;j=F[e+12>>2]}else{j=a}a=(b>>>0)/341|0;a=F[j+(a<<2)>>2]+L(b-L(a,341)|0,12)|0;F[a+8>>2]=l;F[a+4>>2]=h;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!f){break g}d=F[e+28>>2]+F[e+24>>2]|0;b=F[e+12>>2];a=F[e+16>>2]-b|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){Nb(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;b=F[e+12>>2]}a=(d>>>0)/341|0;a=F[b+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=c;F[a+4>>2]=h;F[a>>2]=f;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}a=0;if(!j){break g}while(1){if(d){h=F[g+548>>2];f=F[g+604>>2];s=F[g+616>>2];t=F[n>>2];u=F[q>>2];d=0;while(1){l=(d<<2)+s|0;F[f+(F[l>>2]<<2)>>2]=0;c=F[l>>2]<<2;b=F[g>>2]-F[c+u>>2]|0;p:{if(!b){break p}c=c+f|0;k=F[g+560>>2];o=32-k|0;if((o|0)>=(b|0)){m=F[g+556>>2];if((m|0)==(h|0)){F[c>>2]=0;break p}F[c>>2]=F[m>>2]<>>32-b;b=b+F[g+560>>2]|0;F[g+560>>2]=b;if((b|0)!=32){break p}F[g+560>>2]=0;F[g+556>>2]=m+4;break p}m=F[g+556>>2];r=m+4|0;if((h|0)==(r|0)){F[c>>2]=0;break p}v=F[m>>2];F[g+556>>2]=r;o=b-o|0;F[g+560>>2]=o;F[c>>2]=F[m+4>>2]>>>32-o|v<>>32-b}b=F[l>>2]<<2;c=b+f|0;F[c>>2]=F[c>>2]|F[b+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}f=0;d=F[i+16>>2];q:{if((d|0)==F[i+20>>2]){break q}while(1){l=L(f,20)+d|0;c=F[g+604>>2]+(F[l+4>>2]<<2)|0;k=F[l>>2];h=F[l+12>>2];r:{if(h>>>0>3){break r}b=F[i+12>>2];if(!F[l+16>>2]){c=b;break r}d=0;while(1){b=Oi(b,(d<<2)+c|0,h);h=F[l+12>>2];b=b+h|0;d=d+1|0;if(d>>>0>2]){continue}break}c=F[i+12>>2]}d=F[i+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}b=F[k+40>>2];Oi(F[F[k>>2]>>2]+L(b,d)|0,c,b);f=f+1|0;d=F[i+16>>2];if(f>>>0<(F[i+20>>2]-d|0)/20>>>0){continue}break}}F[i+28>>2]=F[i+28>>2]+1;F[g+8>>2]=F[g+8>>2]+1;a=a+1|0;if((j|0)==(a|0)){break g}d=F[g+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}c=1}F[e+28>>2]=0;h=F[e+16>>2];d=F[e+12>>2];b=h-d|0;if(b>>>0>=9){while(1){mj(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;h=F[e+16>>2];b=h-d|0;if(b>>>0>8){continue}break}}a=170;s:{switch((b>>>2|0)-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(h|0)){break t}while(1){mj(F[d>>2]);d=d+4|0;if((h|0)!=(d|0)){continue}break}a=F[e+16>>2];b=F[e+12>>2];if((a|0)==(b|0)){break t}F[e+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){mj(a)}fa=e+32|0;break b}Ha();V()}Ha();V()}d=c}return d}function Cb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=F[b+12>>2];f=F[b+20>>2];e=F[b+16>>2];g=e+4|0;f=g>>>0<4?f+1|0:f;a:{if(g>>>0>I[b+8>>2]&(f|0)>=(h|0)|(f|0)>(h|0)){break a}f=e+F[b>>2]|0;F[a>>2]=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);f=F[b+20>>2];h=f;g=F[b+16>>2];e=g+4|0;f=e>>>0<4?f+1|0:f;i=e;F[b+16>>2]=e;F[b+20>>2]=f;if(I[a>>2]>32){break a}e=F[b+12>>2];f=h;h=g+8|0;f=h>>>0<8?f+1|0:f;if((e|0)<=(f|0)&h>>>0>I[b+8>>2]|(e|0)<(f|0)){break a}d=i+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[a+4>>2]=f;d=F[b+20>>2];h=F[b+16>>2]+4|0;d=h>>>0<4?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if(!f){return 1}d=0;F[a+8>>2]=0;if(!Fb(a+16|0,b)){break a}if(!ce(a+544|0,b)){break a}if(!ce(a+564|0,b)){break a}if(!ce(a+584|0,b)){break a}q=F[a+4>>2];h=c;c=0;b=0;e=fa-32|0;fa=e;f=a;d=F[a+12>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;b:{c:{if(d){if(d>>>0>=1073741824){break c}a=d<<2;c=oj(a);F[e+8>>2]=c;b=a+c|0;F[e+16>>2]=b;Qi(c,0,a);F[e+12>>2]=b}a=F[f+628>>2];g=F[a>>2];if(g){F[a+4>>2]=g;mj(g);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=F[f+12>>2];c=F[e+8>>2];b=F[e+12>>2]}F[a+4>>2]=b;F[a>>2]=c;F[a+8>>2]=F[e+16>>2];c=0;F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=0;d:{if(d){if(d>>>0>=1073741824){break d}a=d<<2;g=oj(a);F[e+8>>2]=g;c=a+g|0;F[e+16>>2]=c;Qi(g,0,a);F[e+12>>2]=c}a=F[f+640>>2];b=F[a>>2];if(b){F[a+4>>2]=b;mj(b);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;g=F[e+8>>2];c=F[e+12>>2]}F[a+4>>2]=c;F[a>>2]=g;F[a+8>>2]=F[e+16>>2];F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Nb(e+8|0);a=F[e+24>>2]+F[e+28>>2]|0;b=(a>>>0)/341|0;a=F[F[e+12>>2]+(b<<2)>>2]+L(a-L(b,341)|0,12)|0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=q;b=1;a=F[e+28>>2];d=a+1|0;F[e+28>>2]=d;e:{if(a>>>0>d>>>0){break e}while(1){l=F[e+12>>2];a=F[e+24>>2];b=d-1|0;c=a+b|0;g=(c>>>0)/341|0;c=F[l+(g<<2)>>2]+L(c-L(g,341)|0,12)|0;j=F[c+8>>2];i=F[c>>2];F[e+28>>2]=b;b=F[e+16>>2];c=b-l|0;if(((c?L(c>>2,341)-1|0:0)-(a+d|0)|0)+1>>>0>=682){mj(F[b-4>>2]);F[e+16>>2]=F[e+16>>2]-4}b=0;if(i>>>0>q>>>0){break e}a=F[f+628>>2];k=L(j,12);m=k+F[f+640>>2]|0;g=Li(f,i,m);if(g>>>0>=I[f+12>>2]){break e}l=a+k|0;f:{g:{o=g<<2;c=F[f>>2]-F[o+F[m>>2]>>2]|0;if(!c){m=0;if(!i){break g}while(1){a=0;d=F[h+16>>2];h:{if((d|0)==F[h+20>>2]){break h}while(1){j=L(a,20)+d|0;b=F[l>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];i:{if(g>>>0>3){break i}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break i}d=0;while(1){c=Oi(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break h}c=F[k+40>>2];Oi(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;m=m+1|0;if((i|0)!=(m|0)){continue}break}break g}j:{k:{l:{m:{if(i>>>0<=2){a=F[f+616>>2];F[a>>2]=g;c=1;d=F[f+12>>2];if(d>>>0>1){break m}break j}if(I[f+8>>2]>I[f+4>>2]){break e}a=F[f+628>>2];n=j+1|0;m=L(n,12);b=a+m|0;if((b|0)!=(l|0)){Na(b,F[l>>2],F[l+4>>2]);a=F[f+628>>2]}a=o+F[a+m>>2]|0;F[a>>2]=F[a>>2]+(1<>>1|0)-c|0;d=i-a|0;n:{if((d|0)==(a|0)){b=a;break n}b=F[f+596>>2];if((b|0)==F[f+588>>2]){break l}c=F[b>>2];i=F[f+600>>2];l=i+1|0;F[f+600>>2]=l;c=c&-2147483648>>>i;o:{if((l|0)==32){F[f+600>>2]=0;F[f+596>>2]=b+4;if(c){break o}break l}if(!c){break l}}b=d}d=a;break k}while(1){g=(d-1|0)==(g|0)?0:g+1|0;F[a+(c<<2)>>2]=g;c=c+1|0;d=F[f+12>>2];if(c>>>0>>0){continue}break}break j}b=a}a=F[f+640>>2];c=a+k|0;i=F[c>>2];l=i+o|0;F[l>>2]=F[l>>2]+1;Na(a+m|0,i,F[c+4>>2]);if(d){c=F[e+28>>2]+F[e+24>>2]|0;a=F[e+12>>2];i=F[e+16>>2]-a|0;if((c|0)==((i?L(i>>2,341)-1|0:0)|0)){Nb(e+8|0);c=F[e+24>>2]+F[e+28>>2]|0;i=F[e+12>>2]}else{i=a}a=(c>>>0)/341|0;a=F[i+(a<<2)>>2]+L(c-L(a,341)|0,12)|0;F[a+8>>2]=j;F[a+4>>2]=g;F[a>>2]=d;F[e+28>>2]=F[e+28>>2]+1}if(!b){break g}d=F[e+28>>2]+F[e+24>>2]|0;c=F[e+12>>2];a=F[e+16>>2]-c|0;if((d|0)==((a?L(a>>2,341)-1|0:0)|0)){Nb(e+8|0);d=F[e+24>>2]+F[e+28>>2]|0;c=F[e+12>>2]}a=(d>>>0)/341|0;a=F[c+(a<<2)>>2]+L(d-L(a,341)|0,12)|0;F[a+8>>2]=n;F[a+4>>2]=g;F[a>>2]=b;d=F[e+28>>2]+1|0;F[e+28>>2]=d;break f}o=0;if(!i){break g}while(1){if(d){g=F[f+548>>2];c=F[f+604>>2];s=F[f+616>>2];t=F[l>>2];u=F[m>>2];d=0;while(1){j=(d<<2)+s|0;F[c+(F[j>>2]<<2)>>2]=0;b=F[j>>2]<<2;a=F[f>>2]-F[b+u>>2]|0;p:{if(!a){break p}b=b+c|0;k=F[f+560>>2];p=32-k|0;if((p|0)>=(a|0)){n=F[f+556>>2];if((n|0)==(g|0)){F[b>>2]=0;break p}F[b>>2]=F[n>>2]<>>32-a;a=a+F[f+560>>2]|0;F[f+560>>2]=a;if((a|0)!=32){break p}F[f+560>>2]=0;F[f+556>>2]=n+4;break p}n=F[f+556>>2];r=n+4|0;if((g|0)==(r|0)){F[b>>2]=0;break p}v=F[n>>2];F[f+556>>2]=r;p=a-p|0;F[f+560>>2]=p;F[b>>2]=F[n+4>>2]>>>32-p|v<>>32-a}a=F[j>>2]<<2;b=a+c|0;F[b>>2]=F[b>>2]|F[a+t>>2];d=d+1|0;if(d>>>0>2]){continue}break}}a=0;d=F[h+16>>2];q:{if((d|0)==F[h+20>>2]){break q}while(1){j=L(a,20)+d|0;b=F[f+604>>2]+(F[j+4>>2]<<2)|0;k=F[j>>2];g=F[j+12>>2];r:{if(g>>>0>3){break r}c=F[h+12>>2];if(!F[j+16>>2]){b=c;break r}d=0;while(1){c=Oi(c,(d<<2)+b|0,g);g=F[j+12>>2];c=c+g|0;d=d+1|0;if(d>>>0>2]){continue}break}b=F[h+12>>2]}d=F[h+28>>2];d=G[k+84|0]?d:F[F[k+68>>2]+(d<<2)>>2];if(d>>>0>=I[k+80>>2]){break q}c=F[k+40>>2];Oi(F[F[k>>2]>>2]+L(c,d)|0,b,c);a=a+1|0;d=F[h+16>>2];if(a>>>0<(F[h+20>>2]-d|0)/20>>>0){continue}break}}F[h+28>>2]=F[h+28>>2]+1;F[f+8>>2]=F[f+8>>2]+1;o=o+1|0;if((i|0)==(o|0)){break g}d=F[f+12>>2];continue}}d=F[e+28>>2]}if(d){continue}break}b=1}F[e+28>>2]=0;g=F[e+16>>2];d=F[e+12>>2];c=g-d|0;if(c>>>0>=9){while(1){mj(F[d>>2]);d=F[e+12>>2]+4|0;F[e+12>>2]=d;g=F[e+16>>2];c=g-d|0;if(c>>>0>8){continue}break}}a=170;s:{switch((c>>>2|0)-1|0){case 1:a=341;case 0:F[e+24>>2]=a;break;default:break s}}t:{if((d|0)==(g|0)){break t}while(1){mj(F[d>>2]);d=d+4|0;if((g|0)!=(d|0)){continue}break}a=F[e+16>>2];c=F[e+12>>2];if((a|0)==(c|0)){break t}F[e+16>>2]=a+(((a-c|0)-4>>>2^-1)<<2)}a=F[e+8>>2];if(a){mj(a)}fa=e+32|0;break b}Ha();V()}Ha();V()}d=b}return d}function bj(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;h=fa-80|0;fa=h;F[h+76>>2]=b;w=h+55|0;r=h+56|0;b=0;a:{b:{c:{d:{e:while(1){if((2147483647-n|0)<(b|0)){break d}n=b+n|0;f:{g:{h:{l=F[h+76>>2];b=l;k=G[b|0];if(k){while(1){i:{f=k&255;j:{if(!f){k=b;break j}if((f|0)!=37){break i}k=b;while(1){if(G[b+1|0]!=37){break j}f=b+2|0;F[h+76>>2]=f;k=k+1|0;g=G[b+2|0];b=f;if((g|0)==37){continue}break}}b=k-l|0;v=2147483647-n|0;if((b|0)>(v|0)){break d}if(a){cj(a,l,b)}if(b){continue e}q=-1;f=1;b=F[h+76>>2];if(!(D[b+1|0]-48>>>0>=10|G[b+2|0]!=36)){q=D[b+1|0]-48|0;s=1;f=3}b=f+b|0;F[h+76>>2]=b;o=0;j=D[b|0];g=j-32|0;k:{if(g>>>0>31){f=b;break k}f=b;i=1<>2]=f;o=i|o;j=D[b+1|0];g=j-32|0;if(g>>>0>=32){break k}b=f;i=1<>>0>=10){break n}b=F[h+76>>2];if(G[b+2|0]!=36){break n}F[((D[b+1|0]<<2)+e|0)-192>>2]=10;p=F[((D[b+1|0]<<3)+d|0)-384>>2];s=1;b=b+3|0;break m}if(s){break h}s=0;p=0;if(a){b=F[c>>2];F[c>>2]=b+4;p=F[b>>2]}b=F[h+76>>2]+1|0}F[h+76>>2]=b;if((p|0)>=0){break l}p=0-p|0;o=o|8192;break l}p=dj(h+76|0);if((p|0)<0){break d}b=F[h+76>>2]}f=0;i=-1;g=0;o:{if(G[b|0]!=46){break o}if(G[b+1|0]==42){p:{q:{if(D[b+2|0]-48>>>0>=10){break q}b=F[h+76>>2];if(G[b+3|0]!=36){break q}F[((D[b+2|0]<<2)+e|0)-192>>2]=10;i=F[((D[b+2|0]<<3)+d|0)-384>>2];b=b+4|0;break p}if(s){break h}if(a){b=F[c>>2];F[c>>2]=b+4;i=F[b>>2]}else{i=0}b=F[h+76>>2]+2|0}F[h+76>>2]=b;g=(i^-1)>>>31|0;break o}F[h+76>>2]=b+1;i=dj(h+76|0);b=F[h+76>>2];g=1}t=g;while(1){m=f;k=28;if(D[b|0]-123>>>0<4294967238){break c}j=b+1|0;F[h+76>>2]=j;f=D[b|0];b=j;f=G[(f+L(m,58)|0)+13743|0];if(f-1>>>0<8){continue}break}r:{s:{if((f|0)!=27){if(!f){break c}if((q|0)>=0){F[(q<<2)+e>>2]=f;b=(q<<3)+d|0;f=F[b+4>>2];F[h+64>>2]=F[b>>2];F[h+68>>2]=f;break s}if(!a){break f}ej(h- -64|0,f,c);j=F[h+76>>2];break r}if((q|0)>=0){break c}}b=0;if(!a){continue e}}g=o&-65537;f=o&8192?g:o;o=0;q=1244;k=r;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{b=D[j-1|0];b=m?(b&15)==3?b&-33:b:b;switch(b-88|0){case 11:break t;case 9:case 13:case 14:case 15:break u;case 27:break z;case 12:case 17:break C;case 23:break D;case 0:case 32:break E;case 24:break F;case 22:break G;case 29:break H;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break I}}J:{switch(b-65|0){case 0:case 4:case 5:case 6:break u;case 2:break x;case 1:case 3:break g;default:break J}}if((b|0)==83){break y}break g}j=F[h+64>>2];g=F[h+68>>2];q=1244;break B}b=0;K:{switch(m&255){case 0:F[F[h+64>>2]>>2]=n;continue e;case 1:F[F[h+64>>2]>>2]=n;continue e;case 2:f=F[h+64>>2];F[f>>2]=n;F[f+4>>2]=n>>31;continue e;case 3:E[F[h+64>>2]>>1]=n;continue e;case 4:D[F[h+64>>2]]=n;continue e;case 6:F[F[h+64>>2]>>2]=n;continue e;case 7:break K;default:continue e}}f=F[h+64>>2];F[f>>2]=n;F[f+4>>2]=n>>31;continue e}i=i>>>0>8?i:8;f=f|8;b=120}m=r;u=b&32;j=F[h+64>>2];g=F[h+68>>2];if(j|g){while(1){m=m-1|0;D[m|0]=u|G[(j&15)+14272|0];x=!g&j>>>0>15|(g|0)!=0;l=g;g=g>>>4|0;j=(l&15)<<28|j>>>4;if(x){continue}break}}l=m;if(!(F[h+64>>2]|F[h+68>>2])|!(f&8)){break A}q=(b>>>4|0)+1244|0;o=2;break A}b=r;j=F[h+64>>2];g=F[h+68>>2];if(j|g){while(1){b=b-1|0;D[b|0]=j&7|48;m=!g&j>>>0>7|(g|0)!=0;l=g;g=g>>>3|0;j=(l&7)<<29|j>>>3;if(m){continue}break}}l=b;if(!(f&8)){break A}b=r-l|0;i=(b|0)<(i|0)?i:b+1|0;break A}b=F[h+68>>2];g=b;j=F[h+64>>2];if((b|0)<0){g=0-(((j|0)!=0)+g|0)|0;j=0-j|0;F[h+64>>2]=j;F[h+68>>2]=g;o=1;q=1244;break B}if(f&2048){o=1;q=1245;break B}o=f&1;q=o?1246:1244}l=r;L:{if(!g){m=j;break L}while(1){l=l-1|0;m=Tj(j,g,10,0);b=ha;y=l,z=j-Rj(m,b,10,0)|48,D[y|0]=z;u=g>>>0>9;j=m;g=b;if(u){continue}break}}if(m){while(1){l=l-1|0;b=(m>>>0)/10|0;D[l|0]=m-L(b,10)|48;g=m>>>0>9;m=b;if(g){continue}break}}}if((i|0)<0?t:0){break d}f=t?f&-65537:f;g=F[h+64>>2];b=F[h+68>>2];if(!(i|(g|b)!=0)){l=r;k=l;i=0;break g}b=!(b|g)+(r-l|0)|0;i=(b|0)<(i|0)?i:b;break g}j=(i|0)<0?2147483647:i;f=j;k=(f|0)!=0;b=F[h+64>>2];l=b?b:1758;b=l;M:{N:{O:{P:{if(!(b&3)|!f){break P}while(1){if(!G[b|0]){break O}f=f-1|0;k=(f|0)!=0;b=b+1|0;if(!(b&3)){break P}if(f){continue}break}}if(!k){break N}}Q:{if(!G[b|0]|f>>>0<4){break Q}while(1){k=F[b>>2];if((k^-1)&k-16843009&-2139062144){break Q}b=b+4|0;f=f-4|0;if(f>>>0>3){continue}break}}if(!f){break N}while(1){if(!G[b|0]){break M}b=b+1|0;f=f-1|0;if(f){continue}break}}b=0}b=b?b-l|0:j;k=b+l|0;if((i|0)>=0){f=g;i=b;break g}f=g;i=b;if(G[k|0]){break d}break g}if(i){k=F[h+64>>2];break w}b=0;fj(a,32,p,0,f);break v}F[h+12>>2]=0;F[h+8>>2]=F[h+64>>2];k=h+8|0;F[h+64>>2]=k;i=-1}b=0;R:{while(1){g=F[k>>2];if(!g){break R}g=gj(h+4|0,g);l=(g|0)<0;if(!(l|g>>>0>i-b>>>0)){k=k+4|0;b=b+g|0;if(i>>>0>b>>>0){continue}break R}break}if(l){break b}}k=61;if((b|0)<0){break c}fj(a,32,p,b,f);if(!b){b=0;break v}i=0;k=F[h+64>>2];while(1){g=F[k>>2];if(!g){break v}g=gj(h+4|0,g);i=g+i|0;if(i>>>0>b>>>0){break v}cj(a,h+4|0,g);k=k+4|0;if(b>>>0>i>>>0){continue}break}}fj(a,32,p,b,f^8192);b=(b|0)<(p|0)?p:b;continue e}if((i|0)<0?t:0){break d}k=61;b=ia[0](a,K[h+64>>3],p,i,f,b)|0;if((b|0)>=0){continue e}break c}D[h+55|0]=F[h+64>>2];i=1;l=w;f=g;break g}f=b+1|0;F[h+76>>2]=f;k=G[b+1|0];b=f;continue}}if(a){break a}if(!s){break f}b=1;while(1){a=F[(b<<2)+e>>2];if(a){ej((b<<3)+d|0,a,c);n=1;b=b+1|0;if((b|0)!=10){continue}break a}break}n=1;if(b>>>0>=10){break a}while(1){if(F[(b<<2)+e>>2]){break h}b=b+1|0;if((b|0)!=10){continue}break}break a}k=28;break c}j=k-l|0;m=(i|0)<(j|0)?j:i;if((m|0)>(2147483647-o|0)){break d}k=61;g=m+o|0;b=(g|0)>(p|0)?g:p;if((v|0)<(b|0)){break c}fj(a,32,b,g,f);cj(a,q,o);fj(a,48,b,g,f^65536);fj(a,48,m,j,0);cj(a,l,j);fj(a,32,b,g,f^8192);continue}break}n=0;break a}k=61}F[4190]=k}n=-1}fa=h+80|0;return n}function Gc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0;h=fa+-64|0;fa=h;F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){Ja(f,e-d|0);F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;break b}if(d>>>0>e>>>0){F[a+36>>2]=g+(e<<2)}F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;d=0;if(!e){break a}}eb(h+16|0,e,h);i=F[h+28>>2];d=F[h+32>>2]}F[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[h+32>>2]=(e<<2)+i;break c}eb(h+16|12,e-d|0,h)}F[h>>2]=0;f=F[h+40>>2];d=F[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[h+44>>2]=f+(e<<2);break d}eb(h+40|0,e-d|0,h)}F[h>>2]=0;f=F[h+52>>2];d=F[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}F[h+56>>2]=f+(e<<2);break e}eb(h+52|0,e-d|0,h)}i=0;f:{if(F[a+8>>2]<=0){break f}j=F[a+32>>2];g=F[h+16>>2];while(1){d=i<<2;f=F[d+g>>2];m=F[a+16>>2];g:{if((f|0)>(m|0)){F[d+j>>2]=m;break g}d=d+j|0;m=F[a+12>>2];if((m|0)>(f|0)){F[d>>2]=m;break g}F[d>>2]=f}i=i+1|0;d=F[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=F[b+g>>2]+F[g+j>>2]|0;F[f>>2]=g;h:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break h}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}D=F[a+52>>2];q=F[a+48>>2];w=oj(16);d=w;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;v=oj(d);F[h>>2]=v;F[h+8>>2]=d+v;Qi(v,0,d)}p=1;d=F[a+56>>2];z=F[d>>2];d=F[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;E=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;x=e-1|0;I=e<<2;m=1;while(1){k:{l:{m:{n:{if((m|0)!=(G|0)){f=F[(m<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}j=0;g=f+2|0;y=(d|0)!=0|(g|0)!=-1;n=1;r=d?f-1|0:g;o=1<>>5|0;J=F[q>>2];d=f;q:{while(1){r:{if(F[(d>>>3&536870908)+J>>2]>>>d&1){break r}g=F[F[F[q+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break r}k=F[D>>2];i=F[q+28>>2];p=F[k+(F[i+(g<<2)>>2]<<2)>>2];if((p|0)>=(m|0)){break r}l=g+1|0;l=F[k+(F[i+(((l>>>0)%3|0?l:g-2|0)<<2)>>2]<<2)>>2];if((l|0)>=(m|0)){break r}i=F[k+(F[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((i|0)>=(m|0)){break r}s:{if(!e){break s}g=F[(h+16|0)+L(j,12)>>2];k=L(e,i);l=L(e,l);p=L(e,p);i=0;u=0;if(x){while(1){F[g+(i<<2)>>2]=(F[(i+k<<2)+c>>2]+F[(i+l<<2)+c>>2]|0)-F[(i+p<<2)+c>>2];t=i|1;F[g+(t<<2)>>2]=(F[(k+t<<2)+c>>2]+F[(l+t<<2)+c>>2]|0)-F[(p+t<<2)+c>>2];i=i+2|0;u=u+2|0;if((A|0)!=(u|0)){continue}break}}if(!B){break s}F[g+(i<<2)>>2]=(F[(i+k<<2)+c>>2]+F[(i+l<<2)+c>>2]|0)-F[(i+p<<2)+c>>2]}g=4;j=j+1|0;if((j|0)==4){break q}}t:{if(n&1){i=d-2|0;g=d+1|0;d=-1;g=(g>>>0)%3|0?g:i;if((g|0)==-1|F[F[q>>2]+(g>>>3&536870908)>>2]>>>g&1){break t}g=F[F[F[q+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break t}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;break t}u:{if((d>>>0)%3|0){i=d-1|0;break u}i=d+2|0;d=-1;if((i|0)==-1){break t}}d=-1;if(F[F[q>>2]+(i>>>3&536870908)>>2]>>>i&1){break t}g=F[F[F[q+64>>2]+12>>2]+(i<<2)>>2];if((g|0)==-1){break t}if((g>>>0)%3|0){d=g-1|0;break t}d=g+2|0}v:{if((d|0)==(f|0)){break v}if(!((n^1)&1|(d|0)!=-1)){if(!y|o&F[F[q>>2]+(s<<2)>>2]){break v}d=F[F[F[q+64>>2]+12>>2]+(r<<2)>>2];if((d|0)==-1){break v}n=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=j;if((g|0)<=0){break p}}if(e){Qi(F[h>>2],0,I)}d=g-1|0;t=(d<<2)+w|0;d=L(d,12)+a|0;u=d;y=F[d- -64>>2];p=0;n=0;d=0;while(1){f=F[t>>2];F[t>>2]=f+1;if(f>>>0>=y>>>0){break j}w:{if(F[F[u+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break w}d=d+1|0;if(!e){break w}j=F[h>>2];k=F[(h+16|0)+L(n,12)>>2];r=0;i=0;f=0;if(x>>>0>=3){while(1){l=i<<2;o=l+j|0;F[o>>2]=F[o>>2]+F[k+l>>2];o=l|4;s=o+j|0;F[s>>2]=F[s>>2]+F[k+o>>2];o=l|8;s=o+j|0;F[s>>2]=F[s>>2]+F[k+o>>2];l=l|12;o=l+j|0;F[o>>2]=F[o>>2]+F[k+l>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break w}while(1){f=i<<2;l=f+j|0;F[l>>2]=F[l>>2]+F[f+k>>2];i=i+1|0;r=r+1|0;if((C|0)!=(r|0)){continue}break}}n=n+1|0;if((n|0)!=(g|0)){continue}break}n=L(e,m);f=n;if(!d){break o}if(!e){break l}f=F[h>>2];i=0;g=0;if(x){break n}break m}f=L(e,m)}if(F[a+8>>2]<=0){break k}n=(L(m-1|0,e)<<2)+c|0;j=F[a+32>>2];i=0;while(1){d=i<<2;g=F[d+n>>2];k=F[a+16>>2];x:{if((g|0)>(k|0)){F[d+j>>2]=k;break x}d=d+j|0;k=F[a+12>>2];if((k|0)>(g|0)){F[d>>2]=k;break x}F[d>>2]=g}i=i+1|0;g=F[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+n>>2]+F[g+j>>2]|0;F[f>>2]=g;y:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break y}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}break k}xc();V()}while(1){j=i<<2;k=j+f|0;F[k>>2]=F[k>>2]/(d|0);j=f+(j|4)|0;F[j>>2]=F[j>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;F[f>>2]=F[f>>2]/(d|0)}if(F[a+8>>2]<=0){break k}j=F[a+32>>2];i=0;while(1){d=i<<2;f=F[d+v>>2];g=F[a+16>>2];z:{if((f|0)>(g|0)){F[d+j>>2]=g;break z}d=d+j|0;g=F[a+12>>2];if((g|0)>(f|0)){F[d>>2]=g;break z}F[d>>2]=f}i=i+1|0;f=F[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=n<<2;i=f+c|0;n=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+n>>2]+F[g+j>>2]|0;F[f>>2]=g;A:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break A}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}p=1;m=m+1|0;if((E|0)!=(m|0)){continue}break}}a=F[h>>2];if(a){mj(a)}mj(w);a=F[h+52>>2];if(a){F[h+56>>2]=a;mj(a)}a=F[h+40>>2];if(a){F[h+44>>2]=a;mj(a)}a=F[h+28>>2];if(a){F[h+32>>2]=a;mj(a)}a=F[h+16>>2];if(a){F[h+20>>2]=a;mj(a)}fa=h- -64|0;return p|0}Ha();V()}function Pc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:i=1;e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=D[b|0];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(D[b|0])/M(127);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break e}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 1:i=1;f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=G[b|0];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(G[b|0])/M(255);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break f}b=b+1|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 2:i=1;g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=E[b>>1];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(E[b>>1])/M(32767);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break g}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 3:i=1;h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=H[b>>1];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(H[b>>1])/M(65535);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break h}b=b+2|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 4:i=1;i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=F[b>>2];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(F[b>>2])*M(4.656612873077393e-10);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break i}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 5:i=1;j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=I[b>>2];f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(I[b>>2])*M(2.3283064365386963e-10);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break j}b=b+4|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 6:i=1;k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=+I[b>>2]+ +F[b+4>>2]*4294967296;f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(+I[b>>2]+ +F[b+4>>2]*4294967296)*M(1.0842021724855044e-19);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break k}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 7:i=1;l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}e=F[a>>2];h=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=b;b=h+b|0;g=F[e+4>>2];e=g-h|0;if(!G[a+32|0]){if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=+I[b>>2]+ +I[b+4>>2]*4294967296;f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((e|0)<=(f|0)){break a}f=0;while(1){J[(f<<2)+d>>2]=M(+I[b>>2]+ +I[b+4>>2]*4294967296)*M(5.421010862427522e-20);f=f+1|0;e=D[a+24|0];if((f|0)>=(((c|0)<(e|0)?c:e)|0)){break l}b=b+8|0;if(g>>>0>b>>>0){continue}break}break a}if((c|0)>(e|0)){break c}break b;case 8:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;g=F[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}J[(f<<2)+d>>2]=J[b>>2];b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;g=F[e+4>>2];while(1){if(b>>>0>=g>>>0){break a}J[(f<<2)+d>>2]=K[b>>3];b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}i=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){g=F[a>>2];e=F[g>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=e+b|0;while(1){if(I[g+4>>2]<=b>>>0){break a}J[(f<<2)+d>>2]=G[b|0]?M(1):M(0);b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}Qi((e<<2)+d|0,0,c-e<<2)}return i}return 0}function Rh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=fa-16|0;fa=m;F[m+12>>2]=b;b=oj(32);F[m>>2]=b;F[m+4>>2]=24;F[m+8>>2]=-2147483616;D[b+24|0]=0;c=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);d=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;h=fa-48|0;fa=h;k=a;c=a+16|0;a=F[c>>2];a:{b:{if(!a){break b}d=F[m+12>>2];b=c;while(1){f=(d|0)>F[a+16>>2];b=f?b:a;a=F[(f<<2)+a>>2];if(a){continue}break}if((b|0)==(c|0)){break b}if((d|0)>=F[b+16>>2]){break a}}t=h+24|0;a=t;F[a+4>>2]=0;F[a+8>>2]=0;u=a+4|0;F[a>>2]=u;a=F[m+12>>2];d=h+16|0;F[d>>2]=0;F[d+4>>2]=0;F[h+8>>2]=a;F[h+12>>2]=d;b=F[t>>2];if((u|0)!=(b|0)){l=h+8|4;while(1){f=b;g=b+16|0;q=fa-16|0;fa=q;i=q+12|0;a=q+8|0;c:{d:{e:{f:{g:{h:{r=l+4|0;i:{if((r|0)==(d|0)){break i}b=G[d+27|0];e=b<<24>>24<0;n=G[g+11|0];v=n<<24>>24;j=(v|0)<0;b=e?F[d+20>>2]:b;n=j?F[g+4>>2]:n;o=b>>>0>>0;p=o?b:n;if(p){j=j?F[g>>2]:g;s=d+16|0;e=e?F[s>>2]:s;s=Vi(j,e,p);if(!s){if(b>>>0>n>>>0){break i}break h}if((s|0)>=0){break h}break i}if(b>>>0<=n>>>0){break g}}e=F[d>>2];j:{a=d;k:{if((a|0)==F[l>>2]){break k}l:{if(e){b=e;while(1){a=b;b=F[b+4>>2];if(b){continue}break}break l}a=d+8|0;if((d|0)==F[F[d+8>>2]>>2]){while(1){b=F[a>>2];a=b+8|0;if((b|0)==F[F[b+8>>2]>>2]){continue}break}}a=F[a>>2]}j=G[g+11|0];b=j<<24>>24<0;o=G[a+27|0];n=o<<24>>24<0;m:{j=b?F[g+4>>2]:j;o=n?F[a+20>>2]:o;p=j>>>0>>0?j:o;if(p){r=a+16|0;b=Vi(n?F[r>>2]:r,b?F[g>>2]:g,p);if(b){break m}}if(j>>>0>o>>>0){break k}break j}if((b|0)>=0){break j}}if(!e){F[i>>2]=d;a=d;break c}F[i>>2]=a;a=a+4|0;break c}a=le(l,i,g);break c}b=Vi(e,j,p);if(b){break f}}if(o){break e}break d}if((b|0)>=0){break d}}e=F[d+4>>2];n:{if(e){b=e;while(1){a=b;b=F[b>>2];if(b){continue}break}break n}a=F[d+8>>2];if((d|0)==F[a>>2]){break n}b=d+8|0;while(1){j=F[b>>2];b=j+8|0;a=F[j+8>>2];if((j|0)!=F[a>>2]){continue}break}}o:{p:{if((a|0)==(r|0)){break p}j=G[a+27|0];b=j<<24>>24<0;q:{j=b?F[a+20>>2]:j;o=j>>>0>>0?j:n;if(o){p=a+16|0;b=Vi((v|0)<0?F[g>>2]:g,b?F[p>>2]:p,o);if(b){break q}}if(j>>>0>n>>>0){break p}break o}if((b|0)>=0){break o}}if(!e){F[i>>2]=d;a=d+4|0;break c}F[i>>2]=a;break c}a=le(l,i,g);break c}F[i>>2]=d;F[a>>2]=d}b=a;a=F[b>>2];if(a){b=0}else{a=oj(40);e=a+16|0;r:{if(D[g+11|0]>=0){i=F[g+4>>2];F[e>>2]=F[g>>2];F[e+4>>2]=i;F[e+8>>2]=F[g+8>>2];break r}qj(e,F[g>>2],F[g+4>>2])}e=a+28|0;s:{if(D[g+23|0]>=0){i=F[g+16>>2];F[e>>2]=F[g+12>>2];F[e+4>>2]=i;F[e+8>>2]=F[g+20>>2];break s}qj(e,F[g+12>>2],F[g+16>>2])}F[a+8>>2]=F[q+12>>2];F[a>>2]=0;F[a+4>>2]=0;F[b>>2]=a;e=F[F[l>>2]>>2];if(e){F[l>>2]=e;b=F[b>>2]}else{b=a}je(F[l+4>>2],b);F[l+8>>2]=F[l+8>>2]+1;b=1}D[h+44|0]=b;F[h+40>>2]=a;fa=q+16|0;a=F[f+4>>2];t:{if(!a){b=F[f+8>>2];if((f|0)==F[b>>2]){break t}a=f+8|0;while(1){f=F[a>>2];a=f+8|0;b=F[f+8>>2];if((f|0)!=F[b>>2]){continue}break}break t}while(1){b=a;a=F[b>>2];if(a){continue}break}}if((b|0)!=(u|0)){continue}break}}a=F[c>>2];u:{if(a){c=k+16|0;f=F[h+8>>2];while(1){b=F[a+16>>2];v:{if((b|0)>(f|0)){b=F[a>>2];if(b){break v}c=a;break u}if((b|0)>=(f|0)){break u}c=a+4|0;b=F[a+4>>2];if(!b){break u}a=c}c=a;a=b;continue}}a=c}b=F[c>>2];if(!b){b=oj(32);F[b+16>>2]=F[h+8>>2];F[b+20>>2]=F[h+12>>2];f=b+24|0;e=F[h+16>>2];F[f>>2]=e;g=F[h+20>>2];F[b+28>>2]=g;w:{if(!g){F[b+20>>2]=f;break w}F[e+8>>2]=f;F[h+16>>2]=0;F[h+20>>2]=0;F[h+12>>2]=d}F[b+8>>2]=a;F[b>>2]=0;F[b+4>>2]=0;F[c>>2]=b;a=F[F[k+12>>2]>>2];if(a){F[k+12>>2]=a;a=F[c>>2]}else{a=b}je(F[k+16>>2],a);F[k+20>>2]=F[k+20>>2]+1}ke(h+8|4,F[h+16>>2]);ke(t,F[t+4>>2])}fa=h+48|0;k=fa-48|0;fa=k;d=fa-32|0;fa=d;a=d+21|0;g=d+32|0;c=g;x:{if((a|0)==(c|0)){break x}}f=c-a|0;y:{if(!((f|0)<=9&(f|0)<(1-(I[3720]>1)|0))){D[a|0]=49;F[d+8>>2]=a+1;c=0;break y}F[d+8>>2]=c;c=61}F[d+12>>2]=c;h=fa-16|0;fa=h;c=k+8|0;e=fa-16|0;fa=e;z:{l=F[d+8>>2];f=l-a|0;if(f>>>0<=4294967279){A:{if(f>>>0<=10){D[c+11|0]=f;d=c;break A}if(f>>>0>=11){i=f+16&-16;d=i-1|0;d=(d|0)==11?i:d}else{d=10}i=d+1|0;d=oj(i);F[c>>2]=d;F[c+8>>2]=i|-2147483648;F[c+4>>2]=f}while(1){if((a|0)!=(l|0)){D[d|0]=G[a|0];d=d+1|0;a=a+1|0;continue}break}D[e+15|0]=0;D[d|0]=G[e+15|0];fa=e+16|0;break z}$f();V()}fa=h+16|0;fa=g;F[k+32>>2]=m;d=b+20|0;a=F[d+4>>2];B:{C:{if(a){b=G[m+11|0];c=b<<24>>24<0;e=c?F[m>>2]:m;f=c?F[m+4>>2]:b;b=d+4|0;while(1){c=G[a+27|0];g=c<<24>>24<0;c=g?F[a+20>>2]:c;h=c>>>0>>0;D:{E:{F:{G:{H:{l=h?c:f;I:{if(l){i=a+16|0;g=g?F[i>>2]:i;i=Vi(e,g,l);if(!i){if(c>>>0>f>>>0){break I}break H}if((i|0)>=0){break H}break I}if(c>>>0<=f>>>0){break G}}c=F[a>>2];if(c){break D}break C}c=Vi(g,e,l);if(c){break F}}if(h){break E}break B}if((c|0)>=0){break B}}b=a+4|0;c=F[a+4>>2];if(!c){break B}a=b}b=a;a=c;continue}}a=d+4|0}b=a}c=F[b>>2];if(c){a=0}else{c=oj(40);e=c+16|0;f=F[k+32>>2];J:{if(D[f+11|0]>=0){g=F[f+4>>2];F[e>>2]=F[f>>2];F[e+4>>2]=g;F[e+8>>2]=F[f+8>>2];break J}qj(e,F[f>>2],F[f+4>>2])}F[c+8>>2]=a;F[c>>2]=0;F[c+4>>2]=0;F[c+36>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[b>>2]=c;a=F[F[d>>2]>>2];if(a){F[d>>2]=a;a=F[b>>2]}else{a=c}je(F[d+4>>2],a);F[d+8>>2]=F[d+8>>2]+1;a=1}D[k+44|0]=a;F[k+40>>2]=c;a=F[k+40>>2];if(D[a+39|0]<0){mj(F[a+28>>2])}b=F[k+12>>2];F[a+28>>2]=F[k+8>>2];F[a+32>>2]=b;F[a+36>>2]=F[k+16>>2];fa=k+48|0;if(D[m+11|0]<0){mj(F[m>>2])}fa=m+16|0}function hd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0;h=fa+-64|0;fa=h;F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{b:{if(d>>>0>>0){Ja(f,e-d|0);F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;break b}if(d>>>0>e>>>0){F[a+36>>2]=g+(e<<2)}F[h+56>>2]=0;F[h+60>>2]=0;F[h+48>>2]=0;F[h+52>>2]=0;F[h+40>>2]=0;F[h+44>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;F[h+24>>2]=0;F[h+28>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;F[h>>2]=0;d=0;if(!e){break a}}eb(h+16|0,e,h);i=F[h+28>>2];d=F[h+32>>2]}F[h>>2]=0;d=d-i>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}F[h+32>>2]=(e<<2)+i;break c}eb(h+16|12,e-d|0,h)}F[h>>2]=0;f=F[h+40>>2];d=F[h+44>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}F[h+44>>2]=f+(e<<2);break d}eb(h+40|0,e-d|0,h)}F[h>>2]=0;f=F[h+52>>2];d=F[h+56>>2]-f>>2;e:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break e}F[h+56>>2]=f+(e<<2);break e}eb(h+52|0,e-d|0,h)}i=0;f:{if(F[a+8>>2]<=0){break f}k=F[a+32>>2];g=F[h+16>>2];while(1){d=i<<2;f=F[d+g>>2];n=F[a+16>>2];g:{if((f|0)>(n|0)){F[d+k>>2]=n;break g}d=d+k|0;n=F[a+12>>2];if((n|0)>(f|0)){F[d>>2]=n;break g}F[d>>2]=f}i=i+1|0;d=F[a+8>>2];if((i|0)<(d|0)){continue}break}if((d|0)<=0){break f}d=0;while(1){g=d<<2;f=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[f>>2]=g;h:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break h}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}D=F[a+52>>2];y=F[a+48>>2];v=oj(16);d=v;F[d>>2]=0;F[d+4>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;i:{if(e){if(e>>>0>=1073741824){break i}d=e<<2;u=oj(d);F[h>>2]=u;F[h+8>>2]=d+u;Qi(u,0,d)}r=1;d=F[a+56>>2];z=F[d>>2];d=F[d+4>>2]-z|0;j:{if((d|0)<5){break j}d=d>>2;E=(d|0)>2?d:2;G=d>>>0>1?d:1;A=e&-2;B=e&1;H=e&-4;C=e&3;w=e-1|0;I=e<<2;n=1;while(1){k:{l:{m:{n:{if((n|0)!=(G|0)){f=F[(n<<2)+z>>2];d=(f>>>0)%3|0;o:{p:{if((f|0)==-1){break p}k=0;g=f+2|0;x=(d|0)!=0|(g|0)!=-1;s=F[y+12>>2];q=s+((d?f-1|0:g)<<2)|0;o=1;d=f;q:{while(1){g=F[s+(d<<2)>>2];r:{if((g|0)==-1){break r}l=-1;r=F[D>>2];m=F[y>>2];i=r+(F[m+(g<<2)>>2]<<2)|0;p=g+1|0;p=(p>>>0)%3|0?p:g-2|0;if((p|0)!=-1){l=F[m+(p<<2)>>2]}p=F[i>>2];s:{t:{if((g>>>0)%3|0){i=g-1|0;break t}i=g+2|0;j=-1;if((i|0)==-1){break s}}j=F[m+(i<<2)>>2]}if((n|0)<=(p|0)){break r}i=F[r+(l<<2)>>2];if((i|0)>=(n|0)){break r}l=F[r+(j<<2)>>2];if((l|0)>=(n|0)){break r}g=F[(h+16|0)+L(k,12)>>2];u:{if(!e){break u}l=L(e,l);m=L(e,i);r=L(e,p);i=0;j=0;if(w){while(1){F[g+(i<<2)>>2]=(F[(i+l<<2)+c>>2]+F[(i+m<<2)+c>>2]|0)-F[(i+r<<2)+c>>2];p=i|1;F[g+(p<<2)>>2]=(F[(l+p<<2)+c>>2]+F[(m+p<<2)+c>>2]|0)-F[(p+r<<2)+c>>2];i=i+2|0;j=j+2|0;if((A|0)!=(j|0)){continue}break}}if(!B){break u}F[g+(i<<2)>>2]=(F[(i+l<<2)+c>>2]+F[(i+m<<2)+c>>2]|0)-F[(i+r<<2)+c>>2]}g=4;k=k+1|0;if((k|0)==4){break q}}v:{if(o&1){i=d+1|0;d=(i>>>0)%3|0?i:d-2|0;j=-1;if((d|0)==-1){break v}d=F[s+(d<<2)>>2];j=-1;if((d|0)==-1){break v}g=d+1|0;j=(g>>>0)%3|0?g:d-2|0;break v}w:{if((d>>>0)%3|0){i=d-1|0;break w}i=d+2|0;j=-1;if((i|0)==-1){break v}}d=F[s+(i<<2)>>2];j=-1;if((d|0)==-1){break v}j=d-1|0;if((d>>>0)%3|0){break v}j=d+2|0}d=j;x:{if((f|0)==(d|0)){break x}if(!((o^1)&1|(d|0)!=-1)){if(!x){break x}d=F[q>>2];if((d|0)==-1){break x}o=0;d=(d>>>0)%3|0?d-1|0:d+2|0}if((d|0)!=-1){continue}}break}g=k;if((g|0)<=0){break p}}if(e){Qi(F[h>>2],0,I)}d=g-1|0;p=(d<<2)+v|0;d=L(d,12)+a|0;j=d;x=F[d- -64>>2];r=0;o=0;d=0;while(1){f=F[p>>2];F[p>>2]=f+1;if(f>>>0>=x>>>0){break j}y:{if(F[F[j+60>>2]+(f>>>3&536870908)>>2]>>>f&1){break y}d=d+1|0;if(!e){break y}k=F[h>>2];s=F[(h+16|0)+L(o,12)>>2];l=0;i=0;f=0;if(w>>>0>=3){while(1){m=i<<2;q=m+k|0;F[q>>2]=F[q>>2]+F[m+s>>2];q=m|4;t=q+k|0;F[t>>2]=F[t>>2]+F[s+q>>2];q=m|8;t=q+k|0;F[t>>2]=F[t>>2]+F[s+q>>2];m=m|12;q=m+k|0;F[q>>2]=F[q>>2]+F[m+s>>2];i=i+4|0;f=f+4|0;if((H|0)!=(f|0)){continue}break}}if(!C){break y}while(1){f=i<<2;m=f+k|0;F[m>>2]=F[m>>2]+F[f+s>>2];i=i+1|0;l=l+1|0;if((C|0)!=(l|0)){continue}break}}o=o+1|0;if((o|0)!=(g|0)){continue}break}o=L(e,n);f=o;if(!d){break o}if(!e){break l}f=F[h>>2];i=0;g=0;if(w){break n}break m}f=L(e,n)}if(F[a+8>>2]<=0){break k}o=(L(n-1|0,e)<<2)+c|0;k=F[a+32>>2];i=0;while(1){d=i<<2;g=F[d+o>>2];l=F[a+16>>2];z:{if((g|0)>(l|0)){F[d+k>>2]=l;break z}d=d+k|0;l=F[a+12>>2];if((l|0)>(g|0)){F[d>>2]=l;break z}F[d>>2]=g}i=i+1|0;g=F[a+8>>2];if((i|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=f<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+o>>2]+F[g+k>>2]|0;F[f>>2]=g;A:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break A}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}break k}xc();V()}while(1){k=i<<2;l=k+f|0;F[l>>2]=F[l>>2]/(d|0);k=f+(k|4)|0;F[k>>2]=F[k>>2]/(d|0);i=i+2|0;g=g+2|0;if((A|0)!=(g|0)){continue}break}}if(!B){break l}f=f+(i<<2)|0;F[f>>2]=F[f>>2]/(d|0)}if(F[a+8>>2]<=0){break k}k=F[a+32>>2];i=0;while(1){d=i<<2;f=F[d+u>>2];g=F[a+16>>2];B:{if((f|0)>(g|0)){F[d+k>>2]=g;break B}d=d+k|0;g=F[a+12>>2];if((g|0)>(f|0)){F[d>>2]=g;break B}F[d>>2]=f}i=i+1|0;f=F[a+8>>2];if((i|0)<(f|0)){continue}break}d=0;if((f|0)<=0){break k}f=o<<2;i=f+c|0;o=b+f|0;while(1){g=d<<2;f=g+i|0;g=F[g+o>>2]+F[g+k>>2]|0;F[f>>2]=g;C:{if((g|0)>F[a+16>>2]){j=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break C}j=g+F[a+20>>2]|0}F[f>>2]=j}d=d+1|0;if((d|0)>2]){continue}break}}r=1;n=n+1|0;if((E|0)!=(n|0)){continue}break}}a=F[h>>2];if(a){mj(a)}mj(v);a=F[h+52>>2];if(a){F[h+56>>2]=a;mj(a)}a=F[h+40>>2];if(a){F[h+44>>2]=a;mj(a)}a=F[h+28>>2];if(a){F[h+32>>2]=a;mj(a)}a=F[h+16>>2];if(a){F[h+20>>2]=a;mj(a)}fa=h- -64|0;return r|0}Ha();V()}function mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=a;a:{b:{c:{d:{e:{f:{g:{h:{k=F[a+8>>2];switch(F[k+28>>2]-1|0){case 4:break c;case 5:break d;case 2:break e;case 3:break f;case 0:break g;case 1:break h;default:break a}}c=D[k+24|0];d=oj((c|0)>=0?c:-1);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;D[a+d|0]=F[j>>2];D[(a|1)+d|0]=F[j+4>>2];D[(a|2)+d|0]=F[j+8>>2];D[(a|3)+d|0]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[a+d|0]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}Oi(F[F[F[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}Oi(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}Oi(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}c=D[k+24|0];d=oj((c|0)>=0?c:-1);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((c|0)>0){k=c&-4;m=c&3;e=c-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){j=h+(f<<2)|0;D[a+d|0]=F[j>>2];D[(a|1)+d|0]=F[j+4>>2];D[(a|2)+d|0]=F[j+8>>2];D[(a|3)+d|0]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){D[a+d|0]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}Oi(F[F[F[i+8>>2]+64>>2]>>2]+n|0,d,c);n=c+n|0;l=l+1|0;if((l|0)!=(b|0)){continue}break}break b}Oi(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}Oi(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];a=e+e|0;d=oj(a>>>0>>0?-1:a);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;E[l+d>>1]=F[j>>2];E[(l|2)+d>>1]=F[j+4>>2];E[(l|4)+d>>1]=F[j+8>>2];E[(l|6)+d>>1]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){E[(a<<1)+d>>1]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}Oi(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}Oi(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}Oi(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];a=e+e|0;d=oj(a>>>0>>0?-1:a);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}c=e<<1;if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<1;j=h+(f<<2)|0;E[l+d>>1]=F[j>>2];E[(l|2)+d>>1]=F[j+4>>2];E[(l|4)+d>>1]=F[j+8>>2];E[(l|6)+d>>1]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){E[(a<<1)+d>>1]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}Oi(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}Oi(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}Oi(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];c=e<<2;d=oj((e|0)!=(e&1073741823)?-1:c);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;F[l+d>>2]=F[j>>2];F[(l|4)+d>>2]=F[j+4>>2];F[(l|8)+d>>2]=F[j+8>>2];F[(l|12)+d>>2]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){F[(a<<2)+d>>2]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}Oi(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}Oi(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}Oi(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c);break b}e=D[k+24|0];c=e<<2;d=oj((e|0)!=(e&1073741823)?-1:c);a=F[i+16>>2];if(F[a+80>>2]){h=F[F[a>>2]>>2]+F[a+48>>2]|0}else{h=0}if(!b){break b}if((e|0)>0){k=e&-4;m=e&3;e=e-1>>>0<3;while(1){a=0;g=0;if(!e){while(1){l=a<<2;j=h+(f<<2)|0;F[l+d>>2]=F[j>>2];F[(l|4)+d>>2]=F[j+4>>2];F[(l|8)+d>>2]=F[j+8>>2];F[(l|12)+d>>2]=F[j+12>>2];a=a+4|0;f=f+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=0;if(m){while(1){F[(a<<2)+d>>2]=F[h+(f<<2)>>2];a=a+1|0;f=f+1|0;g=g+1|0;if((m|0)!=(g|0)){continue}break}}Oi(F[F[F[i+8>>2]+64>>2]>>2]+o|0,d,c);o=c+o|0;n=n+1|0;if((n|0)!=(b|0)){continue}break}break b}Oi(F[F[k+64>>2]>>2],d,c);if((b|0)==1){break b}e=b-1|0;h=e&1;a=0;if((b|0)!=2){b=e&-2;while(1){a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);a=a+c|0;Oi(a+F[F[F[i+8>>2]+64>>2]>>2]|0,d,c);f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!h){break b}Oi(F[F[F[i+8>>2]+64>>2]>>2]+(a+c|0)|0,d,c)}mj(d);d=1}return d|0}function Ab(a,b){var c=0,d=0,e=0,f=0,g=0;e=fa-16|0;fa=e;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=a+16|0;F[d>>2]=0;F[d+4>>2]=0;D[d+5|0]=0;D[d+6|0]=0;D[d+7|0]=0;D[d+8|0]=0;D[d+9|0]=0;D[d+10|0]=0;D[d+11|0]=0;D[d+12|0]=0;c=d+16|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+32|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+48|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d- -64|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+80|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+96|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+112|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+128|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+144|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+160|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+176|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+192|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+208|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+224|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+240|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+256|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+272|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+288|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+304|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+320|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+336|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+352|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+368|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+384|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+400|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+416|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+432|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+448|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+464|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c=d+480|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;d=d+496|0;F[d>>2]=0;F[d+4>>2]=0;D[d+5|0]=0;D[d+6|0]=0;D[d+7|0]=0;D[d+8|0]=0;D[d+9|0]=0;D[d+10|0]=0;D[d+11|0]=0;D[d+12|0]=0;F[a+528>>2]=0;F[a+532>>2]=0;D[a+533|0]=0;D[a+534|0]=0;D[a+535|0]=0;D[a+536|0]=0;D[a+537|0]=0;D[a+538|0]=0;D[a+539|0]=0;D[a+540|0]=0;F[a+544>>2]=0;F[a+548>>2]=0;F[a+560>>2]=0;F[a+552>>2]=0;F[a+556>>2]=0;F[a+564>>2]=0;F[a+568>>2]=0;F[a+580>>2]=0;F[a+572>>2]=0;F[a+576>>2]=0;F[a+584>>2]=0;F[a+588>>2]=0;F[a+600>>2]=0;F[a+592>>2]=0;F[a+596>>2]=0;F[a+612>>2]=0;F[a+604>>2]=0;F[a+608>>2]=0;g=a+628|0;a:{b:{if(b){if(b>>>0<1073741824){break b}Ha();V()}F[a+616>>2]=0;F[a+620>>2]=0;F[a+624>>2]=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;d=1;break a}d=b<<2;c=oj(d);F[a+604>>2]=c;f=c+d|0;F[a+612>>2]=f;Qi(c,0,d);F[a+624>>2]=0;F[a+616>>2]=0;F[a+620>>2]=0;F[a+608>>2]=f;c=oj(d);F[a+616>>2]=c;f=c+d|0;F[a+624>>2]=f;Qi(c,0,d);F[a+620>>2]=f;c=oj(d);F[e>>2]=c;f=c+d|0;F[e+8>>2]=f;Qi(c,0,d);F[e+4>>2]=f;d=b<<5|1}Eb(g,d,e);c=F[e>>2];if(c){F[e+4>>2]=c;mj(c)}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(b){b=b<<2;c=oj(b);F[e>>2]=c;f=b+c|0;F[e+8>>2]=f;Qi(c,0,b);F[e+4>>2]=f}Eb(a+640|0,d,e);b=F[e>>2];if(b){F[e+4>>2]=b;mj(b)}fa=e+16|0;return a}function xe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=F[a+32>>2];e=F[c+16>>2];d=F[c+12>>2];b=F[c+20>>2];if(I[c+8>>2]>e>>>0&(d|0)>=(b|0)|(b|0)<(d|0)){f=G[e+F[c>>2]|0];d=e+1|0;b=d?b:b+1|0;F[c+16>>2]=d;F[c+20>>2]=b;c=F[a+48>>2];F[a+48>>2]=0;if(c){ia[F[F[c>>2]+4>>2]](c)}a:{b:{c:{d:{switch(f|0){case 0:c=oj(384);F[c>>2]=11412;Qi(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+376>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;break c;case 1:c=oj(424);F[c>>2]=11464;Qi(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+392>>2]=0;F[c+396>>2]=0;F[c+384>>2]=0;F[c+388>>2]=0;F[c+376>>2]=0;F[c+380>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;b=c+400|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;F[c+416>>2]=-1;F[c+420>>2]=-1;break c;case 2:break d;default:break b}}c=oj(440);F[c>>2]=11512;Qi(c+4|0,0,80);F[c+96>>2]=0;F[c+100>>2]=0;F[c+92>>2]=-1;F[c+84>>2]=-1;F[c+88>>2]=-1;F[c+104>>2]=0;F[c+108>>2]=0;F[c+112>>2]=0;F[c+116>>2]=0;F[c+120>>2]=0;F[c+124>>2]=0;F[c+128>>2]=0;F[c+132>>2]=0;F[c+136>>2]=0;F[c+140>>2]=0;F[c+144>>2]=0;F[c+148>>2]=0;F[c+156>>2]=0;F[c+160>>2]=0;F[c+152>>2]=1065353216;F[c+164>>2]=0;F[c+168>>2]=0;F[c+172>>2]=0;F[c+176>>2]=0;F[c+180>>2]=0;F[c+184>>2]=0;F[c+188>>2]=0;F[c+192>>2]=0;F[c+196>>2]=0;F[c+200>>2]=0;F[c+204>>2]=0;F[c+208>>2]=0;F[c+212>>2]=-1;F[c+216>>2]=0;F[c+220>>2]=0;F[c+224>>2]=0;b=c+232|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+272|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;b=c+312|0;F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=c+328|0;E[b+38>>1]=0;F[b>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;F[b+24>>2]=0;F[b+28>>2]=0;D[b+29|0]=0;D[b+30|0]=0;D[b+31|0]=0;D[b+32|0]=0;D[b+33|0]=0;D[b+34|0]=0;D[b+35|0]=0;D[b+36|0]=0;F[c+392>>2]=0;F[c+396>>2]=0;F[c+384>>2]=0;F[c+388>>2]=0;F[c+376>>2]=0;F[c+380>>2]=0;F[c+368>>2]=0;F[c+372>>2]=0;F[c+416>>2]=0;F[c+420>>2]=0;F[c+408>>2]=2;F[c+412>>2]=7;F[c+400>>2]=-1;F[c+404>>2]=-1;F[c+424>>2]=0;F[c+428>>2]=0;F[c+432>>2]=0;F[c+436>>2]=0}b=F[a+48>>2];F[a+48>>2]=c;if(!b){break a}ia[F[F[b>>2]+4>>2]](b)}c=F[a+48>>2];if(c){break a}return 0}a=ia[F[F[c>>2]+8>>2]](c,a)|0}else{a=0}return a|0}function Uc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0,X=0;if((e|0)==2){F[a+8>>2]=2;F[a- -64>>2]=f;e=a+32|0;f=F[e>>2];d=F[a+36>>2]-f|0;a:{if(d>>>0<=7){Ja(e,2-(d>>>2|0)|0);break a}if((d|0)==8){break a}F[a+36>>2]=f+8}b:{d=F[a+56>>2];e=F[d+4>>2];d=F[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;J=f>>2;T=(J|0)>1?J:1;f=1;while(1){j=fa-80|0;fa=j;e=-1;d=F[(q<<2)+d>>2];g=-1;c:{if((d|0)==-1){break c}e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;g=d-1|0;if((d>>>0)%3|0){break c}g=d+2|0}i=F[m+36>>2];d=F[i>>2];d:{e:{f:{g:{h:{i=F[i+4>>2]-d>>2;h=e<<2;e=F[F[m+32>>2]+28>>2];k=F[h+e>>2];if(i>>>0<=k>>>0){break h}e=F[e+(g<<2)>>2];if(e>>>0>=i>>>0){break h}i:{j:{g=F[d+(e<<2)>>2];i=F[d+(k<<2)>>2];if((g|0)>=(q|0)|(i|0)>=(q|0)){break j}d=(g<<3)+c|0;v=F[d+4>>2];e=(i<<3)+c|0;s=F[e+4>>2];x=F[d>>2];C=F[e>>2];if(!((x|0)!=(C|0)|(s|0)!=(v|0))){F[m+8>>2]=C;F[m+12>>2]=s;break i}d=F[F[m+4>>2]+(q<<2)>>2];F[j+72>>2]=0;F[j+76>>2]=0;e=j- -64|0;F[e>>2]=0;F[e+4>>2]=0;F[j+56>>2]=0;F[j+60>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Vc(e,d,D[e+24|0],j+56|0);d=F[F[m+4>>2]+(i<<2)>>2];F[j+48>>2]=0;F[j+52>>2]=0;F[j+40>>2]=0;F[j+44>>2]=0;F[j+32>>2]=0;F[j+36>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Vc(e,d,D[e+24|0],j+32|0);d=F[F[m+4>>2]+(g<<2)>>2];F[j+24>>2]=0;F[j+28>>2]=0;F[j+16>>2]=0;F[j+20>>2]=0;F[j+8>>2]=0;F[j+12>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Vc(e,d,D[e+24|0],j+8|0);K=F[j+44>>2];d=F[j+16>>2];E=F[j+40>>2];e=E;k=F[j+20>>2]-(K+(d>>>0>>0)|0)|0;o=d-e|0;d=Rj(o,k,o,k);e=ha;n=d;L=F[j+36>>2];d=F[j+8>>2];H=F[j+32>>2];g=H;h=F[j+12>>2]-(L+(d>>>0>>0)|0)|0;t=d-g|0;g=Rj(t,h,t,h);d=n+g|0;e=ha+e|0;e=d>>>0>>0?e+1|0:e;n=d;M=F[j+52>>2];d=F[j+24>>2];I=F[j+48>>2];g=I;l=F[j+28>>2]-(M+(d>>>0>>0)|0)|0;p=d-g|0;r=Rj(p,l,p,l);d=n+r|0;g=ha+e|0;u=d;r=d>>>0>>0?g+1|0:g;if(!(d|r)){break j}n=F[j+64>>2];d=n;O=F[j+68>>2];d=Rj(d-E|0,O-((d>>>0>>0)+K|0)|0,o,k);e=ha;g=d;P=F[j+56>>2];d=P;Q=F[j+60>>2];i=Rj(d-H|0,Q-((d>>>0>>0)+L|0)|0,t,h);d=g+i|0;g=ha+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=F[j+72>>2];d=R;S=F[j+76>>2];i=Rj(d-I|0,S-((d>>>0>>0)+M|0)|0,p,l);d=e+i|0;e=ha+g|0;y=d;w=d>>>0>>0?e+1|0:e;d=l>>31;e=d+p|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;e=e^d;d=d^g;i=d;d=k>>31;z=d+o|0;g=d+k|0;A=d^z;d=d^(d>>>0>z>>>0?g+1|0:g);z=d;N=0;d=h>>31;B=d+t|0;g=d+h|0;g=B>>>0>>0?g+1|0:g;U=e;B=B^d;d=d^g;g=(z|0)==(d|0)&A>>>0>B>>>0|d>>>0>>0;A=g?A:B;d=g?z:d;e=(i|0)==(d|0)&e>>>0>A>>>0|d>>>0>>0;e=Tj(-1,2147483647,e?U:A,e?i:d)>>>0>>0;d=ha;if(e&(d|0)<=(w|0)|(d|0)<(w|0)){break d}i=1;d=0;e=n;o=Sj(Rj(o,k,y,w),ha,u,r);k=o+E|0;g=ha+K|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=Rj(e,g,e,g);o=ha;e=P;n=g;h=Sj(Rj(t,h,y,w),ha,u,r);k=h+H|0;g=ha+L|0;g=h>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=Rj(e,g,e,g);g=n+k|0;e=ha+o|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;n=g;l=Sj(Rj(p,l,y,w),ha,u,r);h=l+I|0;g=ha+M|0;g=h>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-h|0;h=Rj(e,g,e,g);e=n+h|0;g=ha+k|0;k=Rj(e,e>>>0>>0?g+1|0:g,u,r);e=ha;h=e;if(!e&k>>>0<=1){break g}l=k;e=h;while(1){g=d<<1|i>>>31;i=i<<1;d=g;o=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(o){continue}break}break f}if((i|0)<(q|0)){d=i<<1}else{if((q|0)<=0){F[m+8>>2]=0;F[m+12>>2]=0;break i}d=(q<<1)-2|0}d=(d<<2)+c|0;F[m+8>>2]=F[d>>2];F[m+12>>2]=F[d+4>>2]}N=1;break d}xc();V()}d=h;i=k;if(i-1|0){break e}}while(1){e=Tj(k,h,i,d)+i|0;g=d+ha|0;g=e>>>0>>0?g+1|0:g;i=(g&1)<<31|e>>>1;d=g>>>1|0;e=Rj(i,d,i,d);g=ha;if((h|0)==(g|0)&e>>>0>k>>>0|g>>>0>h>>>0){continue}break}}k=F[m+20>>2];if(k){e=k-1|0;l=F[F[m+16>>2]+(e>>>3&536870908)>>2];F[m+20>>2]=e;g=s;o=v-g|0;h=g>>31;t=(v>>31)-(h+(g>>>0>v>>>0)|0)|0;g=Rj(y,w,o,t);p=ha;s=Rj(s,h,u,r);h=s+g|0;g=ha+p|0;g=h>>>0>>0?g+1|0:g;n=h;h=C;p=x-h|0;s=h>>31;v=(x>>31)-(s+(h>>>0>x>>>0)|0)|0;h=Rj(i,d,p,v);x=h;e=l>>>e&1;l=e?0-h|0:h;h=n+l|0;n=g;g=ha;g=n+(e?0-(g+((x|0)!=0)|0)|0:g)|0;W=m,X=Sj(h,h>>>0>>0?g+1|0:g,u,r),F[W+12>>2]=X;g=Rj(p,v,y,w);l=ha;p=Rj(u,r,C,s);h=p+g|0;g=ha+l|0;g=h>>>0

>>0?g+1|0:g;n=h;d=Rj(i,d,o,t);h=e?d:0-d|0;i=n+h|0;n=g;g=ha;e=n+(e?g:0-(((d|0)!=0)+g|0)|0)|0;W=m,X=Sj(i,i>>>0>>0?e+1|0:e,u,r),F[W+8>>2]=X}N=(k|0)!=0}fa=j+80|0;if(!N){break b}k:{if(F[a+8>>2]<=0){break k}g=F[a+32>>2];d=0;while(1){e=d<<2;f=F[(e+a|0)+68>>2];i=F[a+16>>2];l:{if((f|0)>(i|0)){F[e+g>>2]=i;break l}e=e+g|0;i=F[a+12>>2];if((i|0)>(f|0)){F[e>>2]=i;break l}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=q<<3;i=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+i|0;f=F[f+k>>2]+F[f+g>>2]|0;F[d>>2]=f;m:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break m}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}q=q+1|0;f=(J|0)>(q|0);if((q|0)==(T|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>q>>>0){continue}break}}xc();V()}a=f^1}else{a=0}return a&1}function nd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,W=0;if((e|0)==2){F[a+8>>2]=2;F[a- -64>>2]=f;e=a+32|0;f=F[e>>2];d=F[a+36>>2]-f|0;a:{if(d>>>0<=7){Ja(e,2-(d>>>2|0)|0);break a}if((d|0)==8){break a}F[a+36>>2]=f+8}b:{d=F[a+56>>2];e=F[d+4>>2];d=F[d>>2];f=e-d|0;if((f|0)<=0){f=0;break b}if((d|0)!=(e|0)){m=a+60|0;I=f>>2;T=(I|0)>1?I:1;f=1;while(1){i=fa-80|0;fa=i;e=-1;c:{d:{g=F[(p<<2)+d>>2];if((g|0)==-1){break d}h=F[m+32>>2];d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)!=-1){e=F[F[h>>2]+(d<<2)>>2]}d=-1;g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){d=F[F[h>>2]+(g<<2)>>2]}h=F[m+36>>2];g=F[h>>2];h=F[h+4>>2]-g>>2;if(h>>>0<=e>>>0|d>>>0>=h>>>0){break d}h=F[g+(e<<2)>>2];e:{f:{g:{h:{i:{j:{g=F[g+(d<<2)>>2];if((g|0)>=(p|0)|(h|0)>=(p|0)){break j}d=(g<<3)+c|0;w=F[d+4>>2];e=(h<<3)+c|0;r=F[e+4>>2];t=F[d>>2];C=F[e>>2];if(!((t|0)!=(C|0)|(r|0)!=(w|0))){F[m+8>>2]=C;F[m+12>>2]=r;break i}d=F[F[m+4>>2]+(p<<2)>>2];F[i+72>>2]=0;F[i+76>>2]=0;e=i- -64|0;F[e>>2]=0;F[e+4>>2]=0;F[i+56>>2]=0;F[i+60>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Vc(e,d,D[e+24|0],i+56|0);d=F[F[m+4>>2]+(h<<2)>>2];F[i+48>>2]=0;F[i+52>>2]=0;F[i+40>>2]=0;F[i+44>>2]=0;F[i+32>>2]=0;F[i+36>>2]=0;e=F[m>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}Vc(e,d,D[e+24|0],i+32|0);e=F[F[m+4>>2]+(g<<2)>>2];F[i+24>>2]=0;F[i+28>>2]=0;F[i+16>>2]=0;F[i+20>>2]=0;F[i+8>>2]=0;F[i+12>>2]=0;d=F[m>>2];if(!G[d+84|0]){e=F[F[d+68>>2]+(e<<2)>>2]}Vc(d,e,D[d+24|0],i+8|0);J=F[i+44>>2];d=F[i+16>>2];x=F[i+40>>2];e=x;k=F[i+20>>2]-(J+(d>>>0>>0)|0)|0;n=d-e|0;d=Rj(n,k,n,k);e=ha;o=d;K=F[i+36>>2];d=F[i+8>>2];E=F[i+32>>2];g=E;j=F[i+12>>2]-(K+(d>>>0>>0)|0)|0;u=d-g|0;g=Rj(u,j,u,j);d=o+g|0;e=ha+e|0;e=d>>>0>>0?e+1|0:e;o=d;L=F[i+52>>2];d=F[i+24>>2];H=F[i+48>>2];g=H;l=F[i+28>>2]-(L+(d>>>0>>0)|0)|0;s=d-g|0;q=Rj(s,l,s,l);d=o+q|0;g=ha+e|0;v=d;q=d>>>0>>0?g+1|0:g;if(!(d|q)){break j}N=F[i+64>>2];d=N;O=F[i+68>>2];d=Rj(d-x|0,O-((d>>>0>>0)+J|0)|0,n,k);e=ha;g=d;P=F[i+56>>2];d=P;Q=F[i+60>>2];h=Rj(d-E|0,Q-((d>>>0>>0)+K|0)|0,u,j);d=g+h|0;g=ha+e|0;g=d>>>0>>0?g+1|0:g;e=d;R=F[i+72>>2];d=R;S=F[i+76>>2];h=Rj(d-H|0,S-((d>>>0>>0)+L|0)|0,s,l);d=e+h|0;e=ha+g|0;z=d;y=d>>>0>>0?e+1|0:e;d=l>>31;e=d+s|0;g=d+l|0;g=e>>>0>>0?g+1|0:g;h=e^d;d=d^g;M=d;d=k>>31;g=d+n|0;e=d+k|0;A=g^d;d=d^(g>>>0>>0?e+1|0:e);o=d;e=0;d=j>>31;B=d+u|0;g=d+j|0;g=B>>>0>>0?g+1|0:g;B=B^d;d=d^g;g=(o|0)==(d|0)&A>>>0>B>>>0|d>>>0>>0;A=g?A:B;d=g?o:d;g=(M|0)==(d|0)&h>>>0>A>>>0|d>>>0>>0;g=Tj(-1,2147483647,g?h:A,g?M:d)>>>0>>0;d=ha;if(g&(d|0)<=(y|0)|(d|0)<(y|0)){break e}h=1;d=0;e=N;n=Sj(Rj(n,k,z,y),ha,v,q);k=n+x|0;g=ha+J|0;g=k>>>0>>0?g+1|0:g;g=O-((e>>>0>>0)+g|0)|0;e=e-k|0;g=Rj(e,g,e,g);n=ha;e=P;o=g;j=Sj(Rj(u,j,z,y),ha,v,q);k=j+E|0;g=ha+K|0;g=j>>>0>k>>>0?g+1|0:g;g=Q-((e>>>0>>0)+g|0)|0;e=e-k|0;k=Rj(e,g,e,g);g=o+k|0;e=ha+n|0;e=g>>>0>>0?e+1|0:e;k=e;e=R;o=g;l=Sj(Rj(s,l,z,y),ha,v,q);j=l+H|0;g=ha+L|0;g=j>>>0>>0?g+1|0:g;g=S-((e>>>0>>0)+g|0)|0;e=e-j|0;j=Rj(e,g,e,g);e=o+j|0;g=ha+k|0;k=Rj(e,e>>>0>>0?g+1|0:g,v,q);e=ha;j=e;if(!e&k>>>0<=1){break h}l=k;e=j;while(1){g=d<<1|h>>>31;h=h<<1;d=g;n=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(n){continue}break}break g}if((h|0)<(p|0)){d=h<<1}else{if((p|0)<=0){F[m+8>>2]=0;F[m+12>>2]=0;break i}d=(p<<1)-2|0}d=(d<<2)+c|0;F[m+8>>2]=F[d>>2];F[m+12>>2]=F[d+4>>2]}e=1;break e}d=j;h=k;if(h-1|0){break f}}while(1){g=Tj(k,j,h,d)+h|0;e=d+ha|0;e=g>>>0>>0?e+1|0:e;h=(e&1)<<31|g>>>1;d=e>>>1|0;e=Rj(h,d,h,d);g=ha;if((j|0)==(g|0)&e>>>0>k>>>0|g>>>0>j>>>0){continue}break}}k=F[m+20>>2];if(k){e=k-1|0;l=F[F[m+16>>2]+(e>>>3&536870908)>>2];F[m+20>>2]=e;g=r;n=w-g|0;j=g>>31;u=(w>>31)-(j+(g>>>0>w>>>0)|0)|0;g=Rj(z,y,n,u);s=ha;r=Rj(r,j,v,q);j=r+g|0;g=ha+s|0;g=j>>>0>>0?g+1|0:g;o=j;j=C;s=t-j|0;r=j>>31;w=(t>>31)-(r+(j>>>0>t>>>0)|0)|0;j=Rj(h,d,s,w);t=j;j=l>>>e&1;e=j;x=e?0-t|0:t;l=o+x|0;o=g;g=ha;e=o+(e?0-(g+((t|0)!=0)|0)|0:g)|0;U=m,W=Sj(l,l>>>0>>0?e+1|0:e,v,q),F[U+12>>2]=W;e=Rj(s,w,z,y);g=ha;l=Rj(v,q,C,r);e=l+e|0;g=ha+g|0;g=e>>>0>>0?g+1|0:g;d=Rj(h,d,n,u);l=j?d:0-d|0;h=l+e|0;e=ha;e=(j?e:0-(((d|0)!=0)+e|0)|0)+g|0;U=m,W=Sj(h,h>>>0>>0?e+1|0:e,v,q),F[U+8>>2]=W}e=(k|0)!=0}fa=i+80|0;break c}xc();V()}if(!e){break b}k:{if(F[a+8>>2]<=0){break k}g=F[a+32>>2];d=0;while(1){e=d<<2;f=F[(e+a|0)+68>>2];h=F[a+16>>2];l:{if((f|0)>(h|0)){F[e+g>>2]=h;break l}e=e+g|0;h=F[a+12>>2];if((h|0)>(f|0)){F[e>>2]=h;break l}F[e>>2]=f}d=d+1|0;f=F[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<=0){break k}d=p<<3;h=d+c|0;k=b+d|0;while(1){f=e<<2;d=f+h|0;f=F[f+k>>2]+F[f+g>>2]|0;F[d>>2]=f;m:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break m}f=f+F[a+20>>2]|0}F[d>>2]=f}e=e+1|0;if((e|0)>2]){continue}break}}p=p+1|0;f=(I|0)>(p|0);if((p|0)==(T|0)){break b}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>p>>>0){continue}break}}xc();V()}a=f^1}else{a=0}return a&1}function Jb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=M(0),x=0;k=fa-32|0;fa=k;a:{if(!(F[a+60>>2]!=F[a- -64>>2]|F[a+48>>2]!=F[a+52>>2])){j=1;break a}j=1;if((ia[F[F[a>>2]+24>>2]](a)|0)<=0){break a}b:{c:{while(1){d:{c=ia[F[F[a>>2]+20>>2]](a,x)|0;e:{f:{g:{f=F[F[F[(ia[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];switch(F[f+28>>2]-1|0){case 8:break f;case 0:case 2:case 4:break g;default:break e}}c=D[f+24|0];F[k+24>>2]=0;F[k+16>>2]=0;F[k+20>>2]=0;h:{if(!c){j=0;F[k>>2]=0;m=0;break h}if((c|0)<0){break d}c=c<<2;j=oj(c);F[k+16>>2]=j;b=c+j|0;F[k+24>>2]=b;m=0;Qi(j,0,c);F[k+20>>2]=b;c=D[f+24|0];F[k+8>>2]=0;F[k>>2]=0;F[k+4>>2]=0;if(!c){break h}if((c|0)<0){break c}c=c<<2;m=oj(c);F[k>>2]=m;Qi(m,0,c)}i:{j:{switch(F[f+28>>2]-1|0){case 4:e=0;h=0;n=0;c=0;i=fa-16|0;fa=i;d=D[f+24|0];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;k:{l:{if(d){if((d|0)<0){break l}b=d<<2;h=oj(b);F[i>>2]=h;F[i+8>>2]=b+h;Qi(h,0,b);e=oj(b);Qi(e,0,b)}if(!F[f+80>>2]){break k}while(1){u=F[f>>2];r=F[u>>2];b=F[f+40>>2];l=F[f+48>>2]+Rj(b,F[f+44>>2],n,c)|0;l=Oi(h,r+l|0,b);o=d<<24>>24;m:{if((o|0)<=0){break m}p=F[a+48>>2];g=0;if((d&255)!=1){v=o&-2;d=0;while(1){q=g<<2;F[q+e>>2]=F[p+(g+t<<2)>>2]+F[l+q>>2];q=g|1;r=q<<2;F[r+e>>2]=F[p+(t+q<<2)>>2]+F[l+r>>2];g=g+2|0;d=d+2|0;if((v|0)!=(d|0)){continue}break}}if(!(o&1)){break m}d=g<<2;F[d+e>>2]=F[p+(g+t<<2)>>2]+F[d+l>>2]}Oi(F[u>>2]+L(b,n)|0,e,b);b=n+1|0;c=b?c:c+1|0;n=b;if(!c&I[f+80>>2]<=b>>>0|c){break k}d=G[f+24|0];continue}}Ha();V()}if(e){mj(e)}if(h){mj(h)}fa=i+16|0;break i;case 2:e=0;h=0;n=0;c=0;i=fa-16|0;fa=i;d=D[f+24|0];F[i+8>>2]=0;F[i>>2]=0;F[i+4>>2]=0;n:{o:{if(d){if((d|0)<0){break o}b=d<<1;h=oj(b);F[i>>2]=h;F[i+8>>2]=b+h;Qi(h,0,b);e=oj(b);Qi(e,0,b)}if(!F[f+80>>2]){break n}while(1){u=F[f>>2];r=F[u>>2];b=F[f+40>>2];l=F[f+48>>2]+Rj(b,F[f+44>>2],n,c)|0;l=Oi(h,r+l|0,b);o=d<<24>>24;p:{if((o|0)<=0){break p}p=F[a+48>>2];g=0;if((d&255)!=1){v=o&-2;d=0;while(1){q=g<<1;E[q+e>>1]=H[l+q>>1]+H[p+(g+t<<2)>>1];q=g|1;r=q<<1;E[r+e>>1]=H[l+r>>1]+H[p+(t+q<<2)>>1];g=g+2|0;d=d+2|0;if((v|0)!=(d|0)){continue}break}}if(!(o&1)){break p}d=g<<1;E[d+e>>1]=H[d+l>>1]+H[p+(g+t<<2)>>1]}Oi(F[u>>2]+L(b,n)|0,e,b);b=n+1|0;c=b?c:c+1|0;n=b;if(!c&I[f+80>>2]<=b>>>0|c){break n}d=G[f+24|0];continue}}Ha();V()}if(e){mj(e)}if(h){mj(h)}fa=i+16|0;break i;case 0:break j;default:break i}}e=0;g=0;n=0;c=0;h=fa-16|0;fa=h;b=D[f+24|0];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;q:{r:{if(b){if((b|0)<0){break r}g=oj(b);F[h>>2]=g;F[h+8>>2]=b+g;Qi(g,0,b);e=oj(b);Qi(e,0,b)}if(F[f+80>>2]){while(1){r=F[F[f>>2]>>2];i=F[f+40>>2];b=F[f+48>>2]+Rj(i,F[f+44>>2],n,c)|0;b=Oi(g,r+b|0,i);l=D[f+24|0];s:{if((l|0)<=0){break s}p=F[a+48>>2];d=0;if((l|0)!=1){u=l&-2;i=0;while(1){D[d+e|0]=G[b+d|0]+G[p+(d+t<<2)|0];o=d|1;D[o+e|0]=G[b+o|0]+G[p+(o+t<<2)|0];d=d+2|0;i=i+2|0;if((u|0)!=(i|0)){continue}break}}if(!(l&1)){break s}D[d+e|0]=G[b+d|0]+G[p+(d+t<<2)|0]}b=F[f+40>>2];Oi(F[F[f>>2]>>2]+L(b,n)|0,e,b);b=n+1|0;c=b?c:c+1|0;n=b;if(!c&I[f+80>>2]>b>>>0){continue}break}}if(e){mj(e)}if(g){mj(g)}fa=h+16|0;break q}Ha();V()}}t=D[f+24|0]+t|0;c=1;if(m){mj(m)}if(j){mj(j)}if(c){break e}j=0;break a}g=F[F[a+60>>2]+(s<<2)>>2];e=F[a+36>>2];j=F[(ia[F[F[a>>2]+28>>2]](a)|0)+40>>2];F[k>>2]=F[f+56>>2];c=oj(32);F[k+16>>2]=c;F[k+20>>2]=24;F[k+24>>2]=-2147483616;D[c+24|0]=0;b=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);d=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[c+16|0]=d;D[c+17|0]=d>>>8;D[c+18|0]=d>>>16;D[c+19|0]=d>>>24;D[c+20|0]=b;D[c+21|0]=b>>>8;D[c+22|0]=b>>>16;D[c+23|0]=b>>>24;b=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[c+8|0]=d;D[c+9|0]=d>>>8;D[c+10|0]=d>>>16;D[c+11|0]=d>>>24;D[c+12|0]=b;D[c+13|0]=b>>>8;D[c+14|0]=b>>>16;D[c+15|0]=b>>>24;b=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;D[c+4|0]=b;D[c+5|0]=b>>>8;D[c+6|0]=b>>>16;D[c+7|0]=b>>>24;b=Kb(j,k,k+16|0);if(D[k+27|0]<0){mj(F[k+16>>2])}c=s+1|0;t:{if(b){$a(f,g);break t}h=e+L(s,24)|0;e=F[h+4>>2];s=D[f+24|0];d=s<<2;b=oj((s|0)!=(s&1073741823)?-1:d);F[k+16>>2]=1065353216;w=J[h+20>>2];e=-1<0){J[k+16>>2]=w/M(e|0)}if((e|0)<=0){break b}u:{if(!F[g+80>>2]){break u}if((s|0)<=0){m=0;j=0;while(1){Oi(F[F[f+64>>2]>>2]+j|0,b,d);j=d+j|0;m=m+1|0;if(m>>>0>2]){continue}break}break u}l=F[F[g>>2]>>2]+F[g+48>>2]|0;u=s&-2;v=s&1;i=0;e=0;j=0;while(1){n=F[h+8>>2];w=J[k+16>>2];m=0;p=0;if((s|0)!=1){while(1){o=m<<2;q=l+(j<<2)|0;J[o+b>>2]=M(w*M(F[q>>2]))+J[n+o>>2];o=o|4;J[o+b>>2]=M(w*M(F[q+4>>2]))+J[n+o>>2];m=m+2|0;j=j+2|0;p=p+2|0;if((u|0)!=(p|0)){continue}break}}if(v){m=m<<2;J[m+b>>2]=M(w*M(F[l+(j<<2)>>2]))+J[n+m>>2];j=j+1|0}Oi(F[F[f+64>>2]>>2]+e|0,b,d);e=d+e|0;i=i+1|0;if(i>>>0>2]){continue}break}}mj(b)}s=c}j=1;x=x+1|0;if((ia[F[F[a>>2]+24>>2]](a)|0)>(x|0)){continue}break a}break}Ha();V()}Ha();V()}mj(b);j=0}fa=k+32|0;return j|0}function Ie(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=fa-96|0;fa=h;q=F[a+4>>2];e=F[q+32>>2];l=F[e+8>>2];g=l;n=F[e+12>>2];d=n;c=F[e+20>>2];o=F[e+16>>2];a:{if((d|0)<=(c|0)&o>>>0>=g>>>0|(c|0)>(d|0)){break a}f=F[e>>2];p=G[f+o|0];g=o+1|0;d=g?c:c+1|0;F[e+16>>2]=g;F[e+20>>2]=d;if((d|0)>=(n|0)&g>>>0>=l>>>0|(d|0)>(n|0)){break a}m=G[f+g|0];g=o+2|0;d=g>>>0<2?c+1|0:c;k=g;F[e+16>>2]=g;F[e+20>>2]=d;j=p<<24>>24;b:{if((j|0)>=0){g=F[a+216>>2];if(p>>>0>=(F[a+220>>2]-g|0)/144>>>0){break a}g=g+L(p,144)|0;if(F[g>>2]<0){break b}break a}if(F[a+212>>2]>=0){break a}g=a+212|0}F[g>>2]=b;c:{d:{g=H[q+36>>1];e:{if(((g<<8|g>>>8)&65535)>>>0>=258){if((d|0)>=(n|0)&k>>>0>=l>>>0|(d|0)>(n|0)){break a}g=G[f+k|0];d=o+3|0;c=d>>>0<3?c+1|0:c;F[e+16>>2]=d;F[e+20>>2]=c;c=g>>>0>1;if(c){break a}c=c?0:g;if(!m){break e}if(c){break a}break d}if(m){break d}c=0}if((j|0)<0){e=a+184|0}else{e=F[a+216>>2]+L(p,144)|0;D[e+100|0]=0;e=e+104|0}f:{if((c|0)==1){f=fa-112|0;fa=f;k=F[F[a+4>>2]+44>>2];c=oj(120);F[c>>2]=12204;F[c+4>>2]=0;F[c+116>>2]=0;F[c+112>>2]=e;F[c+108>>2]=k;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+8>>2]=12416;d=c- -64|0;F[d>>2]=0;F[d+4>>2]=0;F[c+72>>2]=0;F[c+76>>2]=0;F[c+80>>2]=0;F[c+84>>2]=0;F[c+88>>2]=0;F[c+104>>2]=0;F[c+96>>2]=0;F[c+100>>2]=0;m=F[a+8>>2];F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;j=f+32|0;d=j;F[d>>2]=0;F[d+4>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;d=f- -64|0;F[d>>2]=0;F[d+4>>2]=0;F[f+72>>2]=0;F[f+76>>2]=0;F[f+80>>2]=0;F[f+84>>2]=0;F[f+88>>2]=0;F[f+104>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;F[f+8>>2]=12416;F[f+96>>2]=0;F[f+100>>2]=0;F[f+12>>2]=m;g=F[m>>2];d=F[m+4>>2];D[f+111|0]=0;l=j;j=f+111|0;Le(l,(d-g>>2>>>0)/3|0,j);d=F[f+12>>2];g=F[d+28>>2];d=F[d+24>>2];D[f+111|0]=0;Le(f+44|0,g-d>>2,j);F[f+28>>2]=c;F[f+24>>2]=k;F[f+20>>2]=e;F[f+16>>2]=m;e=c+8|0;d=f+8|0;Me(e,d);g:{if((d|0)==(e|0)){F[c+92>>2]=F[d+84>>2];break g}ab(c+56|0,F[d+48>>2],F[d+52>>2]);ab(c+68|0,F[d+60>>2],F[d- -64>>2]);ab(c+80|0,F[d+72>>2],F[d+76>>2]);F[c+92>>2]=F[d+84>>2];Na(c+96|0,F[d+88>>2],F[d+92>>2])}F[f+8>>2]=12416;e=F[f+96>>2];if(e){F[f+100>>2]=e;mj(e)}e=F[f+80>>2];if(e){F[f+84>>2]=e;mj(e)}e=F[f+68>>2];if(e){F[f+72>>2]=e;mj(e)}e=F[f+56>>2];if(e){F[f+60>>2]=e;mj(e)}F[f+8>>2]=12652;e=F[f+44>>2];if(e){mj(e)}e=F[f+32>>2];if(e){mj(e)}fa=f+112|0;break f}d=fa+-64|0;fa=d;f=F[F[a+4>>2]+44>>2];c=oj(80);F[c>>2]=12672;F[c+4>>2]=0;F[c+76>>2]=0;F[c+72>>2]=e;F[c+68>>2]=f;F[c+8>>2]=12836;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c- -64>>2]=0;m=c+56|0;g=m;F[g>>2]=0;F[g+4>>2]=0;l=F[a+8>>2];F[d+40>>2]=0;F[d+44>>2]=0;F[d+32>>2]=0;F[d+36>>2]=0;k=d+24|0;g=k;F[g>>2]=0;F[g+4>>2]=0;F[d+16>>2]=0;F[d+20>>2]=0;F[d+8>>2]=0;F[d+12>>2]=0;F[d+56>>2]=0;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=12836;F[d+4>>2]=l;j=F[l>>2];g=F[l+4>>2];D[d+63|0]=0;n=k;k=d+63|0;Le(n,(g-j>>2>>>0)/3|0,k);g=F[d+4>>2];j=F[g+28>>2];g=F[g+24>>2];D[d+63|0]=0;Le(d+36|0,j-g>>2,k);F[d+20>>2]=c;F[d+16>>2]=f;F[d+12>>2]=e;F[d+8>>2]=l;Me(c+8|0,d);ab(m,F[d+48>>2],F[d+52>>2]);F[d>>2]=12836;e=F[d+48>>2];if(e){F[d+52>>2]=e;mj(e)}F[d>>2]=12652;e=F[d+36>>2];if(e){mj(e)}e=F[d+24>>2];if(e){mj(e)}fa=d- -64|0}if(!c){break a}break c}if((j|0)<0){break a}g=F[q+44>>2];e=F[a+216>>2];c=oj(80);F[c+76>>2]=0;F[c+68>>2]=g;F[c+8>>2]=11900;F[c>>2]=12964;F[c+4>>2]=0;d=e+L(p,144)|0;i=d+104|0;F[c+72>>2]=i;F[c- -64>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+52>>2]=0;F[c+44>>2]=0;F[c+48>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+12>>2]=0;F[c+16>>2]=0;F[h+24>>2]=g;F[h+68>>2]=0;F[h+72>>2]=0;F[h+60>>2]=0;F[h+64>>2]=0;F[h+52>>2]=0;F[h+56>>2]=0;F[h+44>>2]=0;F[h+48>>2]=0;F[h+84>>2]=0;F[h+88>>2]=0;F[h+76>>2]=0;F[h+80>>2]=0;F[h+28>>2]=c;e=F[h+28>>2];F[h+8>>2]=F[h+24>>2];F[h+12>>2]=e;d=d+4|0;F[h+16>>2]=d;F[h+20>>2]=i;F[h+36>>2]=0;F[h+40>>2]=0;F[h+32>>2]=11900;e=F[h+20>>2];F[h>>2]=F[h+16>>2];F[h+4>>2]=e;i=h+32|0;Je(i,d,h);e=c+8|0;Me(e,i);if((e|0)!=(i|0)){ab(c+56|0,F[i+48>>2],F[i+52>>2])}Ke(i)}c=Zb(oj(64),c);j=F[a+4>>2];a=c;c=b;h:{i:{if((c|0)>=0){d=j+8|0;b=F[j+12>>2];e=F[j+8>>2];g=b-e>>2;j:{if((g|0)>(c|0)){break j}i=c+1|0;if(c>>>0>=g>>>0){$b(d,i-g|0);break j}if(g>>>0<=i>>>0){break j}e=e+(i<<2)|0;if((e|0)!=(b|0)){while(1){b=b-4|0;i=F[b>>2];F[b>>2]=0;if(i){ia[F[F[i>>2]+4>>2]](i)}if((b|0)!=(e|0)){continue}break}}F[j+12>>2]=e}e=F[d>>2]+(c<<2)|0;b=F[e>>2];F[e>>2]=a;if(b){break i}break h}b=a;if(!a){break h}}ia[F[F[b>>2]+4>>2]](b)}i=(c^-1)>>>31|0}fa=h+96|0;return i|0}function hj(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=fa-16|0;fa=e;F[e+12>>2]=a;a:{if(a>>>0<=211){d=F[ij(14288,14480,e+12|0)>>2];break a}if(a>>>0>=4294967292){jj();V()}f=(a>>>0)/210|0;d=L(f,210);F[e+8>>2]=a-d;g=ij(14480,14672,e+8|0)-14480>>2;while(1){d=F[(g<<2)+14480>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0>>0){break b}if((L(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((L(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((L(b,c)|0)!=(d|0)){continue}break}break c}b=F[(a<<2)+14288>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((L(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=L(f,210);continue}break}F[e+12>>2]=d}fa=e+16|0;return d}function Rf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=fa-32|0;fa=e;c=F[a+32>>2];d=H[a+36>>1];a:{b:{if(((d<<8|d>>>8)&65535)>>>0<=513){b=F[c+12>>2];d=F[c+20>>2];f=d;i=F[c+16>>2];g=i+4|0;d=g>>>0<4?d+1|0:d;j=F[c+8>>2];h=g;if(j>>>0>>0&(b|0)<=(d|0)|(b|0)<(d|0)){break a}n=F[c>>2];g=n+i|0;l=G[g|0]|G[g+1|0]<<8|(G[g+2|0]<<16|G[g+3|0]<<24);F[c+16>>2]=h;F[c+20>>2]=d;d=b;b=f;f=i+8|0;b=f>>>0<8?b+1|0:b;if(f>>>0>j>>>0&(b|0)>=(d|0)|(b|0)>(d|0)){break a}d=h+n|0;n=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[e+24>>2]=n;F[c+16>>2]=f;F[c+20>>2]=b;break b}if(!Sf(1,e+28|0,c)){break a}if(!Sf(1,e+24|0,F[a+32>>2])){break a}l=F[e+28>>2];n=F[e+24>>2]}if(l>>>0>1431655765){break a}f=F[a+32>>2];d=f;i=F[d+8>>2];b=i;c=F[d+16>>2];h=b-c|0;g=F[d+12>>2];o=b>>>0>>0;b=F[d+20>>2];d=Sj(h,g-(o+b|0)|0,3,0);if(!ha&d>>>0>>0){break a}d=Rj(l,0,3,0);if(!ha&d>>>0>>0|((b|0)>=(g|0)&c>>>0>=i>>>0|(b|0)>(g|0))){break a}g=G[c+F[f>>2]|0];i=c+1|0;d=i?b:b+1|0;F[f+16>>2]=i;F[f+20>>2]=d;c:{if(!g){f=0;b=fa-32|0;fa=b;F[b+24>>2]=0;F[b+16>>2]=0;F[b+20>>2]=0;d:{e:{d=L(l,3);if(d){if(d>>>0>=1073741824){break e}c=L(l,12);f=oj(c);F[b+16>>2]=f;Qi(f,0,c)}d=me(d,1,F[a+32>>2],f);f:{g:{if(!(!d|!l)){g=0;c=0;while(1){i=(c<<2)+f|0;h=F[i>>2];j=h>>>1|0;h=(h&1?0-j|0:j)+k|0;F[b>>2]=h;j=F[i+4>>2];k=j>>>1|0;h=h+(j&1?0-k|0:k)|0;F[b+4>>2]=h;i=F[i+8>>2];j=i>>>1|0;k=h+(i&1?0-j|0:j)|0;F[b+8>>2]=k;Tf(F[a+44>>2]+96|0,b);c=c+3|0;g=g+1|0;if((g|0)!=(l|0)){continue}break}break g}if(!f){break f}}mj(f)}fa=b+32|0;break d}Ha();V()}if(!d){break a}break c}h:{if(n>>>0<=255){if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;c=F[f+12>>2];b=c;h=F[f+8>>2];if((d|0)>=(b|0)&i>>>0>=h>>>0|(b|0)<(d|0)){break h}while(1){g=F[f>>2];k=G[g+i|0];b=d;j=i+1|0;b=j?b:b+1|0;F[f+16>>2]=j;F[f+20>>2]=b;F[e+8>>2]=k;if((b|0)>=(c|0)&j>>>0>=h>>>0|(b|0)>(c|0)){break h}k=G[g+j|0];b=d;j=i+2|0;b=j>>>0<2?b+1|0:b;F[f+16>>2]=j;F[f+20>>2]=b;F[e+12>>2]=k;if((b|0)>=(c|0)&j>>>0>=h>>>0|(b|0)>(c|0)){break h}b=G[g+j|0];c=i+3|0;d=c>>>0<3?d+1|0:d;F[f+16>>2]=c;F[f+20>>2]=d;F[e+16>>2]=b;Tf(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;h=F[b+8>>2];c=F[b+12>>2];b=c;if(i>>>0>>0&(d|0)<=(b|0)|(b|0)>(d|0)){continue}break}break h}if(n>>>0<=65535){if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[f+12>>2];c=c+3|0;b=c>>>0<3?b+1|0:b;j=F[f+8>>2];h=c;c=b;if(j>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}while(1){k=F[f>>2];b=k+i|0;b=G[b|0]|G[b+1|0]<<8;F[f+16>>2]=h;F[f+20>>2]=c;F[e+8>>2]=b;b=d;c=i+4|0;b=c>>>0<4?b+1|0:b;if(c>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}h=h+k|0;h=G[h|0]|G[h+1|0]<<8;F[f+16>>2]=c;F[f+20>>2]=b;F[e+12>>2]=h;b=d;d=i+6|0;b=d>>>0<6?b+1|0:b;if(d>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}c=c+k|0;c=G[c|0]|G[c+1|0]<<8;F[f+16>>2]=d;F[f+20>>2]=b;F[e+16>>2]=c;Tf(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[b+12>>2];j=F[b+8>>2];b=d;c=i+2|0;b=c>>>0<2?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&j>>>0>=h>>>0|(b|0)<(g|0)){continue}break}break h}i:{if(n>>>0>2097151){break i}g=H[a+36>>1];if(((g<<8|g>>>8)&65535)>>>0<514){break i}if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(!Sf(1,e+4|0,f)){break h}while(1){F[e+8>>2]=F[e+4>>2];if(!Sf(1,e+4|0,F[a+32>>2])){break h}F[e+12>>2]=F[e+4>>2];if(!Sf(1,e+4|0,F[a+32>>2])){break h}F[e+16>>2]=F[e+4>>2];Tf(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}d=F[a+32>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;if(Sf(1,e+4|0,d)){continue}break}break h}if(!l){break c}F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[f+12>>2];c=c+5|0;b=c>>>0<5?b+1|0:b;j=F[f+8>>2];h=c;c=b;if(j>>>0>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}while(1){k=F[f>>2];b=k+i|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[f+16>>2]=h;F[f+20>>2]=c;F[e+8>>2]=b;b=d;c=i+8|0;b=c>>>0<8?b+1|0:b;o=c;if(c>>>0>j>>>0&(b|0)>=(g|0)|(b|0)>(g|0)){break h}c=h+k|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[f+16>>2]=o;F[f+20>>2]=b;F[e+12>>2]=c;b=i+12|0;d=b>>>0<12?d+1|0:d;c=b;if(b>>>0>j>>>0&(d|0)>=(g|0)|(d|0)>(g|0)){break h}b=k+o|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[f+16>>2]=c;F[f+20>>2]=d;F[e+16>>2]=b;Tf(F[a+44>>2]+96|0,e+8|0);m=m+1|0;if((m|0)==(l|0)){break c}f=F[a+32>>2];b=f;i=F[b+16>>2];d=F[b+20>>2];F[e+16>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=F[b+12>>2];j=F[b+8>>2];b=d;c=i+4|0;b=c>>>0<4?b+1|0:b;h=c;c=b;if((b|0)<=(g|0)&j>>>0>=h>>>0|(b|0)<(g|0)){continue}break}}m=0;break a}F[F[a+4>>2]+80>>2]=n;m=1}fa=e+32|0;return m|0}function Te(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=fa-16|0;fa=m;a:{b:{c:{d:{if(G[F[a+4>>2]+36|0]<=1){j=-1;c=F[b+20>>2];e=F[b+16>>2];d=e+4|0;c=d>>>0<4?c+1|0:c;k=F[b+12>>2];if((k|0)<=(c|0)&d>>>0>I[b+8>>2]|(c|0)>(k|0)){break c}e=e+F[b>>2]|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[m+12>>2]=e;F[b+16>>2]=d;F[b+20>>2]=c;break d}j=-1;if(!Oe(1,m+12|0,b)){break c}e=F[m+12>>2]}e:{f:{g:{h:{i:{j:{if(!e){break j}c=F[a+8>>2];if((F[c+4>>2]-F[c>>2]>>2>>>0)/3>>>0>>0){break c}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0>=258){k=0;k:{l:{while(1){if(!Oe(1,m+8|0,b)){break c}c=F[m+8>>2];if(!Oe(1,m+8|0,b)){break c}f=c+f|0;c=F[m+8>>2];if(f>>>0>>0){break c}h=f-c|0;g=F[a+40>>2];m:{if((g|0)!=F[a+44>>2]){F[g+4>>2]=f;F[g>>2]=h;F[a+40>>2]=g+12;break m}c=F[a+36>>2];d=g-c|0;g=(d|0)/12|0;i=g+1|0;if(i>>>0>=357913942){break l}l=g<<1;i=g>>>0<178956970?i>>>0>l>>>0?i:l:357913941;if(i>>>0>=357913942){break k}i=L(i,12);l=oj(i);g=l+L(g,12)|0;F[g+4>>2]=f;F[g>>2]=h;h=g+L((d|0)/-12|0,12)|0;g=g+12|0;if((d|0)>0){Oi(h,c,d)}F[a+44>>2]=i+l;F[a+40>>2]=g;F[a+36>>2]=h;if(!c){break m}mj(c)}k=k+1|0;if((k|0)!=(e|0)){continue}break}j=0;lg(b,0,0);d=e>>>0>1?e:1;while(1){c=G[b+36|0];f=H[F[a+4>>2]+36>>1];n:{o:{if(((f<<8|f>>>8)&65535)>>>0<=513){if(!c){break n}g=0;c=F[b+32>>2];f=c>>>3|0;k=F[b+24>>2];e=f+k|0;h=F[b+28>>2];p:{if(e>>>0>=h>>>0){e=c;break p}g=G[e|0];e=c+1|0;F[b+32>>2]=e;f=e>>>3|0;g=g>>>(c&7)&1}if(h>>>0>f+k>>>0){break o}break n}if(!c){break n}g=0;e=F[b+32>>2];c=F[b+24>>2]+(e>>>3|0)|0;if(c>>>0>=I[b+28>>2]){break n}g=G[c|0]>>>(e&7)&1}F[b+32>>2]=e+1}c=F[a+36>>2]+L(j,12)|0;D[c+8|0]=G[c+8|0]&254|g&1;j=j+1|0;if((d|0)!=(j|0)){continue}break}D[b+36|0]=0;c=F[b+20>>2];f=0;e=F[b+32>>2]+7|0;f=e>>>0<7?1:f;d=f>>>3|0;e=(f&7)<<29|e>>>3;f=e+F[b+16>>2]|0;c=c+d|0;F[b+16>>2]=f;F[b+20>>2]=e>>>0>f>>>0?c+1|0:c;break j}Ha();V()}break a}k=0;while(1){d=F[b+12>>2];c=F[b+20>>2];f=c;h=F[b+16>>2];i=h+4|0;c=i>>>0<4?c+1|0:c;n=F[b+8>>2];l=i;if(n>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}o=F[b>>2];i=o+h|0;p=G[i|0]|G[i+1|0]<<8|(G[i+2|0]<<16|G[i+3|0]<<24);F[b+16>>2]=l;F[b+20>>2]=c;c=f;i=h+8|0;c=i>>>0<8?c+1|0:c;if(i>>>0>n>>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}l=l+o|0;l=G[l|0]|G[l+1|0]<<8|(G[l+2|0]<<16|G[l+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;if((c|0)>=(d|0)&i>>>0>=n>>>0|(c|0)>(d|0)){break c}c=G[i+o|0];d=h+9|0;f=d>>>0<9?f+1|0:f;F[b+16>>2]=d;F[b+20>>2]=f;g=c&1|g&-2;c=F[a+40>>2];q:{if((c|0)!=F[a+44>>2]){D[c+8|0]=g;F[c+4>>2]=l;F[c>>2]=p;F[a+40>>2]=c+12;break q}f=F[a+36>>2];d=c-f|0;c=(d|0)/12|0;h=c+1|0;if(h>>>0>=357913942){break i}i=c<<1;h=c>>>0<178956970?h>>>0>i>>>0?h:i:357913941;if(h>>>0>=357913942){break a}i=L(h,12);n=oj(i);c=n+L(c,12)|0;D[c+8|0]=g;F[c+4>>2]=l;F[c>>2]=p;h=c+L((d|0)/-12|0,12)|0;if((d|0)>0){Oi(h,f,d)}F[a+44>>2]=i+n;F[a+40>>2]=c+12;F[a+36>>2]=h;if(!f){break q}mj(f)}k=k+1|0;if((k|0)!=(e|0)){continue}break}}F[m+8>>2]=0;c=H[F[a+4>>2]+36>>1];c=(c<<8|c>>>8)&65535;r:{if(c>>>0<=511){j=-1;c=F[b+20>>2];f=F[b+16>>2];e=f+4|0;c=e>>>0<4?c+1|0:c;d=F[b+12>>2];if((d|0)<=(c|0)&e>>>0>I[b+8>>2]|(c|0)>(d|0)){break c}f=f+F[b>>2]|0;f=G[f|0]|G[f+1|0]<<8|(G[f+2|0]<<16|G[f+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=c;break r}if((c|0)!=512){break e}j=-1;if(!Oe(1,m+8|0,b)){break c}f=F[m+8>>2]}if(!f){break e}c=H[F[a+4>>2]+36>>1];if(((c<<8|c>>>8)&65535)>>>0<258){break f}g=0;j=0;while(1){if(!Oe(1,m+4|0,b)){break g}j=F[m+4>>2]+j|0;c=F[a+52>>2];s:{if((c|0)!=F[a+56>>2]){F[c>>2]=j;F[a+52>>2]=c+4;break s}d=F[a+48>>2];e=c-d|0;h=e>>2;c=h+1|0;if(c>>>0>=1073741824){break h}k=e>>1;k=e>>>0<2147483644?c>>>0>k>>>0?c:k:1073741823;if(k){if(k>>>0>=1073741824){break a}c=oj(k<<2)}else{c=0}h=c+(h<<2)|0;F[h>>2]=j;if((e|0)>0){Oi(c,d,e)}F[a+56>>2]=c+(k<<2);F[a+52>>2]=h+4;F[a+48>>2]=c;if(!d){break s}mj(d)}g=g+1|0;if((f|0)!=(g|0)){continue}break}break e}Ha();V()}Ha();V()}j=-1;break c}e=0;while(1){c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;j=F[b+12>>2];if((j|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(j|0)){j=-1;break c}d=d+F[b>>2]|0;k=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;c=F[a+52>>2];t:{if((c|0)!=F[a+56>>2]){F[c>>2]=k;F[a+52>>2]=c+4;break t}g=F[a+48>>2];d=c-g|0;h=d>>2;c=h+1|0;if(c>>>0>=1073741824){break b}j=d>>1;j=d>>>0<2147483644?c>>>0>j>>>0?c:j:1073741823;if(j){if(j>>>0>=1073741824){break a}c=oj(j<<2)}else{c=0}h=c+(h<<2)|0;F[h>>2]=k;if((d|0)>0){Oi(c,g,d)}F[a+56>>2]=c+(j<<2);F[a+52>>2]=h+4;F[a+48>>2]=c;if(!g){break t}mj(g)}e=e+1|0;if((f|0)!=(e|0)){continue}break}}j=F[b+16>>2]}fa=m+16|0;return j}Ha();V()}Ua(1336);V()}function qg(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:d:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f|0];if((e|0)<0){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if((e-128&65535)>>>0<65280){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>127){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e-128>>>0<4294967040){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>127){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=F[f>>2];e=F[f+4>>2]-(h>>>0<128)|0;if((e|0)==-1&h-128>>>0<4294967040|(e|0)!=-1){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>127|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=J[f>>2];m:{if(M(N(i))=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=K[f>>3];o:{if(N(j)<2147483648){e=~~j;break o}e=-2147483648}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}Qi(d+e|0,0,c-e|0)}return g}function rg(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:d:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break d}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=D[f|0];if((e|0)<0){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break d}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 1:e:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break e}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break e}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 2:f:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break f}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break f}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 3:g:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break g}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=H[f>>1];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break g}f=f+2|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 4:h:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break h}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break h}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 5:i:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break i}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f>>2];if(e>>>0>255){break a}D[b+d|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break i}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 6:j:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break j}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>255|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break j}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 7:k:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break k}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){e=F[f+4>>2];h=F[f>>2];if(!e&h>>>0>255|e){break a}D[b+d|0]=h;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break k}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 8:l:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break l}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;i=J[f>>2];m:{if(i=M(0)){e=~~i>>>0;break m}e=0}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break l}f=f+4|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 9:n:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break n}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){h=b+d|0;j=K[f>>3];o:{if(j<4294967296&j>=0){e=~~j>>>0;break o}e=0}D[h|0]=e;b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break n}f=f+8|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}p:{e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)<=0){break p}b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;f=F[a>>2];e=F[f>>2];if((b|0)>=(F[f+4>>2]-e|0)){break a}f=b+e|0;b=0;while(1){D[b+d|0]=G[f|0];b=b+1|0;e=D[a+24|0];if((b|0)>=(((c|0)<(e|0)?c:e)|0)){break p}f=f+1|0;if(f>>>0>2]+4>>2]){continue}break}break a}g=1;if((c|0)<=(e|0)){break a}}Qi(d+e|0,0,c-e|0)}return g}function Af(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{if(F[a+92>>2]==F[a+88>>2]){break e}c=F[a+52>>2];f:{if((c|0)!=F[a+56>>2]){F[c>>2]=b;F[a+52>>2]=c+4;break f}d=F[a+48>>2];i=c-d|0;f=i>>2;e=f+1|0;if(e>>>0>=1073741824){break b}c=i>>1;e=i>>>0<2147483644?c>>>0>>0?e:c:1073741823;if(e){if(e>>>0>=1073741824){break a}c=oj(e<<2)}else{c=0}f=c+(f<<2)|0;F[f>>2]=b;if((i|0)>0){Oi(c,d,i)}F[a+56>>2]=c+(e<<2);F[a+52>>2]=f+4;F[a+48>>2]=c;if(!d){break f}mj(d)}F[a+84>>2]=0;f=-1;c=-1;g:{if((b|0)==-1){break g}e=F[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=F[F[e>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=F[F[e>>2]+(d<<2)>>2]}h=c>>>3&536870908;e=F[a+36>>2];g=e+(f>>>3&536870908)|0;i=F[g>>2];d=1<>2]=d|i;g=a+8|0;if((b|0)!=-1){e=b+1|0;d=(e>>>0)%3|0?e:b-2|0}else{d=-1}Bf(g,f,d);e=F[a+36>>2]}d=e+h|0;e=F[d>>2];f=1<>2]=e|f;d=a+8|0;f=-1;i:{if((b|0)==-1){break i}f=b-1|0;if((b>>>0)%3|0){break i}f=b+2|0}Bf(d,c,f)}f=-1;f=(b|0)!=-1?F[F[F[a+4>>2]>>2]+(b<<2)>>2]:f;d=F[a+36>>2]+(f>>>3&536870908)|0;e=F[d>>2];c=1<>2]=c|e;Bf(a+8|0,f,b)}d=F[a+84>>2];if((d|0)>2){break e}while(1){f=L(d,12)+a|0;b=F[f+52>>2];if((b|0)==F[f+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=F[c>>2];F[f+52>>2]=c;F[a+84>>2]=d;if((b|0)==-1){break e}f=F[a+24>>2];c=(b>>>0)/3|0;j:{if(F[f+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){k=(b>>>0)/3|0;c=(k>>>3&268435452)+f|0;F[c>>2]=F[c>>2]|1<>2]>>2]+(b<<2)>>2]:f;d=F[a+36>>2]+(f>>>3&536870908)|0;e=F[d>>2];c=1<>2]=c|e;i=F[(F[F[a+16>>2]+96>>2]+L(k,12)|0)+((b>>>0)%3<<2)>>2];j=F[F[a+20>>2]+4>>2];c=F[j+4>>2];t:{if((c|0)!=F[j+8>>2]){F[c>>2]=i;F[j+4>>2]=c+4;break t}g=F[j>>2];h=c-g|0;e=h>>2;d=e+1|0;if(d>>>0>=1073741824){break s}c=h>>1;d=h>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=oj(d<<2)}else{c=0}e=c+(e<<2)|0;F[e>>2]=i;if((h|0)>0){Oi(c,g,h)}F[j+8>>2]=c+(d<<2);F[j+4>>2]=e+4;F[j>>2]=c;if(!g){break t}mj(g)}h=F[a+12>>2];c=F[h+4>>2];u:{if((c|0)!=F[h+8>>2]){F[c>>2]=b;F[h+4>>2]=c+4;break u}i=F[h>>2];g=c-i|0;e=g>>2;d=e+1|0;if(d>>>0>=1073741824){break r}c=g>>1;d=g>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=oj(d<<2)}else{c=0}e=c+(e<<2)|0;F[e>>2]=b;if((g|0)>0){Oi(c,i,g)}F[h+8>>2]=c+(d<<2);F[h+4>>2]=e+4;F[h>>2]=c;if(!i){break u}mj(i)}c=F[a+12>>2];F[F[c+12>>2]+(f<<2)>>2]=F[c+24>>2];F[c+24>>2]=F[c+24>>2]+1}if((b|0)==-1){break k}h=F[a+4>>2];f=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=F[F[h+12>>2]+(c<<2)>>2]}v:{w:{if((L(k,3)|0)!=(b|0)){e=b-1|0;break w}e=b+2|0;b=-1;if((e|0)==-1){break v}}b=F[F[h+12>>2]+(e<<2)>>2]}g=(b|0)==-1;i=(b>>>0)/3|0;e=(f>>>0)/3|0;c=(f|0)==-1;if(!c){c=c?-1:e;c=F[F[a+24>>2]+(c>>>3&536870908)>>2]&1<>2]+(c>>>3&536870908)>>2]>>>c&1){break x}e=0;c=F[F[h>>2]+(b<<2)>>2];if(!(F[F[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=F[a+88>>2]+(c<<2)|0;e=F[c>>2];F[c>>2]=e+1;e=(e|0)<=0?2:1}if(F[a+84>>2]>=(e|0)?d:0){break m}j=L(e,12)+a|0;c=F[j+52>>2];y:{if((c|0)!=F[j+56>>2]){F[c>>2]=b;F[j+52>>2]=c+4;break y}h=F[j+48>>2];k=c-h|0;i=k>>2;g=i+1|0;if(g>>>0>=1073741824){break d}c=k>>1;g=k>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=oj(g<<2)}else{c=0}i=c+(i<<2)|0;F[i>>2]=b;if((k|0)>0){Oi(c,h,k)}F[j+48>>2]=c;F[j+52>>2]=i+4;F[j+56>>2]=c+(g<<2);if(!h){break y}mj(h)}if(F[a+84>>2]<=(e|0)){break x}F[a+84>>2]=e}if(d){break k}b=-1;if((f|0)==-1){break n}}b=F[F[F[a+4>>2]>>2]+(f<<2)>>2]}e=0;if(!(F[F[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=F[a+88>>2]+(b<<2)|0;c=F[b>>2];F[b>>2]=c+1;e=(c|0)<=0?2:1}if(F[a+84>>2]<(e|0)){break l}b=f}f=F[a+24>>2];continue}break}h=L(e,12)+a|0;b=F[h+52>>2];z:{if((b|0)!=F[h+56>>2]){F[b>>2]=f;F[h+52>>2]=b+4;break z}i=F[h+48>>2];g=b-i|0;c=g>>2;d=c+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=g>>>0<2147483644?b>>>0>>0?d:b:1073741823;if(d){if(d>>>0>=1073741824){break a}b=oj(d<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=f;if((g|0)>0){Oi(b,i,g)}F[h+48>>2]=b;F[h+52>>2]=c+4;F[h+56>>2]=b+(d<<2);if(!i){break z}mj(i)}d=F[a+84>>2];if((e|0)>=(d|0)){break j}F[a+84>>2]=e;d=e;break j}d=F[a+84>>2]}if((d|0)<3){continue}break}}return 1}Ha();V()}Ha();V()}Ha();V()}Ua(1336);V()}function Ze(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=fa-48|0;fa=h;c=F[F[a+4>>2]+44>>2];d=F[a+8>>2];f=F[d>>2];d=F[d+4>>2];F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;d=(d-f>>2>>>0)/3|0;j=F[c+96>>2];f=(F[c+100>>2]-j|0)/12|0;a:{if(d>>>0>f>>>0){cf(c+96|0,d-f|0,h+32|0);break a}if(d>>>0>=f>>>0){break a}F[c+100>>2]=j+L(d,12)}b:{if(F[a+216>>2]==F[a+220>>2]){k=F[a+4>>2];i=F[k+44>>2];d=F[i+100>>2];if((d|0)!=F[i+96>>2]){c=0;while(1){g=F[a+8>>2];e=L(c,3);c:{d:{if((e|0)==-1){l=F[(F[g>>2]+(e<<2)|0)+4>>2];j=-1;e=1;break d}l=-1;j=F[F[g>>2]+(e<<2)>>2];f=e+1|0;if((f|0)==-1){e=0;break d}l=F[F[g>>2]+(f<<2)>>2];e=e+2|0;f=-1;if((e|0)==-1){break c}}f=F[F[g>>2]+(e<<2)>>2]}g=f;f=c+1|0;e=d;d=F[i+96>>2];e=(e-d|0)/12|0;if(e>>>0<=c>>>0){F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;cf(i+96|0,f-e|0,h+32|0);k=F[a+4>>2];d=F[i+96>>2]}c=L(c,12)+d|0;F[c+8>>2]=g;F[c+4>>2]=l;F[c>>2]=j;c=f;i=F[k+44>>2];d=F[i+100>>2];if(c>>>0<(d-F[i+96>>2]|0)/12>>>0){continue}break}}F[F[k+4>>2]+80>>2]=b;c=1;break b}F[h+24>>2]=0;F[h+16>>2]=0;F[h+20>>2]=0;k=F[a+8>>2];b=F[k>>2];c=F[k+4>>2];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;e:{f:{g:{h:{i:{j:{k:{b=c-b|0;if(b){if((b|0)<0){break k}n=oj(b);F[h>>2]=n;b=b>>2<<2;c=b+n|0;F[h+8>>2]=c;Qi(n,0,b);F[h+4>>2]=c}c=F[k+24>>2];if((F[k+28>>2]-c|0)<=0){d=0;b=0;break f}d=0;f=0;b=0;while(1){j=F[(o<<2)+c>>2];l:{if((j|0)==-1){break l}m:{if(F[F[a+120>>2]+(o>>>3&536870908)>>2]>>>o&1){break m}q=F[a+216>>2];c=F[a+220>>2]-q|0;if(!c){break m}c=(c|0)/144|0;r=c>>>0>1?c:1;l=0;c=(j>>>0)%3|0;g=j+2|0;s=(c|0)!=0|(g|0)!=-1;t=c?j-1|0:g;while(1){i=j<<2;e=q+L(l,144)|0;c=F[i+F[F[e+68>>2]>>2]>>2];n:{if(!(F[F[e+16>>2]+(c>>>3&536870908)>>2]>>>c&1)){break n}c=-1;o:{if(!s){break o}g=F[F[k+12>>2]+(t<<2)>>2];c=-1;if((g|0)==-1){break o}c=g-1|0;if((g>>>0)%3|0){break o}c=g+2|0}if((j|0)==(c|0)){break n}e=F[e+32>>2];g=F[e+i>>2];while(1){m=0;if((c|0)==-1){break e}if(F[e+(c<<2)>>2]!=(g|0)){j=c;break m}p:{q:{if((c>>>0)%3|0){i=c-1|0;break q}i=c+2|0;m=-1;if((i|0)==-1){break p}}c=F[F[k+12>>2]+(i<<2)>>2];m=-1;if((c|0)==-1){break p}m=c-1|0;if((c>>>0)%3|0){break p}m=c+2|0}c=m;if((j|0)!=(c|0)){continue}break}}l=l+1|0;if((r|0)!=(l|0)){continue}break}}c=b-f|0;g=c>>2;F[(j<<2)+n>>2]=g;r:{if(b>>>0

>>0){F[b>>2]=j;b=b+4|0;F[h+20>>2]=b;break r}b=g+1|0;if(b>>>0>=1073741824){break j}d=p-f|0;e=d>>1;b=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(b){if(b>>>0>=1073741824){break i}d=oj(b<<2)}else{d=0}g=d+(g<<2)|0;F[g>>2]=j;p=(b<<2)+d|0;b=g+4|0;if((c|0)>0){Oi(d,f,c)}F[h+24>>2]=p;F[h+20>>2]=b;F[h+16>>2]=d;if(f){mj(f);k=F[a+8>>2]}f=d}if((j|0)==-1){break l}s:{if((j>>>0)%3|0){c=j-1|0;break s}c=j+2|0;if((c|0)==-1){break l}}c=F[F[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=j;if((c|0)==(e|0)){break l}while(1){g=c;t:{u:{i=F[a+216>>2];c=F[a+220>>2]-i|0;if(!c){break u}c=(c|0)/144|0;l=c>>>0>1?c:1;c=0;while(1){q=F[(i+L(c,144)|0)+32>>2];r=g<<2;if(F[q+r>>2]==F[q+(e<<2)>>2]){c=c+1|0;if((l|0)!=(c|0)){continue}break u}break}c=b-d|0;e=c>>2;F[n+r>>2]=e;if(b>>>0

>>0){F[b>>2]=g;b=b+4|0;F[h+20>>2]=b;f=d;break t}b=e+1|0;if(b>>>0>=1073741824){break h}f=p-d|0;i=f>>1;b=f>>>0<2147483644?b>>>0>i>>>0?b:i:1073741823;if(b){if(b>>>0>=1073741824){break g}f=oj(b<<2)}else{f=0}e=f+(e<<2)|0;F[e>>2]=g;p=(b<<2)+f|0;b=e+4|0;if((c|0)>0){Oi(f,d,c)}F[h+24>>2]=p;F[h+20>>2]=b;F[h+16>>2]=f;if(!d){d=f;break t}mj(d);k=F[a+8>>2];d=f;break t}F[(g<<2)+n>>2]=F[(e<<2)+n>>2]}if((g|0)==-1){break l}v:{if((g>>>0)%3|0){c=g-1|0;break v}c=g+2|0;if((c|0)==-1){break l}}c=F[F[k+12>>2]+(c<<2)>>2];if((c|0)==-1){break l}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break l}e=g;if((c|0)!=(j|0)){continue}break}}o=o+1|0;c=F[k+24>>2];if((o|0)>2]-c>>2){continue}break}break f}Ha();V()}Ha();V()}Ua(1336);V()}Ha();V()}Ua(1336);V()}o=F[a+4>>2];i=F[o+44>>2];l=F[i+100>>2];if((l|0)!=F[i+96>>2]){c=0;while(1){f=c+1|0;g=L(c,12);j=g+n|0;e=F[j+8>>2];k=F[j+4>>2];j=F[j>>2];m=c;c=F[i+96>>2];l=(l-c|0)/12|0;if(m>>>0>=l>>>0){F[h+40>>2]=0;F[h+32>>2]=0;F[h+36>>2]=0;cf(i+96|0,f-l|0,h+32|0);o=F[a+4>>2];c=F[i+96>>2]}c=c+g|0;F[c+8>>2]=e;F[c+4>>2]=k;F[c>>2]=j;c=f;i=F[o+44>>2];l=F[i+100>>2];if(c>>>0<(l-F[i+96>>2]|0)/12>>>0){continue}break}}F[F[o+4>>2]+80>>2]=b-d>>2;m=1}c=m;if(n){mj(n)}if(!d){break b}F[h+20>>2]=d;mj(d)}fa=h+48|0;return c}function Vc(a,b,c,d){var e=0,f=0,g=0,h=0,i=M(0),j=0,k=0;a:{if(!d){break a}b:{c:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=D[b|0];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 1:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=0;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=E[b>>1];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=H[b>>1];F[e+4>>2]=0;b=b+2|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 4:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=F[b>>2];F[e>>2]=g;F[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 5:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=0;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 6:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=F[b+4>>2];e=(f<<3)+d|0;F[e>>2]=F[b>>2];F[e+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 7:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=F[b>>2];g=F[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;F[k>>2]=e;F[k+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 8:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;i=J[b>>2];d:{if(M(N(i))=M(1)?~~(i>M(0)?M(P(M(R(M(i*M(2.3283064365386963e-10)))),M(4294967296))):M(S(M(M(i-M(~~i>>>0>>>0))*M(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}F[e>>2]=h;F[e+4>>2]=g;b=b+4|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 9:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;k=F[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;j=K[b>>3];e:{if(N(j)<0x8000000000000000){g=N(j)>=1?~~(j>0?P(R(j*2.3283064365386963e-10),4294967295):S((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}F[e>>2]=h;F[e+4>>2]=g;b=b+8|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];g=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=g+b|0;h=F[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;F[e>>2]=G[b|0];F[e+4>>2]=0;b=b+1|0;f=f+1|0;e=D[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break a}}Qi((e<<3)+d|0,0,c-e<<3)}}function bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=fa-96|0;fa=f;e=F[a+16>>2];D[f+92|0]=1;F[f+88>>2]=b;F[f+84>>2]=b;F[f+80>>2]=e;m=F[a+20>>2];d=F[m>>2];a:{b:{e=F[F[e+28>>2]+(b<<2)>>2];if(e>>>0>2]-d>>2>>>0){d=F[F[a+8>>2]+(F[d+(e<<2)>>2]<<2)>>2];e=F[a+4>>2];if(!G[e+84|0]){d=F[F[e+68>>2]+(d<<2)>>2]}F[f+72>>2]=0;F[f+76>>2]=0;m=f- -64|0;F[m>>2]=0;F[m+4>>2]=0;F[f+56>>2]=0;F[f+60>>2]=0;Vc(e,d,D[e+24|0],f+56|0);e=b+1|0;d=(e>>>0)%3|0;if(b>>>0<=e>>>0){m=d?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;while(1){d=m;e=h;c:{if(!F[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}k=F[a+20>>2];b=F[k>>2];d=F[F[F[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=F[k+4>>2]-b>>2>>>0){break b}d=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){d=F[F[b+68>>2]+(d<<2)>>2]}F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;Vc(b,d,D[b+24|0],f+32|0);d=F[a+20>>2];b=F[d>>2];e=F[F[F[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=F[d+4>>2]-b>>2>>>0){break a}d=F[F[a+8>>2]+(F[b+(e<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){d=F[F[b+68>>2]+(d<<2)>>2]}F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;Vc(b,d,D[b+24|0],f+8|0);e=F[f+8>>2];b=F[f+56>>2];d=e-b|0;k=F[f+60>>2];n=F[f+12>>2]-(k+(b>>>0>e>>>0)|0)|0;i=F[f+40>>2];e=F[f+64>>2];s=i-e|0;t=F[f+68>>2];i=F[f+44>>2]-(t+(e>>>0>i>>>0)|0)|0;u=Rj(d,n,s,i);v=j-u|0;g=g-(ha+(j>>>0>>0)|0)|0;w=v;j=F[f+16>>2];u=j-e|0;t=F[f+20>>2]-((e>>>0>j>>>0)+t|0)|0;j=F[f+32>>2];v=j-b|0;k=F[f+36>>2]-((b>>>0>j>>>0)+k|0)|0;e=Rj(u,t,v,k);j=w+e|0;b=ha+g|0;b=e>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=F[f+48>>2];e=F[f+72>>2];n=b-e|0;o=F[f+76>>2];x=F[f+52>>2]-(o+(b>>>0>>0)|0)|0;p=Rj(d,p,n,x);d=w+p|0;b=ha+l|0;b=d>>>0

>>0?b+1|0:b;l=F[f+24>>2];p=l-e|0;e=F[f+28>>2]-((e>>>0>l>>>0)+o|0)|0;l=Rj(p,e,v,k);o=d-l|0;l=b-(ha+(d>>>0>>0)|0)|0;b=Rj(u,t,n,x);d=q-b|0;b=r-(ha+(b>>>0>q>>>0)|0)|0;r=Rj(p,e,s,i);q=r+d|0;b=ha+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=F[f+88>>2];e=F[f+80>>2];d:{if(G[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}F[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;F[f+88>>2]=b;if((b|0)!=-1){break e}}b=F[f+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}D[f+92|0]=0;F[f+88>>2]=d;break d}if((b|0)!=F[f+84>>2]){break d}F[f+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}F[f+88>>2]=d}b=F[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;d=b+q|0;e=b;b=b+r|0;k=d^e;h=e^(d>>>0>>0?b+1|0:b);n=-1;d=2147483647;b=l>>31;i=b;e=b+o|0;b=b+l|0;b=e>>>0>>0?b+1|0:b;e=e^i;b=b^i;i=b;s=e^-1;b=b^2147483647;m=g;m:{n:{if(!F[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break m}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=a;a=b;b=g>>31;d=b+j|0;h=g;g=b;b=h+b|0;b=d>>>0>>0?b+1|0:b;h=d^g;d=h+e|0;g=b^g;b=d;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break o}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(e|0)&(g^-1)>>>0>>0|e>>>0>h>>>0){break o}b=b+e|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;d=b;if(!b&a>>>0<536870913){break m}}b=d>>>29|0;a=(d&536870911)<<3|n>>>29}j=Sj(j,m,a,b);o=Sj(o,l,a,b);q=Sj(q,r,a,b)}F[c+8>>2]=j;F[c+4>>2]=o;F[c>>2]=q;fa=f+96|0;return}xc();V()}xc();V()}xc();V()}function pe(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=fa+-64|0;fa=f;F[f+56>>2]=0;F[f+48>>2]=0;F[f+52>>2]=0;F[f+40>>2]=0;F[f+44>>2]=0;F[f+32>>2]=0;F[f+36>>2]=0;F[f+24>>2]=0;F[f+28>>2]=0;F[f+16>>2]=0;F[f+20>>2]=0;F[f+8>>2]=0;F[f+12>>2]=0;g=f+8|0;d=H[b+38>>1];a:{b:{if(!d){break b}c:{if(d>>>0<=511){e=F[b+12>>2];d=F[b+20>>2];h=F[b+16>>2];i=h+4|0;d=i>>>0<4?d+1|0:d;if(i>>>0>I[b+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=h+F[b>>2]|0;k=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[g+12>>2]=k;d=F[b+20>>2];e=F[b+16>>2]+4|0;d=e>>>0<4?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;break c}if(!qe(1,g+12|0,b)){break b}k=F[g+12>>2]}e=F[g>>2];d=F[g+4>>2]-e>>2;d:{if(d>>>0>>0){Ja(g,k-d|0);k=F[g+12>>2];break d}if(d>>>0<=k>>>0){break d}F[g+4>>2]=e+(k<<2)}d=1;if(!k){break a}q=F[b+8>>2];m=F[b+12>>2];p=F[g>>2];h=0;while(1){e=F[b+20>>2];i=F[b+16>>2];d=0;if((m|0)<=(e|0)&q>>>0<=i>>>0|(e|0)>(m|0)){break a}s=F[b>>2];n=G[s+i|0];d=e;e=i+1|0;d=e?d:d+1|0;i=e;F[b+16>>2]=e;F[b+20>>2]=d;e=n>>>2|0;j=0;e:{f:{g:{h:{t=n&3;switch(t|0){case 0:break f;case 3:break h;default:break g}}e=e+h|0;d=0;if(e>>>0>=k>>>0){break a}Qi(p+(h<<2)|0,0,(n&252)+4|0);h=e;break e}while(1){if((d|0)>=(m|0)&i>>>0>=q>>>0|(d|0)>(m|0)){break b}k=G[i+s|0];i=i+1|0;d=i?d:d+1|0;F[b+16>>2]=i;F[b+20>>2]=d;e=k<<(j<<3|6)|e;j=j+1|0;if((t|0)!=(j|0)){continue}break}}F[p+(h<<2)>>2]=e}k=F[g+12>>2];h=h+1|0;if(k>>>0>h>>>0){continue}break}i=g+16|0;q=F[g>>2];e=F[g+16>>2];d=F[g+20>>2]-e|0;i:{if(d>>>0<=4194303){Ja(i,1048576-(d>>>2|0)|0);break i}if((d|0)==4194304){break i}F[g+20>>2]=e+4194304}d=g+28|0;h=F[d>>2];e=F[g+32>>2]-h>>3;j:{if(e>>>0>>0){re(d,k-e|0);h=F[d>>2];break j}if(e>>>0>k>>>0){F[g+32>>2]=(k<<3)+h}if(!k){break b}}j=0;g=0;while(1){d=(j<<2)+q|0;m=F[d>>2];n=(j<<3)+h|0;e=g;F[n+4>>2]=e;F[n>>2]=m;d=F[d>>2];g=d+e|0;if(g>>>0>1048576){break b}k:{if(e>>>0>=g>>>0){break k}m=F[i>>2];n=0;p=d&7;if(p){while(1){F[m+(e<<2)>>2]=j;e=e+1|0;n=n+1|0;if((p|0)!=(n|0)){continue}break}}if(d-1>>>0<=6){break k}while(1){d=m+(e<<2)|0;F[d>>2]=j;F[d+28>>2]=j;F[d+24>>2]=j;F[d+20>>2]=j;F[d+16>>2]=j;F[d+12>>2]=j;F[d+8>>2]=j;F[d+4>>2]=j;e=e+8|0;if((g|0)!=(e|0)){continue}break}}j=j+1|0;if((k|0)!=(j|0)){continue}break}l=(g|0)==1048576}d=l}l:{if(!d|(F[f+20>>2]?0:a)){break l}g=0;j=fa-16|0;fa=j;m:{n:{if(H[b+38>>1]<=511){e=F[b+12>>2];k=e;d=F[b+20>>2];l=F[b+16>>2];i=l+8|0;d=i>>>0<8?d+1|0:d;h=F[b+8>>2];if(h>>>0>>0&(d|0)>=(e|0)|(d|0)>(e|0)){break m}l=l+F[b>>2]|0;e=G[l|0]|G[l+1|0]<<8|(G[l+2|0]<<16|G[l+3|0]<<24);l=G[l+4|0]|G[l+5|0]<<8|(G[l+6|0]<<16|G[l+7|0]<<24);F[b+16>>2]=i;F[b+20>>2]=d;break n}if(!se(1,j+8|0,b)){break m}i=F[b+16>>2];d=F[b+20>>2];h=F[b+8>>2];k=F[b+12>>2];e=F[j+8>>2];l=F[j+12>>2]}m=h-i|0;h=k-(d+(i>>>0>h>>>0)|0)|0;if((h|0)==(l|0)&e>>>0>m>>>0|h>>>0>>0){break m}d=d+l|0;h=e+i|0;d=h>>>0>>0?d+1|0:d;F[b+16>>2]=h;F[b+20>>2]=d;if((e|0)<=0){break m}b=i+F[b>>2]|0;F[f+48>>2]=b;d=e-1|0;h=d+b|0;i=G[h|0];o:{if(i>>>0<=63){F[f+52>>2]=d;b=G[h|0]&63;break o}p:{switch((i>>>6|0)-1|0){case 0:if(e>>>0<2){break m}F[f+52>>2]=e-2;b=(b+e|0)-2|0;b=G[b+1|0]<<8&16128|G[b|0];break o;case 1:if(e>>>0<3){break m}F[f+52>>2]=e-3;b=(b+e|0)-3|0;b=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break o;default:break p}}F[f+52>>2]=e-4;b=(b+e|0)-4|0;b=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}b=b+4194304|0;F[f+56>>2]=b;g=b>>>0<1073741824}fa=j+16|0;if(!g){break l}if(!a){o=1;break l}d=F[f+36>>2];e=F[f+48>>2];h=F[f+24>>2];b=F[f+56>>2];while(1){q:{if(b>>>0>4194303){break q}o=F[f+52>>2];while(1){if((o|0)<=0){break q}o=o-1|0;F[f+52>>2]=o;b=G[e+o|0]|b<<8;F[f+56>>2]=b;if(b>>>0<4194304){continue}break}}i=b&1048575;g=F[h+(i<<2)>>2];l=d+(g<<3)|0;b=(L(F[l>>2],b>>>20|0)+i|0)-F[l+4>>2]|0;F[f+56>>2]=b;F[(r<<2)+c>>2]=g;o=1;r=r+1|0;if((r|0)!=(a|0)){continue}break}}a=F[f+36>>2];if(a){F[f+40>>2]=a;mj(a)}a=F[f+24>>2];if(a){F[f+28>>2]=a;mj(a)}a=F[f+8>>2];if(a){F[f+12>>2]=a;mj(a)}fa=f- -64|0;return o}function tg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=E[b>>1];if((e|0)<0){break b}E[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e-32768>>>0<4294901760){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>32767){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=F[b>>2];e=F[b+4>>2]-(i>>>0<32768)|0;if((e|0)==-1&i-32768>>>0<4294901760|(e|0)!=-1){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>32767|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=J[b>>2];e:{if(M(N(j))>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=K[b>>3];f:{if(N(k)<2147483648){e=~~k;break f}e=-2147483648}E[i>>1]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}Qi((e<<1)+d|0,0,c-e<<1)}return h}return 0}function zc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;F[a+8>>2]=e;d=a+32|0;i=F[d>>2];f=F[a+36>>2]-i>>2;a:{if(f>>>0>>0){Ja(d,e-f|0);i=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}d=e}f=(e&1073741823)!=(e|0)?-1:e<<2;m=Qi(oj(f),0,f);p=Qi(oj(f),0,f);b:{if((d|0)<=0){break b}while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){F[d+i>>2]=h;break c}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){h=f<<2;d=h+c|0;h=F[b+h>>2]+F[h+i>>2]|0;F[d>>2]=h;d:{if((h|0)>F[a+16>>2]){g=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}g=h+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];u=F[f>>2];f=F[f+4>>2]-u|0;if((f|0)>=5){y=F[a+52>>2];r=F[a+48>>2];f=f>>2;z=(f|0)>2?f:2;A=f>>>0>1?f:1;v=e&-2;w=e&1;B=e&-4;x=e&3;t=e-1|0;C=e<<2;o=1;while(1){e:{f:{g:{h:{if((o|0)!=(A|0)){h=F[(o<<2)+u>>2];s=(e|0)<=0;if(!s){Qi(m,0,C)}if((h|0)==-1){j=L(e,o);break f}D=F[r>>2];n=0;f=h;while(1){i:{if(F[(f>>>3&536870908)+D>>2]>>>f&1){break i}g=F[F[F[r+64>>2]+12>>2]+(f<<2)>>2];if((g|0)==-1){break i}j=F[y>>2];i=F[r+28>>2];l=F[j+(F[i+(g<<2)>>2]<<2)>>2];if((l|0)>=(o|0)){break i}k=g+1|0;k=F[j+(F[i+(((k>>>0)%3|0?k:g-2|0)<<2)>>2]<<2)>>2];if((k|0)>=(o|0)){break i}g=F[j+(F[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(o|0)){break i}j:{if(s){break j}i=L(e,g);j=L(e,k);l=L(e,l);g=0;q=0;if(t){while(1){F[(g<<2)+p>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+l<<2)+c>>2];k=g|1;F[(k<<2)+p>>2]=(F[(i+k<<2)+c>>2]+F[(j+k<<2)+c>>2]|0)-F[(k+l<<2)+c>>2];g=g+2|0;q=q+2|0;if((v|0)!=(q|0)){continue}break}}if(w){F[(g<<2)+p>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+l<<2)+c>>2]}if(s){break j}i=0;g=0;j=0;if(t>>>0>2){while(1){l=g<<2;k=l+m|0;F[k>>2]=F[k>>2]+F[l+p>>2];k=l|4;q=k+m|0;F[q>>2]=F[q>>2]+F[k+p>>2];k=l|8;q=k+m|0;F[q>>2]=F[q>>2]+F[k+p>>2];l=l|12;k=l+m|0;F[k>>2]=F[k>>2]+F[l+p>>2];g=g+4|0;j=j+4|0;if((B|0)!=(j|0)){continue}break}}if(!x){break j}while(1){j=g<<2;l=j+m|0;F[l>>2]=F[l>>2]+F[j+p>>2];g=g+1|0;i=i+1|0;if((x|0)!=(i|0)){continue}break}}n=n+1|0}k:{l:{if((f>>>0)%3|0){f=f-1|0;break l}f=f+2|0;g=-1;if((f|0)==-1){break k}}g=-1;if(F[F[r>>2]+(f>>>3&536870908)>>2]>>>f&1){break k}f=F[F[F[r+64>>2]+12>>2]+(f<<2)>>2];g=-1;if((f|0)==-1){break k}g=f-1|0;if((f>>>0)%3|0){break k}g=f+2|0}f=(g|0)==(h|0)?-1:g;if((f|0)!=-1){continue}break}j=L(e,o);if(!n){break f}if(s){break g}g=0;f=0;if(!t){break h}while(1){h=g<<2;i=h+m|0;F[i>>2]=F[i>>2]/(n|0);h=(h|4)+m|0;F[h>>2]=F[h>>2]/(n|0);g=g+2|0;f=f+2|0;if((v|0)!=(f|0)){continue}break}break h}xc();V()}if(!w){break g}f=(g<<2)+m|0;F[f>>2]=F[f>>2]/(n|0)}if((d|0)<=0){break e}i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+m>>2];h=F[a+16>>2];m:{if((f|0)>(h|0)){F[d+i>>2]=h;break m}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break m}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=j<<2;g=d+c|0;j=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+j>>2]+F[h+i>>2]|0;F[d>>2]=h;n:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break n}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}if((d|0)<=0){break e}h=(L(o-1|0,e)<<2)+c|0;i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+h>>2];n=F[a+16>>2];o:{if((f|0)>(n|0)){F[d+i>>2]=n;break o}d=d+i|0;n=F[a+12>>2];if((n|0)>(f|0)){F[d>>2]=n;break o}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=j<<2;g=d+c|0;j=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+j>>2]+F[h+i>>2]|0;F[d>>2]=h;p:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break p}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}o=o+1|0;if((z|0)!=(o|0)){continue}break}}mj(p);mj(m);return 1}function ug(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=D[b|0];if((e|0)<0){break b}E[(g<<1)+d>>1]=e&255;b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=E[b>>1];if((e|0)<0){break b}E[(g<<1)+d>>1]=e;b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>65535){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(e>>>0>65535){break a}E[(g<<1)+d>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>65535|e){break a}E[(g<<1)+d>>1]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;j=J[b>>2];e:{if(j=M(0)){e=~~j>>>0;break e}e=0}E[i>>1]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<1)+d|0;k=K[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}E[i>>1]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}E[(g<<1)+d>>1]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}Qi((e<<1)+d|0,0,c-e<<1)}return h}return 0}function Zf(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=fa-48|0;fa=e;d=H[6693]|H[6694]<<16;f=H[6691]|H[6692]<<16;E[e+38>>1]=f;E[e+40>>1]=f>>>16;E[e+42>>1]=d;E[e+44>>1]=d>>>16;d=F[3345];F[e+32>>2]=F[3344];F[e+36>>2]=d;d=F[3343];F[e+24>>2]=F[3342];F[e+28>>2]=d;d=F[3341];F[e+16>>2]=F[3340];F[e+20>>2]=d;f=F[b+12>>2];d=F[b+20>>2];g=F[b+16>>2];h=g+5|0;d=h>>>0<5?d+1|0:d;a:{b:{if(h>>>0>I[b+8>>2]&(d|0)>=(f|0)|(d|0)>(f|0)){b=$i(e+16|0);if(b>>>0>=4294967280){break a}c:{d:{if(b>>>0>=11){d=b+16&-16;c=oj(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break d}D[e+11|0]=b;c=e;if(!b){break c}}Oi(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];qj(b,a,F[e+4>>2]);mj(a);break b}d=g+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);D[c|0]=f;D[c+1|0]=f>>>8;D[c+2|0]=f>>>16;D[c+3|0]=f>>>24;D[c+4|0]=G[d+4|0];d=F[b+20>>2];f=F[b+16>>2]+5|0;d=f>>>0<5?d+1|0:d;F[b+16>>2]=f;F[b+20>>2]=d;if(Vi(c,1404,5)){b=oj(32);D[b+16|0]=G[1640];c=G[1636]|G[1637]<<8|(G[1638]<<16|G[1639]<<24);d=G[1632]|G[1633]<<8|(G[1634]<<16|G[1635]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1628]|G[1629]<<8|(G[1630]<<16|G[1631]<<24);d=G[1624]|G[1625]<<8|(G[1626]<<16|G[1627]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+17|0]=0;F[a>>2]=-1;qj(a+4|0,b,17);mj(b);break b}g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=$i(e+16|0);if(b>>>0>=4294967280){break a}e:{f:{if(b>>>0>=11){d=b+16&-16;c=oj(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break f}D[e+11|0]=b;c=e;if(!b){break e}}Oi(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];qj(b,a,F[e+4>>2]);mj(a);break b}D[c+5|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=$i(e+16|0);if(b>>>0>=4294967280){break a}g:{h:{if(b>>>0>=11){d=b+16&-16;c=oj(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break h}D[e+11|0]=b;c=e;if(!b){break g}}Oi(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];qj(b,a,F[e+4>>2]);mj(a);break b}D[c+6|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=$i(e+16|0);if(b>>>0>=4294967280){break a}i:{j:{if(b>>>0>=11){d=b+16&-16;c=oj(d);F[e+8>>2]=d|-2147483648;F[e>>2]=c;F[e+4>>2]=b;break j}D[e+11|0]=b;c=e;if(!b){break i}}Oi(c,e+16|0,b)}D[b+c|0]=0;F[a>>2]=-2;a=a+4|0;if(D[e+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}b=a;a=F[e>>2];qj(b,a,F[e+4>>2]);mj(a);break b}D[c+7|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=F[b+16>>2]+1|0;d=f?d:d+1|0;F[b+16>>2]=f;F[b+20>>2]=d;g=F[b+12>>2];if((g|0)<=(d|0)&I[b+8>>2]<=f>>>0|(d|0)>(g|0)){b=_f(e,e+16|0);F[a>>2]=-2;a=a+4|0;if(D[b+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}qj(a,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break b}mj(F[b>>2]);break b}D[c+8|0]=G[f+F[b>>2]|0];d=F[b+20>>2];f=d;i=F[b+16>>2];g=i+1|0;d=g?d:d+1|0;F[b+16>>2]=g;F[b+20>>2]=d;h=F[b+12>>2];d=f;f=i+3|0;d=f>>>0<3?d+1|0:d;if(f>>>0>I[b+8>>2]&(d|0)>=(h|0)|(d|0)>(h|0)){b=_f(e,e+16|0);F[a>>2]=-2;a=a+4|0;if(D[b+11|0]>=0){b=F[e+4>>2];F[a>>2]=F[e>>2];F[a+4>>2]=b;F[a+8>>2]=F[e+8>>2];break b}qj(a,F[b>>2],F[b+4>>2]);if(D[b+11|0]>=0){break b}mj(F[b>>2]);break b}f=c;c=g+F[b>>2]|0;E[f+10>>1]=G[c|0]|G[c+1|0]<<8;d=F[b+20>>2];c=F[b+16>>2]+2|0;d=c>>>0<2?d+1|0:d;F[b+16>>2]=c;F[b+20>>2]=d;F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+4>>2]=0}fa=e+48|0;return}$f();V()}function ed(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;F[a+8>>2]=e;d=a+32|0;i=F[d>>2];f=F[a+36>>2]-i>>2;a:{if(f>>>0>>0){Ja(d,e-f|0);i=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}d=e}f=(e&1073741823)!=(e|0)?-1:e<<2;n=Qi(oj(f),0,f);q=Qi(oj(f),0,f);b:{if((d|0)<=0){break b}while(1){d=g<<2;f=F[d+n>>2];h=F[a+16>>2];c:{if((f|0)>(h|0)){F[d+i>>2]=h;break c}d=d+i|0;h=F[a+12>>2];if((h|0)>(f|0)){F[d>>2]=h;break c}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){h=f<<2;d=h+c|0;h=F[b+h>>2]+F[h+i>>2]|0;F[d>>2]=h;d:{if((h|0)>F[a+16>>2]){g=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break d}g=h+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];t=F[f>>2];f=F[f+4>>2]-t|0;if((f|0)>=5){z=F[a+52>>2];u=F[a+48>>2];f=f>>2;A=(f|0)>2?f:2;B=f>>>0>1?f:1;v=e&-2;w=e&1;C=e&-4;x=e&3;s=e-1|0;D=e<<2;o=1;while(1){e:{f:{g:{h:{if((o|0)!=(B|0)){h=F[(o<<2)+t>>2];r=(e|0)<=0;if(!r){Qi(n,0,D)}if((h|0)==-1){h=L(e,o);break f}y=F[u+12>>2];l=0;f=h;while(1){g=F[(f<<2)+y>>2];i:{if((g|0)==-1){break i}j=F[z>>2];i=F[u>>2];p=F[j+(F[i+(g<<2)>>2]<<2)>>2];k=g+1|0;k=(k>>>0)%3|0?k:g-2|0;if((k|0)!=-1){k=F[i+(k<<2)>>2]}else{k=-1}j:{k:{if((g>>>0)%3|0){g=g-1|0;break k}g=g+2|0;m=-1;if((g|0)==-1){break j}}m=F[i+(g<<2)>>2]}if((o|0)<=(p|0)){break i}g=F[(k<<2)+j>>2];if((g|0)>=(o|0)){break i}i=F[j+(m<<2)>>2];if((i|0)>=(o|0)){break i}l:{if(r){break l}i=L(e,i);j=L(e,g);p=L(e,p);g=0;m=0;if(s){while(1){F[(g<<2)+q>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+p<<2)+c>>2];k=g|1;F[(k<<2)+q>>2]=(F[(i+k<<2)+c>>2]+F[(j+k<<2)+c>>2]|0)-F[(k+p<<2)+c>>2];g=g+2|0;m=m+2|0;if((v|0)!=(m|0)){continue}break}}if(w){F[(g<<2)+q>>2]=(F[(g+i<<2)+c>>2]+F[(g+j<<2)+c>>2]|0)-F[(g+p<<2)+c>>2]}if(r){break l}p=0;g=0;i=0;if(s>>>0>2){while(1){j=g<<2;k=j+n|0;F[k>>2]=F[k>>2]+F[j+q>>2];k=j|4;m=k+n|0;F[m>>2]=F[m>>2]+F[k+q>>2];k=j|8;m=k+n|0;F[m>>2]=F[m>>2]+F[k+q>>2];j=j|12;k=j+n|0;F[k>>2]=F[k>>2]+F[j+q>>2];g=g+4|0;i=i+4|0;if((C|0)!=(i|0)){continue}break}}if(!x){break l}while(1){i=g<<2;j=i+n|0;F[j>>2]=F[j>>2]+F[i+q>>2];g=g+1|0;p=p+1|0;if((x|0)!=(p|0)){continue}break}}l=l+1|0}m:{n:{if((f>>>0)%3|0){f=f-1|0;break n}f=f+2|0;g=-1;if((f|0)==-1){break m}}f=F[(f<<2)+y>>2];g=-1;if((f|0)==-1){break m}g=f-1|0;if((f>>>0)%3|0){break m}g=f+2|0}f=(g|0)==(h|0)?-1:g;if((f|0)!=-1){continue}break}h=L(e,o);if(!l){break f}if(r){break g}g=0;f=0;if(!s){break h}while(1){i=g<<2;j=i+n|0;F[j>>2]=F[j>>2]/(l|0);i=(i|4)+n|0;F[i>>2]=F[i>>2]/(l|0);g=g+2|0;f=f+2|0;if((v|0)!=(f|0)){continue}break}break h}xc();V()}if(!w){break g}f=(g<<2)+n|0;F[f>>2]=F[f>>2]/(l|0)}if((d|0)<=0){break e}i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+n>>2];l=F[a+16>>2];o:{if((f|0)>(l|0)){F[d+i>>2]=l;break o}d=d+i|0;l=F[a+12>>2];if((l|0)>(f|0)){F[d>>2]=l;break o}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=h<<2;g=d+c|0;l=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+l>>2]+F[h+i>>2]|0;F[d>>2]=h;p:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break p}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}if((d|0)<=0){break e}l=(L(o-1|0,e)<<2)+c|0;i=F[a+32>>2];g=0;while(1){d=g<<2;f=F[d+l>>2];j=F[a+16>>2];q:{if((f|0)>(j|0)){F[d+i>>2]=j;break q}d=d+i|0;j=F[a+12>>2];if((j|0)>(f|0)){F[d>>2]=j;break q}F[d>>2]=f}d=F[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}f=0;if((d|0)<=0){break e}d=h<<2;g=d+c|0;l=b+d|0;while(1){h=f<<2;d=h+g|0;h=F[h+l>>2]+F[h+i>>2]|0;F[d>>2]=h;r:{if((h|0)>F[a+16>>2]){h=h-F[a+20>>2]|0}else{if((h|0)>=F[a+12>>2]){break r}h=h+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}o=o+1|0;if((A|0)!=(o|0)){continue}break}}mj(q);mj(n);return 1}function vg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=E[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if((e|0)<0){break b}F[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if((F[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b+4>>2];i=F[b>>2];if(!e&i>>>0>2147483647|e){break a}F[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=J[b>>2];e:{if(M(N(j))>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=K[b>>3];f:{if(N(k)<2147483648){e=~~k;break f}e=-2147483648}F[i>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}Qi((e<<2)+d|0,0,c-e<<2)}return h}return 0}function wg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=M(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(F[a+28>>2]-1|0){case 0:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=D[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=E[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=H[b>>1];b=b+2|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=F[b>>2];b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 6:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(F[b+4>>2]){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=F[b>>2];if(F[b+4>>2]){break a}F[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=J[b>>2];e:{if(j=M(0)){e=~~j>>>0;break e}e=0}F[i>>2]=e;b=b+4|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=K[b>>3];f:{if(k<4294967296&k>=0){e=~~k>>>0;break f}e=0}F[i>>2]=e;b=b+8|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=D[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=F[a>>2];f=F[e>>2];b=F[a+48>>2]+Rj(F[a+40>>2],F[a+44>>2],b,0)|0;b=f+b|0;f=F[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}F[(g<<2)+d>>2]=G[b|0];b=b+1|0;g=g+1|0;e=D[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}Qi((e<<2)+d|0,0,c-e<<2)}return h}return 0}function yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=fa-32|0;fa=e;a:{b:{switch(c-2|0){case 0:c=F[a+4>>2];f=F[a+12>>2];F[e+24>>2]=-1;F[e+16>>2]=-1;F[e+20>>2]=1065353216;F[e+8>>2]=-1;F[e+12>>2]=-1;if((b|0)==-2){break a}j=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];if((ia[F[F[c>>2]+8>>2]](c)|0)==1){i=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];c:{if((ia[F[F[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break c}h=ia[F[F[c>>2]+36>>2]](c)|0;a=ia[F[F[c>>2]+44>>2]](c,f)|0;if(!h|!a){break c}g=a+12|0;f=ia[F[F[c>>2]+40>>2]](c,f)|0;c=F[c+44>>2];if(f){if((b|0)!=6){break c}d=oj(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=f;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=f;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=7172;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=7696;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0;break c}if((b|0)!=6){break c}d=oj(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=h;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=h;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=8108;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=8500;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0}if(d){break a}}d=oj(28);F[d+4>>2]=j;a=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=a;a=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=a;F[d+24>>2]=F[e+24>>2];F[d>>2]=8888;break a;case 1:break b;default:break a}}c=F[a+4>>2];f=F[a+12>>2];F[e+24>>2]=-1;F[e+16>>2]=-1;F[e+20>>2]=1065353216;F[e+8>>2]=-1;F[e+12>>2]=-1;if((b|0)==-2){break a}j=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];if((ia[F[F[c>>2]+8>>2]](c)|0)==1){i=F[F[F[c+4>>2]+8>>2]+(f<<2)>>2];d:{if((ia[F[F[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break d}h=ia[F[F[c>>2]+36>>2]](c)|0;a=ia[F[F[c>>2]+44>>2]](c,f)|0;if(!h|!a){break d}g=a+12|0;f=ia[F[F[c>>2]+40>>2]](c,f)|0;c=F[c+44>>2];if(f){if((b|0)!=6){break d}d=oj(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=f;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=f;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=9056;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=9620;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0;break d}if((b|0)!=6){break d}d=oj(112);F[d+4>>2]=i;b=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=b;b=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=b;F[d+24>>2]=F[e+24>>2];F[d+40>>2]=a;F[d+36>>2]=g;F[d+32>>2]=h;F[d+28>>2]=c;F[d+68>>2]=a;F[d- -64>>2]=g;F[d+60>>2]=h;F[d+56>>2]=c;F[d+48>>2]=0;F[d+52>>2]=0;F[d>>2]=10060;F[d+88>>2]=1065353216;F[d+92>>2]=-1;F[d+80>>2]=-1;F[d+84>>2]=-1;F[d+72>>2]=1;F[d+76>>2]=-1;F[d+44>>2]=10480;a=d+96|0;F[a>>2]=0;F[a+4>>2]=0;D[a+5|0]=0;D[a+6|0]=0;D[a+7|0]=0;D[a+8|0]=0;D[a+9|0]=0;D[a+10|0]=0;D[a+11|0]=0;D[a+12|0]=0}if(d){break a}}d=oj(28);F[d+4>>2]=j;a=F[e+12>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=a;a=F[e+20>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=a;F[d+24>>2]=F[e+24>>2];F[d>>2]=10892}fa=e+32|0;return d|0}function Oc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=M(0),j=M(0),k=0,l=0,m=0,n=M(0),o=M(0),p=M(0),q=M(0),r=0,s=M(0),t=M(0),u=M(0),v=M(0),w=M(0),x=M(0),y=M(0),z=M(0),A=M(0),B=0,C=M(0);F[a+64>>2]=f;F[a+72>>2]=e;f=oj((e&1073741823)!=(e|0)?-1:e<<2);d=F[a+68>>2];F[a+68>>2]=f;if(d){mj(d)}F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ja(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}b:{d=F[a+56>>2];g=F[d+4>>2];f=F[d>>2];d=g-f|0;if((d|0)<=0){break b}if((f|0)!=(g|0)){d=d>>>2|0;B=d>>>0>1?d:1;while(1){h=F[(m<<2)+f>>2];j=M(0);g=fa-48|0;fa=g;f=-1;d=-1;c:{if((h|0)==-1){break c}d=h+1|0;f=(d>>>0)%3|0?d:h-2|0;d=h-1|0;if((h>>>0)%3|0){break c}d=h+2|0}k=F[a+52>>2];h=F[k>>2];d:{e:{k=F[k+4>>2]-h>>2;l=f<<2;f=F[F[a+48>>2]+28>>2];l=F[l+f>>2];if(k>>>0<=l>>>0){break e}f=F[f+(d<<2)>>2];if(f>>>0>=k>>>0){break e}k=F[h+(f<<2)>>2];d=F[h+(l<<2)>>2];f:{if(!((k|0)>=(m|0)|(d|0)>=(m|0))){f=F[a+72>>2];h=(L(f,k)<<2)+c|0;n=M(F[h+4>>2]);f=(L(d,f)<<2)+c|0;q=M(F[f+4>>2]);s=M(F[h>>2]);x=M(F[f>>2]);if(!(s!=x|n!=q)){d=F[a+68>>2];if(M(N(n))>2]=f;if(M(N(s))>2]=~~s;break f}F[d>>2]=-2147483648;break f}f=F[F[a+64>>2]+(m<<2)>>2];F[g+40>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;h=F[a+60>>2];if(!G[h+84|0]){f=F[F[h+68>>2]+(f<<2)>>2]}Pc(h,f,D[h+24|0],g+32|0);f=F[F[a+64>>2]+(d<<2)>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Pc(d,f,D[d+24|0],g+16|0);f=F[F[a+64>>2]+(k<<2)>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Pc(d,f,D[d+24|0],g);t=J[g+40>>2];u=J[g+36>>2];C=J[g+32>>2];o=J[g+24>>2];i=M(J[g+8>>2]-o);z=J[g+20>>2];v=M(J[g+4>>2]-z);A=J[g+16>>2];w=M(J[g>>2]-A);y=M(M(i*i)+M(M(v*v)+M(M(w*w)+M(0))));g:{if(!(y>M(0))){p=M(0);if(F[a+88>>2]>257){break g}}o=M(t-o);t=M(u-z);u=M(C-A);j=M(M(M(i*o)+M(M(v*t)+M(M(w*u)+M(0))))/y);i=M(o-M(i*j));o=M(i*i);i=M(t-M(v*j));p=M(i*i);i=M(u-M(w*j));p=M(U(M(M(o+M(p+M(M(i*i)+M(0))))/y)))}o=p;d=F[a+80>>2]-1|0;f=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;i=M(n-q);p=M(M(i*j)+q);q=M(s-x);n=M(q*o);d=f>>>d&1;n=M(p+(d?n:M(-n)));p=M(M(q*j)+x);j=M(i*o);j=M(p+(d?M(-j):j));h:{if(j!=j){f=F[a+68>>2];F[f>>2]=-2147483648;break h}f=F[a+68>>2];r=R(+j+.5);i:{if(N(r)<2147483648){d=~~r;break i}d=-2147483648}F[f>>2]=d}r=R(+n+.5);j:{if(N(r)<2147483648){d=~~r;break j}d=-2147483648}F[f+4>>2]=n!=n?-2147483648:d;break f}k:{if((d|0)<(m|0)){f=F[a+72>>2];d=L(d,f);break k}f=0;if((m|0)<=0){if(F[a+72>>2]<=0){break f}d=F[a+68>>2];while(1){F[d+(f<<2)>>2]=0;f=f+1|0;if((f|0)>2]){continue}break}break f}f=F[a+72>>2];d=L(f,m-1|0)}if((f|0)<=0){break f}h=F[a+68>>2];f=0;while(1){F[h+(f<<2)>>2]=F[(d+f<<2)+c>>2];f=f+1|0;if((f|0)>2]){continue}break}}fa=g+48|0;break d}xc();V()}l:{if(F[a+8>>2]<=0){break l}h=F[a+32>>2];k=F[a+68>>2];f=0;while(1){d=f<<2;g=F[d+k>>2];l=F[a+16>>2];m:{if((g|0)>(l|0)){F[d+h>>2]=l;break m}d=d+h|0;l=F[a+12>>2];if((l|0)>(g|0)){F[d>>2]=l;break m}F[d>>2]=g}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break l}f=L(e,m)<<2;k=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+k|0;g=F[g+l>>2]+F[g+h>>2]|0;F[f>>2]=g;n:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break n}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}m=m+1|0;if((B|0)==(m|0)){break b}d=F[a+56>>2];f=F[d>>2];if(F[d+4>>2]-f>>2>>>0>m>>>0){continue}break}}xc();V()}return 1}function kd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=M(0),j=0,k=M(0),l=0,m=M(0),n=M(0),o=M(0),p=0,q=M(0),r=0,s=M(0),t=M(0),u=M(0),v=M(0),w=M(0),x=M(0),y=M(0),z=M(0),A=M(0),B=0,C=M(0);F[a+64>>2]=f;F[a+72>>2]=e;f=oj((e&1073741823)!=(e|0)?-1:e<<2);d=F[a+68>>2];F[a+68>>2]=f;if(d){mj(d)}F[a+8>>2]=e;f=a+32|0;g=F[f>>2];d=F[a+36>>2]-g>>2;a:{if(d>>>0>>0){Ja(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}F[a+36>>2]=g+(e<<2)}b:{d=F[a+56>>2];g=F[d+4>>2];f=F[d>>2];d=g-f|0;if((d|0)<=0){break b}if((f|0)!=(g|0)){d=d>>>2|0;B=d>>>0>1?d:1;while(1){k=M(0);g=fa-48|0;fa=g;h=-1;c:{d:{d=F[(l<<2)+f>>2];if((d|0)==-1){break d}j=F[a+48>>2];f=d+1|0;f=(f>>>0)%3|0?f:d-2|0;if((f|0)!=-1){h=F[F[j>>2]+(f<<2)>>2]}f=-1;d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)!=-1){f=F[F[j>>2]+(d<<2)>>2]}d=F[a+52>>2];j=F[d>>2];d=F[d+4>>2]-j>>2;if(d>>>0<=h>>>0|d>>>0<=f>>>0){break d}d=F[j+(h<<2)>>2];j=F[j+(f<<2)>>2];e:{if(!((j|0)>=(l|0)|(d|0)>=(l|0))){f=F[a+72>>2];h=(L(f,j)<<2)+c|0;m=M(F[h+4>>2]);f=(L(d,f)<<2)+c|0;q=M(F[f+4>>2]);s=M(F[h>>2]);x=M(F[f>>2]);if(!(s!=x|m!=q)){d=F[a+68>>2];if(M(N(m))>2]=f;if(M(N(s))>2]=~~s;break e}F[d>>2]=-2147483648;break e}f=F[F[a+64>>2]+(l<<2)>>2];F[g+40>>2]=0;F[g+32>>2]=0;F[g+36>>2]=0;h=F[a+60>>2];if(!G[h+84|0]){f=F[F[h+68>>2]+(f<<2)>>2]}Pc(h,f,D[h+24|0],g+32|0);f=F[F[a+64>>2]+(d<<2)>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Pc(d,f,D[d+24|0],g+16|0);f=F[F[a+64>>2]+(j<<2)>>2];F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d=F[a+60>>2];if(!G[d+84|0]){f=F[F[d+68>>2]+(f<<2)>>2]}Pc(d,f,D[d+24|0],g);t=J[g+40>>2];u=J[g+36>>2];C=J[g+32>>2];n=J[g+24>>2];i=M(J[g+8>>2]-n);z=J[g+20>>2];v=M(J[g+4>>2]-z);A=J[g+16>>2];w=M(J[g>>2]-A);y=M(M(i*i)+M(M(v*v)+M(M(w*w)+M(0))));f:{if(!(y>M(0))){o=M(0);if(F[a+88>>2]>257){break f}}n=M(t-n);t=M(u-z);u=M(C-A);k=M(M(M(i*n)+M(M(v*t)+M(M(w*u)+M(0))))/y);i=M(n-M(i*k));n=M(i*i);i=M(t-M(v*k));o=M(i*i);i=M(u-M(w*k));o=M(U(M(M(n+M(o+M(M(i*i)+M(0))))/y)))}n=o;d=F[a+80>>2]-1|0;f=F[F[a+76>>2]+(d>>>3&536870908)>>2];F[a+80>>2]=d;i=M(m-q);o=M(M(i*k)+q);q=M(s-x);m=M(q*n);d=f>>>d&1;m=M(o+(d?m:M(-m)));o=M(M(q*k)+x);k=M(i*n);k=M(o+(d?M(-k):k));g:{if(k!=k){f=F[a+68>>2];F[f>>2]=-2147483648;break g}f=F[a+68>>2];r=R(+k+.5);h:{if(N(r)<2147483648){d=~~r;break h}d=-2147483648}F[f>>2]=d}r=R(+m+.5);i:{if(N(r)<2147483648){d=~~r;break i}d=-2147483648}F[f+4>>2]=m!=m?-2147483648:d;break e}j:{if((d|0)<(l|0)){f=F[a+72>>2];d=L(d,f);break j}f=0;if((l|0)<=0){if(F[a+72>>2]<=0){break e}d=F[a+68>>2];while(1){F[d+(f<<2)>>2]=0;f=f+1|0;if((f|0)>2]){continue}break}break e}f=F[a+72>>2];d=L(f,l-1|0)}if((f|0)<=0){break e}h=F[a+68>>2];f=0;while(1){F[h+(f<<2)>>2]=F[(d+f<<2)+c>>2];f=f+1|0;if((f|0)>2]){continue}break}}fa=g+48|0;break c}xc();V()}k:{if(F[a+8>>2]<=0){break k}h=F[a+32>>2];j=F[a+68>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];p=F[a+16>>2];l:{if((g|0)>(p|0)){F[d+h>>2]=p;break l}d=d+h|0;p=F[a+12>>2];if((p|0)>(g|0)){F[d>>2]=p;break l}F[d>>2]=g}f=f+1|0;g=F[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<=0){break k}f=L(e,l)<<2;j=f+c|0;p=b+f|0;while(1){g=d<<2;f=g+j|0;g=F[g+p>>2]+F[g+h>>2]|0;F[f>>2]=g;m:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break m}g=g+F[a+20>>2]|0}F[f>>2]=g}d=d+1|0;if((d|0)>2]){continue}break}}l=l+1|0;if((B|0)==(l|0)){break b}d=F[a+56>>2];f=F[d>>2];if(F[d+4>>2]-f>>2>>>0>l>>>0){continue}break}}xc();V()}return 1}function La(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=M(0),f=0,g=0,h=0,i=0,j=0,k=M(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;if(F[c>>2]==F[c+4>>2]){g=F[d+80>>2];v=fa-16|0;fa=v;j=F[a+4>>2];h=F[d+48>>2];d=F[F[d>>2]>>2];i=D[b+24|0];c=v+8|0;F[c>>2]=1065353216;u=c;J[c>>2]=M(-1<>2];w=oj((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!g|(i|0)<=0){break a}s=d+h|0;y=F[b>>2];c=F[b+48>>2];z=F[b+44>>2];x=F[b+40>>2];if(!G[b+84|0]){n=F[b+68>>2];t=i&-2;j=i&1;b=0;while(1){f=F[y>>2];d=Rj(x,z,F[n+(o<<2)>>2],0)+c|0;p=Oi(w,f+d|0,x);k=J[u>>2];l=F[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){f=s+(b<<2)|0;q=d<<2;e=M(R(M(M(k*M(J[q+p>>2]-J[l+q>>2]))+M(.5))));b:{if(M(N(e))>2]=h;h=q|4;e=M(R(M(M(k*M(J[h+p>>2]-J[l+h>>2]))+M(.5))));c:{if(M(N(e))>2]=h;d=d+2|0;b=b+2|0;m=m+2|0;if((t|0)!=(m|0)){continue}break}}if(j){f=s+(b<<2)|0;d=d<<2;e=M(R(M(M(k*M(J[d+p>>2]-J[d+l>>2]))+M(.5))));d:{if(M(N(e))>2]=d;b=b+1|0}o=o+1|0;if((g|0)!=(o|0)){continue}break}break a}n=i&-2;t=i&1;b=0;while(1){h=F[y>>2];d=Rj(x,z,o,f)+c|0;p=Oi(w,h+d|0,x);k=J[u>>2];l=F[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){h=s+(b<<2)|0;q=d<<2;e=M(R(M(M(k*M(J[q+p>>2]-J[l+q>>2]))+M(.5))));e:{if(M(N(e))>2]=j;j=q|4;e=M(R(M(M(k*M(J[j+p>>2]-J[l+j>>2]))+M(.5))));f:{if(M(N(e))>2]=j;d=d+2|0;b=b+2|0;m=m+2|0;if((n|0)!=(m|0)){continue}break}}if(t){h=s+(b<<2)|0;d=d<<2;e=M(R(M(M(k*M(J[d+p>>2]-J[d+l>>2]))+M(.5))));g:{if(M(N(e))>2]=d;b=b+1|0}d=o+1|0;f=d?f:f+1|0;o=d;if((g|0)!=(d|0)|f){continue}break}}mj(w);fa=v+16|0;return 1}v=fa-16|0;fa=v;u=F[a+4>>2];g=F[d+48>>2];f=F[F[d>>2]>>2];r=D[b+24|0];d=v+8|0;F[d>>2]=1065353216;h=d;J[d>>2]=M(-1<>2];w=oj((r|0)!=(r&1073741823)?-1:r<<2);y=F[c>>2];c=F[c+4>>2]-y|0;h:{if(!c|(r|0)<=0){break h}s=f+g|0;z=F[b>>2];d=F[b+48>>2];x=F[b+44>>2];o=F[b+40>>2];c=c>>2;q=c>>>0>1?c:1;if(G[b+84|0]){j=r&-2;u=r&1;b=0;while(1){f=F[z>>2];c=Rj(o,x,F[y+(m<<2)>>2],0)+d|0;l=Oi(w,f+c|0,o);k=J[h>>2];n=F[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;t=c<<2;e=M(R(M(M(k*M(J[t+l>>2]-J[n+t>>2]))+M(.5))));i:{if(M(N(e))>2]=g;g=t|4;e=M(R(M(M(k*M(J[g+l>>2]-J[n+g>>2]))+M(.5))));j:{if(M(N(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=M(R(M(M(k*M(J[c+l>>2]-J[c+n>>2]))+M(.5))));k:{if(M(N(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}break h}t=F[b+68>>2];j=r&-2;u=r&1;b=0;while(1){f=F[z>>2];c=Rj(o,x,F[t+(F[y+(m<<2)>>2]<<2)>>2],0)+d|0;p=Oi(w,f+c|0,o);k=J[h>>2];l=F[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;n=c<<2;e=M(R(M(M(k*M(J[n+p>>2]-J[l+n>>2]))+M(.5))));l:{if(M(N(e))>2]=g;g=n|4;e=M(R(M(M(k*M(J[g+p>>2]-J[l+g>>2]))+M(.5))));m:{if(M(N(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=M(R(M(M(k*M(J[c+p>>2]-J[c+l>>2]))+M(.5))));n:{if(M(N(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}}mj(w);fa=v+16|0;return 1}function nb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=fa-704|0;fa=f;m=1;a:{b:{c:{d:{if(H[b+38>>1]<515){break d}m=0;c=F[b+20>>2];e=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(e|0)&d>>>0>=I[b+8>>2]|(c|0)>(e|0)){break d}o=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;n=F[F[(ia[F[F[a>>2]+28>>2]](a)|0)+4>>2]+80>>2];c=ia[F[F[a>>2]+24>>2]](a)|0;F[f+696>>2]=0;F[f+688>>2]=0;F[f+692>>2]=0;if(c){if(c>>>0>=214748365){break c}c=L(c,20);d=oj(c);F[f+688>>2]=d;F[f+696>>2]=c+d;c=L((c-20>>>0)/20|0,20)+20|0;q=f,r=Qi(d,0,c)+c|0,F[q+692>>2]=r}e:{if((ia[F[F[a>>2]+24>>2]](a)|0)>0){while(1){c=ia[F[F[a>>2]+20>>2]](a,l)|0;e=F[F[F[(ia[F[F[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];_a(e,n);D[e+84|0]=1;F[e+72>>2]=F[e+68>>2];c=F[e+28>>2];if(c>>>0>9){break e}f:{g:{h:{d=1<>2],g,6,0,c,c>>31);e=oj(96);c=Za(e,d);F[f+656>>2]=e;D[c+84|0]=1;F[c+72>>2]=F[c+68>>2];_a(c,n);c=F[a+64>>2];if(c>>>0>=I[a+68>>2]){break h}d=F[f+656>>2];F[f+656>>2]=0;F[c>>2]=d;d=c+4|0;F[a+64>>2]=d;break g}d=0;if(D[e+24|0]<=0){break f}while(1){c=F[a+52>>2];g=F[a+56>>2];i:{if(c>>>0>>0){F[c>>2]=0;F[a+52>>2]=c+4;break i}h=F[a+48>>2];k=c-h|0;j=k>>2;c=j+1|0;if(c>>>0>=1073741824){break b}p=j<<2;g=g-h|0;j=g>>1;g=g>>>0<2147483644?c>>>0>j>>>0?c:j:1073741823;if(g){if(g>>>0>=1073741824){break a}c=oj(g<<2)}else{c=0}j=p+c|0;F[j>>2]=0;if((k|0)>0){Oi(c,h,k)}F[a+56>>2]=c+(g<<2);F[a+52>>2]=j+4;F[a+48>>2]=c;if(!h){break i}mj(h)}d=d+1|0;if((d|0)>2];h=F[a+64>>2]-e>>2;c=h+1|0;if(c>>>0<1073741824){e=F[a+68>>2]-e|0;g=e>>1;e=e>>>0<2147483644?c>>>0>g>>>0?c:g:1073741823;if(e){if(e>>>0>=1073741824){break l}d=oj(e<<2)}g=F[f+656>>2];F[f+656>>2]=0;c=(h<<2)+d|0;F[c>>2]=g;h=(e<<2)+d|0;g=c+4|0;d=F[a+64>>2];e=F[a+60>>2];if((d|0)==(e|0)){break k}while(1){d=d-4|0;k=F[d>>2];F[d>>2]=0;c=c-4|0;F[c>>2]=k;if((d|0)!=(e|0)){continue}break}F[a+68>>2]=h;d=F[a+64>>2];F[a+64>>2]=g;e=F[a+60>>2];F[a+60>>2]=c;if((d|0)==(e|0)){break j}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){ob(c)}if((d|0)!=(e|0)){continue}break}break j}Ha();V()}Ua(1336);V()}F[a+68>>2]=h;F[a+64>>2]=g;F[a+60>>2]=c}if(e){mj(e)}d=F[a+64>>2]}e=F[d-4>>2];c=F[f+656>>2];F[f+656>>2]=0;if(!c){break f}ob(c)}h=F[e+28>>2];c=h-1|0;if(c>>>0<=10){d=F[(c<<2)+13616>>2]}else{d=-1}c=F[f+688>>2]+L(l,20)|0;g=D[e+24|0];F[c+16>>2]=g;F[c+12>>2]=(d|0)>0?d:0;F[c+8>>2]=h;F[c+4>>2]=i;F[c>>2]=e;i=g+i|0;l=l+1|0;if((ia[F[F[a>>2]+24>>2]](a)|0)>(l|0)){continue}break}}a=pb(f+656|0,f+688|0);m:{n:{o:{switch(o|0){case 0:c=sb(f,i);b=qb(c,b,a);rb(c);if(b){break n}break m;case 1:c=sb(f,i);b=tb(c,b,a);rb(c);if(b){break n}break m;case 2:c=wb(f,i);b=ub(c,b,a);vb(c);if(b){break n}break m;case 3:c=wb(f,i);b=xb(c,b,a);vb(c);if(b){break n}break m;case 4:c=Ab(f,i);b=yb(c,b,a);zb(c);if(b){break n}break m;case 5:c=Ab(f,i);b=Bb(c,b,a);zb(c);if(b){break n}break m;case 6:break o;default:break m}}c=Ab(f,i);b=Cb(c,b,a);zb(c);if(!b){break m}}m=1}b=F[a+16>>2];if(b){F[a+20>>2]=b;mj(b)}b=F[a>>2];if(!b){break e}F[a+4>>2]=b;mj(b)}a=F[f+688>>2];if(!a){break d}F[f+692>>2]=a;mj(a)}fa=f+704|0;return m|0}Ha();V()}Ha();V()}Ua(1336);V()}function he(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=fa-80|0;fa=f;e=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=e;g=F[c+28>>2];e=f- -64|0;F[e>>2]=F[c+24>>2];F[e+4>>2]=g;e=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=e;e=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=e;e=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=e;Zf(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<0){mj(F[j>>2])}if(G[f+31|0]){b=oj(32);c=G[1665]|G[1666]<<8|(G[1667]<<16|G[1668]<<24);D[b+23|0]=c;D[b+24|0]=c>>>8;D[b+25|0]=c>>>16;D[b+26|0]=c>>>24;c=G[1662]|G[1663]<<8|(G[1664]<<16|G[1665]<<24);d=G[1658]|G[1659]<<8|(G[1660]<<16|G[1661]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1654]|G[1655]<<8|(G[1656]<<16|G[1657]<<24);d=G[1650]|G[1651]<<8|(G[1652]<<16|G[1653]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1646]|G[1647]<<8|(G[1648]<<16|G[1649]<<24);d=G[1642]|G[1643]<<8|(G[1644]<<16|G[1645]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+27|0]=0;F[a>>2]=-1;qj(j,b,27);mj(b);break a}i=fa-16|0;fa=i;b:{c:{switch(D[f+32|0]){case 0:e=oj(44);F[e>>2]=0;F[e+4>>2]=0;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=Yf(e);F[e>>2]=13528;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=g;break b;case 1:e=oj(44);F[e>>2]=0;F[e+4>>2]=0;F[e+40>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;g=Yf(e);F[e>>2]=13436;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=g;break b;default:break c}}g=oj(32);e=G[1694]|G[1695]<<8|(G[1696]<<16|G[1697]<<24);D[g+24|0]=e;D[g+25|0]=e>>>8;D[g+26|0]=e>>>16;D[g+27|0]=e>>>24;e=G[1690]|G[1691]<<8|(G[1692]<<16|G[1693]<<24);h=G[1686]|G[1687]<<8|(G[1688]<<16|G[1689]<<24);D[g+16|0]=h;D[g+17|0]=h>>>8;D[g+18|0]=h>>>16;D[g+19|0]=h>>>24;D[g+20|0]=e;D[g+21|0]=e>>>8;D[g+22|0]=e>>>16;D[g+23|0]=e>>>24;e=G[1682]|G[1683]<<8|(G[1684]<<16|G[1685]<<24);h=G[1678]|G[1679]<<8|(G[1680]<<16|G[1681]<<24);D[g+8|0]=h;D[g+9|0]=h>>>8;D[g+10|0]=h>>>16;D[g+11|0]=h>>>24;D[g+12|0]=e;D[g+13|0]=e>>>8;D[g+14|0]=e>>>16;D[g+15|0]=e>>>24;e=G[1674]|G[1675]<<8|(G[1676]<<16|G[1677]<<24);h=G[1670]|G[1671]<<8|(G[1672]<<16|G[1673]<<24);D[g|0]=h;D[g+1|0]=h>>>8;D[g+2|0]=h>>>16;D[g+3|0]=h>>>24;D[g+4|0]=e;D[g+5|0]=e>>>8;D[g+6|0]=e>>>16;D[g+7|0]=e>>>24;D[g+28|0]=0;F[i>>2]=-1;e=i|4;qj(e,g,28);k=D[i+15|0];F[f>>2]=F[i>>2];h=f+4|0;d:{if((k|0)>=0){k=F[e+4>>2];F[h>>2]=F[e>>2];F[h+4>>2]=k;F[h+8>>2]=F[e+8>>2];break d}qj(h,F[i+4>>2],F[i+8>>2])}F[f+16>>2]=0;if(D[i+15|0]<0){mj(F[i+4>>2])}mj(g)}fa=i+16|0;e=F[f>>2];e:{if(e){F[a>>2]=e;if(D[f+15|0]>=0){a=f|4;b=F[a+4>>2];F[j>>2]=F[a>>2];F[j+4>>2]=b;F[j+8>>2]=F[a+8>>2];break e}qj(j,F[f+4>>2],F[f+8>>2]);break e}e=F[f+16>>2];F[f+16>>2]=0;bg(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<0){mj(F[j>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ia[F[F[e>>2]+4>>2]](e)}a=F[f+16>>2];F[f+16>>2]=0;if(a){ia[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>=0){break a}mj(F[f+4>>2])}fa=f+80|0}function Se(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=F[a+4>>2];d=F[a>>2];f=(c-d|0)/144|0;if(f>>>0>>0){d=a;g=b-f|0;c=F[a+8>>2];a=F[a+4>>2];a:{if(g>>>0<=(c-a|0)/144>>>0){if(g){b=L(g,144)+a|0;while(1){F[a>>2]=-1;vi(a+4|0);F[a+104>>2]=0;F[a+108>>2]=0;D[a+100|0]=1;F[a+112>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;F[a+124>>2]=0;F[a+128>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;F[a+140>>2]=0;a=a+144|0;if((b|0)!=(a|0)){continue}break}a=b}F[d+4>>2]=a;break a}b:{c:{d:{b=a;a=F[d>>2];f=(b-a|0)/144|0;h=f+g|0;if(h>>>0<29826162){b=(c-a|0)/144|0;a=b<<1;e=b>>>0<14913080?a>>>0>>0?h:a:29826161;if(e){if(e>>>0>=29826162){break d}c=oj(L(e,144))}else{c=0}b=c+L(f,144)|0;h=b+L(g,144)|0;a=b;while(1){F[a>>2]=-1;vi(a+4|0);F[a+104>>2]=0;F[a+108>>2]=0;D[a+100|0]=1;F[a+112>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;F[a+124>>2]=0;F[a+128>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;F[a+140>>2]=0;a=a+144|0;if((h|0)!=(a|0)){continue}break}f=c+L(e,144)|0;a=F[d+4>>2];e=F[d>>2];if((a|0)==(e|0)){break c}while(1){b=b-144|0;a=a-144|0;F[b>>2]=F[a>>2];F[b+4>>2]=F[a+4>>2];F[b+8>>2]=F[a+8>>2];F[b+12>>2]=F[a+12>>2];F[a+12>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[b+16>>2]=F[a+16>>2];F[b+20>>2]=F[a+20>>2];F[b+24>>2]=F[a+24>>2];F[a+24>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;c=G[a+28|0];F[b+40>>2]=0;F[b+32>>2]=0;F[b+36>>2]=0;D[b+28|0]=c;F[b+32>>2]=F[a+32>>2];F[b+36>>2]=F[a+36>>2];F[b+40>>2]=F[a+40>>2];F[a+40>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[b+52>>2]=0;F[b+44>>2]=0;F[b+48>>2]=0;F[b+44>>2]=F[a+44>>2];F[b+48>>2]=F[a+48>>2];F[b+52>>2]=F[a+52>>2];F[a+52>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;c=b- -64|0;F[c>>2]=0;F[b+56>>2]=0;F[b+60>>2]=0;F[b+56>>2]=F[a+56>>2];F[b+60>>2]=F[a+60>>2];g=c;c=a- -64|0;F[g>>2]=F[c>>2];F[c>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[b+68>>2]=F[a+68>>2];c=F[a+72>>2];F[b+84>>2]=0;F[b+76>>2]=0;F[b+80>>2]=0;F[b+72>>2]=c;F[b+76>>2]=F[a+76>>2];F[b+80>>2]=F[a+80>>2];F[b+84>>2]=F[a+84>>2];F[a+84>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[b+96>>2]=0;F[b+88>>2]=0;F[b+92>>2]=0;F[b+88>>2]=F[a+88>>2];F[b+92>>2]=F[a+92>>2];F[b+96>>2]=F[a+96>>2];F[a+96>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;c=G[a+100|0];F[b+112>>2]=0;F[b+104>>2]=0;F[b+108>>2]=0;D[b+100|0]=c;F[b+104>>2]=F[a+104>>2];F[b+108>>2]=F[a+108>>2];F[b+112>>2]=F[a+112>>2];F[a+112>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;F[b+124>>2]=0;F[b+116>>2]=0;F[b+120>>2]=0;F[b+116>>2]=F[a+116>>2];F[b+120>>2]=F[a+120>>2];F[b+124>>2]=F[a+124>>2];F[a+124>>2]=0;F[a+116>>2]=0;F[a+120>>2]=0;c=F[a+128>>2];F[b+140>>2]=0;F[b+132>>2]=0;F[b+136>>2]=0;F[b+128>>2]=c;F[b+132>>2]=F[a+132>>2];F[b+136>>2]=F[a+136>>2];F[b+140>>2]=F[a+140>>2];F[a+140>>2]=0;F[a+132>>2]=0;F[a+136>>2]=0;if((a|0)!=(e|0)){continue}break}F[d+8>>2]=f;a=F[d+4>>2];F[d+4>>2]=h;e=F[d>>2];F[d>>2]=b;if((a|0)==(e|0)){break b}while(1){b=F[a-12>>2];if(b){F[a-8>>2]=b;mj(b)}b=F[a-28>>2];if(b){F[a-24>>2]=b;mj(b)}b=F[a-40>>2];if(b){F[a-36>>2]=b;mj(b)}_e(a-140|0);a=a-144|0;if((e|0)!=(a|0)){continue}break}break b}Ha();V()}Ua(1336);V()}F[d+8>>2]=f;F[d+4>>2]=h;F[d>>2]=b}if(e){mj(e)}}return}if(b>>>0>>0){d=d+L(b,144)|0;if((d|0)!=(c|0)){while(1){b=F[c-12>>2];if(b){F[c-8>>2]=b;mj(b)}b=F[c-28>>2];if(b){F[c-24>>2]=b;mj(b)}b=F[c-40>>2];if(b){F[c-36>>2]=b;mj(b)}_e(c-140|0);c=c-144|0;if((d|0)!=(c|0)){continue}break}}F[a+4>>2]=d}}function rd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=fa-96|0;fa=e;d=F[a+16>>2];D[e+92|0]=1;F[e+88>>2]=b;F[e+84>>2]=b;F[e+80>>2]=d;a:{if((b|0)==-1){break a}m=F[a+20>>2];f=F[m>>2];d=F[F[d>>2]+(b<<2)>>2];if(d>>>0>=F[m+4>>2]-f>>2>>>0){break a}d=F[F[a+8>>2]+(F[f+(d<<2)>>2]<<2)>>2];f=F[a+4>>2];if(!G[f+84|0]){d=F[F[f+68>>2]+(d<<2)>>2]}F[e+72>>2]=0;F[e+76>>2]=0;m=e- -64|0;F[m>>2]=0;F[m+4>>2]=0;F[e+56>>2]=0;F[e+60>>2]=0;Vc(f,d,D[f+24|0],e+56|0);d=b+1|0;m=(d>>>0)%3|0?d:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){f=m;d=h;d:{if(!F[a+28>>2]){break d}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((f|0)==-1){break b}k=F[a+20>>2];b=F[k>>2];f=F[F[F[a+16>>2]>>2]+(f<<2)>>2];if(f>>>0>=F[k+4>>2]-b>>2>>>0){break b}f=F[F[a+8>>2]+(F[(f<<2)+b>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}F[e+48>>2]=0;F[e+52>>2]=0;F[e+40>>2]=0;F[e+44>>2]=0;F[e+32>>2]=0;F[e+36>>2]=0;Vc(b,f,D[b+24|0],e+32|0);if((d|0)==-1){break c}f=F[a+20>>2];b=F[f>>2];d=F[F[F[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=F[f+4>>2]-b>>2>>>0){break c}f=F[F[a+8>>2]+(F[b+(d<<2)>>2]<<2)>>2];b=F[a+4>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}F[e+24>>2]=0;F[e+28>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;Vc(b,f,D[b+24|0],e+8|0);d=F[e+8>>2];b=F[e+56>>2];f=d-b|0;k=F[e+60>>2];n=F[e+12>>2]-(k+(b>>>0>d>>>0)|0)|0;i=F[e+40>>2];d=F[e+64>>2];s=i-d|0;t=F[e+68>>2];i=F[e+44>>2]-(t+(d>>>0>i>>>0)|0)|0;u=Rj(f,n,s,i);v=j-u|0;g=g-(ha+(j>>>0>>0)|0)|0;w=v;j=F[e+16>>2];u=j-d|0;t=F[e+20>>2]-((d>>>0>j>>>0)+t|0)|0;j=F[e+32>>2];v=j-b|0;k=F[e+36>>2]-((b>>>0>j>>>0)+k|0)|0;d=Rj(u,t,v,k);j=w+d|0;b=ha+g|0;b=d>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=F[e+48>>2];d=F[e+72>>2];n=b-d|0;o=F[e+76>>2];x=F[e+52>>2]-(o+(b>>>0>>0)|0)|0;p=Rj(f,p,n,x);f=w+p|0;b=ha+l|0;b=f>>>0

>>0?b+1|0:b;l=F[e+24>>2];p=l-d|0;d=F[e+28>>2]-((d>>>0>l>>>0)+o|0)|0;l=Rj(p,d,v,k);o=f-l|0;l=b-(ha+(f>>>0>>0)|0)|0;b=Rj(u,t,n,x);f=q-b|0;b=r-(ha+(b>>>0>q>>>0)|0)|0;r=Rj(p,d,s,i);q=r+f|0;b=ha+b|0;b=q>>>0>>0?b+1|0:b;r=b;sd(e+80|0);b=F[e+88>>2];if((b|0)!=-1){continue}break}b=r>>31;f=b+q|0;d=b;b=b+r|0;k=f^d;h=d^(f>>>0>>0?b+1|0:b);n=-1;f=2147483647;b=l>>31;i=b;d=b+o|0;b=b+l|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^i;i=b;s=d^-1;b=b^2147483647;m=g;e:{f:{if(!F[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break e}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=a;a=b;b=g>>31;f=b+j|0;h=g;g=b;b=h+b|0;b=f>>>0>>0?b+1|0:b;h=f^g;f=h+d|0;g=b^g;b=f;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break e}b=0;a=a>>>29|0;break f}g:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break g}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(d|0)&(g^-1)>>>0>>0|d>>>0>h>>>0){break g}b=b+d|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;f=b;if(!b&a>>>0<536870913){break e}}b=f>>>29|0;a=(f&536870911)<<3|n>>>29}j=Sj(j,m,a,b);o=Sj(o,l,a,b);q=Sj(q,r,a,b)}F[c+8>>2]=j;F[c+4>>2]=o;F[c>>2]=q;fa=e+96|0;return}xc();V()}xc();V()}xc();V()}function Ji(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}d=F[a+12>>2];c=F[a+8>>2];if(d-c>>2>>>0<=b>>>0){break a}e=c+(b<<2)|0;f=F[e>>2];i=F[f+60>>2];g=F[f+56>>2];c=e+4|0;b:{if((c|0)!=(d|0)){while(1){h=F[c>>2];F[c>>2]=0;F[e>>2]=h;if(f){ob(f)}e=e+4|0;c=c+4|0;if((c|0)!=(d|0)){f=F[e>>2];continue}break}d=F[a+12>>2];if((e|0)==(d|0)){break b}}while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){ob(c)}if((d|0)!=(e|0)){continue}break}}F[a+12>>2]=e;f=F[a+4>>2];c:{if(!f|(i|0)<0){break c}d=F[f+24>>2];c=F[f+28>>2];if((d|0)==(c|0)){break c}while(1){if((i|0)==F[F[d>>2]+24>>2]){e=d+4|0;i=F[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=F[e>>2];F[e>>2]=0;c=F[d>>2];F[d>>2]=h;if(c){eg(c+12|0,F[c+16>>2]);fg(c,F[c+4>>2]);mj(c)}d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=F[f+28>>2];if((e|0)==(d|0)){break d}}while(1){e=e-4|0;c=F[e>>2];F[e>>2]=0;if(c){eg(c+12|0,F[c+16>>2]);fg(c,F[c+4>>2]);mj(c)}if((d|0)!=(e|0)){continue}break}}F[f+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=L(g,12)+a|0;d=F[e+20>>2];c=F[e+24>>2];if((d|0)==(c|0)){break f}while(1){if(F[d>>2]==(b|0)){break f}d=d+4|0;if((c|0)!=(d|0)){continue}break}break e}if((d|0)==(c|0)){break e}f=d+4|0;c=c-f|0;if(c){Pi(d,f,c)}F[e+24>>2]=d+c}e=F[a+20>>2];c=F[a+24>>2]-e|0;g:{if(!c){break g}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break g}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break g}F[d>>2]=c-1}e=F[a+32>>2];c=F[a+36>>2]-e|0;h:{if(!c){break h}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break h}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break h}F[d>>2]=c-1}e=F[a+44>>2];c=F[a+48>>2]-e|0;i:{if(!c){break i}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break i}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break i}F[d>>2]=c-1}e=F[a+56>>2];c=F[a+60>>2]-e|0;j:{if(!c){break j}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=F[h>>2];if((j|0)>(b|0)){F[h>>2]=j-1}g=e+(g|4)|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break j}d=e+(d<<2)|0;c=F[d>>2];if((c|0)<=(b|0)){break j}F[d>>2]=c-1}c=F[a+72>>2];a=F[a+68>>2];c=c-a|0;if(!c){break a}d=c>>2;e=d>>>0>1?d:1;f=e&1;d=0;if(c>>>0>=8){e=e&-2;c=0;while(1){i=d<<2;g=i+a|0;h=F[g>>2];if((h|0)>(b|0)){F[g>>2]=h-1}i=a+(i|4)|0;g=F[i>>2];if((g|0)>(b|0)){F[i>>2]=g-1}d=d+2|0;c=c+2|0;if((e|0)!=(c|0)){continue}break}}if(!f){break a}c=b;a=a+(d<<2)|0;b=F[a>>2];if((c|0)>=(b|0)){break a}F[a>>2]=b-1}}function mj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=F[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=F[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=F[d+8>>2];b=b>>>3|0;c=F[d+12>>2];if((c|0)==(e|0)){i=16932,j=F[4233]&Vj(b),F[i>>2]=j;break b}F[e+12>>2]=c;F[c+8>>2]=e;break b}h=F[d+24>>2];b=F[d+12>>2];c:{if((d|0)!=(b|0)){c=F[d+8>>2];F[c+12>>2]=b;F[b+8>>2]=c;break c}d:{e=d+20|0;c=F[e>>2];if(c){break d}e=d+16|0;c=F[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=F[e>>2];if(c){continue}e=b+16|0;c=F[b+16>>2];if(c){continue}break}F[g>>2]=0}if(!h){break b}e=F[d+28>>2];c=(e<<2)+17236|0;e:{if(F[c>>2]==(d|0)){F[c>>2]=b;if(b){break e}i=16936,j=F[4234]&Vj(e),F[i>>2]=j;break b}F[h+(F[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}F[b+24>>2]=h;c=F[d+16>>2];if(c){F[b+16>>2]=c;F[c+24>>2]=b}c=F[d+20>>2];if(!c){break b}F[b+20>>2]=c;F[c+24>>2]=b;break b}b=F[f+4>>2];if((b&3)!=3){break b}F[4235]=a;F[f+4>>2]=b&-2;F[d+4>>2]=a|1;F[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=F[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(F[4239]==(f|0)){F[4239]=d;a=F[4236]+a|0;F[4236]=a;F[d+4>>2]=a|1;if(F[4238]!=(d|0)){break a}F[4235]=0;F[4238]=0;return}if(F[4238]==(f|0)){F[4238]=d;a=F[4235]+a|0;F[4235]=a;F[d+4>>2]=a|1;F[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=F[f+8>>2];b=b>>>3|0;c=F[f+12>>2];if((c|0)==(e|0)){i=16932,j=F[4233]&Vj(b),F[i>>2]=j;break g}F[e+12>>2]=c;F[c+8>>2]=e;break g}h=F[f+24>>2];b=F[f+12>>2];h:{if((f|0)!=(b|0)){c=F[f+8>>2];F[c+12>>2]=b;F[b+8>>2]=c;break h}i:{e=f+20|0;c=F[e>>2];if(c){break i}e=f+16|0;c=F[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=F[e>>2];if(c){continue}e=b+16|0;c=F[b+16>>2];if(c){continue}break}F[g>>2]=0}if(!h){break g}e=F[f+28>>2];c=(e<<2)+17236|0;j:{if(F[c>>2]==(f|0)){F[c>>2]=b;if(b){break j}i=16936,j=F[4234]&Vj(e),F[i>>2]=j;break g}F[h+(F[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}F[b+24>>2]=h;c=F[f+16>>2];if(c){F[b+16>>2]=c;F[c+24>>2]=b}c=F[f+20>>2];if(!c){break g}F[b+20>>2]=c;F[c+24>>2]=b}F[d+4>>2]=a|1;F[a+d>>2]=a;if(F[4238]!=(d|0)){break f}F[4235]=a;return}F[f+4>>2]=b&-2;F[d+4>>2]=a|1;F[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+16972|0;c=F[4233];a=1<>2]}F[b+8>>2]=d;F[a+12>>2]=d;F[d+12>>2]=b;F[d+8>>2]=a;return}e=31;F[d+16>>2]=0;F[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}F[d+28>>2]=e;g=(e<<2)+17236|0;l:{m:{c=F[4234];b=1<>2]=d;F[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=F[g>>2];while(1){c=b;if((F[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=F[g+16>>2];if(b){continue}break}F[g+16>>2]=d;F[d+24>>2]=c}F[d+12>>2]=d;F[d+8>>2]=d;break l}a=F[c+8>>2];F[a+12>>2]=d;F[c+8>>2]=d;F[d+24>>2]=0;F[d+12>>2]=c;F[d+8>>2]=a}a=F[4241]-1|0;F[4241]=a?a:-1}}function bf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=M(0),l=0,m=0,n=M(0);j=F[c>>2];a:{b:{f=F[b+4>>2];if(!f){break b}g=Uj(f);c:{if(g>>>0>=2){e=j;if(e>>>0>=f>>>0){e=(j>>>0)%(f>>>0)|0}c=F[F[b>>2]+(e<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=F[c>>2];if(!c){break b}g=F[c+4>>2];if((g|0)!=(j|0)){if(f>>>0<=g>>>0){g=(g>>>0)%(f>>>0)|0}if((e|0)!=(g|0)){break b}}if(F[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&j;c=F[F[b>>2]+(e<<2)>>2];if(!c){break b}}g=f-1|0;while(1){c=F[c>>2];if(!c){break b}h=F[c+4>>2];if((h|0)!=(j|0)&(g&h)!=(e|0)){break b}if(F[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=oj(16);d=F[F[d>>2]>>2];F[c+12>>2]=0;F[c+8>>2]=d;F[c+4>>2]=j;F[c>>2]=0;n=M(F[b+12>>2]+1>>>0);k=J[b+16>>2];d:{if(n>M(k*M(f>>>0))?0:f){break d}g=(f-1&f)!=0|f>>>0<3|f<<1;e=2;k=M(S(M(n/k)));e:{if(k=M(0)){d=~~k>>>0;break e}d=0}d=d>>>0>g>>>0?d:g;f:{if((d|0)==1){break f}if(!(d&d-1)){e=d;break f}e=hj(d);f=F[b+4>>2]}g:{if(e>>>0<=f>>>0){if(e>>>0>=f>>>0){break g}g=f>>>0<3;k=M(S(M(M(I[b+12>>2])/J[b+16>>2])));h:{if(k=M(0)){d=~~k>>>0;break h}d=0}i:{j:{if(g){break j}if(Uj(f)>>>0>1){break j}d=d>>>0<2?d:1<<32-O(d-1|0);break i}d=hj(d)}e=d>>>0>e>>>0?d:e;if(e>>>0>=f>>>0){break g}}f=0;h=e;k:{l:{m:{n:{if(e){if(h>>>0>=1073741824){break n}e=oj(h<<2);d=F[b>>2];F[b>>2]=e;if(d){mj(d)}F[b+4>>2]=h;e=0;if(h-1>>>0>=3){g=h&-4;while(1){d=e<<2;F[d+F[b>>2]>>2]=0;F[F[b>>2]+(d|4)>>2]=0;F[F[b>>2]+(d|8)>>2]=0;F[F[b>>2]+(d|12)>>2]=0;e=e+4|0;f=f+4|0;if((g|0)!=(f|0)){continue}break}}d=h&3;if(d){while(1){F[F[b>>2]+(e<<2)>>2]=0;e=e+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}f=F[b+8>>2];if(!f){break k}d=b+8|0;g=F[f+4>>2];e=Uj(h);if(e>>>0<2){break m}g=g>>>0>=h>>>0?(g>>>0)%(h>>>0)|0:g;F[F[b>>2]+(g<<2)>>2]=d;d=F[f>>2];if(!d){break k}if(e>>>0<=1){break l}while(1){i=F[d+4>>2];if(h>>>0<=i>>>0){i=(i>>>0)%(h>>>0)|0}o:{if((g|0)==(i|0)){f=d;break o}e=d;l=i<<2;m=l+F[b>>2]|0;if(!F[m>>2]){F[m>>2]=f;f=d;g=i;break o}while(1){i=e;e=F[e>>2];if(F[d+8>>2]==F[e+8>>2]?e:0){continue}break}F[f>>2]=e;F[i>>2]=F[F[l+F[b>>2]>>2]>>2];F[F[l+F[b>>2]>>2]>>2]=d}d=F[f>>2];if(d){continue}break}break k}d=F[b>>2];F[b>>2]=0;if(d){mj(d)}F[b+4>>2]=0;break k}Ua(1336);V()}g=h-1&g;F[F[b>>2]+(g<<2)>>2]=d;d=F[f>>2];if(!d){break k}}l=h-1|0;while(1){h=l&F[d+4>>2];p:{if((h|0)==(g|0)){f=d;break p}e=d;i=h<<2;m=i+F[b>>2]|0;if(F[m>>2]){while(1){h=e;e=F[e>>2];if(F[d+8>>2]==F[e+8>>2]?e:0){continue}break}F[f>>2]=e;F[h>>2]=F[F[i+F[b>>2]>>2]>>2];F[F[i+F[b>>2]>>2]>>2]=d;break p}F[m>>2]=f;f=d;g=h}d=F[f>>2];if(d){continue}break}}}f=F[b+4>>2];d=f-1|0;if(!(d&f)){e=d&j;break d}if(f>>>0>j>>>0){e=j;break d}e=(j>>>0)%(f>>>0)|0}e=F[b>>2]+(e<<2)|0;d=F[e>>2];q:{if(!d){F[c>>2]=F[b+8>>2];F[b+8>>2]=c;F[e>>2]=b+8;d=F[c>>2];if(!d){break q}d=F[d+4>>2];e=f-1|0;r:{if(!(e&f)){d=d&e;break r}if(d>>>0>>0){break r}d=(d>>>0)%(f>>>0)|0}F[F[b>>2]+(d<<2)>>2]=c;break q}F[c>>2]=F[d>>2];F[d>>2]=c}F[b+12>>2]=F[b+12>>2]+1;b=1}D[a+4|0]=b;F[a>>2]=c}function dd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;F[a+8>>2]=e;d=a+32|0;k=F[d>>2];f=F[a+36>>2]-k>>2;a:{if(f>>>0>>0){Ja(d,e-f|0);k=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+k}d=e}q=F[a+52>>2];n=F[a+48>>2];f=0;m=(e&1073741823)!=(e|0)?-1:e<<2;m=Qi(oj(m),0,m);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=F[d+m>>2];i=F[a+16>>2];c:{if((g|0)>(i|0)){F[d+k>>2]=i;break c}d=d+k|0;i=F[a+12>>2];if((i|0)>(g|0)){F[d>>2]=i;break c}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[d>>2]=g;d:{if((g|0)>F[a+16>>2]){h=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}h=g+F[a+20>>2]|0}F[d>>2]=h}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];o=F[f>>2];f=F[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=L(e,k);f=F[(k<<2)+o>>2];if((f|0)==-1){break f}f=F[F[n+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}i=F[q>>2];g=F[n>>2];j=F[i+(F[g+(f<<2)>>2]<<2)>>2];h=f+1|0;h=(h>>>0)%3|0?h:f-2|0;if((h|0)!=-1){h=F[g+(h<<2)>>2]}else{h=-1}g:{h:{if((f>>>0)%3|0){f=f-1|0;break h}f=f+2|0;l=-1;if((f|0)==-1){break g}}l=F[g+(f<<2)>>2]}if((j|0)>=(k|0)){break f}f=F[(h<<2)+i>>2];if((f|0)>=(k|0)){break f}g=F[i+(l<<2)>>2];if((g|0)>=(k|0)){break f}i:{if((e|0)<=0){break i}g=L(e,g);i=L(e,f);j=L(e,j);f=0;l=0;if((e|0)!=1){while(1){F[m+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+i<<2)+c>>2]|0)-F[(f+j<<2)+c>>2];h=f|1;F[m+(h<<2)>>2]=(F[(g+h<<2)+c>>2]+F[(i+h<<2)+c>>2]|0)-F[(h+j<<2)+c>>2];f=f+2|0;l=l+2|0;if((t|0)!=(l|0)){continue}break}}if(!u){break i}F[m+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+i<<2)+c>>2]|0)-F[(f+j<<2)+c>>2]}if((d|0)<=0){break e}i=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+m>>2];j=F[a+16>>2];j:{if((g|0)>(j|0)){F[d+i>>2]=j;break j}d=d+i|0;j=F[a+12>>2];if((j|0)>(g|0)){F[d>>2]=j;break j}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+h>>2]+F[g+i>>2]|0;F[d>>2]=g;k:{if((g|0)>F[a+16>>2]){l=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break k}l=g+F[a+20>>2]|0}F[d>>2]=l}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}xc();V()}if((d|0)<=0){break e}j=(L(k-1|0,e)<<2)+c|0;i=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];h=F[a+16>>2];l:{if((g|0)>(h|0)){F[d+i>>2]=h;break l}d=d+i|0;h=F[a+12>>2];if((h|0)>(g|0)){F[d>>2]=h;break l}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;h=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+h>>2]+F[g+i>>2]|0;F[d>>2]=g;m:{if((g|0)>F[a+16>>2]){l=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break m}l=g+F[a+20>>2]|0}F[d>>2]=l}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}mj(m);return 1} +function xi(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;F[a+56>>2]=F[a+52>>2];F[a+44>>2]=F[a+40>>2];a:{b:{c:{e=F[a+64>>2];c=F[e+24>>2];if((c|0)!=F[e+28>>2]){while(1){d=b;i=F[(j<<2)+c>>2];d:{if((i|0)==-1){break d}b=F[a+56>>2];e:{if((b|0)!=F[a+60>>2]){F[b>>2]=d;F[a+56>>2]=b+4;break e}e=F[a+52>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break c}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=oj(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=d;if((c|0)>0){Oi(b,e,c)}F[a+60>>2]=b+(f<<2);F[a+56>>2]=g+4;F[a+52>>2]=b;if(!e){break e}mj(e)}f:{if(!(F[F[a+12>>2]+(j>>>3&536870908)>>2]>>>j&1)){break f}b=i+1|0;b=(b>>>0)%3|0?b:i-2|0;if((b|0)==-1){break f}e=F[a>>2];if(F[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[F[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break f}f=F[a+64>>2];while(1){i=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|F[e+(b>>>3&536870908)>>2]>>>b&1){break f}b=F[F[f+12>>2]+(b<<2)>>2];if((b|0)==-1){break f}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}F[F[a+28>>2]+(i<<2)>>2]=d;b=F[a+44>>2];g:{if((b|0)!=F[a+48>>2]){F[b>>2]=i;F[a+44>>2]=b+4;break g}e=F[a+40>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=oj(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=i;if((c|0)>0){Oi(b,e,c)}F[a+48>>2]=b+(f<<2);F[a+44>>2]=g+4;F[a+40>>2]=b;if(!e){break g}mj(e)}b=d+1|0;e=F[a+64>>2];h:{if((i>>>0)%3|0){c=i-1|0;break h}c=i+2|0;if((c|0)==-1){break d}}c=F[F[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(i|0)){break d}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(F[F[a>>2]+(e>>>3&536870908)>>2]>>>e&1){d=F[a+56>>2];i:{if((d|0)!=F[a+60>>2]){F[d>>2]=b;F[a+56>>2]=d+4;break i}f=F[a+52>>2];e=d-f|0;h=e>>2;d=h+1|0;if(d>>>0>=1073741824){break c}g=e>>1;g=e>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break a}d=oj(g<<2)}else{d=0}h=d+(h<<2)|0;F[h>>2]=b;if((e|0)>0){Oi(d,f,e)}F[a+60>>2]=d+(g<<2);F[a+56>>2]=h+4;F[a+52>>2]=d;if(!f){break i}mj(f)}e=b+1|0;d=F[a+44>>2];j:{if((d|0)!=F[a+48>>2]){F[d>>2]=c;F[a+44>>2]=d+4;break j}g=F[a+40>>2];f=d-g|0;k=f>>2;d=k+1|0;if(d>>>0>=1073741824){break b}h=f>>1;h=f>>>0<2147483644?d>>>0>h>>>0?d:h:1073741823;if(h){if(h>>>0>=1073741824){break a}d=oj(h<<2)}else{d=0}k=d+(k<<2)|0;F[k>>2]=c;if((f|0)>0){Oi(d,g,f)}F[a+48>>2]=d+(h<<2);F[a+44>>2]=k+4;F[a+40>>2]=d;if(!g){break j}mj(g)}d=b;b=e}F[F[a+28>>2]+(c<<2)>>2]=d;e=F[a+64>>2];k:{if((c>>>0)%3|0){c=c-1|0;break k}c=c+2|0;if((c|0)==-1){break d}}c=F[F[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break d}if((c|0)!=(i|0)){continue}break}}j=j+1|0;c=F[e+24>>2];if(j>>>0>2]-c>>2>>>0){continue}break}}return}Ha();V()}Ha();V()}Ua(1336);V()}function wc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;F[a+8>>2]=e;d=a+32|0;k=F[d>>2];f=F[a+36>>2]-k>>2;a:{if(f>>>0>>0){Ja(d,e-f|0);k=F[d>>2];d=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+k}d=e}q=F[a+52>>2];m=F[a+48>>2];f=0;l=(e&1073741823)!=(e|0)?-1:e<<2;l=Qi(oj(l),0,l);b:{if((d|0)<=0){break b}while(1){d=f<<2;g=F[d+l>>2];h=F[a+16>>2];c:{if((g|0)>(h|0)){F[d+k>>2]=h;break c}d=d+k|0;h=F[a+12>>2];if((h|0)>(g|0)){F[d>>2]=h;break c}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}if((d|0)<=0){break b}f=0;while(1){g=f<<2;d=g+c|0;g=F[b+g>>2]+F[g+k>>2]|0;F[d>>2]=g;d:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}f=F[a+56>>2];o=F[f>>2];f=F[f+4>>2]-o|0;if((f|0)>=5){f=f>>2;r=(f|0)>2?f:2;s=f>>>0>1?f:1;t=e&-2;u=e&1;k=1;while(1){e:{f:{if((k|0)!=(s|0)){p=L(e,k);f=F[(k<<2)+o>>2];if((f|0)==-1|F[F[m>>2]+(f>>>3&536870908)>>2]>>>f&1){break f}f=F[F[F[m+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break f}h=F[q>>2];g=F[m+28>>2];j=F[h+(F[g+(f<<2)>>2]<<2)>>2];if((j|0)>=(k|0)){break f}i=f+1|0;i=F[h+(F[g+(((i>>>0)%3|0?i:f-2|0)<<2)>>2]<<2)>>2];if((i|0)>=(k|0)){break f}f=F[h+(F[g+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(k|0)){break f}g:{if((e|0)<=0){break g}g=L(e,f);h=L(e,i);j=L(e,j);f=0;n=0;if((e|0)!=1){while(1){F[l+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+h<<2)+c>>2]|0)-F[(f+j<<2)+c>>2];i=f|1;F[l+(i<<2)>>2]=(F[(g+i<<2)+c>>2]+F[(h+i<<2)+c>>2]|0)-F[(j+i<<2)+c>>2];f=f+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(!u){break g}F[l+(f<<2)>>2]=(F[(f+g<<2)+c>>2]+F[(f+h<<2)+c>>2]|0)-F[(f+j<<2)+c>>2]}if((d|0)<=0){break e}h=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+l>>2];j=F[a+16>>2];h:{if((g|0)>(j|0)){F[d+h>>2]=j;break h}d=d+h|0;j=F[a+12>>2];if((j|0)>(g|0)){F[d>>2]=j;break h}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+i>>2]+F[g+h>>2]|0;F[d>>2]=g;i:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break i}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}break e}xc();V()}if((d|0)<=0){break e}j=(L(k-1|0,e)<<2)+c|0;h=F[a+32>>2];f=0;while(1){d=f<<2;g=F[d+j>>2];i=F[a+16>>2];j:{if((g|0)>(i|0)){F[d+h>>2]=i;break j}d=d+h|0;i=F[a+12>>2];if((i|0)>(g|0)){F[d>>2]=i;break j}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}f=0;if((d|0)<=0){break e}d=p<<2;j=d+c|0;i=b+d|0;while(1){g=f<<2;d=g+j|0;g=F[g+i>>2]+F[g+h>>2]|0;F[d>>2]=g;k:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break k}g=g+F[a+20>>2]|0}F[d>>2]=g}d=F[a+8>>2];f=f+1|0;if((d|0)>(f|0)){continue}break}}k=k+1|0;if((r|0)!=(k|0)){continue}break}}mj(l);return 1}function Qf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}c=(b>>>0)/3|0;if(!(F[F[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=F[a+48>>2];F[a+52>>2]=d;a:{if((d|0)!=F[a+56>>2]){F[d>>2]=b;F[a+52>>2]=d+4;break a}e=oj(4);F[e>>2]=b;f=e+4|0;F[a+56>>2]=f;F[a+52>>2]=f;F[a+48>>2]=e;if(!d){break a}mj(d)}f=F[F[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=F[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-L(c,3)|0?-1:2)+b|0;c=F[f+(g<<2)>>2];if((c|0)==-1){return 0}b=F[a+36>>2];f=b+(d>>>3&536870908)|0;h=F[f>>2];i=1<>2]=h|i;Bf(a+8|0,d,e);b=F[a+36>>2]}b=(c>>>3&536870908)+b|0;d=F[b>>2];e=1<>2]=d|e;Bf(a+8|0,c,g)}c=F[a+52>>2];if((c|0)==F[a+48>>2]){return 1}k=a+8|0;while(1){c=c-4|0;b=F[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=F[a+24>>2]+(d>>>3&268435452)|0;f=F[e>>2];d=1<>2]=d|f;e=F[a+4>>2];d=F[F[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=F[a+36>>2]+(d>>>3&536870908)|0;g=F[f>>2];h=1<>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}F[f>>2]=g|h;Bf(k,d,c);break e}F[f>>2]=g|h;Bf(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=F[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|F[F[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=F[F[F[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<>2];i=d>>>5|0;f=F[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=F[a+4>>2];if(!((b|0)==-1|F[F[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=F[F[F[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(F[F[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=F[F[F[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;f=(d>>>0)/3|0;h=(d|0)==-1;if(!h){c=F[a+24>>2];h=h?-1:f;i=h>>>5|0;f=F[c+(i<<2)>>2];h=1<>2];i=g>>>5|0;f=F[c+(i<<2)>>2];if(!(h&f)){break d}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break b}if(j){b=d;break d}if(F[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=F[a+52>>2];F[c-4>>2]=b;if((c|0)!=F[a+56>>2]){F[c>>2]=d;c=c+4|0;break c}m:{f=F[a+48>>2];e=c-f|0;c=e>>2;b=c+1|0;if(b>>>0<1073741824){g=e>>1;g=e>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break m}b=oj(g<<2)}else{b=0}c=b+(c<<2)|0;F[c>>2]=d;c=c+4|0;if((e|0)>0){Oi(b,f,e)}F[a+56>>2]=b+(g<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!f){break b}mj(f);c=F[a+52>>2];break b}Ha();V()}Ua(1336);V()}F[(i<<2)+c>>2]=f|h;d=F[F[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}function ie(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=fa-80|0;fa=f;e=F[c+36>>2];F[f+72>>2]=F[c+32>>2];F[f+76>>2]=e;g=F[c+28>>2];e=f- -64|0;F[e>>2]=F[c+24>>2];F[e+4>>2]=g;e=F[c+20>>2];F[f+56>>2]=F[c+16>>2];F[f+60>>2]=e;e=F[c+12>>2];F[f+48>>2]=F[c+8>>2];F[f+52>>2]=e;e=F[c+4>>2];F[f+40>>2]=F[c>>2];F[f+44>>2]=e;Zf(a,f+40|0,f+24|0);a:{if(F[a>>2]){break a}j=a+4|0;if(D[a+15|0]<0){mj(F[j>>2])}if(G[f+31|0]!=1){b=oj(32);c=G[1592]|G[1593]<<8|(G[1594]<<16|G[1595]<<24);D[b+16|0]=c;D[b+17|0]=c>>>8;D[b+18|0]=c>>>16;D[b+19|0]=c>>>24;c=G[1588]|G[1589]<<8|(G[1590]<<16|G[1591]<<24);d=G[1584]|G[1585]<<8|(G[1586]<<16|G[1587]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1580]|G[1581]<<8|(G[1582]<<16|G[1583]<<24);d=G[1576]|G[1577]<<8|(G[1578]<<16|G[1579]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;D[b+20|0]=0;F[a>>2]=-1;qj(j,b,20);mj(b);break a}i=fa-16|0;fa=i;b:{c:{switch(G[f+32|0]){case 0:e=oj(48);te(e);F[e>>2]=13144;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;case 1:e=oj(52);te(e);F[e+48>>2]=0;F[e>>2]=11304;F[f+8>>2]=0;F[f+12>>2]=0;F[f>>2]=0;F[f+4>>2]=0;F[f+16>>2]=e;break b;default:break c}}g=oj(32);e=G[1694]|G[1695]<<8|(G[1696]<<16|G[1697]<<24);D[g+24|0]=e;D[g+25|0]=e>>>8;D[g+26|0]=e>>>16;D[g+27|0]=e>>>24;e=G[1690]|G[1691]<<8|(G[1692]<<16|G[1693]<<24);h=G[1686]|G[1687]<<8|(G[1688]<<16|G[1689]<<24);D[g+16|0]=h;D[g+17|0]=h>>>8;D[g+18|0]=h>>>16;D[g+19|0]=h>>>24;D[g+20|0]=e;D[g+21|0]=e>>>8;D[g+22|0]=e>>>16;D[g+23|0]=e>>>24;e=G[1682]|G[1683]<<8|(G[1684]<<16|G[1685]<<24);h=G[1678]|G[1679]<<8|(G[1680]<<16|G[1681]<<24);D[g+8|0]=h;D[g+9|0]=h>>>8;D[g+10|0]=h>>>16;D[g+11|0]=h>>>24;D[g+12|0]=e;D[g+13|0]=e>>>8;D[g+14|0]=e>>>16;D[g+15|0]=e>>>24;e=G[1674]|G[1675]<<8|(G[1676]<<16|G[1677]<<24);h=G[1670]|G[1671]<<8|(G[1672]<<16|G[1673]<<24);D[g|0]=h;D[g+1|0]=h>>>8;D[g+2|0]=h>>>16;D[g+3|0]=h>>>24;D[g+4|0]=e;D[g+5|0]=e>>>8;D[g+6|0]=e>>>16;D[g+7|0]=e>>>24;D[g+28|0]=0;F[i>>2]=-1;e=i|4;qj(e,g,28);k=D[i+15|0];F[f>>2]=F[i>>2];h=f+4|0;d:{if((k|0)>=0){k=F[e+4>>2];F[h>>2]=F[e>>2];F[h+4>>2]=k;F[h+8>>2]=F[e+8>>2];break d}qj(h,F[i+4>>2],F[i+8>>2])}F[f+16>>2]=0;if(D[i+15|0]<0){mj(F[i+4>>2])}mj(g)}fa=i+16|0;e=F[f>>2];e:{if(e){F[a>>2]=e;if(D[f+15|0]>=0){a=f|4;b=F[a+4>>2];F[j>>2]=F[a>>2];F[j+4>>2]=b;F[j+8>>2]=F[a+8>>2];break e}qj(j,F[f+4>>2],F[f+8>>2]);break e}e=F[f+16>>2];F[f+16>>2]=0;F[e+44>>2]=d;bg(a,e,b,c,d);if(!F[a>>2]){if(D[j+11|0]<0){mj(F[j>>2])}F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0}ia[F[F[e>>2]+4>>2]](e)}a=F[f+16>>2];F[f+16>>2]=0;if(a){ia[F[F[a>>2]+4>>2]](a)}if(D[f+15|0]>=0){break a}mj(F[f+4>>2])}fa=f+80|0}function zi(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=L(b,12)+a|0;F[i+12>>2]=F[i+8>>2];k=(c|0)==-1?-1:(c>>>0)/3|0;n=1;j=c;a:{b:{c:{while(1){d:{o=e&1;if(o){if((j|0)==-1){break d}if((Ai(a,((j>>>0)%3|0?-1:2)+j|0)|0)==-1){break a}c=j+1|0;d=(c>>>0)%3|0?c:j-2|0;if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}d=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break a}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break a}k=(c>>>0)/3|0}g=1<>2]+(k>>>3&536870908)|0;l=F[m>>2];e:{if(g&l){break e}e=0;while(1){F[m>>2]=g|l;d=F[i+12>>2];f:{if((d|0)!=F[i+16>>2]){F[d>>2]=k;F[i+12>>2]=d+4;break f}l=F[i+8>>2];g=d-l|0;h=g>>2;f=h+1|0;if(f>>>0>=1073741824){break c}d=g>>1;f=g>>>0<2147483644?d>>>0>>0?f:d:1073741823;if(f){if(f>>>0>=1073741824){break b}d=oj(f<<2)}else{d=0}h=d+(h<<2)|0;F[h>>2]=k;if((g|0)>0){Oi(d,l,g)}F[i+8>>2]=d;F[i+12>>2]=h+4;F[i+16>>2]=d+(f<<2);if(!l){break f}mj(l)}h=e+1|0;g:{h:{i:{if(!e){break i}if(h&1){if((c|0)==-1){c=-1;break g}d=c+1|0;c=(d>>>0)%3|0?d:c-2|0;break i}j=o?c:j;if((c|0)==-1){c=-1;break g}if((c>>>0)%3|0){e=c-1|0;break h}c=c+2|0}d=c;c=-1;e=d;if((d|0)==-1){break g}}c=F[F[F[a+4>>2]+12>>2]+(e<<2)>>2];m=-1;l=-1;d=e+1|0;f=(d>>>0)%3|0?d:e-2|0;if((f|0)>=0){d=(f>>>0)/3|0;l=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(f-L(d,3)<<2)>>2]}j:{if((c|0)==-1){g=1;break j}g=0;f=((c>>>0)%3|0?-1:2)+c|0;if((f|0)<0){break j}d=(f>>>0)/3|0;m=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(f-L(d,3)<<2)>>2]}if((l|0)!=(m|0)){c=-1;break g}k:{l:{e=((e>>>0)%3|0?-1:2)+e|0;m:{n:{if((e|0)>=0){d=(e>>>0)/3|0;m=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2];e=-1;if(!g){break n}break m}m=-1;if(g){break l}}d=c+1|0;e=(d>>>0)%3|0?d:c-2|0;if((e|0)<0){e=-1;break m}d=(e>>>0)/3|0;e=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(e-L(d,3)<<2)>>2]}if((e|0)!=(m|0)){c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}if((c|0)!=-1){break k}c=-1;break g}e=h;k=(c>>>0)/3|0;m=F[a+56>>2]+(k>>>3&268435452)|0;l=F[m>>2];g=1<>2]-4|0;h=F[f>>2];e=F[a+56>>2]+(h>>>3&536870908)|0;d=F[e>>2];p=e,q=Vj(h)&d,F[p>>2]=q;F[i+12>>2]=f}e=1;d=n;n=0;if(d){continue}break a}break}j=-1;Ai(a,-1);break a}Ha();V()}Ua(1336);V()}F[((b<<2)+a|0)+44>>2]=j;f=F[i+8>>2];b=F[i+12>>2]-f|0;o:{if(!b){break o}j=F[a+56>>2];a=b>>2;a=a>>>0>1?a:1;h=a&1;c=0;if(b>>>0>=8){n=a&-2;k=0;while(1){e=c<<2;d=F[e+f>>2];b=j+(d>>>3&536870908)|0;a=F[b>>2];p=b,q=Vj(d)&a,F[p>>2]=q;d=F[f+(e|4)>>2];b=j+(d>>>3&536870908)|0;a=F[b>>2];p=b,q=Vj(d)&a,F[p>>2]=q;c=c+2|0;k=k+2|0;if((n|0)!=(k|0)){continue}break}}if(!h){break o}c=F[f+(c<<2)>>2];b=j+(c>>>3&536870908)|0;a=F[b>>2];p=b,q=Vj(c)&a,F[p>>2]=q}}function Kf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(F[F[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=F[a+48>>2];F[a+52>>2]=c;a:{if((c|0)!=F[a+56>>2]){F[c>>2]=b;F[a+52>>2]=c+4;break a}e=oj(4);F[e>>2]=b;f=e+4|0;F[a+56>>2]=f;F[a+52>>2]=f;F[a+48>>2]=e;if(!c){break a}mj(c)}e=-1;f=F[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=F[F[f>>2]+(g<<2)>>2]}b:{h=b-L(d,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}d=F[F[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=F[a+36>>2];f=c+(e>>>3&536870908)|0;i=F[f>>2];j=1<>2]=i|j;Bf(a+8|0,e,g);c=F[a+36>>2]}c=(d>>>3&536870908)+c|0;e=F[c>>2];f=1<>2]=e|f;Bf(a+8|0,d,(h?-1:2)+b|0)}c=F[a+52>>2];if((c|0)==F[a+48>>2]){return 1}j=a+8|0;while(1){c=c-4|0;b=F[c>>2];d=(b>>>0)/3|0;c:{d:{if((b|0)==-1){break d}e=F[a+24>>2]+(d>>>3&268435452)|0;f=F[e>>2];d=1<>2]=d|f;while(1){d=F[a+4>>2];c=F[F[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=F[a+36>>2]+(c>>>3&536870908)|0;f=F[e>>2];g=1<>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=F[F[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}F[e>>2]=f|g;Bf(j,c,b);break f}F[e>>2]=f|g;Bf(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=F[F[F[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];h=c>>>5|0;d=F[e+(h<<2)>>2];break e}c=-1;f=F[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=F[F[f+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=F[F[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;d=(c>>>0)/3|0;k:{g=(c|0)==-1;if(!g){e=F[a+24>>2];g=g?-1:d;h=g>>>5|0;d=F[e+(h<<2)>>2];g=1<>2];h=f>>>5|0;d=F[e+(h<<2)>>2];if(!(g&d)){break e}}c=F[a+52>>2]-4|0;F[a+52>>2]=c;break c}if(i){b=c;break e}if(F[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=F[a+52>>2];F[d-4>>2]=b;if((d|0)!=F[a+56>>2]){F[d>>2]=c;c=d+4|0;break d}l:{e=F[a+48>>2];d=d-e|0;g=d>>2;b=g+1|0;if(b>>>0<1073741824){f=d>>1;f=d>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break l}b=oj(f<<2)}else{b=0}g=b+(g<<2)|0;F[g>>2]=c;c=g+4|0;if((d|0)>0){Oi(b,e,d)}F[a+56>>2]=b+(f<<2);F[a+52>>2]=c;F[a+48>>2]=b;if(!e){break c}mj(e);c=F[a+52>>2];break c}Ha();V()}Ua(1336);V()}F[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}F[a+52>>2]=c}if(F[a+48>>2]!=(c|0)){continue}break}}return 1}function Dc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=fa-32|0;fa=i;a:{if(H[b+38>>1]<=513){c=F[b+20>>2];h=F[b+12>>2];d=F[b+16>>2];if((c|0)>=(h|0)&d>>>0>=I[b+8>>2]|(c|0)>(h|0)){break a}h=G[d+F[b>>2]|0];d=d+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;if(h){break a}}b:{if(!Ec(1,i+28|0,b)){break b}c:{d=F[i+28>>2];if(d){Fc(a+60|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!de(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Ec(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Fc(a+72|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!de(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Ec(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Fc(a+84|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!de(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!Ec(1,i+28|0,b)){break b}d=F[i+28>>2];if(d){e=0;Fc(a+96|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;if(!de(c,b)){break c}while(1){h=1<>2]+(e>>>3&536870908)|0;if(f){f=h|F[g>>2]}else{f=F[g>>2]&(h^-1)}F[g>>2]=f;e=e+1|0;if((d|0)!=(e|0)){continue}break}}e=0;d=F[b+12>>2];h=d;c=F[b+20>>2];g=c;f=F[b+16>>2];j=f+4|0;c=j>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=c;c=g;g=f+8|0;c=g>>>0<8?c+1|0:c;f=g;g=c;if(f>>>0>k>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=j+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=g;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}e=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1;break a}}e=0}fa=i+32|0;return e|0}function lc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{n=ia[F[F[a>>2]+44>>2]](a)|0;if((n|0)<=0){break a}e=F[b+4>>2]-F[b>>2]>>2;g=fa+-64|0;fa=g;d=Xa(g);f=L(F[3408],n);Ya(d,F[F[a+8>>2]+56>>2],n<<24>>24,5,0,f,f>>31);f=oj(96);d=Za(f,d);D[d+84|0]=1;F[d+72>>2]=F[d+68>>2];_a(d,e);F[d+60>>2]=F[F[a+8>>2]+60>>2];d=F[a+16>>2];F[a+16>>2]=f;if(d){ob(d)}fa=g- -64|0;g=F[a+16>>2];if(!F[g+80>>2]){break a}i=F[F[g>>2]>>2];if(!i){break a}h=F[c+12>>2];d=F[c+20>>2];j=F[c+8>>2];f=F[c+16>>2];if((h|0)<=(d|0)&j>>>0<=f>>>0|(d|0)>(h|0)){break a}k=L(e,n);i=i+F[g+48>>2]|0;l=F[c>>2];m=G[l+f|0];g=f+1|0;e=g?d:d+1|0;F[c+16>>2]=g;F[c+20>>2]=e;b:{c:{d:{if(m){if(me(k,n,c,i)){break d}break a}if((e|0)>=(h|0)&g>>>0>=j>>>0|(e|0)>(h|0)){break a}g=G[g+l|0];e=f+2|0;d=e>>>0<2?d+1|0:d;F[c+16>>2]=e;F[c+20>>2]=d;d=F[F[a+16>>2]+64>>2];d=F[d+4>>2]-F[d>>2]|0;e:{if((g|0)==F[3408]){e=d;d=k<<2;if(e>>>0>>0){break a}h=F[c+8>>2];g=F[c+12>>2];e=F[c+20>>2];j=F[c+16>>2];f=d+j|0;e=f>>>0>>0?e+1|0:e;if((e|0)<=(g|0)&f>>>0<=h>>>0|(e|0)<(g|0)){break e}break a}if(d>>>0>>0){break a}h=F[c+12>>2];e=F[c+20>>2];l=F[c+8>>2];f=l;j=F[c+16>>2];d=g;p=f-j>>>0>>0;f=h-(e+(f>>>0>>0)|0)|0;m=ha;if(p&(f|0)<=(m|0)|(f|0)<(m|0)){break a}f=1;if(!k){break c}f=0;m=l;l=d+j|0;e=l>>>0>>0?e+1|0:e;if(m>>>0>>0&(e|0)>=(h|0)|(e|0)>(h|0)){break b}while(1){Oi(i+(o<<2)|0,j+F[c>>2]|0,g);e=F[c+20>>2];h=d+F[c+16>>2]|0;e=h>>>0>>0?e+1|0:e;j=h;F[c+16>>2]=h;F[c+20>>2]=e;o=o+1|0;if((k|0)==(o|0)){break d}m=F[c+8>>2];h=F[c+12>>2];l=d+j|0;e=l>>>0>>0?e+1|0:e;if((e|0)<=(h|0)&l>>>0<=m>>>0|(e|0)<(h|0)){continue}break}break b}Oi(i,j+F[c>>2]|0,d);e=d;g=d+F[c+16>>2]|0;d=F[c+20>>2];F[c+16>>2]=g;F[c+20>>2]=e>>>0>g>>>0?d+1|0:d}f=1;if(!k){break c}d=F[a+20>>2];if(d){f=0;if(ia[F[F[d>>2]+32>>2]](d)|0){break c}}d=0;f=0;f:{if((k|0)<=0){break f}if((k|0)!=1){h=k&-2;while(1){e=d<<2;g=F[e+i>>2];F[e+i>>2]=0-(g&1)^g>>>1;g=e|4;e=F[g+i>>2];F[g+i>>2]=0-(e&1)^e>>>1;d=d+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(!(k&1)){break f}e=d<<2;d=F[e+i>>2];F[e+i>>2]=0-(d&1)^d>>>1}f=0}d=F[a+20>>2];g:{if(!d){break g}if(!(ia[F[F[d>>2]+40>>2]](d,c)|0)){break a}if(f){break g}f=0;a=F[a+20>>2];if(!(ia[F[F[a>>2]+44>>2]](a,i,i,k,n,F[b>>2])|0)){break b}}f=1}return f|0}return 0}function Hc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=fa-32|0;fa=g;a:{b:{if(F[a+8>>2]<<5>>>0>=b>>>0){break b}F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;if((b|0)<0){break a}b=(b-1>>>5|0)+1|0;c=oj(b<<2);F[g+24>>2]=b;F[g+20>>2]=0;F[g+16>>2]=c;b=F[a>>2];F[g+12>>2]=0;F[g+8>>2]=b;c=F[a+4>>2];F[g+4>>2]=c&31;F[g>>2]=b+(c>>>3&536870908);f=fa-32|0;fa=f;j=F[g+4>>2];e=F[g+12>>2];k=F[g>>2];i=F[g+8>>2];b=(j-e|0)+(k-i<<3)|0;d=F[g+20>>2];h=b+d|0;F[g+20>>2]=h;c:{if(!(!d|(h-1^d-1)>>>0>31)){c=F[g+16>>2];break c}c=F[g+16>>2];if(h>>>0<=32){F[c>>2]=0;break c}F[(h-1>>>3&536870908)+c>>2]=0}c=(d>>>3&536870908)+c|0;d=d&31;d:{if((d|0)==(e|0)){if((b|0)<=0){break d}if(e){h=32-e|0;d=(b|0)<(h|0)?b:h;h=-1<>>h-d;F[c>>2]=F[c>>2]&(h^-1)|h&F[i>>2];b=b-d|0;i=i+4|0;c=c+(d+e>>>3&536870908)|0}j=c;e=(b|0)/32|0;c=e<<2;d=Pi(j,i,c);b=b-(e<<5)|0;if((b|0)<=0){break d}e=c+d|0;b=-1>>>32-b|0;F[e>>2]=F[e>>2]&(b^-1)|b&F[c+i>>2];break d}F[f+28>>2]=e;F[f+24>>2]=i;F[f+20>>2]=j;F[f+16>>2]=k;F[f+12>>2]=d;F[f+8>>2]=c;b=F[f+28>>2];c=F[f+24>>2];i=(F[f+20>>2]-b|0)+(F[f+16>>2]-c<<3)|0;e:{if((i|0)<=0){b=F[f+12>>2];break e}f:{if(!b){b=F[f+12>>2];break f}e=F[f+12>>2];j=32-e|0;k=32-b|0;d=(i|0)<(k|0)?i:k;h=d>>>0>j>>>0?j:d;l=F[f+8>>2];m=F[l>>2]&(-1<>>j-h^-1);j=F[c>>2]&(-1<>>k-d);F[l>>2]=m|(b>>>0>>0?j<>>b-e|0);c=e+h|0;b=c&31;F[f+12>>2]=b;e=l+(c>>>3&536870908)|0;F[f+8>>2]=e;c=d-h|0;if((c|0)>0){F[e>>2]=F[e>>2]&(-1>>>32-c^-1)|j>>>h+F[f+28>>2];F[f+12>>2]=c;b=c}i=i-d|0;c=F[f+24>>2]+4|0;F[f+24>>2]=c}e=32-b|0;h=-1<=32){j=h^-1;while(1){d=F[f+8>>2];c=F[c>>2];F[d>>2]=j&F[d>>2]|c<>2]=d+4;F[d+4>>2]=h&F[d+4>>2]|c>>>e;c=F[f+24>>2]+4|0;F[f+24>>2]=c;d=i>>>0>63;i=i-32|0;if(d){continue}break}}if((i|0)<=0){break e}d=F[f+8>>2];j=e;e=(e|0)<(i|0)?e:i;j=F[d>>2]&(h&-1>>>j-e^-1);h=F[c>>2]&-1>>>32-i;F[d>>2]=j|h<>2]=b;d=d+(c>>>3&536870908)|0;F[f+8>>2]=d;c=i-e|0;if((c|0)<=0){break e}F[d>>2]=F[d>>2]&(-1>>>32-c^-1)|h>>>e;F[f+12>>2]=c;b=c}c=F[f+8>>2];F[f+4>>2]=b;F[f>>2]=c}fa=f+32|0;b=F[a>>2];F[a>>2]=F[g+16>>2];F[g+16>>2]=b;c=F[a+4>>2];F[a+4>>2]=F[g+20>>2];F[g+20>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[g+24>>2];F[g+24>>2]=c;if(!b){break b}mj(b)}fa=g+32|0;return}vj();V()}function qd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=fa-32|0;fa=g;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){rd(n,F[(k<<2)+d>>2],g+16|0);e=F[g+20>>2];d=e>>31;f=F[g+16>>2];h=f>>31;j=F[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+16>>2]=F[a+108>>2];break b}i=F[a+108>>2];l=i>>31;f=Sj(Rj(i,l,f,f>>31),ha,h,d);F[g+16>>2]=f;d=Sj(Rj(i,l,e,e>>31),ha,h,d);F[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){F[g+24>>2]=i-d;break b}F[g+24>>2]=d-i}d=fe(m);f=F[g+16>>2];c:{if(d){F[g+24>>2]=0-F[g+24>>2];e=0-F[g+20>>2]|0;F[g+20>>2]=e;f=0-f|0;F[g+16>>2]=f;break c}e=F[g+20>>2]}d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=F[g+24>>2];d=f>>31;d=d^d+f;break e}f=F[g+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=F[a+100>>2]-(f+e^e)|0}e=F[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}g:{if(d){break g}h=F[a+108>>2];if((h|0)>=(f|0)){break g}f=(h<<1)-f|0;d=0;break f}h:{if((d|0)!=(e|0)){break h}h=F[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=F[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}F[g+12>>2]=f;F[g+8>>2]=d;j:{if(F[a+8>>2]<=0){break j}h=F[a+32>>2];f=0;while(1){e=F[a+16>>2];k:{if((e|0)<(d|0)){F[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[e>>2]=j;break k}F[e>>2]=d}f=f+1|0;e=F[a+8>>2];if((f|0)<(e|0)){d=F[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=F[f+i>>2]+F[f+h>>2]|0;F[e>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}xc();V()}fa=g+32|0;return 1}function ad(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=fa-32|0;fa=g;F[a+68>>2]=f;e=F[a+56>>2];d=F[e>>2];f=F[e+4>>2];F[g+24>>2]=0;F[g+16>>2]=0;F[g+20>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+112|0;n=a+60|0;e=f>>>2|0;o=e>>>0>1?e:1;while(1){bd(n,F[(k<<2)+d>>2],g+16|0);e=F[g+20>>2];d=e>>31;f=F[g+16>>2];h=f>>31;j=F[g+24>>2];i=j>>31;i=i^i+j;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+16>>2]=F[a+108>>2];break b}i=F[a+108>>2];l=i>>31;f=Sj(Rj(i,l,f,f>>31),ha,h,d);F[g+16>>2]=f;d=Sj(Rj(i,l,e,e>>31),ha,h,d);F[g+20>>2]=d;e=d;d=d>>31;e=e+d^d;d=f>>31;d=e+(d+f^d)|0;if((j|0)>=0){F[g+24>>2]=i-d;break b}F[g+24>>2]=d-i}d=fe(m);f=F[g+16>>2];c:{if(d){F[g+24>>2]=0-F[g+24>>2];e=0-F[g+20>>2]|0;F[g+20>>2]=e;f=0-f|0;F[g+16>>2]=f;break c}e=F[g+20>>2]}d:{if((f|0)>=0){d=F[a+108>>2];f=d+F[g+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<0){f=F[g+24>>2];d=f>>31;d=d^d+f;break e}f=F[g+24>>2];d=f>>31;d=F[a+100>>2]-(d^d+f)|0}if((f|0)<0){f=e;e=e>>31;f=f+e^e;break d}f=e;e=e>>31;f=F[a+100>>2]-(f+e^e)|0}e=F[a+100>>2];f:{if(!(d|f)){f=e;d=f;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}g:{if(d){break g}h=F[a+108>>2];if((h|0)>=(f|0)){break g}f=(h<<1)-f|0;d=0;break f}h:{if((d|0)!=(e|0)){break h}h=F[a+108>>2];if((h|0)<=(f|0)){break h}f=(h<<1)-f|0;break f}i:{if((e|0)!=(f|0)){break i}e=F[a+108>>2];if((e|0)<=(d|0)){break i}d=(e<<1)-d|0;break f}if(f){break f}f=0;e=F[a+108>>2];if((e|0)>=(d|0)){break f}d=(e<<1)-d|0}F[g+12>>2]=f;F[g+8>>2]=d;j:{if(F[a+8>>2]<=0){break j}h=F[a+32>>2];f=0;while(1){e=F[a+16>>2];k:{if((e|0)<(d|0)){F[h+(f<<2)>>2]=e;break k}e=h+(f<<2)|0;j=F[a+12>>2];if((j|0)>(d|0)){F[e>>2]=j;break k}F[e>>2]=d}f=f+1|0;e=F[a+8>>2];if((f|0)<(e|0)){d=F[(g+8|0)+(f<<2)>>2];continue}break}d=0;if((e|0)<=0){break j}e=k<<3;j=e+c|0;i=b+e|0;while(1){f=d<<2;e=f+j|0;f=F[f+i>>2]+F[f+h>>2]|0;F[e>>2]=f;l:{if((f|0)>F[a+16>>2]){f=f-F[a+20>>2]|0}else{if((f|0)>=F[a+12>>2]){break l}f=f+F[a+20>>2]|0}F[e>>2]=f}d=d+1|0;if((d|0)>2]){continue}break}}k=k+1|0;if((o|0)==(k|0)){break a}e=F[a+56>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>k>>>0){continue}break}}xc();V()}fa=g+32|0;return 1}function cb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=fa-80|0;fa=h;a:{b:{if(G[F[a+28>>2]+36|0]<=1){d=F[b+20>>2];c=F[b+16>>2];e=c+4|0;d=e>>>0<4?d+1|0:d;k=F[b+12>>2];if((k|0)<=(d|0)&e>>>0>I[b+8>>2]|(d|0)>(k|0)){break a}c=c+F[b>>2]|0;i=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;break b}if(!db(1,h+76|0,b)){break a}i=F[h+76>>2]}if(!i){break a}d=F[b+8>>2];c=F[b+16>>2];d=Rj(d-c|0,F[b+12>>2]-(F[b+20>>2]+(c>>>0>d>>>0)|0)|0,5,0);c=ha;if(d>>>0>>0&(c|0)<=0|(c|0)<0){break a}c=F[a+4>>2];d=F[a+8>>2]-c>>2;c:{if(d>>>0>>0){Ja(a+4|0,i-d|0);break c}if(d>>>0<=i>>>0){break c}F[a+8>>2]=c+(i<<2)}r=a+16|0;m=F[a+32>>2];f=1;while(1){d:{g=F[b+12>>2];c=g;d=F[b+20>>2];o=F[b+8>>2];j=F[b+16>>2];if((c|0)<=(d|0)&o>>>0<=j>>>0|(c|0)<(d|0)){break d}p=F[b>>2];k=G[p+j|0];c=d;e=j+1|0;c=e?c:c+1|0;F[b+16>>2]=e;F[b+20>>2]=c;if((c|0)>=(g|0)&e>>>0>=o>>>0|(c|0)>(g|0)){break d}e=G[e+p|0];c=d;l=j+2|0;c=l>>>0<2?c+1|0:c;F[b+16>>2]=l;F[b+20>>2]=c;if((c|0)>=(g|0)&l>>>0>=o>>>0|(c|0)>(g|0)){break d}l=G[l+p|0];c=d;q=j+3|0;c=q>>>0<3?c+1|0:c;F[b+16>>2]=q;F[b+20>>2]=c;if((c|0)>=(g|0)&q>>>0>=o>>>0|(c|0)>(g|0)){break d}g=G[q+p|0];c=d;d=j+4|0;c=d>>>0<4?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;if(!l|((e-12&255)>>>0<245|k>>>0>4)){break d}j=Xa(h+8|0);o=l<<24>>24;g=(g|0)!=0;d=e-1|0;if(d>>>0<=10){c=F[(d<<2)+13616>>2]}else{c=-1}d=L(c,l);Ya(j,k,o,e,g,d,d>>31);d=H[F[a+28>>2]+36>>1];e:{if(((d<<8|d>>>8)&65535)>>>0<=258){c=F[b+20>>2];d=F[b+16>>2];e=d+2|0;c=e>>>0<2?c+1|0:c;k=F[b+12>>2];if((k|0)<=(c|0)&e>>>0>I[b+8>>2]|(c|0)>(k|0)){break d}d=d+F[b>>2]|0;f=G[d|0]|G[d+1|0]<<8;F[b+16>>2]=e;F[b+20>>2]=c;break e}if(!db(1,h+4|0,b)){break d}f=F[h+4>>2]}F[h+68>>2]=f;d=Za(oj(96),j);ia[F[F[m>>2]+8>>2]](m,F[m+12>>2]-F[m+8>>2]>>2,d);d=(F[m+12>>2]-F[m+8>>2]>>2)-1|0;e=d<<2;F[F[e+F[m+8>>2]>>2]+60>>2]=f;F[F[a+4>>2]+(n<<2)>>2]=d;f=F[a+16>>2];c=F[a+20>>2]-f>>2;f:{if((c|0)>(d|0)){break f}F[h>>2]=-1;d=d+1|0;if(d>>>0>c>>>0){eb(r,d-c|0,h);f=F[r>>2];break f}if(c>>>0<=d>>>0){break f}F[a+20>>2]=(d<<2)+f}F[e+f>>2]=n;n=n+1|0;f=n>>>0>>0;if((i|0)!=(n|0)){continue}}break}n=!f}fa=h+80|0;return n&1}function ne(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c=H[b+38>>1];a:{if(!c){break a}b:{if(c>>>0<=511){d=F[b+12>>2];c=F[b+20>>2];g=F[b+16>>2];e=g+4|0;c=e>>>0<4?c+1|0:c;if(e>>>0>I[b+8>>2]&(c|0)>=(d|0)|(c|0)>(d|0)){break a}c=g+F[b>>2]|0;f=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[a+12>>2]=f;c=F[b+20>>2];d=F[b+16>>2]+4|0;c=d>>>0<4?c+1|0:c;F[b+16>>2]=d;F[b+20>>2]=c;break b}if(!qe(1,a+12|0,b)){break a}f=F[a+12>>2]}d=F[a>>2];c=F[a+4>>2]-d>>2;c:{if(c>>>0>>0){Ja(a,f-c|0);f=F[a+12>>2];break c}if(c>>>0<=f>>>0){break c}F[a+4>>2]=d+(f<<2)}if(!f){return 1}j=F[b+8>>2];i=F[b+12>>2];l=F[a>>2];g=0;while(1){c=F[b+20>>2];d=F[b+16>>2];if((i|0)<=(c|0)&j>>>0<=d>>>0|(c|0)>(i|0)){return 0}m=F[b>>2];k=G[m+d|0];d=d+1|0;c=d?c:c+1|0;h=d;F[b+16>>2]=d;F[b+20>>2]=c;d=k>>>2|0;e=0;d:{e:{f:{g:{n=k&3;switch(n|0){case 0:break e;case 3:break g;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}Qi(l+(g<<2)|0,0,(k&252)+4|0);g=c;break d}while(1){if((c|0)>=(i|0)&h>>>0>=j>>>0|(c|0)>(i|0)){break a}f=G[h+m|0];h=h+1|0;c=h?c:c+1|0;F[b+16>>2]=h;F[b+20>>2]=c;d=f<<(e<<3|6)|d;e=e+1|0;if((n|0)!=(e|0)){continue}break}}F[l+(g<<2)>>2]=d}f=F[a+12>>2];g=g+1|0;if(f>>>0>g>>>0){continue}break}c=a+16|0;k=F[a>>2];d=F[a+16>>2];b=F[a+20>>2]-d|0;h:{if(b>>>0<=16383){Ja(c,4096-(b>>>2|0)|0);break h}if((b|0)==16384){break h}F[a+20>>2]=d+16384}b=a+28|0;g=F[b>>2];d=F[a+32>>2]-g>>3;i:{if(d>>>0>>0){re(b,f-d|0);g=F[b>>2];break i}if(d>>>0>f>>>0){F[a+32>>2]=(f<<3)+g}if(!f){break a}}e=0;a=0;while(1){b=k+(e<<2)|0;i=F[b>>2];d=a;h=(e<<3)+g|0;F[h+4>>2]=d;F[h>>2]=i;i=F[b>>2];a=i+d|0;if(a>>>0>4096){break a}j:{if(a>>>0<=d>>>0){break j}h=F[c>>2];b=0;j=i&7;if(j){while(1){F[h+(d<<2)>>2]=e;d=d+1|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}if(i-1>>>0<=6){break j}while(1){b=h+(d<<2)|0;F[b>>2]=e;F[b+28>>2]=e;F[b+24>>2]=e;F[b+20>>2]=e;F[b+16>>2]=e;F[b+12>>2]=e;F[b+8>>2]=e;F[b+4>>2]=e;d=d+8|0;if((d|0)!=(a|0)){continue}break}}e=e+1|0;if((e|0)!=(f|0)){continue}break}o=(a|0)==4096}return o}function Td(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=fa-48|0;fa=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];f=F[e+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){rd(o,F[(j<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Sj(Rj(i,l,f,f>>31),ha,h,d);F[g+8>>2]=f;d=Sj(Rj(i,l,e,e>>31),ha,h,d);F[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=fe(n);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=f^d+f;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=F[a+84>>2]-(d+e^d)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];h=F[h>>2];F[g+36>>2]=d;F[g+32>>2]=f;F[g+24>>2]=h;F[g+28>>2]=k;Pd(g+40|0,m,g+32|0,g+24|0);d=c+e|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}xc();V()}fa=g+48|0;return 1}function Od(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=fa-48|0;fa=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];f=F[e+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){bd(o,F[(j<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Sj(Rj(i,l,f,f>>31),ha,h,d);F[g+8>>2]=f;d=Sj(Rj(i,l,e,e>>31),ha,h,d);F[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=fe(n);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=f^d+f;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=F[a+84>>2]-(d+e^d)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];h=F[h>>2];F[g+36>>2]=d;F[g+32>>2]=f;F[g+24>>2]=h;F[g+28>>2]=k;Pd(g+40|0,m,g+32|0,g+24|0);d=c+e|0;F[d>>2]=F[g+40>>2];F[d+4>>2]=F[g+44>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}xc();V()}fa=g+48|0;return 1}function Jd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=fa-48|0;fa=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];f=F[e+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){rd(o,F[(j<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Sj(Rj(i,l,f,f>>31),ha,h,d);F[g+8>>2]=f;d=Sj(Rj(i,l,e,e>>31),ha,h,d);F[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=fe(n);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=f^d+f;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=F[a+84>>2]-(d+e^d)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];F[g+40>>2]=F[h>>2];F[g+44>>2]=k;F[g+28>>2]=d;F[g+24>>2]=f;Fd(g+32|0,m,g+24|0,g+40|0);d=c+e|0;F[d>>2]=F[g+32>>2];F[d+4>>2]=F[g+36>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}xc();V()}fa=g+48|0;return 1}function Ed(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=fa-48|0;fa=g;d=F[a+8>>2];if(d-31>>>0>=4294967267){F[a+76>>2]=d;e=-1<>2]=d;F[a+80>>2]=e^-1;F[a+92>>2]=(d|0)/2;J[a+88>>2]=M(2)/M(d|0)}F[a+52>>2]=f;e=F[a+40>>2];d=F[e>>2];f=F[e+4>>2];F[g+16>>2]=0;F[g+8>>2]=0;F[g+12>>2]=0;a:{f=f-d|0;if((f|0)<=0){break a}d=F[e>>2];if((d|0)!=F[e+4>>2]){m=a+8|0;n=a+96|0;o=a+44|0;e=f>>>2|0;p=e>>>0>1?e:1;while(1){bd(o,F[(j<<2)+d>>2],g+8|0);e=F[g+12>>2];d=e>>31;f=F[g+8>>2];h=f>>31;k=F[g+16>>2];i=k>>31;i=i^i+k;h=i+((d^d+e)+(h^f+h)|0)|0;d=0;d=h>>>0>>0?1:d;b:{if(!(d|h)){F[g+8>>2]=F[a+92>>2];break b}i=F[a+92>>2];l=i>>31;f=Sj(Rj(i,l,f,f>>31),ha,h,d);F[g+8>>2]=f;d=Sj(Rj(i,l,e,e>>31),ha,h,d);F[g+12>>2]=d;e=d>>31;e=e^d+e;d=f>>31;d=e+(d+f^d)|0;if((k|0)>=0){F[g+16>>2]=i-d;break b}F[g+16>>2]=d-i}d=fe(n);f=F[g+8>>2];c:{if(d){F[g+16>>2]=0-F[g+16>>2];e=0-F[g+12>>2]|0;F[g+12>>2]=e;f=0-f|0;F[g+8>>2]=f;break c}e=F[g+12>>2]}d:{if((f|0)>=0){f=F[a+92>>2];d=f+F[g+16>>2]|0;f=e+f|0;break d}e:{if((e|0)<0){d=F[g+16>>2];f=d>>31;f=f^d+f;break e}d=F[g+16>>2];f=d>>31;f=F[a+84>>2]-(f^d+f)|0}if((d|0)<0){d=e>>31;d=d+e^d;break d}d=e>>31;d=F[a+84>>2]-(d+e^d)|0}e=F[a+84>>2];f:{if(!(d|f)){d=e;f=d;break f}if(!((d|0)!=(e|0)|f)){f=d;break f}if(!((e|0)!=(f|0)|d)){d=f;break f}g:{if(f){break g}h=F[a+92>>2];if((h|0)>=(d|0)){break g}d=(h<<1)-d|0;f=0;break f}h:{if((e|0)!=(f|0)){break h}h=F[a+92>>2];if((h|0)<=(d|0)){break h}d=(h<<1)-d|0;break f}i:{if((d|0)!=(e|0)){break i}e=F[a+92>>2];if((e|0)<=(f|0)){break i}f=(e<<1)-f|0;break f}if(d){break f}d=0;e=F[a+92>>2];if((e|0)>=(f|0)){break f}f=(e<<1)-f|0}e=j<<3;h=e+b|0;k=F[h+4>>2];F[g+40>>2]=F[h>>2];F[g+44>>2]=k;F[g+28>>2]=d;F[g+24>>2]=f;Fd(g+32|0,m,g+24|0,g+40|0);d=c+e|0;F[d>>2]=F[g+32>>2];F[d+4>>2]=F[g+36>>2];j=j+1|0;if((p|0)==(j|0)){break a}e=F[a+40>>2];d=F[e>>2];if(F[e+4>>2]-d>>2>>>0>j>>>0){continue}break}}xc();V()}fa=g+48|0;return 1}function Ue(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=fa-16|0;fa=f;c=F[a+4>>2];F[a+40>>2]=F[a>>2];F[a+44>>2]=c;c=F[a+36>>2];F[a+72>>2]=F[a+32>>2];F[a+76>>2]=c;d=F[a+28>>2];c=a- -64|0;F[c>>2]=F[a+24>>2];F[c+4>>2]=d;c=F[a+20>>2];F[a+56>>2]=F[a+16>>2];F[a+60>>2]=c;c=F[a+12>>2];F[a+48>>2]=F[a+8>>2];F[a+52>>2]=c;a:{b:{if(lg(a+40|0,1,f+8|0)){c=F[a+44>>2];F[a>>2]=F[a+40>>2];F[a+4>>2]=c;c=F[a+76>>2];F[a+32>>2]=F[a+72>>2];F[a+36>>2]=c;c=F[a+68>>2];F[a+24>>2]=F[a+64>>2];F[a+28>>2]=c;d=F[a+60>>2];h=d;c=F[a+56>>2];F[a+16>>2]=c;F[a+20>>2]=d;e=F[a+52>>2];d=F[a+48>>2];F[a+8>>2]=d;F[a+12>>2]=e;i=d-c|0;g=F[f+12>>2];e=e-((c>>>0>d>>>0)+h|0)|0;d=F[f+8>>2];if((g|0)==(e|0)&i>>>0>=d>>>0|e>>>0>g>>>0){break b}}c=0;break a}e=c+d|0;c=h+g|0;F[a+16>>2]=e;F[a+20>>2]=d>>>0>e>>>0?c+1|0:c;c:{if(H[a+38>>1]<=513){c=F[a+4>>2];F[a+96>>2]=F[a>>2];F[a+100>>2]=c;c=F[a+36>>2];F[a+128>>2]=F[a+32>>2];F[a+132>>2]=c;c=F[a+28>>2];F[a+120>>2]=F[a+24>>2];F[a+124>>2]=c;c=F[a+20>>2];F[a+112>>2]=F[a+16>>2];F[a+116>>2]=c;c=F[a+12>>2];F[a+104>>2]=F[a+8>>2];F[a+108>>2]=c;d:{if(lg(a+96|0,1,f+8|0)){c=F[a+100>>2];F[a>>2]=F[a+96>>2];F[a+4>>2]=c;c=F[a+132>>2];F[a+32>>2]=F[a+128>>2];F[a+36>>2]=c;c=F[a+124>>2];F[a+24>>2]=F[a+120>>2];F[a+28>>2]=c;d=F[a+116>>2];h=d;c=F[a+112>>2];F[a+16>>2]=c;F[a+20>>2]=d;e=F[a+108>>2];d=F[a+104>>2];F[a+8>>2]=d;F[a+12>>2]=e;i=d-c|0;g=F[f+12>>2];e=e-((c>>>0>d>>>0)+h|0)|0;d=F[f+8>>2];if((g|0)==(e|0)&i>>>0>=d>>>0|e>>>0>g>>>0){break d}}c=0;break a}e=c+d|0;c=h+g|0;F[a+16>>2]=e;F[a+20>>2]=d>>>0>e>>>0?c+1|0:c;break c}c=0;if(!de(a+80|0,a)){break a}}c=0;if(!$e(a)){break a}c=F[a+4>>2];F[b>>2]=F[a>>2];F[b+4>>2]=c;c=F[a+36>>2];F[b+32>>2]=F[a+32>>2];F[b+36>>2]=c;c=F[a+28>>2];F[b+24>>2]=F[a+24>>2];F[b+28>>2]=c;c=F[a+20>>2];F[b+16>>2]=F[a+16>>2];F[b+20>>2]=c;c=F[a+12>>2];F[b+8>>2]=F[a+8>>2];F[b+12>>2]=c;c=1}fa=f+16|0;return c}function Sh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=fa-32|0;fa=f;e=f+8|0;c=fa-80|0;fa=c;a=F[b+36>>2];F[c+72>>2]=F[b+32>>2];F[c+76>>2]=a;d=F[b+28>>2];a=c- -64|0;F[a>>2]=F[b+24>>2];F[a+4>>2]=d;a=F[b+20>>2];F[c+56>>2]=F[b+16>>2];F[c+60>>2]=a;a=F[b+12>>2];F[c+48>>2]=F[b+8>>2];F[c+52>>2]=a;a=F[b+4>>2];F[c+40>>2]=F[b>>2];F[c+44>>2]=a;Zf(c+8|0,c+40|0,c+24|0);a=F[c+8>>2];a:{if(a){F[e>>2]=a;a=e+4|0;if(D[c+23|0]>=0){b=c+8|4;e=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=e;F[a+8>>2]=F[b+8>>2];break a}qj(a,F[c+12>>2],F[c+16>>2]);if(D[c+23|0]>=0){break a}mj(F[c+12>>2]);break a}if(D[c+23|0]<0){mj(F[c+12>>2])}a=G[c+31|0];if(a>>>0>=2){a=oj(32);b=G[1621]|G[1622]<<8;D[a+24|0]=b;D[a+25|0]=b>>>8;b=G[1617]|G[1618]<<8|(G[1619]<<16|G[1620]<<24);d=G[1613]|G[1614]<<8|(G[1615]<<16|G[1616]<<24);D[a+16|0]=d;D[a+17|0]=d>>>8;D[a+18|0]=d>>>16;D[a+19|0]=d>>>24;D[a+20|0]=b;D[a+21|0]=b>>>8;D[a+22|0]=b>>>16;D[a+23|0]=b>>>24;b=G[1609]|G[1610]<<8|(G[1611]<<16|G[1612]<<24);d=G[1605]|G[1606]<<8|(G[1607]<<16|G[1608]<<24);D[a+8|0]=d;D[a+9|0]=d>>>8;D[a+10|0]=d>>>16;D[a+11|0]=d>>>24;D[a+12|0]=b;D[a+13|0]=b>>>8;D[a+14|0]=b>>>16;D[a+15|0]=b>>>24;b=G[1601]|G[1602]<<8|(G[1603]<<16|G[1604]<<24);d=G[1597]|G[1598]<<8|(G[1599]<<16|G[1600]<<24);D[a|0]=d;D[a+1|0]=d>>>8;D[a+2|0]=d>>>16;D[a+3|0]=d>>>24;D[a+4|0]=b;D[a+5|0]=b>>>8;D[a+6|0]=b>>>16;D[a+7|0]=b>>>24;D[a+26|0]=0;F[c+8>>2]=-1;b=c+8|4;qj(b,a,26);d=D[c+23|0];F[e>>2]=F[c+8>>2];e=e+4|0;b:{if((d|0)>=0){d=F[b+4>>2];F[e>>2]=F[b>>2];F[e+4>>2]=d;F[e+8>>2]=F[b+8>>2];break b}qj(e,F[c+12>>2],F[c+16>>2])}if(D[c+23|0]<0){mj(F[c+12>>2])}mj(a);break a}F[e>>2]=0;F[e+4>>2]=0;F[e+16>>2]=a;F[e+8>>2]=0;F[e+12>>2]=0}fa=c+80|0;a=F[f+24>>2];if(D[f+23|0]<0){mj(F[f+12>>2])}fa=f+32|0;return a|0}function sh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c;a:{d=a;if(F[d+12>>2]==(b|0)){break a}a=b;b=F[d+4>>2];c=F[d>>2];if((b|0)!=(c|0)){while(1){e=b-12|0;if(D[b-1|0]<0){mj(F[e>>2])}b=e;if((c|0)!=(b|0)){continue}break}}F[d+12>>2]=a;F[d+4>>2]=c;b=F[a>>2];j=a+4|0;if((b|0)==(j|0)){break a}while(1){b:{if(F[d+8>>2]!=(c|0)){c:{if(D[b+27|0]>=0){a=F[b+20>>2];F[c>>2]=F[b+16>>2];F[c+4>>2]=a;F[c+8>>2]=F[b+24>>2];break c}qj(c,F[b+16>>2],F[b+20>>2])}F[d+4>>2]=c+12;break b}g=0;d:{e:{f:{e=F[d+4>>2];a=F[d>>2];f=(e-a|0)/12|0;c=f+1|0;if(c>>>0<357913942){h=(F[d+8>>2]-a|0)/12|0;k=h<<1;c=h>>>0<178956970?c>>>0>k>>>0?c:k:357913941;if(c){if(c>>>0>=357913942){break f}g=oj(L(c,12))}h=L(c,12);c=L(f,12)+g|0;g:{if(D[b+27|0]>=0){f=F[b+20>>2];F[c>>2]=F[b+16>>2];F[c+4>>2]=f;F[c+8>>2]=F[b+24>>2];break g}qj(c,F[b+16>>2],F[b+20>>2]);e=F[d+4>>2];a=F[d>>2]}g=g+h|0;f=c+12|0;if((a|0)==(e|0)){break e}while(1){e=e-12|0;h=F[e+4>>2];c=c-12|0;F[c>>2]=F[e>>2];F[c+4>>2]=h;F[c+8>>2]=F[e+8>>2];F[e>>2]=0;F[e+4>>2]=0;F[e+8>>2]=0;if((a|0)!=(e|0)){continue}break}F[d+8>>2]=g;a=F[d+4>>2];F[d+4>>2]=f;e=F[d>>2];F[d>>2]=c;if((a|0)==(e|0)){break d}while(1){c=a-12|0;if(D[a-1|0]<0){mj(F[c>>2])}a=c;if((c|0)!=(e|0)){continue}break}break d}Ha();V()}Ua(1336);V()}F[d+8>>2]=g;F[d+4>>2]=f;F[d>>2]=c}if(e){mj(e)}}c=F[b+4>>2];h:{if(!c){a=F[b+8>>2];if(F[a>>2]==(b|0)){break h}b=b+8|0;while(1){c=F[b>>2];b=c+8|0;a=F[c+8>>2];if((c|0)!=F[a>>2]){continue}break}break h}while(1){a=c;c=F[c>>2];if(c){continue}break}}if((a|0)==(j|0)){break a}c=F[d+4>>2];b=a;continue}}c=0;i:{if((i|0)<0){break i}a=F[d>>2];if((F[d+4>>2]-a|0)/12>>>0<=i>>>0){break i}a=a+L(i,12)|0;c=D[a+11|0]<0?F[a>>2]:a}return c|0}function Ii(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=fa-16|0;fa=k;F[k+8>>2]=c;e=F[a+12>>2];d=F[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=F[a+16>>2];d=F[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=Qi(e,0,d)+d|0}F[a+12>>2]=d;break a}b:{c:{d:{h=F[a+8>>2];i=d-h>>2;e=i+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>>0<2147483644?e>>>0>l>>>0?e:l:1073741823;if(g){if(g>>>0>=1073741824){break d}j=oj(g<<2)}e=(i<<2)+j|0;i=f<<2;f=Qi(e,0,i);i=f+i|0;g=(g<<2)+j|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=F[d>>2];F[d>>2]=0;e=e-4|0;F[e>>2]=f;if((d|0)!=(h|0)){continue}break}F[a+16>>2]=g;f=F[a+12>>2];F[a+12>>2]=i;d=F[a+8>>2];F[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=F[f>>2];F[f>>2]=0;if(e){ob(e)}if((d|0)!=(f|0)){continue}break}break b}Ha();V()}Ua(1336);V()}F[a+16>>2]=g;F[a+12>>2]=i;F[a+8>>2]=f}if(d){mj(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=F[e>>2];F[e>>2]=0;if(c){ob(c)}if((d|0)!=(e|0)){continue}break}c=F[k+8>>2]}F[a+12>>2]=d}e:{f:{d=F[c+56>>2];g:{if((d|0)>4){break g}e=L(d,12)+a|0;d=F[e+24>>2];if((d|0)!=F[e+28>>2]){F[d>>2]=b;F[e+24>>2]=d+4;break g}h=F[e+20>>2];f=d-h|0;j=f>>2;d=j+1|0;if(d>>>0>=1073741824){break f}g=f>>1;g=f>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break e}d=oj(g<<2)}else{d=0}j=d+(j<<2)|0;F[j>>2]=b;if((f|0)>0){Oi(d,h,f)}F[e+20>>2]=d;F[e+24>>2]=j+4;F[e+28>>2]=d+(g<<2);if(!h){break g}mj(h)}F[c+60>>2]=b;a=F[a+8>>2];F[k+8>>2]=0;b=a+(b<<2)|0;a=F[b>>2];F[b>>2]=c;if(a){ob(a)}a=F[k+8>>2];F[k+8>>2]=0;if(a){ob(a)}fa=k+16|0;return}Ha();V()}Ua(1336);V()}function We(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=fa-16|0;fa=i;F[i>>2]=b;g=-1;a:{if((b|0)==-1){F[i+4>>2]=-1;break a}c=b+1|0;F[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}F[i+8>>2]=g;m=(b|0)==-1?-1:(b>>>0)/3|0;b:{c:{d:{e:{while(1){f:{g:{if((b|0)!=-1){c=F[F[F[a+8>>2]+12>>2]+(b<<2)>>2];if((c|0)!=-1){break g}}g=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break f}while(1){f=L(g,144)+c|0;c=F[f+136>>2];d=F[f+140>>2];h:{if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break h}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break e}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break d}c=oj(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){Oi(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break h}mj(h)}g=g+1|0;c=F[a+216>>2];if(g>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0>>0){break f}g=0;if(F[a+220>>2]==F[a+216>>2]){break f}while(1){i:{if(!fe(F[a+368>>2]+(g<<4)|0)){break i}f=F[a+216>>2]+L(g,144)|0;c=F[f+136>>2];d=F[f+140>>2];if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break i}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break c}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break b}c=oj(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){Oi(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break i}mj(h)}g=g+1|0;if(g>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){b=F[(l<<2)+i>>2];continue}break}fa=i+16|0;return 1}Ha();V()}Ua(1336);V()}Ha();V()}Ua(1336);V()}function Ve(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=fa-16|0;fa=i;F[i>>2]=b;g=-1;a:{if((b|0)==-1){F[i+4>>2]=-1;break a}c=b+1|0;F[i+4>>2]=(c>>>0)%3|0?c:b-2|0;if((b>>>0)%3|0){g=b-1|0;break a}g=b+2|0}F[i+8>>2]=g;b:{c:{while(1){d:{if(!((b|0)==-1|F[F[F[a+8>>2]+12>>2]+(b<<2)>>2]==-1)){g=0;if(F[a+220>>2]==F[a+216>>2]){break d}e:{while(1){f:{g:{if(!fe(F[a+368>>2]+(g<<4)|0)){break g}f=F[a+216>>2]+L(g,144)|0;c=F[f+136>>2];d=F[f+140>>2];if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break g}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break f}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break e}c=oj(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){Oi(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break g}mj(h)}g=g+1|0;if(g>>>0<(F[a+220>>2]-F[a+216>>2]|0)/144>>>0){continue}break d}break}Ha();V()}Ua(1336);V()}g=0;c=F[a+216>>2];if((c|0)==F[a+220>>2]){break d}while(1){f=L(g,144)+c|0;c=F[f+136>>2];d=F[f+140>>2];h:{if(c>>>0>>0){F[c>>2]=b;F[f+136>>2]=c+4;break h}h=F[f+132>>2];j=c-h|0;e=j>>2;c=e+1|0;if(c>>>0>=1073741824){break c}k=e<<2;d=d-h|0;e=d>>1;d=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(d){if(d>>>0>=1073741824){break b}c=oj(d<<2)}else{c=0}e=k+c|0;F[e>>2]=b;if((j|0)>0){Oi(c,h,j)}F[f+132>>2]=c;F[f+136>>2]=e+4;F[f+140>>2]=c+(d<<2);if(!h){break h}mj(h)}g=g+1|0;c=F[a+216>>2];if(g>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}l=l+1|0;if((l|0)!=3){b=F[(l<<2)+i>>2];continue}break}fa=i+16|0;return 1}Ha();V()}Ua(1336);V()}function cf(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=F[a+8>>2];g=F[a+4>>2];if((e-g|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=g;e=L(b,12)-12|0;f=((e>>>0)/12|0)+1&3;if(f){while(1){j=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=j;F[d+8>>2]=F[c+8>>2];d=d+12|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}g=L(b,12)+g|0;if(e>>>0<36){break a}while(1){b=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=b;F[d+8>>2]=F[c+8>>2];F[d+20>>2]=F[c+8>>2];b=F[c+4>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=b;F[d+32>>2]=F[c+8>>2];b=F[c+4>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=b;b=F[c+4>>2];F[d+36>>2]=F[c>>2];F[d+40>>2]=b;F[d+44>>2]=F[c+8>>2];d=d+48|0;if((g|0)!=(d|0)){continue}break}}F[a+4>>2]=g;return}b:{f=F[a>>2];i=(g-f|0)/12|0;d=i+b|0;if(d>>>0<357913942){e=(e-f|0)/12|0;f=e<<1;f=e>>>0<178956970?d>>>0>f>>>0?d:f:357913941;if(f){if(f>>>0>=357913942){break b}j=oj(L(f,12))}e=L(i,12)+j|0;d=e;b=L(b,12);i=b-12|0;k=((i>>>0)/12|0)+1&3;if(k){d=e;while(1){l=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=l;F[d+8>>2]=F[c+8>>2];d=d+12|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}h=b+e|0;if(i>>>0>=36){while(1){b=F[c+4>>2];F[d>>2]=F[c>>2];F[d+4>>2]=b;F[d+8>>2]=F[c+8>>2];F[d+20>>2]=F[c+8>>2];b=F[c+4>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=b;F[d+32>>2]=F[c+8>>2];b=F[c+4>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=b;b=F[c+4>>2];F[d+36>>2]=F[c>>2];F[d+40>>2]=b;F[d+44>>2]=F[c+8>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}b=F[a>>2];c=g-b|0;d=e+L((c|0)/-12|0,12)|0;if((c|0)>0){Oi(d,b,c)}F[a+8>>2]=L(f,12)+j;F[a+4>>2]=h;F[a>>2]=d;if(b){mj(b)}return}Ha();V()}Ua(1336);V()}function Jh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=0;h=fa-16|0;fa=h;j=F[b+80>>2];e=D[c+24|0];F[h+8>>2]=0;F[h>>2]=0;F[h+4>>2]=0;a:{b:{if(e){if((e|0)<0){break b}b=e<<2;a=oj(b);F[h>>2]=a;g=a+b|0;F[h+8>>2]=g;k=e-1&1073741823;l=e&7;c:{if(!l){b=a;break c}b=a;while(1){F[b>>2]=-1073741824;b=b+4|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}if(k>>>0>=7){while(1){F[b+24>>2]=-1073741824;F[b+28>>2]=-1073741824;F[b+16>>2]=-1073741824;F[b+20>>2]=-1073741824;F[b+8>>2]=-1073741824;F[b+12>>2]=-1073741824;F[b>>2]=-1073741824;F[b+4>>2]=-1073741824;b=b+32|0;if((g|0)!=(b|0)){continue}break}}F[h+4>>2]=g}b=L(e,j);g=F[d>>2];f=F[d+4>>2]-g>>2;d:{if(b>>>0>f>>>0){Ja(d,b-f|0);break d}if(b>>>0>=f>>>0){break d}F[d+4>>2]=g+(b<<2)}e:{if(!j){break e}i=1;if((e|0)<=0){b=0;while(1){if(!Pc(c,G[c+84|0]?b:F[F[c+68>>2]+(b<<2)>>2],D[c+24|0],a)){break e}b=b+1|0;i=j>>>0>b>>>0;if((b|0)!=(j|0)){continue}break}break e}p=e&-4;l=e&3;f=0;q=e-1>>>0<3;while(1){if(Pc(c,G[c+84|0]?m:F[F[c+68>>2]+(m<<2)>>2],D[c+24|0],a)){o=F[d>>2];n=0;e=F[h>>2];b=0;i=0;if(!q){while(1){g=o+(f<<2)|0;k=b<<2;J[g>>2]=J[k+e>>2];J[g+4>>2]=J[(k|4)+e>>2];J[g+8>>2]=J[(k|8)+e>>2];J[g+12>>2]=J[(k|12)+e>>2];b=b+4|0;f=f+4|0;i=i+4|0;if((p|0)!=(i|0)){continue}break}}if(l){while(1){J[o+(f<<2)>>2]=J[(b<<2)+e>>2];b=b+1|0;f=f+1|0;n=n+1|0;if((l|0)!=(n|0)){continue}break}}m=m+1|0;i=m>>>0>>0;if((j|0)!=(m|0)){continue}}break}a=F[h>>2]}if(a){mj(a)}fa=h+16|0;a=(i^-1)&1;break a}Ha();V()}return a|0}function Pd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=F[b+16>>2];g=F[c+4>>2]-k|0;e=g;f=F[c>>2]-k|0;F[c>>2]=f;F[c+4>>2]=e;j=F[b+16>>2];e=e>>31;h=e+g^e;e=f>>31;l=(j|0)>=(h+(e+f^e)|0);a:{if(l){e=g;break a}b:{c:{if((f|0)>=0){i=1;h=1;if((g|0)>=0){break b}e=1;i=-1;h=-1;if(f){break c}break b}e=-1;i=-1;h=-1;if((g|0)<=0){break b}}i=(g|0)<=0?-1:1;h=e}e=f<<1;f=L(h,j);e=e-f|0;h=(L(i,h)|0)>=0;i=L(i,j);e=((h?0-e|0:e)+i|0)/2|0;F[c+4>>2]=e;j=f;f=(g<<1)-i|0;f=(j+(h?0-f|0:f)|0)/2|0;F[c>>2]=f}d:{e:{f:{g:{h:{i:{j:{if(f){if((f|0)<0){break j}if((e|0)>=0){break i}break f}if(e){break h}i=1;g=0;e=0;h=0;break d}i=1;if((e|0)>0){break g}h=(e|0)>0?253:0;g=e;e=f;break d}g=0-e|0;e=0-f|0;h=254;break e}if((e|0)<=0){break f}}e=0-e|0;g=f;h=253;break e}g=0-f|0;h=255}F[c>>2]=e;F[c+4>>2]=g;i=0}c=F[d+4>>2]+g|0;f=F[d>>2]+e|0;g=F[b+16>>2];k:{if((f|0)>(g|0)){f=f-F[b+4>>2]|0;break k}if((0-g|0)<=(f|0)){break k}f=F[b+4>>2]+f|0}l:{if((c|0)>(g|0)){c=c-F[b+4>>2]|0;break l}if((0-g|0)<=(c|0)){break l}c=F[b+4>>2]+c|0}m:{if(i){b=c;break m}b=c;n:{switch((h&3)-1|0){case 0:b=0-f|0;f=c;break m;case 1:b=0-c|0;f=0-f|0;break m;case 2:break n;default:break m}}b=f;f=0-c|0}o:{if(l){c=b;break o}p:{q:{if((f|0)>=0){c=1;e=1;if((b|0)>=0){break p}d=1;c=-1;e=-1;if(f){break q}break p}d=-1;c=-1;e=-1;if((b|0)<=0){break p}}c=(b|0)<=0?-1:1;e=d}d=f<<1;f=L(e,g);d=d-f|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(c,e)|0)>=0;e=L(c,g);c=((d?j:h)+e|0)/2|0;b=(b<<1)-e|0;f=(f+(d?0-b|0:b)|0)/2|0}F[a>>2]=f+k;F[a+4>>2]=c+k}function $a(a,b){var c=0,d=0,e=0,f=0;if(!F[a+64>>2]){c=oj(32);F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=F[a+64>>2];F[a+64>>2]=c;if(d){c=F[d>>2];if(c){F[d+4>>2]=c;mj(c)}mj(d);c=F[a+64>>2]}F[a>>2]=c;d=F[c+20>>2];F[a+8>>2]=F[c+16>>2];F[a+12>>2]=d;d=F[c+24>>2];c=F[c+28>>2];F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+16>>2]=d;F[a+20>>2]=c}a:{D[a+24|0]=G[b+24|0];F[a+28>>2]=F[b+28>>2];D[a+32|0]=G[b+32|0];c=F[b+44>>2];F[a+40>>2]=F[b+40>>2];F[a+44>>2]=c;c=F[b+52>>2];F[a+48>>2]=F[b+48>>2];F[a+52>>2]=c;F[a+56>>2]=F[b+56>>2];c=F[b+12>>2];F[a+8>>2]=F[b+8>>2];F[a+12>>2]=c;c=F[b+20>>2];F[a+16>>2]=F[b+16>>2];F[a+20>>2]=c;F[a+60>>2]=F[b+60>>2];d=F[b>>2];b:{if(!d){F[a>>2]=0;c=1;break b}e=F[a>>2];c=0;if(!e){break b}c=F[d>>2];jg(e,c,F[d+4>>2]-c|0,0);c=1}c:{if(!c){break c}D[a+84|0]=G[b+84|0];F[a+80>>2]=F[b+80>>2];if((a|0)!=(b|0)){ab(a+68|0,F[b+68>>2],F[b+72>>2])}d=F[b+88>>2];d:{if(d){b=oj(40);c=F[d>>2];F[b+16>>2]=0;F[b+8>>2]=0;F[b+12>>2]=0;F[b>>2]=c;e=F[d+12>>2]-F[d+8>>2]|0;if(e){if((e|0)<0){break a}c=oj(e);F[b+8>>2]=c;F[b+12>>2]=c;F[b+16>>2]=c+e;f=F[d+8>>2];e=F[d+12>>2]-f|0;if((e|0)>0){c=Oi(c,f,e)+e|0}F[b+12>>2]=c}c=F[d+36>>2];F[b+32>>2]=F[d+32>>2];F[b+36>>2]=c;c=F[d+28>>2];F[b+24>>2]=F[d+24>>2];F[b+28>>2]=c;c=F[a+88>>2];F[a+88>>2]=b;if(c){break d}break c}c=F[a+88>>2];F[a+88>>2]=0;if(!c){break c}}a=F[c+8>>2];if(a){F[c+12>>2]=a;mj(a)}mj(c)}return}Ha();V()}function Aa(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=d-c|0;if((h|0)<=0){return}a:{f=F[a+8>>2];i=F[a+4>>2];if((h|0)<=(f-i|0)){j=i-b|0;if((j|0)>=(h|0)){g=i;f=d;break a}g=i;f=c+j|0;if((f|0)!=(d|0)){e=f;while(1){D[g|0]=G[e|0];g=g+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=g;if((j|0)>0){break a}return}e=F[a>>2];d=h+(i-e|0)|0;if((d|0)>=0){g=b-e|0;f=f-e|0;j=f<<1;f=f>>>0<1073741823?d>>>0>j>>>0?d:j:2147483647;if(f){d=oj(f)}else{d=0}c=Oi(g+d|0,c,h);if((g|0)>0){Oi(d,e,g)}c=c+h|0;if((b|0)!=(i|0)){g=(b^-1)+i|0;h=i-b&7;if(h){e=0;while(1){D[c|0]=G[b|0];c=c+1|0;b=b+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if(g>>>0>=7){while(1){D[c|0]=G[b|0];D[c+1|0]=G[b+1|0];D[c+2|0]=G[b+2|0];D[c+3|0]=G[b+3|0];D[c+4|0]=G[b+4|0];D[c+5|0]=G[b+5|0];D[c+6|0]=G[b+6|0];D[c+7|0]=G[b+7|0];c=c+8|0;b=b+8|0;if((i|0)!=(b|0)){continue}break}}e=F[a>>2]}F[a+8>>2]=d+f;F[a+4>>2]=c;F[a>>2]=d;if(e){mj(e)}return}Ha();V()}e=g;d=e-h|0;if(i>>>0>d>>>0){while(1){D[e|0]=G[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}F[a+4>>2]=e;a=g-(b+h|0)|0;if(a){Pi(g-a|0,b,a)}if((c|0)==(f|0)){return}a=(c^-1)+f|0;g=f-c&7;b:{if(!g){e=b;break b}d=0;e=b;while(1){D[e|0]=G[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){D[e|0]=G[c|0];D[e+1|0]=G[c+1|0];D[e+2|0]=G[c+2|0];D[e+3|0]=G[c+3|0];D[e+4|0]=G[c+4|0];D[e+5|0]=G[c+5|0];D[e+6|0]=G[c+6|0];D[e+7|0]=G[c+7|0];e=e+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}function Ph(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=fa-16|0;fa=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!G[c+84|0]|(b|0)!=5&(b|0)!=6)){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=oj(a);b=Oi(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=F[d>>2];if(a){F[d+4>>2]=a;mj(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=oj(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;Qi(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>2;d:{if(b>>>0>>0){Ja(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!wg(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(wg(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;F[k>>2]=F[g+l>>2];F[k+4>>2]=F[g+(l|4)>>2];F[k+8>>2]=F[g+(l|8)>>2];F[k+12>>2]=F[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){F[(j<<2)+o>>2]=F[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){mj(h)}a=b^1}fa=e+16|0;a=a&1;break a}Ha();V()}return a|0}function Kh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=fa-16|0;fa=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!G[c+84|0]|(b|0)!=5&(b|0)!=6)){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<2;if(a){if((a|0)<0){break b}c=oj(a);b=Oi(c,h+i|0,a);j=b+a|0;b=b+(a>>2<<2)|0}a=F[d>>2];if(a){F[d+4>>2]=a;mj(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<2;h=oj(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;Qi(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>2;d:{if(b>>>0>>0){Ja(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<2)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!vg(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(vg(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<2)+o|0;l=a<<2;F[k>>2]=F[g+l>>2];F[k+4>>2]=F[g+(l|4)>>2];F[k+8>>2]=F[g+(l|8)>>2];F[k+12>>2]=F[g+(l|12)>>2];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){F[(j<<2)+o>>2]=F[g+(a<<2)>>2];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){mj(h)}a=b^1}fa=e+16|0;a=a&1;break a}Ha();V()}return a|0}function Oh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=fa-16|0;fa=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!G[c+84|0]|(b|0)!=3&(b|0)!=4)){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=oj(a);b=Oi(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=F[d>>2];if(a){F[d+4>>2]=a;mj(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=oj(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;Qi(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>1;d:{if(b>>>0>>0){sg(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!ug(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(ug(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;E[k>>1]=H[g+l>>1];E[k+2>>1]=H[g+(l|2)>>1];E[k+4>>1]=H[g+(l|4)>>1];E[k+6>>1]=H[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){E[(j<<1)+o>>1]=H[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){mj(h)}a=b^1}fa=e+16|0;a=a&1;break a}Ha();V()}return a|0}function Nh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=fa-16|0;fa=e;i=F[b+80>>2];a=D[c+24|0];f=L(i,a);a:{b:{b=F[c+28>>2];c:{if(!(!G[c+84|0]|(b|0)!=3&(b|0)!=4)){h=F[c+48>>2];i=F[F[c>>2]>>2];b=0;F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;c=0;a=f<<1;if(a){if((a|0)<0){break b}c=oj(a);b=Oi(c,h+i|0,a);j=b+a|0;b=b+(a>>1<<1)|0}a=F[d>>2];if(a){F[d+4>>2]=a;mj(a)}F[d+8>>2]=b;F[d+4>>2]=j;F[d>>2]=c;a=1;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if(a){if((a|0)<0){break b}b=a<<1;h=oj(b);F[e>>2]=h;g=b+h|0;F[e+8>>2]=g;Qi(h,0,b);F[e+4>>2]=g}g=F[d>>2];b=F[d+4>>2]-g>>1;d:{if(b>>>0>>0){sg(d,f-b|0);break d}if(b>>>0<=f>>>0){break d}F[d+4>>2]=g+(f<<1)}e:{if(!i){b=0;break e}if(!a){a=0;b=1;while(1){if(!tg(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],h)){break e}a=a+1|0;b=i>>>0>a>>>0;if((a|0)!=(i|0)){continue}break}break e}p=a&-4;n=a&3;q=a-1>>>0<3;b=1;f=0;while(1){if(tg(c,G[c+84|0]?f:F[F[c+68>>2]+(f<<2)>>2],D[c+24|0],h)){o=F[d>>2];m=0;g=F[e>>2];a=0;b=0;if(!q){while(1){k=(j<<1)+o|0;l=a<<1;E[k>>1]=H[g+l>>1];E[k+2>>1]=H[g+(l|2)>>1];E[k+4>>1]=H[g+(l|4)>>1];E[k+6>>1]=H[g+(l|6)>>1];a=a+4|0;j=j+4|0;b=b+4|0;if((p|0)!=(b|0)){continue}break}}if(n){while(1){E[(j<<1)+o>>1]=H[g+(a<<1)>>1];a=a+1|0;j=j+1|0;m=m+1|0;if((m|0)!=(n|0)){continue}break}}f=f+1|0;b=i>>>0>f>>>0;if((f|0)!=(i|0)){continue}}break}h=F[e>>2]}if(h){mj(h)}a=b^1}fa=e+16|0;a=a&1;break a}Ha();V()}return a|0}function td(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;F[a+8>>2]=e;f=a+32|0;i=F[f>>2];h=F[a+36>>2]-i>>2;a:{if(h>>>0>>0){Ja(f,e-h|0);i=F[f>>2];f=F[a+8>>2];break a}if(e>>>0>>0){F[a+36>>2]=(e<<2)+i}f=e}h=0;g=(e&1073741823)!=(e|0)?-1:e<<2;m=Qi(oj(g),0,g);b:{if((f|0)<=0){break b}while(1){f=h<<2;g=F[f+m>>2];j=F[a+16>>2];c:{if((g|0)>(j|0)){F[f+i>>2]=j;break c}f=f+i|0;j=F[a+12>>2];if((j|0)>(g|0)){F[f>>2]=j;break c}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}if((f|0)<=0){break b}h=0;while(1){g=h<<2;f=g+c|0;g=F[b+g>>2]+F[g+i>>2]|0;F[f>>2]=g;d:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break d}g=g+F[a+20>>2]|0}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}if(!((d|0)<=(e|0)|(f|0)<=0)){o=0-e<<2;i=e;while(1){e:{if((f|0)<=0){break e}l=i<<2;n=l+c|0;p=n+o|0;j=F[a+32>>2];h=0;while(1){f=h<<2;g=F[f+p>>2];k=F[a+16>>2];f:{if((g|0)>(k|0)){F[f+j>>2]=k;break f}f=f+j|0;k=F[a+12>>2];if((k|0)>(g|0)){F[f>>2]=k;break f}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}h=0;if((f|0)<=0){break e}l=b+l|0;while(1){g=h<<2;f=g+n|0;g=F[g+l>>2]+F[g+j>>2]|0;F[f>>2]=g;g:{if((g|0)>F[a+16>>2]){g=g-F[a+20>>2]|0}else{if((g|0)>=F[a+12>>2]){break g}g=g+F[a+20>>2]|0}F[f>>2]=g}f=F[a+8>>2];h=h+1|0;if((f|0)>(h|0)){continue}break}}i=e+i|0;if((i|0)<(d|0)){continue}break}}mj(m);return 1}function Nc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=fa-32|0;fa=i;F[i+28>>2]=0;a:{b:{if(H[b+38>>1]<=513){c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=F[b+12>>2];if((e|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(e|0)){break a}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;break b}if(!Ec(1,i+28|0,b)){break a}d=F[i+28>>2]}if(!d){break a}Fc(a+76|0,d);c=i+8|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;c:{if(!de(c,b)){break c}e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^j;if(e&1){f=F[g>>2]&(f^-1)}else{f=f|F[g>>2]}e=e^1;F[g>>2]=f;h=h+1|0;if((h|0)!=(d|0)){continue}break}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;f=F[b+16>>2];j=f+4|0;c=j>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break c}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=j;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break c}c=j+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break c}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break c}h=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break c}F[a+24>>2]=c-1}}fa=i+32|0;return h|0}function gf(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;a:{if((b|0)==-1){break a}c=b+1|0;d=(c>>>0)%3|0?c:b-2|0;f=b-1|0;if((b>>>0)%3|0){break a}f=b+2|0}b:{c:{d:{e:{f:{g:{e=F[a+184>>2];switch(e|0){case 7:break d;case 3:break e;case 5:break f;case 0:case 1:break g;default:break b}}g=F[a+148>>2];c=-1;e=1;d=((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:c)<<2;c=F[a+156>>2];d=d+c|0;F[d>>2]=F[d>>2]+1;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+1;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+1;e=2;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+1;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+2;e=1;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0;break c}g=F[a+148>>2];c=F[a+156>>2];e=c+(((b|0)!=-1?F[F[g>>2]+(b<<2)>>2]:-1)<<2)|0;F[e>>2]=F[e>>2]+2;d=(((d|0)!=-1?F[F[g>>2]+(d<<2)>>2]:-1)<<2)+c|0;F[d>>2]=F[d>>2]+2;e=2;c=(((f|0)!=-1?F[F[g>>2]+(f<<2)>>2]:-1)<<2)+c|0}F[c>>2]=F[c>>2]+e;e=F[a+184>>2]}h:{switch(e|0){case 0:case 5:f=F[a+156>>2];c=-1;i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;c=-1;if((b|0)==-1){break i}c=F[F[F[a+148>>2]>>2]+(b<<2)>>2]}if(F[f+(c<<2)>>2]<=5){F[a+188>>2]=5;return}F[a+188>>2]=0;return;default:break h}}F[a+188>>2]=-1} +function dc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=fa-16|0;fa=e;h=1;i=ia[F[F[a>>2]+24>>2]](a)|0;a:{if((i|0)<=0){h=0;break a}l=a+48|0;while(1){b:{c:{if(!F[(ia[F[F[a>>2]+28>>2]](a)|0)+40>>2]){break c}j=f<<2;g=F[j+F[a+36>>2]>>2];b=F[g+8>>2];k=Ub(g);if(!k){break c}g=F[(ia[F[F[a>>2]+28>>2]](a)|0)+40>>2];F[e+12>>2]=F[b+56>>2];b=oj(32);F[e>>2]=b;F[e+4>>2]=24;F[e+8>>2]=-2147483616;D[b+24|0]=0;c=G[1318]|G[1319]<<8|(G[1320]<<16|G[1321]<<24);d=G[1314]|G[1315]<<8|(G[1316]<<16|G[1317]<<24);D[b+16|0]=d;D[b+17|0]=d>>>8;D[b+18|0]=d>>>16;D[b+19|0]=d>>>24;D[b+20|0]=c;D[b+21|0]=c>>>8;D[b+22|0]=c>>>16;D[b+23|0]=c>>>24;c=G[1310]|G[1311]<<8|(G[1312]<<16|G[1313]<<24);d=G[1306]|G[1307]<<8|(G[1308]<<16|G[1309]<<24);D[b+8|0]=d;D[b+9|0]=d>>>8;D[b+10|0]=d>>>16;D[b+11|0]=d>>>24;D[b+12|0]=c;D[b+13|0]=c>>>8;D[b+14|0]=c>>>16;D[b+15|0]=c>>>24;c=G[1302]|G[1303]<<8|(G[1304]<<16|G[1305]<<24);d=G[1298]|G[1299]<<8|(G[1300]<<16|G[1301]<<24);D[b|0]=d;D[b+1|0]=d>>>8;D[b+2|0]=d>>>16;D[b+3|0]=d>>>24;D[b+4|0]=c;D[b+5|0]=c>>>8;D[b+6|0]=c>>>16;D[b+7|0]=c>>>24;b=Kb(g,e+12|0,e);if(D[e+11|0]<0){mj(F[e>>2])}if(!b){break c}$a(F[F[F[a+36>>2]+j>>2]+8>>2],k);break b}b=F[F[a+36>>2]+(f<<2)>>2];if(!(ia[F[F[b>>2]+24>>2]](b,l)|0)){break a}}f=f+1|0;h=(i|0)>(f|0);if((f|0)!=(i|0)){continue}break}}fa=e+16|0;return(h^-1)&1}function Tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=fa-16|0;fa=j;c=F[b+20>>2];d=F[b+16>>2];g=d+4|0;c=g>>>0<4?c+1|0:c;e=F[b+12>>2];a:{if((e|0)<=(c|0)&g>>>0>I[b+8>>2]|(c|0)>(e|0)){break a}d=d+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;if((d|0)<0){break a}Fc(a+76|0,d);c=j;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;b:{if(!de(c,b)){break b}if(d){e=1;while(1){f=1<>2]+(h>>>3&536870908)|0;e=e^i;if(e&1){f=F[g>>2]&(f^-1)}else{f=f|F[g>>2]}e=e^1;F[g>>2]=f;h=h+1|0;if((d|0)!=(h|0)){continue}break}}h=0;d=F[b+12>>2];g=d;c=F[b+20>>2];e=c;f=F[b+16>>2];i=f+4|0;c=i>>>0<4?c+1|0:c;k=F[b+8>>2];if(k>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break b}l=F[b>>2];d=l+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>k>>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break b}c=i+l|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break b}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break b}h=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break b}F[a+24>>2]=c-1}}fa=j+16|0;return h|0}function Mh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=fa-16|0;fa=g;h=F[b+80>>2];i=G[c+24|0];e=i<<24>>24;b=L(h,e);a:{b:{a=F[c+28>>2];c:{if(!(!G[c+84|0]|(a|0)!=1&(a|0)!=2)){e=F[c+48>>2];c=F[F[c>>2]>>2];a=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<0){break b}f=oj(b);a=Oi(f,c+e|0,b)+b|0}b=F[d>>2];if(b){F[d+4>>2]=b;mj(b)}F[d+8>>2]=a;F[d+4>>2]=a;F[d>>2]=f;b=1;break c}a=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d:{e:{if(e){if((e|0)<0){break b}f=oj(e);F[g>>2]=f;Qi(f,0,e);Db(d,b);if(h){break e}b=1;break d}Db(d,b);b=1;if(!h){break c}while(1){if(rg(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],0)){a=a+1|0;b=h>>>0>a>>>0;if((a|0)!=(h|0)){continue}}break}b=b^1;break c}b=e-1|0;j=b&-2;k=b&1;b=1;e=0;f:{while(1){f=F[g>>2];if(!rg(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],f)){break f}D[F[d>>2]+a|0]=G[f|0];b=1;a=a+1|0;f=0;g:{h:{switch(i-1|0){default:while(1){D[F[d>>2]+a|0]=G[F[g>>2]+b|0];D[(F[d>>2]+a|0)+1|0]=G[(F[g>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break};break;case 0:break g;case 1:break h}}if(!k){break g}D[F[d>>2]+a|0]=G[F[g>>2]+b|0];a=a+1|0}e=e+1|0;b=h>>>0>e>>>0;if((e|0)!=(h|0)){continue}break}f=F[g>>2]}b=!b;if(!f){break c}}mj(f)}fa=g+16|0;a=b&1;break a}Ha();V()}return a|0}function Lh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=fa-16|0;fa=g;h=F[b+80>>2];i=G[c+24|0];e=i<<24>>24;b=L(h,e);a:{b:{a=F[c+28>>2];c:{if(!(!G[c+84|0]|(a|0)!=1&(a|0)!=2)){e=F[c+48>>2];c=F[F[c>>2]>>2];a=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;if(b){if((b|0)<0){break b}f=oj(b);a=Oi(f,c+e|0,b)+b|0}b=F[d>>2];if(b){F[d+4>>2]=b;mj(b)}F[d+8>>2]=a;F[d+4>>2]=a;F[d>>2]=f;b=1;break c}a=0;F[g+8>>2]=0;F[g>>2]=0;F[g+4>>2]=0;d:{e:{if(e){if((e|0)<0){break b}f=oj(e);F[g>>2]=f;Qi(f,0,e);Db(d,b);if(h){break e}b=1;break d}Db(d,b);b=1;if(!h){break c}while(1){if(qg(c,G[c+84|0]?a:F[F[c+68>>2]+(a<<2)>>2],D[c+24|0],0)){a=a+1|0;b=h>>>0>a>>>0;if((a|0)!=(h|0)){continue}}break}b=b^1;break c}b=e-1|0;j=b&-2;k=b&1;b=1;e=0;f:{while(1){f=F[g>>2];if(!qg(c,G[c+84|0]?e:F[F[c+68>>2]+(e<<2)>>2],D[c+24|0],f)){break f}D[F[d>>2]+a|0]=G[f|0];b=1;a=a+1|0;f=0;g:{h:{switch(i-1|0){default:while(1){D[F[d>>2]+a|0]=G[F[g>>2]+b|0];D[(F[d>>2]+a|0)+1|0]=G[(F[g>>2]+b|0)+1|0];b=b+2|0;a=a+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break};break;case 0:break g;case 1:break h}}if(!k){break g}D[F[d>>2]+a|0]=G[F[g>>2]+b|0];a=a+1|0}e=e+1|0;b=h>>>0>e>>>0;if((e|0)!=(h|0)){continue}break}f=F[g>>2]}b=!b;if(!f){break c}}mj(f)}fa=g+16|0;a=b&1;break a}Ha();V()}return a|0}function jf(a,b){var c=0,d=0,e=0,f=0,g=0;f=-1;d=-1;a:{if((b|0)==-1){break a}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}b:{c:{d:{switch(F[a+168>>2]){case 0:case 1:e=F[a+148>>2];c=1;b=F[a+156>>2];g=b+(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)|0;F[g>>2]=F[g>>2]+1;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+1;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+1;c=2;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 3:e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+1;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+2;c=1;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 7:break d;default:break b}}e=F[a+148>>2];c=-1;c=((b|0)!=-1?F[F[e>>2]+(b<<2)>>2]:c)<<2;b=F[a+156>>2];c=c+b|0;F[c>>2]=F[c>>2]+2;c=(((f|0)!=-1?F[F[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;F[c>>2]=F[c>>2]+2;c=2;b=(((d|0)!=-1?F[F[e>>2]+(d<<2)>>2]:-1)<<2)+b|0}F[b>>2]=F[b>>2]+c}c=a;d=F[a+180>>2];b=F[F[a+156>>2]+(((f|0)!=-1?F[F[F[a+148>>2]>>2]+(f<<2)>>2]:-1)<<2)>>2];a=F[a+176>>2];F[c+172>>2]=(a|0)>(b|0)?0:((b|0)>(d|0)?d:b)-a|0}function pi(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=F[a+8>>2];e=F[a>>2];if(d-e>>2>>>0>=b>>>0){g=F[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){F[d>>2]=F[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){d=a;a=b-h|0;if(a){a=(a<<2)+g|0;while(1){F[g>>2]=F[c>>2];g=g+4|0;if((a|0)!=(g|0)){continue}break}}else{a=g}F[d+4>>2]=a;return}F[a+4>>2]=e+(b<<2);return}if(e){F[a+4>>2]=e;mj(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=oj(d);F[a>>2]=e;F[a+8>>2]=d+e;c=F[c>>2];d=e;g=b&7;if(g){while(1){F[d>>2]=c;d=d+4|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){F[d+28>>2]=c;F[d+24>>2]=c;F[d+20>>2]=c;F[d+16>>2]=c;F[d+12>>2]=c;F[d+8>>2]=c;F[d+4>>2]=c;F[d>>2]=c;d=d+32|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=e;return}Ha();V()}function cg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=F[a+32>>2];e=F[c+8>>2];f=F[c+12>>2];d=F[c+20>>2];g=e;e=F[c+16>>2];b=0;b:{if((f|0)<=(d|0)&g>>>0<=e>>>0|(d|0)>(f|0)){break b}g=G[e+F[c>>2]|0];f=e+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;c:{if(!g){break c}while(1){if(ia[F[F[a>>2]+16>>2]](a,b)|0){b=b+1|0;if((g|0)!=(b|0)){continue}break c}break}return 0}b=F[a+8>>2];d=F[a+12>>2];if((b|0)!=(d|0)){while(1){c=F[b>>2];if(!(ia[F[F[c>>2]+8>>2]](c,a,F[a+4>>2])|0)){break a}b=b+4|0;if((d|0)!=(b|0)){continue}break}}d:{if(!g){break d}b=0;while(1){c=F[F[a+8>>2]+(b<<2)>>2];if(!(ia[F[F[c>>2]+12>>2]](c,F[a+32>>2])|0)){break a}b=b+1|0;if((g|0)!=(b|0)){continue}break}if(!g){break d}e=a+20|0;while(1){b=0;f=h<<2;c=F[f+F[a+8>>2]>>2];d=ia[F[F[c>>2]+24>>2]](c)|0;if((d|0)>0){while(1){c=F[F[a+8>>2]+f>>2];k=ia[F[F[c>>2]+20>>2]](c,b)|0;i=F[a+20>>2];j=F[a+24>>2]-i>>2;e:{if(k>>>0>>0){break e}c=k+1|0;if(c>>>0>j>>>0){Ja(e,c-j|0);i=F[e>>2];break e}if(c>>>0>=j>>>0){break e}F[a+24>>2]=(c<<2)+i}F[(k<<2)+i>>2]=h;b=b+1|0;if((d|0)!=(b|0)){continue}break}}h=h+1|0;if((g|0)!=(h|0)){continue}break}}b=0;if(!(ia[F[F[a>>2]+28>>2]](a)|0)){break b}b=ia[F[F[a>>2]+32>>2]](a)|0}return b|0}return 0}function ti(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;Ii(a,b,c);c=F[a+84>>2];d=F[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=F[a+92>>2];c=F[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=d&7;if(f){while(1){F[b>>2]=1;b=b+4|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}c=(d<<2)+c|0;if((d-1&1073741823)>>>0<7){break c}while(1){F[b+24>>2]=1;F[b+28>>2]=1;F[b+16>>2]=1;F[b+20>>2]=1;F[b+8>>2]=1;F[b+12>>2]=1;F[b>>2]=1;F[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}F[a+88>>2]=c;break b}d:{f=F[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;h=e>>1;e=e>>>0<2147483644?b>>>0>h>>>0?b:h:1073741823;if(e){if(e>>>0>=1073741824){break d}i=oj(e<<2)}c=(c<<2)+i|0;b=c;h=d&7;if(h){b=c;while(1){F[b>>2]=1;b=b+4|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}c=c+(d<<2)|0;if((d-1&1073741823)>>>0>=7){while(1){F[b+24>>2]=1;F[b+28>>2]=1;F[b+16>>2]=1;F[b+20>>2]=1;F[b+8>>2]=1;F[b+12>>2]=1;F[b>>2]=1;F[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){Oi(i,f,j)}F[a+92>>2]=(e<<2)+i;F[a+88>>2]=c;F[a+84>>2]=i;if(f){mj(f)}break b}Ha();V()}Ua(1336);V()}return}if(b>>>0>=d>>>0){break a}F[a+88>>2]=c+(b<<2)}}function de(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=fa-16|0;fa=i;e=F[b+20>>2];c=F[b+12>>2];f=F[b+16>>2];a:{if((e|0)>=(c|0)&f>>>0>=I[b+8>>2]|(c|0)<(e|0)){break a}D[a+12|0]=G[f+F[b>>2]|0];e=F[b+20>>2];c=e;f=F[b+16>>2];d=f+1|0;e=d?c:c+1|0;h=d;F[b+16>>2]=d;F[b+20>>2]=e;b:{if(H[b+38>>1]<=513){g=F[b+12>>2];e=c;c=f+5|0;e=c>>>0<5?e+1|0:e;d=F[b+8>>2];f=c;if(d>>>0>>0&(e|0)>=(g|0)|(e|0)>(g|0)){break a}c=h+F[b>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;break b}if(!ee(1,i+12|0,b)){break a}f=F[b+16>>2];e=F[b+20>>2];d=F[b+8>>2];g=F[b+12>>2];c=F[i+12>>2]}h=d-f|0;d=g-(e+(d>>>0>>0)|0)|0;if((d|0)<=0&c>>>0>h>>>0|(d|0)<0|(c|0)<=0){break a}d=f+F[b>>2]|0;F[a>>2]=d;k=a;g=c-1|0;h=g+d|0;j=G[h|0];c:{if(j>>>0<=63){F[a+4>>2]=g;a=G[h|0]&63;break c}d:{switch((j>>>6|0)-1|0){case 0:if(c>>>0<2){break a}F[a+4>>2]=c-2;d=(c+d|0)-2|0;a=G[d+1|0]<<8&16128|G[d|0];break c;case 1:break d;default:break a}}if(c>>>0<3){break a}F[a+4>>2]=c-3;d=(c+d|0)-3|0;a=G[d+2|0]<<16&4128768|G[d+1|0]<<8|G[d|0]}a=a+4096|0;F[k+8>>2]=a;if(a>>>0>1048575){break a}a=c+f|0;e=a>>>0>>0?e+1|0:e;F[b+16>>2]=a;F[b+20>>2]=e;l=1}fa=i+16|0;return l}function oe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=fa-16|0;fa=h;a:{b:{if(H[b+38>>1]<=511){g=F[b+12>>2];i=g;c=F[b+20>>2];d=F[b+16>>2];f=d+8|0;c=f>>>0<8?c+1|0:c;e=F[b+8>>2];if(e>>>0>>0&(c|0)>=(g|0)|(c|0)>(g|0)){break a}d=d+F[b>>2]|0;g=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=G[d+4|0]|G[d+5|0]<<8|(G[d+6|0]<<16|G[d+7|0]<<24);F[b+16>>2]=f;F[b+20>>2]=c;break b}if(!se(1,h+8|0,b)){break a}f=F[b+16>>2];c=F[b+20>>2];e=F[b+8>>2];i=F[b+12>>2];g=F[h+8>>2];d=F[h+12>>2]}j=e-f|0;e=i-(c+(f>>>0>e>>>0)|0)|0;if((e|0)==(d|0)&g>>>0>j>>>0|d>>>0>e>>>0){break a}c=c+d|0;e=f+g|0;c=e>>>0>>0?c+1|0:c;F[b+16>>2]=e;F[b+20>>2]=c;c=g;if((c|0)<=0){break a}b=f+F[b>>2]|0;F[a+40>>2]=b;i=a;f=c-1|0;g=b+f|0;e=G[g|0];c:{if(e>>>0<=63){F[a+44>>2]=f;a=G[g|0]&63;break c}d:{switch((e>>>6|0)-1|0){case 0:if(c>>>0<2){break a}F[a+44>>2]=c-2;b=(b+c|0)-2|0;a=G[b+1|0]<<8&16128|G[b|0];break c;case 1:if(c>>>0<3){break a}F[a+44>>2]=c-3;b=(b+c|0)-3|0;a=G[b+2|0]<<16&4128768|G[b+1|0]<<8|G[b|0];break c;default:break d}}F[a+44>>2]=c-4;b=(b+c|0)-4|0;a=G[b+2|0]<<16|G[b+3|0]<<24&1056964608|G[b+1|0]<<8|G[b|0]}a=a+16384|0;F[i+48>>2]=a;k=a>>>0<4194304}fa=h+16|0;return k}function Oi(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){_(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){D[c|0]=G[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){F[c>>2]=F[b>>2];F[c+4>>2]=F[b+4>>2];F[c+8>>2]=F[b+8>>2];F[c+12>>2]=F[b+12>>2];F[c+16>>2]=F[b+16>>2];F[c+20>>2]=F[b+20>>2];F[c+24>>2]=F[b+24>>2];F[c+28>>2]=F[b+28>>2];F[c+32>>2]=F[b+32>>2];F[c+36>>2]=F[b+36>>2];F[c+40>>2]=F[b+40>>2];F[c+44>>2]=F[b+44>>2];F[c+48>>2]=F[b+48>>2];F[c+52>>2]=F[b+52>>2];F[c+56>>2]=F[b+56>>2];F[c+60>>2]=F[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){F[c>>2]=F[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){D[c|0]=G[b|0];D[c+1|0]=G[b+1|0];D[c+2|0]=G[b+2|0];D[c+3|0]=G[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){D[c|0]=G[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function eb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=F[a+8>>2];e=F[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=b&7;if(g){while(1){F[d>>2]=F[c>>2];d=d+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}e=(b<<2)+e|0;if((b-1&1073741823)>>>0<7){break a}while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}F[a+4>>2]=e;return}b:{g=F[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;i=f>>1;f=f>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(f){if(f>>>0>=1073741824){break b}j=oj(f<<2)}e=(e<<2)+j|0;d=e;i=b&7;if(i){d=e;while(1){F[d>>2]=F[c>>2];d=d+4|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){F[d>>2]=F[c>>2];F[d+4>>2]=F[c>>2];F[d+8>>2]=F[c>>2];F[d+12>>2]=F[c>>2];F[d+16>>2]=F[c>>2];F[d+20>>2]=F[c>>2];F[d+24>>2]=F[c>>2];F[d+28>>2]=F[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}if((k|0)>0){Oi(j,g,k)}F[a+8>>2]=(f<<2)+j;F[a+4>>2]=e;F[a>>2]=j;if(g){mj(g)}return}Ha();V()}Ua(1336);V()}function pf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;F[a>>2]=11512;d=a+232|0;b=F[d+196>>2];if(b){F[d+200>>2]=b;mj(b)}c=F[d+184>>2];if(c){b=F[d+188>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;f=F[e>>2];if(f){F[b-8>>2]=f;mj(f)}b=e;if((c|0)!=(b|0)){continue}break}b=F[d+184>>2]}F[d+188>>2]=c;mj(b)}b=F[d+156>>2];if(b){F[d+160>>2]=b;mj(b)}c=F[d+136>>2];F[d+136>>2]=0;if(c){e=c-4|0;b=F[e>>2];if(b){b=c+(b<<4)|0;while(1){b=b-16|0;if((c|0)!=(b|0)){continue}break}}mj(e)}lf(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;mj(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;mj(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;mj(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;mj(b)}b=F[a+144>>2];if(b){while(1){c=F[b>>2];mj(b);b=c;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){mj(b)}b=F[a+120>>2];if(b){mj(b)}b=F[a+108>>2];if(b){mj(b)}b=F[a+96>>2];if(b){mj(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;mj(b)}b=F[a+60>>2];if(b){mj(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;mj(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;mj(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;mj(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){Pe(b)}return a|0}function wb(a,b){var c=0,d=0,e=0,f=0,g=0;d=fa-16|0;fa=d;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;c=a+16|0;F[c>>2]=0;F[c+4>>2]=0;D[c+5|0]=0;D[c+6|0]=0;D[c+7|0]=0;D[c+8|0]=0;D[c+9|0]=0;D[c+10|0]=0;D[c+11|0]=0;D[c+12|0]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+48>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+68>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+88>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+100>>2]=0;F[a+92>>2]=0;F[a+96>>2]=0;g=a+116|0;a:{b:{if(b){if(b>>>0<1073741824){break b}Ha();V()}F[a+104>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;c=1;break a}c=b<<2;e=oj(c);F[a+92>>2]=e;f=c+e|0;F[a+100>>2]=f;Qi(e,0,c);F[a+112>>2]=0;F[a+104>>2]=0;F[a+108>>2]=0;F[a+96>>2]=f;e=oj(c);F[a+104>>2]=e;f=c+e|0;F[a+112>>2]=f;Qi(e,0,c);F[a+108>>2]=f;e=oj(c);F[d>>2]=e;f=c+e|0;F[d+8>>2]=f;Qi(e,0,c);F[d+4>>2]=f;c=b<<5|1}Eb(g,c,d);e=F[d>>2];if(e){F[d+4>>2]=e;mj(e)}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if(b){b=b<<2;e=oj(b);F[d>>2]=e;f=b+e|0;F[d+8>>2]=f;Qi(e,0,b);F[d+4>>2]=f}Eb(a+128|0,c,d);b=F[d>>2];if(b){F[d+4>>2]=b;mj(b)}fa=d+16|0;return a}function Tj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=O(d)-O(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;ha=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>Wj(d)|0;ha=0;break a}if(!(g-1&g)){break f}h=(O(g)+33|0)-O(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;ha=0;break a}c=O(d)-O(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=Wj(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<>>d}ha=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;i=b>>>f|0}else{c=b>>>f|0;i=((1<>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<>>32-e|b<>>31;f=f<<1|i>>>31;j=m-(f+(c>>>0>e>>>0)|0)>>31;k=g&j;i=c-k|0;f=f-((d&j)+(c>>>0>>0)|0)|0;b=b<<1|a>>>31;a=l|a<<1;l=j&1;h=h-1|0;if(h){continue}break}}ha=b<<1|a>>>31;a=l|a<<1;break a}a=0;b=0}ha=b}return a}function sb(a,b){var c=0,d=0,e=0,f=0,g=0;c=fa-16|0;fa=c;F[a+12>>2]=b;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a+52>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[a+72>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+92>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+104>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;g=a+120|0;a:{b:{if(b){if(b>>>0<1073741824){break b}Ha();V()}F[a+108>>2]=0;F[a+112>>2]=0;F[a+116>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;e=1;break a}e=b<<2;d=oj(e);F[a+96>>2]=d;f=d+e|0;F[a+104>>2]=f;Qi(d,0,e);F[a+116>>2]=0;F[a+108>>2]=0;F[a+112>>2]=0;F[a+100>>2]=f;d=oj(e);F[a+108>>2]=d;f=d+e|0;F[a+116>>2]=f;Qi(d,0,e);F[a+112>>2]=f;d=oj(e);F[c>>2]=d;f=d+e|0;F[c+8>>2]=f;Qi(d,0,e);F[c+4>>2]=f;e=b<<5|1}Eb(g,e,c);d=F[c>>2];if(d){F[c+4>>2]=d;mj(d)}F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;if(b){b=b<<2;d=oj(b);F[c>>2]=d;f=b+d|0;F[c+8>>2]=f;Qi(d,0,b);F[c+4>>2]=f}Eb(a+132|0,e,c);b=F[c>>2];if(b){F[c+4>>2]=b;mj(b)}fa=c+16|0;return a}function je(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);D[b+12|0]=c;a:{if(c){break a}while(1){d=F[b+8>>2];if(G[d+12|0]){break a}b:{c=F[d+8>>2];e=F[c>>2];c:{if((d|0)==(e|0)){e=F[c+4>>2];if(!(!e|G[e+12|0])){break b}d:{if(F[d>>2]==(b|0)){b=d;break d}b=F[d+4>>2];a=F[b>>2];F[d+4>>2]=a;if(a){F[a+8>>2]=d;c=F[d+8>>2]}F[b+8>>2]=c;a=F[d+8>>2];F[(((d|0)!=F[a>>2])<<2)+a>>2]=b;F[b>>2]=d;F[d+8>>2]=b;c=F[b+8>>2]}D[b+12|0]=1;D[c+12|0]=0;a=F[c>>2];b=F[a+4>>2];F[c>>2]=b;if(b){F[b+8>>2]=c}F[a+8>>2]=F[c+8>>2];b=F[c+8>>2];F[((F[b>>2]!=(c|0))<<2)+b>>2]=a;F[a+4>>2]=c;b=c+8|0;break c}if(!(G[e+12|0]|!e)){break b}e:{if(F[d>>2]!=(b|0)){b=d;break e}a=F[b+4>>2];F[d>>2]=a;if(a){F[a+8>>2]=d;c=F[d+8>>2]}F[b+8>>2]=c;a=F[d+8>>2];F[(((d|0)!=F[a>>2])<<2)+a>>2]=b;F[b+4>>2]=d;F[d+8>>2]=b;c=F[b+8>>2]}D[b+12|0]=1;D[c+12|0]=0;a=F[c+4>>2];b=F[a>>2];F[c+4>>2]=b;if(b){F[b+8>>2]=c}F[a+8>>2]=F[c+8>>2];b=F[c+8>>2];F[((F[b>>2]!=(c|0))<<2)+b>>2]=a;F[a>>2]=c;b=c+8|0}F[b>>2]=a;break a}D[d+12|0]=1;d=(a|0)==(c|0);D[c+12|0]=d;D[e+12|0]=1;b=c;if(!d){continue}break}}}function Fd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=F[b+16>>2];i=F[c+4>>2]-k|0;e=i;f=F[c>>2]-k|0;F[c>>2]=f;F[c+4>>2]=e;g=F[b+16>>2];e=e>>31;h=e+i^e;e=f>>31;l=(g|0)>=(h+(e+f^e)|0);a:{if(l){e=i;break a}b:{c:{if((f|0)>=0){e=1;h=1;if((i|0)>=0){break b}j=1;e=-1;h=-1;if(f){break c}break b}j=-1;e=-1;h=-1;if((i|0)<=0){break b}}e=(i|0)<=0?-1:1;h=j}j=L(g,h);f=(f<<1)-j|0;h=(L(e,h)|0)>=0;g=L(e,g);e=((h?0-f|0:f)+g|0)/2|0;F[c+4>>2]=e;m=c;c=(i<<1)-g|0;f=(j+(h?0-c|0:c)|0)/2|0;F[m>>2]=f;g=F[b+16>>2]}c=F[d+4>>2]+e|0;f=F[d>>2]+f|0;d:{if((g|0)<(f|0)){f=f-F[b+4>>2]|0;break d}if((0-g|0)<=(f|0)){break d}f=F[b+4>>2]+f|0}e:{if((c|0)>(g|0)){c=c-F[b+4>>2]|0;break e}if((0-g|0)<=(c|0)){break e}c=F[b+4>>2]+c|0}f:{if(l){g=c;break f}g:{h:{if((f|0)>=0){b=1;e=1;if((c|0)>=0){break g}d=1;b=-1;e=-1;if(f){break h}break g}d=-1;b=-1;e=-1;if((c|0)<=0){break g}}b=(c|0)<=0?-1:1;e=d}i=L(e,g);d=(f<<1)-i|0;F[a>>2]=d;j=0-d|0;h=d;d=(L(b,e)|0)>=0;b=L(b,g);g=((d?j:h)+b|0)/2|0;b=(c<<1)-b|0;f=(i+(d?0-b|0:b)|0)/2|0}F[a>>2]=f+k;F[a+4>>2]=g+k}function Nb(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=fa-32|0;fa=b;c=F[a+16>>2];a:{if(c>>>0>=341){F[a+16>>2]=c-341;c=F[a+4>>2];F[b+8>>2]=F[c>>2];F[a+4>>2]=c+4;Ob(a,b+8|0);break a}b:{c:{d:{e:{e=F[a+8>>2];f=e-F[a+4>>2]>>2;d=F[a+12>>2];c=d-F[a>>2]|0;if(f>>>0>2>>>0){if((d|0)==(e|0)){break e}g=b,h=oj(4092),F[g+8>>2]=h;Ob(a,b+8|0);break a}F[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=oj(d);F[b+8>>2]=c;e=c+(f<<2)|0;F[b+16>>2]=e;F[b+20>>2]=c+d;F[b+12>>2]=e;g=b,h=oj(4092),F[g+4>>2]=h;Ob(b+8|0,b+4|0);d=F[a+8>>2];if((d|0)==F[a+4>>2]){c=d;break b}while(1){d=d-4|0;Pb(b+8|0,d);if(F[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=oj(4092),F[g+8>>2]=h;c=b+8|0;Pb(a,c);d=F[a+4>>2];F[b+8>>2]=F[d>>2];F[a+4>>2]=d+4;Ob(a,c);break a}Ua(1336);V()}c=F[a+8>>2]}e=F[a>>2];F[a>>2]=F[b+8>>2];F[b+8>>2]=e;F[a+4>>2]=F[b+12>>2];F[b+12>>2]=d;F[a+8>>2]=F[b+16>>2];F[b+16>>2]=c;f=F[a+12>>2];F[a+12>>2]=F[b+20>>2];F[b+20>>2]=f;if((c|0)!=(d|0)){F[b+16>>2]=c+(((c-d|0)-4>>>2^-1)<<2)}if(!e){break a}mj(e)}fa=b+32|0}function Ma(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=M(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=fa-16|0;fa=k;if(F[c+28>>2]==9){d=F[a+4>>2];g=D[c+24|0];e=g<<2;f=oj((g&1073741823)!=(g|0)?-1:e);l=k+8|0;F[l>>2]=1065353216;i=J[a+20>>2];d=-1<0){J[l>>2]=i/M(d|0)}o=(d|0)>0;a:{if(!o){break a}j=F[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){Oi(F[F[c+64>>2]>>2]+d|0,f,e);d=d+e|0;Oi(d+F[F[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}Oi(F[F[c+64>>2]>>2]+d|0,f,e);break a}p=F[F[b>>2]>>2]+F[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=F[a+8>>2];i=J[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;J[h+f>>2]=M(i*M(F[q>>2]))+J[h+m>>2];h=h|4;J[h+f>>2]=M(i*M(F[q+4>>2]))+J[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;J[b+f>>2]=M(i*M(F[(d<<2)+p>>2]))+J[b+m>>2];d=d+1|0}Oi(F[F[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}mj(f)}fa=k+16|0;return o|0}function _b(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(cb(a,b)){i=a+36|0;g=ia[F[F[a>>2]+24>>2]](a)|0;d=F[a+40>>2];e=F[a+36>>2];c=d-e>>2;a:{if(g>>>0>c>>>0){$b(i,g-c|0);break a}if(c>>>0<=g>>>0){break a}e=e+(g<<2)|0;if((e|0)!=(d|0)){while(1){d=d-4|0;c=F[d>>2];F[d>>2]=0;if(c){ia[F[F[c>>2]+4>>2]](c)}if((d|0)!=(e|0)){continue}break}}F[a+40>>2]=e}b:{if((g|0)<=0){e=0;break b}e=1;c=F[b+20>>2];d=F[b+12>>2];f=F[b+16>>2];if((c|0)>=(d|0)&f>>>0>=I[b+8>>2]|(c|0)>(d|0)){break b}d=0;while(1){h=G[f+F[b>>2]|0];f=f+1|0;c=f?c:c+1|0;F[b+16>>2]=f;F[b+20>>2]=c;f=ia[F[F[a>>2]+48>>2]](a,h)|0;h=d<<2;j=h+F[a+36>>2]|0;c=F[j>>2];F[j>>2]=f;if(c){ia[F[F[c>>2]+4>>2]](c)}c=F[F[i>>2]+h>>2];if(!c){break b}if(!(l=c,m=ia[F[F[a>>2]+28>>2]](a)|0,n=ia[F[F[a>>2]+20>>2]](a,d)|0,k=F[F[c>>2]+8>>2],ia[k](l|0,m|0,n|0)|0)){break b}d=d+1|0;e=(g|0)>(d|0);if((d|0)==(g|0)){break b}f=F[b+16>>2];c=F[b+20>>2];h=F[b+12>>2];if(f>>>0>2]&(c|0)<=(h|0)|(c|0)<(h|0)){continue}break}}a=!e}else{a=0}return a|0}function Ia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=F[b+88>>2];if(!(!c|F[c>>2]!=1)){d=F[c+8>>2];F[a+4>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=D[b+24|0];e=F[a+8>>2];f=F[a+12>>2]-e>>2;a:{if(d>>>0>f>>>0){Ja(a+8|0,d-f|0);d=D[b+24|0];e=F[a+8>>2];break a}if(d>>>0>=f>>>0){break a}F[a+12>>2]=(d<<2)+e}k=1;f=F[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){g=d<<2;c=b+f|0;F[g+e>>2]=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[(g|4)+e>>2]=G[c+4|0]|G[c+5|0]<<8|(G[c+6|0]<<16|G[c+7|0]<<24);F[(g|8)+e>>2]=G[c+8|0]|G[c+9|0]<<8|(G[c+10|0]<<16|G[c+11|0]<<24);F[(g|12)+e>>2]=G[c+12|0]|G[c+13|0]<<8|(G[c+14|0]<<16|G[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+f|0;F[(d<<2)+e>>2]=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+f|0;F[c+20>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)}return k|0}function Bf(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;i=F[(F[F[a+8>>2]+96>>2]+L(d,12)|0)+(c-L(d,3)<<2)>>2];e=F[F[a+12>>2]+4>>2];d=F[e+4>>2];a:{if((d|0)!=F[e+8>>2]){F[d>>2]=i;F[e+4>>2]=d+4;break a}b:{h=F[e>>2];g=d-h|0;j=g>>2;d=j+1|0;if(d>>>0<1073741824){f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break b}d=oj(f<<2)}else{d=0}j=d+(j<<2)|0;F[j>>2]=i;if((g|0)>0){Oi(d,h,g)}F[e+8>>2]=d+(f<<2);F[e+4>>2]=j+4;F[e>>2]=d;if(h){mj(h)}break a}Ha();V()}Ua(1336);V()}e=F[a+4>>2];d=F[e+4>>2];c:{d:{e:{if((d|0)!=F[e+8>>2]){F[d>>2]=c;F[e+4>>2]=d+4;break e}h=F[e>>2];g=d-h|0;i=g>>2;d=i+1|0;if(d>>>0>=1073741824){break d}f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break c}d=oj(f<<2)}else{d=0}i=d+(i<<2)|0;F[i>>2]=c;if((g|0)>0){Oi(d,h,g)}F[e+8>>2]=d+(f<<2);F[e+4>>2]=i+4;F[e>>2]=d;if(!h){break e}mj(h)}a=F[a+4>>2];F[F[a+12>>2]+(b<<2)>>2]=F[a+24>>2];F[a+24>>2]=F[a+24>>2]+1;return}Ha();V()}Ua(1336);V()}function wa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=F[d+80>>2];e=fa-48|0;fa=e;a=F[a+4>>2];a:{if(a-31>>>0<4294967267){break a}i=F[F[d>>2]>>2]+F[d+48>>2]|0;F[e+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;F[e+24>>2]=a;F[e+32>>2]=(a|0)/2;J[e+28>>2]=M(2)/M(a|0);g=F[c>>2];if((g|0)!=F[c+4>>2]){a=0;d=0;while(1){f=F[(d<<2)+g>>2];h=e+36|0;j=F[F[b>>2]>>2];l=F[b+48>>2];g=F[b+44>>2];k=F[b+40>>2];if(!G[b+84|0]){f=F[F[b+68>>2]+(f<<2)>>2]}f=Rj(k,g,f,0)+l|0;Oi(h,f+j|0,k);xa(e+16|0,h,e+12|0,e+8|0);g=a<<2;F[g+i>>2]=F[e+12>>2];F[(g|4)+i>>2]=F[e+8>>2];f=1;a=a+2|0;d=d+1|0;g=F[c>>2];if(d>>>0>2]-g>>2>>>0){continue}break}break a}if(!h){f=1;break a}d=0;a=0;while(1){j=e+36|0;c=F[F[b>>2]>>2];f=F[b+40>>2];g=F[b+48>>2]+Rj(f,F[b+44>>2],G[b+84|0]?a:F[F[b+68>>2]+(a<<2)>>2],0)|0;Oi(j,c+g|0,f);xa(e+16|0,j,e+12|0,e+8|0);c=d<<2;F[c+i>>2]=F[e+12>>2];F[(c|4)+i>>2]=F[e+8>>2];d=d+2|0;f=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}fa=e+48|0;return f|0}function uj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=G[a+11|0]>>>7|0?F[a+4>>2]:G[a+11|0];if(d>>>0>>0){h=fa-16|0;fa=h;f=b-d|0;if(f){b=G[a+11|0]>>>7|0;g=b?F[a+4>>2]:G[a+11|0];i=g+f|0;b=b?(F[a+8>>2]&2147483647)-1|0:10;if(b-g>>>0>>0){a:{d=fa-16|0;fa=d;c=i-b|0;if(c>>>0<=-17-b>>>0){j=G[a+11|0]>>>7|0?F[a>>2]:a;b:{if(b>>>0<2147483623){F[d+8>>2]=b<<1;F[d+12>>2]=b+c;c=fa-16|0;fa=c;fa=c+16|0;c=d+8|0;e=d+12|0;c=F[(I[e>>2]>2]?c:e)>>2];if(c>>>0>=11){e=c+16&-16;c=e-1|0;c=(c|0)==11?e:c}else{c=10}break b}c=-18}e=c+1|0;c=oj(e);if(g){nj(c,j,g)}if((b|0)!=10){mj(j)}F[a>>2]=c;F[a+8>>2]=e|-2147483648;fa=d+16|0;break a}$f();V()}}b=G[a+11|0]>>>7|0?F[a>>2]:a;d=g+b|0;if(f){Qi(d,0,f)}c:{if(G[a+11|0]>>>7|0){F[a+4>>2]=i;break c}D[a+11|0]=i}D[h+15|0]=0;D[b+i|0]=G[h+15|0]}fa=h+16|0;return}d=fa-16|0;fa=d;d:{if(G[a+11|0]>>>7|0){f=F[a>>2];D[d+15|0]=0;D[b+f|0]=G[d+15|0];F[a+4>>2]=b;break d}D[d+14|0]=0;D[a+b|0]=G[d+14|0];D[a+11|0]=b}fa=d+16|0}function $c(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=F[b+12>>2];c=f;d=F[b+20>>2];g=d;i=F[b+16>>2];e=i+4|0;d=e>>>0<4?d+1|0:d;j=F[b+8>>2];a:{if(j>>>0>>0&(c|0)<=(d|0)|(c|0)<(d|0)){break a}k=F[b>>2];c=i+k|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;d=g;h=i+8|0;d=h>>>0<8?d+1|0:d;if(h>>>0>j>>>0&(d|0)>=(f|0)|(d|0)>(f|0)){break a}e=e+k|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=h;F[b+20>>2]=d;if((c|0)>(e|0)){break a}F[a+16>>2]=e;F[a+12>>2]=c;m=(e>>31)-((c>>31)+(c>>>0>e>>>0)|0)|0;c=e-c|0;if(!m&c>>>0>2147483646|m){break a}c=c+1|0;F[a+20>>2]=c;e=c>>>1|0;F[a+24>>2]=e;F[a+28>>2]=0-e;if(!(c&1)){F[a+24>>2]=e-1}if(H[b+38>>1]<=513){if((d|0)>=(f|0)&h>>>0>=j>>>0|(d|0)>(f|0)){break a}c=G[h+k|0];d=g;g=i+9|0;d=g>>>0<9?d+1|0:d;F[b+16>>2]=g;F[b+20>>2]=d;b:{switch(c|0){case 1:l=1;break;case 0:break b;default:break a}}F[a+88>>2]=l}l=de(a+112|0,b)}return l|0}function Fc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=fa-16|0;fa=d;a:{e=F[a+4>>2];b:{if(e>>>0>>0){f=b-e|0;h=F[a+8>>2];c=h<<5;c:{if(!(f>>>0>c>>>0|e>>>0>c-f>>>0)){F[a+4>>2]=b;g=e&31;b=F[a>>2]+(e>>>3&536870908)|0;break c}F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;if((b|0)<0){break a}if(c>>>0<=1073741822){c=b+31&-32;b=h<<6;b=b>>>0>>0?c:b}else{b=2147483647}Hc(d,b);e=F[a+4>>2];F[d+4>>2]=e+f;i=F[a>>2];b=F[d>>2];d:{if((e|0)<=0){break d}c=e>>>5|0;h=c<<2;b=Pi(b,i,h)+h|0;g=e-(c<<5)|0;e:{if((g|0)<=0){g=0;break e}c=-1>>>32-g|0;F[b>>2]=F[b>>2]&(c^-1)|c&F[i+h>>2]}i=F[a>>2]}F[a>>2]=F[d>>2];F[d>>2]=i;c=F[a+4>>2];F[a+4>>2]=F[d+4>>2];F[d+4>>2]=c;c=F[a+8>>2];F[a+8>>2]=F[d+8>>2];F[d+8>>2]=c;if(!i){break c}mj(i)}if(!f){break b}if(g){c=32-g|0;a=c>>>0>f>>>0?f:c;F[b>>2]=F[b>>2]&(-1<>>c-a^-1);f=f-a|0;b=b+4|0}c=f>>>5<<2;a=Qi(b,0,c);b=f&31;if(!b){break b}a=a+c|0;F[a>>2]=F[a>>2]&(-1>>>32-b^-1);break b}F[a+4>>2]=b}fa=d+16|0;return}vj();V()}function zf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=fa-16|0;fa=g;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+28>>2]-F[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=oj(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){Oi(c,d,e)}F[b+8>>2]=h;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}mj(d)}b=F[a+12>>2];d=F[b+28>>2];b=F[b+24>>2];F[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=F[c>>2];d=F[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){eb(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}F[a+100>>2]=e+(b<<2)}e=a+8|0;b=F[a+116>>2];d:{if(b){c=F[b>>2];if((c|0)==F[b+4>>2]){d=1;break d}b=0;while(1){d=Af(e,F[(b<<2)+c>>2]);if(!d){break d}f=F[a+116>>2];c=F[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=F[a+12>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break d}a=(a>>2>>>0)/3|0;b=0;while(1){d=Af(e,L(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}fa=g+16|0;return d|0}Ua(1336);V()}function yf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=F[a+12>>2];c=F[a+108>>2];e=F[c+80>>2];D[b+84|0]=0;f=F[b+68>>2];d=F[b+72>>2]-f>>2;a:{if(d>>>0>>0){eb(b+68|0,e-d|0,12404);c=F[a+108>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=f+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break b}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break b}j=F[F[a+112>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break b}i=F[f+4>>2];if(i>>>0>=e>>>0){break b}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break b}f=F[f+8>>2];if(f>>>0>=e>>>0){break b}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}F[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function If(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=F[a+12>>2];c=F[a+68>>2];e=F[c+80>>2];D[b+84|0]=0;f=F[b+68>>2];d=F[b+72>>2]-f>>2;a:{if(d>>>0>>0){eb(b+68|0,e-d|0,12404);c=F[a+68>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=f+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=F[l>>2]+(L(c,3)<<2)|0;h=F[d>>2];if((h|0)==-1){break b}f=L(c,12)+k|0;g=F[f>>2];if(g>>>0>=e>>>0){break b}j=F[F[a+72>>2]+12>>2];i=F[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=F[b+68>>2];F[h+(g<<2)>>2]=i;g=F[d+4>>2];if((g|0)==-1){break b}i=F[f+4>>2];if(i>>>0>=e>>>0){break b}g=F[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}F[h+(i<<2)>>2]=g;d=F[d+8>>2];if((d|0)==-1){break b}f=F[f+8>>2];if(f>>>0>=e>>>0){break b}d=F[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}F[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Pa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=F[a+12>>2];h=F[a+8>>2];d=f-h>>2;b=D[b+24|0];a:{if(d>>>0>>0){Ja(a+8|0,b-d|0);h=F[a+8>>2];f=F[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;F[a+12>>2]=f}b=0;i=F[c+20>>2];e=F[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=F[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>I[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}Oi(h,e+F[c>>2]|0,d);d=F[c+20>>2];e=f+F[c+16>>2]|0;d=e>>>0>>0?d+1|0:d;g=e;F[c+16>>2]=e;F[c+20>>2]=d;e=F[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>I[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+F[c>>2]|0;F[a+20>>2]=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);d=F[c+20>>2];g=F[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;F[c+16>>2]=e;F[c+20>>2]=f;e=F[c+12>>2];if((f|0)>=(e|0)&j>>>0>=I[c+8>>2]|(f|0)>(e|0)){break b}e=G[j+F[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;F[c+16>>2]=f;F[c+20>>2]=d;if(e-1>>>0>29){break b}F[a+4>>2]=e;b=1}return b|0}function Ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{e=F[a+8>>2];b:{if((e|0)!=F[a+12>>2]){break b}d=F[a+4>>2];g=F[a>>2];if(d>>>0>g>>>0){g=((d-g>>2)+1|0)/-2<<2;c=g+d|0;f=e-d|0;if(f){Pi(c,d,f);d=F[a+4>>2]}e=c+f|0;F[a+8>>2]=e;F[a+4>>2]=d+g;break b}c=e-g|0;f=c?c>>1:1;if(f>>>0>=1073741824){break a}c=f<<2;h=oj(c);k=h+c|0;c=e-d|0;f=(f&-4)+h|0;e=f;c:{if(!c){break c}l=c&-4;i=c-4|0;j=(i>>>2|0)+1&7;d:{if(!j){c=f;break d}e=0;c=f;while(1){F[c>>2]=F[d>>2];d=d+4|0;c=c+4|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}e=f+l|0;if(i>>>0<28){break c}while(1){F[c>>2]=F[d>>2];F[c+4>>2]=F[d+4>>2];F[c+8>>2]=F[d+8>>2];F[c+12>>2]=F[d+12>>2];F[c+16>>2]=F[d+16>>2];F[c+20>>2]=F[d+20>>2];F[c+24>>2]=F[d+24>>2];F[c+28>>2]=F[d+28>>2];d=d+32|0;c=c+32|0;if((e|0)!=(c|0)){continue}break}}F[a+12>>2]=k;F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=h;if(!g){break b}mj(g);e=F[a+8>>2]}F[e>>2]=F[b>>2];F[a+8>>2]=F[a+8>>2]+4;return}Ua(1336);V()}function Fb(a,b){var c=0;a:{if(!de(a,b)){break a}if(!de(a+16|0,b)){break a}if(!de(a+32|0,b)){break a}if(!de(a+48|0,b)){break a}if(!de(a- -64|0,b)){break a}if(!de(a+80|0,b)){break a}if(!de(a+96|0,b)){break a}if(!de(a+112|0,b)){break a}if(!de(a+128|0,b)){break a}if(!de(a+144|0,b)){break a}if(!de(a+160|0,b)){break a}if(!de(a+176|0,b)){break a}if(!de(a+192|0,b)){break a}if(!de(a+208|0,b)){break a}if(!de(a+224|0,b)){break a}if(!de(a+240|0,b)){break a}if(!de(a+256|0,b)){break a}if(!de(a+272|0,b)){break a}if(!de(a+288|0,b)){break a}if(!de(a+304|0,b)){break a}if(!de(a+320|0,b)){break a}if(!de(a+336|0,b)){break a}if(!de(a+352|0,b)){break a}if(!de(a+368|0,b)){break a}if(!de(a+384|0,b)){break a}if(!de(a+400|0,b)){break a}if(!de(a+416|0,b)){break a}if(!de(a+432|0,b)){break a}if(!de(a+448|0,b)){break a}if(!de(a+464|0,b)){break a}if(!de(a+480|0,b)){break a}if(!de(a+496|0,b)){break a}c=de(a+512|0,b)}return c}function wi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=fa-16|0;fa=g;a:{b:{if(b){F[a+88>>2]=0;F[a+92>>2]=0;c=F[a+84>>2];F[a+84>>2]=0;if(c){mj(c)}F[a+76>>2]=0;F[a+80>>2]=0;c=F[a+72>>2];F[a+72>>2]=0;if(c){mj(c)}c=F[b>>2];d=F[b+4>>2];D[g+15|0]=0;Le(a,d-c>>2,g+15|0);c=F[b+28>>2];d=F[b+24>>2];D[g+14|0]=0;Le(a+12|0,c-d>>2,g+14|0);pi(a+28|0,F[b+4>>2]-F[b>>2]>>2,13740);d=F[b+28>>2]-F[b+24>>2]|0;e=d>>2;c=F[a+52>>2];c:{if(e>>>0<=F[a+60>>2]-c>>2>>>0){break c}if((d|0)<0){break b}f=F[a+56>>2];d=oj(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){Oi(d,c,e)}F[a+60>>2]=h;F[a+56>>2]=f;F[a+52>>2]=d;if(!c){break c}mj(c)}d=F[b+28>>2]-F[b+24>>2]|0;e=d>>2;c=F[a+40>>2];d:{if(e>>>0<=F[a+48>>2]-c>>2>>>0){break d}if((d|0)<0){break a}f=F[a+44>>2];d=oj(d);h=d+(e<<2)|0;e=f-c|0;f=e+d|0;if((e|0)>0){Oi(d,c,e)}F[a+48>>2]=h;F[a+44>>2]=f;F[a+40>>2]=d;if(!c){break d}mj(c)}D[a+24|0]=1;F[a+64>>2]=b}fa=g+16|0;return}Ua(1336);V()}Ua(1336);V()}function Pb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{g=F[a+4>>2];b:{if((g|0)!=F[a>>2]){c=g;break b}d=F[a+8>>2];c=F[a+12>>2];if(d>>>0>>0){f=((c-d>>2)+1|0)/2<<2;c=f+d|0;e=d-g|0;if(e){c=c-e|0;Pi(c,g,e);d=F[a+8>>2]}F[a+4>>2]=c;F[a+8>>2]=d+f;break b}c=c-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}e=c<<2;h=oj(e);l=h+e|0;c=(c+3&-4)+h|0;f=c;i=d-g|0;c:{if(!i){break c}d=c;e=g;j=i-4|0;k=(j>>>2|0)+1&7;if(k){f=0;while(1){F[d>>2]=F[e>>2];e=e+4|0;d=d+4|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}f=(i&-4)+c|0;if(j>>>0<28){break c}while(1){F[d>>2]=F[e>>2];F[d+4>>2]=F[e+4>>2];F[d+8>>2]=F[e+8>>2];F[d+12>>2]=F[e+12>>2];F[d+16>>2]=F[e+16>>2];F[d+20>>2]=F[e+20>>2];F[d+24>>2]=F[e+24>>2];F[d+28>>2]=F[e+28>>2];e=e+32|0;d=d+32|0;if((f|0)!=(d|0)){continue}break}}F[a+12>>2]=l;F[a+8>>2]=f;F[a+4>>2]=c;F[a>>2]=h;if(!g){break b}mj(g);c=F[a+4>>2]}F[c-4>>2]=F[b>>2];F[a+4>>2]=F[a+4>>2]-4;return}Ua(1336);V()}function Of(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=F[a+12>>2];c=F[a+68>>2];e=F[c+80>>2];D[b+84|0]=0;g=F[b+68>>2];d=F[b+72>>2]-g>>2;a:{if(d>>>0>>0){eb(b+68|0,e-d|0,12404);c=F[a+68>>2];e=F[c+80>>2];break a}if(e>>>0>=d>>>0){break a}F[b+72>>2]=g+(e<<2)}k=F[c+96>>2];c=F[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;l=c>>>0>1?c:1;m=F[h+28>>2];c=0;b:{while(1){d=(L(c,3)<<2)+m|0;g=F[d>>2];if((g|0)==-1){break b}h=L(c,12)+k|0;i=F[h>>2];if(i>>>0>=e>>>0){break b}f=g<<2;g=F[F[a+72>>2]+12>>2];f=F[f+g>>2];if(f>>>0>=e>>>0){break b}j=i<<2;i=F[b+68>>2];F[j+i>>2]=f;f=F[d+4>>2];if((f|0)==-1){break b}j=F[h+4>>2];if(j>>>0>=e>>>0){break b}f=F[g+(f<<2)>>2];if(f>>>0>=e>>>0){break b}F[i+(j<<2)>>2]=f;d=F[d+8>>2];if((d|0)==-1){break b}h=F[h+8>>2];if(h>>>0>=e>>>0){break b}d=F[g+(d<<2)>>2];if(d>>>0>=e>>>0){break b}F[i+(h<<2)>>2]=d;c=c+1|0;if((l|0)!=(c|0)){continue}break}return 1}return 0}function xa(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+J[b>>2];k=+J[b+4>>2];l=+J[b+8>>2];g=N(j)+N(k)+N(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=F[a+16>>2];l=+(h|0);g=R(j*l+.5);b:{if(N(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=f+m^f;g=R(k*l+.5);c:{if(N(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+(f+b^b)|0)|0;i=(b|0)<0?0:b;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=F[a+8>>2];e=h+f|0;break d}b=f>>31;b=b+f^b;a=F[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}if(!((a|0)!=(e|0)|b)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((a|0)!=(e|0)|(b|0)>=(h|0))){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}F[c>>2]=a;F[d>>2]=b}function ya(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=M(0),f=M(0),g=M(0),h=M(0),i=M(0),j=0,k=M(0),l=M(0),m=M(0),n=M(0),o=0;a:{if(F[c+28>>2]!=9|G[c+24|0]!=3){break a}a=F[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=F[c+80>>2];if(!j){break a}k=M(M(2)/M((1<>2]>>2]+F[c+48>>2]|0;a=F[F[b>>2]>>2]+F[b+48>>2]|0;b=0;while(1){g=M(0);l=M(0);m=M(0);e=M(M(M(F[a>>2])*k)+M(-1));f=M(M(M(F[a+4>>2])*k)+M(-1));i=M(M(M(1)-M(N(e)))-M(N(f)));h=M(Q(M(-i),M(0)));n=M(-h);f=M(f+(f>>8;D[c+10|0]=d>>>16;D[c+11|0]=d>>>24;d=(v(l),x(2));D[c+4|0]=d;D[c+5|0]=d>>>8;D[c+6|0]=d>>>16;D[c+7|0]=d>>>24;d=(v(g),x(2));D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function yi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;g=F[a>>2];c=g+(b>>>3&536870908)|0;F[c>>2]=F[c>>2]|1<>2];e=(b|0)==-1;d=-1;a:{if(e){break a}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;d=-1;if((c|0)==-1){break a}d=F[F[f>>2]+(c<<2)>>2]}c=F[a+12>>2];h=(d>>>3&536870908)+c|0;F[h>>2]=F[h>>2]|1<>>0)%3|0){e=b-1|0;break e}e=b+2|0;d=-1;if((e|0)==-1){break d}}d=F[F[f>>2]+(e<<2)>>2]}e=(d>>>3&536870908)+c|0;F[e>>2]=F[e>>2]|1<>2]+(b<<2)>>2];if((b|0)==-1){break b}D[a+24|0]=0;a=(b>>>3&536870908)+g|0;F[a>>2]=F[a>>2]|1<>>0)%3|0?a:b-2|0;if((a|0)!=-1){d=F[F[f>>2]+(a<<2)>>2]}a=c+(d>>>3&536870908)|0;F[a>>2]=F[a>>2]|1<>>0)%3|0){b=b-1|0;break g}b=b+2|0;a=-1;if((b|0)==-1){break f}}a=F[F[f>>2]+(b<<2)>>2]}b=1<>>3&536870908)|0;c=F[a>>2];break c}a=c+536870908|0;b=F[c+536870908>>2];c=-2147483648}F[a>>2]=b|c}}function Li(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(b>>>0<=63){b=0;a=F[a+12>>2];if(a>>>0<2){break a}d=F[c>>2];b=a-1|0;e=b&3;c=0;b:{if(a-2>>>0<3){a=1;b=0;break b}f=b&-4;b=0;a=1;while(1){g=a+3|0;h=a+2|0;i=a+1|0;b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a:b;b=I[d+(b<<2)>>2]>I[d+(i<<2)>>2]?i:b;b=I[d+(b<<2)>>2]>I[d+(h<<2)>>2]?h:b;b=I[d+(b<<2)>>2]>I[d+(g<<2)>>2]?g:b;a=a+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}if(!e){break a}while(1){b=I[d+(b<<2)>>2]>I[d+(a<<2)>>2]?a:b;a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}break a}b=F[a+580>>2];d=32-b|0;if((d|0)>=4){c=F[a+576>>2];if((c|0)==F[a+568>>2]){return 0}d=F[c>>2];e=b+4|0;F[a+580>>2]=e;b=d<>>28|0;if((e|0)!=32){break a}F[a+580>>2]=0;F[a+576>>2]=c+4;return b}c=F[a+576>>2];e=c+4|0;if((e|0)==F[a+568>>2]){return 0}f=F[c>>2];F[a+576>>2]=e;F[a+580>>2]=b-28;a=60-b|0;b=F[c+4>>2]>>>a|f<>>a-d}return b}function nf(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11464;b=F[a+388>>2];if(b){F[a+392>>2]=b;mj(b)}d=F[a+368>>2];F[a+368>>2]=0;if(d){e=d-4|0;b=F[e>>2];if(b){c=(b<<4)+d|0;while(1){c=c-16|0;if((d|0)!=(c|0)){continue}break}}mj(e)}lf(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;mj(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;mj(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;mj(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;mj(b)}c=F[a+144>>2];if(c){while(1){b=F[c>>2];mj(c);c=b;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){mj(b)}b=F[a+120>>2];if(b){mj(b)}b=F[a+108>>2];if(b){mj(b)}b=F[a+96>>2];if(b){mj(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;mj(b)}b=F[a+60>>2];if(b){mj(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;mj(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;mj(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;mj(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){Pe(b)}return a|0}function Me(a,b){var c=0,d=0;c=F[b+8>>2];F[a+4>>2]=F[b+4>>2];F[a+8>>2]=c;F[a+20>>2]=F[b+20>>2];c=F[b+16>>2];F[a+12>>2]=F[b+12>>2];F[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=F[b+28>>2];if(c){c:{if(F[a+32>>2]<<5>>>0>=c>>>0){d=F[a+24>>2];break c}d=F[a+24>>2];if(d){mj(d);F[a+32>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;c=F[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=oj(c<<2);F[a+32>>2]=c;F[a+28>>2]=0;F[a+24>>2]=d;c=F[b+28>>2]}Pi(d,F[b+24>>2],(c-1>>>3&536870908)+4|0);c=F[b+28>>2]}else{c=0}F[a+28>>2]=c;c=F[b+40>>2];if(c){d:{if(F[a+44>>2]<<5>>>0>=c>>>0){d=F[a+36>>2];break d}d=F[a+36>>2];if(d){mj(d);F[a+44>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;c=F[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=oj(c<<2);F[a+44>>2]=c;F[a+40>>2]=0;F[a+36>>2]=d;c=F[b+40>>2]}Pi(d,F[b+36>>2],(c-1>>>3&536870908)+4|0);b=F[b+40>>2]}else{b=0}F[a+40>>2]=b}return}vj();V()}vj();V()}function xj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=fa+-64|0;fa=f;d=1;a:{if(wj(a,b,0)){break a}d=0;if(!b){break a}d=fa+-64|0;fa=d;e=F[b>>2];g=F[e-4>>2];h=F[e-8>>2];F[d+20>>2]=0;F[d+16>>2]=14956;F[d+12>>2]=b;F[d+8>>2]=15004;e=0;Qi(d+24|0,0,39);b=b+h|0;b:{if(wj(g,15004,0)){F[d+56>>2]=1;ia[F[F[g>>2]+20>>2]](g,d+8|0,b,b,1,0);e=F[d+32>>2]==1?b:0;break b}ia[F[F[g>>2]+24>>2]](g,d+8|0,b,1,0);c:{switch(F[d+44>>2]){case 0:e=F[d+48>>2]==1?F[d+36>>2]==1?F[d+40>>2]==1?F[d+28>>2]:0:0:0;break b;case 1:break c;default:break b}}if(F[d+32>>2]!=1){if(F[d+48>>2]|F[d+36>>2]!=1|F[d+40>>2]!=1){break b}}e=F[d+24>>2]}fa=d- -64|0;d=0;if(!e){break a}b=f+8|0;Qi(b|4,0,52);F[f+56>>2]=1;F[f+20>>2]=-1;F[f+16>>2]=a;F[f+8>>2]=e;ia[F[F[e>>2]+28>>2]](e,b,F[c>>2],1);a=F[f+32>>2];if((a|0)==1){F[c>>2]=F[f+24>>2]}d=(a|0)==1}fa=f- -64|0;return d|0}function Dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=F[b+12>>2];c=F[b+20>>2];d=c;i=F[b+16>>2];e=i+4|0;c=e>>>0<4?c+1|0:c;j=F[b+8>>2];g=e;a:{if(j>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}l=F[b>>2];e=i+l|0;h=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;e=H[b+38>>1];if(e>>>0<=513){c=d;d=i+8|0;c=d>>>0<8?c+1|0:c;g=d;if(d>>>0>j>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=g;F[b+20>>2]=c}if(!(h&1)){break a}d=O(h)^31;if(d-30>>>0<4294967267){break a}F[a+8>>2]=d+1;d=-2<>2]=h;F[a+12>>2]=d^-1;F[a+24>>2]=(h|0)/2;J[a+20>>2]=M(2)/M(h|0);if(e>>>0<=513){if((c|0)>=(f|0)&g>>>0>=j>>>0|(c|0)>(f|0)){break a}f=G[g+l|0];d=g+1|0;c=d?c:c+1|0;F[b+16>>2]=d;F[b+20>>2]=c;b:{switch(f|0){case 1:k=1;break;case 0:break b;default:break a}}F[a+72>>2]=k}k=de(a+96|0,b)}return k|0}function Nd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=F[b+12>>2];c=F[b+20>>2];g=c;h=F[b+16>>2];d=h+4|0;c=d>>>0<4?c+1|0:c;i=F[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}l=F[b>>2];e=h+l|0;e=G[e|0]|G[e+1|0]<<8|(G[e+2|0]<<16|G[e+3|0]<<24);F[b+16>>2]=d;F[b+20>>2]=c;c=g;d=h+8|0;c=d>>>0<8?c+1|0:c;j=d;if(d>>>0>i>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=j;F[b+20>>2]=c;if(!(e&1)){break a}d=O(e)^31;if(d-30>>>0<4294967267){break a}F[a+8>>2]=d+1;d=-2<>2]=e;F[a+12>>2]=d^-1;F[a+24>>2]=(e|0)/2;J[a+20>>2]=M(2)/M(e|0);if(H[b+38>>1]<=513){if((c|0)>=(f|0)&j>>>0>=i>>>0|(c|0)>(f|0)){break a}f=G[j+l|0];c=h+9|0;g=c>>>0<9?g+1|0:g;F[b+16>>2]=c;F[b+20>>2]=g;b:{switch(f|0){case 1:k=1;break;case 0:break b;default:break a}}F[a+72>>2]=k}k=de(a+96|0,b)}return k|0}function kf(a){a=a|0;var b=0,c=0,d=0,e=0;F[a>>2]=11412;d=F[a+368>>2];F[a+368>>2]=0;if(d){e=d-4|0;b=F[e>>2];if(b){c=(b<<4)+d|0;while(1){c=c-16|0;if((d|0)!=(c|0)){continue}break}}mj(e)}lf(a+216|0);b=F[a+196>>2];if(b){F[a+200>>2]=b;mj(b)}b=F[a+184>>2];if(b){F[a+188>>2]=b;mj(b)}b=F[a+172>>2];if(b){F[a+176>>2]=b;mj(b)}b=F[a+160>>2];if(b){F[a+164>>2]=b;mj(b)}c=F[a+144>>2];if(c){while(1){b=F[c>>2];mj(c);c=b;if(b){continue}break}}b=F[a+136>>2];F[a+136>>2]=0;if(b){mj(b)}b=F[a+120>>2];if(b){mj(b)}b=F[a+108>>2];if(b){mj(b)}b=F[a+96>>2];if(b){mj(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;mj(b)}b=F[a+60>>2];if(b){mj(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}b=F[a+36>>2];if(b){F[a+40>>2]=b;mj(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;mj(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;mj(b)}b=F[a+8>>2];F[a+8>>2]=0;if(b){Pe(b)}return a|0}function oh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{a=fa-32|0;fa=a;e=$i(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=oj(g);F[a+24>>2]=g|-2147483648;F[a+16>>2]=f;F[a+20>>2]=e;break c}D[a+27|0]=e;f=a+16|0;if(!e){break b}}Oi(f,c,e)}D[e+f|0]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d:{c=ng(b,a+16|0);if((c|0)==(b+4|0)){break d}b=F[c+28>>2];f=F[c+32>>2];if((b|0)==(f|0)){break d}b=f-b|0;if(b&3){break d}e=b>>>2|0;f=F[a+4>>2];b=F[a>>2];g=f-b>>2;e:{if(e>>>0>g>>>0){Ja(a,e-g|0);b=F[a>>2];f=F[a+4>>2];break e}if(e>>>0>=g>>>0){break e}f=(e<<2)+b|0;F[a+4>>2]=f}if((b|0)!=(f|0)){e=b;b=F[c+28>>2];Oi(e,b,F[c+32>>2]-b|0);break d}xc();V()}b=F[d>>2];if(b){F[d+4>>2]=b;mj(b)}F[d>>2]=F[a>>2];F[d+4>>2]=F[a+4>>2];F[d+8>>2]=F[a+8>>2];if(D[a+27|0]<0){mj(F[a+16>>2])}fa=a+32|0;break a}$f();V()}}function sd(a){var b=0,c=0,d=0;b=F[a+8>>2];d=F[a>>2];a:{if(G[a+12|0]){b:{c:{d:{e:{if((b|0)==-1){break e}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;if((b|0)==-1){break e}b=F[F[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}F[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b-2|0;F[a+8>>2]=b;if((b|0)!=-1){break b}}c=F[a+4>>2];b=-1;f:{if((c|0)==-1){break f}g:{if((c>>>0)%3|0){c=c-1|0;break g}c=c+2|0;b=-1;if((c|0)==-1){break f}}c=F[F[d+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break f}b=c-1|0;if((c>>>0)%3|0){break f}b=c+2|0}D[a+12|0]=0;F[a+8>>2]=b;return}if((b|0)!=F[a+4>>2]){break a}F[a+8>>2]=-1;return}c=-1;h:{if((b|0)==-1){break h}i:{if((b>>>0)%3|0){b=b-1|0;break i}b=b+2|0;c=-1;if((b|0)==-1){break h}}b=F[F[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break h}c=b-1|0;if((b>>>0)%3|0){break h}c=b+2|0}F[a+8>>2]=c}}function Yi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=fa-32|0;fa=e;f=F[a+28>>2];F[e+16>>2]=f;d=F[a+20>>2];F[e+28>>2]=c;F[e+24>>2]=b;b=d-f|0;F[e+20>>2]=b;f=b+c|0;j=2;a:{b:{b=e+16|0;d=aa(F[a+60>>2],b|0,2,e+12|0)|0;if(d){F[4190]=d;d=-1}else{d=0}c:{if(!d){while(1){d=F[e+12>>2];if((d|0)==(f|0)){break c}if((d|0)<0){break b}g=F[b+4>>2];h=g>>>0>>0;i=(h<<3)+b|0;g=d-(h?g:0)|0;F[i>>2]=g+F[i>>2];i=(h?12:4)+b|0;F[i>>2]=F[i>>2]-g;f=f-d|0;b=h?b+8|0:b;j=j-h|0;d=aa(F[a+60>>2],b|0,j|0,e+12|0)|0;if(d){F[4190]=d;d=-1}else{d=0}if(!d){continue}break}}if((f|0)!=-1){break b}}b=F[a+44>>2];F[a+28>>2]=b;F[a+20>>2]=b;F[a+16>>2]=b+F[a+48>>2];a=c;break a}F[a+28>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a>>2]=F[a>>2]|32;a=0;if((j|0)==2){break a}a=c-F[b+4>>2]|0}fa=e+32|0;return a|0}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=fa-16|0;fa=d;a:{e=$i(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=oj(f);F[d+8>>2]=f|-2147483648;F[d>>2]=a;F[d+4>>2]=e;break c}D[d+11|0]=e;a=d;if(!e){break b}}Oi(a,c,e)}D[a+e|0]=0;c=G[d+11|0];e=c<<24>>24;f=F[d>>2];b=F[b+4>>2];a=0;d:{if(!b){break d}a=c;c=(e|0)<0;a=c?F[d+4>>2]:a;j=c?f:d;while(1){c=G[b+27|0];g=c<<24>>24<0;c=g?F[b+20>>2]:c;k=c>>>0>>0;e:{f:{i=k?c:a;g:{if(i){h=b+16|0;g=g?F[h>>2]:h;h=Vi(j,g,i);h:{if(!h){if(a>>>0>=c>>>0){break h}break e}if((h|0)<0){break e}}c=Vi(g,j,i);if(!c){break g}if((c|0)<0){break f}a=1;break d}if(a>>>0>>0){break e}}if(k){break f}a=1;break d}b=b+4|0}b=F[b>>2];if(b){continue}break}a=0}if((e|0)<0){mj(f)}fa=d+16|0;break a}$f();V()}return a|0}function pb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;f=F[b+4>>2]-F[b>>2]|0;i=(f|0)/20|0;a:{b:{c:{if(f){if(i>>>0>=214748365){break c}d=oj(f);F[a+16>>2]=d;F[a+20>>2]=d;F[a+24>>2]=L(i,20)+d;c=F[b>>2];b=F[b+4>>2]-c|0;if((b|0)<=0){b=d}else{b=Oi(d,c,b)+L((b>>>0)/20|0,20)|0}c=b;F[a+20>>2]=c}F[a+28>>2]=0;b=c-d|0;if(!b){break a}b=(b|0)/20|0;c=b>>>0>1?b:1;f=c&1;if(b>>>0<2){b=0;break b}i=c&-2;b=0;c=0;while(1){g=L(b|1,20)+d|0;g=L(F[g+16>>2],F[g+12>>2]);h=L(b,20)+d|0;h=L(F[h+16>>2],F[h+12>>2]);e=e>>>0>>0?h:e;e=e>>>0>>0?g:e;b=b+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}break b}Ha();V()}if(!f){break a}b=L(b,20)+d|0;b=L(F[b+16>>2],F[b+12>>2]);e=b>>>0>e>>>0?b:e}Db(a,e);F[a+12>>2]=F[a>>2];return a}function Pi(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return Oi(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}D[d|0]=G[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;D[d|0]=G[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;F[c+a>>2]=F[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;D[c+a|0]=G[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){F[d>>2]=F[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){D[d|0]=G[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function jc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=F[c+12>>2];d=h;e=F[c+20>>2];i=F[c+8>>2];f=F[c+16>>2];a:{if((d|0)<=(e|0)&i>>>0<=f>>>0|(d|0)<(e|0)){break a}j=F[c>>2];k=D[j+f|0];d=e;g=f+1|0;d=g?d:d+1|0;F[c+16>>2]=g;F[c+20>>2]=d;b:{if((k|0)==-2){break b}if((d|0)>=(h|0)&g>>>0>=i>>>0|(d|0)>(h|0)){break a}d=D[g+j|0];f=f+2|0;e=f>>>0<2?e+1|0:e;F[c+16>>2]=f;F[c+20>>2]=e;if((d-4&255)>>>0<251){break a}e=ia[F[F[a>>2]+40>>2]](a,k,d)|0;d=F[a+20>>2];F[a+20>>2]=e;if(!d){break b}ia[F[F[d>>2]+4>>2]](d)}d=F[a+20>>2];if(d){if(!(ia[F[F[a>>2]+28>>2]](a,d)|0)){break a}}if(!(ia[F[F[a>>2]+36>>2]](a,b,c)|0)){break a}c=F[a+4>>2];if(!(!c|G[c+36|0]>1)){if(!(ia[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0)){break a}}l=1}return l|0}function Di(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=fa-16|0;fa=d;g=F[a+24>>2];l=F[a+28>>2];a:{if((g|0)!=(l|0)){while(1){F[d+8>>2]=0;F[d>>2]=0;F[d+4>>2]=0;e=Ei(F[g>>2],b,d);a=G[d+11|0];i=a<<24>>24;j=3;b:{c:{d:{e:{if(!e){break e}j=0;e=G[c+11|0];f=e<<24>>24;k=(i|0)<0?F[d+4>>2]:a;if((k|0)!=(((f|0)<0?F[c+4>>2]:e)|0)){break e}h=(f|0)<0?F[c>>2]:c;f=F[d>>2];e=(i|0)<0;f:{if(!e){if(!i){break f}e=d;if(G[h|0]!=(f&255)){break b}while(1){a=a-1|0;if(!a){break f}f=G[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==G[e|0]){continue}break}break e}if(!k){break f}if(Vi(e?f:d,h,k)){break d}}m=F[g>>2];j=1}if((i|0)>=0){break c}}mj(F[d>>2])}switch(j|0){case 0:case 3:break b;default:break a}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}m=0}fa=d+16|0;return m}function ej(a,b,c){a:{switch(b-9|0){case 0:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];return;case 6:b=F[c>>2];F[c>>2]=b+4;b=E[b>>1];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 7:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=H[b>>1];F[a+4>>2]=0;return;case 8:b=F[c>>2];F[c>>2]=b+4;b=D[b|0];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 9:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=G[b|0];F[a+4>>2]=0;return;case 16:b=F[c>>2]+7&-8;F[c>>2]=b+8;K[a>>3]=K[b>>3];return;case 17:ia[0](a,c);default:return;case 1:case 4:case 14:b=F[c>>2];F[c>>2]=b+4;b=F[b>>2];F[a>>2]=b;F[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=F[c>>2];F[c>>2]=b+4;F[a>>2]=F[b>>2];F[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=F[c>>2]+7&-8;F[c>>2]=b+8;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c}function $b(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=F[a+8>>2];c=F[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Qi(c,0,b)+b|0}F[a+4>>2]=c;return}a:{b:{c:{g=F[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>>0<2147483644?e>>>0>h>>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}i=oj(e<<2)}d=(f<<2)+i|0;f=b<<2;b=Qi(d,0,f);f=b+f|0;e=(e<<2)+i|0;if((c|0)==(g|0)){break b}while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;d=d-4|0;F[d>>2]=b;if((c|0)!=(g|0)){continue}break}F[a+8>>2]=e;b=F[a+4>>2];F[a+4>>2]=f;c=F[a>>2];F[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b-4|0;a=F[b>>2];F[b>>2]=0;if(a){ia[F[F[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Ha();V()}Ua(1336);V()}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b}if(c){mj(c)}}function ce(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;F[a+16>>2]=0;c=F[a>>2];F[a+4>>2]=c;F[a+12>>2]=c;g=F[b+12>>2];c=g;d=F[b+20>>2];f=F[b+16>>2];e=f+4|0;d=e>>>0<4?d+1|0:d;h=F[b+8>>2];a:{if(h>>>0>>0&(c|0)<=(d|0)|(c|0)<(d|0)){break a}c=f+F[b>>2]|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=e;F[b+20>>2]=d;if(!c|c&3){break a}f=g-(d+(e>>>0>h>>>0)|0)|0;if(h-e>>>0>>0&(f|0)<=0|(f|0)<0){break a}if(c>>>0>=4){Ja(a,c>>>2|0);h=F[b+8>>2];g=F[b+12>>2];e=F[b+16>>2];d=F[b+20>>2]}f=c+e|0;d=c>>>0>f>>>0?d+1|0:d;if(f>>>0>h>>>0&(d|0)>=(g|0)|(d|0)>(g|0)){break a}Oi(F[a>>2],e+F[b>>2]|0,c);d=F[b+20>>2];e=c+F[b+16>>2]|0;d=e>>>0>>0?d+1|0:d;F[b+16>>2]=e;F[b+20>>2]=d;F[a+16>>2]=0;F[a+12>>2]=F[a>>2];i=1}return i}function hg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=oj(72);F[c+4>>2]=0;F[c+8>>2]=0;F[c>>2]=2012;F[c+12>>2]=0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;F[c+32>>2]=0;F[c+36>>2]=0;F[c+40>>2]=0;F[c>>2]=2156;F[c+44>>2]=0;F[c+48>>2]=0;F[c+52>>2]=0;F[c+56>>2]=0;F[c+60>>2]=0;F[c+64>>2]=0;F[c+68>>2]=0;h=c;a:{if((b|0)>=0){g=a+8|0;c=F[a+12>>2];e=F[a+8>>2];f=c-e>>2;b:{if((f|0)>(b|0)){break b}d=b+1|0;if(b>>>0>=f>>>0){$b(g,d-f|0);break b}if(d>>>0>=f>>>0){break b}e=(d<<2)+e|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ia[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}a=F[g>>2]+(b<<2)|0;c=F[a>>2];F[a>>2]=h;if(!c){break a}}ia[F[F[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function Qi(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}D[a|0]=b;e=a+c|0;D[e-1|0]=b;if(c>>>0<3){break a}D[a+2|0]=b;D[a+1|0]=b;D[e-3|0]=b;D[e-2|0]=b;if(c>>>0<7){break a}D[a+3|0]=b;D[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=L(b&255,16843009);F[f>>2]=d;b=c-e&-4;c=b+f|0;F[c-4>>2]=d;if(b>>>0<9){break a}F[f+8>>2]=d;F[f+4>>2]=d;F[c-8>>2]=d;F[c-12>>2]=d;if(b>>>0<25){break a}F[f+24>>2]=d;F[f+20>>2]=d;F[f+16>>2]=d;F[f+12>>2]=d;F[c-16>>2]=d;F[c-20>>2]=d;F[c-24>>2]=d;F[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=Rj(d,0,1,1);e=ha;b=b+f|0;while(1){F[b+24>>2]=d;F[b+28>>2]=e;F[b+16>>2]=d;F[b+20>>2]=e;F[b+8>>2]=d;F[b+12>>2]=e;F[b>>2]=d;F[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function Ai(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;e=-1;a:{b:{if((b|0)==-1){break b}g=1;f=F[F[F[a+4>>2]+12>>2]+(b<<2)>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)>=0){e=(c>>>0)/3|0;e=F[(F[F[a>>2]+96>>2]+L(e,12)|0)+(c-L(e,3)<<2)>>2]}c:{if((f|0)==-1){break c}g=0;c=((f>>>0)%3|0?-1:2)+f|0;if((c|0)<0){break c}d=(c>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(c-L(d,3)<<2)>>2]}c=-1;if((d|0)!=(e|0)){break a}e=-1;d:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){d=(b>>>0)/3|0;d=F[(F[F[a>>2]+96>>2]+L(d,12)|0)+(b-L(d,3)<<2)>>2];if(g){break b}break d}d=-1;if(!g){break d}break b}b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;if((b|0)<0){break b}c=F[F[a>>2]+96>>2];a=(b>>>0)/3|0;e=F[(c+L(a,12)|0)+(b-L(a,3)<<2)>>2]}c=(d|0)==(e|0)?f:-1}return c}function Pf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+56>>2]-F[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=oj(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){Oi(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}mj(d)}e=a+8|0;b=F[a+76>>2];c:{if(b){d=F[b>>2];if((d|0)==F[b+4>>2]){return 1}b=0;while(1){c=Qf(e,F[(b<<2)+d>>2]);if(!c){break c}f=F[a+76>>2];d=F[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=F[F[a+12>>2]+64>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=Qf(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}Ua(1336);V()}function vc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=F[b+12>>2];h=d;c=F[b+20>>2];e=c;f=F[b+16>>2];g=f+4|0;c=g>>>0<4?c+1|0:c;i=F[b+8>>2];a:{if(i>>>0>>0&(c|0)>=(d|0)|(c|0)>(d|0)){break a}j=F[b>>2];d=j+f|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=c;c=e;e=f+8|0;c=e>>>0<8?c+1|0:c;f=e;e=c;if(f>>>0>i>>>0&(c|0)>=(h|0)|(c|0)>(h|0)){break a}c=g+j|0;c=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=f;F[b+20>>2]=e;if((c|0)<(d|0)){break a}F[a+16>>2]=c;F[a+12>>2]=d;b=(c>>31)-((d>>31)+(c>>>0>>0)|0)|0;c=c-d|0;if(!b&c>>>0>2147483646|b){break a}k=1;b=c+1|0;F[a+20>>2]=b;c=b>>>1|0;F[a+24>>2]=c;F[a+28>>2]=0-c;if(b&1){break a}F[a+24>>2]=c-1}return k|0}function wh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=fa+-64|0;fa=f;e=f+8|0;E[e+38>>1]=0;F[e>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;D[e+29|0]=0;D[e+30|0]=0;D[e+31|0]=0;D[e+32|0]=0;D[e+33|0]=0;D[e+34|0]=0;D[e+35|0]=0;D[e+36|0]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e>>2]=b;F[e+8>>2]=c;F[e+12>>2]=0;b=f+48|0;ie(b,a,e,d);F[a+24>>2]=F[f+48>>2];c=a+24|0;a:{if((c|0)==(b|0)){break a}e=f+48|4;b=G[f+63|0];d=b<<24>>24;g=a+28|0;if(D[g+11|0]>=0){if((d|0)>=0){a=F[e+4>>2];F[g>>2]=F[e>>2];F[g+4>>2]=a;F[g+8>>2]=F[e+8>>2];break a}sj(g,F[f+52>>2],F[f+56>>2]);break a}a=(d|0)<0;rj(g,a?F[f+52>>2]:e,a?F[f+56>>2]:b)}if(D[f+63|0]<0){mj(F[f+52>>2])}fa=f- -64|0;return c|0}function vh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=fa+-64|0;fa=f;e=f+8|0;E[e+38>>1]=0;F[e>>2]=0;F[e+8>>2]=0;F[e+12>>2]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e+24>>2]=0;F[e+28>>2]=0;D[e+29|0]=0;D[e+30|0]=0;D[e+31|0]=0;D[e+32|0]=0;D[e+33|0]=0;D[e+34|0]=0;D[e+35|0]=0;D[e+36|0]=0;F[e+16>>2]=0;F[e+20>>2]=0;F[e>>2]=b;F[e+8>>2]=c;F[e+12>>2]=0;b=f+48|0;he(b,a,e,d);F[a+24>>2]=F[f+48>>2];c=a+24|0;a:{if((c|0)==(b|0)){break a}e=f+48|4;b=G[f+63|0];d=b<<24>>24;g=a+28|0;if(D[g+11|0]>=0){if((d|0)>=0){a=F[e+4>>2];F[g>>2]=F[e>>2];F[g+4>>2]=a;F[g+8>>2]=F[e+8>>2];break a}sj(g,F[f+52>>2],F[f+56>>2]);break a}a=(d|0)<0;rj(g,a?F[f+52>>2]:e,a?F[f+56>>2]:b)}if(D[f+63|0]<0){mj(F[f+52>>2])}fa=f- -64|0;return c|0}function Jf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=F[a+4>>2];d=F[b>>2];a:{c=F[a+12>>2];c=F[c+28>>2]-F[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=F[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=F[b+4>>2];c=oj(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){Oi(c,d,e)}F[b+8>>2]=g;F[b+4>>2]=f;F[b>>2]=c;if(!d){break b}mj(d)}e=a+8|0;b=F[a+76>>2];c:{if(b){d=F[b>>2];if((d|0)==F[b+4>>2]){return 1}b=0;while(1){c=Kf(e,F[(b<<2)+d>>2]);if(!c){break c}f=F[a+76>>2];d=F[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=F[a+12>>2];a=F[a+4>>2]-F[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=Kf(e,L(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}Ua(1336);V()}function Kb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=a+16|0;d=F[e>>2];a:{if(!d){break a}g=F[b>>2];b=e;while(1){f=(g|0)>F[d+16>>2];b=f?b:d;d=F[(f<<2)+d>>2];if(d){continue}break}if((b|0)==(e|0)|(g|0)>2]){break a}d=F[b+24>>2];if(!d){break a}e=G[c+11|0];f=e<<24>>24<0;g=f?F[c>>2]:c;e=f?F[c+4>>2]:e;f=b+20|0;while(1){b=G[d+27|0];h=b<<24>>24<0;b=h?F[d+20>>2]:b;k=b>>>0>>0;b:{c:{j=k?b:e;d:{if(j){i=d+16|0;h=h?F[i>>2]:i;i=Vi(g,h,j);e:{if(!i){if(b>>>0<=e>>>0){break e}break b}if((i|0)<0){break b}}b=Vi(h,g,j);if(!b){break d}if((b|0)<0){break c}return og(f,c)}if(b>>>0>e>>>0){break b}}if(k){break c}return og(f,c)}d=d+4|0}d=F[d>>2];if(d){continue}break}}return og(a,c)}function Wb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=F[b>>2];b=F[b+4>>2];f=F[F[a+8>>2]+40>>2];m=oj((f|0)>=0?f:-1);g=1;h=b-d|0;a:{if((h|0)<=0){break a}b=0;g=0;d=0+F[c+20>>2]|0;i=F[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;e=F[c+12>>2];if(j>>>0>I[c+8>>2]&(e|0)<=(d|0)|(d|0)>(e|0)){break a}k=h>>2;g=(k|0)>1?k:1;while(1){b:{e=Oi(m,i+F[c>>2]|0,f);F[c+16>>2]=j;F[c+20>>2]=d;Oi(F[F[F[a+8>>2]+64>>2]>>2]+b|0,e,f);l=l+1|0;if((g|0)==(l|0)){break b}b=b+f|0;d=n+F[c+20>>2]|0;i=F[c+16>>2];e=f+i|0;d=e>>>0>>0?d+1|0:d;j=e;h=e;e=F[c+12>>2];if((e|0)>=(d|0)&I[c+8>>2]>=h>>>0|(d|0)<(e|0)){continue}}break}g=(l|0)>=(k|0)}mj(m);return g|0}function ec(a,b){a=a|0;b=b|0;a=0;a:{switch(b|0){case 0:a=oj(20);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;return a|0;case 1:a=oj(24);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;return a|0;case 2:a=oj(48);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;F[a+32>>2]=0;F[a+36>>2]=0;F[a+28>>2]=-1;F[a+24>>2]=1140;F[a>>2]=11076;F[a+40>>2]=0;F[a+44>>2]=0;return a|0;case 3:a=oj(32);F[a+12>>2]=-1;F[a+16>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2260;F[a+20>>2]=0;F[a>>2]=2476;F[a+28>>2]=-1;F[a+24>>2]=1032;F[a>>2]=7056;break;default:break a}}return a|0}function zh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=fa-32|0;fa=e;a:{b:{f=$i(c);if(f>>>0<4294967280){c:{d:{if(f>>>0>=11){g=f+16&-16;a=oj(g);F[e+24>>2]=g|-2147483648;F[e+16>>2]=a;F[e+20>>2]=f;break d}D[e+27|0]=f;a=e+16|0;if(!f){break c}}Oi(a,c,f)}D[a+f|0]=0;c=$i(d);if(c>>>0>=4294967280){break b}e:{f:{if(c>>>0>=11){f=c+16&-16;a=oj(f);F[e+8>>2]=f|-2147483648;F[e>>2]=a;F[e+4>>2]=c;break f}D[e+11|0]=c;a=e;if(!c){break e}}Oi(a,d,c)}D[a+c|0]=0;c=F[b+4>>2];a=-1;g:{if(!c){break g}c=Di(c,e+16|0,e);a=-1;if(!c){break g}a=Hi(b,F[c+24>>2])}if(D[e+11|0]<0){mj(F[e>>2])}if(D[e+27|0]<0){mj(F[e+16>>2])}fa=e+32|0;break a}$f();V()}$f();V()}return a|0}function Ka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;F[b>>2]=1;f=b+8|0;c=F[b+8>>2];d=F[b+12>>2]-c|0;if(d>>>0<=4294967291){kg(f,d+4|0);c=F[f>>2]}c=c+d|0;d=F[a+4>>2];D[c|0]=d;D[c+1|0]=d>>>8;D[c+2|0]=d>>>16;D[c+3|0]=d>>>24;c=F[a+8>>2];if((c|0)!=F[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=F[b+8>>2];e=F[b+12>>2]-c|0;if(e>>>0<=4294967291){kg(f,e+4|0);c=F[f>>2]}c=c+e|0;e=F[g>>2];D[c|0]=e;D[c+1|0]=e>>>8;D[c+2|0]=e>>>16;D[c+3|0]=e>>>24;d=d+1|0;c=F[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=F[b+12>>2];b=F[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){kg(f,c+4|0);b=F[f>>2]}b=b+c|0;a=F[a+20>>2];D[b|0]=a;D[b+1|0]=a>>>8;D[b+2|0]=a>>>16;D[b+3|0]=a>>>24}function Le(a,b,c){var d=0,e=0,f=0,g=0;e=fa-16|0;fa=e;F[a+4>>2]=0;a:{b:{if(!b){break b}g=F[a+8>>2];d=g<<5;c:{if(d>>>0>=b>>>0){F[a+4>>2]=b;break c}F[e+8>>2]=0;F[e>>2]=0;F[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=b+31&-32;d=g<<6;d=d>>>0>>0?f:d}else{d=2147483647}Hc(e,d);f=F[a>>2];F[a>>2]=F[e>>2];F[e>>2]=f;d=F[a+4>>2];F[a+4>>2]=b;F[e+4>>2]=d;d=F[a+8>>2];F[a+8>>2]=F[e+8>>2];F[e+8>>2]=d;if(!f){break c}mj(f)}f=b>>>5|0;d=f<<2;a=F[a>>2];if(G[c|0]){a=Qi(a,255,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;F[a>>2]=F[a>>2]|-1>>>32-b;break b}a=Qi(a,0,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;F[a>>2]=F[a>>2]&(-1>>>32-b^-1)}fa=e+16|0;return}vj();V()}function Ni(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+4>>2];e=F[a+8>>2];if(d>>>0>>0){F[d>>2]=F[b>>2];F[d+4>>2]=F[b+4>>2];F[d+8>>2]=F[b+8>>2];F[a+4>>2]=d+12;return}a:{f=F[a>>2];g=(d-f|0)/12|0;c=g+1|0;if(c>>>0<357913942){e=(e-f|0)/12|0;h=e<<1;c=e>>>0<178956970?c>>>0>h>>>0?c:h:357913941;if(c>>>0>=357913942){break a}h=L(g,12);e=L(c,12);g=oj(e);c=h+g|0;F[c>>2]=F[b>>2];F[c+4>>2]=F[b+4>>2];F[c+8>>2]=F[b+8>>2];b=c+12|0;if((d|0)!=(f|0)){while(1){c=c-12|0;d=d-12|0;F[c>>2]=F[d>>2];F[c+4>>2]=F[d+4>>2];F[c+8>>2]=F[d+8>>2];if((d|0)!=(f|0)){continue}break}}F[a+8>>2]=e+g;F[a+4>>2]=b;F[a>>2]=c;if(f){mj(f)}return}Ha();V()}Ua(1336);V()}function Kd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=fa-32|0;fa=f;g=(e&1073741823)!=(e|0)?-1:e<<2;l=Qi(oj(g),0,g);g=l;i=F[g>>2];g=F[g+4>>2];k=F[b+4>>2];F[f+24>>2]=F[b>>2];F[f+28>>2]=k;F[f+8>>2]=i;F[f+12>>2]=g;i=a+8|0;Fd(f+16|0,i,f+8|0,f+24|0);F[c>>2]=F[f+16>>2];F[c+4>>2]=F[f+20>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){h=a<<2;g=h+c|0;j=g+k|0;m=F[j>>2];j=F[j+4>>2];h=b+h|0;n=F[h+4>>2];F[f+24>>2]=F[h>>2];F[f+28>>2]=n;F[f+8>>2]=m;F[f+12>>2]=j;Fd(f+16|0,i,f+8|0,f+24|0);F[g>>2]=F[f+16>>2];F[g+4>>2]=F[f+20>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}mj(l);fa=f+32|0;return 1}function Ud(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=fa-32|0;fa=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=Qi(oj(h),0,h);g=F[b>>2];i=F[b+4>>2];k=F[h+4>>2];F[f+16>>2]=F[h>>2];F[f+20>>2]=k;F[f+8>>2]=g;F[f+12>>2]=i;i=a+8|0;Pd(f+24|0,i,f+16|0,f+8|0);F[c>>2]=F[f+24>>2];F[c+4>>2]=F[f+28>>2];if((d|0)>(e|0)){k=0-e<<2;a=e;while(1){g=a<<2;j=g+b|0;m=F[j>>2];j=F[j+4>>2];g=c+g|0;l=g+k|0;n=F[l+4>>2];F[f+16>>2]=F[l>>2];F[f+20>>2]=n;F[f+8>>2]=m;F[f+12>>2]=j;Pd(f+24|0,i,f+16|0,f+8|0);F[g>>2]=F[f+24>>2];F[g+4>>2]=F[f+28>>2];a=a+e|0;if((d|0)>(a|0)){continue}break}}mj(h);fa=f+32|0;return 1}function Gd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=F[b+12>>2];c=F[b+20>>2];f=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=F[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}d=g+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;if(H[b+38>>1]<=513){c=f;f=g+8|0;c=f>>>0<8?c+1|0:c;if(f>>>0>h>>>0&(c|0)>=(e|0)|(c|0)>(e|0)){break a}F[b+16>>2]=f;F[b+20>>2]=c}if(!(d&1)){break a}b=O(d)^31;c=b-30|0;if(c>>>0>=4294967267){F[a+8>>2]=b+1;e=-2<>2]=b;F[a+12>>2]=e^-1;F[a+24>>2]=(b|0)/2;J[a+20>>2]=M(2)/M(b|0)}j=c>>>0>4294967266}return j|0}function ab(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=F[a+8>>2];e=F[a>>2];if(g>>>0<=d-e>>2>>>0){f=F[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){F[e>>2]=F[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>0){f=Oi(f,d,b)+b|0}F[a+4>>2]=f;return}F[a+4>>2]=e;return}if(e){F[a+4>>2]=e;mj(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=oj(e);F[a>>2]=c;F[a+4>>2]=c;F[a+8>>2]=c+e;if(f){c=Oi(c,b,f)+f|0}F[a+4>>2]=c;return}Ha();V()}function Vb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=1;a:{if((ia[F[F[b>>2]+20>>2]](b)|0)<=0){break a}while(1){f=0;c=Gi(F[F[a+4>>2]+4>>2],ia[F[F[b>>2]+24>>2]](b,g)|0);if((c|0)==-1){break a}e=F[a+4>>2];b:{if(G[e+36|0]<=1){if(ia[F[F[b>>2]+28>>2]](b,F[F[F[e+4>>2]+8>>2]+(c<<2)>>2])|0){break b}break a}d=0;c:{if((c|0)<0){break c}h=F[e+4>>2];if(F[h+12>>2]-F[h+8>>2]>>2<=(c|0)){break c}d=F[F[e+8>>2]+(F[F[e+20>>2]+(c<<2)>>2]<<2)>>2];d=ia[F[F[d>>2]+32>>2]](d,c)|0}if(!d){break a}if(!(ia[F[F[b>>2]+28>>2]](b,d)|0)){break a}}f=1;g=g+1|0;if((ia[F[F[b>>2]+20>>2]](b)|0)>(g|0)){continue}break}}return f|0}function ph(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a=fa-32|0;fa=a;F[a+24>>2]=0;F[a+28>>2]=0;a:{d=$i(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=oj(f);F[a+16>>2]=f|-2147483648;F[a+8>>2]=e;F[a+12>>2]=d;break c}D[a+19|0]=d;e=a+8|0;if(!d){break b}}Oi(e,c,d)}D[d+e|0]=0;c=b+4|0;b=ng(b,a+8|0);d:{if((c|0)==(b|0)){break d}c=F[b+32>>2];b=F[b+28>>2];if((c-b|0)!=8){break d}c=G[b+4|0]|G[b+5|0]<<8|(G[b+6|0]<<16|G[b+7|0]<<24);F[a+24>>2]=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[a+28>>2]=c}g=K[a+24>>3];if(D[a+19|0]<0){mj(F[a+8>>2])}fa=a+32|0;break a}$f();V()}return+g}function $e(a){var b=0,c=0,d=0,e=0;c=1;d=F[a+140>>2];a:{if((d|0)<=0){break a}b=d<<4;c=oj((d|0)!=(d&268435455)?-1:b|4);F[c>>2]=d;c=c+4|0;d=c+b|0;b=c;while(1){F[b>>2]=0;F[b+4>>2]=0;D[b+5|0]=0;D[b+6|0]=0;D[b+7|0]=0;D[b+8|0]=0;D[b+9|0]=0;D[b+10|0]=0;D[b+11|0]=0;D[b+12|0]=0;b=b+16|0;if((d|0)!=(b|0)){continue}break}e=F[a+136>>2];F[a+136>>2]=c;if(e){d=e-4|0;c=F[d>>2];if(c){b=(c<<4)+e|0;while(1){b=b-16|0;if((e|0)!=(b|0)){continue}break}}mj(d)}c=1;if(F[a+140>>2]<=0){break a}b=0;while(1){c=de(F[a+136>>2]+(b<<4)|0,a);if(!c){break a}b=b+1|0;if((b|0)>2]){continue}break}}return c}function _a(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(F[a+64>>2]){break a}c=oj(32);F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;d=F[a+64>>2];F[a+64>>2]=c;if(!d){break a}c=F[d>>2];if(c){F[d+4>>2]=c;mj(c)}mj(d)}e=F[a+64>>2];c=F[a+28>>2]-1|0;if(c>>>0<=10){d=F[(c<<2)+13616>>2]}else{d=-1}c=L(d,D[a+24|0]);d=c;g=c>>31;e=jg(e,0,Rj(c,g,b,0),ha);if(e){c=F[a+64>>2];F[a>>2]=c;f=F[c+20>>2];F[a+8>>2]=F[c+16>>2];F[a+12>>2]=f;f=F[c+24>>2];c=F[c+28>>2];F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=d;F[a+44>>2]=g;F[a+16>>2]=f;F[a+20>>2]=c;F[a+80>>2]=b}return e}function Qd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=F[b+12>>2];c=F[b+20>>2];e=c;g=F[b+16>>2];d=g+4|0;c=d>>>0<4?c+1|0:c;h=F[b+8>>2];i=d;a:{if(h>>>0>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}d=g+F[b>>2]|0;d=G[d|0]|G[d+1|0]<<8|(G[d+2|0]<<16|G[d+3|0]<<24);F[b+16>>2]=i;F[b+20>>2]=c;c=e;e=g+8|0;c=e>>>0<8?c+1|0:c;if(e>>>0>h>>>0&(c|0)>=(f|0)|(c|0)>(f|0)){break a}F[b+16>>2]=e;F[b+20>>2]=c;if(!(d&1)){break a}b=O(d)^31;if(b-30>>>0<4294967267){break a}j=1;F[a+8>>2]=b+1;c=-2<>2]=b;F[a+12>>2]=c^-1;F[a+24>>2]=(b|0)/2;J[a+20>>2]=M(2)/M(b|0)}return j|0}function le(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+4|0;a:{a=F[a+4>>2];if(a){e=G[c+11|0];d=e<<24>>24<0;i=d?F[c>>2]:c;e=d?F[c+4>>2]:e;while(1){c=G[a+27|0];d=c<<24>>24<0;c=d?F[a+20>>2]:c;j=c>>>0>>0;b:{c:{d:{e:{f:{h=j?c:e;g:{if(h){g=a+16|0;d=d?F[g>>2]:g;g=Vi(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>=0){break f}break g}if(c>>>0<=e>>>0){break e}}c=F[a>>2];if(c){break b}F[b>>2]=a;return a}c=Vi(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>=0){break a}}f=a+4|0;c=F[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}F[b>>2]=f;return f}F[b>>2]=a;return f}function Za(a,b){var c=0;c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;c=F[b+60>>2];F[a+56>>2]=F[b+56>>2];F[a+60>>2]=c;c=F[b+52>>2];F[a+48>>2]=F[b+48>>2];F[a+52>>2]=c;c=F[b+44>>2];F[a+40>>2]=F[b+40>>2];F[a+44>>2]=c;c=F[b+36>>2];F[a+32>>2]=F[b+32>>2];F[a+36>>2]=c;c=F[b+28>>2];F[a+24>>2]=F[b+24>>2];F[a+28>>2]=c;c=F[b+20>>2];F[a+16>>2]=F[b+16>>2];F[a+20>>2]=c;c=F[b+12>>2];F[a+8>>2]=F[b+8>>2];F[a+12>>2]=c;F[a+88>>2]=0;F[a+64>>2]=0;F[a+68>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;D[a+77|0]=0;D[a+78|0]=0;D[a+79|0]=0;D[a+80|0]=0;D[a+81|0]=0;D[a+82|0]=0;D[a+83|0]=0;D[a+84|0]=0;return a}function ng(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;a=F[a+4>>2];a:{b:{if(!a){break b}d=G[b+11|0];c=d<<24>>24<0;i=c?F[b>>2]:b;e=c?F[b+4>>2]:d;c=g;while(1){b=G[a+27|0];j=b<<24>>24<0;h=j?F[a+20>>2]:b;f=h>>>0>e>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Vi(j?F[b>>2]:b,i,d);if(b){break c}}b=e>>>0>h>>>0?-1:f}c=(b|0)<0?c:a;a=F[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=G[c+27|0];f=a<<24>>24<0;d:{d=f?F[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=Vi(i,f?F[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>=0){break a}}c=g}return c}function Cj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(wj(a,F[b+8>>2],e)){if(!(F[b+28>>2]==1|F[b+4>>2]!=(c|0))){F[b+28>>2]=d}return}a:{if(wj(a,F[b>>2],e)){if(!(F[b+16>>2]!=(c|0)&F[b+20>>2]!=(c|0))){if((d|0)!=1){break a}F[b+32>>2]=1;return}F[b+32>>2]=d;b:{if(F[b+44>>2]==4){break b}E[b+52>>1]=0;a=F[a+8>>2];ia[F[F[a>>2]+20>>2]](a,b,c,c,1,e);if(G[b+53|0]){F[b+44>>2]=3;if(!G[b+52|0]){break b}break a}F[b+44>>2]=4}F[b+20>>2]=c;F[b+40>>2]=F[b+40>>2]+1;if(F[b+36>>2]!=1|F[b+24>>2]!=2){break a}D[b+54|0]=1;return}a=F[a+8>>2];ia[F[F[a>>2]+24>>2]](a,b,c,d,e)}}function lg(a,b,c){var d=0,e=0,f=0,g=0;a:{b:{if(!b){break b}if(H[a+38>>1]<=513){e=F[a+12>>2];b=F[a+20>>2];f=F[a+16>>2];g=f+8|0;b=g>>>0<8?b+1|0:b;if(g>>>0>I[a+8>>2]&(b|0)>=(e|0)|(b|0)>(e|0)){break a}b=f+F[a>>2]|0;d=G[b+4|0]|G[b+5|0]<<8|(G[b+6|0]<<16|G[b+7|0]<<24);F[c>>2]=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[c+4>>2]=d;b=F[a+20>>2];c=F[a+16>>2]+8|0;b=c>>>0<8?b+1|0:b;F[a+16>>2]=c;F[a+20>>2]=b;break b}if(!mg(1,c,a)){break a}}D[a+36|0]=1;F[a+32>>2]=0;b=F[a+16>>2];c=b+F[a>>2]|0;F[a+24>>2]=c;d=a;a=F[a+8>>2];F[d+28>>2]=c+(a-b|0);d=1}return d}function Eb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}d=L(b,12);b=oj(d);F[a>>2]=b;F[a+4>>2]=b;e=b+d|0;F[a+8>>2]=e;f=F[c>>2];c=F[c+4>>2]-f|0;c:{if(!c){c=b;b=d-12|0;Qi(c,0,(b-((b>>>0)%12|0)|0)+12|0);break c}if((c|0)<0){break a}g=c>>2<<2;h=c>>>2<<2;while(1){F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;d=oj(c);F[b>>2]=d;F[b+4>>2]=d;F[b+8>>2]=d+g;i=b,j=Oi(d,f,c)+h|0,F[i+4>>2]=j;b=b+12|0;if((e|0)!=(b|0)){continue}break}}F[a+4>>2]=e}return}Ha();V()}F[b+8>>2]=0;F[b>>2]=0;F[b+4>>2]=0;Ha();V()}function Uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=oj(64);c=oj(12);F[c+8>>2]=F[F[a+4>>2]+80>>2];F[c>>2]=13248;F[c+4>>2]=0;f=Zb(f,c);a:{b:{if((b|0)<0){c=f;break b}h=a+8|0;c=F[a+12>>2];e=F[a+8>>2];g=c-e>>2;c:{if((g|0)>(b|0)){break c}d=b+1|0;if(b>>>0>=g>>>0){$b(h,d-g|0);break c}if(d>>>0>=g>>>0){break c}e=e+(d<<2)|0;if((e|0)!=(c|0)){while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ia[F[F[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}F[a+12>>2]=e}a=F[h>>2]+(b<<2)|0;c=F[a>>2];F[a>>2]=f;if(!c){break a}}ia[F[F[c>>2]+4>>2]](c)}return(b^-1)>>>31|0}function Wi(a,b){var c=0,d=0,e=0,f=0;d=fa-16|0;fa=d;F[d+12>>2]=b;c=fa-208|0;fa=c;F[c+204>>2]=b;b=c+160|0;Qi(b,0,40);F[c+200>>2]=F[c+204>>2];a:{if((bj(0,a,c+200|0,c+80|0,b)|0)<0){break a}f=F[3885]>=0;b=F[3866];if(F[3884]<=0){F[3866]=b&-33}b:{c:{d:{if(!F[3878]){F[3878]=80;F[3873]=0;F[3870]=0;F[3871]=0;e=F[3877];F[3877]=c;break d}if(F[3870]){break c}}if(Si(15464)){break b}}bj(15464,a,c+200|0,c+80|0,c+160|0)}if(e){ia[F[3875]](15464,0,0)|0;F[3878]=0;F[3877]=e;F[3873]=0;F[3870]=0;F[3871]=0}F[3866]=F[3866]|b&32;if(!f){break a}}fa=c+208|0;fa=d+16|0}function Na(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=F[a+8>>2];e=F[a>>2];if(g>>>0<=d-e>>2>>>0){d=F[a+4>>2]-e|0;f=d>>2;d=f>>>0>>0?b+d|0:c;h=d-b|0;if(h){Pi(e,b,h)}if(f>>>0>>0){b=F[a+4>>2];c=c-d|0;if((c|0)>0){b=Oi(b,d,c)+c|0}F[a+4>>2]=b;return}F[a+4>>2]=e+h;return}if(e){F[a+4>>2]=e;mj(e);F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=oj(e);F[a>>2]=c;F[a+4>>2]=c;F[a+8>>2]=c+e;if(f){c=Oi(c,b,f)+f|0}F[a+4>>2]=c;return}Ha();V()}function oi(a,b,c){var d=0,e=0,f=0,g=0;a:{if((b|c)>=0){b:{if(b>>>0>1431655765){break b}d=L(b,3);pi(a,d,13680);pi(a+12|0,d,13684);d=F[a+24>>2];c:{if(F[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=F[a+28>>2];f=c<<2;c=oj(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>0){Oi(c,d,e)}F[a+32>>2]=f;F[a+28>>2]=g;F[a+24>>2]=c;if(!d){break c}mj(d)}F[a+80>>2]=0;F[a+84>>2]=0;c=F[a+76>>2];F[a+76>>2]=0;if(c){mj(c)}F[a+68>>2]=0;F[a+72>>2]=0;c=a- -64|0;a=F[c>>2];F[c>>2]=0;if(!a){break b}mj(a)}a=b>>>0<1431655766}else{a=0}return a}Ua(1336);V()}function Ub(a){var b=0,c=0,d=0,e=0,f=0;d=F[a+8>>2];a:{if(G[d+84|0]){break a}b=F[a+16>>2];if(!b|!G[b+84|0]){break a}c=F[d+72>>2];e=F[d+68>>2];D[b+84|0]=0;c=c-e>>2;f=F[b+68>>2];e=F[b+72>>2]-f>>2;b:{if(c>>>0>e>>>0){eb(b+68|0,c-e|0,2344);d=F[a+8>>2];break b}if(c>>>0>=e>>>0){break b}F[b+72>>2]=f+(c<<2)}b=G[d+84|0];if(b){break a}c=F[d+68>>2];if((c|0)==F[d+72>>2]){break a}e=F[F[a+16>>2]+68>>2];if(!b){b=0;while(1){f=b<<2;F[f+e>>2]=F[c+f>>2];b=b+1|0;c=F[d+68>>2];if(b>>>0>2]-c>>2>>>0){continue}break}break a}F[e>>2]=0}return F[a+16>>2]}function Tf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=F[a+4>>2];if((c|0)!=F[a+8>>2]){d=F[b+4>>2];F[c>>2]=F[b>>2];F[c+4>>2]=d;F[c+8>>2]=F[b+8>>2];F[a+4>>2]=c+12;return}a:{f=F[a>>2];g=c-f|0;d=(g|0)/12|0;c=d+1|0;if(c>>>0<357913942){e=d<<1;e=d>>>0<178956970?c>>>0>e>>>0?c:e:357913941;if(e){if(e>>>0>=357913942){break a}c=oj(L(e,12))}else{c=0}d=c+L(d,12)|0;h=F[b+4>>2];F[d>>2]=F[b>>2];F[d+4>>2]=h;F[d+8>>2]=F[b+8>>2];b=d+L((g|0)/-12|0,12)|0;if((g|0)>0){Oi(b,f,g)}F[a+8>>2]=c+L(e,12);F[a+4>>2]=d+12;F[a>>2]=b;if(f){mj(f)}return}Ha();V()}Ua(1336);V()}function Ge(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{c=F[a+216>>2];if((c|0)==F[a+220>>2]){break a}while(1){b:{c=F[L(e,144)+c>>2];if((c|0)<0){break b}d=F[a+4>>2];f=F[d+8>>2];if((c|0)>=F[d+12>>2]-f>>2){break b}d=0;c=F[(c<<2)+f>>2];if((ia[F[F[c>>2]+24>>2]](c)|0)<=0){break b}while(1){if((ia[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ia[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break b}break}a=F[a+216>>2]+L(e,144)|0;e=G[a+100|0]?a+4|0:0;break a}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}return 0}return e|0}function ac(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=F[a+60>>2];a:{if(!c){break a}F[c+4>>2]=a+48;if(!(ia[F[F[c>>2]+12>>2]](c)|0)){break a}b:{c=ia[F[F[a>>2]+24>>2]](a)|0;if((c|0)<=0){break b}while(1){c:{f=F[(ia[F[F[a>>2]+28>>2]](a)|0)+4>>2];g=ia[F[F[a>>2]+20>>2]](a,d)|0;e=F[a+60>>2];if(!(ia[F[F[e>>2]+8>>2]](e,F[F[f+8>>2]+(g<<2)>>2])|0)){break c}d=d+1|0;if((c|0)!=(d|0)){continue}break b}break}return 0}d=0;if(!(ia[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(ia[F[F[a>>2]+40>>2]](a,b)|0)){break a}d=ia[F[F[a>>2]+44>>2]](a)|0}return d|0}function rb(a){var b=0,c=0,d=0,e=0;c=F[a+132>>2];if(c){b=F[a+136>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;mj(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+132>>2]}F[a+136>>2]=c;mj(b)}c=F[a+120>>2];if(c){b=F[a+124>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;mj(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+120>>2]}F[a+124>>2]=c;mj(b)}b=F[a+108>>2];if(b){F[a+112>>2]=b;mj(b)}b=F[a+96>>2];if(b){F[a+100>>2]=b;mj(b)}be(a+76|0);be(a+56|0);be(a+36|0);be(a+16|0)}function Lb(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2156;b=F[a+60>>2];if(b){c=F[a- -64>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-4|0;d=F[c>>2];F[c>>2]=0;if(d){ob(d)}if((b|0)!=(c|0)){continue}break}c=F[a+60>>2]}F[a+64>>2]=b;mj(c)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}b=F[a+36>>2];if(b){c=F[a+40>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-24|0;ia[F[F[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}c=F[a+36>>2]}F[a+40>>2]=b;mj(c)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;mj(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;mj(b)}return a|0}function pj(a,b,c,d,e,f,g){var h=0,i=0,j=0;h=fa-16|0;fa=h;if((b^-1)-17>>>0>=c>>>0){if(G[a+11|0]>>>7|0){j=F[a>>2]}else{j=a}a:{if(b>>>0<2147483623){F[h+8>>2]=b<<1;F[h+12>>2]=b+c;c=fa-16|0;fa=c;fa=c+16|0;c=h+8|0;i=h+12|0;c=F[(I[i>>2]>2]?c:i)>>2];if(c>>>0>=11){i=c+16&-16;c=i-1|0;c=(c|0)==11?i:c}else{c=10}break a}c=-18}i=c+1|0;c=oj(i);if(f){nj(c,g,f)}d=d-e|0;if(d){nj(c+f|0,e+j|0,d)}if((b|0)!=10){mj(j)}F[a>>2]=c;F[a+8>>2]=i|-2147483648;b=a;a=d+f|0;F[b+4>>2]=a;D[h+7|0]=0;D[a+c|0]=G[h+7|0];fa=h+16|0;return}$f();V()}function zb(a){var b=0,c=0,d=0,e=0;c=F[a+640>>2];if(c){b=F[a+644>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;mj(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+640>>2]}F[a+644>>2]=c;mj(b)}c=F[a+628>>2];if(c){b=F[a+632>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;mj(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+628>>2]}F[a+632>>2]=c;mj(b)}b=F[a+616>>2];if(b){F[a+620>>2]=b;mj(b)}b=F[a+604>>2];if(b){F[a+608>>2]=b;mj(b)}be(a+584|0);be(a+564|0);be(a+544|0)}function vb(a){var b=0,c=0,d=0,e=0;c=F[a+128>>2];if(c){b=F[a+132>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;mj(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+128>>2]}F[a+132>>2]=c;mj(b)}c=F[a+116>>2];if(c){b=F[a+120>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=F[e>>2];if(d){F[b-8>>2]=d;mj(d)}b=e;if((c|0)!=(b|0)){continue}break}b=F[a+116>>2]}F[a+120>>2]=c;mj(b)}b=F[a+104>>2];if(b){F[a+108>>2]=b;mj(b)}b=F[a+92>>2];if(b){F[a+96>>2]=b;mj(b)}be(a+72|0);be(a+52|0);be(a+32|0)}function He(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=F[a+216>>2];if((c|0)!=F[a+220>>2]){while(1){a:{c=F[L(e,144)+c>>2];if((c|0)<0){break a}d=F[a+4>>2];f=F[d+8>>2];if((c|0)>=F[d+12>>2]-f>>2){break a}d=0;c=F[(c<<2)+f>>2];if((ia[F[F[c>>2]+24>>2]](c)|0)<=0){break a}while(1){if((ia[F[F[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((ia[F[F[c>>2]+24>>2]](c)|0)>(d|0)){continue}break a}break}return(F[a+216>>2]+L(e,144)|0)+104|0}e=e+1|0;c=F[a+216>>2];if(e>>>0<(F[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a=fa-32|0;fa=a;a:{d=$i(c);if(d>>>0<4294967280){b:{c:{if(d>>>0>=11){f=d+16&-16;e=oj(f);F[a+24>>2]=f|-2147483648;F[a+16>>2]=e;F[a+20>>2]=d;break c}D[a+27|0]=d;e=a+16|0;if(!d){break b}}Oi(e,c,d)}D[d+e|0]=0;D[a+4|0]=0;F[a>>2]=1701667182;D[a+11|0]=4;d=F[b+4>>2];c=-1;d:{if(!d){break d}d=Di(d,a,a+16|0);c=-1;if(!d){break d}c=Hi(b,F[d+24>>2])}b=c;if(D[a+11|0]<0){mj(F[a>>2])}if(D[a+27|0]<0){mj(F[a+16>>2])}fa=a+32|0;break a}$f();V()}return b|0}function nh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=fa-16|0;fa=d;F[d+12>>2]=0;a:{e=$i(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){f=e+16&-16;a=oj(f);F[d+8>>2]=f|-2147483648;F[d>>2]=a;F[d+4>>2]=e;break c}D[d+11|0]=e;a=d;if(!e){break b}}Oi(a,c,e)}D[a+e|0]=0;a=ng(b,d);d:{if((a|0)==(b+4|0)){break d}b=F[a+32>>2];a=F[a+28>>2];if((b-a|0)!=4){break d}F[d+12>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24)}a=F[d+12>>2];if(D[d+11|0]<0){mj(F[d>>2])}fa=d+16|0;break a}$f();V()}return a|0}function gj(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!F[F[4227]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){D[a+1|0]=b&63|128;D[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){D[a+2|0]=b&63|128;D[a|0]=b>>>12|224;D[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){D[a+3|0]=b&63|128;D[a|0]=b>>>18|240;D[a+2|0]=b>>>6&63|128;D[a+1|0]=b>>>12&63|128;a=4;break a}}F[4190]=25;a=-1}else{a=1}break a}D[a|0]=b;a=1}return a}function ri(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13756;b=F[a+68>>2];if(b){F[a+72>>2]=b;mj(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;mj(b)}b=F[a+44>>2];if(b){F[a+48>>2]=b;mj(b)}b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}b=F[a+20>>2];if(b){F[a+24>>2]=b;mj(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ob(b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;mj(b)}b=F[a+4>>2];F[a+4>>2]=0;if(b){ag(b)}return a|0}function Ja(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=Qi(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(d){if(d>>>0>=1073741824){break a}c=oj(d<<2)}b=b<<2;b=Qi((h<<2)+c|0,0,b)+b|0;if((g|0)>0){Oi(c,f,g)}F[a+8>>2]=(d<<2)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){mj(f)}return}Ha();V()}Ua(1336);V()}function re(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=Qi(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>>0<2147483640?d>>>0>i>>>0?d:i:536870911;if(d){if(d>>>0>=536870912){break a}c=oj(d<<3)}b=b<<3;b=Qi((h<<3)+c|0,0,b)+b|0;if((g|0)>0){Oi(c,f,g)}F[a+8>>2]=(d<<3)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){mj(f)}return}Ha();V()}Ua(1336);V()}function pg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a>>2];a=F[e+4>>2];c=F[e+8>>2];if(a>>>0>>0){F[a>>2]=F[b>>2];F[e+4>>2]=a+4;return}a:{f=F[e>>2];g=a-f|0;d=g>>2;a=d+1|0;if(a>>>0<1073741824){h=d<<2;c=c-f|0;d=c>>1;c=c>>>0<2147483644?a>>>0>d>>>0?a:d:1073741823;if(c){if(c>>>0>=1073741824){break a}a=oj(c<<2)}else{a=0}d=h+a|0;F[d>>2]=F[b>>2];if((g|0)>0){Oi(a,f,g)}F[e+8>>2]=a+(c<<2);F[e+4>>2]=d+4;F[e>>2]=a;if(f){mj(f)}return}Ha();V()}Ua(1336);V()}function og(a,b){var c=0,d=0,e=0,f=0;c=a+4|0;a=ng(a,b);a:{if((c|0)==(a|0)){break a}b=D[a+39|0]<0?F[a+28>>2]:a+28|0;while(1){a=b;b=a+1|0;c=D[a|0];if((c|0)==32|c-9>>>0<5){continue}break}b:{c:{d:{c=D[a|0];switch(c-43|0){case 0:break c;case 2:break d;default:break b}}e=1}c=D[b|0];a=b}if(c-48>>>0<10){while(1){d=(L(d,10)-D[a|0]|0)+48|0;b=D[a+1|0];a=a+1|0;if(b-48>>>0<10){continue}break}}a=e?d:0-d|0;if((a|0)==-1){break a}f=(a|0)!=0}return f}function fc(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2356;b=F[a+60>>2];F[a+60>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}d=F[a+36>>2];if(d){c=F[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;mj(b)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;mj(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;mj(b)}return a|0}function gc(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=2356;b=F[a+60>>2];F[a+60>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}d=F[a+36>>2];if(d){c=F[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+36>>2]}F[a+40>>2]=d;mj(b)}F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;mj(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;mj(b)}mj(a)}function sg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=F[a+8>>2];c=F[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=Qi(c,0,b)+b|0}F[a+4>>2]=c;return}a:{f=F[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>=0){c=0;e=e-f|0;d=e>>>0<2147483646?d>>>0>e>>>0?d:e:2147483647;if(d){if((d|0)<0){break a}c=oj(d<<1)}b=b<<1;b=Qi((h<<1)+c|0,0,b)+b|0;if((g|0)>0){Oi(c,f,g)}F[a+8>>2]=(d<<1)+c;F[a+4>>2]=b;F[a>>2]=c;if(f){mj(f)}return}Ha();V()}Ua(1336);V()}function Db(a,b){var c=0,d=0,e=0,f=0,g=0;a:{c=F[a+4>>2];e=F[a>>2];f=c-e|0;b:{if(f>>>0>>0){g=b-f|0;d=F[a+8>>2];if(g>>>0<=d-c>>>0){if(g){c=Qi(c,0,g)+g|0}F[a+4>>2]=c;return}if((b|0)<0){break a}c=d-e|0;d=c<<1;d=c>>>0<1073741823?b>>>0>d>>>0?b:d:2147483647;c=oj(d);Qi(c+f|0,0,g);if((f|0)>0){Oi(c,e,f)}F[a+8>>2]=c+d;F[a+4>>2]=b+c;F[a>>2]=c;if(!e){break b}mj(e);return}if(b>>>0>=f>>>0){break b}F[a+4>>2]=b+e}return}Ha();V()}function Oa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=fa-16|0;fa=d;e=F[a+4>>2];a:{if((e|0)==-1){break a}c=F[b+20>>2];if(!!F[b+16>>2]&(c|0)>=0|(c|0)>0){break a}Aa(b,F[b+4>>2],F[a+8>>2],F[a+12>>2]);c=F[b+20>>2];if(!!F[b+16>>2]&(c|0)>=0|(c|0)>0){break a}c=a+20|0;Aa(b,F[b+4>>2],c,c+4|0);c=F[b+20>>2];f=F[b+16>>2];D[d+15|0]=F[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}Aa(b,F[b+4>>2],d+15|0,d+16|0)}fa=d+16|0;return(e|0)!=-1|0}function Xf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=F[a+8>>2];b:{if((b|0)<0){break b}c=F[a+4>>2];e=F[c>>2];d=F[c+4>>2]-e>>2;c:{if(d>>>0>>0){Ja(c,b-d|0);f=F[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}F[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=F[a+4>>2];c=F[a>>2];e=F[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}F[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}xc();V()}function af(a){var b=0,c=0,d=0,e=0,f=0;b=F[a+4>>2];if((b|0)!=F[a+8>>2]){F[b>>2]=F[2863];F[a+4>>2]=b+4;return}a:{f=F[a>>2];d=b-f|0;e=d>>2;b=e+1|0;if(b>>>0<1073741824){c=d>>1;c=d>>>0<2147483644?b>>>0>c>>>0?b:c:1073741823;if(c){if(c>>>0>=1073741824){break a}b=oj(c<<2)}else{b=0}e=b+(e<<2)|0;F[e>>2]=F[2863];if((d|0)>0){Oi(b,f,d)}F[a+8>>2]=b+(c<<2);F[a+4>>2]=e+4;F[a>>2]=b;if(f){mj(f)}return}Ha();V()}Ua(1336);V()}function Uh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=fa-16|0;fa=d;ie(d,a,b,c);F[a+24>>2]=F[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=G[d+15|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}sj(a,F[d+4>>2],F[d+8>>2]);break a}g=a;a=(c|0)<0;rj(g,a?F[d+4>>2]:b,a?F[d+8>>2]:f)}if(D[d+15|0]<0){mj(F[d+4>>2])}fa=d+16|0;return e|0}function Th(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=fa-16|0;fa=d;he(d,a,b,c);F[a+24>>2]=F[d>>2];e=a+24|0;a:{if((e|0)==(d|0)){break a}b=d|4;f=G[d+15|0];c=f<<24>>24;a=a+28|0;if(D[a+11|0]>=0){if((c|0)>=0){c=F[b+4>>2];F[a>>2]=F[b>>2];F[a+4>>2]=c;F[a+8>>2]=F[b+8>>2];break a}sj(a,F[d+4>>2],F[d+8>>2]);break a}g=a;a=(c|0)<0;rj(g,a?F[d+4>>2]:b,a?F[d+8>>2]:f)}if(D[d+15|0]<0){mj(F[d+4>>2])}fa=d+16|0;return e|0}function Ih(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a=fa-32|0;fa=a;e=D[b+24|0];f=F[3419];F[a+24>>2]=F[3418];F[a+28>>2]=f;f=F[3417];F[a+16>>2]=F[3416];F[a+20>>2]=f;a:{b:{c=Pc(b,c,e,a+16|0);if(c){F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;b=0;if(e){if((e|0)<0){break b}e=e<<2;b=oj(e);g=Oi(b,a+16|0,e)+e|0}e=F[d>>2];if(e){F[d+4>>2]=e;mj(e)}F[d+8>>2]=g;F[d+4>>2]=g;F[d>>2]=b}fa=a+32|0;break a}Ha();V()}return c|0}function Ye(a,b){var c=0,d=0,e=0,f=0;d=F[a+12>>2];c=F[a+16>>2]-d>>2;a:{if(c>>>0>>0){Ja(a+12|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}F[a+16>>2]=d+(b<<2)}b:{c=F[a>>2];c:{if(F[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=F[a+4>>2];e=b<<2;b=oj(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){Oi(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break c}mj(c)}return}Ua(1336);V()}function Ti(a,b,c){var d=0,e=0,f=0;d=F[c+16>>2];a:{if(!d){if(Si(c)){break a}d=F[c+16>>2]}f=F[c+20>>2];if(d-f>>>0>>0){return ia[F[c+36>>2]](c,a,b)|0}b:{if(F[c+80>>2]<0){d=0;break b}e=b;while(1){d=e;if(!d){d=0;break b}e=d-1|0;if(G[e+a|0]!=10){continue}break}e=ia[F[c+36>>2]](c,a,d)|0;if(e>>>0>>0){break a}a=a+d|0;b=b-d|0;f=F[c+20>>2]}Oi(f,a,b);F[c+20>>2]=F[c+20>>2]+b;e=b+d|0}return e}function qh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=fa-16|0;fa=d;a:{e=$i(c);if(e>>>0<4294967280){b:{c:{if(e>>>0>=11){g=e+16&-16;f=oj(g);F[d+8>>2]=g|-2147483648;F[d>>2]=f;F[d+4>>2]=e;break c}D[d+11|0]=e;f=d;if(!e){break b}}Oi(f,c,e)}D[e+f|0]=0;f=a+16|0;c=Ei(b,d,f);b=D[a+27|0];a=F[a+16>>2];if(D[d+11|0]<0){mj(F[d>>2])}fa=d+16|0;a=c?(b|0)<0?a:f:0;break a}$f();V()}return a|0}function Xe(a){var b=0,c=0,d=0,e=0;if(G[a+76|0]){D[a+76|0]=0;d=F[a+60>>2];c=F[a+72>>2]+7|0;b=c>>>0<7?1:b;e=b>>>3|0;c=b<<29|c>>>3;b=c+F[a+56>>2]|0;d=d+e|0;F[a+56>>2]=b;F[a+60>>2]=b>>>0>>0?d+1|0:d}if(H[a+38>>1]<=513){D[a+132|0]=0;d=F[a+116>>2];b=0;c=F[a+128>>2]+7|0;b=c>>>0<7?1:b;e=b>>>3|0;c=b<<29|c>>>3;b=c+F[a+112>>2]|0;d=d+e|0;F[a+112>>2]=b;F[a+116>>2]=b>>>0>>0?d+1|0:d}}function Wa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=fa+-64|0;fa=d;e=ia[F[F[a>>2]+44>>2]](a,b)|0;a=ia[F[F[a>>2]+40>>2]](a,b)|0;f=Xa(d);g=F[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=F[(a<<2)+13616>>2]}else{a=-1}a=L(a,e);Ya(f,g,h,i,0,a,a>>31);a=Za(oj(96),f);_a(a,c);D[a+84|0]=1;F[a+72>>2]=F[a+68>>2];F[a+60>>2]=F[b+60>>2];fa=d- -64|0;return a|0}function se(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=F[c+20>>2];e=F[c+12>>2];f=F[c+16>>2];if((d|0)>=(e|0)&f>>>0>=I[c+8>>2]|(d|0)>(e|0)){break a}e=D[f+F[c>>2]|0];f=f+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;b:{if((e|0)<0){if(!se(a+1|0,b,c)){break a}c=F[b>>2];a=F[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}F[b>>2]=c;F[b+4>>2]=a;g=1}return g}function mg(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>10){break a}d=F[c+20>>2];e=F[c+12>>2];f=F[c+16>>2];if((d|0)>=(e|0)&f>>>0>=I[c+8>>2]|(d|0)>(e|0)){break a}e=D[f+F[c>>2]|0];f=f+1|0;d=f?d:d+1|0;F[c+16>>2]=f;F[c+20>>2]=d;b:{if((e|0)<0){if(!mg(a+1|0,b,c)){break a}c=F[b>>2];a=F[b+4>>2]<<7|c>>>25;c=e&127|c<<7;break b}a=0;c=e&255}F[b>>2]=c;F[b+4>>2]=a;g=1}return g}function ff(a,b){var c=0,d=0,e=0,f=0,g=0;F[a+144>>2]=b;c=F[(ia[F[F[b>>2]+32>>2]](b)|0)+32>>2];e=F[c>>2]+F[c+16>>2]|0;d=F[(ia[F[F[b>>2]+32>>2]](b)|0)+32>>2];c=F[d+8>>2];d=F[d+16>>2];c=c-d|0;f=a,g=H[F[(ia[F[F[b>>2]+32>>2]](b)|0)+32>>2]+38>>1],E[f+38>>1]=g;F[a>>2]=e;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=c;F[a+12>>2]=0;f=a,g=ia[F[F[b>>2]+36>>2]](b)|0,F[f+148>>2]=g}function Dj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(wj(a,F[b+8>>2],e)){if(!(F[b+28>>2]==1|F[b+4>>2]!=(c|0))){F[b+28>>2]=d}return}a:{if(!wj(a,F[b>>2],e)){break a}if(!(F[b+16>>2]!=(c|0)&F[b+20>>2]!=(c|0))){if((d|0)!=1){break a}F[b+32>>2]=1;return}F[b+20>>2]=c;F[b+32>>2]=d;F[b+40>>2]=F[b+40>>2]+1;if(!(F[b+36>>2]!=1|F[b+24>>2]!=2)){D[b+54|0]=1}F[b+44>>2]=4}}function Gh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{if(I[b+80>>2]>65535){break a}f=F[b+96>>2];b=F[b+100>>2]-f|0;a=(b|0)/12|0;e=L(a,6);g=(e|0)==(c|0);if(!b|(c|0)!=(e|0)){break a}g=1;e=a>>>0>1?a:1;a=0;while(1){b=L(a,6)+d|0;c=L(a,12)+f|0;E[b>>1]=F[c>>2];E[b+2>>1]=F[c+4>>2];E[b+4>>1]=F[c+8>>2];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return g|0}function Ae(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=11304;b=F[a+48>>2];F[a+48>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;mj(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;mj(b)}return a|0}function Be(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=11304;b=F[a+48>>2];F[a+48>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;mj(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;mj(b)}mj(a)}function gg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=F[a+32>>2];f=F[b+8>>2];e=F[b+12>>2];d=F[b+20>>2];h=f;f=F[b+16>>2];g=f+4|0;d=g>>>0<4?d+1|0:d;a:{if(h>>>0>>0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}c=f+F[b>>2]|0;e=G[c|0]|G[c+1|0]<<8|(G[c+2|0]<<16|G[c+3|0]<<24);F[b+16>>2]=g;F[b+20>>2]=d;c=0;if((e|0)<0){break a}F[F[a+4>>2]+80>>2]=e;c=1}return c|0}function Bj(a,b,c,d){D[a+53|0]=1;a:{if(F[a+4>>2]!=(c|0)){break a}D[a+52|0]=1;c=F[a+16>>2];b:{if(!c){F[a+36>>2]=1;F[a+24>>2]=d;F[a+16>>2]=b;if((d|0)!=1){break a}if(F[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=F[a+24>>2];if((c|0)==2){F[a+24>>2]=d;c=d}if(F[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}F[a+36>>2]=F[a+36>>2]+1}D[a+54|0]=1}}function ig(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=F[a+32>>2];e=F[d+12>>2];g=F[d+8>>2];b=g;c=F[d+20>>2];h=F[d+16>>2];f=h+4|0;c=f>>>0<4?c+1|0:c;if((c|0)<=(e|0)&b>>>0>=f>>>0|(c|0)<(e|0)){b=h+F[d>>2]|0;b=G[b|0]|G[b+1|0]<<8|(G[b+2|0]<<16|G[b+3|0]<<24);F[d+16>>2]=f;F[d+20>>2]=c;F[F[a+4>>2]+80>>2]=b}return(c|0)<=(e|0)&f>>>0<=g>>>0|(c|0)<(e|0)}function Je(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=fa-16|0;fa=d;F[a+4>>2]=b;b=F[b+64>>2];e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Le(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=F[a+4>>2];e=F[b+56>>2];b=F[b+52>>2];D[d+14|0]=0;Le(a+36|0,e-b>>2,d+14|0);b=F[c+12>>2];F[a+16>>2]=F[c+8>>2];F[a+20>>2]=b;b=F[c+4>>2];F[a+8>>2]=F[c>>2];F[a+12>>2]=b;fa=d+16|0}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ia[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=F[F[a+36>>2]>>2];f=a+48|0;c=0;if(!(ia[F[F[d>>2]+20>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=F[F[a+36>>2]+(c<<2)>>2];if(ia[F[F[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function bc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=ia[F[F[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<=0){break a}d=F[F[a+36>>2]>>2];f=a+48|0;c=0;if(!(ia[F[F[d>>2]+16>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=F[F[a+36>>2]+(c<<2)>>2];if(ia[F[F[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function ge(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(b){g=0-G[a+12|0]&255;h=F[a>>2];e=F[a+8>>2];while(1){i=d<<1;a:{if(e>>>0>4095){break a}d=F[a+4>>2];if((d|0)<=0){break a}d=d-1|0;F[a+4>>2]=d;e=G[d+h|0]|e<<8}f=e&255;d=f>>>0>>0;j=f;f=L(e>>>8|0,g);e=d?j+f|0:e-(g+f|0)|0;F[a+8>>2]=e;d=d|i;b=b-1|0;if(b){continue}break}}F[c>>2]=d}function vi(a){F[a>>2]=0;F[a+4>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;D[a+24|0]=1;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+60>>2]=0;F[a+64>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+88>>2]=0;F[a+92>>2]=0;F[a+68>>2]=a}function uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=fa-16|0;fa=d;F[a+4>>2]=b;e=F[b>>2];b=F[b+4>>2];D[d+15|0]=0;Le(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=F[a+4>>2];e=F[b+28>>2];b=F[b+24>>2];D[d+14|0]=0;Le(a+36|0,e-b>>2,d+14|0);b=F[c+12>>2];F[a+16>>2]=F[c+8>>2];F[a+20>>2]=b;b=F[c+4>>2];F[a+8>>2]=F[c>>2];F[a+12>>2]=b;fa=d+16|0}function ni(a){var b=0;F[a>>2]=0;F[a+4>>2]=0;F[a+56>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;b=a- -64|0;F[b>>2]=0;F[b+4>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;F[a+80>>2]=0;F[a+84>>2]=0;F[a+60>>2]=a}function qe(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!qe(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function ee(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!ee(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function db(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!db(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Sf(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Sf(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Oe(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Oe(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Ib(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Ib(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Ec(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Ec(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Ci(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{if(a>>>0>5){break a}f=F[c+20>>2];d=f;g=F[c+12>>2];e=F[c+16>>2];if((d|0)>=(g|0)&e>>>0>=I[c+8>>2]|(d|0)>(g|0)){break a}d=G[e+F[c>>2]|0];e=e+1|0;f=e?f:f+1|0;F[c+16>>2]=e;F[c+20>>2]=f;if(d&128){if(!Ci(a+1|0,b,c)){break a}d=d&127|F[b>>2]<<7}F[b>>2]=d;h=1}return h}function Hh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;g=F[b+96>>2];b=F[b+100>>2]-g|0;if(!((b|0)!=(c|0)|!b)){a=(c|0)/12|0;h=a>>>0>1?a:1;a=0;while(1){e=L(a,12);f=e+d|0;e=e+g|0;F[f>>2]=F[e>>2];F[f+4>>2]=F[e+4>>2];F[f+8>>2]=F[e+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}return(b|0)==(c|0)|0}function Vi(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(F[a>>2]!=F[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=G[a|0];e=G[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function Dh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[b+4>>2];a:{if(!d){break a}b=F[F[F[b+8>>2]+(c<<2)>>2]+60>>2];if((b|0)<0){break a}a=F[d+24>>2];c=F[d+28>>2];if((a|0)==(c|0)){break a}b:{while(1){e=F[a>>2];if((b|0)==F[e+24>>2]){break b}a=a+4|0;if((c|0)!=(a|0)){continue}break}e=0}}return e|0}function ag(a){var b=0,c=0,d=0;if(a){d=F[a+24>>2];if(d){c=F[a+28>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){eg(b+12|0,F[b+16>>2]);fg(b,F[b+4>>2]);mj(b)}if((d|0)!=(c|0)){continue}break}b=F[a+24>>2]}F[a+28>>2]=d;mj(b)}eg(a+12|0,F[a+16>>2]);fg(a,F[a+4>>2]);mj(a)}}function lf(a){var b=0,c=0,d=0;d=F[a>>2];if(d){b=F[a+4>>2];if((d|0)==(b|0)){b=d}else{while(1){c=F[b-12>>2];if(c){F[b-8>>2]=c;mj(c)}c=F[b-28>>2];if(c){F[b-24>>2]=c;mj(c)}c=F[b-40>>2];if(c){F[b-36>>2]=c;mj(c)}_e(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}b=F[a>>2]}F[a+4>>2]=d;mj(b)}}function wf(a){a=a|0;var b=0;F[a+8>>2]=12416;F[a>>2]=12204;b=F[a+96>>2];if(b){F[a+100>>2]=b;mj(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;mj(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;mj(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;mj(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){mj(b)}b=F[a+32>>2];if(b){mj(b)}return a|0}function ve(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;mj(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;mj(b)}return a|0}function xf(a){a=a|0;var b=0;F[a+8>>2]=12416;F[a>>2]=12204;b=F[a+96>>2];if(b){F[a+100>>2]=b;mj(b)}b=F[a+80>>2];if(b){F[a+84>>2]=b;mj(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;mj(b)}b=F[a+56>>2];if(b){F[a+60>>2]=b;mj(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){mj(b)}b=F[a+32>>2];if(b){mj(b)}mj(a)}function $i(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!G[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=F[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=G[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function Vf(a){a=a|0;var b=0,c=0,d=0;F[a>>2]=13312;b=F[a+20>>2];if(b){F[a+24>>2]=b;mj(b)}d=F[a+8>>2];if(d){c=F[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=F[c>>2];F[c>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=F[a+8>>2]}F[a+12>>2]=d;mj(b)}mj(a)}function Ba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=F[c+8>>2];e=F[c+16>>2];g=F[c+12>>2];f=g;d=F[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=G[e+F[c>>2]|0];i=e+1|0;f=i?d:d+1|0;F[c+16>>2]=i;F[c+20>>2]=f;F[a+4>>2]=b}return e>>>0>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function wj(a,b,c){var d=0;if(!c){return F[a+4>>2]==F[b+4>>2]}if((a|0)==(b|0)){return 1}d=F[a+4>>2];a=G[d|0];c=F[b+4>>2];b=G[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=G[c+1|0];a=G[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function vf(a){a=a|0;var b=0;F[a>>2]=12416;b=F[a+88>>2];if(b){F[a+92>>2]=b;mj(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;mj(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;mj(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}return a|0}function Qe(a,b){var c=0,d=0,e=0,f=0;a:{c=F[a>>2];b:{if(F[a+8>>2]-c>>2>>>0>=b>>>0){break b}if(b>>>0>=1073741824){break a}d=F[a+4>>2];e=b<<2;b=oj(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>0){Oi(b,c,d)}F[a+8>>2]=e;F[a+4>>2]=f;F[a>>2]=b;if(!c){break b}mj(c)}return}Ua(1336);V()}function Cf(a){a=a|0;var b=0;F[a>>2]=12416;b=F[a+88>>2];if(b){F[a+92>>2]=b;mj(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;mj(b)}b=F[a+60>>2];if(b){F[a- -64>>2]=b;mj(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}mj(a)}function Bh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=F[b+12>>2];b=F[b+8>>2];d=a-b|0;a=0;a:{if(!d){break a}a=d>>2;d=a>>>0>1?a:1;a=0;b:{while(1){e=F[b+(a<<2)>>2];if(F[e+60>>2]==(c|0)){break b}a=a+1|0;if((d|0)!=(a|0)){continue}break}a=0;break a}a=(a|0)==-1?0:e}return a|0}function Pe(a){var b=0;if(a){b=F[a+76>>2];if(b){F[a+80>>2]=b;mj(b)}b=F[a- -64>>2];if(b){F[a+68>>2]=b;mj(b)}b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}b=F[a+24>>2];if(b){F[a+28>>2]=b;mj(b)}b=F[a+12>>2];if(b){F[a+16>>2]=b;mj(b)}b=F[a>>2];if(b){F[a+4>>2]=b;mj(b)}mj(a)}}function ij(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=fa-16|0;fa=f;d=fa-16|0;fa=d;b=b-a>>2;while(1){if(b){F[d+12>>2]=a;e=b>>>1|0;F[d+12>>2]=F[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=F[d+12>>2];g=I[e>>2]>2];b=g?h:b;a=g?e+4|0:a;continue}break}fa=d+16|0;fa=f+16|0;return a}function _e(a){var b=0;b=F[a+84>>2];if(b){F[a+88>>2]=b;mj(b)}b=F[a+72>>2];if(b){F[a+76>>2]=b;mj(b)}b=F[a+52>>2];if(b){F[a+56>>2]=b;mj(b)}b=F[a+40>>2];if(b){F[a+44>>2]=b;mj(b)}b=F[a+28>>2];if(b){F[a+32>>2]=b;mj(b)}b=F[a+12>>2];if(b){mj(b)}a=F[a>>2];if(a){mj(a)}}function Re(a){var b=0,c=0,d=0;b=F[a+4>>2];d=F[a>>2];if((b|0)!=(d|0)){while(1){c=F[b-12>>2];if(c){F[b-8>>2]=c;mj(c)}c=F[b-28>>2];if(c){F[b-24>>2]=c;mj(c)}c=F[b-40>>2];if(c){F[b-36>>2]=c;mj(c)}_e(b-140|0);b=b-144|0;if((d|0)!=(b|0)){continue}break}}F[a+4>>2]=d}function qj(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<=10){d=a;D[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=oj(e);F[a>>2]=d;F[a+8>>2]=e|-2147483648;F[a+4>>2]=c}nj(d,b,c+1|0);return}$f();V()}function Va(a,b){var c=0,d=0;d=oj(40);F[d>>2]=-1;c=d+8|0;F[c+16>>2]=0;F[c+20>>2]=0;F[c+8>>2]=0;F[c>>2]=0;F[c+4>>2]=0;F[c+24>>2]=0;F[c+28>>2]=0;ia[F[F[a>>2]+16>>2]](a,d);a=F[b+88>>2];F[b+88>>2]=d;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;mj(b)}mj(a)}return 1}function fe(a){var b=0,c=0,d=0,e=0,f=0;d=G[a+12|0];c=F[a+8>>2];a:{if(c>>>0>4095){break a}b=F[a+4>>2];if((b|0)<=0){break a}b=b-1|0;F[a+4>>2]=b;c=G[b+F[a>>2]|0]|c<<8}d=0-d&255;b=L(d,c>>>8|0);e=c&255;f=e>>>0>>0;F[a+8>>2]=f?b+e|0:c-(b+d|0)|0;return f}function Eh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a=fa-16|0;fa=a;b=F[b+96>>2];F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;e=oj(12);c=Oi(e,b+L(c,12)|0,12);f=c+12|0;b=F[d>>2];if(b){F[d+4>>2]=b;mj(b)}F[d+8>>2]=c+12;F[d+4>>2]=f;F[d>>2]=e;fa=a+16|0;return 1}function Zb(a,b){F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=2012;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;F[a+36>>2]=0;F[a+40>>2]=0;F[a>>2]=2356;F[a+44>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;F[a+56>>2]=0;F[a+60>>2]=b;return a}function th(a){a=a|0;var b=0,c=0,d=0;if(a){if(D[a+27|0]<0){mj(F[a+16>>2])}b=F[a>>2];if(b){c=F[a+4>>2];if((c|0)==(b|0)){d=b}else{while(1){d=c-12|0;if(D[c-1|0]<0){mj(F[d>>2])}c=d;if((c|0)!=(b|0)){continue}break}d=F[a>>2]}F[a+4>>2]=b;mj(d)}mj(a)}}function jg(a,b,c,d){a:{if(!b){if((d|0)<0){return 0}Db(a,c);break a}if((d|0)<0){return 0}if(!(!d&F[a+4>>2]-F[a>>2]>>>0>=c>>>0)){Db(a,c)}if(!c){break a}Pi(F[a>>2],b,c)}b=F[a+28>>2];c=F[a+24>>2]+1|0;b=c?b:b+1|0;F[a+24>>2]=c;F[a+28>>2]=b;return 1}function yg(){var a=0;a=oj(40);E[a+38>>1]=0;F[a>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;D[a+29|0]=0;D[a+30|0]=0;D[a+31|0]=0;D[a+32|0]=0;D[a+33|0]=0;D[a+34|0]=0;D[a+35|0]=0;D[a+36|0]=0;return a|0}function dj(a){var b=0,c=0,d=0;if(D[F[a>>2]]-48>>>0>=10){return 0}while(1){d=F[a>>2];c=-1;if(b>>>0<=214748364){c=D[d|0]-48|0;b=L(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}F[a>>2]=d+1;b=c;if(D[d+1|0]-48>>>0<10){continue}break}return b}function ob(a){a=a|0;var b=0,c=0;if(a){b=F[a+88>>2];F[a+88>>2]=0;if(b){c=F[b+8>>2];if(c){F[b+12>>2]=c;mj(c)}mj(b)}b=F[a+68>>2];if(b){F[a+72>>2]=b;mj(b)}b=F[a+64>>2];F[a+64>>2]=0;if(b){c=F[b>>2];if(c){F[b+4>>2]=c;mj(c)}mj(b)}mj(a)}}function $d(a){a=a|0;var b=0;F[a+24>>2]=1140;F[a>>2]=11076;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){ob(b)}return a|0}function _f(a,b){var c=0,d=0,e=0;c=$i(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=oj(e);F[a+8>>2]=e|-2147483648;F[a>>2]=d;F[a+4>>2]=c;break b}D[a+11|0]=c;d=a;if(!c){break a}}Oi(d,b,c)}D[c+d|0]=0;return a}$f();V()}function Sj(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=Tj(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;ha=(g^ha)-((a>>>0>>0)+g|0)|0;return b}function ae(a){a=a|0;var b=0;F[a+24>>2]=1140;F[a>>2]=11076;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){ob(b)}mj(a)}function rj(a,b,c){var d=0,e=0,f=0;e=fa-16|0;fa=e;d=F[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=F[a>>2];F[a+4>>2]=c;nj(d,b,c);D[e+15|0]=0;D[c+d|0]=G[e+15|0];break a}f=a;a=F[a+4>>2];pj(f,d-1|0,(c-d|0)+1|0,a,a,c,b)}fa=e+16|0}function za(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;a=F[a+4>>2];a:{if((a|0)==-1){break a}D[c+15|0]=a;d=F[b+20>>2];if(!!F[b+16>>2]&(d|0)>=0|(d|0)>0){break a}Aa(b,F[b+4>>2],c+15|0,c+16|0)}fa=c+16|0;return(a|0)!=-1|0}function Rj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=L(e,f);g=c&65535;h=a&65535;i=L(g,h);f=(i>>>16|0)+L(f,g)|0;e=(f&65535)+L(e,h)|0;ha=(L(b,c)+j|0)+L(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function yj(a,b,c){var d=0;d=F[a+16>>2];if(!d){F[a+36>>2]=1;F[a+24>>2]=c;F[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(F[a+24>>2]!=2){break a}F[a+24>>2]=c;return}D[a+54|0]=1;F[a+24>>2]=2;F[a+36>>2]=F[a+36>>2]+1}}function Eg(){var a=0;a=oj(96);Xa(a);F[a+64>>2]=0;F[a+68>>2]=0;F[a+88>>2]=0;F[a+72>>2]=0;F[a+76>>2]=0;D[a+77|0]=0;D[a+78|0]=0;D[a+79|0]=0;D[a+80|0]=0;D[a+81|0]=0;D[a+82|0]=0;D[a+83|0]=0;D[a+84|0]=0;return a|0}function va(a,b){a=a|0;b=b|0;var c=0,d=0;F[b>>2]=2;c=F[b+8>>2];d=F[b+12>>2]-c|0;if(d>>>0<=4294967291){kg(b+8|0,d+4|0);c=F[b+8>>2]}b=c+d|0;a=F[a+4>>2];D[b|0]=a;D[b+1|0]=a>>>8;D[b+2|0]=a>>>16;D[b+3|0]=a>>>24}function fj(a,b,c,d,e){var f=0;f=fa-256|0;fa=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;Qi(f,b&255,d?c:256);if(!d){while(1){cj(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}cj(a,f,c)}fa=f+256|0}function fd(a){a=a|0;var b=0;F[a>>2]=5608;b=F[a+96>>2];if(b){mj(b)}b=F[a+84>>2];if(b){mj(b)}b=F[a+72>>2];if(b){mj(b)}b=F[a+60>>2];if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function dg(a){a=a|0;var b=0,c=0,d=0;b=F[a+8>>2];d=F[a+12>>2];if((b|0)==(d|0)){return 1}while(1){c=F[b>>2];c=ia[F[F[c>>2]+16>>2]](c,F[a+32>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function Ac(a){a=a|0;var b=0;F[a>>2]=3592;b=F[a+96>>2];if(b){mj(b)}b=F[a+84>>2];if(b){mj(b)}b=F[a+72>>2];if(b){mj(b)}b=F[a+60>>2];if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function Ua(a){var b=0,c=0,d=0,e=0,f=0;b=Y(8)|0;F[b>>2]=15156;F[b>>2]=15200;c=$i(a);d=oj(c+13|0);F[d+8>>2]=0;F[d+4>>2]=c;F[d>>2]=c;e=b,f=Oi(d+12|0,a,c+1|0),F[e+4>>2]=f;F[b>>2]=15248;Z(b|0,15280,13);V()}function gd(a){a=a|0;var b=0;F[a>>2]=5608;b=F[a+96>>2];if(b){mj(b)}b=F[a+84>>2];if(b){mj(b)}b=F[a+72>>2];if(b){mj(b)}b=F[a+60>>2];if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function Bc(a){a=a|0;var b=0;F[a>>2]=3592;b=F[a+96>>2];if(b){mj(b)}b=F[a+84>>2];if(b){mj(b)}b=F[a+72>>2];if(b){mj(b)}b=F[a+60>>2];if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function Hi(a,b){var c=0,d=0;c=F[a+8>>2];a=F[a+12>>2]-c|0;if(a){a=a>>2;d=a>>>0>1?a:1;a=0;while(1){if(F[F[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return-1} +function Ei(a,b,c){var d=0,e=0;d=a+4|0;a=ng(a,b);if((d|0)==(a|0)){return 0}b=F[a+32>>2];d=F[a+28>>2];if((b|0)!=(d|0)){uj(c,b-d|0);e=tj(c);c=F[a+28>>2];Oi(e,c,F[a+32>>2]-c|0)}return(b|0)!=(d|0)}function Zi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;a=ea(F[a+60>>2],b|0,c|0,d&255,e+8|0)|0;if(a){F[4190]=a;a=-1}else{a=0}fa=e+16|0;ha=a?-1:F[e+12>>2];return(a?-1:F[e+8>>2])|0}function Xa(a){F[a+8>>2]=0;F[a+12>>2]=0;F[a>>2]=0;F[a+40>>2]=0;F[a+44>>2]=0;F[a+28>>2]=9;D[a+24|0]=1;F[a+56>>2]=-1;F[a+60>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+48>>2]=0;F[a+52>>2]=0;return a}function Si(a){var b=0;b=F[a+72>>2];F[a+72>>2]=b-1|b;b=F[a>>2];if(b&8){F[a>>2]=b|32;return-1}F[a+4>>2]=0;F[a+8>>2]=0;b=F[a+44>>2];F[a+28>>2]=b;F[a+20>>2]=b;F[a+16>>2]=b+F[a+48>>2];return 0}function ui(a,b){a=a|0;b=b|0;var c=0,d=0;Ji(a,b);a:{if((b|0)<0){break a}c=F[a+88>>2];d=F[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){Pi(b,d,c)}F[a+88>>2]=b+c}}function uh(){var a=0,b=0;a=oj(40);F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=a+4;b=a+16|0;F[b>>2]=0;F[b+4>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+12>>2]=b;F[a+32>>2]=0;F[a+36>>2]=0;return a|0}function hc(a,b){a=a|0;b=b|0;var c=0,d=0;d=F[a+16>>2];c=0;a:{if(F[a+20>>2]-d>>2<=(b|0)){break a}b=F[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=Ub(F[F[a+36>>2]+(b<<2)>>2])}return c|0}function sj(a,b,c){var d=0,e=0;d=fa-16|0;fa=d;a:{if(c>>>0<=10){D[a+11|0]=c;nj(a,b,c);D[d+15|0]=0;D[a+c|0]=G[d+15|0];break a}e=a;a=G[a+11|0];pj(e,10,c-10|0,a,a,c,b)}fa=d+16|0}function kj(a){var b=0,c=0;b=F[3902];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ja()<<16>>>0){if(!(ca(a|0)|0)){break a}}F[3902]=a;return b}F[4190]=48;return-1}function Mf(a){a=a|0;var b=0;F[a+8>>2]=11900;F[a>>2]=12964;b=F[a+56>>2];if(b){F[a+60>>2]=b;mj(b)}F[a+8>>2]=12152;b=F[a+44>>2];if(b){mj(b)}b=F[a+32>>2];if(b){mj(b)}return a|0}function Gf(a){a=a|0;var b=0;F[a+8>>2]=12836;F[a>>2]=12672;b=F[a+56>>2];if(b){F[a+60>>2]=b;mj(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){mj(b)}b=F[a+32>>2];if(b){mj(b)}return a|0}function Sb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=F[a+8>>2];a:{if(D[d+24|0]<=0){break a}if(!_a(d,F[b+4>>2]-F[b>>2]>>2)){break a}e=ia[F[F[a>>2]+32>>2]](a,b,c)|0}return e|0}function ud(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;F[a+4>>2]=b;b=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=b;a=F[a+8>>2];if(G[a+24|0]==3){d=F[a+28>>2]==9}return d|0}function Nf(a){a=a|0;var b=0;F[a+8>>2]=11900;F[a>>2]=12964;b=F[a+56>>2];if(b){F[a+60>>2]=b;mj(b)}F[a+8>>2]=12152;b=F[a+44>>2];if(b){mj(b)}b=F[a+32>>2];if(b){mj(b)}mj(a)}function Hf(a){a=a|0;var b=0;F[a+8>>2]=12836;F[a>>2]=12672;b=F[a+56>>2];if(b){F[a+60>>2]=b;mj(b)}F[a+8>>2]=12652;b=F[a+44>>2];if(b){mj(b)}b=F[a+32>>2];if(b){mj(b)}mj(a)}function id(a){a=a|0;var b=0;F[a>>2]=5844;b=F[a+76>>2];if(b){mj(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function eg(a,b){if(b){eg(a,F[b>>2]);eg(a,F[b+4>>2]);a=F[b+28>>2];F[b+28>>2]=0;if(a){eg(a+12|0,F[a+16>>2]);fg(a,F[a+4>>2]);mj(a)}if(D[b+27|0]<0){mj(F[b+16>>2])}mj(b)}}function Vd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;F[a+4>>2]=b;d=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=d;return F[F[F[F[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9|0}function Ic(a){a=a|0;var b=0;F[a>>2]=3840;b=F[a+76>>2];if(b){mj(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function Yf(a){F[a+40>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;F[a>>2]=13312;F[a+12>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;F[a+32>>2]=0;E[a+36>>1]=0;return a}function hb(a,b){a=a|0;b=b|0;var c=0;a:{if(!(ia[F[F[a>>2]+36>>2]](a,b)|0)){break a}if(!(ia[F[F[a>>2]+40>>2]](a,b)|0)){break a}c=ia[F[F[a>>2]+44>>2]](a)|0}return c|0}function jd(a){a=a|0;var b=0;F[a>>2]=5844;b=F[a+76>>2];if(b){mj(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function Jc(a){a=a|0;var b=0;F[a>>2]=3840;b=F[a+76>>2];if(b){mj(b)}b=F[a+68>>2];F[a+68>>2]=0;if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function Zc(a){a=a|0;var b=0;a:{if(!F[a- -64>>2]|!F[a+68>>2]|(!F[a+44>>2]|!F[a+48>>2])){break a}if(!F[a+52>>2]|!F[a+56>>2]){break a}b=F[a+92>>2]!=-1}return b|0}function ua(a,b){a=a|0;b=b|0;var c=0;b=F[b+88>>2];if(!(!b|F[b>>2]!=2)){c=a;a=F[b+8>>2];F[c+4>>2]=G[a|0]|G[a+1|0]<<8|(G[a+2|0]<<16|G[a+3|0]<<24);c=1}return c|0}function nc(a){a=a|0;var b=0;F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){ob(b)}return a|0}function Bd(a){a=a|0;var b=0;a:{if(!F[a+48>>2]|!F[a+52>>2]|(!F[a+28>>2]|!F[a+32>>2])){break a}if(!F[a+36>>2]|!F[a+40>>2]){break a}b=F[a+76>>2]!=-1}return b|0}function Ke(a){a=a|0;var b=0;F[a>>2]=11900;b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}F[a>>2]=12152;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}return a|0}function Ff(a){a=a|0;var b=0;F[a>>2]=12836;b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}return a|0}function oc(a){a=a|0;var b=0;F[a>>2]=2476;b=F[a+20>>2];F[a+20>>2]=0;if(b){ia[F[F[b>>2]+4>>2]](b)}F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){ob(b)}mj(a)}function rf(a){a=a|0;var b=0;F[a>>2]=11900;b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}F[a>>2]=12152;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}mj(a)}function ic(a,b){a=a|0;b=b|0;var c=0,d=0;d=F[a+4>>2];a:{if(d){c=1;if(G[d+36|0]<2){break a}}c=ia[F[F[a>>2]+48>>2]](a,F[b+4>>2]-F[b>>2]>>2)|0}return c|0}function Lf(a){a=a|0;var b=0;F[a>>2]=12836;b=F[a+48>>2];if(b){F[a+52>>2]=b;mj(b)}F[a>>2]=12652;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}mj(a)}function Ag(){var a=0,b=0;b=oj(40);F[b>>2]=-1;a=b+8|0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;F[a+28>>2]=0;return b|0}function Ej(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(wj(a,F[b+8>>2],f)){Bj(b,c,d,e);return}a=F[a+8>>2];ia[F[F[a>>2]+20>>2]](a,b,c,d,e,f)}function Xd(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(G[F[a+4>>2]+36|0]>=2){b=0;if(!(ia[F[F[a>>2]+52>>2]](a)|0)){break a}}b=Va(a+24|0,F[a+16>>2])}return b|0}function Vg(){var a=0;a=oj(108);Fi(a);F[a+84>>2]=0;F[a+88>>2]=0;F[a>>2]=13696;F[a+92>>2]=0;F[a+96>>2]=0;F[a+100>>2]=0;F[a+104>>2]=0;return a|0}function Wd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(G[F[a+4>>2]+36|0]<=1){d=0;if(!(ia[F[F[a>>2]+52>>2]](a)|0)){break a}}d=lc(a,b,c)}return d|0}function Gi(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=L(b,12)+a|0;a=F[b+20>>2];if((F[b+24>>2]-a|0)<=0){break a}c=F[a>>2]}return c}function Ya(a,b,c,d,e,f,g){F[a>>2]=0;F[a+56>>2]=b;F[a+48>>2]=0;F[a+52>>2]=0;F[a+40>>2]=f;F[a+44>>2]=g;D[a+32|0]=e;F[a+28>>2]=d;D[a+24|0]=c}function wd(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(G[F[a+4>>2]+36|0]>=2){b=0;if(!Ba(a+24|0,Ub(a),c)){break a}}b=Va(a+24|0,F[a+16>>2])}return b|0}function vd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(G[F[a+4>>2]+36|0]<=1){d=0;if(!Ba(a+24|0,F[a+8>>2],c)){break a}}d=lc(a,b,c)}return d|0}function qi(a){a=a|0;var b=0;F[a>>2]=13696;b=F[a+96>>2];if(b){F[a+100>>2]=b;mj(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;mj(b)}ri(a);return a|0}function si(a){a=a|0;var b=0;F[a>>2]=13696;b=F[a+96>>2];if(b){F[a+100>>2]=b;mj(b)}b=F[a+84>>2];if(b){F[a+88>>2]=b;mj(b)}ri(a);mj(a)}function ld(a){a=a|0;var b=0;F[a>>2]=6060;b=F[a+76>>2];if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function fg(a,b){if(b){fg(a,F[b>>2]);fg(a,F[b+4>>2]);a=F[b+28>>2];if(a){F[b+32>>2]=a;mj(a)}if(D[b+27|0]<0){mj(F[b+16>>2])}mj(b)}}function Qc(a){a=a|0;var b=0;F[a>>2]=4068;b=F[a+76>>2];if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function lh(){var a=0;a=oj(28);F[a>>2]=0;F[a+4>>2]=0;F[a+24>>2]=0;F[a+16>>2]=0;F[a+20>>2]=0;F[a+8>>2]=0;F[a+12>>2]=0;return a|0}function tj(a){var b=0;if(G[a+11|0]>>>7|0){b=F[a+4>>2]}else{b=G[a+11|0]}if(!b){jj();V()}if(G[a+11|0]>>>7|0){a=F[a>>2]}return a}function fb(a){a=a|0;var b=0;F[a>>2]=2012;b=F[a+16>>2];if(b){F[a+20>>2]=b;mj(b)}b=F[a+4>>2];if(b){F[a+8>>2]=b;mj(b)}return a|0}function Xg(){var a=0,b=0;a=oj(24);F[a+4>>2]=0;F[a+8>>2]=0;b=a+16|0;F[b>>2]=0;F[b+4>>2]=0;F[a>>2]=a+4;F[a+12>>2]=b;return a|0}function Aj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(wj(a,F[b+8>>2],0)){yj(b,c,d);return}a=F[a+8>>2];ia[F[F[a>>2]+28>>2]](a,b,c,d)}function oj(a){var b=0;a=a?a:1;a:{while(1){b=lj(a);if(b){break a}b=F[4357];if(b){ia[b|0]();continue}break}ba();V()}return b}function md(a){a=a|0;var b=0;F[a>>2]=6060;b=F[a+76>>2];if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function Rc(a){a=a|0;var b=0;F[a>>2]=4068;b=F[a+76>>2];if(b){mj(b)}F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function ke(a,b){if(b){ke(a,F[b>>2]);ke(a,F[b+4>>2]);if(D[b+39|0]<0){mj(F[b+28>>2])}if(D[b+27|0]<0){mj(F[b+16>>2])}mj(b)}}function cd(a,b){a=a|0;b=b|0;var c=0;a:{switch(b|0){case 1:b=1;case 0:F[a+28>>2]=b;c=1;break;default:break a}}return c|0}function Hj(a){a=a|0;var b=0,c=0;F[a>>2]=15200;b=F[a+4>>2]-12|0;c=F[b+8>>2]-1|0;F[b+8>>2]=c;if((c|0)<0){mj(b)}return a|0}function Ng(){var a=0;a=oj(24);F[a+8>>2]=0;F[a+12>>2]=0;F[a+4>>2]=-1;F[a>>2]=1140;F[a+16>>2]=0;F[a+20>>2]=0;return a|0}function Qb(a,b,c){a=a|0;b=b|0;c=c|0;F[a+4>>2]=b;b=F[F[F[b+4>>2]+8>>2]+(c<<2)>>2];F[a+12>>2]=c;F[a+8>>2]=b;return 1}function Lc(a){a=a|0;var b=0;if(!(!F[a+60>>2]|!F[a+44>>2]|(!F[a+48>>2]|!F[a+52>>2]))){b=F[a+56>>2]!=0}return b|0}function kg(a,b){var c=0,d=0;Db(a,b);b=F[a+28>>2];c=b;d=b+1|0;b=F[a+24>>2]+1|0;F[a+24>>2]=b;F[a+28>>2]=b?c:d}function sf(a){a=a|0;var b=0;F[a>>2]=12152;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}return a|0}function od(a){a=a|0;var b=0;F[a>>2]=6284;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function Wc(a){a=a|0;var b=0;F[a>>2]=4304;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function Df(a){a=a|0;var b=0;F[a>>2]=12652;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}return a|0}function Vh(a){a=a|0;if(a){if(D[a+39|0]<0){mj(F[a+28>>2])}Wh(a+12|0,F[a+16>>2]);ke(a,F[a+4>>2]);mj(a)}}function sc(a){a=a|0;var b=0;if(!(!F[a+52>>2]|(!F[a+44>>2]|!F[a+48>>2]))){b=F[a+56>>2]!=0}return b|0}function tf(a){a=a|0;var b=0;F[a>>2]=12152;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}mj(a)}function pd(a){a=a|0;var b=0;F[a>>2]=6284;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function Xc(a){a=a|0;var b=0;F[a>>2]=4304;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function Mc(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|!b|G[b+24|0]!=3)){F[a+60>>2]=b;c=1}return c|0}function Ef(a){a=a|0;var b=0;F[a>>2]=12652;b=F[a+36>>2];if(b){mj(b)}b=F[a+24>>2];if(b){mj(b)}mj(a)}function zg(a,b,c){a=a|0;b=b|0;c=c|0;F[a+16>>2]=0;F[a+20>>2]=0;F[a>>2]=b;F[a+8>>2]=c;F[a+12>>2]=0}function _c(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|G[b+24|0]!=3)){F[a- -64>>2]=b;c=1}return c|0}function Gb(a){var b=0;b=F[a+16>>2];if(b){F[a+20>>2]=b;mj(b)}b=F[a>>2];if(b){F[a+4>>2]=b;mj(b)}}function Fj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(wj(a,F[b+8>>2],f)){Bj(b,c,d,e)}}function Cd(a,b){a=a|0;b=b|0;var c=0;if(!(F[b+56>>2]|G[b+24|0]!=3)){F[a+48>>2]=b;c=1}return c|0}function Qj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=ia[a|0](b,c,d,e)|0;da(ha|0);return a|0}function yc(a){a=a|0;var b=0;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}return a|0}function Xb(a){a=a|0;var b=0;F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){ob(b)}return a|0}function Zd(a){a=a|0;var b=0;b=Ub(a);return Pa(a+24|0,b?b:F[a+8>>2],F[F[a+4>>2]+32>>2])|0}function Qa(a){a=a|0;var b=0;F[a>>2]=1140;b=F[a+8>>2];if(b){F[a+12>>2]=b;mj(b)}return a|0}function qc(a){a=a|0;var b=0;F[a>>2]=3300;b=F[a+32>>2];if(b){F[a+36>>2]=b;mj(b)}mj(a)}function Yb(a){a=a|0;var b=0;F[a>>2]=2260;b=F[a+16>>2];F[a+16>>2]=0;if(b){ob(b)}mj(a)}function Ra(a){a=a|0;var b=0;F[a>>2]=1140;b=F[a+8>>2];if(b){F[a+12>>2]=b;mj(b)}mj(a)}function be(a){var b=0;F[a+16>>2]=0;b=F[a>>2];F[a+4>>2]=b;F[a+12>>2]=b;if(b){mj(b)}}function Wh(a,b){if(b){Wh(a,F[b>>2]);Wh(a,F[b+4>>2]);ke(b+20|0,F[b+24>>2]);mj(b)}}function ue(a){a=a|0;if(!F[a+44>>2]){return 0}return ia[F[F[a>>2]+48>>2]](a)|0}function Cg(a){a=a|0;var b=0;if(a){b=F[a+8>>2];if(b){F[a+12>>2]=b;mj(b)}mj(a)}}function zj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(wj(a,F[b+8>>2],0)){yj(b,c,d)}}function Uj(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function we(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ia[F[F[a>>2]+20>>2]](a,b)|0}function Ee(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ia[F[F[a>>2]+16>>2]](a,b)|0}function De(a,b){a=a|0;b=b|0;a=F[a+48>>2];return ia[F[F[a>>2]+12>>2]](a,b)|0}function dh(a){a=a|0;var b=0;if(a){b=F[a>>2];if(b){F[a+4>>2]=b;mj(b)}mj(a)}}function ah(){var a=0;a=oj(12);F[a>>2]=0;F[a+4>>2]=0;F[a+8>>2]=0;return a|0}function Vj(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function bb(a,b,c){a=a|0;b=b|0;c=c|0;F[a+32>>2]=c;F[a+28>>2]=b;return 1}function Yg(a){a=a|0;if(a){eg(a+12|0,F[a+16>>2]);fg(a,F[a+4>>2]);mj(a)}}function Wf(a,b){a=a|0;b=b|0;D[b+84|0]=1;F[b+72>>2]=F[b+68>>2];return 1}function Ui(a,b,c){a:{if(F[c+76>>2]<0){a=Ti(a,b,c);break a}a=Ti(a,b,c)}}function ze(a){a=a|0;a=F[a+48>>2];return ia[F[F[a>>2]+28>>2]](a)|0}function ye(a){a=a|0;a=F[a+48>>2];return ia[F[F[a>>2]+24>>2]](a)|0}function Sg(){var a=0;a=oj(8);F[a+4>>2]=-1;F[a>>2]=1032;return a|0}function Ce(a){a=a|0;a=F[a+48>>2];return ia[F[F[a>>2]+36>>2]](a)|0}function Ah(a,b,c){a=a|0;b=b|0;c=c|0;return F[F[b+8>>2]+(c<<2)>>2]}function xd(a,b){a=a|0;b=b|0;return ya(a+24|0,Ub(a),F[a+8>>2])|0}function _d(a,b){a=a|0;b=b|0;return Ma(a+24|0,Ub(a),F[a+8>>2])|0}function Yd(a,b){a=a|0;b=b|0;return ia[F[F[a>>2]+56>>2]](a,b)|0}function Rb(a,b){a=a|0;b=b|0;F[a+12>>2]=-1;F[a+8>>2]=b;return 1}function Og(a,b){a=a|0;b=b|0;return ia[F[F[a>>2]+12>>2]](a,b)|0}function $g(a){a=a|0;if(a){if(D[a+15|0]<0){mj(F[a+4>>2])}mj(a)}}function Pg(a,b){a=a|0;b=b|0;return M(J[F[a+8>>2]+(b<<2)>>2])}function bh(a,b){a=a|0;b=b|0;return M(J[F[a>>2]+(b<<2)>>2])}function ib(a,b){a=a|0;b=b|0;return F[F[a+4>>2]+(b<<2)>>2]}function _i(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ha=0;return 0}function _g(a){a=a|0;return(D[a+15|0]<0?F[a+4>>2]:a+4|0)|0}function Wg(a){a=a|0;return(F[a+100>>2]-F[a+96>>2]|0)/12|0}function kh(a,b){a=a|0;b=b|0;return F[F[a>>2]+(b<<2)>>2]}function jh(a,b){a=a|0;b=b|0;return H[F[a>>2]+(b<<1)>>1]}function hh(a,b){a=a|0;b=b|0;return E[F[a>>2]+(b<<1)>>1]}function xh(a,b,c){a=a|0;b=b|0;c=c|0;return Gi(b,c)|0}function Wj(a){if(a){return 31-O(a-1^a)|0}return 32} +function Fi(a){F[a>>2]=13756;Qi(a+4|0,0,80);return a}function Ug(a){a=a|0;return F[a+12>>2]-F[a+8>>2]>>2}function jb(a){a=a|0;return F[a+8>>2]-F[a+4>>2]>>2}function gh(a,b){a=a|0;b=b|0;return G[F[a>>2]+b|0]}function eh(a,b){a=a|0;b=b|0;return D[F[a>>2]+b|0]}function Rg(a){a=a|0;if(a){ia[F[F[a>>2]+4>>2]](a)}}function Fe(a,b){a=a|0;b=b|0;F[a+4>>2]=b;return 1}function ih(a){a=a|0;return F[a+4>>2]-F[a>>2]>>1}function ch(a){a=a|0;return F[a+4>>2]-F[a>>2]>>2}function te(a){Yf(a);F[a+44>>2]=0;F[a>>2]=11208}function ta(){ga=17440;F[4227]=16796;F[4209]=42}function fh(a){a=a|0;return F[a+4>>2]-F[a>>2]|0}function Mj(a){a=a|0;a=fa-a&-16;fa=a;return a|0}function cj(a,b,c){if(!(G[a|0]&32)){Ti(b,c,a)}}function rh(a,b){a=a|0;b=b|0;return F[b+8>>2]}function pc(a){a=a|0;return D[F[a+8>>2]+24|0]}function Tb(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Ta(a,b){a=a|0;b=b|0;return D[b+24|0]}function Rd(a){a=a|0;F[a>>2]=10060;return a|0}function Ch(a,b){a=a|0;b=b|0;return F[b+4>>2]}function zd(a){a=a|0;F[a>>2]=7172;return a|0}function Ld(a){a=a|0;F[a>>2]=9056;return a|0}function Hd(a){a=a|0;F[a>>2]=8108;return a|0}function Xi(a){a=a|0;return $(F[a+60>>2])|0}function Qg(a){a=a|0;return M(J[a+20>>2])}function Sd(a){a=a|0;F[a>>2]=10060;mj(a)}function Md(a){a=a|0;F[a>>2]=9056;mj(a)}function Id(a){a=a|0;F[a>>2]=8108;mj(a)}function Ad(a){a=a|0;F[a>>2]=7172;mj(a)}function kb(a){a=a|0;return F[a+28>>2]}function Mg(a){a=a|0;return F[a+60>>2]}function Lg(a){a=a|0;return F[a+48>>2]}function Kg(a){a=a|0;return F[a+40>>2]}function Hg(a){a=a|0;return F[a+56>>2]}function Gg(a){a=a|0;return F[a+88>>2]}function Fg(a){a=a|0;return F[a+80>>2]}function uc(a,b){a=a|0;b=b|0;return-1}function rc(a){a=a|0;return F[a+4>>2]}function mb(a,b){a=a|0;b=b|0;return 1}function lb(a,b){a=a|0;b=b|0;return 0}function df(a){a=a|0;return F[a+8>>2]}function Zg(a){a=a|0;return!F[a>>2]|0}function Jg(a){a=a|0;return G[a+32|0]}function Ig(a){a=a|0;return D[a+24|0]}function Ga(a,b){a=a|0;b=b|0;return 2}function Fa(a,b){a=a|0;b=b|0;return 6}function nj(a,b,c){if(c){Oi(a,b,c)}}function Bg(a){a=a|0;return F[a>>2]}function xg(a){a=a|0;if(a){mj(a)}}function Tg(){return Fi(oj(84))|0}function Dg(){return Xa(oj(64))|0}function Jj(a){a=a|0;Hj(a);mj(a)}function Gj(a){a=a|0;return 1283}function Ca(a){a=a|0;return a|0}function qf(a){a=a|0;mj(pf(a))}function of(a){a=a|0;mj(nf(a))}function mf(a){a=a|0;mj(kf(a))}function Mb(a){a=a|0;mj(Lb(a))}function Ki(a){a=a|0;mj(ri(a))}function Ij(a){a=a|0;mj(Hj(a))}function tc(a){a=a|0;return 0}function Yc(a){a=a|0;return 6}function Sc(a){a=a|0;return 5}function Sa(a){a=a|0;return 1}function Kc(a){a=a|0;return 3}function Ea(a){a=a|0;return 2}function Cc(a){a=a|0;return 4}function Oj(){return fa-ga|0}function vj(){Ua(1276);V()}function aj(){return 16760}function Da(a){a=a|0;mj(a)}function $f(){Ua(1323);V()}function Pj(){return ga|0}function Lj(a){a=a|0;fa=a}function Kj(){return fa|0}function gb(a){a=a|0;V()}function ii(){return 12}function hi(){return 11}function gi(){return 10}function xc(){jj();V()}function mi(){return-5}function li(){return-4}function ki(){return-3}function jj(){ba();V()}function ji(){return-2}function fi(){return 9}function ei(){return 8}function di(){return 7}function ci(){return 6}function bi(){return 5}function ai(){return 4}function _h(){return 2}function Zh(){return 1}function Yh(){return 0}function Xh(){return-1}function Nj(){ga=17440}function Ha(){vj();V()}function $h(){return 3}function Ri(a){a=a|0} +// EMSCRIPTEN_END_FUNCS +e=G;p(ra);var ia=c([null,Ca,Da,Ea,ua,va,wa,ya,za,Ba,Wa,Fa,Ga,Hj,Qa,Ra,Sa,Ia,Ka,La,Ma,Oa,Pa,Fa,Ta,fb,gb,bb,cb,hb,ib,jb,kb,lb,jj,mb,Sa,Lb,Mb,nb,Hb,Jb,Xb,Yb,Qb,Rb,Sb,Tb,mb,Vb,Wb,fc,gc,_b,ac,hc,bc,cc,dc,ec,nc,oc,Qb,ic,jc,lc,kc,pc,mc,yc,qc,Sa,rc,sc,tc,uc,lb,tc,Sa,vc,wc,gb,gb,qc,Ea,sc,zc,Ac,Bc,Cc,sc,Dc,Gc,Ic,Jc,Kc,Lc,Sa,lb,Mc,Nc,Oc,Qc,Rc,Sc,Lc,Sa,lb,Mc,Tc,Uc,Wc,Xc,Yc,Zc,Sa,lb,_c,$c,ad,Ca,Da,cd,kb,bd,gb,qc,Sa,sc,dd,gb,qc,Ea,sc,ed,fd,gd,Cc,sc,Dc,hd,id,jd,Kc,Lc,Sa,lb,Mc,Nc,kd,ld,md,Sc,Lc,Sa,lb,Mc,Tc,nd,od,pd,Yc,Zc,Sa,lb,_c,$c,qd,Ca,Da,cd,kb,rd,gb,qc,tc,Sa,td,nc,oc,ud,wd,vd,yd,Ea,xd,zd,Ad,Yc,rc,Bd,Sa,lb,Cd,Sa,Ea,Dd,Ed,Ca,Da,cd,kb,bd,Hd,Id,Yc,Bd,Sa,lb,Cd,Dd,Jd,Ca,Da,cd,kb,rd,Ca,Da,tc,Sa,tc,uc,lb,Gd,Kd,Ld,Md,Yc,rc,Bd,Sa,lb,Cd,Sa,Kc,Nd,Od,Ca,Da,cd,kb,bd,Rd,Sd,Yc,Bd,Sa,lb,Cd,Nd,Td,Ca,Da,cd,kb,rd,Da,tc,Sa,tc,uc,lb,Qd,Ud,$d,ae,Vd,Xd,Wd,Yd,Zd,_d,ve,gb,Sa,Sa,ue,cg,dg,Sa,tc,lb,lb,Ae,Be,xe,we,ze,Ce,De,Ee,ye,kf,mf,Fe,Ge,He,Ie,Ne,Sa,rc,df,nf,of,Fe,Ge,He,Ie,ef,Sa,rc,df,pf,qf,Fe,Ge,He,Ie,hf,Sa,rc,df,Ke,rf,Je,sf,tf,wf,xf,yf,zf,vf,Cf,uf,Df,Ef,Gf,Hf,If,Jf,Ff,Lf,Mf,Nf,Of,Pf,Vf,Uf,Rf,Ca,Da,Wf,Xf,gb,tc,Sa,Vf,hg,gg,Vf,Uf,ig,qi,si,ti,ui,ri,Ki,Ii,Ji,Xi,Yi,Zi,tc,_i,Ca,Da,Ri,Ri,xj,Fj,Dj,zj,Da,Ej,Cj,Aj,Ca,Da,Gj,Ij,rc,Jj]);function ja(){return C.byteLength/65536|0}function oa(pa){pa=pa|0;var ka=ja()|0;var la=ka+pa|0;if(ka=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;if(u>1114111)warnOnce("Invalid Unicode code point 0x"+u.toString(16)+" encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF).");heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(!Object.getOwnPropertyDescriptor(Module,"INITIAL_MEMORY")){Object.defineProperty(Module,"INITIAL_MEMORY",{configurable:true,get:function(){abort("Module.INITIAL_MEMORY has been replaced with plain INITIAL_MEMORY (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(INITIAL_MEMORY>=TOTAL_STACK,"INITIAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!==undefined&&Int32Array.prototype.set!==undefined,"JS engine does not provide full typed array support");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;assert(INITIAL_MEMORY%65536===0);updateGlobalBufferAndViews(buffer);var wasmTable;function writeStackCookie(){var max=_emscripten_stack_get_end();assert((max&3)==0);HEAP32[max+4>>2]=34821223;HEAP32[max+8>>2]=2310721022;HEAP32[0]=1668509029}function checkStackCookie(){if(ABORT)return;var max=_emscripten_stack_get_end();var cookie1=HEAPU32[max+4>>2];var cookie2=HEAPU32[max+8>>2];if(cookie1!=34821223||cookie2!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x2135467, but received 0x"+cookie2.toString(16)+" 0x"+cookie1.toString(16))}if(HEAP32[0]!==1668509029)abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian! (Run with -s SUPPORT_BIG_ENDIAN=1 to bypass)"})();var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){checkStackCookie();assert(!runtimeInitialized);runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function exitRuntime(){checkStackCookie();runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval(function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var FS={error:function(){abort("Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -s FORCE_FILESYSTEM=1")},init:function(){FS.error()},createDataFile:function(){FS.error()},createPreloadedFile:function(){FS.error()},createLazyFile:function(){FS.error()},open:function(){FS.error()},mkdev:function(){FS.error()},registerDevice:function(){FS.error()},analyzePath:function(){FS.error()},loadFilesFromDB:function(){FS.error()},ErrnoError:function ErrnoError(){FS.error()}};Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}function createExportWrapper(name,fixedasm){return function(){var displayName=name;var asm=fixedasm;if(!fixedasm){asm=Module["asm"]}assert(runtimeInitialized,"native function `"+displayName+"` called before runtime initialization");assert(!runtimeExited,"native function `"+displayName+"` called after runtime exit (use NO_EXIT_RUNTIME to keep it alive after main() exits)");if(!asm[name]){assert(asm[name],"exported native function `"+displayName+"` not found")}return asm[name].apply(null,arguments)}}var wasmBinaryFile;wasmBinaryFile="draco_decoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["__indirect_function_table"];assert(wasmTable,"table not found in wasm exports");addOnInit(Module["asm"]["__wasm_call_ctors"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiationResult(result){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);if(isFileURI(wasmBinaryFile)){err("warning: Loading from a file URI ("+wasmBinaryFile+") is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing")}abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var tempDouble;var tempI64;function array_bounds_check_error(idx,size){throw"Array index "+idx+" out of bounds: [0,"+size+")"}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}assert(wasmTable.get(funcPtr)==func,"JavaScript-side Wasm function table mirror is out of date!");return func}function jsStackTrace(){var error=new Error;if(!error.stack){try{throw new Error}catch(e){error=e}if(!error.stack){return"(no stack trace available)"}}return error.stack.toString()}function setWasmTableEntry(idx,func){wasmTable.set(idx,func);wasmTableMirror[idx]=func}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;assert(prev>0);return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s NO_DISABLE_EXCEPTION_CATCHING or -s EXCEPTION_CATCHING_ALLOWED=[..] to catch."}function _abort(){abort("native code called abort()")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){err("emscripten_realloc_buffer: Attempted to grow heap from "+buffer.byteLength+" bytes to "+size+" bytes, but got error: "+e)}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;assert(requestedSize>oldSize);var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){err("Cannot enlarge memory, asked to go up to "+requestedSize+" bytes, but the limit is "+maxHeapSize+" bytes!");return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){err("Warning: Enlarging memory arrays, this is not fast! "+[oldSize,newSize]);return true}}err("Failed to grow the heap from "+oldSize+" bytes to "+newSize+" bytes, not enough memory!");return false}var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream,curr){var buffer=SYSCALLS.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}},varargs:undefined,get:function(){assert(SYSCALLS.varargs!=undefined);SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},get64:function(low,high){if(low>=0)assert(high===0);else assert(high===-1);return low}};function _fd_close(fd){abort("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM");return 0}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){abort("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM")}function flush_NO_FILESYSTEM(){var buffers=SYSCALLS.buffers;if(buffers[1].length)SYSCALLS.printChar(1,10);if(buffers[2].length)SYSCALLS.printChar(2,10)}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i>2];var len=HEAP32[iov+4>>2];iov+=8;for(var j=0;j>2]=num;return 0}var ASSERTIONS=true;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(iabort("'intArrayFromString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"intArrayToString"))Module["intArrayToString"]=(()=>abort("'intArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ccall"))Module["ccall"]=(()=>abort("'ccall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"cwrap"))Module["cwrap"]=(()=>abort("'cwrap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setValue"))Module["setValue"]=(()=>abort("'setValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getValue"))Module["getValue"]=(()=>abort("'getValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"allocate"))Module["allocate"]=(()=>abort("'allocate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UTF8ArrayToString"))Module["UTF8ArrayToString"]=(()=>abort("'UTF8ArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UTF8ToString"))Module["UTF8ToString"]=(()=>abort("'UTF8ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8Array"))Module["stringToUTF8Array"]=(()=>abort("'stringToUTF8Array' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8"))Module["stringToUTF8"]=(()=>abort("'stringToUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF8"))Module["lengthBytesUTF8"]=(()=>abort("'lengthBytesUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=(()=>abort("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnPreRun"))Module["addOnPreRun"]=(()=>abort("'addOnPreRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnInit"))Module["addOnInit"]=(()=>abort("'addOnInit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnPreMain"))Module["addOnPreMain"]=(()=>abort("'addOnPreMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnExit"))Module["addOnExit"]=(()=>abort("'addOnExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnPostRun"))Module["addOnPostRun"]=(()=>abort("'addOnPostRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeStringToMemory"))Module["writeStringToMemory"]=(()=>abort("'writeStringToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeArrayToMemory"))Module["writeArrayToMemory"]=(()=>abort("'writeArrayToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeAsciiToMemory"))Module["writeAsciiToMemory"]=(()=>abort("'writeAsciiToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addRunDependency"))Module["addRunDependency"]=(()=>abort("'addRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"removeRunDependency"))Module["removeRunDependency"]=(()=>abort("'removeRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createFolder"))Module["FS_createFolder"]=(()=>abort("'FS_createFolder' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createPath"))Module["FS_createPath"]=(()=>abort("'FS_createPath' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createDataFile"))Module["FS_createDataFile"]=(()=>abort("'FS_createDataFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createPreloadedFile"))Module["FS_createPreloadedFile"]=(()=>abort("'FS_createPreloadedFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createLazyFile"))Module["FS_createLazyFile"]=(()=>abort("'FS_createLazyFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createLink"))Module["FS_createLink"]=(()=>abort("'FS_createLink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createDevice"))Module["FS_createDevice"]=(()=>abort("'FS_createDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_unlink"))Module["FS_unlink"]=(()=>abort("'FS_unlink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"getLEB"))Module["getLEB"]=(()=>abort("'getLEB' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getFunctionTables"))Module["getFunctionTables"]=(()=>abort("'getFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"alignFunctionTables"))Module["alignFunctionTables"]=(()=>abort("'alignFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerFunctions"))Module["registerFunctions"]=(()=>abort("'registerFunctions' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addFunction"))Module["addFunction"]=(()=>abort("'addFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"removeFunction"))Module["removeFunction"]=(()=>abort("'removeFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=(()=>abort("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"prettyPrint"))Module["prettyPrint"]=(()=>abort("'prettyPrint' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=(()=>abort("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getCompilerSetting"))Module["getCompilerSetting"]=(()=>abort("'getCompilerSetting' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"print"))Module["print"]=(()=>abort("'print' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"printErr"))Module["printErr"]=(()=>abort("'printErr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getTempRet0"))Module["getTempRet0"]=(()=>abort("'getTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setTempRet0"))Module["setTempRet0"]=(()=>abort("'setTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"callMain"))Module["callMain"]=(()=>abort("'callMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"abort"))Module["abort"]=(()=>abort("'abort' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"keepRuntimeAlive"))Module["keepRuntimeAlive"]=(()=>abort("'keepRuntimeAlive' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"zeroMemory"))Module["zeroMemory"]=(()=>abort("'zeroMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToNewUTF8"))Module["stringToNewUTF8"]=(()=>abort("'stringToNewUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setFileTime"))Module["setFileTime"]=(()=>abort("'setFileTime' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscripten_realloc_buffer"))Module["emscripten_realloc_buffer"]=(()=>abort("'emscripten_realloc_buffer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ENV"))Module["ENV"]=(()=>abort("'ENV' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"withStackSave"))Module["withStackSave"]=(()=>abort("'withStackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ERRNO_CODES"))Module["ERRNO_CODES"]=(()=>abort("'ERRNO_CODES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ERRNO_MESSAGES"))Module["ERRNO_MESSAGES"]=(()=>abort("'ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setErrNo"))Module["setErrNo"]=(()=>abort("'setErrNo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"inetPton4"))Module["inetPton4"]=(()=>abort("'inetPton4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"inetNtop4"))Module["inetNtop4"]=(()=>abort("'inetNtop4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"inetPton6"))Module["inetPton6"]=(()=>abort("'inetPton6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"inetNtop6"))Module["inetNtop6"]=(()=>abort("'inetNtop6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readSockaddr"))Module["readSockaddr"]=(()=>abort("'readSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeSockaddr"))Module["writeSockaddr"]=(()=>abort("'writeSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"DNS"))Module["DNS"]=(()=>abort("'DNS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getHostByName"))Module["getHostByName"]=(()=>abort("'getHostByName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GAI_ERRNO_MESSAGES"))Module["GAI_ERRNO_MESSAGES"]=(()=>abort("'GAI_ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"Protocols"))Module["Protocols"]=(()=>abort("'Protocols' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"Sockets"))Module["Sockets"]=(()=>abort("'Sockets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getRandomDevice"))Module["getRandomDevice"]=(()=>abort("'getRandomDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"traverseStack"))Module["traverseStack"]=(()=>abort("'traverseStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"convertFrameToPC"))Module["convertFrameToPC"]=(()=>abort("'convertFrameToPC' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UNWIND_CACHE"))Module["UNWIND_CACHE"]=(()=>abort("'UNWIND_CACHE' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"saveInUnwindCache"))Module["saveInUnwindCache"]=(()=>abort("'saveInUnwindCache' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"convertPCtoSourceLocation"))Module["convertPCtoSourceLocation"]=(()=>abort("'convertPCtoSourceLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readAsmConstArgsArray"))Module["readAsmConstArgsArray"]=(()=>abort("'readAsmConstArgsArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readAsmConstArgs"))Module["readAsmConstArgs"]=(()=>abort("'readAsmConstArgs' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"mainThreadEM_ASM"))Module["mainThreadEM_ASM"]=(()=>abort("'mainThreadEM_ASM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"jstoi_q"))Module["jstoi_q"]=(()=>abort("'jstoi_q' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"jstoi_s"))Module["jstoi_s"]=(()=>abort("'jstoi_s' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getExecutableName"))Module["getExecutableName"]=(()=>abort("'getExecutableName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"listenOnce"))Module["listenOnce"]=(()=>abort("'listenOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"autoResumeAudioContext"))Module["autoResumeAudioContext"]=(()=>abort("'autoResumeAudioContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"dynCallLegacy"))Module["dynCallLegacy"]=(()=>abort("'dynCallLegacy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getDynCaller"))Module["getDynCaller"]=(()=>abort("'getDynCaller' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=(()=>abort("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"callRuntimeCallbacks"))Module["callRuntimeCallbacks"]=(()=>abort("'callRuntimeCallbacks' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"wasmTableMirror"))Module["wasmTableMirror"]=(()=>abort("'wasmTableMirror' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setWasmTableEntry"))Module["setWasmTableEntry"]=(()=>abort("'setWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getWasmTableEntry"))Module["getWasmTableEntry"]=(()=>abort("'getWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"handleException"))Module["handleException"]=(()=>abort("'handleException' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"runtimeKeepalivePush"))Module["runtimeKeepalivePush"]=(()=>abort("'runtimeKeepalivePush' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"runtimeKeepalivePop"))Module["runtimeKeepalivePop"]=(()=>abort("'runtimeKeepalivePop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"callUserCallback"))Module["callUserCallback"]=(()=>abort("'callUserCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"maybeExit"))Module["maybeExit"]=(()=>abort("'maybeExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"safeSetTimeout"))Module["safeSetTimeout"]=(()=>abort("'safeSetTimeout' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"asmjsMangle"))Module["asmjsMangle"]=(()=>abort("'asmjsMangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"asyncLoad"))Module["asyncLoad"]=(()=>abort("'asyncLoad' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"alignMemory"))Module["alignMemory"]=(()=>abort("'alignMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"mmapAlloc"))Module["mmapAlloc"]=(()=>abort("'mmapAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"reallyNegative"))Module["reallyNegative"]=(()=>abort("'reallyNegative' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"unSign"))Module["unSign"]=(()=>abort("'unSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"reSign"))Module["reSign"]=(()=>abort("'reSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"formatString"))Module["formatString"]=(()=>abort("'formatString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"PATH"))Module["PATH"]=(()=>abort("'PATH' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"PATH_FS"))Module["PATH_FS"]=(()=>abort("'PATH_FS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SYSCALLS"))Module["SYSCALLS"]=(()=>abort("'SYSCALLS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"syscallMmap2"))Module["syscallMmap2"]=(()=>abort("'syscallMmap2' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"syscallMunmap"))Module["syscallMunmap"]=(()=>abort("'syscallMunmap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getSocketFromFD"))Module["getSocketFromFD"]=(()=>abort("'getSocketFromFD' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getSocketAddress"))Module["getSocketAddress"]=(()=>abort("'getSocketAddress' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"JSEvents"))Module["JSEvents"]=(()=>abort("'JSEvents' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerKeyEventCallback"))Module["registerKeyEventCallback"]=(()=>abort("'registerKeyEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"specialHTMLTargets"))Module["specialHTMLTargets"]=(()=>abort("'specialHTMLTargets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"maybeCStringToJsString"))Module["maybeCStringToJsString"]=(()=>abort("'maybeCStringToJsString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"findEventTarget"))Module["findEventTarget"]=(()=>abort("'findEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"findCanvasEventTarget"))Module["findCanvasEventTarget"]=(()=>abort("'findCanvasEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getBoundingClientRect"))Module["getBoundingClientRect"]=(()=>abort("'getBoundingClientRect' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillMouseEventData"))Module["fillMouseEventData"]=(()=>abort("'fillMouseEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerMouseEventCallback"))Module["registerMouseEventCallback"]=(()=>abort("'registerMouseEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerWheelEventCallback"))Module["registerWheelEventCallback"]=(()=>abort("'registerWheelEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerUiEventCallback"))Module["registerUiEventCallback"]=(()=>abort("'registerUiEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerFocusEventCallback"))Module["registerFocusEventCallback"]=(()=>abort("'registerFocusEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillDeviceOrientationEventData"))Module["fillDeviceOrientationEventData"]=(()=>abort("'fillDeviceOrientationEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerDeviceOrientationEventCallback"))Module["registerDeviceOrientationEventCallback"]=(()=>abort("'registerDeviceOrientationEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillDeviceMotionEventData"))Module["fillDeviceMotionEventData"]=(()=>abort("'fillDeviceMotionEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerDeviceMotionEventCallback"))Module["registerDeviceMotionEventCallback"]=(()=>abort("'registerDeviceMotionEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"screenOrientation"))Module["screenOrientation"]=(()=>abort("'screenOrientation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillOrientationChangeEventData"))Module["fillOrientationChangeEventData"]=(()=>abort("'fillOrientationChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerOrientationChangeEventCallback"))Module["registerOrientationChangeEventCallback"]=(()=>abort("'registerOrientationChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillFullscreenChangeEventData"))Module["fillFullscreenChangeEventData"]=(()=>abort("'fillFullscreenChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerFullscreenChangeEventCallback"))Module["registerFullscreenChangeEventCallback"]=(()=>abort("'registerFullscreenChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerRestoreOldStyle"))Module["registerRestoreOldStyle"]=(()=>abort("'registerRestoreOldStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"hideEverythingExceptGivenElement"))Module["hideEverythingExceptGivenElement"]=(()=>abort("'hideEverythingExceptGivenElement' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"restoreHiddenElements"))Module["restoreHiddenElements"]=(()=>abort("'restoreHiddenElements' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setLetterbox"))Module["setLetterbox"]=(()=>abort("'setLetterbox' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"currentFullscreenStrategy"))Module["currentFullscreenStrategy"]=(()=>abort("'currentFullscreenStrategy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"restoreOldWindowedStyle"))Module["restoreOldWindowedStyle"]=(()=>abort("'restoreOldWindowedStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"softFullscreenResizeWebGLRenderTarget"))Module["softFullscreenResizeWebGLRenderTarget"]=(()=>abort("'softFullscreenResizeWebGLRenderTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"doRequestFullscreen"))Module["doRequestFullscreen"]=(()=>abort("'doRequestFullscreen' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillPointerlockChangeEventData"))Module["fillPointerlockChangeEventData"]=(()=>abort("'fillPointerlockChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerPointerlockChangeEventCallback"))Module["registerPointerlockChangeEventCallback"]=(()=>abort("'registerPointerlockChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerPointerlockErrorEventCallback"))Module["registerPointerlockErrorEventCallback"]=(()=>abort("'registerPointerlockErrorEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"requestPointerLock"))Module["requestPointerLock"]=(()=>abort("'requestPointerLock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillVisibilityChangeEventData"))Module["fillVisibilityChangeEventData"]=(()=>abort("'fillVisibilityChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerVisibilityChangeEventCallback"))Module["registerVisibilityChangeEventCallback"]=(()=>abort("'registerVisibilityChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerTouchEventCallback"))Module["registerTouchEventCallback"]=(()=>abort("'registerTouchEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillGamepadEventData"))Module["fillGamepadEventData"]=(()=>abort("'fillGamepadEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerGamepadEventCallback"))Module["registerGamepadEventCallback"]=(()=>abort("'registerGamepadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerBeforeUnloadEventCallback"))Module["registerBeforeUnloadEventCallback"]=(()=>abort("'registerBeforeUnloadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillBatteryEventData"))Module["fillBatteryEventData"]=(()=>abort("'fillBatteryEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"battery"))Module["battery"]=(()=>abort("'battery' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerBatteryEventCallback"))Module["registerBatteryEventCallback"]=(()=>abort("'registerBatteryEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setCanvasElementSize"))Module["setCanvasElementSize"]=(()=>abort("'setCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getCanvasElementSize"))Module["getCanvasElementSize"]=(()=>abort("'getCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"demangle"))Module["demangle"]=(()=>abort("'demangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"demangleAll"))Module["demangleAll"]=(()=>abort("'demangleAll' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"jsStackTrace"))Module["jsStackTrace"]=(()=>abort("'jsStackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=(()=>abort("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getEnvStrings"))Module["getEnvStrings"]=(()=>abort("'getEnvStrings' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"checkWasiClock"))Module["checkWasiClock"]=(()=>abort("'checkWasiClock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"flush_NO_FILESYSTEM"))Module["flush_NO_FILESYSTEM"]=(()=>abort("'flush_NO_FILESYSTEM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64"))Module["writeI53ToI64"]=(()=>abort("'writeI53ToI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64Clamped"))Module["writeI53ToI64Clamped"]=(()=>abort("'writeI53ToI64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64Signaling"))Module["writeI53ToI64Signaling"]=(()=>abort("'writeI53ToI64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToU64Clamped"))Module["writeI53ToU64Clamped"]=(()=>abort("'writeI53ToU64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToU64Signaling"))Module["writeI53ToU64Signaling"]=(()=>abort("'writeI53ToU64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readI53FromI64"))Module["readI53FromI64"]=(()=>abort("'readI53FromI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readI53FromU64"))Module["readI53FromU64"]=(()=>abort("'readI53FromU64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"convertI32PairToI53"))Module["convertI32PairToI53"]=(()=>abort("'convertI32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"convertU32PairToI53"))Module["convertU32PairToI53"]=(()=>abort("'convertU32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setImmediateWrapped"))Module["setImmediateWrapped"]=(()=>abort("'setImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"clearImmediateWrapped"))Module["clearImmediateWrapped"]=(()=>abort("'clearImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"polyfillSetImmediate"))Module["polyfillSetImmediate"]=(()=>abort("'polyfillSetImmediate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"uncaughtExceptionCount"))Module["uncaughtExceptionCount"]=(()=>abort("'uncaughtExceptionCount' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"exceptionLast"))Module["exceptionLast"]=(()=>abort("'exceptionLast' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"exceptionCaught"))Module["exceptionCaught"]=(()=>abort("'exceptionCaught' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ExceptionInfo"))Module["ExceptionInfo"]=(()=>abort("'ExceptionInfo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"CatchInfo"))Module["CatchInfo"]=(()=>abort("'CatchInfo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"exception_addRef"))Module["exception_addRef"]=(()=>abort("'exception_addRef' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"exception_decRef"))Module["exception_decRef"]=(()=>abort("'exception_decRef' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"Browser"))Module["Browser"]=(()=>abort("'Browser' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"funcWrappers"))Module["funcWrappers"]=(()=>abort("'funcWrappers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=(()=>abort("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setMainLoop"))Module["setMainLoop"]=(()=>abort("'setMainLoop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"wget"))Module["wget"]=(()=>abort("'wget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"tempFixedLengthArray"))Module["tempFixedLengthArray"]=(()=>abort("'tempFixedLengthArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"miniTempWebGLFloatBuffers"))Module["miniTempWebGLFloatBuffers"]=(()=>abort("'miniTempWebGLFloatBuffers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"heapObjectForWebGLType"))Module["heapObjectForWebGLType"]=(()=>abort("'heapObjectForWebGLType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"heapAccessShiftForWebGLHeap"))Module["heapAccessShiftForWebGLHeap"]=(()=>abort("'heapAccessShiftForWebGLHeap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GL"))Module["GL"]=(()=>abort("'GL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGet"))Module["emscriptenWebGLGet"]=(()=>abort("'emscriptenWebGLGet' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"computeUnpackAlignedImageSize"))Module["computeUnpackAlignedImageSize"]=(()=>abort("'computeUnpackAlignedImageSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetTexPixelData"))Module["emscriptenWebGLGetTexPixelData"]=(()=>abort("'emscriptenWebGLGetTexPixelData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetUniform"))Module["emscriptenWebGLGetUniform"]=(()=>abort("'emscriptenWebGLGetUniform' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"webglGetUniformLocation"))Module["webglGetUniformLocation"]=(()=>abort("'webglGetUniformLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"webglPrepareUniformLocationsBeforeFirstUse"))Module["webglPrepareUniformLocationsBeforeFirstUse"]=(()=>abort("'webglPrepareUniformLocationsBeforeFirstUse' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"webglGetLeftBracePos"))Module["webglGetLeftBracePos"]=(()=>abort("'webglGetLeftBracePos' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetVertexAttrib"))Module["emscriptenWebGLGetVertexAttrib"]=(()=>abort("'emscriptenWebGLGetVertexAttrib' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeGLArray"))Module["writeGLArray"]=(()=>abort("'writeGLArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"AL"))Module["AL"]=(()=>abort("'AL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL_unicode"))Module["SDL_unicode"]=(()=>abort("'SDL_unicode' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL_ttfContext"))Module["SDL_ttfContext"]=(()=>abort("'SDL_ttfContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL_audio"))Module["SDL_audio"]=(()=>abort("'SDL_audio' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL"))Module["SDL"]=(()=>abort("'SDL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL_gfx"))Module["SDL_gfx"]=(()=>abort("'SDL_gfx' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GLUT"))Module["GLUT"]=(()=>abort("'GLUT' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"EGL"))Module["EGL"]=(()=>abort("'EGL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GLFW_Window"))Module["GLFW_Window"]=(()=>abort("'GLFW_Window' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GLFW"))Module["GLFW"]=(()=>abort("'GLFW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GLEW"))Module["GLEW"]=(()=>abort("'GLEW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"IDBStore"))Module["IDBStore"]=(()=>abort("'IDBStore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"runAndAbortIfError"))Module["runAndAbortIfError"]=(()=>abort("'runAndAbortIfError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"warnOnce"))Module["warnOnce"]=(()=>abort("'warnOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackSave"))Module["stackSave"]=(()=>abort("'stackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackRestore"))Module["stackRestore"]=(()=>abort("'stackRestore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackAlloc"))Module["stackAlloc"]=(()=>abort("'stackAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"AsciiToString"))Module["AsciiToString"]=(()=>abort("'AsciiToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToAscii"))Module["stringToAscii"]=(()=>abort("'stringToAscii' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UTF16ToString"))Module["UTF16ToString"]=(()=>abort("'UTF16ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF16"))Module["stringToUTF16"]=(()=>abort("'stringToUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF16"))Module["lengthBytesUTF16"]=(()=>abort("'lengthBytesUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UTF32ToString"))Module["UTF32ToString"]=(()=>abort("'UTF32ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF32"))Module["stringToUTF32"]=(()=>abort("'stringToUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF32"))Module["lengthBytesUTF32"]=(()=>abort("'lengthBytesUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8"))Module["allocateUTF8"]=(()=>abort("'allocateUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8OnStack"))Module["allocateUTF8OnStack"]=(()=>abort("'allocateUTF8OnStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));Module["writeStackCookie"]=writeStackCookie;Module["checkStackCookie"]=checkStackCookie;if(!Object.getOwnPropertyDescriptor(Module,"intArrayFromBase64"))Module["intArrayFromBase64"]=(()=>abort("'intArrayFromBase64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"tryParseAsDataURI"))Module["tryParseAsDataURI"]=(()=>abort("'tryParseAsDataURI' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NORMAL"))Object.defineProperty(Module,"ALLOC_NORMAL",{configurable:true,get:function(){abort("'ALLOC_NORMAL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_STACK"))Object.defineProperty(Module,"ALLOC_STACK",{configurable:true,get:function(){abort("'ALLOC_STACK' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function stackCheckInit(){_emscripten_stack_init();writeStackCookie()}function run(args){args=args||arguments_;if(runDependencies>0){return}stackCheckInit();preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}Module["run"]=run;function checkUnflushedContent(){var oldOut=out;var oldErr=err;var has=false;out=err=(x=>{has=true});try{var flush=flush_NO_FILESYSTEM;if(flush)flush()}catch(e){}out=oldOut;err=oldErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.");warnOnce("(this may also be due to not including full filesystem support - try building with -s FORCE_FILESYSTEM=1)")}}function procExit(code){EXITSTATUS=code;if(!keepRuntimeAlive()){if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(DracoEncoderModule) { + DracoEncoderModule = DracoEncoderModule || {}; + +var Module=typeof DracoEncoderModule!=="undefined"?DracoEncoderModule:{};var objAssign=Object.assign;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});if(!Object.getOwnPropertyDescriptor(Module["ready"],"_free")){Object.defineProperty(Module["ready"],"_free",{configurable:true,get:function(){abort("You are getting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_free",{configurable:true,set:function(){abort("You are setting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_malloc")){Object.defineProperty(Module["ready"],"_malloc",{configurable:true,get:function(){abort("You are getting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_malloc",{configurable:true,set:function(){abort("You are setting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_VoidPtr___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_VoidPtr___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_VoidPtr___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_VoidPtr___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_VoidPtr___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_GeometryAttribute_GeometryAttribute_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_GeometryAttribute_GeometryAttribute_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_GeometryAttribute_GeometryAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_GeometryAttribute_GeometryAttribute_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_GeometryAttribute_GeometryAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_GeometryAttribute___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_GeometryAttribute___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_GeometryAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_GeometryAttribute___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_GeometryAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_PointAttribute_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_PointAttribute_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_PointAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_PointAttribute_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_PointAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_attribute_type_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_attribute_type_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_attribute_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_attribute_type_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_attribute_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_data_type_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_data_type_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_data_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_data_type_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_data_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_num_components_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_num_components_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_num_components_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_num_components_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_num_components_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_normalized_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_normalized_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_normalized_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_normalized_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_normalized_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_byte_stride_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_byte_stride_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_byte_stride_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_byte_stride_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_byte_stride_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_byte_offset_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_byte_offset_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_byte_offset_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_byte_offset_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_byte_offset_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute_unique_id_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_unique_id_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute_unique_id_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute_unique_id_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute_unique_id_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointAttribute___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointAttribute___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloud_PointCloud_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_PointCloud_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloud_PointCloud_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_PointCloud_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloud_PointCloud_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloud_num_attributes_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_num_attributes_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloud_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_num_attributes_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloud_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloud_num_points_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_num_points_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloud_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud_num_points_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloud_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloud___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloud___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloud___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloud___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_Mesh_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_Mesh_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_Mesh_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_Mesh_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_Mesh_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_num_faces_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_faces_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_num_faces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_faces_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_num_faces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_num_attributes_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_attributes_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_attributes_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_num_points_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_points_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_num_points_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh_set_num_points_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_set_num_points_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh_set_num_points_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh_set_num_points_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh_set_num_points_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Mesh___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Mesh___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Mesh___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Mesh___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Metadata_Metadata_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Metadata_Metadata_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Metadata_Metadata_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Metadata_Metadata_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Metadata_Metadata_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Metadata___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Metadata___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Metadata___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Metadata___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Metadata___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt8Array_DracoInt8Array_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_DracoInt8Array_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt8Array_DracoInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_DracoInt8Array_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt8Array_DracoInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt8Array_GetValue_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_GetValue_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_GetValue_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt8Array_size_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_size_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array_size_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_DracoInt8Array___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_DracoInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_DracoInt8Array___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_DracoInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataBuilder_MetadataBuilder_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_MetadataBuilder_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataBuilder_MetadataBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_MetadataBuilder_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataBuilder_MetadataBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataBuilder_AddStringEntry_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_AddStringEntry_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataBuilder_AddStringEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_AddStringEntry_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataBuilder_AddStringEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataBuilder_AddIntEntry_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_AddIntEntry_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataBuilder_AddIntEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_AddIntEntry_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataBuilder_AddIntEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataBuilder_AddIntEntryArray_4")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_AddIntEntryArray_4",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataBuilder_AddIntEntryArray_4 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_AddIntEntryArray_4",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataBuilder_AddIntEntryArray_4 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataBuilder_AddDoubleEntry_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_AddDoubleEntry_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataBuilder_AddDoubleEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder_AddDoubleEntry_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataBuilder_AddDoubleEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MetadataBuilder___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MetadataBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MetadataBuilder___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MetadataBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_PointCloudBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_PointCloudBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_AddFloatAttribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_AddFloatAttribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_AddInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_AddInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_AddInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_AddInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_AddInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_AddInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddMetadata_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddMetadata_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_AddMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_AddMetadata_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_AddMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_PointCloudBuilder___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_PointCloudBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_PointCloudBuilder___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_PointCloudBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_MeshBuilder_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_MeshBuilder_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_MeshBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_MeshBuilder_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_MeshBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddFacesToMesh_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddFacesToMesh_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddFacesToMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddFacesToMesh_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddFacesToMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddMetadataToMesh_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddMetadataToMesh_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddMetadataToMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddMetadataToMesh_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddMetadataToMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddFloatAttribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddFloatAttribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddFloatAttribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddFloatAttribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddFloatAttribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt8Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt8Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt8Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt8Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt8Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddUInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt8Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddUInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt16Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt16Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt16Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt16Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt16Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddUInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt16Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddUInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt32Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt32Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddInt32Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt32Attribute_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt32Attribute_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddUInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddUInt32Attribute_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddUInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_AddMetadata_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddMetadata_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_AddMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_AddMetadata_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_AddMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder_SetMetadataForAttribute_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder_SetMetadataForAttribute_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_MeshBuilder___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_MeshBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_MeshBuilder___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_MeshBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_Encoder_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_Encoder_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_Encoder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_Encoder_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_Encoder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_SetEncodingMethod_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetEncodingMethod_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_SetEncodingMethod_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetEncodingMethod_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_SetEncodingMethod_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_SetAttributeQuantization_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetAttributeQuantization_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_SetAttributeQuantization_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetAttributeQuantization_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_SetAttributeQuantization_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_SetAttributeExplicitQuantization_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_SetAttributeExplicitQuantization_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_SetSpeedOptions_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetSpeedOptions_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_SetSpeedOptions_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetSpeedOptions_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_SetSpeedOptions_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_SetTrackEncodedProperties_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetTrackEncodedProperties_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_SetTrackEncodedProperties_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_SetTrackEncodedProperties_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_SetTrackEncodedProperties_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_GetNumberOfEncodedPoints_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_GetNumberOfEncodedPoints_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder_GetNumberOfEncodedFaces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder_GetNumberOfEncodedFaces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_Encoder___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_Encoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_Encoder___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_Encoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_ExpertEncoder_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_ExpertEncoder_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_ExpertEncoder_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_ExpertEncoder_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_ExpertEncoder_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_SetEncodingMethod_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetEncodingMethod_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_SetEncodingMethod_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetEncodingMethod_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_SetEncodingMethod_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_SetAttributeQuantization_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_SetAttributeQuantization_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_SetSpeedOptions_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetSpeedOptions_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_SetSpeedOptions_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetSpeedOptions_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_SetSpeedOptions_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_bind_ExpertEncoder___destroy___0")){Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder___destroy___0",{configurable:true,get:function(){abort("You are getting _emscripten_bind_ExpertEncoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_bind_ExpertEncoder___destroy___0",{configurable:true,set:function(){abort("You are setting _emscripten_bind_ExpertEncoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_INVALID")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_INVALID",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_INVALID",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_POSITION")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_POSITION",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_POSITION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_POSITION",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_POSITION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_NORMAL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_NORMAL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_COLOR")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_COLOR",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_COLOR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_COLOR",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_COLOR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_GeometryAttribute_Type_GENERIC on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_GeometryAttribute_Type_GENERIC on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING")){Object.defineProperty(Module["ready"],"_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING",{configurable:true,get:function(){abort("You are getting _emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING",{configurable:true,set:function(){abort("You are setting _emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"onRuntimeInitialized")){Object.defineProperty(Module["ready"],"onRuntimeInitialized",{configurable:true,get:function(){abort("You are getting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"onRuntimeInitialized",{configurable:true,set:function(){abort("You are setting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=5)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides=objAssign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(!(typeof process==="object"&&typeof require==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=(()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}});read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?null:"utf8")};readBinary=(filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret});readAsync=((filename,onload,onerror)=>{var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})});if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof process==="object"&&typeof require==="function"||typeof window==="object"||typeof importScripts==="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(typeof read!="undefined"){read_=function shell_read(f){const data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){let data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};readAsync=function readAsync(f,onload,onerror){setTimeout(()=>onload(readBinary(f)),0)};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=((status,toThrow)=>{logExceptionOnExit(toThrow);quit(status)})}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}if(!(typeof window==="object"||typeof importScripts==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");{read_=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}});if(ENVIRONMENT_IS_WORKER){readBinary=(url=>{try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}})}readAsync=((url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=(()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()});xhr.onerror=onerror;xhr.send(null)})}setWindowTitle=(title=>document.title=title)}else{throw new Error("environment detection error")}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);objAssign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(!Object.getOwnPropertyDescriptor(Module,"arguments")){Object.defineProperty(Module,"arguments",{configurable:true,get:function(){abort("Module.arguments has been replaced with plain arguments_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(!Object.getOwnPropertyDescriptor(Module,"thisProgram")){Object.defineProperty(Module,"thisProgram",{configurable:true,get:function(){abort("Module.thisProgram has been replaced with plain thisProgram (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(Module["quit"])quit_=Module["quit"];if(!Object.getOwnPropertyDescriptor(Module,"quit")){Object.defineProperty(Module,"quit",{configurable:true,get:function(){abort("Module.quit has been replaced with plain quit_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]==="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]==="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]==="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]==="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");assert(typeof Module["TOTAL_MEMORY"]==="undefined","Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");if(!Object.getOwnPropertyDescriptor(Module,"read")){Object.defineProperty(Module,"read",{configurable:true,get:function(){abort("Module.read has been replaced with plain read_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"readAsync")){Object.defineProperty(Module,"readAsync",{configurable:true,get:function(){abort("Module.readAsync has been replaced with plain readAsync (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"readBinary")){Object.defineProperty(Module,"readBinary",{configurable:true,get:function(){abort("Module.readBinary has been replaced with plain readBinary (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"setWindowTitle")){Object.defineProperty(Module,"setWindowTitle",{configurable:true,get:function(){abort("Module.setWindowTitle has been replaced with plain setWindowTitle (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(!ENVIRONMENT_IS_SHELL,"shell environment detected but not enabled at build time. Add 'shell' to `-s ENVIRONMENT` to enable.");var POINTER_SIZE=4;function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){return func}var freeTableIndexes=[];var functionsInTableMap;function getEmptyTableSlot(){if(freeTableIndexes.length){return freeTableIndexes.pop()}try{wasmTable.grow(1)}catch(err){if(!(err instanceof RangeError)){throw err}throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."}return wasmTable.length-1}function updateTableMap(offset,count){for(var i=offset;i{tempRet0=value};var getTempRet0=()=>tempRet0;var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(!Object.getOwnPropertyDescriptor(Module,"wasmBinary")){Object.defineProperty(Module,"wasmBinary",{configurable:true,get:function(){abort("Module.wasmBinary has been replaced with plain wasmBinary (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}var noExitRuntime=Module["noExitRuntime"]||true;if(!Object.getOwnPropertyDescriptor(Module,"noExitRuntime")){Object.defineProperty(Module,"noExitRuntime",{configurable:true,get:function(){abort("Module.noExitRuntime has been replaced with plain noExitRuntime (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=( +// EMSCRIPTEN_START_ASM +function instantiate(qa){function c(d){d.set=function(a,b){this[a]=b};d.get=function(a){return this[a]};return d}var e;var f=new Uint8Array(123);for(var a=25;a>=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a>4;if(i>2;if(i>>0>=1073741824){break b}f=b<<2;w=$k(f);H[D+36>>2]=w;H[D+32>>2]=w;f=f+w|0;i=(c|0)>1?c:1;j=i-1|0;s=j&-4;t=j&3;E=i-2>>>0>2;h=w;n=h;while(1){j=H[(q<<2)+a>>2];f:{if((c|0)<2){break f}p=0;m=1;if(E){while(1){k=(m+q<<2)+a|0;x=H[k+12>>2];v=H[k+8>>2];A=H[k+4>>2];k=H[k>>2];j=j>>>0>>0?k:j;j=j>>>0>>0?A:j;j=j>>>0>>0?v:j;j=j>>>0>>0?x:j;m=m+4|0;p=p+4|0;if((s|0)!=(p|0)){continue}break}}p=0;if(!t){break f}while(1){k=H[(m+q<<2)+a>>2];j=j>>>0>>0?k:j;m=m+1|0;p=p+1|0;if((t|0)!=(p|0)){continue}break}}k=j?(Q(j)^31)+1|0:1;g:{if(f>>>0>n>>>0){H[n>>2]=k;n=n+4|0;H[D+36>>2]=n;break g}p=n-h|0;n=p>>2;m=n+1|0;if(m>>>0>=1073741824){break c}f=f-h|0;x=f>>1;f=f>>>0<2147483644?m>>>0>x>>>0?m:x:1073741823;if(f){if(f>>>0>=1073741824){break d}w=$k(f<<2)}else{w=0}m=w+(n<<2)|0;H[m>>2]=k;n=m+4|0;if((p|0)>0){ek(w,h,p)}f=(f<<2)+w|0;H[D+36>>2]=n;if(h){Wk(h)}h=w}l=j>>>0>l>>>0?j:l;q=i+q|0;if((q|0)<(b|0)){continue}break}H[D+40>>2]=f;H[D+32>>2]=w;m=0;H[D+24>>2]=0;H[D+16>>2]=0;H[D+20>>2]=0;c=n-w|0;if(c){if((c|0)<0){break a}m=$k(c);H[D+16>>2]=m;H[D+24>>2]=(c>>2<<2)+m;c=ek(m,w,c)+c|0}else{c=0}f=c-m|0;c=f>>2;h:{if(!f){break h}f=c>>>0>1?c:1;h=f&3;q=0;i:{if(f-1>>>0<3){j=0;break i}t=f&-4;j=0;p=0;while(1){f=r;r=j<<2;n=H[r+m>>2];f=f+n|0;k=f>>>0>>0?g+1|0:g;n=H[(r|4)+m>>2];g=n+f|0;f=k;f=g>>>0>>0?f+1|0:f;k=H[(r|8)+m>>2];g=k+g|0;f=g>>>0>>0?f+1|0:f;r=H[(r|12)+m>>2];g=r+g|0;k=g>>>0>>0?f+1|0:f;r=g;g=k;j=j+4|0;p=p+4|0;if((t|0)!=(p|0)){continue}break}}if(!h){break h}while(1){f=g;p=H[(j<<2)+m>>2];k=p+r|0;r=k;g=k>>>0

>>0?f+1|0:f;j=j+1|0;q=q+1|0;if((h|0)!=(q|0)){continue}break}}t=Ze(m,c,32,D);q=fa;n=H[D>>2];if(m){H[D+20>>2]=m;Wk(m)}s=Ze(a,b,l,D);E=fa;h=H[D>>2];x=(l-h|0)/64|0;j:{if(d){c=$k(32);f=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);j=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+14|0]=j;F[c+15|0]=j>>>8;F[c+16|0]=j>>>16;F[c+17|0]=j>>>24;F[c+18|0]=f;F[c+19|0]=f>>>8;F[c+20|0]=f>>>16;F[c+21|0]=f>>>24;f=I[1740]|I[1741]<<8|(I[1742]<<16|I[1743]<<24);j=I[1736]|I[1737]<<8|(I[1738]<<16|I[1739]<<24);F[c+8|0]=j;F[c+9|0]=j>>>8;F[c+10|0]=j>>>16;F[c+11|0]=j>>>24;F[c+12|0]=f;F[c+13|0]=f>>>8;F[c+14|0]=f>>>16;F[c+15|0]=f>>>24;f=I[1732]|I[1733]<<8|(I[1734]<<16|I[1735]<<24);j=I[1728]|I[1729]<<8|(I[1730]<<16|I[1731]<<24);F[c|0]=j;F[c+1|0]=j>>>8;F[c+2|0]=j>>>16;F[c+3|0]=j>>>24;F[c+4|0]=f;F[c+5|0]=f>>>8;F[c+6|0]=f>>>16;F[c+7|0]=f>>>24;F[c+22|0]=0;j=H[d+4>>2];if(j){while(1){f=I[j+27|0];k=f<<24>>24<0;f=k?H[j+20>>2]:f;p=f>>>0<22;k:{l:{m=p?f:22;m:{n:{if(m){v=j+16|0;k=k?H[v>>2]:v;v=ik(c,k,m);o:{if(!v){if(f>>>0<=22){break o}break k}if((v|0)<0){break k}}f=ik(k,c,m);if(!f){break n}if((f|0)>=0){break m}break l}if(f>>>0>22){break k}}if(p){break l}}Wk(c);c=$k(32);H[D>>2]=c;H[D+4>>2]=22;H[D+8>>2]=-2147483616;F[c+22|0]=0;g=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);f=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+14|0]=f;F[c+15|0]=f>>>8;F[c+16|0]=f>>>16;F[c+17|0]=f>>>24;F[c+18|0]=g;F[c+19|0]=g>>>8;F[c+20|0]=g>>>16;F[c+21|0]=g>>>24;g=I[1740]|I[1741]<<8|(I[1742]<<16|I[1743]<<24);f=I[1736]|I[1737]<<8|(I[1738]<<16|I[1739]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1732]|I[1733]<<8|(I[1734]<<16|I[1735]<<24);f=I[1728]|I[1729]<<8|(I[1730]<<16|I[1731]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;m=gi(d,D);if(F[D+11|0]>=0){break j}Wk(H[D>>2]);break j}j=j+4|0}j=H[j>>2];if(j){continue}break}}Wk(c)}if((Q(l>>>0>1?l:1)^30)>>>0<18){g=Fl(r,g,i,0);c=g+t|0;f=fa+q|0;f=c>>>0>>0?f+1|0:f;k=c;c=n<<3;g=c>>31;p=g<<1|c>>>31;g=c<<1;c=k+g|0;k=f+p|0;k=c>>>0>>0?k+1|0:k;g=c;c=h+x<<3;f=c>>31;r=c;j=h<<3;p=j;c=j+s|0;j=(j>>31)+E|0;j=c>>>0

>>0?j+1|0:j;p=c;c=r+c|0;f=f+j|0;f=c>>>0

>>0?f+1|0:f;m=(f|0)<=(k|0)&c>>>0<=g>>>0|(f|0)<(k|0)}else{m=0}}F[D|0]=m;c=H[e+20>>2];if(!H[e+16>>2]&(c|0)<=0|(c|0)<0){ya(e,H[e+4>>2],D,D+1|0)}j=0;p:{q:{switch(m|0){case 0:l=0;w=da-336|0;da=w;gk(w+80|0,0,256);c=H[D+32>>2];d=H[D+36>>2]-c|0;r:{if(!d){break r}d=d>>2;d=d>>>0>1?d:1;m=d&3;if(d-1>>>0>=3){r=d&-4;while(1){k=w+80|0;g=l<<2;d=k+(H[g+c>>2]<<3)|0;f=H[d+4>>2];p=H[d>>2]+1|0;f=p?f:f+1|0;H[d>>2]=p;H[d+4>>2]=f;d=k+(H[c+(g|4)>>2]<<3)|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=k+(H[c+(g|8)>>2]<<3)|0;d=H[f+4>>2];p=H[f>>2]+1|0;d=p?d:d+1|0;H[f>>2]=p;H[f+4>>2]=d;d=k+(H[c+(g|12)>>2]<<3)|0;f=H[d+4>>2];g=H[d>>2]+1|0;f=g?f:f+1|0;H[d>>2]=g;H[d+4>>2]=f;l=l+4|0;j=j+4|0;if((r|0)!=(j|0)){continue}break}}if(!m){break r}j=0;while(1){d=(w+80|0)+(H[c+(l<<2)>>2]<<3)|0;p=H[d+4>>2];g=H[d>>2]+1|0;p=g?p:p+1|0;H[d>>2]=g;H[d+4>>2]=p;l=l+1|0;j=j+1|0;if((m|0)!=(j|0)){continue}break}}c=w+48|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[w+8>>2]=0;H[w+12>>2]=0;H[w+16>>2]=0;H[w+20>>2]=0;H[w+24>>2]=0;H[w+28>>2]=0;H[w+32>>2]=0;H[w>>2]=0;H[w+4>>2]=0;H[w+40>>2]=0;H[w+44>>2]=0;ff(w,w+80|0,32,e);f=H[w+16>>2];d=H[w+20>>2];g=H[e+4>>2]-H[e>>2]|0;H[w+40>>2]=g;H[w+44>>2]=0;p=d<<1|f>>>31;f=(f<<1)+39|0;d=p;d=f>>>0<39?d+1|0:d;k=d>>>3|0;d=g+((d&7)<<29|f>>>3)|0;f=k;f=d>>>0>>0?f+1|0:f;d=d+8|0;ci(e,d);d=H[e>>2];H[w+28>>2]=0;H[w+32>>2]=16384;H[w+24>>2]=d+H[w+40>>2];d=c;c=b;di(d,c<<5,c>>31<<5|c>>>27,0);b=c-i|0;if((b|0)>=0){k=(i|0)<=0;c=b;while(1){l=H[w+32>>2];m=H[D+32>>2];f=H[w>>2]+(H[m+((c|0)/(i|0)<<2)>>2]<<3)|0;g=H[f>>2];j=g<<10;if(l>>>0>=j>>>0){while(1){p=H[w+28>>2];H[w+28>>2]=p+1;F[p+H[w+24>>2]|0]=l;l=H[w+32>>2]>>>8|0;H[w+32>>2]=l;if(j>>>0<=l>>>0){continue}break}m=H[D+32>>2]}r=H[f+4>>2];f=(l>>>0)/(g>>>0)|0;H[w+32>>2]=r+((f<<12)+(l-N(f,g)|0)|0);p=b-c|0;f=(p|0)/(i|0)|0;s:{if(k){break s}r=H[d+16>>2];g=H[d+20>>2];if(!r&(g|0)<=0|(g|0)<0){break s}f=H[(f<<2)+m>>2];m=0;while(1){if(!(!r&(g|0)<=0|(g|0)<0|(f|0)<=0)){r=H[(m+p<<2)+a>>2];g=H[d+12>>2];h=H[g+4>>2];j=0;while(1){t=h>>>3|0;l=t+H[g>>2]|0;q=I[l|0];h=h&7;G=l,J=Jl(h)&q,F[G|0]=J;t=t+H[g>>2]|0;F[t|0]=I[t|0]|(r>>>j&1)<>2]+1|0;H[g+4>>2]=h;j=j+1|0;if((f|0)!=(j|0)){continue}break}}m=m+1|0;if((i|0)==(m|0)){break s}r=H[d+16>>2];g=H[d+20>>2];continue}}c=c-i|0;if((c|0)>=0){continue}break}}gf(w,e);ei(d);a=H[e+20>>2];if(!H[e+16>>2]&(a|0)<=0|(a|0)<0){ya(e,H[e+4>>2],H[d>>2],H[d+4>>2])}a=H[w>>2];if(a){H[w+4>>2]=a;Wk(a)}a=H[d+12>>2];H[d+12>>2]=0;if(a){Wk(a)}a=H[d>>2];if(a){H[d+4>>2]=a;Wk(a)}da=w+336|0;j=1;w=H[D+32>>2];break p;case 1:break q;default:break p}}E=da-32|0;da=E;m=1;t:{if((h|0)>0){c=Q(h);if((c^30)>>>0>17){break t}m=32-c|0}u:{if(!d){break u}c=$k(48);F[c+32|0]=I[1582];g=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[c+24|0]=f;F[c+25|0]=f>>>8;F[c+26|0]=f>>>16;F[c+27|0]=f>>>24;F[c+28|0]=g;F[c+29|0]=g>>>8;F[c+30|0]=g>>>16;F[c+31|0]=g>>>24;g=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[c+16|0]=f;F[c+17|0]=f>>>8;F[c+18|0]=f>>>16;F[c+19|0]=f>>>24;F[c+20|0]=g;F[c+21|0]=g>>>8;F[c+22|0]=g>>>16;F[c+23|0]=g>>>24;g=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;F[c+33|0]=0;j=H[d+4>>2];if(j){v:{while(1){g=I[j+27|0];f=g<<24>>24<0;g=f?H[j+20>>2]:g;k=g>>>0<33;w:{x:{p=k?g:33;y:{z:{if(p){r=j+16|0;f=f?H[r>>2]:r;r=ik(c,f,p);A:{if(!r){if(g>>>0<=33){break A}break w}if((r|0)<0){break w}}g=ik(f,c,p);if(!g){break z}if((g|0)>=0){break y}break x}if(g>>>0>33){break w}}if(k){break x}}Wk(c);c=$k(48);H[E+16>>2]=c;H[E+20>>2]=33;H[E+24>>2]=-2147483600;F[c+33|0]=0;F[c+32|0]=I[1582];g=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[c+24|0]=f;F[c+25|0]=f>>>8;F[c+26|0]=f>>>16;F[c+27|0]=f>>>24;F[c+28|0]=g;F[c+29|0]=g>>>8;F[c+30|0]=g>>>16;F[c+31|0]=g>>>24;g=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[c+16|0]=f;F[c+17|0]=f>>>8;F[c+18|0]=f>>>16;F[c+19|0]=f>>>24;F[c+20|0]=g;F[c+21|0]=g>>>8;F[c+22|0]=g>>>16;F[c+23|0]=g>>>24;g=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=g;F[c+13|0]=g>>>8;F[c+14|0]=g>>>16;F[c+15|0]=g>>>24;g=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=g;F[c+5|0]=g>>>8;F[c+6|0]=g>>>16;F[c+7|0]=g>>>24;c=gi(d,E+16|0);if(F[E+27|0]<0){Wk(H[E+16>>2])}if((c|0)>3){break v}m=m-2|0;break u}j=j+4|0}j=H[j>>2];if(j){continue}break}Wk(c);break u}if(c>>>0<=5){m=m-1|0;break u}if(c>>>0>=10){m=m+2|0;break u}m=(c>>>0>7)+m|0;break u}Wk(c)}c=(m|0)>1?m:1;c=c>>>0<18?c:18;F[E+15|0]=c;d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){ya(e,H[e+4>>2],E+15|0,E+16|0)}j=0;B:{switch(c-1|0){case 0:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;C:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}D:{if((b|0)<=0){break D}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;c=(H[t+(c|12)>>2]<<3)+q|0;p=H[c+4>>2];d=H[c>>2]+1|0;p=d?p:p+1|0;H[c>>2]=d;H[c+4>>2]=p;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}f=b&3;if(!f){break D}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;E:{if((d|0)<=0){break E}n=d&3;F:{if(d-1>>>0<3){h=0;break F}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;f=g+A|0;p=k+r|0;f=p>>>0>>0?f+1|0:f;k=p;g=y+k|0;p=d+f|0;p=g>>>0>>0?p+1|0:p;d=g+x|0;f=l+p|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break E}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=d+r|0;d=a+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;G:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break G}if(d>>>0<=f>>>0){break G}H[i+4>>2]=(f<<3)+a}l=0;n=0;H:{I:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;J:{if(o<4294967296&o>=0){d=~~o>>>0;break J}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break I}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;K:{if((c|0)<0){break K}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break K}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;L:{if((g|0)<=512){qf(l,a,s+24|0,d,0,0);break L}h=d>>>0<536870911?d:536870911;M:{while(1){g=$k(h<<2);if(g){break M}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}qf(l,a,s+24|0,d,0,0);break L}qf(l,a,s+24|0,d,g,h);Wk(g)}N:{O:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break O}P:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;Q:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));R:{if(P(u)<2147483648){g=~~u;break R}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Q}d=(a|0)>1;a=a-1|0;if(d){continue}break Q}break}if((a|0)==(c|0)){break P}}if((m|0)<=0){break N}l=H[s+8>>2];continue}}if(n>>>0<4097){break O}while(1)continue}Wk(l);break H}if(!l){break I}}Wk(l)}if((c|0)<0){break H}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break H}h=0;o=0;S:{if((c|0)<0){break S}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break S}a=h<<3;c=H[a+g>>2];if(!c){break S}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*.000244140625)+o}o=U(-o);T:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break T}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;f=a>>>0<39?f+1|0:f;a=c+((f&7)<<29|a>>>3)|0;j=f>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}gf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break C}j=1;break t;case 1:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;U:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}V:{if((b|0)<=0){break V}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break V}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;f=H[c+4>>2];j=H[c>>2]+1|0;f=j?f:f+1|0;H[c>>2]=j;H[c+4>>2]=f;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;W:{if((d|0)<=0){break W}l=d&3;X:{if(d-1>>>0<3){h=0;break X}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=j;j=f;f=k;r=f+r|0;k=g+A|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;j=f+j|0;j=d>>>0>>0?j+1|0:j;g=d;d=d+v|0;p=j+p|0;r=d;g=d>>>0>>0?p+1|0:p;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break W}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=a+g|0;d=d+r|0;f=d>>>0>>0?f+1|0:f;r=d;g=f;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Y:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break Y}if(d>>>0<=f>>>0){break Y}H[i+4>>2]=(f<<3)+a}l=0;n=0;Z:{_:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;$:{if(o<4294967296&o>=0){d=~~o>>>0;break $}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break _}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;aa:{if((c|0)<0){break aa}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break aa}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;ba:{if((g|0)<=512){tf(l,a,s+24|0,d,0,0);break ba}h=d>>>0<536870911?d:536870911;ca:{while(1){g=$k(h<<2);if(g){break ca}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}tf(l,a,s+24|0,d,0,0);break ba}tf(l,a,s+24|0,d,g,h);Wk(g)}da:{ea:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break ea}fa:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;ga:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));ha:{if(P(u)<2147483648){g=~~u;break ha}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break ga}d=(a|0)>1;a=a-1|0;if(d){continue}break ga}break}if((a|0)==(c|0)){break fa}}if((m|0)<=0){break da}l=H[s+8>>2];continue}}if(n>>>0<4097){break ea}while(1)continue}Wk(l);break Z}if(!l){break _}}Wk(l)}if((c|0)<0){break Z}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break Z}h=0;o=0;ia:{if((c|0)<0){break ia}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break ia}a=h<<3;c=H[a+g>>2];if(!c){break ia}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*.000244140625)+o}o=U(-o);ja:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break ja}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;j=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?j+1|0:j;a=c+((k&7)<<29|a>>>3)|0;p=k>>>3|0;p=a>>>0>>0?p+1|0:p;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}gf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break U}j=1;break t;case 2:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;ka:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}la:{if((b|0)<=0){break la}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;f=(H[t+(c|8)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}d=b&3;if(!d){break la}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;ma:{if((d|0)<=0){break ma}n=d&3;na:{if(d-1>>>0<3){h=0;break na}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=j;j=d;y=p;d=g+A|0;p=k+r|0;d=p>>>0>>0?d+1|0:d;k=p;g=y+k|0;j=d+j|0;j=g>>>0>>0?j+1|0:j;d=g+x|0;p=f+j|0;p=d>>>0>>0?p+1|0:p;g=d;d=d+v|0;f=l+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break ma}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;oa:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break oa}if(d>>>0<=f>>>0){break oa}H[i+4>>2]=(f<<3)+a}l=0;n=0;pa:{qa:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;ra:{if(o<4294967296&o>=0){d=~~o>>>0;break ra}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break qa}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;sa:{if((c|0)<0){break sa}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break sa}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;ta:{if((g|0)<=512){wf(l,a,s+24|0,d,0,0);break ta}h=d>>>0<536870911?d:536870911;ua:{while(1){g=$k(h<<2);if(g){break ua}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}wf(l,a,s+24|0,d,0,0);break ta}wf(l,a,s+24|0,d,g,h);Wk(g)}va:{wa:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break wa}xa:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;ya:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));za:{if(P(u)<2147483648){g=~~u;break za}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break ya}d=(a|0)>1;a=a-1|0;if(d){continue}break ya}break}if((a|0)==(c|0)){break xa}}if((m|0)<=0){break va}l=H[s+8>>2];continue}}if(n>>>0<4097){break wa}while(1)continue}Wk(l);break pa}if(!l){break qa}}Wk(l)}if((c|0)<0){break pa}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break pa}h=0;o=0;Aa:{if((c|0)<0){break Aa}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Aa}a=h<<3;c=H[a+g>>2];if(!c){break Aa}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*.000244140625)+o}o=U(-o);Ba:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ba}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;p=a<<1|d>>>31;a=(d<<1)+39|0;d=p;d=a>>>0<39?d+1|0:d;a=c+((d&7)<<29|a>>>3)|0;f=d>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}gf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break ka}j=1;break t;case 3:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Ca:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}Da:{if((b|0)<=0){break Da}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;c=(H[t+(c|12)>>2]<<3)+q|0;p=H[c+4>>2];d=H[c>>2]+1|0;p=d?p:p+1|0;H[c>>2]=d;H[c+4>>2]=p;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}f=b&3;if(!f){break Da}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Ea:{if((d|0)<=0){break Ea}n=d&3;Fa:{if(d-1>>>0<3){h=0;break Fa}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;f=g+A|0;p=k+r|0;f=p>>>0>>0?f+1|0:f;k=p;g=y+k|0;p=d+f|0;p=g>>>0>>0?p+1|0:p;d=g+x|0;f=l+p|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break Ea}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=d+r|0;d=a+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Ga:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break Ga}if(d>>>0<=f>>>0){break Ga}H[i+4>>2]=(f<<3)+a}l=0;n=0;Ha:{Ia:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;Ja:{if(o<4294967296&o>=0){d=~~o>>>0;break Ja}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break Ia}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;Ka:{if((c|0)<0){break Ka}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Ka}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;La:{if((g|0)<=512){zf(l,a,s+24|0,d,0,0);break La}h=d>>>0<536870911?d:536870911;Ma:{while(1){g=$k(h<<2);if(g){break Ma}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}zf(l,a,s+24|0,d,0,0);break La}zf(l,a,s+24|0,d,g,h);Wk(g)}Na:{Oa:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break Oa}Pa:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;Qa:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Ra:{if(P(u)<2147483648){g=~~u;break Ra}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Qa}d=(a|0)>1;a=a-1|0;if(d){continue}break Qa}break}if((a|0)==(c|0)){break Pa}}if((m|0)<=0){break Na}l=H[s+8>>2];continue}}if(n>>>0<4097){break Oa}while(1)continue}Wk(l);break Ha}if(!l){break Ia}}Wk(l)}if((c|0)<0){break Ha}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break Ha}h=0;o=0;Sa:{if((c|0)<0){break Sa}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Sa}a=h<<3;c=H[a+g>>2];if(!c){break Sa}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*.000244140625)+o}o=U(-o);Ta:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ta}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;f=a>>>0<39?f+1|0:f;a=c+((f&7)<<29|a>>>3)|0;j=f>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}gf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break Ca}j=1;break t;case 4:c=0;h=0;m=0;q=0;g=da+-64|0;da=g;H[g+56>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;Ua:{d=l+1|0;if(d>>>0>=l>>>0){if(d>>>0>=536870912){break a}d=d<<3;c=$k(d);H[g+48>>2]=c;h=c+d|0;H[g+56>>2]=h;gk(c,0,(l<<3)+8|0);H[g+52>>2]=h}Va:{if((b|0)<=0){break Va}l=0;if(b-1>>>0>=3){p=b&-4;while(1){d=l<<2;j=(H[d+a>>2]<<3)+c|0;f=H[j+4>>2];k=H[j>>2]+1|0;f=k?f:f+1|0;H[j>>2]=k;H[j+4>>2]=f;j=(H[(d|4)+a>>2]<<3)+c|0;f=H[j+4>>2];k=H[j>>2]+1|0;f=k?f:f+1|0;H[j>>2]=k;H[j+4>>2]=f;f=(H[(d|8)+a>>2]<<3)+c|0;k=H[f+4>>2];j=H[f>>2]+1|0;k=j?k:k+1|0;H[f>>2]=j;H[f+4>>2]=k;d=(H[(d|12)+a>>2]<<3)+c|0;f=H[d+4>>2];j=H[d>>2]+1|0;f=j?f:f+1|0;H[d>>2]=j;H[d+4>>2]=f;l=l+4|0;m=m+4|0;if((p|0)!=(m|0)){continue}break}}j=b&3;if(!j){break Va}while(1){d=(H[(l<<2)+a>>2]<<3)+c|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;l=l+1|0;q=q+1|0;if((j|0)!=(q|0)){continue}break}}H[g+8>>2]=0;H[g+12>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;H[g+32>>2]=0;H[g>>2]=0;H[g+4>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;ff(g,c,h-c>>3,e);f=H[g+16>>2];c=H[g+20>>2];d=H[e+4>>2]-H[e>>2]|0;H[g+40>>2]=d;H[g+44>>2]=0;j=f;f=c<<1|f>>>31;c=(j<<1)+39|0;k=c>>>0<39?f+1|0:f;c=d+((k&7)<<29|c>>>3)|0;f=k>>>3|0;f=c>>>0>>0?f+1|0:f;c=c+8|0;ci(e,c);c=H[e>>2];H[g+28>>2]=0;H[g+32>>2]=16384;H[g+24>>2]=c+H[g+40>>2];if((b|0)>0){l=16384;while(1){c=b-1|0;f=H[g>>2]+(H[(c<<2)+a>>2]<<3)|0;d=H[f>>2];j=d<<10;if(j>>>0<=l>>>0){while(1){k=H[g+28>>2];H[g+28>>2]=k+1;F[k+H[g+24>>2]|0]=l;l=H[g+32>>2]>>>8|0;H[g+32>>2]=l;if(j>>>0<=l>>>0){continue}break}}k=H[f+4>>2];f=(l>>>0)/(d>>>0)|0;l=k+((f<<12)+(l-N(d,f)|0)|0)|0;H[g+32>>2]=l;d=(b|0)>1;b=c;if(d){continue}break}}gf(g,e);a=H[g>>2];if(a){H[g+4>>2]=a;Wk(a)}a=H[g+48>>2];if(a){Wk(a)}da=g- -64|0;break Ua}j=1;break t;case 5:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Wa:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}Xa:{if((b|0)<=0){break Xa}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Xa}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Ya:{if((d|0)<=0){break Ya}n=d&3;Za:{if(d-1>>>0<3){h=0;break Za}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;p=g+A|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=y+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break Ya}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;_a:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break _a}if(d>>>0<=f>>>0){break _a}H[i+4>>2]=(f<<3)+a}l=0;n=0;$a:{ab:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;bb:{if(o<4294967296&o>=0){d=~~o>>>0;break bb}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break ab}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;cb:{if((c|0)<0){break cb}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break cb}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;db:{if((g|0)<=512){Cf(l,a,s+24|0,d,0,0);break db}h=d>>>0<536870911?d:536870911;eb:{while(1){g=$k(h<<2);if(g){break eb}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Cf(l,a,s+24|0,d,0,0);break db}Cf(l,a,s+24|0,d,g,h);Wk(g)}fb:{gb:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break gb}hb:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;ib:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));jb:{if(P(u)<2147483648){g=~~u;break jb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break ib}d=(a|0)>1;a=a-1|0;if(d){continue}break ib}break}if((a|0)==(c|0)){break hb}}if((m|0)<=0){break fb}l=H[s+8>>2];continue}}if(n>>>0<4097){break gb}while(1)continue}Wk(l);break $a}if(!l){break ab}}Wk(l)}if((c|0)<0){break $a}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break $a}h=0;o=0;kb:{if((c|0)<0){break kb}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break kb}a=h<<3;c=H[a+g>>2];if(!c){break kb}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*.000244140625)+o}o=U(-o);lb:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break lb}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}gf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break Wa}j=1;break t;case 6:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;mb:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}nb:{if((b|0)<=0){break nb}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;f=(H[t+(c|8)>>2]<<3)+q|0;d=H[f+4>>2];k=H[f>>2]+1|0;d=k?d:d+1|0;H[f>>2]=k;H[f+4>>2]=d;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break nb}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;ob:{if((d|0)<=0){break ob}l=d&3;pb:{if(d-1>>>0<3){h=0;break pb}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=j;j=f;f=d;d=g+A|0;r=k+r|0;d=r>>>0>>0?d+1|0:d;k=r;g=k+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;j=f+j|0;j=d>>>0>>0?j+1|0:j;g=d;d=d+v|0;f=j+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break ob}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;p=a+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;qb:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break qb}if(d>>>0<=f>>>0){break qb}H[i+4>>2]=(f<<3)+a}l=0;n=0;rb:{sb:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;tb:{if(o<4294967296&o>=0){d=~~o>>>0;break tb}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break sb}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;ub:{if((c|0)<0){break ub}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break ub}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;vb:{if((g|0)<=512){Ff(l,a,s+24|0,d,0,0);break vb}h=d>>>0<536870911?d:536870911;wb:{while(1){g=$k(h<<2);if(g){break wb}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Ff(l,a,s+24|0,d,0,0);break vb}Ff(l,a,s+24|0,d,g,h);Wk(g)}xb:{yb:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break yb}zb:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;Ab:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Bb:{if(P(u)<2147483648){g=~~u;break Bb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Ab}d=(a|0)>1;a=a-1|0;if(d){continue}break Ab}break}if((a|0)==(c|0)){break zb}}if((m|0)<=0){break xb}l=H[s+8>>2];continue}}if(n>>>0<4097){break yb}while(1)continue}Wk(l);break rb}if(!l){break sb}}Wk(l)}if((c|0)<0){break rb}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break rb}h=0;o=0;Cb:{if((c|0)<0){break Cb}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Cb}a=h<<3;c=H[a+g>>2];if(!c){break Cb}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*.000244140625)+o}o=U(-o);Db:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Db}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;j=a<<1|d>>>31;a=(d<<1)+39|0;d=j;d=a>>>0<39?d+1|0:d;f=d>>>3|0;a=c+((d&7)<<29|a>>>3)|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}gf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break mb}j=1;break t;case 7:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Eb:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}Fb:{if((b|0)<=0){break Fb}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}f=b&3;if(!f){break Fb}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Gb:{if((d|0)<=0){break Gb}l=d&3;Hb:{if(d-1>>>0<3){h=0;break Hb}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=j;j=k;r=j+r|0;k=g+A|0;k=j>>>0>r>>>0?k+1|0:k;g=r+n|0;j=d+k|0;j=g>>>0>>0?j+1|0:j;d=g+x|0;f=f+j|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;f=f+p|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break Gb}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=d+r|0;d=a+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Ib:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break Ib}if(d>>>0<=f>>>0){break Ib}H[i+4>>2]=(f<<3)+a}l=0;n=0;Jb:{Kb:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*4096+.5;Lb:{if(o<4294967296&o>=0){d=~~o>>>0;break Lb}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==4096){break Kb}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;Mb:{if((c|0)<0){break Mb}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Mb}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Nb:{if((g|0)<=512){If(l,a,s+24|0,d,0,0);break Nb}h=d>>>0<536870911?d:536870911;Ob:{while(1){g=$k(h<<2);if(g){break Ob}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}If(l,a,s+24|0,d,0,0);break Nb}If(l,a,s+24|0,d,g,h);Wk(g)}Pb:{Qb:{if((n|0)<4096){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+4096;break Qb}Rb:{if((c|0)>0){m=n-4096|0;while(1){o=4096/+(n|0);j=H[i>>2];a=c;Sb:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Tb:{if(P(u)<2147483648){g=~~u;break Tb}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==4096){n=4096;break Sb}d=(a|0)>1;a=a-1|0;if(d){continue}break Sb}break}if((a|0)==(c|0)){break Rb}}if((m|0)<=0){break Pb}l=H[s+8>>2];continue}}if(n>>>0<4097){break Qb}while(1)continue}Wk(l);break Jb}if(!l){break Kb}}Wk(l)}if((c|0)<0){break Jb}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=4096){break Jb}h=0;o=0;Ub:{if((c|0)<0){break Ub}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.000244140625)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Ub}a=h<<3;c=H[a+g>>2];if(!c){break Ub}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*.000244140625)+o}o=U(-o);Vb:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Vb}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;f=k>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=16384;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=16384;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<12)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}gf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break Eb}j=1;break t;case 8:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Wb:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}Xb:{if((b|0)<=0){break Xb}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Xb}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Yb:{if((d|0)<=0){break Yb}n=d&3;Zb:{if(d-1>>>0<3){h=0;break Zb}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;p=g+A|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=y+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break Yb}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;_b:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break _b}if(d>>>0<=f>>>0){break _b}H[i+4>>2]=(f<<3)+a}l=0;n=0;$b:{ac:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*8192+.5;bc:{if(o<4294967296&o>=0){d=~~o>>>0;break bc}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==8192){break ac}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;cc:{if((c|0)<0){break cc}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break cc}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;dc:{if((g|0)<=512){Lf(l,a,s+24|0,d,0,0);break dc}h=d>>>0<536870911?d:536870911;ec:{while(1){g=$k(h<<2);if(g){break ec}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Lf(l,a,s+24|0,d,0,0);break dc}Lf(l,a,s+24|0,d,g,h);Wk(g)}fc:{gc:{if((n|0)<8192){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -8192;break gc}hc:{if((c|0)>0){m=n+-8192|0;while(1){o=8192/+(n|0);j=H[i>>2];a=c;ic:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));jc:{if(P(u)<2147483648){g=~~u;break jc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==8192){n=8192;break ic}d=(a|0)>1;a=a-1|0;if(d){continue}break ic}break}if((a|0)==(c|0)){break hc}}if((m|0)<=0){break fc}l=H[s+8>>2];continue}}if(n>>>0<8193){break gc}while(1)continue}Wk(l);break $b}if(!l){break ac}}Wk(l)}if((c|0)<0){break $b}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=8192){break $b}h=0;o=0;kc:{if((c|0)<0){break kc}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.0001220703125)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*.0001220703125)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break kc}a=h<<3;c=H[a+g>>2];if(!c){break kc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*.0001220703125)+o}o=U(-o);lc:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break lc}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=32768;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=32768;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<13)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];b=d-32768|0;mc:{if(b>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=b;b=H[i+28>>2]+1|0;break mc}if(b>>>0<=16383){b=H[i+24>>2]+H[i+28>>2]|0;d=d-16384|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[i+28>>2]+2|0;break mc}if(b>>>0<=4194303){b=H[i+24>>2]+H[i+28>>2]|0;d=d+8355840|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[i+28>>2]+3|0;break mc}if(b>>>0<=1073741823){b=H[i+24>>2]+H[i+28>>2]|0;d=d-1073774592|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[i+28>>2]+4|0;break mc}b=H[i+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;kf(b,f,a);d=H[a+4>>2]-H[a>>2]|0;fk(d+c|0,c,b);ek(c,H[a>>2],d);g=H[i+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[i+40>>2]|0;ci(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){Wk(b)}b=H[a>>2];if(b){H[a+4>>2]=b;Wk(b)}da=a+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break Wb}j=1;break t;case 9:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;nc:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}oc:{if((b|0)<=0){break oc}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break oc}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;pc:{if((d|0)<=0){break pc}l=d&3;qc:{if(d-1>>>0<3){h=0;break qc}A=d&-4;h=0;while(1){C=h|1;f=(C<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];n=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];x=H[k>>2];y=c;c=(h<<3)+q|0;v=H[c+4>>2];k=H[c>>2];c=j|x?z:f|n?B:d|p?C:!(v|k)?y:h;y=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=y+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((A|0)!=(a|0)){continue}break}}if(!l){break pc}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;j=a+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;rc:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break rc}if(d>>>0<=f>>>0){break rc}H[i+4>>2]=(f<<3)+a}l=0;n=0;sc:{tc:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*32768+.5;uc:{if(o<4294967296&o>=0){d=~~o>>>0;break uc}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==32768){break tc}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;vc:{if((c|0)<0){break vc}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break vc}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;wc:{if((g|0)<=512){Of(l,a,s+24|0,d,0,0);break wc}h=d>>>0<536870911?d:536870911;xc:{while(1){g=$k(h<<2);if(g){break xc}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Of(l,a,s+24|0,d,0,0);break wc}Of(l,a,s+24|0,d,g,h);Wk(g)}yc:{zc:{if((n|0)<32768){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+32768;break zc}Ac:{if((c|0)>0){m=n-32768|0;while(1){o=32768/+(n|0);j=H[i>>2];a=c;Bc:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Cc:{if(P(u)<2147483648){g=~~u;break Cc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==32768){n=32768;break Bc}d=(a|0)>1;a=a-1|0;if(d){continue}break Bc}break}if((a|0)==(c|0)){break Ac}}if((m|0)<=0){break yc}l=H[s+8>>2];continue}}if(n>>>0<32769){break zc}while(1)continue}Wk(l);break sc}if(!l){break tc}}Wk(l)}if((c|0)<0){break sc}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=32768){break sc}h=0;o=0;Dc:{if((c|0)<0){break Dc}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*30517578125e-15)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*30517578125e-15)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Dc}a=h<<3;c=H[a+g>>2];if(!c){break Dc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*30517578125e-15)+o}o=U(-o);Ec:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ec}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=131072;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=131072;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<15)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}b=da-32|0;da=b;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];a=d-131072|0;Fc:{if(a>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=a;a=H[i+28>>2]+1|0;break Fc}if(a>>>0<=16383){a=H[i+24>>2]+H[i+28>>2]|0;d=d-114688|0;F[a|0]=d;F[a+1|0]=d>>>8;a=H[i+28>>2]+2|0;break Fc}if(a>>>0<=4194303){a=H[i+24>>2]+H[i+28>>2]|0;d=d+8257536|0;F[a+2|0]=d>>>16;F[a+1|0]=d>>>8;F[a|0]=d;a=H[i+28>>2]+3|0;break Fc}if(a>>>0<=1073741823){a=H[i+24>>2]+H[i+28>>2]|0;d=d-1073872896|0;F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;a=H[i+28>>2]+4|0;break Fc}a=H[i+28>>2]}H[b>>2]=0;H[b+4>>2]=0;F[b+24|0]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;f=a>>31;kf(a,f,b);d=H[b+4>>2]-H[b>>2]|0;fk(d+c|0,c,a);ek(c,H[b>>2],d);g=H[i+44>>2];c=a+d|0;f=c>>>0>>0?f+1|0:f;a=c+H[i+40>>2]|0;ci(e,a);a=H[b+12>>2];H[b+12>>2]=0;if(a){Wk(a)}a=H[b>>2];if(a){H[b+4>>2]=a;Wk(a)}da=b+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break nc}j=1;break t;case 10:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Gc:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}Hc:{if((b|0)<=0){break Hc}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|4)>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;k=H[c+4>>2];d=H[c>>2]+1|0;k=d?k:k+1|0;H[c>>2]=d;H[c+4>>2]=k;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Hc}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;f=H[c+4>>2];j=H[c>>2]+1|0;f=j?f:f+1|0;H[c>>2]=j;H[c+4>>2]=f;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Ic:{if((d|0)<=0){break Ic}l=d&3;Jc:{if(d-1>>>0<3){h=0;break Jc}A=d&-4;h=0;while(1){C=h|1;f=(C<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];n=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];x=H[k>>2];y=c;c=(h<<3)+q|0;v=H[c+4>>2];k=H[c>>2];c=j|x?z:f|n?B:d|p?C:!(v|k)?y:h;y=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;g=y+r|0;k=d+p|0;k=g>>>0>>0?k+1|0:k;d=g+n|0;f=f+k|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+x|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;h=h+4|0;a=a+4|0;if((A|0)!=(a|0)){continue}break}}if(!l){break Ic}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=a+g|0;d=d+r|0;f=d>>>0>>0?f+1|0:f;r=d;g=f;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Kc:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break Kc}if(d>>>0<=f>>>0){break Kc}H[i+4>>2]=(f<<3)+a}l=0;n=0;Lc:{Mc:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*65536+.5;Nc:{if(o<4294967296&o>=0){d=~~o>>>0;break Nc}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==65536){break Mc}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;Oc:{if((c|0)<0){break Oc}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Oc}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Pc:{if((g|0)<=512){Rf(l,a,s+24|0,d,0,0);break Pc}h=d>>>0<536870911?d:536870911;Qc:{while(1){g=$k(h<<2);if(g){break Qc}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Rf(l,a,s+24|0,d,0,0);break Pc}Rf(l,a,s+24|0,d,g,h);Wk(g)}Rc:{Sc:{if((n|0)<65536){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+65536;break Sc}Tc:{if((c|0)>0){m=n-65536|0;while(1){o=65536/+(n|0);j=H[i>>2];a=c;Uc:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Vc:{if(P(u)<2147483648){g=~~u;break Vc}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==65536){n=65536;break Uc}d=(a|0)>1;a=a-1|0;if(d){continue}break Uc}break}if((a|0)==(c|0)){break Tc}}if((m|0)<=0){break Rc}l=H[s+8>>2];continue}}if(n>>>0<65537){break Sc}while(1)continue}Wk(l);break Lc}if(!l){break Mc}}Wk(l)}if((c|0)<0){break Lc}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=65536){break Lc}h=0;o=0;Wc:{if((c|0)<0){break Wc}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*152587890625e-16)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*152587890625e-16)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Wc}a=h<<3;c=H[a+g>>2];if(!c){break Wc}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*152587890625e-16)+o}o=U(-o);Xc:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Xc}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;d=p>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=262144;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=262144;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<16)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}b=da-32|0;da=b;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];a=d-262144|0;Yc:{if(a>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=a;a=H[i+28>>2]+1|0;break Yc}if(a>>>0<=16383){a=H[i+24>>2]+H[i+28>>2]|0;d=d-245760|0;F[a|0]=d;F[a+1|0]=d>>>8;a=H[i+28>>2]+2|0;break Yc}if(a>>>0<=4194303){a=H[i+24>>2]+H[i+28>>2]|0;d=d+8126464|0;F[a+2|0]=d>>>16;F[a+1|0]=d>>>8;F[a|0]=d;a=H[i+28>>2]+3|0;break Yc}if(a>>>0<=1073741823){a=H[i+24>>2]+H[i+28>>2]|0;d=d-1074003968|0;F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;a=H[i+28>>2]+4|0;break Yc}a=H[i+28>>2]}H[b>>2]=0;H[b+4>>2]=0;F[b+24|0]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;f=a>>31;kf(a,f,b);d=H[b+4>>2]-H[b>>2]|0;fk(d+c|0,c,a);ek(c,H[b>>2],d);g=H[i+44>>2];c=a+d|0;f=c>>>0>>0?f+1|0:f;a=c+H[i+40>>2]|0;ci(e,a);a=H[b+12>>2];H[b+12>>2]=0;if(a){Wk(a)}a=H[b>>2];if(a){H[b+4>>2]=a;Wk(a)}da=b+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break Gc}j=1;break t;case 11:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Zc:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}_c:{if((b|0)<=0){break _c}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;f=(H[t+(c|4)>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;j=H[c+4>>2];d=H[c>>2]+1|0;j=d?j:j+1|0;H[c>>2]=d;H[c+4>>2]=j;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}f=b&3;if(!f){break _c}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;d=H[c+4>>2];j=H[c>>2]+1|0;d=j?d:d+1|0;H[c>>2]=j;H[c+4>>2]=d;a=a+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;$c:{if((d|0)<=0){break $c}n=d&3;ad:{if(d-1>>>0<3){h=0;break ad}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=j;y=p;p=g+A|0;j=k+r|0;p=j>>>0>>0?p+1|0:p;k=j;g=y+j|0;j=d+p|0;j=g>>>0>>0?j+1|0:j;d=g+x|0;f=f+j|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;k=f+l|0;r=d;g=d>>>0>>0?k+1|0:k;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break $c}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;f=d+r|0;d=a+g|0;d=f>>>0>>0?d+1|0:d;r=f;g=d;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;bd:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break bd}if(d>>>0<=f>>>0){break bd}H[i+4>>2]=(f<<3)+a}l=0;n=0;cd:{dd:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*262144+.5;ed:{if(o<4294967296&o>=0){d=~~o>>>0;break ed}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==262144){break dd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;fd:{if((c|0)<0){break fd}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break fd}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;gd:{if((g|0)<=512){Uf(l,a,s+24|0,d,0,0);break gd}h=d>>>0<536870911?d:536870911;hd:{while(1){g=$k(h<<2);if(g){break hd}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Uf(l,a,s+24|0,d,0,0);break gd}Uf(l,a,s+24|0,d,g,h);Wk(g)}id:{jd:{if((n|0)<262144){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+262144;break jd}kd:{if((c|0)>0){m=n-262144|0;while(1){o=262144/+(n|0);j=H[i>>2];a=c;ld:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));md:{if(P(u)<2147483648){g=~~u;break md}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==262144){n=262144;break ld}d=(a|0)>1;a=a-1|0;if(d){continue}break ld}break}if((a|0)==(c|0)){break kd}}if((m|0)<=0){break id}l=H[s+8>>2];continue}}if(n>>>0<262145){break jd}while(1)continue}Wk(l);break cd}if(!l){break dd}}Wk(l)}if((c|0)<0){break cd}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=262144){break cd}h=0;o=0;nd:{if((c|0)<0){break nd}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*3814697265625e-18)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*3814697265625e-18)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break nd}a=h<<3;c=H[a+g>>2];if(!c){break nd}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*3814697265625e-18)+o}o=U(-o);od:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break od}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;k=p>>>3|0;k=a>>>0>>0?k+1|0:k;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=1048576;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=1048576;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<18)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];b=d+-1048576|0;pd:{if(b>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=b;b=H[i+28>>2]+1|0;break pd}if(b>>>0<=16383){b=H[i+24>>2]+H[i+28>>2]|0;d=d-1032192|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[i+28>>2]+2|0;break pd}if(b>>>0<=4194303){b=H[i+24>>2]+H[i+28>>2]|0;d=d+7340032|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[i+28>>2]+3|0;break pd}if(b>>>0<=1073741823){b=H[i+24>>2]+H[i+28>>2]|0;d=d-1074790400|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[i+28>>2]+4|0;break pd}b=H[i+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;kf(b,f,a);d=H[a+4>>2]-H[a>>2]|0;fk(d+c|0,c,b);ek(c,H[a>>2],d);g=H[i+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[i+40>>2]|0;ci(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){Wk(b)}b=H[a>>2];if(b){H[a+4>>2]=b;Wk(b)}da=a+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break Zc}j=1;break t;case 12:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;qd:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}rd:{if((b|0)<=0){break rd}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break rd}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;sd:{if((d|0)<=0){break sd}n=d&3;td:{if(d-1>>>0<3){h=0;break td}C=d&-4;h=0;while(1){l=h|1;f=(l<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|p?l:!(A|k)?y:h;l=f;y=p;p=g+A|0;f=k+r|0;p=f>>>0>>0?p+1|0:p;k=f;g=y+f|0;f=d+p|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+l|0;f=d>>>0>>0?f+1|0:f;g=d;d=d+v|0;j=f+j|0;r=d;g=d>>>0>>0?j+1|0:j;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!n){break sd}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;ud:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break ud}if(d>>>0<=f>>>0){break ud}H[i+4>>2]=(f<<3)+a}l=0;n=0;vd:{wd:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*524288+.5;xd:{if(o<4294967296&o>=0){d=~~o>>>0;break xd}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==524288){break wd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;yd:{if((c|0)<0){break yd}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break yd}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;zd:{if((g|0)<=512){Xf(l,a,s+24|0,d,0,0);break zd}h=d>>>0<536870911?d:536870911;Ad:{while(1){g=$k(h<<2);if(g){break Ad}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}Xf(l,a,s+24|0,d,0,0);break zd}Xf(l,a,s+24|0,d,g,h);Wk(g)}Bd:{Cd:{if((n|0)<524288){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)+524288;break Cd}Dd:{if((c|0)>0){m=n-524288|0;while(1){o=524288/+(n|0);j=H[i>>2];a=c;Ed:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Fd:{if(P(u)<2147483648){g=~~u;break Fd}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==524288){n=524288;break Ed}d=(a|0)>1;a=a-1|0;if(d){continue}break Ed}break}if((a|0)==(c|0)){break Dd}}if((m|0)<=0){break Bd}l=H[s+8>>2];continue}}if(n>>>0<524289){break Cd}while(1)continue}Wk(l);break vd}if(!l){break wd}}Wk(l)}if((c|0)<0){break vd}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=524288){break vd}h=0;o=0;Gd:{if((c|0)<0){break Gd}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*19073486328125e-19)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*19073486328125e-19)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Gd}a=h<<3;c=H[a+g>>2];if(!c){break Gd}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*19073486328125e-19)+o}o=U(-o);Hd:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Hd}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;j=p>>>3|0;j=a>>>0>>0?j+1|0:j;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=2097152;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=2097152;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<19)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}a=da-32|0;da=a;c=H[e>>2]+H[i+40>>2]|0;d=H[i+32>>2];b=d-2097152|0;Id:{if(b>>>0<=63){F[H[i+24>>2]+H[i+28>>2]|0]=b;b=H[i+28>>2]+1|0;break Id}if(b>>>0<=16383){b=H[i+24>>2]+H[i+28>>2]|0;d=d-2080768|0;F[b|0]=d;F[b+1|0]=d>>>8;b=H[i+28>>2]+2|0;break Id}if(b>>>0<=4194303){b=H[i+24>>2]+H[i+28>>2]|0;d=d+6291456|0;F[b+2|0]=d>>>16;F[b+1|0]=d>>>8;F[b|0]=d;b=H[i+28>>2]+3|0;break Id}if(b>>>0<=1073741823){b=H[i+24>>2]+H[i+28>>2]|0;d=d-1075838976|0;F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;b=H[i+28>>2]+4|0;break Id}b=H[i+28>>2]}H[a>>2]=0;H[a+4>>2]=0;F[a+24|0]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;f=b>>31;kf(b,f,a);d=H[a+4>>2]-H[a>>2]|0;fk(d+c|0,c,b);ek(c,H[a>>2],d);g=H[i+44>>2];c=b+d|0;f=c>>>0>>0?f+1|0:f;b=c+H[i+40>>2]|0;ci(e,b);b=H[a+12>>2];H[a+12>>2]=0;if(b){Wk(b)}b=H[a>>2];if(b){H[a+4>>2]=b;Wk(b)}da=a+32|0;a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break qd}j=1;break t;case 13:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Jd:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}Kd:{if((b|0)<=0){break Kd}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Kd}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Ld:{if((d|0)<=0){break Ld}l=d&3;Md:{if(d-1>>>0<3){h=0;break Md}A=d&-4;h=0;while(1){C=h|1;f=(C<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];n=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];x=H[k>>2];y=c;c=(h<<3)+q|0;v=H[c+4>>2];k=H[c>>2];c=j|x?z:f|n?B:d|p?C:!(v|k)?y:h;y=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=y+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((A|0)!=(a|0)){continue}break}}if(!l){break Ld}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;j=a+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Nd:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break Nd}if(d>>>0<=f>>>0){break Nd}H[i+4>>2]=(f<<3)+a}l=0;n=0;Od:{Pd:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;Qd:{if(o<4294967296&o>=0){d=~~o>>>0;break Qd}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break Pd}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;Rd:{if((c|0)<0){break Rd}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Rd}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Sd:{if((g|0)<=512){_f(l,a,s+24|0,d,0,0);break Sd}h=d>>>0<536870911?d:536870911;Td:{while(1){g=$k(h<<2);if(g){break Td}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}_f(l,a,s+24|0,d,0,0);break Sd}_f(l,a,s+24|0,d,g,h);Wk(g)}Ud:{Vd:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break Vd}Wd:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;Xd:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Yd:{if(P(u)<2147483648){g=~~u;break Yd}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break Xd}d=(a|0)>1;a=a-1|0;if(d){continue}break Xd}break}if((a|0)==(c|0)){break Wd}}if((m|0)<=0){break Ud}l=H[s+8>>2];continue}}if(n>>>0<1048577){break Vd}while(1)continue}Wk(l);break Od}if(!l){break Pd}}Wk(l)}if((c|0)<0){break Od}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break Od}h=0;o=0;Zd:{if((c|0)<0){break Zd}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Zd}a=h<<3;c=H[a+g>>2];if(!c){break Zd}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);_d:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break _d}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}pf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break Jd}j=1;break t;case 14:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;$d:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}ae:{if((b|0)<=0){break ae}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break ae}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;be:{if((d|0)<=0){break be}l=d&3;ce:{if(d-1>>>0<3){h=0;break ce}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=f;f=k;r=f+r|0;k=g+A|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+p|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+v|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break be}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;p=a+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;de:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break de}if(d>>>0<=f>>>0){break de}H[i+4>>2]=(f<<3)+a}l=0;n=0;ee:{fe:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;ge:{if(o<4294967296&o>=0){d=~~o>>>0;break ge}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break fe}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;he:{if((c|0)<0){break he}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break he}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;ie:{if((g|0)<=512){bg(l,a,s+24|0,d,0,0);break ie}h=d>>>0<536870911?d:536870911;je:{while(1){g=$k(h<<2);if(g){break je}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}bg(l,a,s+24|0,d,0,0);break ie}bg(l,a,s+24|0,d,g,h);Wk(g)}ke:{le:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break le}me:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;ne:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));oe:{if(P(u)<2147483648){g=~~u;break oe}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break ne}d=(a|0)>1;a=a-1|0;if(d){continue}break ne}break}if((a|0)==(c|0)){break me}}if((m|0)<=0){break ke}l=H[s+8>>2];continue}}if(n>>>0<1048577){break le}while(1)continue}Wk(l);break ee}if(!l){break fe}}Wk(l)}if((c|0)<0){break ee}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break ee}h=0;o=0;pe:{if((c|0)<0){break pe}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break pe}a=h<<3;c=H[a+g>>2];if(!c){break pe}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);qe:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break qe}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;d=k>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}pf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break $d}j=1;break t;case 15:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;re:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}se:{if((b|0)<=0){break se}a=0;if(b-1>>>0>=3){p=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];j=H[d>>2]+1|0;f=j?f:f+1|0;H[d>>2]=j;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;d=(H[t+(c|8)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((p|0)!=(n|0)){continue}break}}d=b&3;if(!d){break se}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;k=H[c+4>>2];f=H[c>>2]+1|0;k=f?k:k+1|0;H[c>>2]=f;H[c+4>>2]=k;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;te:{if((d|0)<=0){break te}n=d&3;ue:{if(d-1>>>0<3){h=0;break ue}B=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];x=H[f>>2];l=h|2;j=(l<<3)+q|0;f=H[j+4>>2];v=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];A=H[k>>2];y=c;c=(h<<3)+q|0;C=H[c+4>>2];k=H[c>>2];c=j|A?z:f|v?l:d|x?p:!(C|k)?y:h;p=j;l=f;j=g+C|0;f=k+r|0;j=f>>>0>>0?j+1|0:j;k=f;g=f+x|0;f=d+j|0;f=g>>>0>>0?f+1|0:f;j=g;g=g+v|0;d=f+l|0;d=g>>>0>>0?d+1|0:d;j=g;g=g+A|0;f=d+p|0;r=g;g=g>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((B|0)!=(a|0)){continue}break}}if(!n){break te}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;k=a+g|0;d=d+r|0;k=d>>>0>>0?k+1|0:k;r=d;g=k;m=m+1|0;if((n|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;ve:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break ve}if(d>>>0<=f>>>0){break ve}H[i+4>>2]=(f<<3)+a}l=0;n=0;we:{xe:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;ye:{if(o<4294967296&o>=0){d=~~o>>>0;break ye}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break xe}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;ze:{if((c|0)<0){break ze}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break ze}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Ae:{if((g|0)<=512){eg(l,a,s+24|0,d,0,0);break Ae}h=d>>>0<536870911?d:536870911;Be:{while(1){g=$k(h<<2);if(g){break Be}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}eg(l,a,s+24|0,d,0,0);break Ae}eg(l,a,s+24|0,d,g,h);Wk(g)}Ce:{De:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break De}Ee:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;Fe:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Ge:{if(P(u)<2147483648){g=~~u;break Ge}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break Fe}d=(a|0)>1;a=a-1|0;if(d){continue}break Fe}break}if((a|0)==(c|0)){break Ee}}if((m|0)<=0){break Ce}l=H[s+8>>2];continue}}if(n>>>0<1048577){break De}while(1)continue}Wk(l);break we}if(!l){break xe}}Wk(l)}if((c|0)<0){break we}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break we}h=0;o=0;He:{if((c|0)<0){break He}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break He}a=h<<3;c=H[a+g>>2];if(!c){break He}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);Ie:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break Ie}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;g=d;d=a<<1|d>>>31;a=(g<<1)+39|0;j=a>>>0<39?d+1|0:d;f=j>>>3|0;a=c+((j&7)<<29|a>>>3)|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}pf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break re}j=1;break t;case 16:t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;Je:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}Ke:{if((b|0)<=0){break Ke}a=0;if(b-1>>>0>=3){k=b&-4;while(1){c=a<<2;f=(H[c+t>>2]<<3)+q|0;d=H[f+4>>2];j=H[f>>2]+1|0;d=j?d:d+1|0;H[f>>2]=j;H[f+4>>2]=d;d=(H[t+(c|4)>>2]<<3)+q|0;j=H[d+4>>2];f=H[d>>2]+1|0;j=f?j:j+1|0;H[d>>2]=f;H[d+4>>2]=j;d=(H[t+(c|8)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;c=(H[t+(c|12)>>2]<<3)+q|0;d=H[c+4>>2];f=H[c>>2]+1|0;d=f?d:d+1|0;H[c>>2]=f;H[c+4>>2]=d;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}d=b&3;if(!d){break Ke}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;j=H[c+4>>2];f=H[c>>2]+1|0;j=f?j:j+1|0;H[c>>2]=f;H[c+4>>2]=j;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;Le:{if((d|0)<=0){break Le}l=d&3;Me:{if(d-1>>>0<3){h=0;break Me}A=d&-4;h=0;while(1){C=h|1;f=(C<<3)+q|0;d=H[f+4>>2];p=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];n=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];x=H[k>>2];y=c;c=(h<<3)+q|0;v=H[c+4>>2];k=H[c>>2];c=j|x?z:f|n?B:d|p?C:!(v|k)?y:h;y=p;p=g+v|0;r=k+r|0;p=r>>>0>>0?p+1|0:p;k=r;g=y+k|0;d=d+p|0;d=g>>>0>>0?d+1|0:d;k=g;g=g+n|0;f=d+f|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+j|0;r=d;g=d>>>0>>0?f+1|0:f;h=h+4|0;a=a+4|0;if((A|0)!=(a|0)){continue}break}}if(!l){break Le}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;j=a+g|0;d=d+r|0;j=d>>>0>>0?j+1|0:j;r=d;g=j;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;Ne:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break Ne}if(d>>>0<=f>>>0){break Ne}H[i+4>>2]=(f<<3)+a}l=0;n=0;Oe:{Pe:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;Qe:{if(o<4294967296&o>=0){d=~~o>>>0;break Qe}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break Pe}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;Re:{if((c|0)<0){break Re}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break Re}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;Se:{if((g|0)<=512){hg(l,a,s+24|0,d,0,0);break Se}h=d>>>0<536870911?d:536870911;Te:{while(1){g=$k(h<<2);if(g){break Te}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}hg(l,a,s+24|0,d,0,0);break Se}hg(l,a,s+24|0,d,g,h);Wk(g)}Ue:{Ve:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break Ve}We:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;Xe:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));Ye:{if(P(u)<2147483648){g=~~u;break Ye}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break Xe}d=(a|0)>1;a=a-1|0;if(d){continue}break Xe}break}if((a|0)==(c|0)){break We}}if((m|0)<=0){break Ue}l=H[s+8>>2];continue}}if(n>>>0<1048577){break Ve}while(1)continue}Wk(l);break Oe}if(!l){break Pe}}Wk(l)}if((c|0)<0){break Oe}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break Oe}h=0;o=0;Ze:{if((c|0)<0){break Ze}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break Ze}a=h<<3;c=H[a+g>>2];if(!c){break Ze}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);_e:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break _e}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;p=a>>>0<39?f+1|0:f;a=c+((p&7)<<29|a>>>3)|0;f=p>>>3|0;f=a>>>0>>0?f+1|0:f;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}pf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break Je}j=1;break t;case 17:break B;default:break t}}t=a;h=0;q=0;n=0;m=0;r=0;g=0;i=da+-64|0;da=i;H[i+56>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;$e:{a=l+1|0;if(a>>>0>=l>>>0){if(a>>>0>=536870912){break a}a=a<<3;q=$k(a);H[i+48>>2]=q;h=a+q|0;H[i+56>>2]=h;gk(q,0,(l<<3)+8|0);H[i+52>>2]=h}af:{if((b|0)<=0){break af}a=0;if(b-1>>>0>=3){j=b&-4;while(1){c=a<<2;d=(H[c+t>>2]<<3)+q|0;f=H[d+4>>2];k=H[d>>2]+1|0;f=k?f:f+1|0;H[d>>2]=k;H[d+4>>2]=f;d=(H[t+(c|4)>>2]<<3)+q|0;p=H[d+4>>2];f=H[d>>2]+1|0;p=f?p:p+1|0;H[d>>2]=f;H[d+4>>2]=p;d=(H[t+(c|8)>>2]<<3)+q|0;k=H[d+4>>2];f=H[d>>2]+1|0;k=f?k:k+1|0;H[d>>2]=f;H[d+4>>2]=k;c=(H[t+(c|12)>>2]<<3)+q|0;f=H[c+4>>2];d=H[c>>2]+1|0;f=d?f:f+1|0;H[c>>2]=d;H[c+4>>2]=f;a=a+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}d=b&3;if(!d){break af}while(1){c=(H[t+(a<<2)>>2]<<3)+q|0;p=H[c+4>>2];f=H[c>>2]+1|0;p=f?p:p+1|0;H[c>>2]=f;H[c+4>>2]=p;a=a+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[i+8>>2]=0;H[i+12>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=0;H[i+4>>2]=0;H[i+40>>2]=0;H[i+44>>2]=0;m=0;c=0;a=0;s=da-32|0;da=s;d=h-q>>3;bf:{if((d|0)<=0){break bf}l=d&3;cf:{if(d-1>>>0<3){h=0;break cf}C=d&-4;h=0;while(1){p=h|1;f=(p<<3)+q|0;d=H[f+4>>2];n=H[f>>2];B=h|2;j=(B<<3)+q|0;f=H[j+4>>2];x=H[j>>2];z=h|3;k=(z<<3)+q|0;j=H[k+4>>2];v=H[k>>2];y=c;c=(h<<3)+q|0;A=H[c+4>>2];k=H[c>>2];c=j|v?z:f|x?B:d|n?p:!(A|k)?y:h;p=f;f=k;r=f+r|0;k=g+A|0;k=f>>>0>r>>>0?k+1|0:k;g=r+n|0;f=d+k|0;f=g>>>0>>0?f+1|0:f;d=g+x|0;f=f+p|0;f=d>>>0>>0?f+1|0:f;k=d;g=d+v|0;d=f+j|0;r=g;g=g>>>0>>0?d+1|0:d;h=h+4|0;a=a+4|0;if((C|0)!=(a|0)){continue}break}}if(!l){break bf}while(1){f=c;c=(h<<3)+q|0;a=H[c+4>>2];d=H[c>>2];c=!(a|d)?f:h;h=h+1|0;p=a+g|0;d=d+r|0;p=d>>>0>>0?p+1|0:p;r=d;g=p;m=m+1|0;if((l|0)!=(m|0)){continue}break}}f=c+1|0;H[i+12>>2]=f;a=H[i>>2];d=H[i+4>>2]-a>>3;df:{if(d>>>0>>0){df(i,f-d|0);a=H[i>>2];break df}if(d>>>0<=f>>>0){break df}H[i+4>>2]=(f<<3)+a}l=0;n=0;ef:{ff:{if((c|0)>=0){u=+(r>>>0)+ +(g>>>0)*4294967296;h=0;while(1){g=h<<3;j=g+q|0;d=H[j+4>>2];j=H[j>>2];k=(d|j)!=0;g=a+g|0;o=(+(j>>>0)+ +(d>>>0)*4294967296)/u*1048576+.5;gf:{if(o<4294967296&o>=0){d=~~o>>>0;break gf}d=0}d=d?d:k?1:d;H[g>>2]=d;n=d+n|0;d=(c|0)==(h|0);h=h+1|0;if(!d){continue}break}if((n|0)==1048576){break ff}}H[s+16>>2]=0;H[s+8>>2]=0;H[s+12>>2]=0;a=0;if(f){if(f>>>0>=1073741824){break a}a=f<<2;l=$k(a);H[s+8>>2]=l;H[s+16>>2]=a+l;a=(c<<2)+4|0;a=gk(l,0,a)+a|0;H[s+12>>2]=a}h=0;hf:{if((c|0)<0){break hf}g=c+1|0;d=g&7;if(c>>>0>=7){g=g&-8;m=0;while(1){H[(h<<2)+l>>2]=h;f=h|1;H[(f<<2)+l>>2]=f;f=h|2;H[(f<<2)+l>>2]=f;f=h|3;H[(f<<2)+l>>2]=f;f=h|4;H[(f<<2)+l>>2]=f;f=h|5;H[(f<<2)+l>>2]=f;f=h|6;H[(f<<2)+l>>2]=f;f=h|7;H[(f<<2)+l>>2]=f;h=h+8|0;m=m+8|0;if((g|0)!=(m|0)){continue}break}}if(!d){break hf}m=0;while(1){H[(h<<2)+l>>2]=h;h=h+1|0;m=m+1|0;if((d|0)!=(m|0)){continue}break}}H[s+24>>2]=i;g=a-l|0;d=g>>2;jf:{if((g|0)<=512){kg(l,a,s+24|0,d,0,0);break jf}h=d>>>0<536870911?d:536870911;kf:{while(1){g=$k(h<<2);if(g){break kf}g=h>>>0>1;h=h>>>1|0;if(g){continue}break}kg(l,a,s+24|0,d,0,0);break jf}kg(l,a,s+24|0,d,g,h);Wk(g)}lf:{mf:{if((n|0)<1048576){a=H[i>>2]+(H[a-4>>2]<<3)|0;H[a>>2]=(H[a>>2]-n|0)- -1048576;break mf}nf:{if((c|0)>0){m=n+-1048576|0;while(1){o=1048576/+(n|0);j=H[i>>2];a=c;of:{while(1){g=j+(H[(a<<2)+l>>2]<<3)|0;d=H[g>>2];if(d>>>0>=2){k=d-1|0;f=g;r=d;u=T(o*+(d>>>0));pf:{if(P(u)<2147483648){g=~~u;break pf}g=-2147483648}g=d-g|0;g=g?g:1;d=(d|0)>(g|0)?g:k;d=(d|0)>(m|0)?m:d;H[f>>2]=r-d;m=m-d|0;n=n-d|0;if((n|0)==1048576){n=1048576;break of}d=(a|0)>1;a=a-1|0;if(d){continue}break of}break}if((a|0)==(c|0)){break nf}}if((m|0)<=0){break lf}l=H[s+8>>2];continue}}if(n>>>0<1048577){break mf}while(1)continue}Wk(l);break ef}if(!l){break ff}}Wk(l)}if((c|0)<0){break ef}a=H[i>>2];d=c+1|0;f=d&3;n=0;m=0;h=0;if(c>>>0>=3){j=d&-4;l=0;while(1){g=m<<3;k=g+a|0;H[k+4>>2]=h;p=a+(g|8)|0;k=H[k>>2]+h|0;H[p+4>>2]=k;r=a+(g|16)|0;k=k+H[p>>2]|0;H[r+4>>2]=k;g=a+(g|24)|0;k=k+H[r>>2]|0;H[g+4>>2]=k;h=k+H[g>>2]|0;m=m+4|0;l=l+4|0;if((j|0)!=(l|0)){continue}break}}if(f){while(1){g=a+(m<<3)|0;H[g+4>>2]=h;m=m+1|0;h=H[g>>2]+h|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}if((h|0)!=1048576){break ef}h=0;o=0;qf:{if((c|0)<0){break qf}g=H[i>>2];if(c){c=d&-2;a=0;while(1){f=h<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}f=(h|1)<<3;j=H[f+g>>2];if(j){f=f+q|0;o=(+K[f>>2]+ +K[f+4>>2]*4294967296)*hk(+(j>>>0)*9.5367431640625e-7)+o}h=h+2|0;a=a+2|0;if((c|0)!=(a|0)){continue}break}}if(!(d&1)){break qf}a=h<<3;c=H[a+g>>2];if(!c){break qf}a=a+q|0;o=(+K[a>>2]+ +K[a+4>>2]*4294967296)*hk(+(c>>>0)*9.5367431640625e-7)+o}o=U(-o);rf:{if(o<0x10000000000000000&o>=0){c=P(o)>=1?~~(o>0?R(T(o*2.3283064365386963e-10),4294967295):U((o-+(~~o>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~o>>>0;break rf}c=0;a=0}H[i+16>>2]=a;H[i+20>>2]=c;jf(i,e)}da=s+32|0;d=H[i+16>>2];a=H[i+20>>2];c=H[e+4>>2]-H[e>>2]|0;H[i+40>>2]=c;H[i+44>>2]=0;f=a<<1|d>>>31;a=(d<<1)+39|0;k=a>>>0<39?f+1|0:f;a=c+((k&7)<<29|a>>>3)|0;d=k>>>3|0;d=a>>>0>>0?d+1|0:d;a=a+8|0;ci(e,a);a=H[e>>2];H[i+28>>2]=0;H[i+32>>2]=4194304;H[i+24>>2]=a+H[i+40>>2];if((b|0)>0){a=4194304;while(1){c=b-1|0;g=H[i>>2]+(H[t+(c<<2)>>2]<<3)|0;d=H[g>>2];f=d<<10;if(f>>>0<=a>>>0){while(1){j=H[i+28>>2];H[i+28>>2]=j+1;F[j+H[i+24>>2]|0]=a;a=H[i+32>>2]>>>8|0;H[i+32>>2]=a;if(a>>>0>=f>>>0){continue}break}}f=H[g+4>>2];g=(a>>>0)/(d>>>0)|0;a=f+((g<<20)+(a-N(d,g)|0)|0)|0;H[i+32>>2]=a;d=(b|0)>1;b=c;if(d){continue}break}}pf(i,e);a=H[i>>2];if(a){H[i+4>>2]=a;Wk(a)}a=H[i+48>>2];if(a){Wk(a)}da=i- -64|0;break $e}j=1}da=E+32|0}if(!w){break e}H[D+36>>2]=w;Wk(w)}da=D+48|0;return j}H[D+32>>2]=w;Ua(1604);X()}H[D+40>>2]=f;H[D+32>>2]=w;break a}Ua(1604);X()}Fa();X()}function Jb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,P=O(0),R=0,S=0,T=0,U=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,ea=0,fa=0;e=da-1696|0;da=e;d=10-Kb(H[H[a+28>>2]+48>>2])|0;d=(d|0)<6?d:6;c=H[a+72>>2];F[e+1695|0]=(d&255)==6?(c|0)>15?5:d:d;d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){ya(b,H[b+4>>2],e+1695|0,e+1696|0);c=H[a+72>>2]}f=H[a+28>>2];s=H[H[f+4>>2]+80>>2];H[e+1684>>2]=0;H[e+1676>>2]=0;H[e+1680>>2]=0;H[e+1664>>2]=s;H[e+1668>>2]=c;H[e+1672>>2]=c<<2;a:{t=N(c,s);if(t){if(t>>>0>=1073741824){break a}d=t<<2;i=$k(d);H[e+1676>>2]=i;g=d+i|0;H[e+1684>>2]=g;gk(i,0,d);H[e+1680>>2]=g}H[e+1688>>2]=i;d=H[a+4>>2];b:{if((d|0)!=H[a+8>>2]){t=0;while(1){c=H[H[H[f+4>>2]+8>>2]+(H[(j<<2)+d>>2]<<2)>>2];d=H[c+28>>2];if(d-1>>>0>=6){if((d|0)!=9){break b}c=H[H[a+60>>2]+(m<<2)>>2];if(!c){break b}m=m+1|0;d=H[c+28>>2]}c:{d:{switch(d-1|0){case 5:d=0;if(!s){break c}while(1){h=(H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],d)<<2)|0;i=H[H[c>>2]>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],I[c+84|0]?d:H[H[c+68>>2]+(d<<2)>>2],0)|0;ek(h,i+f|0,F[c+24|0]<<2);d=d+1|0;if((s|0)!=(d|0)){continue}break};break c;case 0:case 2:case 4:d=F[c+24|0];H[e+464>>2]=0;H[e+456>>2]=0;H[e+460>>2]=0;e:{if(!d){d=0;H[e+1648>>2]=0;break e}if((d|0)<0){break a}f=d<<2;i=$k(f);H[e+456>>2]=i;H[e+464>>2]=f+i;d=0;gk(i,0,f);f=F[c+24|0];H[e+1656>>2]=0;H[e+1648>>2]=0;H[e+1652>>2]=0;if(!f){break e}if((f|0)<0){break a}f=f<<2;d=$k(f);H[e+1648>>2]=d;gk(d,0,f)}f=0;if(s){while(1){o=H[e+456>>2];Gb(c,I[c+84|0]?f:H[H[c+68>>2]+(f<<2)>>2],F[c+24|0],o);i=H[e+1648>>2];g=F[c+24|0];f:{if((g|0)<=0){break f}h=H[a+48>>2];d=0;if((g|0)!=1){l=g&-2;q=0;while(1){x=d<<2;H[x+i>>2]=H[o+x>>2]-H[h+(d+t<<2)>>2];x=d|1;B=x<<2;H[B+i>>2]=H[o+B>>2]-H[h+(t+x<<2)>>2];d=d+2|0;q=q+2|0;if((l|0)!=(q|0)){continue}break}}if(!(g&1)){break f}l=d<<2;H[l+i>>2]=H[l+o>>2]-H[h+(d+t<<2)>>2]}ek((H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],f)<<2)|0,i,g<<2);f=f+1|0;if((s|0)!=(f|0)){continue}break}d=H[e+1648>>2]}f=F[c+24|0];if(d){Wk(d)}d=H[e+456>>2];if(d){Wk(d)}t=f+t|0;break c;default:break d}}i=F[c+24|0];d=0;H[e+464>>2]=0;H[e+456>>2]=0;H[e+460>>2]=0;f=0;if(i){if((i|0)<0){break a}i=i<<2;f=$k(i);H[e+456>>2]=f;gk(f,0,i)}if(s){while(1){f=I[c+84|0]?d:H[H[c+68>>2]+(d<<2)>>2];i=F[c+24|0];h=0;o=H[e+456>>2];g:{if(!o){break g}h:{i:{switch(H[c+28>>2]-1|0){case 0:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=F[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 1:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=I[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 2:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=G[f>>1];f=f+2|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 3:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=J[f>>1];f=f+2|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 4:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=H[f>>2];f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 5:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=H[f>>2];f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 6:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}g=H[f>>2];if(H[f+4>>2]){break g}H[o+(h<<2)>>2]=g;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 7:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}g=H[f>>2];if(H[f+4>>2]){break g}H[o+(h<<2)>>2]=g;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 8:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}x=o+(h<<2)|0;P=L[f>>2];j:{if(P=O(0)){k=~~P>>>0;break j}k=0}H[x>>2]=k;f=f+4|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 9:g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}x=o+(h<<2)|0;R=M[f>>3];k:{if(R<4294967296&R>=0){k=~~R>>>0;break k}k=0}H[x>>2]=k;f=f+8|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)<(i|0)){break h}break g;case 10:break i;default:break g}}g=F[c+24|0];if((((g|0)>(i|0)?i:g)|0)>0){g=H[c>>2];k=H[g>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],f,0)|0;f=k+f|0;l=H[g+4>>2];while(1){if(f>>>0>=l>>>0){break g}H[o+(h<<2)>>2]=I[f|0];f=f+1|0;h=h+1|0;g=F[c+24|0];if((h|0)<(((g|0)>(i|0)?i:g)|0)){continue}break}}if((g|0)>=(i|0)){break g}}gk(o+(g<<2)|0,0,i-g<<2)}ek((H[e+1688>>2]+(n<<2)|0)+(N(H[e+1668>>2],d)<<2)|0,o,F[c+24|0]<<2);d=d+1|0;if((s|0)!=(d|0)){continue}break}f=H[e+456>>2]}if(!f){break c}Wk(f)}j=j+1|0;d=H[a+4>>2];if(j>>>0>2]-d>>2>>>0){n=F[c+24|0]+n|0;f=H[a+28>>2];continue}break}c=H[a+72>>2];t=N(s,c);i=H[e+1688>>2]}d=0;l:{if((t|0)<=0){break l}a=t&1;m:{if((t|0)==1){f=0;break m}g=t&-2;f=0;t=0;while(1){o=f<<2;s=H[o+i>>2];if(s){s=Q(s);d=(s^31)<(d|0)?d:32-s|0}o=H[(o|4)+i>>2];if(o){o=Q(o);d=(o^31)<(d|0)?d:32-o|0}f=f+2|0;t=t+2|0;if((g|0)!=(t|0)){continue}break}}if(!a){break l}a=H[(f<<2)+i>>2];if(!a){break l}a=Q(a);d=(a^31)<(d|0)?d:32-a|0}n:{o:{switch(I[e+1695|0]){case 6:m=Mb(e+456|0,c);a=H[e+1668>>2];H[e+448>>2]=a;H[e+432>>2]=a;H[e+32>>2]=a;H[e+16>>2]=a;H[e+440>>2]=0;H[e+424>>2]=H[e+1664>>2];a=e+1664|0;H[e+444>>2]=a;c=H[e+444>>2];H[e+24>>2]=H[e+440>>2];H[e+28>>2]=c;H[e+428>>2]=a;H[e+1648>>2]=d;a=H[e+428>>2];H[e+8>>2]=H[e+424>>2];H[e+12>>2]=a;l=da-32|0;da=l;H[m>>2]=H[e+1648>>2];a=H[e+8>>2]-H[e+24>>2]|0;H[m+4>>2]=a;d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){a=m+4|0;ya(b,H[b+4>>2],m,a);d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){ya(b,H[b+4>>2],a,a+4|0)}a=H[a>>2]}if(a){U=m+12|0;Ub(U);V=m+1068|0;a=V;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];W=m+1088|0;a=W;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];Y=m+1108|0;a=Y;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=H[a>>2];H[l+24>>2]=H[e+32>>2];a=H[e+28>>2];H[l+16>>2]=H[e+24>>2];H[l+20>>2]=a;H[l+8>>2]=H[e+16>>2];a=H[e+12>>2];H[l>>2]=H[e+8>>2];H[l+4>>2]=a;d=0;h=0;j=da+-64|0;da=j;c=H[m+8>>2];H[j+48>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;if(c){if(c>>>0>=1073741824){break a}a=c<<2;d=$k(a);H[j+40>>2]=d;h=a+d|0;H[j+48>>2]=h;gk(d,0,a);H[j+44>>2]=h}a=H[m+1164>>2];f=H[a>>2];if(f){H[a+4>>2]=f;Wk(f);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;c=H[m+8>>2];h=H[j+44>>2];d=H[j+40>>2]}H[a+4>>2]=h;H[a>>2]=d;H[a+8>>2]=H[j+48>>2];d=0;H[j+48>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;a=0;p:{if(c){if(c>>>0>=1073741824){break a}c=c<<2;a=$k(c);H[j+40>>2]=a;d=a+c|0;H[j+48>>2]=d;gk(a,0,c);H[j+44>>2]=d}c=H[m+1176>>2];f=H[c>>2];if(f){H[c+4>>2]=f;Wk(f);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;d=H[j+44>>2];a=H[j+40>>2]}H[c+4>>2]=d;H[c>>2]=a;H[c+8>>2]=H[j+48>>2];g=H[l+4>>2];o=H[l+8>>2];t=H[l+20>>2];s=H[l+24>>2];d=H[l>>2];c=H[l+16>>2];H[j+56>>2]=0;H[j+60>>2]=0;H[j+48>>2]=0;H[j+52>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;_b(j+40|0);a=H[j+56>>2]+H[j+60>>2]|0;f=(a>>>0)/113|0;a=H[H[j+44>>2]+(f<<2)>>2]+N(a-N(f,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=d-c;H[a+24>>2]=0;H[a+12>>2]=d;H[a+4>>2]=t;H[a+8>>2]=s;H[a>>2]=c;H[a+16>>2]=g;H[a+20>>2]=o;a=H[j+60>>2];c=a+1|0;H[j+60>>2]=c;if(a>>>0<=c>>>0){_=m+1068|0;$=m+1108|0;B=t;x=s;aa=s&-4;Z=s&3;ba=s-1>>>0<3;while(1){n=H[j+44>>2];d=H[j+56>>2];h=c-1|0;a=d+h|0;f=(a>>>0)/113|0;a=H[n+(f<<2)>>2]+N(a-N(f,113)|0,36)|0;S=H[a+32>>2];i=H[a+12>>2];f=H[a>>2];H[j+60>>2]=h;a=H[j+48>>2];h=a-n|0;if(((h?N(h>>2,113)-1|0:0)-(c+d|0)|0)+1>>>0>=226){Wk(H[a-4>>2]);H[j+48>>2]=H[j+48>>2]-4}H[l+16>>2]=f;H[l>>2]=i;a=H[m+1164>>2];d=H[m+1176>>2];H[j+32>>2]=H[l+24>>2];c=H[l+20>>2];H[j+24>>2]=H[l+16>>2];H[j+28>>2]=c;H[j+16>>2]=H[l+8>>2];c=H[l+4>>2];H[j+8>>2]=H[l>>2];H[j+12>>2]=c;T=N(S,12);u=a+T|0;c=u;D=d+T|0;a=D;n=0;q:{r:{s:{t:{p=H[j+8>>2];d=H[j+24>>2];v=p-d|0;if(v>>>0>=64){if(!H[m+8>>2]){d=0;break r}z=H[m+1140>>2];A=H[a>>2];E=H[m+1128>>2];if((d|0)!=(p|0)){break t}a=0;while(1){d=a<<2;c=d+E|0;H[c>>2]=0;h=d+z|0;d=H[m>>2]-H[d+A>>2]|0;H[h>>2]=d;if(d){d=H[c>>2];h=v-d|0;H[c>>2]=d>>>0>h>>>0?d:h}a=a+1|0;c=H[m+8>>2];if(a>>>0>>0){continue}break}break s}d=0;h=H[m+8>>2];if(h>>>0<2){break q}c=H[a>>2];a=h-1|0;n=a&3;q=0;u:{if(h-2>>>0<3){a=1;break u}p=a&-4;a=1;h=0;while(1){v=a+3|0;r=a+2|0;w=a+1|0;d=K[c+(d<<2)>>2]>K[c+(a<<2)>>2]?a:d;d=K[c+(d<<2)>>2]>K[c+(w<<2)>>2]?w:d;d=K[c+(d<<2)>>2]>K[c+(r<<2)>>2]?r:d;d=K[c+(d<<2)>>2]>K[c+(v<<2)>>2]?v:d;a=a+4|0;h=h+4|0;if((p|0)!=(h|0)){continue}break}}if(!n){break q}while(1){d=K[c+(d<<2)>>2]>K[c+(a<<2)>>2]?a:d;a=a+1|0;q=q+1|0;if((n|0)!=(q|0)){continue}break}break q}y=H[j+28>>2];C=H[c>>2];ca=v&1;h=d+1|0;ea=(p|0)!=(h|0);k=H[j+32>>2];fa=N(k,d)<<2;while(1){a=n<<2;q=a+E|0;H[q>>2]=0;c=H[m>>2]-H[a+A>>2]|0;H[a+z>>2]=c;if(c){r=H[a+C>>2]+(1<>2]|0;c=H[q>>2];if(ca){c=(r>>>0>K[w+fa>>2])+c|0;H[q>>2]=c;a=h}else{a=d}if(ea){while(1){c=(r>>>0>K[w+(N(a,k)<<2)>>2])+c|0;H[q>>2]=c;c=c+(r>>>0>K[w+(N(k,a+1|0)<<2)>>2])|0;H[q>>2]=c;a=a+2|0;if((p|0)!=(a|0)){continue}break}}a=v-c|0;H[q>>2]=a>>>0>>0?c:a}c=H[m+8>>2];n=n+1|0;if(c>>>0>n>>>0){continue}break}}if(!c){d=0;break r}n=H[m+1128>>2];q=H[m+1140>>2];v=c&1;v:{if((c|0)==1){a=0;c=0;d=0;break v}r=c&-2;a=0;c=0;d=0;h=0;while(1){p=a<<2;if(H[p+q>>2]){w=H[n+p>>2];p=w>>>0>c>>>0;c=p?w:c;d=p?a:d}w=a|1;p=w<<2;if(H[p+q>>2]){z=H[n+p>>2];p=z>>>0>c>>>0;c=p?z:c;d=p?w:d}a=a+2|0;h=h+2|0;if((r|0)!=(h|0)){continue}break}}if(!v){break r}h=a<<2;if(!H[h+q>>2]){break r}d=K[h+n>>2]>c>>>0?a:d}ac(m+1088|0,4,d)}c=d;n=c<<2;d=H[m>>2]-H[n+H[D>>2]>>2]|0;w:{x:{if(!d){break x}y:{z:{v=i-f|0;if(v>>>0<=2){i=H[m+1152>>2];H[i>>2]=c;d=1;a=H[m+8>>2];if(a>>>0>1){break z}break y}a=H[m+1164>>2];E=S+1|0;w=N(E,12);h=a+w|0;if((h|0)!=(u|0)){Ma(h,H[u>>2],H[u+4>>2]);a=H[m+1164>>2]}a=n+H[a+w>>2]|0;q=H[a>>2]+(1<>2]=q;a=f;A:{if((i|0)==(a|0)){break A}D=H[B+24>>2];d=f;a=i;if(!x){if(q>>>0>K[n+D>>2]){break A}while(1){a=a-1|0;if((d|0)==(a|0)){a=d;break A}if(q>>>0<=K[(n+H[g+24>>2]|0)+(N(a,o)<<2)>>2]){continue}d=d+1|0;if((d|0)!=(a|0)){continue}break}break A}while(1){u=D+(N(d,x)<<2)|0;if(q>>>0>K[u+n>>2]){d=d+1|0;if((d|0)!=(a|0)){continue}break A}while(1){a=a-1|0;if((d|0)==(a|0)){a=d;break A}p=H[g+24>>2]+(N(a,o)<<2)|0;if(q>>>0<=K[p+n>>2]){continue}break}z=0;h=0;A=0;if(!ba){while(1){r=h<<2;k=r+u|0;y=H[k>>2];C=k;k=p+r|0;H[C>>2]=H[k>>2];H[k>>2]=y;k=r|4;y=k+u|0;C=H[y>>2];k=p+k|0;H[y>>2]=H[k>>2];H[k>>2]=C;k=r|8;y=k+u|0;C=H[y>>2];k=p+k|0;H[y>>2]=H[k>>2];H[k>>2]=C;r=r|12;k=r+u|0;y=H[k>>2];r=p+r|0;H[k>>2]=H[r>>2];H[r>>2]=y;h=h+4|0;A=A+4|0;if((aa|0)!=(A|0)){continue}break}}if(Z){while(1){r=h<<2;A=r+u|0;k=H[A>>2];r=p+r|0;H[A>>2]=H[r>>2];H[r>>2]=k;h=h+1|0;z=z+1|0;if((Z|0)!=(z|0)){continue}break}}d=d+1|0;if((d|0)!=(a|0)){continue}break}}q=a-f|0;u=i-a|0;if((q|0)!=(u|0)){$b($,q>>>0>>0)}d=Q(v);p=d^31;h=v>>>1|0;B:{if(q>>>0>>0){if(!p){break B}v=h-q|0;d=1<<30-d;h=0;while(1){ye((m+(h<<5)|0)+12|0,(d&v)!=0);d=d>>>1|0;h=h+1|0;if((p|0)!=(h|0)){continue}break}break B}if(!p){break B}v=h-u|0;d=1<<30-d;h=0;while(1){ye((m+(h<<5)|0)+12|0,(d&v)!=0);d=d>>>1|0;h=h+1|0;if((p|0)!=(h|0)){continue}break}}k=n;d=H[m+1176>>2];h=d+T|0;n=H[h>>2];p=k+n|0;H[p>>2]=H[p>>2]+1;Ma(d+w|0,n,H[h+4>>2]);if((a|0)!=(f|0)){d=H[j+60>>2]+H[j+56>>2]|0;h=H[j+44>>2];n=H[j+48>>2]-h|0;if((d|0)==((n?N(n>>2,113)-1|0:0)|0)){_b(j+40|0);h=H[j+44>>2];d=H[j+56>>2]+H[j+60>>2]|0}n=h;h=(d>>>0)/113|0;d=H[n+(h<<2)>>2]+N(d-N(h,113)|0,36)|0;H[d+32>>2]=S;H[d+28>>2]=q;H[d+24>>2]=c;H[d+12>>2]=a;H[d+4>>2]=t;H[d+8>>2]=s;H[d>>2]=f;H[d+20>>2]=x;H[d+16>>2]=B;H[j+60>>2]=H[j+60>>2]+1}if((a|0)==(i|0)){break x}d=H[j+60>>2]+H[j+56>>2]|0;h=H[j+44>>2];f=H[j+48>>2]-h|0;if((d|0)==((f?N(f>>2,113)-1|0:0)|0)){_b(j+40|0);h=H[j+44>>2];d=H[j+56>>2]+H[j+60>>2]|0}f=(d>>>0)/113|0;d=H[(f<<2)+h>>2]+N(d-N(f,113)|0,36)|0;H[d+32>>2]=E;H[d+28>>2]=u;H[d+24>>2]=c;H[d+12>>2]=i;H[d+8>>2]=x;H[d+4>>2]=B;H[d>>2]=a;H[d+16>>2]=g;H[d+20>>2]=o;c=H[j+60>>2]+1|0;H[j+60>>2]=c;break w}while(1){c=(a-1|0)==(c|0)?0:c+1|0;H[i+(d<<2)>>2]=c;a=H[m+8>>2];d=d+1|0;if(a>>>0>d>>>0){continue}break}}h=0;d=a;if(!v){break x}while(1){C:{if(!d){d=0;break C}i=H[B+24>>2]+(N(H[B+4>>2],f+h|0)<<2)|0;c=0;while(1){d=H[H[m+1152>>2]+(c<<2)>>2]<<2;n=H[m>>2]-H[d+H[D>>2]>>2]|0;if(n){ac(_,n,H[d+i>>2]);a=H[m+8>>2]}d=a;c=c+1|0;if(a>>>0>c>>>0){continue}break}}h=h+1|0;if((v|0)!=(h|0)){continue}break}}c=H[j+60>>2]}if(c){continue}break}}H[j+60>>2]=0;f=H[j+48>>2];c=H[j+44>>2];a=f-c|0;if(a>>>0>=9){while(1){Wk(H[c>>2]);c=H[j+44>>2]+4|0;H[j+44>>2]=c;f=H[j+48>>2];a=f-c|0;if(a>>>0>8){continue}break}}d=56;D:{switch((a>>>2|0)-1|0){case 1:d=113;case 0:H[j+56>>2]=d;break;default:break D}}E:{if((c|0)==(f|0)){break E}while(1){Wk(H[c>>2]);c=c+4|0;if((f|0)!=(c|0)){continue}break}a=H[j+48>>2];d=H[j+44>>2];if((a|0)==(d|0)){break E}H[j+48>>2]=a+(((a-d|0)-4>>>2^-1)<<2)}a=H[j+40>>2];if(a){Wk(a)}da=j- -64|0;break p}Vb(U,b);ue(V,b);ue(W,b);ue(Y,b)}da=l+32|0;Lb(m);break n;case 5:c=Mb(e+456|0,c);a=H[e+1668>>2];H[e+416>>2]=a;H[e+400>>2]=a;H[e- -64>>2]=a;H[e+48>>2]=a;H[e+408>>2]=0;H[e+392>>2]=H[e+1664>>2];a=e+1664|0;H[e+412>>2]=a;f=H[e+412>>2];H[e+56>>2]=H[e+408>>2];H[e+60>>2]=f;H[e+396>>2]=a;H[e+1648>>2]=d;a=H[e+396>>2];H[e+40>>2]=H[e+392>>2];H[e+44>>2]=a;a=Nb(c,e+56|0,e+40|0,e+1648|0,b);Lb(c);if(a){break n}break b;case 4:c=Mb(e+456|0,c);a=H[e+1668>>2];H[e+384>>2]=a;H[e+368>>2]=a;H[e+96>>2]=a;H[e+80>>2]=a;H[e+376>>2]=0;H[e+360>>2]=H[e+1664>>2];a=e+1664|0;H[e+380>>2]=a;f=H[e+380>>2];H[e+88>>2]=H[e+376>>2];H[e+92>>2]=f;H[e+364>>2]=a;H[e+1648>>2]=d;a=H[e+364>>2];H[e+72>>2]=H[e+360>>2];H[e+76>>2]=a;a=Nb(c,e+88|0,e+72|0,e+1648|0,b);Lb(c);if(a){break n}break b;case 3:c=Ob(e+456|0,c);a=H[e+1668>>2];H[e+352>>2]=a;H[e+336>>2]=a;H[e+128>>2]=a;H[e+112>>2]=a;H[e+344>>2]=0;H[e+328>>2]=H[e+1664>>2];a=e+1664|0;H[e+348>>2]=a;f=H[e+348>>2];H[e+120>>2]=H[e+344>>2];H[e+124>>2]=f;H[e+332>>2]=a;H[e+1648>>2]=d;a=H[e+332>>2];H[e+104>>2]=H[e+328>>2];H[e+108>>2]=a;a=Pb(c,e+120|0,e+104|0,e+1648|0,b);Qb(c);if(a){break n}break b;case 2:c=Ob(e+456|0,c);a=H[e+1668>>2];H[e+320>>2]=a;H[e+304>>2]=a;H[e+160>>2]=a;H[e+144>>2]=a;H[e+312>>2]=0;H[e+296>>2]=H[e+1664>>2];a=e+1664|0;H[e+316>>2]=a;f=H[e+316>>2];H[e+152>>2]=H[e+312>>2];H[e+156>>2]=f;H[e+300>>2]=a;H[e+1648>>2]=d;a=H[e+300>>2];H[e+136>>2]=H[e+296>>2];H[e+140>>2]=a;a=Pb(c,e+152|0,e+136|0,e+1648|0,b);Qb(c);if(a){break n}break b;case 1:c=Rb(e+456|0,c);a=H[e+1668>>2];H[e+288>>2]=a;H[e+272>>2]=a;H[e+192>>2]=a;H[e+176>>2]=a;H[e+280>>2]=0;H[e+264>>2]=H[e+1664>>2];a=e+1664|0;H[e+284>>2]=a;f=H[e+284>>2];H[e+184>>2]=H[e+280>>2];H[e+188>>2]=f;H[e+268>>2]=a;H[e+1648>>2]=d;a=H[e+268>>2];H[e+168>>2]=H[e+264>>2];H[e+172>>2]=a;a=Sb(c,e+184|0,e+168|0,e+1648|0,b);Tb(c);if(a){break n}break b;case 0:break o;default:break b}}c=Rb(e+456|0,c);a=H[e+1668>>2];H[e+256>>2]=a;H[e+240>>2]=a;H[e+224>>2]=a;H[e+208>>2]=a;H[e+248>>2]=0;H[e+232>>2]=H[e+1664>>2];a=e+1664|0;H[e+252>>2]=a;f=H[e+252>>2];H[e+216>>2]=H[e+248>>2];H[e+220>>2]=f;H[e+236>>2]=a;H[e+1648>>2]=d;a=H[e+236>>2];H[e+200>>2]=H[e+232>>2];H[e+204>>2]=a;a=Sb(c,e+216|0,e+200|0,e+1648|0,b);Tb(c);if(!a){break b}}u=1}a=H[e+1676>>2];if(a){H[e+1680>>2]=a;Wk(a)}da=e+1696|0;return u|0}Fa();X()}function sk(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,G=0,J=0,L=0,M=0;y=da-160|0;da=y;H[y+60>>2]=b;H[y+20>>2]=b;H[y+24>>2]=-1;g=y+16|0;H[g+112>>2]=0;H[g+116>>2]=0;i=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=i;H[g+124>>2]=i>>31;H[g+104>>2]=H[g+8>>2];t=da-48|0;da=t;if(d>>>0<=2){a:{d=d<<2;x=H[d+17308>>2];E=H[d+17296>>2];while(1){d=H[g+4>>2];b:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break b}i=lk(g)}if((i|0)==32|i-9>>>0<5){continue}break}p=1;c:{d:{switch(i-43|0){case 0:case 2:break d;default:break c}}p=(i|0)==45?-1:1;d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break c}i=lk(g)}e:{f:{while(1){if(F[h+1266|0]==(i|32)){g:{if(h>>>0>6){break g}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break g}i=lk(g)}h=h+1|0;if((h|0)!=8){continue}break f}break}if((h|0)!=3){if((h|0)==8){break f}if(h>>>0<4){break e}if((h|0)==8){break f}}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(h>>>0<4){break f}d=(d|0)<0;while(1){if(!d){H[g+4>>2]=H[g+4>>2]-1}h=h-1|0;if(h>>>0>3){continue}break}}l=da-16|0;da=l;m=(B(O(O(p|0)*O(Z))),v(2));d=m&2147483647;h:{if(d-8388608>>>0<=2130706431){s=d<<25;i=(d>>>7|0)+1065353216|0;break h}s=m<<25;i=m>>>7|2147418112;if(d>>>0>=2139095040){break h}s=0;i=0;if(!d){break h}j=d;d=Q(d);Fk(l,j,0,0,0,d+81|0);j=H[l>>2];k=H[l+4>>2];s=H[l+8>>2];i=H[l+12>>2]^65536|16265-d<<16}H[t>>2]=j;H[t+4>>2]=k;H[t+8>>2]=s;H[t+12>>2]=m&-2147483648|i;da=l+16|0;j=H[t+8>>2];k=H[t+12>>2];l=H[t>>2];m=H[t+4>>2];break a}i:{j:{k:{if(h){break k}h=0;while(1){if(F[h+1546|0]!=(i|32)){break k}l:{if(h>>>0>1){break l}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break l}i=lk(g)}h=h+1|0;if((h|0)!=3){continue}break}break j}m:{switch(h|0){case 0:n:{if((i|0)!=48){break n}d=H[g+4>>2];o:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break o}d=lk(g)}if((d&-33)==88){f=da-432|0;da=f;d=H[g+4>>2];p:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0];break p}h=lk(g)}q:{r:{while(1){if((h|0)!=48){s:{if((h|0)!=46){break q}d=H[g+4>>2];if((d|0)==H[g+104>>2]){break s}H[g+4>>2]=d+1;h=I[d|0];break r}}else{d=H[g+4>>2];if((d|0)!=H[g+104>>2]){w=1;H[g+4>>2]=d+1;h=I[d|0]}else{w=1;h=lk(g)}continue}break}h=lk(g)}e=1;if((h|0)!=48){break q}while(1){d=s;s=d-1|0;u=u-!d|0;d=H[g+4>>2];t:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0];break t}h=lk(g)}if((h|0)==48){continue}break}w=1}m=1073676288;u:{while(1){v:{d=h|32;w:{x:{i=h-48|0;if(i>>>0<10){break x}if((h|0)!=46&d-97>>>0>=6){break u}if((h|0)!=46){break x}if(e){break v}e=1;s=j;u=k;break w}d=(h|0)>57?d-87|0:i;y:{if((k|0)<=0&j>>>0<=7|(k|0)<0){o=d+(o<<4)|0;break y}if(!k&j>>>0<=28){Kk(f+48|0,d);Nk(f+32|0,C,D,l,m,0,0,0,1073414144);C=H[f+32>>2];D=H[f+36>>2];l=H[f+40>>2];m=H[f+44>>2];Nk(f+16|0,H[f+48>>2],H[f+52>>2],H[f+56>>2],H[f+60>>2],C,D,l,m);Ek(f,H[f+16>>2],H[f+20>>2],H[f+24>>2],H[f+28>>2],n,r,z,A);z=H[f+8>>2];A=H[f+12>>2];n=H[f>>2];r=H[f+4>>2];break y}if(q|!d){break y}Nk(f+80|0,C,D,l,m,0,0,0,1073610752);Ek(f- -64|0,H[f+80>>2],H[f+84>>2],H[f+88>>2],H[f+92>>2],n,r,z,A);z=H[f+72>>2];A=H[f+76>>2];q=1;n=H[f+64>>2];r=H[f+68>>2]}d=j+1|0;k=d?k:k+1|0;j=d;w=1}d=H[g+4>>2];if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;h=I[d|0]}else{h=lk(g)}continue}break}h=46}z:{if(!w){d=H[g+116>>2];if((d|0)>0|(d|0)>=0){A:{d=H[g+4>>2];H[g+4>>2]=d-1;H[g+4>>2]=d-2;if(!e){break A}H[g+4>>2]=d-3}}Jk(f+96|0,+(p|0)*0);n=H[f+96>>2];r=H[f+100>>2];j=H[f+108>>2];d=H[f+104>>2];break z}if((k|0)<=0&j>>>0<=7|(k|0)<0){l=j;m=k;while(1){o=o<<4;d=l+1|0;m=d?m:m+1|0;l=d;if((d|0)!=8|m){continue}break}}B:{C:{D:{if((h&-33)==80){l=rk(g);d=fa;m=d;if(l|(d|0)!=-2147483648){break B}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){break D}break C}l=0;m=0;if(H[g+116>>2]<0){break B}}H[g+4>>2]=H[g+4>>2]-1}l=0;m=0}if(!o){Jk(f+112|0,+(p|0)*0);n=H[f+112>>2];r=H[f+116>>2];j=H[f+124>>2];d=H[f+120>>2];break z}d=e?s:j;k=(e?u:k)<<2|d>>>30;d=l+(d<<2)|0;h=k+m|0;h=d>>>0>>0?h+1|0:h;j=d-32|0;k=h-(d>>>0<32)|0;d=k;if(j>>>0>0-x>>>0&(d|0)>=0|(d|0)>0){H[4739]=68;Kk(f+160|0,p);Nk(f+144|0,H[f+160>>2],H[f+164>>2],H[f+168>>2],H[f+172>>2],-1,-1,-1,2147418111);Nk(f+128|0,H[f+144>>2],H[f+148>>2],H[f+152>>2],H[f+156>>2],-1,-1,-1,2147418111);n=H[f+128>>2];r=H[f+132>>2];j=H[f+140>>2];d=H[f+136>>2];break z}d=x-226|0;i=d>>31;if((k|0)>=(i|0)&d>>>0<=j>>>0|(i|0)<(k|0)){if((o|0)>=0){while(1){Ek(f+416|0,n,r,z,A,0,0,0,-1073807360);i=Hk(n,r,z,A,1073610752);d=(i|0)<0;Ek(f+400|0,n,r,z,A,d?n:H[f+416>>2],d?r:H[f+420>>2],d?z:H[f+424>>2],d?A:H[f+428>>2]);d=j;j=d-1|0;k=k-!d|0;z=H[f+408>>2];A=H[f+412>>2];n=H[f+400>>2];r=H[f+404>>2];o=o<<1|(i|0)>=0;if((o|0)>=0){continue}break}}h=k-((x>>31)+(j>>>0>>0)|0)|0;d=(j-x|0)+32|0;h=d>>>0<32?h+1|0:h;i=d>>>0>>0&(h|0)<=0|(h|0)<0?(d|0)>0?d:0:E;E:{if((i|0)>=113){Kk(f+384|0,p);s=H[f+392>>2];u=H[f+396>>2];C=H[f+384>>2];D=H[f+388>>2];k=0;d=0;break E}Jk(f+352|0,nk(144-i|0));Kk(f+336|0,p);C=H[f+336>>2];D=H[f+340>>2];s=H[f+344>>2];u=H[f+348>>2];ok(f+368|0,H[f+352>>2],H[f+356>>2],H[f+360>>2],H[f+364>>2],C,D,s,u);G=H[f+376>>2];J=H[f+380>>2];k=H[f+372>>2];d=H[f+368>>2]}i=!(o&1)&((Gk(n,r,z,A,0,0,0,0)|0)!=0&(i|0)<32);Lk(f+320|0,i+o|0);Nk(f+304|0,C,D,s,u,H[f+320>>2],H[f+324>>2],H[f+328>>2],H[f+332>>2]);h=d;Ek(f+272|0,H[f+304>>2],H[f+308>>2],H[f+312>>2],H[f+316>>2],d,k,G,J);d=i;Nk(f+288|0,C,D,s,u,d?0:n,d?0:r,d?0:z,d?0:A);Ek(f+256|0,H[f+288>>2],H[f+292>>2],H[f+296>>2],H[f+300>>2],H[f+272>>2],H[f+276>>2],H[f+280>>2],H[f+284>>2]);Pk(f+240|0,H[f+256>>2],H[f+260>>2],H[f+264>>2],H[f+268>>2],h,k,G,J);d=H[f+240>>2];i=H[f+244>>2];h=H[f+248>>2];k=H[f+252>>2];if(!Gk(d,i,h,k,0,0,0,0)){H[4739]=68}pk(f+224|0,d,i,h,k,j);n=H[f+224>>2];r=H[f+228>>2];j=H[f+236>>2];d=H[f+232>>2];break z}H[4739]=68;Kk(f+208|0,p);Nk(f+192|0,H[f+208>>2],H[f+212>>2],H[f+216>>2],H[f+220>>2],0,0,0,65536);Nk(f+176|0,H[f+192>>2],H[f+196>>2],H[f+200>>2],H[f+204>>2],0,0,0,65536);n=H[f+176>>2];r=H[f+180>>2];j=H[f+188>>2];d=H[f+184>>2]}H[t+16>>2]=n;H[t+20>>2]=r;H[t+24>>2]=d;H[t+28>>2]=j;da=f+432|0;j=H[t+24>>2];k=H[t+28>>2];l=H[t+16>>2];m=H[t+20>>2];break a}if(H[g+116>>2]<0){break n}H[g+4>>2]=H[g+4>>2]-1}f=p;h=0;p=0;e=da-8976|0;da=e;J=x+E|0;M=0-J|0;F:{G:{while(1){if((i|0)!=48){H:{if((i|0)!=46){break F}d=H[g+4>>2];if((d|0)==H[g+104>>2]){break H}H[g+4>>2]=d+1;i=I[d|0];break G}}else{d=H[g+4>>2];if((d|0)!=H[g+104>>2]){h=1;H[g+4>>2]=d+1;i=I[d|0]}else{h=1;i=lk(g)}continue}break}i=lk(g)}q=1;if((i|0)!=48){break F}while(1){d=j;j=d-1|0;k=k-!d|0;d=H[g+4>>2];I:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break I}i=lk(g)}if((i|0)==48){continue}break}h=1}H[e+784>>2]=0;J:{K:{d=(i|0)==46;n=i-48|0;L:{M:{N:{if(!(!d&n>>>0>9)){while(1){O:{if(d&1){if(!q){j=l;k=m;q=1;break O}d=!h;break N}d=l+1|0;m=d?m:m+1|0;l=d;if((p|0)<=2044){G=(i|0)==48?G:l;d=(e+784|0)+(p<<2)|0;if(w){n=(N(H[d>>2],10)+i|0)-48|0}H[d>>2]=n;h=1;i=w+1|0;d=(i|0)==9;w=d?0:i;p=d+p|0;break O}if((i|0)==48){break O}H[e+8960>>2]=H[e+8960>>2]|1;G=18396}d=H[g+4>>2];P:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;i=I[d|0];break P}i=lk(g)}d=(i|0)==46;n=i-48|0;if(d|n>>>0<10){continue}break}}j=q?j:l;k=q?k:m;if(!(!h|(i&-33)!=69)){n=rk(g);d=fa;r=d;Q:{if(n|(d|0)!=-2147483648){break Q}n=0;r=0;if(H[g+116>>2]<0){break Q}H[g+4>>2]=H[g+4>>2]-1}if(!h){break L}k=k+r|0;d=j+n|0;k=d>>>0>>0?k+1|0:k;j=d;break K}d=!h;if((i|0)<0){break M}}if(H[g+116>>2]<0){break M}H[g+4>>2]=H[g+4>>2]-1}if(!d){break K}}H[4739]=28;l=0;m=0;H[g+112>>2]=0;H[g+116>>2]=0;d=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=d;H[g+124>>2]=d>>31;H[g+104>>2]=H[g+8>>2];j=0;d=0;break J}d=H[e+784>>2];if(!d){Jk(e,+(f|0)*0);l=H[e>>2];m=H[e+4>>2];j=H[e+12>>2];d=H[e+8>>2];break J}if(!(l>>>0>9&(m|0)>=0|(m|0)>0|((j|0)!=(l|0)|(k|0)!=(m|0))|(d>>>E|0?(E|0)<=30:0))){Kk(e+48|0,f);Lk(e+32|0,d);Nk(e+16|0,H[e+48>>2],H[e+52>>2],H[e+56>>2],H[e+60>>2],H[e+32>>2],H[e+36>>2],H[e+40>>2],H[e+44>>2]);l=H[e+16>>2];m=H[e+20>>2];j=H[e+28>>2];d=H[e+24>>2];break J}if(j>>>0>(x|0)/-2>>>0&(k|0)>=0|(k|0)>0){H[4739]=68;Kk(e+96|0,f);Nk(e+80|0,H[e+96>>2],H[e+100>>2],H[e+104>>2],H[e+108>>2],-1,-1,-1,2147418111);Nk(e- -64|0,H[e+80>>2],H[e+84>>2],H[e+88>>2],H[e+92>>2],-1,-1,-1,2147418111);l=H[e+64>>2];m=H[e+68>>2];j=H[e+76>>2];d=H[e+72>>2];break J}d=x-226|0;i=j>>>0>>0;d=d>>31;if(i&(k|0)<=(d|0)|(d|0)>(k|0)){H[4739]=68;Kk(e+144|0,f);Nk(e+128|0,H[e+144>>2],H[e+148>>2],H[e+152>>2],H[e+156>>2],0,0,0,65536);Nk(e+112|0,H[e+128>>2],H[e+132>>2],H[e+136>>2],H[e+140>>2],0,0,0,65536);l=H[e+112>>2];m=H[e+116>>2];j=H[e+124>>2];d=H[e+120>>2];break J}if(w){if((w|0)<=8){d=(e+784|0)+(p<<2)|0;o=H[d>>2];while(1){o=N(o,10);w=w+1|0;if((w|0)!=9){continue}break}H[d>>2]=o}p=p+1|0}R:{q=j;if((G|0)>(j|0)|(G|0)>=9|(j|0)>17){break R}if((q|0)==9){Kk(e+192|0,f);Lk(e+176|0,H[e+784>>2]);Nk(e+160|0,H[e+192>>2],H[e+196>>2],H[e+200>>2],H[e+204>>2],H[e+176>>2],H[e+180>>2],H[e+184>>2],H[e+188>>2]);l=H[e+160>>2];m=H[e+164>>2];j=H[e+172>>2];d=H[e+168>>2];break J}if((q|0)<=8){Kk(e+272|0,f);Lk(e+256|0,H[e+784>>2]);Nk(e+240|0,H[e+272>>2],H[e+276>>2],H[e+280>>2],H[e+284>>2],H[e+256>>2],H[e+260>>2],H[e+264>>2],H[e+268>>2]);Kk(e+224|0,H[(0-q<<2)+17296>>2]);Ik(e+208|0,H[e+240>>2],H[e+244>>2],H[e+248>>2],H[e+252>>2],H[e+224>>2],H[e+228>>2],H[e+232>>2],H[e+236>>2]);l=H[e+208>>2];m=H[e+212>>2];j=H[e+220>>2];d=H[e+216>>2];break J}d=(N(q,-3)+E|0)+27|0;j=H[e+784>>2];if(j>>>d|0?(d|0)<=30:0){break R}Kk(e+352|0,f);Lk(e+336|0,j);Nk(e+320|0,H[e+352>>2],H[e+356>>2],H[e+360>>2],H[e+364>>2],H[e+336>>2],H[e+340>>2],H[e+344>>2],H[e+348>>2]);Kk(e+304|0,H[(q<<2)+17224>>2]);Nk(e+288|0,H[e+320>>2],H[e+324>>2],H[e+328>>2],H[e+332>>2],H[e+304>>2],H[e+308>>2],H[e+312>>2],H[e+316>>2]);l=H[e+288>>2];m=H[e+292>>2];j=H[e+300>>2];d=H[e+296>>2];break J}while(1){i=p;p=i-1|0;if(!H[(e+784|0)+(p<<2)>>2]){continue}break}w=0;d=(q|0)%9|0;S:{if(!d){d=0;break S}j=(q|0)>=0?d:d+9|0;T:{if(!i){d=0;i=0;break T}h=H[(0-j<<2)+17296>>2];m=1e9/(h|0)|0;n=0;o=0;d=0;while(1){k=n;l=(e+784|0)+(o<<2)|0;p=H[l>>2];n=(p>>>0)/(h>>>0)|0;k=k+n|0;H[l>>2]=k;k=!k&(d|0)==(o|0);d=k?d+1&2047:d;q=k?q-9|0:q;n=N(m,p-N(h,n)|0);o=o+1|0;if((o|0)!=(i|0)){continue}break}if(!n){break T}H[(e+784|0)+(i<<2)>>2]=n;i=i+1|0}q=(q-j|0)+9|0}while(1){p=(e+784|0)+(d<<2)|0;U:{while(1){if(((q|0)!=36|K[p>>2]>=10384593)&(q|0)>=36){break U}h=i+2047|0;n=0;while(1){l=h&2047;g=(e+784|0)+(l<<2)|0;j=H[g>>2];m=j>>>3|0;k=j<<29;j=k+n|0;h=m;h=j>>>0>>0?h+1|0:h;k=h;if(!h&j>>>0<1000000001){n=0}else{h=j;n=Hl(h,k,1e9,0);j=h-Fl(n,fa,1e9,0)|0}H[g>>2]=j;i=(l|0)!=(i-1&2047)?i:(d|0)==(l|0)?i:j?i:l;h=l-1|0;if((d|0)!=(l|0)){continue}break}w=w-29|0;if(!n){continue}break}d=d-1&2047;if((i|0)==(d|0)){j=e+784|0;h=j+((i+2046&2047)<<2)|0;i=i-1&2047;H[h>>2]=H[h>>2]|H[j+(i<<2)>>2]}q=q+9|0;H[(e+784|0)+(d<<2)>>2]=n;continue}break}V:{W:while(1){j=i+1&2047;m=(e+784|0)+((i-1&2047)<<2)|0;while(1){k=(q|0)>45?9:1;X:{while(1){h=d;o=0;Y:{while(1){Z:{d=h+o&2047;if((d|0)==(i|0)){break Z}d=H[(e+784|0)+(d<<2)>>2];l=H[(o<<2)+17248>>2];if(d>>>0>>0){break Z}if(d>>>0>l>>>0){break Y}o=o+1|0;if((o|0)!=4){continue}}break}if((q|0)!=36){break Y}j=0;k=0;o=0;l=0;m=0;while(1){d=h+o&2047;if((d|0)==(i|0)){i=i+1&2047;H[(e+(i<<2)|0)+780>>2]=0}Lk(e+768|0,H[(e+784|0)+(d<<2)>>2]);Nk(e+752|0,j,k,l,m,0,0,1342177280,1075633366);Ek(e+736|0,H[e+752>>2],H[e+756>>2],H[e+760>>2],H[e+764>>2],H[e+768>>2],H[e+772>>2],H[e+776>>2],H[e+780>>2]);l=H[e+744>>2];m=H[e+748>>2];j=H[e+736>>2];k=H[e+740>>2];o=o+1|0;if((o|0)!=4){continue}break}Kk(e+720|0,f);Nk(e+704|0,j,k,l,m,H[e+720>>2],H[e+724>>2],H[e+728>>2],H[e+732>>2]);l=H[e+712>>2];m=H[e+716>>2];j=0;k=0;n=H[e+704>>2];r=H[e+708>>2];g=w+113|0;p=g-x|0;q=(p|0)<(E|0);d=q?(p|0)>0?p:0:E;if((d|0)<=112){break X}break V}w=k+w|0;d=i;if((h|0)==(d|0)){continue}break}p=1e9>>>k|0;n=-1<>2];l=l+(o>>>k|0)|0;H[g>>2]=l;l=!l&(d|0)==(h|0);d=l?d+1&2047:d;q=l?q-9|0:q;o=N(p,n&o);h=h+1&2047;if((h|0)!=(i|0)){continue}break}if(!o){continue}if((d|0)!=(j|0)){H[(e+784|0)+(i<<2)>>2]=o;i=j;continue W}H[m>>2]=H[m>>2]|1;d=j;continue}break}break}Jk(e+656|0,nk(225-d|0));ok(e+688|0,H[e+656>>2],H[e+660>>2],H[e+664>>2],H[e+668>>2],n,r,l,m);z=H[e+696>>2];A=H[e+700>>2];C=H[e+688>>2];D=H[e+692>>2];Jk(e+640|0,nk(113-d|0));qk(e+672|0,n,r,l,m,H[e+640>>2],H[e+644>>2],H[e+648>>2],H[e+652>>2]);j=H[e+672>>2];k=H[e+676>>2];s=H[e+680>>2];u=H[e+684>>2];Pk(e+624|0,n,r,l,m,j,k,s,u);Ek(e+608|0,C,D,z,A,H[e+624>>2],H[e+628>>2],H[e+632>>2],H[e+636>>2]);l=H[e+616>>2];m=H[e+620>>2];n=H[e+608>>2];r=H[e+612>>2]}x=h+4&2047;_:{if((x|0)==(i|0)){break _}x=H[(e+784|0)+(x<<2)>>2];$:{if(x>>>0<=499999999){if(!x&(h+5&2047)==(i|0)){break $}Jk(e+496|0,+(f|0)*.25);Ek(e+480|0,j,k,s,u,H[e+496>>2],H[e+500>>2],H[e+504>>2],H[e+508>>2]);s=H[e+488>>2];u=H[e+492>>2];j=H[e+480>>2];k=H[e+484>>2];break $}if((x|0)!=5e8){Jk(e+592|0,+(f|0)*.75);Ek(e+576|0,j,k,s,u,H[e+592>>2],H[e+596>>2],H[e+600>>2],H[e+604>>2]);s=H[e+584>>2];u=H[e+588>>2];j=H[e+576>>2];k=H[e+580>>2];break $}L=+(f|0);if((h+5&2047)==(i|0)){Jk(e+528|0,L*.5);Ek(e+512|0,j,k,s,u,H[e+528>>2],H[e+532>>2],H[e+536>>2],H[e+540>>2]);s=H[e+520>>2];u=H[e+524>>2];j=H[e+512>>2];k=H[e+516>>2];break $}Jk(e+560|0,L*.75);Ek(e+544|0,j,k,s,u,H[e+560>>2],H[e+564>>2],H[e+568>>2],H[e+572>>2]);s=H[e+552>>2];u=H[e+556>>2];j=H[e+544>>2];k=H[e+548>>2]}if((d|0)>111){break _}qk(e+464|0,j,k,s,u,0,0,0,1073676288);if(Gk(H[e+464>>2],H[e+468>>2],H[e+472>>2],H[e+476>>2],0,0,0,0)){break _}Ek(e+448|0,j,k,s,u,0,0,0,1073676288);s=H[e+456>>2];u=H[e+460>>2];j=H[e+448>>2];k=H[e+452>>2]}Ek(e+432|0,n,r,l,m,j,k,s,u);Pk(e+416|0,H[e+432>>2],H[e+436>>2],H[e+440>>2],H[e+444>>2],C,D,z,A);l=H[e+424>>2];m=H[e+428>>2];n=H[e+416>>2];r=H[e+420>>2];aa:{if((-2-J|0)>=(g&2147483647)){break aa}H[e+408>>2]=l;H[e+412>>2]=m&2147483647;H[e+400>>2]=n;H[e+404>>2]=r;Nk(e+384|0,n,r,l,m,0,0,0,1073610752);f=H[e+400>>2];x=H[e+404>>2];g=H[e+408>>2];o=H[e+412>>2];i=Hk(f,x,g,o,1081081856);h=(i|0)<0;l=h?l:H[e+392>>2];m=h?m:H[e+396>>2];n=h?n:H[e+384>>2];r=h?r:H[e+388>>2];w=((i|0)>=0)+w|0;if((w+110|0)<=(M|0)){if((((Hk(f,x,g,o,1081081856)|0)<0?q:q&(d|0)!=(p|0))|0)!=1){break aa}if(!Gk(j,k,s,u,0,0,0,0)){break aa}}H[4739]=68}pk(e+368|0,n,r,l,m,w);l=H[e+368>>2];m=H[e+372>>2];j=H[e+380>>2];d=H[e+376>>2]}H[t+40>>2]=d;H[t+44>>2]=j;H[t+32>>2]=l;H[t+36>>2]=m;da=e+8976|0;j=H[t+40>>2];k=H[t+44>>2];l=H[t+32>>2];m=H[t+36>>2];break a;case 3:break j;default:break m}}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}H[4739]=28;break i}ba:{d=H[g+4>>2];ca:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break ca}d=lk(g)}if((d|0)==40){h=1;break ba}k=2147450880;if(H[g+116>>2]<0){break a}H[g+4>>2]=H[g+4>>2]-1;break a}while(1){da:{d=H[g+4>>2];ea:{if((d|0)!=H[g+104>>2]){H[g+4>>2]=d+1;d=I[d|0];break ea}d=lk(g)}if(!(d-48>>>0<10|d-65>>>0<26|(d|0)==95)){if(d-97>>>0>=26){break da}}h=h+1|0;continue}break}k=2147450880;if((d|0)==41){break a}d=H[g+116>>2];if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(!h){break a}while(1){h=h-1|0;if((d|0)>0|(d|0)>=0){H[g+4>>2]=H[g+4>>2]-1}if(h){continue}break}break a}H[g+112>>2]=0;H[g+116>>2]=0;d=H[g+44>>2]-H[g+4>>2]|0;H[g+120>>2]=d;H[g+124>>2]=d>>31;H[g+104>>2]=H[g+8>>2]}}H[y>>2]=l;H[y+4>>2]=m;H[y+8>>2]=j;H[y+12>>2]=k;da=t+48|0;d=H[y+8>>2];j=H[y+12>>2];i=H[y>>2];h=H[y+4>>2];if(c){H[c>>2]=((H[y+20>>2]+H[y+136>>2]|0)-H[y+60>>2]|0)+b}H[a+8>>2]=d;H[a+12>>2]=j;H[a>>2]=i;H[a+4>>2]=h;da=y+160|0}function Xc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,ea=0,ga=0,ha=0,ia=0;h=da-224|0;da=h;H[a+8>>2]=e;g=a+32|0;l=H[g>>2];f=H[a+36>>2]-l>>2;a:{if(f>>>0>>0){Ha(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=l+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;k=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;d=f;while(1){l=(i<<2)+b|0;g=H[l+4>>2];l=H[l>>2];u=(l|0)<(d|0);d=u?l:d;m=(d|0)>(g|0);d=m?g:d;f=u?f:(f|0)<(l|0)?l:f;f=m?f:(f|0)<(g|0)?g:f;i=i+2|0;j=j+2|0;if((n|0)!=(j|0)){continue}break}}if(!k){break c}g=H[(i<<2)+b>>2];l=(g|0)<(d|0);d=l?g:d;f=l?f:(f|0)<(g|0)?g:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}d=d+1|0;H[a+20>>2]=d;f=d>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}_=H[a+52>>2];v=H[a+48>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;e:{if(!e){f=0;d=0;break e}Ha(h+144|0,e);f=H[h+156>>2];d=H[h+160>>2]}d=d-f>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}H[h+160>>2]=(e<<2)+f;break f}Ha(h+144|12,e-d|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}H[h+172>>2]=f+(e<<2);break g}Ha(h+168|0,e-d|0)}h:{i:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;j:{k:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break k}d=1;break j}Ha(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break i}d=e<<2;f=$k(d);H[h+128>>2]=f;g=d+f|0;H[h+136>>2]=g;gk(f,0,d);H[h+132>>2]=g;d=0}J=a+152|0;g=H[a+152>>2];f=H[a+156>>2]-g>>2;l:{if(f>>>0>>0){Ha(J,e-f|0);break l}if(e>>>0>=f>>>0){break l}H[a+156>>2]=g+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;r=$k(d);y=gk(r,0,d)+d|0}f=H[a+56>>2];d=H[f>>2];f=H[f+4>>2]-d|0;if((f|0)<5){break h}E=f>>>2|0;g=E-1|0;if(g>>>0>2>>>0){K=a+112|0;$=h+125|0;aa=h+36|0;ba=h+24|0;S=e<<2;L=y-r|0;V=L&-4;B=L>>2;M=e&-2;O=e&1;ca=e&-4;W=e&3;G=e-1|0;while(1){u=g;j=H[(g<<2)+d>>2];d=(j>>>0)%3|0;l=0;m:{if((j|0)==-1){break m}g=0;f=j+2|0;w=(d|0)!=0|(f|0)!=-1;k=1;q=d?j-1|0:f;p=1<>>5|0;z=H[v>>2];d=j;while(1){n:{if(H[z+(d>>>3&536870908)>>2]>>>d&1){break n}f=H[H[H[v+64>>2]+12>>2]+(d<<2)>>2];if((f|0)==-1){break n}i=H[_>>2];l=H[v+28>>2];n=H[i+(H[l+(f<<2)>>2]<<2)>>2];if((n|0)>=(u|0)){break n}m=f+1|0;m=H[i+(H[l+(((m>>>0)%3|0?m:f-2|0)<<2)>>2]<<2)>>2];if((m|0)>=(u|0)){break n}f=H[i+(H[l+(f+((f>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((f|0)>=(u|0)){break n}o:{if(!e){break o}l=H[(h+144|0)+N(g,12)>>2];i=N(e,f);m=N(e,m);n=N(e,n);f=0;x=0;if(G){while(1){H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+m<<2)+b>>2]|0)-H[(f+n<<2)+b>>2];o=f|1;H[l+(o<<2)>>2]=(H[(i+o<<2)+b>>2]+H[(m+o<<2)+b>>2]|0)-H[(n+o<<2)+b>>2];f=f+2|0;x=x+2|0;if((M|0)!=(x|0)){continue}break}}if(!O){break o}H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+m<<2)+b>>2]|0)-H[(f+n<<2)+b>>2]}l=4;g=g+1|0;if((g|0)==4){break m}}p:{if(k&1){l=d-2|0;f=d+1|0;d=-1;f=(f>>>0)%3|0?f:l;if((f|0)==-1|H[H[v>>2]+(f>>>3&536870908)>>2]>>>f&1){break p}f=H[H[H[v+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break p}d=f+1|0;d=(d>>>0)%3|0?d:f-2|0;break p}q:{if((d>>>0)%3|0){f=d-1|0;break q}f=d+2|0;d=-1;if((f|0)==-1){break p}}d=-1;if(H[H[v>>2]+(f>>>3&536870908)>>2]>>>f&1){break p}f=H[H[H[v+64>>2]+12>>2]+(f<<2)>>2];if((f|0)==-1){break p}if((f>>>0)%3|0){d=f-1|0;break p}d=f+2|0}if((d|0)==(j|0)){l=g;break m}if(!((k^1)&1|(d|0)!=-1)){if(!w){l=g;break m}if(p&H[H[v>>2]+(C<<2)>>2]){l=g;break m}d=H[H[H[v+64>>2]+12>>2]+(q<<2)>>2];if((d|0)==-1){l=g;break m}k=0;d=(d>>>0)%3|0?d-1|0:d+2|0}l=g;if((d|0)!=-1){continue}break}}g=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Y=N(e,u)<<2;C=Y+b|0;m=(N(E-2|0,e)<<2)+b|0;i=H[a+152>>2];d=0;if(e){while(1){j=g<<2;f=H[j+m>>2]-H[j+C>>2]|0;H[j+r>>2]=f;H[i+j>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;j=d;d=f>>31;d=j+(d+f^d)|0;g=g+1|0;if((g|0)!=(e|0)){continue}break}}f=h+200|0;$e(f,K,i,e);g=cf(f);j=fa;n=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;i=f<<3;k=i;f=g+i|0;i=(g>>31)+(i>>31)|0;i=f>>>0>>0?i+1|0:i;k=f;g=n+f|0;f=i+j|0;f=g>>>0>>0?f+1|0:f;j=g;Q=(l|0)>0;r:{if(!Q){z=l-1|0;break r}z=l-1|0;k=z<<3;g=k+(h+48|0)|0;n=g;i=l+H[g>>2]|0;g=H[g+4>>2];g=i>>>0>>0?g+1|0:g;H[n>>2]=i;H[n+4>>2]=g;t=U(_e(i,H[k+(h+80|0)>>2])*(+(i>>>0)+ +(g|0)*4294967296));s:{if(P(t)<0x8000000000000000){i=P(t)>=1?~~(t>0?R(T(t*2.3283064365386963e-10),4294967295):U((t-+(~~t>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~t>>>0;break s}i=-2147483648;g=0}g=g+j|0;j=g}x=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=j;H[h+12>>2]=d;Ma(ba,m,m+S|0);Yc(aa,r,y);d=z<<3;n=d+(h+80|0)|0;ea=h+200|0;t:{u:{v:{w:{if((l|0)>0){f=h+124|0;o=f+l|0;q=o-2|0;m=o-1|0;ga=!l|(m|0)==(f|0);Z=d+(h+48|0)|0;w=1;while(1){x=x+1|0;if((l|0)>0){gk(h+124|0,1,l)}gk(h+124|0,0,x);x:{y:while(1){if(e){gk(H[h+128>>2],0,S)}A=0;k=0;if((l|0)>0){while(1){if(!I[(h+124|0)+k|0]){z:{if(!e){break z}d=H[h+128>>2];g=H[(h+144|0)+N(k,12)>>2];i=0;f=0;j=0;if(G>>>0>2){while(1){p=f<<2;s=p+d|0;H[s>>2]=H[s>>2]+H[g+p>>2];s=p|4;D=s+d|0;H[D>>2]=H[D>>2]+H[g+s>>2];s=p|8;D=s+d|0;H[D>>2]=H[D>>2]+H[g+s>>2];p=p|12;s=p+d|0;H[s>>2]=H[s>>2]+H[g+p>>2];f=f+4|0;j=j+4|0;if((ca|0)!=(j|0)){continue}break}}if(!W){break z}while(1){j=f<<2;p=j+d|0;H[p>>2]=H[p>>2]+H[g+j>>2];f=f+1|0;i=i+1|0;if((W|0)!=(i|0)){continue}break}}A=1<>2];A:{B:{C:{if(e){f=0;d=0;if(G){break C}break B}j=H[a+152>>2];i=0;break A}while(1){j=f<<2;i=j+g|0;H[i>>2]=H[i>>2]/(w|0);j=(j|4)+g|0;H[j>>2]=H[j>>2]/(w|0);f=f+2|0;d=d+2|0;if((M|0)!=(d|0)){continue}break}}if(O){d=(f<<2)+g|0;H[d>>2]=H[d>>2]/(w|0)}j=H[a+152>>2];g=H[h+128>>2];d=0;i=0;if(!e){break A}while(1){k=d<<2;f=H[k+g>>2]-H[k+C>>2]|0;H[k+r>>2]=f;H[j+k>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;k=f;f=f>>31;i=(k+f^f)+i|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=h+200|0;$e(d,K,j,e);f=cf(d);k=f;f=H[d+12>>2];d=H[d+16>>2];f=(((f-d|0)+1|0)/64|0)+d<<3;j=d<<3;d=f+j|0;d=k+d|0;f=d;if(Q){d=H[Z+4>>2];j=H[Z>>2];t=U(_e(j,H[n>>2]+w|0)*(+(j>>>0)+ +(d|0)*4294967296));D:{if(P(t)<0x8000000000000000){d=~~t>>>0;break D}d=0}f=d+f|0}d=H[h+8>>2];if(!((d|0)<=(f|0)&((d|0)<(f|0)|(i|0)>=H[h+12>>2]))){H[h+20>>2]=w;F[h+16|0]=A;H[h+8>>2]=f;H[h+12>>2]=i;j=H[h+132>>2];k=j-g|0;i=k>>2;d=H[h+32>>2];f=H[h+24>>2];E:{if(i>>>0<=d-f>>2>>>0){k=H[h+28>>2]-f|0;d=k+g|0;p=k>>2;A=p>>>0>>0?d:j;k=A-g|0;if(k){fk(f,g,k)}if(i>>>0>p>>>0){f=H[h+28>>2];if((j|0)==(A|0)){break E}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}break E}f=f+k|0;break E}if(f){H[h+28>>2]=f;Wk(f);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;d=0}if((k|0)<0){break w}f=d>>1;d=d>>>0<2147483644?f>>>0>>0?i:f:1073741823;if(d>>>0>=1073741824){break w}d=d<<2;f=$k(d);H[h+24>>2]=f;H[h+28>>2]=f;H[h+32>>2]=d+f;if((g|0)==(j|0)){break E}d=k&-4;f=ek(f,g,d)+d|0}H[h+28>>2]=f;d=H[h+44>>2];f=H[h+36>>2];F:{if(d-f>>2>>>0>=B>>>0){g=H[h+40>>2]-f|0;d=g+r|0;j=g>>2;i=j>>>0>>0?d:y;g=i-r|0;if(g){fk(f,r,g)}if(j>>>0>>0){f=H[h+40>>2];if((i|0)==(y|0)){break F}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((y|0)!=(d|0)){continue}break}break F}f=f+g|0;break F}if(f){H[h+40>>2]=f;Wk(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;d=0}if((L|0)<0){break v}f=d>>1;d=d>>>0<2147483644?f>>>0>>0?B:f:1073741823;if(d>>>0>=1073741824){break v}d=d<<2;f=$k(d);H[h+36>>2]=f;H[h+44>>2]=d+f;if((r|0)==(y|0)){break F}f=ek(f,r,V)+V|0}H[h+40>>2]=f}if(ga){break x}g=-1;j=I[m|0];f=j;while(1){i=f&255;d=g-1|0;k=d+o|0;f=I[k|0];if(i>>>0>f>>>0){i=m;d=o;if((j&255)>>>0<=f>>>0){while(1){j=i;i=i-1|0;p=d-2|0;d=j;if(I[p|0]<=f>>>0){continue}break}j=1}d=g+o|0;F[k|0]=j;F[i|0]=f;f=m;if((g|0)==-1){continue y}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}continue y}g=d;if((k|0)!=(h+124|0)){continue}break}break}if(m>>>0<=h+124>>>0){break x}d=I[h+124|0];F[h+124|0]=j;F[m|0]=d;d=$;f=q;if(d>>>0>=f>>>0){break x}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}}w=w+1|0;if((l|0)!=(x|0)){continue}break}}if(Q){f=H[h+20>>2];g=f;d=f+H[n>>2]|0;f=H[n+4>>2]+(f>>31)|0;H[n>>2]=d;H[n+4>>2]=d>>>0>>0?f+1|0:f}d=H[J>>2];if(!e){break t}g=H[h+36>>2];f=0;j=0;if(!G){break u}while(1){m=f<<2;i=H[m+g>>2];H[d+m>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;m=m|4;i=H[m+g>>2];H[d+m>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;f=f+2|0;j=j+2|0;if((M|0)!=(j|0)){continue}break}break u}Fa();X()}Fa();X()}if(O){j=g;g=f<<2;f=H[j+g>>2];H[d+g>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1}d=H[J>>2]}bf(ea,K,d,e);G:{if((l|0)<=0){break G}i=N(z,12)+a|0;j=i- -64|0;d=0;while(1){H:{g=H[i+68>>2];m=g<<5;f=H[j>>2];I:{if(!(I[h+16|0]>>>d&1)){J:{K:{if((f|0)!=(m|0)){break K}if((f+1|0)<0){break H}L:{if(f>>>0<=1073741822){m=f+32&-32;g=g<<6;g=g>>>0>>0?m:g;if(g>>>0<=f>>>0){break K}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break L}jl();X()}g=-1;if(f>>>0>2147483646){break J}g=2147483647}k=(g-1>>>5|0)+1|0;g=$k(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=g;m=H[i+60>>2];M:{N:{if(f>>>0>=33){H[g+(f-1>>>3&536870908)>>2]=0;break N}H[g>>2]=0;if(!f){break M}}o=f>>>5|0;n=o<<2;q=fk(g,m,n);o=f-(o<<5)|0;if((o|0)<=0){break M}q=n+q|0;o=-1>>>32-o|0;H[q>>2]=H[q>>2]&(o^-1)|o&H[m+n>>2]}H[i+60>>2]=g;H[j>>2]=f;H[i+68>>2]=k;if(!m){break K}Wk(m);f=H[j>>2]}g=f}H[j>>2]=g+1;f=H[i+60>>2]+(g>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0<=1073741822){m=f+32&-32;g=g<<6;g=g>>>0>>0?m:g;if(g>>>0<=f>>>0){break P}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break Q}jl();X()}g=-1;if(f>>>0>2147483646){break O}g=2147483647}k=(g-1>>>5|0)+1|0;g=$k(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=g;m=H[i+60>>2];R:{S:{if(f>>>0>=33){H[g+(f-1>>>3&536870908)>>2]=0;break S}H[g>>2]=0;if(!f){break R}}o=f>>>5|0;n=o<<2;q=fk(g,m,n);o=f-(o<<5)|0;if((o|0)<=0){break R}q=n+q|0;o=-1>>>32-o|0;H[q>>2]=H[q>>2]&(o^-1)|o&H[m+n>>2]}H[i+60>>2]=g;H[j>>2]=f;H[i+68>>2]=k;if(!m){break P}Wk(m);f=H[j>>2]}g=f}H[j>>2]=g+1;f=H[i+60>>2]+(g>>>3&536870908)|0;m=H[f>>2];ha=f,ia=Jl(g)&m,H[ha>>2]=ia}d=d+1|0;if((l|0)!=(d|0)){continue}break G}break}jl();X()}k=H[h+24>>2];d=H[a+8>>2];if((d|0)>0){m=c+Y|0;g=0;j=k;while(1){l=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;i=H[d+j>>2];n=H[a+16>>2];T:{if((i|0)>(n|0)){H[d+l>>2]=n;break T}d=d+l|0;n=H[a+12>>2];if((n|0)>(i|0)){H[d>>2]=n;break T}H[d>>2]=i}f=f+1|0;if((f|0)>2]){continue}break}}f=g<<2;d=f+m|0;f=H[f+C>>2]-H[f+l>>2]|0;H[d>>2]=f;U:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break U}f=f-H[a+20>>2]|0}H[d>>2]=f}j=l;d=H[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}}d=H[h+36>>2];if(d){H[h+40>>2]=d;Wk(d);k=H[h+24>>2]}if(k){H[h+28>>2]=k;Wk(k)}if((E|0)<3){break h}E=u;f=H[a+56>>2];d=H[f>>2];g=u-1|0;if(g>>>0>2]-d>>2>>>0){continue}break}}Sc();X()}Fa();X()}j=H[h+144>>2];if(e){gk(j,0,e<<2);j=H[h+144>>2]}d=H[a+8>>2];if((d|0)>0){g=0;while(1){e=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;l=H[d+j>>2];i=H[a+16>>2];V:{if((l|0)>(i|0)){H[d+e>>2]=i;break V}d=d+e|0;i=H[a+12>>2];if((i|0)>(l|0)){H[d>>2]=i;break V}H[d>>2]=l}f=f+1|0;if((f|0)>2]){continue}break}}f=g<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;W:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break W}f=f-H[a+20>>2]|0}H[d>>2]=f}j=e;d=H[a+8>>2];g=g+1|0;if((d|0)>(g|0)){continue}break}}if(r){Wk(r)}a=H[h+128>>2];if(a){H[h+132>>2]=a;Wk(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;Wk(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;Wk(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;Wk(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;Wk(a)}da=h+224|0;return 1}function td(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,ea=0,ga=0,ha=0,ia=0;h=da-224|0;da=h;H[a+8>>2]=e;g=a+32|0;l=H[g>>2];f=H[a+36>>2]-l>>2;a:{if(f>>>0>>0){Ha(g,e-f|0);break a}if(e>>>0>=f>>>0){break a}H[a+36>>2]=l+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;o=g&1;d:{if((d|0)==2){d=f;break d}m=g&-2;d=f;while(1){l=(i<<2)+b|0;g=H[l+4>>2];l=H[l>>2];v=(l|0)<(d|0);d=v?l:d;k=(d|0)>(g|0);d=k?g:d;f=v?f:(f|0)<(l|0)?l:f;f=k?f:(f|0)<(g|0)?g:f;i=i+2|0;j=j+2|0;if((m|0)!=(j|0)){continue}break}}if(!o){break c}g=H[(i<<2)+b>>2];l=(g|0)<(d|0);d=l?g:d;f=l?f:(f|0)<(g|0)?g:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}d=d+1|0;H[a+20>>2]=d;f=d>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(d&1){break b}H[a+24>>2]=f-1}_=H[a+52>>2];Q=H[a+48>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;e:{if(!e){f=0;d=0;break e}Ha(h+144|0,e);f=H[h+156>>2];d=H[h+160>>2]}d=d-f>>2;f:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break f}H[h+160>>2]=(e<<2)+f;break f}Ha(h+144|12,e-d|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;g:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break g}H[h+172>>2]=f+(e<<2);break g}Ha(h+168|0,e-d|0)}h:{i:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;j:{k:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break k}d=1;break j}Ha(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break i}d=e<<2;f=$k(d);H[h+128>>2]=f;g=d+f|0;H[h+136>>2]=g;gk(f,0,d);H[h+132>>2]=g;d=0}E=a+152|0;g=H[a+152>>2];f=H[a+156>>2]-g>>2;l:{if(f>>>0>>0){Ha(E,e-f|0);break l}if(e>>>0>=f>>>0){break l}H[a+156>>2]=g+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;s=$k(d);x=gk(s,0,d)+d|0}f=H[a+56>>2];d=H[f>>2];f=H[f+4>>2]-d|0;if((f|0)<5){break h}B=f>>>2|0;g=B-1|0;if(g>>>0>2>>>0){G=a+112|0;$=h+125|0;aa=h+36|0;ba=h+24|0;S=e<<2;J=x-s|0;V=J&-4;z=J>>2;K=e&-2;L=e&1;ca=e&-4;W=e&3;C=e-1|0;while(1){v=g;j=H[(g<<2)+d>>2];d=(j>>>0)%3|0;l=0;m:{if((j|0)==-1){break m}g=0;f=j+2|0;p=(d|0)!=0|(f|0)!=-1;k=H[Q+12>>2];r=k+((d?j-1|0:f)<<2)|0;q=1;d=j;while(1){f=H[k+(d<<2)>>2];n:{if((f|0)==-1){break n}i=-1;o=H[_>>2];l=H[Q>>2];m=o+(H[l+(f<<2)>>2]<<2)|0;n=f+1|0;n=(n>>>0)%3|0?n:f-2|0;if((n|0)!=-1){i=H[l+(n<<2)>>2]}m=H[m>>2];o:{p:{if((f>>>0)%3|0){f=f-1|0;break p}f=f+2|0;n=-1;if((f|0)==-1){break o}}n=H[l+(f<<2)>>2]}if((m|0)>=(v|0)){break n}f=H[o+(i<<2)>>2];if((f|0)>=(v|0)){break n}i=H[o+(n<<2)>>2];if((i|0)>=(v|0)){break n}l=H[(h+144|0)+N(g,12)>>2];q:{if(!e){break q}i=N(e,i);o=N(e,f);m=N(e,m);f=0;w=0;if(C){while(1){H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+o<<2)+b>>2]|0)-H[(f+m<<2)+b>>2];n=f|1;H[l+(n<<2)>>2]=(H[(i+n<<2)+b>>2]+H[(o+n<<2)+b>>2]|0)-H[(m+n<<2)+b>>2];f=f+2|0;w=w+2|0;if((K|0)!=(w|0)){continue}break}}if(!L){break q}H[l+(f<<2)>>2]=(H[(f+i<<2)+b>>2]+H[(f+o<<2)+b>>2]|0)-H[(f+m<<2)+b>>2]}l=4;g=g+1|0;if((g|0)==4){break m}}r:{if(q&1){f=d+1|0;d=(f>>>0)%3|0?f:d-2|0;i=-1;if((d|0)==-1){break r}d=H[k+(d<<2)>>2];i=-1;if((d|0)==-1){break r}f=d+1|0;i=(f>>>0)%3|0?f:d-2|0;break r}s:{if((d>>>0)%3|0){f=d-1|0;break s}f=d+2|0;i=-1;if((f|0)==-1){break r}}d=H[k+(f<<2)>>2];i=-1;if((d|0)==-1){break r}i=d-1|0;if((d>>>0)%3|0){break r}i=d+2|0}d=i;if((j|0)==(d|0)){l=g;break m}if(!((q^1)&1|(d|0)!=-1)){if(!p){l=g;break m}d=H[r>>2];if((d|0)==-1){l=g;break m}q=0;d=(d>>>0)%3|0?d-1|0:d+2|0}l=g;if((d|0)!=-1){continue}break}}g=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Y=N(e,v)<<2;M=Y+b|0;j=(N(B-2|0,e)<<2)+b|0;k=H[a+152>>2];d=0;if(e){while(1){i=g<<2;f=H[i+j>>2]-H[i+M>>2]|0;H[i+s>>2]=f;H[i+k>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;i=d;d=f>>31;d=i+(d+f^d)|0;g=g+1|0;if((g|0)!=(e|0)){continue}break}}f=h+200|0;$e(f,G,k,e);g=cf(f);k=fa;m=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;i=f<<3;o=i;f=g+i|0;i=(g>>31)+(i>>31)|0;i=f>>>0>>0?i+1|0:i;o=f;g=m+f|0;f=i+k|0;f=g>>>0>>0?f+1|0:f;i=g;O=(l|0)>0;t:{if(!O){D=l-1|0;break t}D=l-1|0;o=D<<3;g=o+(h+48|0)|0;m=g;k=l+H[g>>2]|0;g=H[g+4>>2];g=k>>>0>>0?g+1|0:g;H[m>>2]=k;H[m+4>>2]=g;u=U(_e(k,H[o+(h+80|0)>>2])*(+(k>>>0)+ +(g|0)*4294967296));u:{if(P(u)<0x8000000000000000){k=P(u)>=1?~~(u>0?R(T(u*2.3283064365386963e-10),4294967295):U((u-+(~~u>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~u>>>0;break u}k=-2147483648;g=0}g=g+i|0;i=g}w=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=i;H[h+12>>2]=d;Ma(ba,j,j+S|0);Yc(aa,s,x);d=D<<3;o=d+(h+80|0)|0;ea=h+200|0;v:{w:{x:{y:{if((l|0)>0){f=h+124|0;m=f+l|0;n=m-2|0;k=m-1|0;ga=!l|(k|0)==(f|0);Z=d+(h+48|0)|0;q=1;while(1){w=w+1|0;if((l|0)>0){gk(h+124|0,1,l)}gk(h+124|0,0,w);z:{A:while(1){if(e){gk(H[h+128>>2],0,S)}y=0;g=0;if((l|0)>0){while(1){if(!I[(h+124|0)+g|0]){B:{if(!e){break B}d=H[h+128>>2];p=H[(h+144|0)+N(g,12)>>2];i=0;f=0;j=0;if(C>>>0>2){while(1){r=f<<2;t=r+d|0;H[t>>2]=H[t>>2]+H[p+r>>2];t=r|4;A=t+d|0;H[A>>2]=H[A>>2]+H[p+t>>2];t=r|8;A=t+d|0;H[A>>2]=H[A>>2]+H[p+t>>2];r=r|12;t=r+d|0;H[t>>2]=H[t>>2]+H[p+r>>2];f=f+4|0;j=j+4|0;if((ca|0)!=(j|0)){continue}break}}if(!W){break B}while(1){j=f<<2;r=j+d|0;H[r>>2]=H[r>>2]+H[j+p>>2];f=f+1|0;i=i+1|0;if((W|0)!=(i|0)){continue}break}}y=1<>2];C:{D:{E:{if(e){f=0;d=0;if(C){break E}break D}j=H[a+152>>2];i=0;break C}while(1){i=f<<2;j=i+g|0;H[j>>2]=H[j>>2]/(q|0);i=(i|4)+g|0;H[i>>2]=H[i>>2]/(q|0);f=f+2|0;d=d+2|0;if((K|0)!=(d|0)){continue}break}}if(L){d=(f<<2)+g|0;H[d>>2]=H[d>>2]/(q|0)}j=H[a+152>>2];g=H[h+128>>2];d=0;i=0;if(!e){break C}while(1){p=d<<2;f=H[p+g>>2]-H[p+M>>2]|0;H[p+s>>2]=f;H[j+p>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1;p=f;f=f>>31;i=(p+f^f)+i|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=h+200|0;$e(d,G,j,e);f=cf(d);p=f;f=H[d+12>>2];d=H[d+16>>2];f=(((f-d|0)+1|0)/64|0)+d<<3;j=d<<3;d=f+j|0;d=p+d|0;f=d;if(O){d=H[Z+4>>2];j=H[Z>>2];u=U(_e(j,H[o>>2]+q|0)*(+(j>>>0)+ +(d|0)*4294967296));F:{if(P(u)<0x8000000000000000){d=~~u>>>0;break F}d=0}f=d+f|0}d=H[h+8>>2];if(!((d|0)<=(f|0)&((d|0)<(f|0)|(i|0)>=H[h+12>>2]))){H[h+20>>2]=q;F[h+16|0]=y;H[h+8>>2]=f;H[h+12>>2]=i;i=H[h+132>>2];p=i-g|0;j=p>>2;d=H[h+32>>2];f=H[h+24>>2];G:{if(j>>>0<=d-f>>2>>>0){p=H[h+28>>2]-f|0;d=p+g|0;r=p>>2;y=r>>>0>>0?d:i;p=y-g|0;if(p){fk(f,g,p)}if(j>>>0>r>>>0){f=H[h+28>>2];if((i|0)==(y|0)){break G}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}break G}f=f+p|0;break G}if(f){H[h+28>>2]=f;Wk(f);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;d=0}if((p|0)<0){break y}f=d>>1;d=d>>>0<2147483644?f>>>0>>0?j:f:1073741823;if(d>>>0>=1073741824){break y}d=d<<2;f=$k(d);H[h+24>>2]=f;H[h+28>>2]=f;H[h+32>>2]=d+f;if((g|0)==(i|0)){break G}d=p&-4;f=ek(f,g,d)+d|0}H[h+28>>2]=f;d=H[h+44>>2];f=H[h+36>>2];H:{if(d-f>>2>>>0>=z>>>0){g=H[h+40>>2]-f|0;d=g+s|0;i=g>>2;j=i>>>0>>0?d:x;g=j-s|0;if(g){fk(f,s,g)}if(i>>>0>>0){f=H[h+40>>2];if((j|0)==(x|0)){break H}while(1){H[f>>2]=H[d>>2];f=f+4|0;d=d+4|0;if((x|0)!=(d|0)){continue}break}break H}f=f+g|0;break H}if(f){H[h+40>>2]=f;Wk(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;d=0}if((J|0)<0){break x}f=d>>1;d=d>>>0<2147483644?f>>>0>>0?z:f:1073741823;if(d>>>0>=1073741824){break x}d=d<<2;f=$k(d);H[h+36>>2]=f;H[h+44>>2]=d+f;if((s|0)==(x|0)){break H}f=ek(f,s,V)+V|0}H[h+40>>2]=f}if(ga){break z}g=-1;j=I[k|0];f=j;while(1){i=f&255;d=g-1|0;p=d+m|0;f=I[p|0];if(i>>>0>f>>>0){i=k;d=m;if((j&255)>>>0<=f>>>0){while(1){j=i;i=i-1|0;r=d-2|0;d=j;if(I[r|0]<=f>>>0){continue}break}j=1}d=g+m|0;F[p|0]=j;F[i|0]=f;f=k;if((g|0)==-1){continue A}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}continue A}g=d;if((p|0)!=(h+124|0)){continue}break}break}if(k>>>0<=h+124>>>0){break z}d=I[h+124|0];F[h+124|0]=j;F[k|0]=d;d=$;f=n;if(d>>>0>=f>>>0){break z}while(1){g=I[d|0];F[d|0]=I[f|0];F[f|0]=g;d=d+1|0;f=f-1|0;if(d>>>0>>0){continue}break}}q=q+1|0;if((l|0)!=(w|0)){continue}break}}if(O){f=H[h+20>>2];g=f;d=f+H[o>>2]|0;f=H[o+4>>2]+(f>>31)|0;H[o>>2]=d;H[o+4>>2]=d>>>0>>0?f+1|0:f}d=H[E>>2];if(!e){break v}g=H[h+36>>2];f=0;j=0;if(!C){break w}while(1){k=f<<2;i=H[k+g>>2];H[d+k>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;k=k|4;i=H[k+g>>2];H[d+k>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1;f=f+2|0;j=j+2|0;if((K|0)!=(j|0)){continue}break}break w}Fa();X()}Fa();X()}if(L){j=g;g=f<<2;f=H[j+g>>2];H[d+g>>2]=(f|0)>=0?f<<1:(f^-1)<<1|1}d=H[E>>2]}bf(ea,G,d,e);I:{if((l|0)<=0){break I}j=N(D,12)+a|0;i=j- -64|0;d=0;while(1){J:{g=H[j+68>>2];k=g<<5;f=H[i>>2];K:{if(!(I[h+16|0]>>>d&1)){L:{M:{if((f|0)!=(k|0)){break M}if((f+1|0)<0){break J}N:{if(f>>>0<=1073741822){k=f+32&-32;g=g<<6;g=g>>>0>>0?k:g;if(g>>>0<=f>>>0){break M}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break N}jl();X()}g=-1;if(f>>>0>2147483646){break L}g=2147483647}o=(g-1>>>5|0)+1|0;g=$k(o<<2);H[h+208>>2]=o;H[h+204>>2]=0;H[h+200>>2]=g;k=H[j+60>>2];O:{P:{if(f>>>0>=33){H[g+(f-1>>>3&536870908)>>2]=0;break P}H[g>>2]=0;if(!f){break O}}n=f>>>5|0;m=n<<2;q=fk(g,k,m);n=f-(n<<5)|0;if((n|0)<=0){break O}q=m+q|0;n=-1>>>32-n|0;H[q>>2]=H[q>>2]&(n^-1)|n&H[k+m>>2]}H[j+60>>2]=g;H[i>>2]=f;H[j+68>>2]=o;if(!k){break M}Wk(k);f=H[i>>2]}g=f}H[i>>2]=g+1;f=H[j+60>>2]+(g>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0<=1073741822){k=f+32&-32;g=g<<6;g=g>>>0>>0?k:g;if(g>>>0<=f>>>0){break R}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((g|0)>=0){break S}jl();X()}g=-1;if(f>>>0>2147483646){break Q}g=2147483647}o=(g-1>>>5|0)+1|0;g=$k(o<<2);H[h+208>>2]=o;H[h+204>>2]=0;H[h+200>>2]=g;k=H[j+60>>2];T:{U:{if(f>>>0>=33){H[g+(f-1>>>3&536870908)>>2]=0;break U}H[g>>2]=0;if(!f){break T}}n=f>>>5|0;m=n<<2;q=fk(g,k,m);n=f-(n<<5)|0;if((n|0)<=0){break T}q=m+q|0;n=-1>>>32-n|0;H[q>>2]=H[q>>2]&(n^-1)|n&H[k+m>>2]}H[j+60>>2]=g;H[i>>2]=f;H[j+68>>2]=o;if(!k){break R}Wk(k);f=H[i>>2]}g=f}H[i>>2]=g+1;f=H[j+60>>2]+(g>>>3&536870908)|0;k=H[f>>2];ha=f,ia=Jl(g)&k,H[ha>>2]=ia}d=d+1|0;if((l|0)!=(d|0)){continue}break I}break}jl();X()}g=H[h+24>>2];d=H[a+8>>2];if((d|0)>0){o=c+Y|0;i=0;j=g;while(1){l=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;k=H[d+j>>2];m=H[a+16>>2];V:{if((k|0)>(m|0)){H[d+l>>2]=m;break V}d=d+l|0;m=H[a+12>>2];if((m|0)>(k|0)){H[d>>2]=m;break V}H[d>>2]=k}f=f+1|0;if((f|0)>2]){continue}break}}f=i<<2;d=f+o|0;f=H[f+M>>2]-H[f+l>>2]|0;H[d>>2]=f;W:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break W}f=f-H[a+20>>2]|0}H[d>>2]=f}j=l;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}d=H[h+36>>2];if(d){H[h+40>>2]=d;Wk(d);g=H[h+24>>2]}if(g){H[h+28>>2]=g;Wk(g)}if((B|0)<3){break h}B=v;f=H[a+56>>2];d=H[f>>2];g=v-1|0;if(g>>>0>2]-d>>2>>>0){continue}break}}Sc();X()}Fa();X()}j=H[h+144>>2];if(e){gk(j,0,e<<2);j=H[h+144>>2]}d=H[a+8>>2];if((d|0)>0){i=0;while(1){e=H[a+32>>2];f=0;if((d|0)>0){while(1){d=f<<2;g=H[d+j>>2];l=H[a+16>>2];X:{if((g|0)>(l|0)){H[d+e>>2]=l;break X}d=d+e|0;l=H[a+12>>2];if((l|0)>(g|0)){H[d>>2]=l;break X}H[d>>2]=g}f=f+1|0;if((f|0)>2]){continue}break}}f=i<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;Y:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break Y}f=f-H[a+20>>2]|0}H[d>>2]=f}j=e;d=H[a+8>>2];i=i+1|0;if((d|0)>(i|0)){continue}break}}if(s){Wk(s)}a=H[h+128>>2];if(a){H[h+132>>2]=a;Wk(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;Wk(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;Wk(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;Wk(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;Wk(a)}da=h+224|0;return 1}function ch(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=da-32|0;da=k;c=H[b+8>>2];a:{b:{if(I[b+352|0]){e=Oj(c);c=H[b+12>>2];H[b+12>>2]=e;if(!c){break a}d=b+12|0;break b}e=Nj(c);c=H[b+12>>2];H[b+12>>2]=e;if(!c){break a}d=b+12|0}Ng(d,c)}c:{c=H[b+12>>2];d:{if(!(H[c+40>>2]!=((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)?c:0)){b=$k(32);c=I[1972]|I[1973]<<8|(I[1974]<<16|I[1975]<<24);e=I[1968]|I[1969]<<8|(I[1970]<<16|I[1971]<<24);F[b+21|0]=e;F[b+22|0]=e>>>8;F[b+23|0]=e>>>16;F[b+24|0]=e>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1967]|I[1968]<<8|(I[1969]<<16|I[1970]<<24);e=I[1963]|I[1964]<<8|(I[1965]<<16|I[1966]<<24);F[b+16|0]=e;F[b+17|0]=e>>>8;F[b+18|0]=e>>>16;F[b+19|0]=e>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1959]|I[1960]<<8|(I[1961]<<16|I[1962]<<24);e=I[1955]|I[1956]<<8|(I[1957]<<16|I[1958]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1951]|I[1952]<<8|(I[1953]<<16|I[1954]<<24);e=I[1947]|I[1948]<<8|(I[1949]<<16|I[1950]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;el(a+4|0,b,29);Wk(b);break d}i=b+200|0;H[i+128>>2]=2;H[i+132>>2]=7;H[i+64>>2]=b;c=ga[H[H[b>>2]+32>>2]](b)|0;H[i+88>>2]=c;e=H[c+28>>2]-H[c+24>>2]>>2;c=H[i+108>>2];d=H[i+104>>2];f=c-d>>2;e:{if(e>>>0>f>>>0){Ha(i+104|0,e-f|0);d=H[i+104>>2];c=H[i+108>>2];break e}if(e>>>0>=f>>>0){break e}c=(e<<2)+d|0;H[i+108>>2]=c}if((c|0)!=(d|0)){d=0;while(1){p=H[i+104>>2];r=p+(d<<2)|0;c=H[i+88>>2];j=-1;g=d;f:{if((d|0)==-1){break f}j=0;d=H[H[c+24>>2]+(g<<2)>>2];if((d|0)==-1){break f}o=H[c+12>>2];e=1;c=d;while(1){j=j+1|0;f=e;g:{if(e&255){e=0;h=c+1|0;c=(h>>>0)%3|0?h:c-2|0;if((c|0)==-1){c=d;break g}h=H[o+(c<<2)>>2];if((h|0)==-1){c=d;break g}c=d;q=h+1|0;h=(q>>>0)%3|0?q:h-2|0;if((h|0)==-1){break g}e=f;c=h;if((d|0)!=(c|0)){break g}break f}h:{if((c>>>0)%3|0){c=c-1|0;break h}c=c+2|0;if((c|0)==-1){break f}}c=H[o+(c<<2)>>2];if((c|0)==-1){break f}c=(c>>>0)%3|0?c-1|0:c+2|0;e=0}if((c|0)!=-1){continue}break}}H[r>>2]=j;d=g+1|0;if(d>>>0>2]-p>>2>>>0){continue}break}}d=H[i+88>>2];c=H[d>>2];e=H[d+4>>2]-c>>2;f=H[i+92>>2];g=H[i+96>>2]-f>>2;i:{if(e>>>0>g>>>0){Ha(i+92|0,e-g|0);f=H[i+92>>2];d=H[i+88>>2];c=H[d>>2];break i}if(e>>>0>=g>>>0){break i}H[i+96>>2]=(e<<2)+f}e=H[d+4>>2]-c|0;j:{if(!e){break j}e=e>>2;e=e>>>0>1?e:1;g=e&3;d=0;if(e-1>>>0>=3){h=e&-4;while(1){e=d<<2;H[e+f>>2]=H[c+e>>2];j=e|4;H[j+f>>2]=H[c+j>>2];j=e|8;H[j+f>>2]=H[c+j>>2];e=e|12;H[e+f>>2]=H[c+e>>2];d=d+4|0;l=l+4|0;if((h|0)!=(l|0)){continue}break}}if(!g){break j}while(1){e=d<<2;H[e+f>>2]=H[c+e>>2];d=d+1|0;t=t+1|0;if((g|0)!=(t|0)){continue}break}}d=(H[i+132>>2]-H[i+128>>2]|0)+1|0;c=H[i+140>>2];e=H[i+136>>2];g=(c-e|0)/12|0;k:{if(d>>>0>g>>>0){f=0;c=d-g|0;h=H[i+144>>2];e=H[i+140>>2];if(c>>>0<=(h-e|0)/12>>>0){if(c){c=N((N(c,12)-12>>>0)/12|0,12)+12|0;e=gk(e,0,c)+c|0}H[i+140>>2]=e;break k}l:{m:{n:{g=H[i+136>>2];l=(e-g|0)/12|0;d=l+c|0;if(d>>>0<357913942){h=(h-g|0)/12|0;j=h<<1;h=h>>>0<178956970?d>>>0>j>>>0?d:j:357913941;if(h){if(h>>>0>=357913942){break n}f=$k(N(h,12))}d=N(l,12)+f|0;l=N((N(c,12)-12>>>0)/12|0,12)+12|0;c=gk(d,0,l);l=c+l|0;f=N(h,12)+f|0;if((e|0)==(g|0)){break m}while(1){d=d-12|0;e=e-12|0;H[d>>2]=H[e>>2];H[d+4>>2]=H[e+4>>2];H[d+8>>2]=H[e+8>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if((e|0)!=(g|0)){continue}break}H[i+144>>2]=f;c=H[i+140>>2];H[i+140>>2]=l;e=H[i+136>>2];H[i+136>>2]=d;if((c|0)==(e|0)){break l}while(1){d=c-12|0;f=H[d>>2];if(f){H[c-8>>2]=f;Wk(f)}c=d;if((e|0)!=(c|0)){continue}break}break l}Fa();X()}Ua(1604);X()}H[i+144>>2]=f;H[i+140>>2]=l;H[i+136>>2]=c}if(e){Wk(e)}break k}if(d>>>0>>0){d=e+N(d,12)|0;if((d|0)!=(c|0)){while(1){e=c-12|0;f=H[e>>2];if(f){H[c-8>>2]=f;Wk(f)}c=e;if((d|0)!=(c|0)){continue}break}}H[i+140>>2]=d}}c=H[b+12>>2];tb((H[c+28>>2]-H[c+24>>2]>>2)-H[c+44>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+12>>2];tb(((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)-H[c+40>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+8>>2];e=H[c+100>>2];c=H[c+96>>2];F[k+16|0]=0;l=b+28|0;d=(e-c|0)/12|0;c=k+16|0;Eg(l,d,c);e=H[b+12>>2];d=H[e+28>>2];e=H[e+24>>2];H[k+16>>2]=-1;Cg(b+52|0,d-e>>2,c);e=H[b+40>>2];H[b+44>>2]=e;c=H[b+12>>2];d=H[c+4>>2]-H[c>>2]>>2;d=d-((d>>>0)%3|0)|0;o:{if(d>>>0<=H[b+48>>2]-e>>2>>>0){break o}if(d>>>0>=1073741824){break c}f=d<<2;d=$k(f);H[b+44>>2]=d;H[b+40>>2]=d;H[b+48>>2]=d+f;if(!e){break o}Wk(e);c=H[b+12>>2]}e=H[c+28>>2];c=H[c+24>>2];F[k+16|0]=0;Eg(b+84|0,e-c>>2,k+16|0);H[b+164>>2]=-1;H[b+168>>2]=0;H[b+100>>2]=H[b+96>>2];H[b+112>>2]=H[b+108>>2];if(H[b+132>>2]){c=H[b+128>>2];if(c){while(1){e=H[c>>2];Wk(c);c=e;if(c){continue}break}}c=0;H[b+128>>2]=0;e=H[b+124>>2];p:{if(!e){break p}if(e-1>>>0>=3){g=e&-4;d=0;while(1){f=c<<2;H[f+H[b+120>>2]>>2]=0;H[H[b+120>>2]+(f|4)>>2]=0;H[H[b+120>>2]+(f|8)>>2]=0;H[H[b+120>>2]+(f|12)>>2]=0;c=c+4|0;d=d+4|0;if((g|0)!=(d|0)){continue}break}}e=e&3;if(!e){break p}while(1){H[H[b+120>>2]+(c<<2)>>2]=0;c=c+1|0;m=m+1|0;if((e|0)!=(m|0)){continue}break}}H[b+132>>2]=0}H[b+144>>2]=0;c=H[b+12>>2];e=H[c+28>>2];c=H[c+24>>2];H[k+16>>2]=-1;Cg(b+152|0,e-c>>2,k+16|0);c=H[b+72>>2];H[b+76>>2]=c;e=H[b+12>>2];e=H[e+4>>2]-H[e>>2]|0;d=(e>>2>>>0)/3|0;q:{if(d>>>0<=H[b+80>>2]-c>>2>>>0){break q}if((e|0)<0){break c}d=d<<2;e=$k(d);H[b+76>>2]=e;H[b+72>>2]=e;H[b+80>>2]=d+e;if(!c){break q}Wk(c)}H[b- -64>>2]=0;if(!Og(b)){b=$k(32);c=I[1912]|I[1913]<<8|(I[1914]<<16|I[1915]<<24);e=I[1908]|I[1909]<<8|(I[1910]<<16|I[1911]<<24);F[b+21|0]=e;F[b+22|0]=e>>>8;F[b+23|0]=e>>>16;F[b+24|0]=e>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1907]|I[1908]<<8|(I[1909]<<16|I[1910]<<24);e=I[1903]|I[1904]<<8|(I[1905]<<16|I[1906]<<24);F[b+16|0]=e;F[b+17|0]=e>>>8;F[b+18|0]=e>>>16;F[b+19|0]=e>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1899]|I[1900]<<8|(I[1901]<<16|I[1902]<<24);e=I[1895]|I[1896]<<8|(I[1897]<<16|I[1898]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1891]|I[1892]<<8|(I[1893]<<16|I[1894]<<24);e=I[1887]|I[1888]<<8|(I[1889]<<16|I[1890]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;el(a+4|0,b,29);Wk(b);break d}r:{if(I[b+352|0]){break r}c=H[b+8>>2];e=H[c+12>>2]-H[c+8>>2]|0;d=e>>2;c=d-1|0;f=H[b+176>>2];h=H[b+172>>2];g=(f-h|0)/136|0;s:{if(c>>>0>g>>>0){Wg(b+172|0,c-g|0);break s}if(c>>>0>=g>>>0){break s}c=h+N(c,136)|0;if((c|0)!=(f|0)){while(1){g=H[f-20>>2];if(g){H[f-16>>2]=g;Wk(g)}g=H[f-32>>2];if(g){H[f-28>>2]=g;Wk(g)}Xg(f-132|0);f=f-136|0;if((c|0)!=(f|0)){continue}break}}H[b+176>>2]=c}if((e|0)==4|(e|0)<=0){break r}h=(d|0)>1?d:1;f=0;d=0;t:{while(1){m=H[H[H[b+8>>2]+8>>2]+(f<<2)>>2];if(H[m+56>>2]){j=N(d,136);c=j+H[b+172>>2]|0;H[c>>2]=f;e=H[c+104>>2];H[c+108>>2]=e;g=H[b+12>>2];g=H[g+4>>2]-H[g>>2]|0;o=g>>2;u:{if(o>>>0<=H[c+112>>2]-e>>2>>>0){break u}if((g|0)<0){break t}g=$k(g);H[c+104>>2]=g;H[c+108>>2]=g;H[c+112>>2]=g+(o<<2);if(!e){break u}Wk(e)}c=j+H[b+172>>2]|0;H[c+128>>2]=0;Mj(c+4|0,H[b+8>>2],H[b+12>>2],m);d=d+1|0}f=f+1|0;if((h|0)!=(f|0)){continue}break}break r}Ua(1604);X()}c=(H[b+176>>2]-H[b+172>>2]|0)/136|0;F[k+31|0]=c;e=H[H[b+4>>2]+44>>2];d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){ya(e,H[e+4>>2],k+31|0,k+32|0);c=I[k+31|0]}H[b+284>>2]=c&255;c=H[b+12>>2];d=H[c>>2];c=H[c+4>>2];Pg(i);H[k+24>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;e=0;v:{w:{x:{y:{c=c-d|0;if((c|0)>0){c=c>>>2|0;o=c>>>0>1?c:1;c=0;while(1){d=(c>>>0)/3|0;p=d>>>5<<2;r=1<>2]>>2]&r){break z}if(Ej(H[b+12>>2],d)){break z}H[k>>2]=0;d=Qg(b,d,k);ye(i,d);g=H[k>>2];if(d){h=-1;f=-1;m=-1;A:{if((g|0)==-1){break A}j=H[H[b+12>>2]>>2];d=j+(g<<2)|0;h=g+1|0;h=(h>>>0)%3|0?h:g-2|0;if((h|0)!=-1){f=H[j+(h<<2)>>2]}h=H[d>>2];B:{if((g>>>0)%3|0){d=g-1|0;break B}d=g+2|0;m=-1;if((d|0)==-1){break A}}m=H[j+(d<<2)>>2]}d=H[b+84>>2];j=d+(h>>>3&536870908)|0;H[j>>2]=H[j>>2]|1<>>3&536870908)|0;H[h>>2]=H[h>>2]|1<>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>2];h=H[b+104>>2];C:{if(d>>>0>>0){H[d>>2]=1;H[b+100>>2]=d+4;break C}f=H[b+96>>2];m=d-f|0;j=m>>2;d=j+1|0;if(d>>>0>=1073741824){break y}h=h-f|0;q=h>>1;h=h>>>0<2147483644?d>>>0>q>>>0?d:q:1073741823;if(h){if(h>>>0>=1073741824){break c}d=$k(h<<2)}else{d=0}j=d+(j<<2)|0;H[j>>2]=1;if((m|0)>0){ek(d,f,m)}H[b+104>>2]=d+(h<<2);H[b+100>>2]=j+4;H[b+96>>2]=d;if(!f){break C}Wk(f)}d=p+H[l>>2]|0;H[d>>2]=r|H[d>>2];h=-1;if((g|0)!=-1){d=g+1|0;h=(d>>>0)%3|0?d:g-2|0}D:{if(n>>>0>>0){H[n>>2]=h;n=n+4|0;H[k+20>>2]=n;break D}m=n-e|0;n=m>>2;d=n+1|0;if(d>>>0>=1073741824){break x}f=s-e|0;j=f>>1;f=f>>>0<2147483644?d>>>0>j>>>0?d:j:1073741823;if(f){if(f>>>0>=1073741824){break c}d=$k(f<<2)}else{d=0}n=d+(n<<2)|0;H[n>>2]=h;s=d+(f<<2)|0;n=n+4|0;if((m|0)>0){ek(d,e,m)}H[k+24>>2]=s;H[k+20>>2]=n;H[k+16>>2]=d;if(e){Wk(e)}e=d}if((g|0)==-1){break z}d=g+1|0;d=(d>>>0)%3|0?d:g-2|0;if((d|0)==-1){break z}d=H[H[H[b+12>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break z}f=(d>>>0)/3|0;if(H[H[l>>2]+(f>>>3&268435452)>>2]>>>f&1){break z}if(dh(b,d)){break z}break w}if((g|0)!=-1){d=g+1|0;d=(d>>>0)%3|0?d:g-2|0}else{d=-1}Sg(b,d,1);if(!dh(b,H[k>>2])){break w}}c=c+1|0;if((o|0)!=(c|0)){continue}break}}f=b+72|0;c=H[b+72>>2];d=H[b+76>>2];E:{if((c|0)==(d|0)){break E}m=d-4|0;if(m>>>0<=c>>>0){break E}while(1){g=H[c>>2];H[c>>2]=H[m>>2];H[m>>2]=g;c=c+4|0;m=m-4|0;if(c>>>0>>0){continue}break}}Tg(f,d,e,n);F:{if(H[b+172>>2]==H[b+176>>2]){break F}c=H[b+8>>2];d=H[c+100>>2];c=H[c+96>>2];F[k|0]=0;Eg(l,(d-c|0)/12|0,k);c=H[b+72>>2];d=H[b+76>>2];if((c|0)==(d|0)){break F}while(1){Ug(b,H[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}c=i+32|0;ze(i,c);d=H[i+80>>2];G:{if(!d){break G}l=1;if(H[i+84>>2]<=0){break G}ze(d,c);if(H[i+84>>2]<2){break G}while(1){ze(H[i+80>>2]+(l<<5)|0,c);l=l+1|0;if((l|0)>2]){continue}break}}l=H[i+136>>2];if((l|0)!=H[i+140>>2]){d=0;while(1){f=N(d,12);g=f+l|0;tb(H[g+4>>2]-H[g>>2]>>2,c);l=H[i+136>>2];g=f+l|0;f=H[g>>2];g=H[g+4>>2]-f|0;if(g){ef(f,g>>2,1,0,c);l=H[i+136>>2]}d=d+1|0;if(d>>>0<(H[i+140>>2]-l|0)/12>>>0){continue}break}}tb(H[b+324>>2],H[H[b+4>>2]+44>>2]);tb(H[b+168>>2],H[H[b+4>>2]+44>>2]);if(!Vg(b)){b=re(k,2029);H[a>>2]=-1;a=a+4|0;if(F[b+11|0]>=0){b=H[k+4>>2];H[a>>2]=H[k>>2];H[a+4>>2]=b;H[a+8>>2]=H[k+8>>2];break v}el(a,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break v}Wk(H[b>>2]);break v}c=H[H[b+4>>2]+44>>2];d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){ya(c,H[c+4>>2],H[b+232>>2],H[b+236>>2])}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break v}Fa();X()}Fa();X()}b=$k(48);c=I[1847]|I[1848]<<8|(I[1849]<<16|I[1850]<<24);d=I[1843]|I[1844]<<8|(I[1845]<<16|I[1846]<<24);F[b+24|0]=d;F[b+25|0]=d>>>8;F[b+26|0]=d>>>16;F[b+27|0]=d>>>24;F[b+28|0]=c;F[b+29|0]=c>>>8;F[b+30|0]=c>>>16;F[b+31|0]=c>>>24;c=I[1839]|I[1840]<<8|(I[1841]<<16|I[1842]<<24);d=I[1835]|I[1836]<<8|(I[1837]<<16|I[1838]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1831]|I[1832]<<8|(I[1833]<<16|I[1834]<<24);d=I[1827]|I[1828]<<8|(I[1829]<<16|I[1830]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1823]|I[1824]<<8|(I[1825]<<16|I[1826]<<24);d=I[1819]|I[1820]<<8|(I[1821]<<16|I[1822]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+32|0]=0;H[a>>2]=-1;el(a+4|0,b,32);Wk(b)}if(!e){break d}Wk(e)}da=k+32|0;return}Ua(1604);X()}function Pd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,ea=0,ga=0,ha=0,ia=0,ja=0;h=da-240|0;da=h;$=H[a+36>>2];u=H[a+32>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;if(e){Ha(h+144|0,e);i=H[h+160>>2];d=H[h+156>>2]}else{d=0}f=i-d>>2;a:{if(f>>>0>=e>>>0){if(e>>>0>=f>>>0){break a}H[h+160>>2]=d+(e<<2);break a}Ha(h+144|12,e-f|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}H[h+172>>2]=f+(e<<2);break b}Ha(h+168|0,e-d|0)}c:{d:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;e:{f:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break f}d=1;break e}Ha(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break d}d=e<<2;f=$k(d);H[h+128>>2]=f;i=d+f|0;H[h+136>>2]=i;gk(f,0,d);H[h+132>>2]=i;d=0}J=a+136|0;i=H[a+136>>2];f=H[a+140>>2]-i>>2;g:{if(f>>>0>>0){Ha(J,e-f|0);break g}if(e>>>0>=f>>>0){break g}H[a+140>>2]=i+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;r=$k(d);x=gk(r,0,d)+d|0}S=a+8|0;d=H[a+40>>2];i=H[d>>2];d=H[d+4>>2]-i|0;if((d|0)<5){break c}E=d>>>2|0;f=E-1|0;if(f>>>0>2>>>0){K=a+96|0;aa=h+125|0;ba=h+36|0;ca=h+24|0;V=e<<2;L=x-r|0;W=L&-4;C=L>>2;M=e&-2;O=e&1;ea=e&-4;Y=e&3;G=e-1|0;while(1){y=f;j=H[(f<<2)+i>>2];i=(j>>>0)%3|0;d=0;h:{if((j|0)==-1){break h}f=0;d=j+2|0;v=(i|0)!=0|(d|0)!=-1;m=1;q=i?j-1|0:d;z=1<>>5|0;A=H[u>>2];i=j;while(1){i:{if(H[A+(i>>>3&536870908)>>2]>>>i&1){break i}d=H[H[H[u+64>>2]+12>>2]+(i<<2)>>2];if((d|0)==-1){break i}l=H[$>>2];g=H[u+28>>2];o=H[l+(H[g+(d<<2)>>2]<<2)>>2];if((o|0)>=(y|0)){break i}k=d+1|0;k=H[l+(H[g+(((k>>>0)%3|0?k:d-2|0)<<2)>>2]<<2)>>2];if((k|0)>=(y|0)){break i}g=H[l+(H[g+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(y|0)){break i}j:{if(!e){break j}d=H[(h+144|0)+N(f,12)>>2];l=N(e,g);k=N(e,k);o=N(e,o);g=0;w=0;if(G){while(1){H[d+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+o<<2)+b>>2];n=g|1;H[d+(n<<2)>>2]=(H[(l+n<<2)+b>>2]+H[(k+n<<2)+b>>2]|0)-H[(o+n<<2)+b>>2];g=g+2|0;w=w+2|0;if((M|0)!=(w|0)){continue}break}}if(!O){break j}H[d+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+o<<2)+b>>2]}d=4;f=f+1|0;if((f|0)==4){break h}}k:{if(m&1){g=i-2|0;d=i+1|0;i=-1;d=(d>>>0)%3|0?d:g;if((d|0)==-1|H[H[u>>2]+(d>>>3&536870908)>>2]>>>d&1){break k}d=H[H[H[u+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break k}i=d+1|0;i=(i>>>0)%3|0?i:d-2|0;break k}l:{if((i>>>0)%3|0){g=i-1|0;break l}g=i+2|0;i=-1;if((g|0)==-1){break k}}i=-1;if(H[H[u>>2]+(g>>>3&536870908)>>2]>>>g&1){break k}d=H[H[H[u+64>>2]+12>>2]+(g<<2)>>2];if((d|0)==-1){break k}if((d>>>0)%3|0){i=d-1|0;break k}i=d+2|0}if((i|0)==(j|0)){d=f;break h}if(!((m^1)&1|(i|0)!=-1)){if(!v){d=f;break h}if(z&H[H[u>>2]+(p<<2)>>2]){d=f;break h}d=H[H[H[u+64>>2]+12>>2]+(q<<2)>>2];if((d|0)==-1){d=f;break h}m=0;i=(d>>>0)%3|0?d-1|0:d+2|0}d=f;if((i|0)!=-1){continue}break}}f=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Z=N(e,y)<<2;z=Z+b|0;l=(N(E-2|0,e)<<2)+b|0;k=H[a+136>>2];i=0;if(e){while(1){j=f<<2;g=H[j+l>>2]-H[j+z>>2]|0;H[j+r>>2]=g;H[j+k>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;j=i;i=g>>31;i=j+(i+g^i)|0;f=f+1|0;if((f|0)!=(e|0)){continue}break}}f=h+200|0;$e(f,K,k,e);g=cf(f);k=fa;n=g;g=H[f+12>>2];f=H[f+16>>2];g=(((g-f|0)+1|0)/64|0)+f<<3;j=f<<3;o=j;f=g+j|0;j=(g>>31)+(j>>31)|0;j=f>>>0>>0?j+1|0:j;o=f;f=n+f|0;g=j+k|0;j=f;f=f>>>0>>0?g+1|0:g;Q=(d|0)>0;m:{if(!Q){A=d-1|0;break m}A=d-1|0;o=A<<3;g=o+(h+48|0)|0;n=g;k=d+H[g>>2]|0;g=H[g+4>>2];g=d>>>0>k>>>0?g+1|0:g;H[n>>2]=k;H[n+4>>2]=g;t=U(_e(k,H[o+(h+80|0)>>2])*(+(k>>>0)+ +(g|0)*4294967296));n:{if(P(t)<0x8000000000000000){k=P(t)>=1?~~(t>0?R(T(t*2.3283064365386963e-10),4294967295):U((t-+(~~t>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~t>>>0;break n}k=-2147483648;g=0}g=g+j|0;j=g}w=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=j;H[h+12>>2]=i;Ma(ca,l,l+V|0);Yc(ba,r,x);f=A<<3;o=f+(h+80|0)|0;ga=h+200|0;o:{p:{q:{r:{if((d|0)>0){i=h+124|0;n=i+d|0;q=n-2|0;l=n-1|0;ha=!d|(l|0)==(i|0);_=f+(h+48|0)|0;v=1;while(1){w=w+1|0;if((d|0)>0){gk(h+124|0,1,d)}gk(h+124|0,0,w);s:{t:while(1){if(e){gk(H[h+128>>2],0,V)}B=0;m=0;if((d|0)>0){while(1){if(!I[(h+124|0)+m|0]){u:{if(!e){break u}f=H[h+128>>2];i=H[(h+144|0)+N(m,12)>>2];j=0;g=0;k=0;if(G>>>0>2){while(1){p=g<<2;s=p+f|0;H[s>>2]=H[s>>2]+H[i+p>>2];s=p|4;D=s+f|0;H[D>>2]=H[D>>2]+H[i+s>>2];s=p|8;D=s+f|0;H[D>>2]=H[D>>2]+H[i+s>>2];p=p|12;s=p+f|0;H[s>>2]=H[s>>2]+H[i+p>>2];g=g+4|0;k=k+4|0;if((ea|0)!=(k|0)){continue}break}}if(!Y){break u}while(1){k=g<<2;p=k+f|0;H[p>>2]=H[p>>2]+H[i+k>>2];g=g+1|0;j=j+1|0;if((Y|0)!=(j|0)){continue}break}}B=1<>2];v:{w:{x:{if(e){g=0;i=0;if(G){break x}break w}k=H[a+136>>2];j=0;break v}while(1){j=g<<2;k=j+f|0;H[k>>2]=H[k>>2]/(v|0);j=(j|4)+f|0;H[j>>2]=H[j>>2]/(v|0);g=g+2|0;i=i+2|0;if((M|0)!=(i|0)){continue}break}}if(O){f=(g<<2)+f|0;H[f>>2]=H[f>>2]/(v|0)}k=H[a+136>>2];f=H[h+128>>2];i=0;j=0;if(!e){break v}while(1){m=i<<2;g=H[m+f>>2]-H[m+z>>2]|0;H[m+r>>2]=g;H[k+m>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;m=g;g=g>>31;j=(m+g^g)+j|0;i=i+1|0;if((i|0)!=(e|0)){continue}break}}i=h+200|0;$e(i,K,k,e);g=cf(i);m=g;g=H[i+12>>2];i=H[i+16>>2];g=(((g-i|0)+1|0)/64|0)+i<<3;k=i<<3;i=g+k|0;i=m+i|0;g=i;if(Q){i=H[_+4>>2];k=H[_>>2];t=U(_e(k,H[o>>2]+v|0)*(+(k>>>0)+ +(i|0)*4294967296));y:{if(P(t)<0x8000000000000000){i=~~t>>>0;break y}i=0}g=i+g|0}i=H[h+8>>2];if(!((i|0)<=(g|0)&((g|0)>(i|0)|(j|0)>=H[h+12>>2]))){H[h+20>>2]=v;F[h+16|0]=B;H[h+8>>2]=g;H[h+12>>2]=j;j=H[h+132>>2];m=j-f|0;k=m>>2;i=H[h+32>>2];g=H[h+24>>2];z:{if(k>>>0<=i-g>>2>>>0){m=H[h+28>>2]-g|0;i=m+f|0;p=m>>2;B=p>>>0>>0?i:j;m=B-f|0;if(m){fk(g,f,m)}if(k>>>0>p>>>0){g=H[h+28>>2];if((j|0)==(B|0)){break z}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}break z}g=g+m|0;break z}if(g){H[h+28>>2]=g;Wk(g);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;i=0}if((m|0)<0){break r}g=i>>1;i=i>>>0<2147483644?g>>>0>>0?k:g:1073741823;if(i>>>0>=1073741824){break r}i=i<<2;g=$k(i);H[h+24>>2]=g;H[h+28>>2]=g;H[h+32>>2]=g+i;if((f|0)==(j|0)){break z}j=f;f=m&-4;g=ek(g,j,f)+f|0}H[h+28>>2]=g;i=H[h+44>>2];f=H[h+36>>2];A:{if(i-f>>2>>>0>=C>>>0){g=H[h+40>>2]-f|0;i=g+r|0;j=g>>2;k=j>>>0>>0?i:x;g=k-r|0;if(g){fk(f,r,g)}if(j>>>0>>0){g=H[h+40>>2];if((k|0)==(x|0)){break A}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((x|0)!=(i|0)){continue}break}break A}g=f+g|0;break A}if(f){H[h+40>>2]=f;Wk(f);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;i=0}if((L|0)<0){break q}f=i>>1;f=i>>>0<2147483644?f>>>0>>0?C:f:1073741823;if(f>>>0>=1073741824){break q}f=f<<2;g=$k(f);H[h+36>>2]=g;H[h+44>>2]=f+g;if((r|0)==(x|0)){break A}g=ek(g,r,W)+W|0}H[h+40>>2]=g}if(ha){break s}f=-1;k=I[l|0];g=k;while(1){j=g&255;i=f-1|0;m=i+n|0;g=I[m|0];if(j>>>0>g>>>0){j=l;i=n;if((k&255)>>>0<=g>>>0){while(1){k=j;j=j-1|0;p=i-2|0;i=k;if(I[p|0]<=g>>>0){continue}break}k=1}i=f+n|0;F[m|0]=k;F[j|0]=g;g=l;if((f|0)==-1){continue t}while(1){f=I[i|0];F[i|0]=I[g|0];F[g|0]=f;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}continue t}f=i;if((m|0)!=(h+124|0)){continue}break}break}if(l>>>0<=h+124>>>0){break s}f=I[h+124|0];F[h+124|0]=k;F[l|0]=f;g=q;i=aa;if(g>>>0<=i>>>0){break s}while(1){f=I[i|0];F[i|0]=I[g|0];F[g|0]=f;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}}v=v+1|0;if((d|0)!=(w|0)){continue}break}}if(Q){f=H[h+20>>2];g=f;i=g+H[o>>2]|0;f=H[o+4>>2]+(g>>31)|0;H[o>>2]=i;H[o+4>>2]=g>>>0>i>>>0?f+1|0:f}f=H[J>>2];if(!e){break o}i=H[h+36>>2];g=0;k=0;if(!G){break p}while(1){l=g<<2;j=H[l+i>>2];H[f+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+i>>2];H[f+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;g=g+2|0;k=k+2|0;if((M|0)!=(k|0)){continue}break}break p}Fa();X()}Fa();X()}if(O){g=g<<2;i=H[g+i>>2];H[f+g>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1}f=H[J>>2]}bf(ga,K,f,e);B:{if((d|0)<=0){break B}j=N(A,12)+a|0;i=0;while(1){C:{f=H[j+52>>2];l=f<<5;g=H[j+48>>2];D:{if(!(I[h+16|0]>>>i&1)){E:{F:{if((g|0)!=(l|0)){break F}if((g+1|0)<0){break C}G:{if(g>>>0<=1073741822){l=g+32&-32;f=f<<6;f=f>>>0>>0?l:f;if(g>>>0>=f>>>0){break F}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((f|0)>=0){break G}jl();X()}f=-1;if(g>>>0>2147483646){break E}f=2147483647}k=(f-1>>>5|0)+1|0;f=$k(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=f;l=H[j+44>>2];H:{I:{if(g>>>0>=33){H[f+(g-1>>>3&536870908)>>2]=0;break I}H[f>>2]=0;if(!g){break H}}n=g>>>5|0;o=n<<2;q=fk(f,l,o);n=g-(n<<5)|0;if((n|0)<=0){break H}q=o+q|0;n=-1>>>32-n|0;H[q>>2]=H[q>>2]&(n^-1)|n&H[l+o>>2]}H[j+44>>2]=f;H[j+48>>2]=g;H[j+52>>2]=k;if(!l){break F}Wk(l);g=H[j+48>>2]}f=g}H[j+48>>2]=f+1;g=H[j+44>>2]+(f>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>0<=1073741822){l=g+32&-32;f=f<<6;f=f>>>0>>0?l:f;if(g>>>0>=f>>>0){break K}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((f|0)>=0){break L}jl();X()}f=-1;if(g>>>0>2147483646){break J}f=2147483647}k=(f-1>>>5|0)+1|0;f=$k(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=f;l=H[j+44>>2];M:{N:{if(g>>>0>=33){H[f+(g-1>>>3&536870908)>>2]=0;break N}H[f>>2]=0;if(!g){break M}}n=g>>>5|0;o=n<<2;q=fk(f,l,o);n=g-(n<<5)|0;if((n|0)<=0){break M}q=o+q|0;n=-1>>>32-n|0;H[q>>2]=H[q>>2]&(n^-1)|n&H[l+o>>2]}H[j+44>>2]=f;H[j+48>>2]=g;H[j+52>>2]=k;if(!l){break K}Wk(l);g=H[j+48>>2]}f=g}H[j+48>>2]=f+1;g=H[j+44>>2]+(f>>>3&536870908)|0;l=H[g>>2];ia=g,ja=Jl(f)&l,H[ia>>2]=ja}i=i+1|0;if((i|0)!=(d|0)){continue}break B}break}jl();X()}d=H[h+24>>2];f=H[d>>2];d=H[d+4>>2];i=H[z+4>>2];H[h+232>>2]=H[z>>2];H[h+236>>2]=i;H[h+224>>2]=f;H[h+228>>2]=d;Ld(h+200|0,S,h+232|0,h+224|0);d=c+Z|0;H[d>>2]=H[h+200>>2];H[d+4>>2]=H[h+204>>2];d=H[h+36>>2];if(d){H[h+40>>2]=d;Wk(d)}d=H[h+24>>2];if(d){H[h+28>>2]=d;Wk(d)}if((E|0)<3){break c}E=y;d=H[a+40>>2];i=H[d>>2];f=y-1|0;if(f>>>0>2]-i>>2>>>0){continue}break}}Sc();X()}Fa();X()}a=H[h+144>>2];if(e){gk(a,0,e<<2);a=H[h+144>>2]}d=H[a>>2];a=H[a+4>>2];e=H[b+4>>2];H[h+200>>2]=H[b>>2];H[h+204>>2]=e;H[h+232>>2]=d;H[h+236>>2]=a;Ld(h+8|0,S,h+200|0,h+232|0);H[c>>2]=H[h+8>>2];H[c+4>>2]=H[h+12>>2];if(r){Wk(r)}a=H[h+128>>2];if(a){H[h+132>>2]=a;Wk(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;Wk(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;Wk(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;Wk(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;Wk(a)}da=h+240|0;return 1}function de(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,O=0,Q=0,S=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,ea=0,ga=0,ha=0,ia=0,ja=0;h=da-240|0;da=h;$=H[a+36>>2];Q=H[a+32>>2];H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;if(e){Ha(h+144|0,e);i=H[h+160>>2];d=H[h+156>>2]}else{d=0}f=i-d>>2;a:{if(f>>>0>=e>>>0){if(e>>>0>=f>>>0){break a}H[h+160>>2]=d+(e<<2);break a}Ha(h+144|12,e-f|0)}f=H[h+168>>2];d=H[h+172>>2]-f>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}H[h+172>>2]=f+(e<<2);break b}Ha(h+168|0,e-d|0)}c:{d:{f=H[h+180>>2];d=H[h+184>>2]-f>>2;e:{f:{if(d>>>0>=e>>>0){if(d>>>0>e>>>0){H[h+184>>2]=f+(e<<2)}H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;if(e){break f}d=1;break e}Ha(h+180|0,e-d|0);H[h+136>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0}if(e>>>0>=1073741824){break d}d=e<<2;f=$k(d);H[h+128>>2]=f;i=d+f|0;H[h+136>>2]=i;gk(f,0,d);H[h+132>>2]=i;d=0}G=a+136|0;i=H[a+136>>2];f=H[a+140>>2]-i>>2;g:{if(f>>>0>>0){Ha(G,e-f|0);break g}if(e>>>0>=f>>>0){break g}H[a+140>>2]=i+(e<<2)}H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;f=h- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;if(!d){d=e<<2;r=$k(d);v=gk(r,0,d)+d|0}S=a+8|0;d=H[a+40>>2];i=H[d>>2];f=H[d+4>>2]-i|0;if((f|0)<5){break c}C=f>>>2|0;d=C-1|0;if(d>>>0>2>>>0){J=a+96|0;aa=h+125|0;ba=h+36|0;ca=h+24|0;V=e<<2;K=v-r|0;W=K&-4;A=K>>2;L=e&-2;M=e&1;ea=e&-4;Y=e&3;D=e-1|0;while(1){w=d;j=H[(d<<2)+i>>2];i=(j>>>0)%3|0;f=0;h:{if((j|0)==-1){break h}d=0;f=j+2|0;x=(i|0)!=0|(f|0)!=-1;l=H[Q+12>>2];y=l+((i?j-1|0:f)<<2)|0;s=1;i=j;while(1){f=H[l+(i<<2)>>2];i:{if((f|0)==-1){break i}o=H[$>>2];k=H[Q>>2];p=H[o+(H[k+(f<<2)>>2]<<2)>>2];g=f+1|0;g=(g>>>0)%3|0?g:f-2|0;if((g|0)!=-1){n=H[k+(g<<2)>>2]}else{n=-1}j:{k:{if((f>>>0)%3|0){g=f-1|0;break k}g=f+2|0;m=-1;if((g|0)==-1){break j}}m=H[k+(g<<2)>>2]}if((p|0)>=(w|0)){break i}f=H[(n<<2)+o>>2];if((f|0)>=(w|0)){break i}g=H[o+(m<<2)>>2];if((g|0)>=(w|0)){break i}k=H[(h+144|0)+N(d,12)>>2];l:{if(!e){break l}o=N(e,g);n=N(e,f);p=N(e,p);g=0;f=0;if(D){while(1){H[k+(g<<2)>>2]=(H[(g+o<<2)+b>>2]+H[(g+n<<2)+b>>2]|0)-H[(g+p<<2)+b>>2];m=g|1;H[k+(m<<2)>>2]=(H[(m+o<<2)+b>>2]+H[(m+n<<2)+b>>2]|0)-H[(m+p<<2)+b>>2];g=g+2|0;f=f+2|0;if((L|0)!=(f|0)){continue}break}}if(!M){break l}H[k+(g<<2)>>2]=(H[(g+o<<2)+b>>2]+H[(g+n<<2)+b>>2]|0)-H[(g+p<<2)+b>>2]}f=4;d=d+1|0;if((d|0)==4){break h}}m:{if(s&1){g=i+1|0;i=(g>>>0)%3|0?g:i-2|0;f=-1;if((i|0)==-1){break m}i=H[l+(i<<2)>>2];f=-1;if((i|0)==-1){break m}f=i+1|0;f=(f>>>0)%3|0?f:i-2|0;break m}n:{if((i>>>0)%3|0){g=i-1|0;break n}g=i+2|0;f=-1;if((g|0)==-1){break m}}i=H[l+(g<<2)>>2];f=-1;if((i|0)==-1){break m}f=i-1|0;if((i>>>0)%3|0){break m}f=i+2|0}i=f;if((j|0)==(i|0)){f=d;break h}if(!((s^1)&1|(i|0)!=-1)){if(!x){f=d;break h}f=H[y>>2];if((f|0)==-1){f=d;break h}s=0;i=(f>>>0)%3|0?f-1|0:f+2|0}f=d;if((i|0)!=-1){continue}break}}d=0;F[h+16|0]=0;H[h+8>>2]=0;H[h+12>>2]=0;H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;H[h+28>>2]=0;H[h+32>>2]=0;H[h+20>>2]=0;H[h+24>>2]=0;Z=N(e,w)<<2;x=Z+b|0;l=(N(C-2|0,e)<<2)+b|0;k=H[a+136>>2];i=0;if(e){while(1){j=d<<2;g=H[j+l>>2]-H[j+x>>2]|0;H[j+r>>2]=g;H[j+k>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;j=i;i=g>>31;i=j+(i+g^i)|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}d=h+200|0;$e(d,J,k,e);g=cf(d);k=fa;n=g;g=H[d+12>>2];d=H[d+16>>2];g=(((g-d|0)+1|0)/64|0)+d<<3;j=d<<3;o=j;d=g+j|0;j=(g>>31)+(j>>31)|0;j=d>>>0>>0?j+1|0:j;o=d;d=n+d|0;g=j+k|0;j=d;d=d>>>0>>0?g+1|0:g;O=(f|0)>0;o:{if(!O){E=f-1|0;break o}E=f-1|0;o=E<<3;g=o+(h+48|0)|0;n=g;k=f+H[g>>2]|0;g=H[g+4>>2];g=f>>>0>k>>>0?g+1|0:g;H[n>>2]=k;H[n+4>>2]=g;u=U(_e(k,H[o+(h+80|0)>>2])*(+(k>>>0)+ +(g|0)*4294967296));p:{if(P(u)<0x8000000000000000){k=P(u)>=1?~~(u>0?R(T(u*2.3283064365386963e-10),4294967295):U((u-+(~~u>>>0>>>0))*2.3283064365386963e-10))>>>0:0;g=~~u>>>0;break p}k=-2147483648;g=0}g=g+j|0;j=g}y=0;H[h+20>>2]=0;F[h+16|0]=0;H[h+8>>2]=j;H[h+12>>2]=i;Ma(ca,l,l+V|0);Yc(ba,r,v);d=E<<3;o=d+(h+80|0)|0;ga=h+200|0;q:{r:{s:{t:{if((f|0)>0){i=h+124|0;n=i+f|0;p=n-2|0;l=n-1|0;ha=!f|(l|0)==(i|0);_=d+(h+48|0)|0;s=1;while(1){y=y+1|0;if((f|0)>0){gk(h+124|0,1,f)}gk(h+124|0,0,y);u:{v:while(1){if(e){gk(H[h+128>>2],0,V)}z=0;d=0;if((f|0)>0){while(1){if(!I[(h+124|0)+d|0]){w:{if(!e){break w}i=H[h+128>>2];m=H[(h+144|0)+N(d,12)>>2];j=0;g=0;k=0;if(D>>>0>2){while(1){q=g<<2;t=q+i|0;H[t>>2]=H[t>>2]+H[m+q>>2];t=q|4;B=t+i|0;H[B>>2]=H[B>>2]+H[m+t>>2];t=q|8;B=t+i|0;H[B>>2]=H[B>>2]+H[m+t>>2];q=q|12;t=q+i|0;H[t>>2]=H[t>>2]+H[m+q>>2];g=g+4|0;k=k+4|0;if((ea|0)!=(k|0)){continue}break}}if(!Y){break w}while(1){k=g<<2;q=k+i|0;H[q>>2]=H[q>>2]+H[k+m>>2];g=g+1|0;j=j+1|0;if((Y|0)!=(j|0)){continue}break}}z=1<>2];x:{y:{z:{if(e){g=0;i=0;if(D){break z}break y}k=H[a+136>>2];j=0;break x}while(1){j=g<<2;k=j+d|0;H[k>>2]=H[k>>2]/(s|0);j=(j|4)+d|0;H[j>>2]=H[j>>2]/(s|0);g=g+2|0;i=i+2|0;if((L|0)!=(i|0)){continue}break}}if(M){d=(g<<2)+d|0;H[d>>2]=H[d>>2]/(s|0)}k=H[a+136>>2];d=H[h+128>>2];i=0;j=0;if(!e){break x}while(1){m=i<<2;g=H[m+d>>2]-H[m+x>>2]|0;H[m+r>>2]=g;H[k+m>>2]=(g|0)>=0?g<<1:(g^-1)<<1|1;m=g;g=g>>31;j=(m+g^g)+j|0;i=i+1|0;if((i|0)!=(e|0)){continue}break}}i=h+200|0;$e(i,J,k,e);g=cf(i);m=g;g=H[i+12>>2];i=H[i+16>>2];g=(((g-i|0)+1|0)/64|0)+i<<3;k=i<<3;i=g+k|0;i=m+i|0;g=i;if(O){i=H[_+4>>2];k=H[_>>2];u=U(_e(k,H[o>>2]+s|0)*(+(k>>>0)+ +(i|0)*4294967296));A:{if(P(u)<0x8000000000000000){i=~~u>>>0;break A}i=0}g=i+g|0}i=H[h+8>>2];if(!((i|0)<=(g|0)&((g|0)>(i|0)|(j|0)>=H[h+12>>2]))){H[h+20>>2]=s;F[h+16|0]=z;H[h+8>>2]=g;H[h+12>>2]=j;j=H[h+132>>2];m=j-d|0;k=m>>2;i=H[h+32>>2];g=H[h+24>>2];B:{if(k>>>0<=i-g>>2>>>0){m=H[h+28>>2]-g|0;i=m+d|0;q=m>>2;z=q>>>0>>0?i:j;m=z-d|0;if(m){fk(g,d,m)}if(k>>>0>q>>>0){g=H[h+28>>2];if((j|0)==(z|0)){break B}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}break B}g=g+m|0;break B}if(g){H[h+28>>2]=g;Wk(g);H[h+32>>2]=0;H[h+24>>2]=0;H[h+28>>2]=0;i=0}if((m|0)<0){break t}g=i>>1;i=i>>>0<2147483644?g>>>0>>0?k:g:1073741823;if(i>>>0>=1073741824){break t}i=i<<2;g=$k(i);H[h+24>>2]=g;H[h+28>>2]=g;H[h+32>>2]=g+i;if((d|0)==(j|0)){break B}j=d;d=m&-4;g=ek(g,j,d)+d|0}H[h+28>>2]=g;i=H[h+44>>2];d=H[h+36>>2];C:{if(i-d>>2>>>0>=A>>>0){g=H[h+40>>2]-d|0;i=g+r|0;j=g>>2;k=j>>>0>>0?i:v;g=k-r|0;if(g){fk(d,r,g)}if(j>>>0>>0){g=H[h+40>>2];if((k|0)==(v|0)){break C}while(1){H[g>>2]=H[i>>2];g=g+4|0;i=i+4|0;if((v|0)!=(i|0)){continue}break}break C}g=d+g|0;break C}if(d){H[h+40>>2]=d;Wk(d);H[h+44>>2]=0;H[h+36>>2]=0;H[h+40>>2]=0;i=0}if((K|0)<0){break s}d=i>>1;d=i>>>0<2147483644?d>>>0>>0?A:d:1073741823;if(d>>>0>=1073741824){break s}d=d<<2;g=$k(d);H[h+36>>2]=g;H[h+44>>2]=d+g;if((r|0)==(v|0)){break C}g=ek(g,r,W)+W|0}H[h+40>>2]=g}if(ha){break u}d=-1;k=I[l|0];g=k;while(1){j=g&255;i=d-1|0;m=i+n|0;g=I[m|0];if(j>>>0>g>>>0){j=l;i=n;if((k&255)>>>0<=g>>>0){while(1){k=j;j=j-1|0;q=i-2|0;i=k;if(I[q|0]<=g>>>0){continue}break}k=1}i=d+n|0;F[m|0]=k;F[j|0]=g;g=l;if((d|0)==-1){continue v}while(1){d=I[i|0];F[i|0]=I[g|0];F[g|0]=d;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}continue v}d=i;if((m|0)!=(h+124|0)){continue}break}break}if(l>>>0<=h+124>>>0){break u}d=I[h+124|0];F[h+124|0]=k;F[l|0]=d;g=p;i=aa;if(g>>>0<=i>>>0){break u}while(1){d=I[i|0];F[i|0]=I[g|0];F[g|0]=d;g=g-1|0;i=i+1|0;if(g>>>0>i>>>0){continue}break}}s=s+1|0;if((f|0)!=(y|0)){continue}break}}if(O){d=H[h+20>>2];g=d;i=g+H[o>>2]|0;d=H[o+4>>2]+(g>>31)|0;H[o>>2]=i;H[o+4>>2]=g>>>0>i>>>0?d+1|0:d}d=H[G>>2];if(!e){break q}i=H[h+36>>2];g=0;k=0;if(!D){break r}while(1){l=g<<2;j=H[l+i>>2];H[d+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+i>>2];H[d+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;g=g+2|0;k=k+2|0;if((L|0)!=(k|0)){continue}break}break r}Fa();X()}Fa();X()}if(M){g=g<<2;i=H[g+i>>2];H[d+g>>2]=(i|0)>=0?i<<1:(i^-1)<<1|1}d=H[G>>2]}bf(ga,J,d,e);D:{if((f|0)<=0){break D}j=N(E,12)+a|0;i=0;while(1){E:{d=H[j+52>>2];l=d<<5;g=H[j+48>>2];F:{if(!(I[h+16|0]>>>i&1)){G:{H:{if((g|0)!=(l|0)){break H}if((g+1|0)<0){break E}I:{if(g>>>0<=1073741822){l=g+32&-32;d=d<<6;d=d>>>0>>0?l:d;if(g>>>0>=d>>>0){break H}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((d|0)>=0){break I}jl();X()}d=-1;if(g>>>0>2147483646){break G}d=2147483647}k=(d-1>>>5|0)+1|0;d=$k(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=d;l=H[j+44>>2];J:{K:{if(g>>>0>=33){H[d+(g-1>>>3&536870908)>>2]=0;break K}H[d>>2]=0;if(!g){break J}}n=g>>>5|0;o=n<<2;p=fk(d,l,o);n=g-(n<<5)|0;if((n|0)<=0){break J}p=o+p|0;n=-1>>>32-n|0;H[p>>2]=H[p>>2]&(n^-1)|n&H[l+o>>2]}H[j+44>>2]=d;H[j+48>>2]=g;H[j+52>>2]=k;if(!l){break H}Wk(l);g=H[j+48>>2]}d=g}H[j+48>>2]=d+1;g=H[j+44>>2]+(d>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>>0<=1073741822){l=g+32&-32;d=d<<6;d=d>>>0>>0?l:d;if(g>>>0>=d>>>0){break M}H[h+208>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;if((d|0)>=0){break N}jl();X()}d=-1;if(g>>>0>2147483646){break L}d=2147483647}k=(d-1>>>5|0)+1|0;d=$k(k<<2);H[h+208>>2]=k;H[h+204>>2]=0;H[h+200>>2]=d;l=H[j+44>>2];O:{P:{if(g>>>0>=33){H[d+(g-1>>>3&536870908)>>2]=0;break P}H[d>>2]=0;if(!g){break O}}n=g>>>5|0;o=n<<2;p=fk(d,l,o);n=g-(n<<5)|0;if((n|0)<=0){break O}p=o+p|0;n=-1>>>32-n|0;H[p>>2]=H[p>>2]&(n^-1)|n&H[l+o>>2]}H[j+44>>2]=d;H[j+48>>2]=g;H[j+52>>2]=k;if(!l){break M}Wk(l);g=H[j+48>>2]}d=g}H[j+48>>2]=d+1;g=H[j+44>>2]+(d>>>3&536870908)|0;l=H[g>>2];ia=g,ja=Jl(d)&l,H[ia>>2]=ja}i=i+1|0;if((i|0)!=(f|0)){continue}break D}break}jl();X()}d=H[h+24>>2];f=H[d>>2];d=H[d+4>>2];i=H[x+4>>2];H[h+232>>2]=H[x>>2];H[h+236>>2]=i;H[h+224>>2]=f;H[h+228>>2]=d;Ld(h+200|0,S,h+232|0,h+224|0);d=c+Z|0;H[d>>2]=H[h+200>>2];H[d+4>>2]=H[h+204>>2];d=H[h+36>>2];if(d){H[h+40>>2]=d;Wk(d)}d=H[h+24>>2];if(d){H[h+28>>2]=d;Wk(d)}if((C|0)<3){break c}C=w;f=H[a+40>>2];i=H[f>>2];d=w-1|0;if(d>>>0>2]-i>>2>>>0){continue}break}}Sc();X()}Fa();X()}a=H[h+144>>2];if(e){gk(a,0,e<<2);a=H[h+144>>2]}d=H[a>>2];a=H[a+4>>2];e=H[b+4>>2];H[h+200>>2]=H[b>>2];H[h+204>>2]=e;H[h+232>>2]=d;H[h+236>>2]=a;Ld(h+8|0,S,h+200|0,h+232|0);H[c>>2]=H[h+8>>2];H[c+4>>2]=H[h+12>>2];if(r){Wk(r)}a=H[h+128>>2];if(a){H[h+132>>2]=a;Wk(a)}a=H[h+180>>2];if(a){H[h+184>>2]=a;Wk(a)}a=H[h+168>>2];if(a){H[h+172>>2]=a;Wk(a)}a=H[h+156>>2];if(a){H[h+160>>2]=a;Wk(a)}a=H[h+144>>2];if(a){H[h+148>>2]=a;Wk(a)}da=h+240|0;return 1}function Vk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=da-16|0;da=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=H[4782];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=H[b+19176>>2];a=f+8|0;c=H[f+8>>2];b=b+19168|0;l:{if((c|0)==(b|0)){m=19128,n=Jl(d)&e,H[m>>2]=n;break l}H[c+12>>2]=b;H[b+8>>2]=c}b=d<<3;H[f+4>>2]=b|3;b=b+f|0;H[b+4>>2]=H[b+4>>2]|1;break a}k=H[4784];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=H[a+19176>>2];b=H[g+8>>2];a=a+19168|0;m:{if((b|0)==(a|0)){e=Jl(c)&e;H[4782]=e;break m}H[b+12>>2]=a;H[a+8>>2]=b}a=g+8|0;H[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;H[d+4>>2]=f|1;H[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+19168|0;g=H[4787];b=1<>2]}H[c+8>>2]=g;H[b+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=b}H[4787]=d;H[4784]=f;break a}j=H[4783];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=H[((c|a)+(b>>>a|0)<<2)+19432>>2];d=(H[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=H[c+16>>2];if(!a){a=H[c+20>>2];if(!a){break o}}c=(H[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=H[b+24>>2];f=H[b+12>>2];if((f|0)!=(b|0)){a=H[b+8>>2];H[a+12>>2]=f;H[f+8>>2]=a;break b}c=b+20|0;a=H[c>>2];if(!a){a=H[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=H[c>>2];if(a){continue}c=f+16|0;a=H[f+16>>2];if(a){continue}break}H[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=H[4783];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=H[(e<<2)+19432>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(H[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=H[c+20>>2];c=H[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=H[((c|a)+(b>>>a|0)<<2)+19432>>2]}if(!a){break q}}while(1){b=(H[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=H[a+16>>2];if(b){a=b}else{a=H[a+20>>2]}if(a){continue}break}}if(!f|H[4784]-h>>>0<=d>>>0){break k}e=H[f+24>>2];b=H[f+12>>2];if((f|0)!=(b|0)){a=H[f+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break c}c=f+20|0;a=H[c>>2];if(!a){a=H[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=H[c>>2];if(a){continue}c=b+16|0;a=H[b+16>>2];if(a){continue}break}H[g>>2]=0;break c}c=H[4784];if(c>>>0>=h>>>0){d=H[4787];b=c-h|0;u:{if(b>>>0>=16){H[4784]=b;a=d+h|0;H[4787]=a;H[a+4>>2]=b|1;H[c+d>>2]=b;H[d+4>>2]=h|3;break u}H[4787]=0;H[4784]=0;H[d+4>>2]=c|3;a=c+d|0;H[a+4>>2]=H[a+4>>2]|1}a=d+8|0;break a}i=H[4785];if(i>>>0>h>>>0){b=i-h|0;H[4785]=b;c=H[4788];a=c+h|0;H[4788]=a;H[a+4>>2]=b|1;H[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(H[4900]){c=H[4902]}else{H[4903]=-1;H[4904]=-1;H[4901]=4096;H[4902]=4096;H[4900]=l+12&-16^1431655768;H[4905]=0;H[4893]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=H[4892];if(d){b=H[4890];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(I[19572]&4){break f}v:{w:{d=H[4788];if(d){a=19576;while(1){b=H[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=H[a+8>>2];if(a){continue}break}}b=Uk(0);if((b|0)==-1){break g}e=c;d=H[4901];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=H[4892];if(d){a=H[4890];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=Uk(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=Uk(e);if((b|0)==(H[a>>2]+H[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=H[4902];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((Uk(b)|0)!=-1){e=b+e|0;b=a;break e}Uk(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}H[4893]=H[4893]|4}if(c>>>0>2147483646){break d}b=Uk(c);a=Uk(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=H[4890]+e|0;H[4890]=a;if(a>>>0>K[4891]){H[4891]=a}x:{y:{z:{g=H[4788];if(g){a=19576;while(1){d=H[a>>2];c=H[a+4>>2];if((d+c|0)==(b|0)){break z}a=H[a+8>>2];if(a){continue}break}break y}a=H[4786];if(!(a>>>0<=b>>>0?a:0)){H[4786]=b}a=0;H[4895]=e;H[4894]=b;H[4790]=-1;H[4791]=H[4900];H[4897]=0;while(1){d=a<<3;c=d+19168|0;H[d+19176>>2]=c;H[d+19180>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[4785]=c;a=a+b|0;H[4788]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[4789]=H[4904];break x}if(I[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}H[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;H[4788]=c;b=H[4785]+e|0;a=b-a|0;H[4785]=a;H[c+4>>2]=a|1;H[(b+g|0)+4>>2]=40;H[4789]=H[4904];break x}if(K[4786]>b>>>0){H[4786]=b}c=b+e|0;a=19576;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=H[a>>2]){a=H[a+8>>2];if(a){continue}break F}break}if(!(I[a+12|0]&8)){break E}}a=19576;while(1){c=H[a>>2];if(c>>>0<=g>>>0){f=c+H[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=H[a+8>>2];continue}}H[a>>2]=b;H[a+4>>2]=H[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;H[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){H[4788]=i;a=H[4785]+c|0;H[4785]=a;H[i+4>>2]=a|1;break B}if(H[4787]==(e|0)){H[4787]=i;a=H[4784]+c|0;H[4784]=a;H[i+4>>2]=a|1;H[a+i>>2]=a;break B}a=H[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=H[e+8>>2];a=a>>>3|0;b=H[e+12>>2];if((b|0)==(d|0)){m=19128,n=H[4782]&Jl(a),H[m>>2]=n;break G}H[d+12>>2]=b;H[b+8>>2]=d;break G}h=H[e+24>>2];b=H[e+12>>2];H:{if((e|0)!=(b|0)){a=H[e+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break H}I:{a=e+20|0;d=H[a>>2];if(d){break I}a=e+16|0;d=H[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=H[a>>2];if(d){continue}a=b+16|0;d=H[b+16>>2];if(d){continue}break}H[f>>2]=0}if(!h){break G}d=H[e+28>>2];a=(d<<2)+19432|0;J:{if(H[a>>2]==(e|0)){H[a>>2]=b;if(b){break J}m=19132,n=H[4783]&Jl(d),H[m>>2]=n;break G}H[h+(H[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}H[b+24>>2]=h;a=H[e+16>>2];if(a){H[b+16>>2]=a;H[a+24>>2]=b}a=H[e+20>>2];if(!a){break G}H[b+20>>2]=a;H[a+24>>2]=b}e=e+g|0;c=c+g|0}H[e+4>>2]=H[e+4>>2]&-2;H[i+4>>2]=c|1;H[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+19168|0;c=H[4782];a=1<>2]}H[b+8>>2]=i;H[a+12>>2]=i;H[i+12>>2]=b;H[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}H[i+28>>2]=a;H[i+16>>2]=0;H[i+20>>2]=0;f=(a<<2)+19432|0;d=H[4783];b=1<>2]=i;H[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[f>>2];while(1){d=b;if((H[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=H[f+16>>2];if(b){continue}break}H[f+16>>2]=i;H[i+24>>2]=d}H[i+12>>2]=i;H[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[4785]=c;a=a+b|0;H[4788]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[4789]=H[4904];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;H[c+4>>2]=27;a=H[4897];H[c+16>>2]=H[4896];H[c+20>>2]=a;a=H[4895];H[c+8>>2]=H[4894];H[c+12>>2]=a;H[4896]=c+8;H[4895]=e;H[4894]=b;H[4897]=0;a=c+24|0;while(1){H[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}H[c+4>>2]=H[c+4>>2]&-2;f=c-g|0;H[g+4>>2]=f|1;H[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+19168|0;c=H[4782];a=1<>2]}H[b+8>>2]=g;H[a+12>>2]=g;H[g+12>>2]=b;H[g+8>>2]=a;break x}a=31;H[g+16>>2]=0;H[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}H[g+28>>2]=a;d=(a<<2)+19432|0;c=H[4783];b=1<>2]=g;H[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[d>>2];while(1){c=b;if((f|0)==(H[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=H[d+16>>2];if(b){continue}break}H[d+16>>2]=g;H[g+24>>2]=c}H[g+12>>2]=g;H[g+8>>2]=g;break x}a=H[d+8>>2];H[a+12>>2]=i;H[d+8>>2]=i;H[i+24>>2]=0;H[i+12>>2]=d;H[i+8>>2]=a}a=j+8|0;break a}a=H[c+8>>2];H[a+12>>2]=g;H[c+8>>2]=g;H[g+24>>2]=0;H[g+12>>2]=c;H[g+8>>2]=a}a=H[4785];if(a>>>0<=h>>>0){break d}b=a-h|0;H[4785]=b;c=H[4788];a=c+h|0;H[4788]=a;H[a+4>>2]=b|1;H[c+4>>2]=h|3;a=c+8|0;break a}H[4739]=48;a=0;break a}O:{if(!e){break O}c=H[f+28>>2];a=(c<<2)+19432|0;P:{if(H[a>>2]==(f|0)){H[a>>2]=b;if(b){break P}j=Jl(c)&j;H[4783]=j;break O}H[e+(H[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}H[b+24>>2]=e;a=H[f+16>>2];if(a){H[b+16>>2]=a;H[a+24>>2]=b}a=H[f+20>>2];if(!a){break O}H[b+20>>2]=a;H[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;H[f+4>>2]=a|3;a=a+f|0;H[a+4>>2]=H[a+4>>2]|1;break Q}H[f+4>>2]=h|3;e=f+h|0;H[e+4>>2]=d|1;H[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+19168|0;c=H[4782];a=1<>2]}H[b+8>>2]=e;H[a+12>>2]=e;H[e+12>>2]=b;H[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}H[e+28>>2]=a;H[e+16>>2]=0;H[e+20>>2]=0;b=(a<<2)+19432|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=H[b>>2];while(1){b=h;if((H[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=H[c+16>>2];if(h){continue}break}H[c+16>>2]=e}H[e+24>>2]=b;H[e+12>>2]=e;H[e+8>>2]=e;break Q}a=H[b+8>>2];H[a+12>>2]=e;H[b+8>>2]=e;H[e+24>>2]=0;H[e+12>>2]=b;H[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=H[b+28>>2];a=(c<<2)+19432|0;V:{if(H[a>>2]==(b|0)){H[a>>2]=f;if(f){break V}m=19132,n=Jl(c)&j,H[m>>2]=n;break U}H[i+(H[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}H[f+24>>2]=i;a=H[b+16>>2];if(a){H[f+16>>2]=a;H[a+24>>2]=f}a=H[b+20>>2];if(!a){break U}H[f+20>>2]=a;H[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;H[b+4>>2]=a|3;a=a+b|0;H[a+4>>2]=H[a+4>>2]|1;break W}H[b+4>>2]=h|3;f=b+h|0;H[f+4>>2]=d|1;H[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+19168|0;g=H[4787];a=1<>2]}H[c+8>>2]=g;H[a+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=a}H[4787]=f;H[4784]=d}a=b+8|0}da=l+16|0;return a|0}function Mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=da-32|0;da=j;c=H[b+8>>2];a:{b:{if(I[b+288|0]){c=Oj(c);d=H[b+12>>2];H[b+12>>2]=c;if(!d){break a}c=b+12|0;break b}c=Nj(c);d=H[b+12>>2];H[b+12>>2]=c;if(!d){break a}c=b+12|0}Ng(c,d)}c:{c=H[b+12>>2];d:{if(!(H[c+40>>2]!=((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)?c:0)){b=$k(32);c=I[1972]|I[1973]<<8|(I[1974]<<16|I[1975]<<24);d=I[1968]|I[1969]<<8|(I[1970]<<16|I[1971]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1967]|I[1968]<<8|(I[1969]<<16|I[1970]<<24);d=I[1963]|I[1964]<<8|(I[1965]<<16|I[1966]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1959]|I[1960]<<8|(I[1961]<<16|I[1962]<<24);d=I[1955]|I[1956]<<8|(I[1957]<<16|I[1958]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1951]|I[1952]<<8|(I[1953]<<16|I[1954]<<24);d=I[1947]|I[1948]<<8|(I[1949]<<16|I[1950]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;el(a+4|0,b,29);Wk(b);break d}H[b+264>>2]=b;tb((H[c+28>>2]-H[c+24>>2]>>2)-H[c+44>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+12>>2];tb(((H[c+4>>2]-H[c>>2]>>2>>>0)/3|0)-H[c+40>>2]|0,H[H[b+4>>2]+44>>2]);c=H[b+8>>2];d=H[c+100>>2];c=H[c+96>>2];F[j+16|0]=0;o=b+28|0;d=(d-c|0)/12|0;c=j+16|0;Eg(o,d,c);d=H[b+12>>2];f=H[d+28>>2];d=H[d+24>>2];H[j+16>>2]=-1;Cg(b+52|0,f-d>>2,c);c=H[b+40>>2];H[b+44>>2]=c;d=H[b+12>>2];f=H[d+4>>2]-H[d>>2]>>2;f=f-((f>>>0)%3|0)|0;e:{if(f>>>0<=H[b+48>>2]-c>>2>>>0){break e}if(f>>>0>=1073741824){break c}g=f<<2;f=$k(g);H[b+44>>2]=f;H[b+40>>2]=f;H[b+48>>2]=f+g;if(!c){break e}Wk(c);d=H[b+12>>2]}c=H[d+28>>2];d=H[d+24>>2];F[j+16|0]=0;Eg(b+84|0,c-d>>2,j+16|0);H[b+164>>2]=-1;H[b+168>>2]=0;H[b+100>>2]=H[b+96>>2];H[b+112>>2]=H[b+108>>2];if(H[b+132>>2]){d=H[b+128>>2];if(d){while(1){c=H[d>>2];Wk(d);d=c;if(c){continue}break}}d=0;H[b+128>>2]=0;c=H[b+124>>2];f:{if(!c){break f}if(c-1>>>0>=3){g=c&-4;while(1){f=d<<2;H[f+H[b+120>>2]>>2]=0;H[H[b+120>>2]+(f|4)>>2]=0;H[H[b+120>>2]+(f|8)>>2]=0;H[H[b+120>>2]+(f|12)>>2]=0;d=d+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}c=c&3;if(!c){break f}while(1){H[H[b+120>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}H[b+132>>2]=0}H[b+144>>2]=0;c=H[b+12>>2];d=H[c+28>>2];c=H[c+24>>2];H[j+16>>2]=-1;Cg(b+152|0,d-c>>2,j+16|0);c=H[b+72>>2];H[b+76>>2]=c;d=H[b+12>>2];d=H[d+4>>2]-H[d>>2]|0;f=(d>>2>>>0)/3|0;g:{if(f>>>0<=H[b+80>>2]-c>>2>>>0){break g}if((d|0)<0){break c}f=f<<2;d=$k(f);H[b+76>>2]=d;H[b+72>>2]=d;H[b+80>>2]=d+f;if(!c){break g}Wk(c)}H[b- -64>>2]=0;if(!Og(b)){b=$k(32);c=I[1912]|I[1913]<<8|(I[1914]<<16|I[1915]<<24);d=I[1908]|I[1909]<<8|(I[1910]<<16|I[1911]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1907]|I[1908]<<8|(I[1909]<<16|I[1910]<<24);d=I[1903]|I[1904]<<8|(I[1905]<<16|I[1906]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1899]|I[1900]<<8|(I[1901]<<16|I[1902]<<24);d=I[1895]|I[1896]<<8|(I[1897]<<16|I[1898]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1891]|I[1892]<<8|(I[1893]<<16|I[1894]<<24);d=I[1887]|I[1888]<<8|(I[1889]<<16|I[1890]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;el(a+4|0,b,29);Wk(b);break d}c=b;h:{if(I[b+288|0]){break h}b=H[c+8>>2];f=H[b+12>>2]-H[b+8>>2]|0;e=f>>2;d=e-1|0;b=H[c+176>>2];i=H[c+172>>2];g=(b-i|0)/136|0;i:{if(d>>>0>g>>>0){Wg(c+172|0,d-g|0);break i}if(d>>>0>=g>>>0){break i}d=i+N(d,136)|0;if((d|0)!=(b|0)){while(1){g=H[b-20>>2];if(g){H[b-16>>2]=g;Wk(g)}g=H[b-32>>2];if(g){H[b-28>>2]=g;Wk(g)}Xg(b-132|0);b=b-136|0;if((d|0)!=(b|0)){continue}break}}H[c+176>>2]=d}if((f|0)==4|(f|0)<=0){break h}i=(e|0)>1?e:1;b=0;f=0;j:{while(1){h=H[H[H[c+8>>2]+8>>2]+(b<<2)>>2];if(H[h+56>>2]){l=N(f,136);d=l+H[c+172>>2]|0;H[d>>2]=b;e=H[d+104>>2];H[d+108>>2]=e;g=H[c+12>>2];g=H[g+4>>2]-H[g>>2]|0;p=g>>2;k:{if(p>>>0<=H[d+112>>2]-e>>2>>>0){break k}if((g|0)<0){break j}g=$k(g);H[d+104>>2]=g;H[d+108>>2]=g;H[d+112>>2]=g+(p<<2);if(!e){break k}Wk(e)}d=l+H[c+172>>2]|0;H[d+128>>2]=0;Mj(d+4|0,H[c+8>>2],H[c+12>>2],h);f=f+1|0}b=b+1|0;if((i|0)!=(b|0)){continue}break}break h}Ua(1604);X()}b=(H[c+176>>2]-H[c+172>>2]|0)/136|0;F[j+31|0]=b;d=H[H[c+4>>2]+44>>2];f=H[d+20>>2];if(!H[d+16>>2]&(f|0)<=0|(f|0)<0){ya(d,H[d+4>>2],j+31|0,j+32|0);b=I[j+31|0]}H[c+284>>2]=b&255;b=H[c+12>>2];d=H[b>>2];b=H[b+4>>2];g=c+200|0;Pg(g);H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;f=0;l:{m:{n:{o:{b=b-d|0;if((b|0)>0){b=b>>>2|0;r=b>>>0>1?b:1;d=0;while(1){b=(d>>>0)/3|0;p=b>>>5<<2;q=1<>2]+p>>2]){break p}if(Ej(H[c+12>>2],b)){break p}H[j>>2]=0;b=Qg(c,b,j);ye(g,b);e=H[j>>2];if(b){i=-1;b=-1;l=-1;q:{if((e|0)==-1){break q}m=H[H[c+12>>2]>>2];i=m+(e<<2)|0;h=e+1|0;h=(h>>>0)%3|0?h:e-2|0;if((h|0)!=-1){b=H[m+(h<<2)>>2]}i=H[i>>2];r:{if((e>>>0)%3|0){h=e-1|0;break r}h=e+2|0;l=-1;if((h|0)==-1){break q}}l=H[m+(h<<2)>>2]}h=H[c+84>>2];m=h+(i>>>3&536870908)|0;H[m>>2]=H[m>>2]|1<>>3&536870908)|0;H[i>>2]=H[i>>2]|1<>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];h=H[c+104>>2];s:{if(b>>>0>>0){H[b>>2]=1;H[c+100>>2]=b+4;break s}i=H[c+96>>2];l=b-i|0;m=l>>2;b=m+1|0;if(b>>>0>=1073741824){break o}s=m<<2;h=h-i|0;m=h>>1;h=h>>>0<2147483644?b>>>0>m>>>0?b:m:1073741823;if(h){if(h>>>0>=1073741824){break c}b=$k(h<<2)}else{b=0}m=s+b|0;H[m>>2]=1;if((l|0)>0){ek(b,i,l)}H[c+104>>2]=b+(h<<2);H[c+100>>2]=m+4;H[c+96>>2]=b;if(!i){break s}Wk(i)}b=H[o>>2]+p|0;H[b>>2]=H[b>>2]|q;i=-1;if((e|0)!=-1){b=e+1|0;i=(b>>>0)%3|0?b:e-2|0}t:{if(k>>>0>>0){H[k>>2]=i;k=k+4|0;H[j+20>>2]=k;break t}h=k-f|0;l=h>>2;b=l+1|0;if(b>>>0>=1073741824){break n}k=n-f|0;n=k>>1;k=k>>>0<2147483644?b>>>0>n>>>0?b:n:1073741823;if(k){if(k>>>0>=1073741824){break c}b=$k(k<<2)}else{b=0}l=b+(l<<2)|0;H[l>>2]=i;n=b+(k<<2)|0;k=l+4|0;if((h|0)>0){ek(b,f,h)}H[j+24>>2]=n;H[j+20>>2]=k;H[j+16>>2]=b;if(f){Wk(f)}f=b}if((e|0)==-1){break p}b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;if((b|0)==-1){break p}b=H[H[H[c+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=(b>>>0)/3|0;if(H[H[o>>2]+(e>>>3&268435452)>>2]>>>e&1){break p}if(Rg(c,b)){break p}break m}if((e|0)!=-1){b=e+1|0;b=(b>>>0)%3|0?b:e-2|0}else{b=-1}Sg(c,b,1);if(!Rg(c,H[j>>2])){break m}}d=d+1|0;if((r|0)!=(d|0)){continue}break}}i=c+72|0;d=H[c+72>>2];b=H[c+76>>2];u:{if((d|0)==(b|0)){break u}e=b-4|0;if(e>>>0<=d>>>0){break u}while(1){h=H[d>>2];H[d>>2]=H[e>>2];H[e>>2]=h;d=d+4|0;e=e-4|0;if(d>>>0>>0){continue}break}}Tg(i,b,f,k);v:{if(H[c+172>>2]==H[c+176>>2]){break v}b=H[c+8>>2];d=H[b+100>>2];b=H[b+96>>2];F[j|0]=0;Eg(o,(d-b|0)/12|0,j);d=H[c+72>>2];b=H[c+76>>2];if((d|0)==(b|0)){break v}while(1){Ug(c,H[d>>2]);d=d+4|0;if((b|0)!=(d|0)){continue}break}}h=g+32|0;b=H[g+64>>2];b=H[(ga[H[H[b>>2]+40>>2]](b)|0)+56>>2];di(h,N((H[b+100>>2]-H[b+96>>2]|0)/12|0,3),0,1);w:{e=H[g+68>>2];d=H[g+72>>2]-e|0;if((d|0)<=0){break w}b=H[g+52>>2];i=b;k=H[g+48>>2];if(!k&(b|0)<=0|(b|0)<0){break w}b=d>>2;while(1){d=b-1|0;x:{if(!k&(i|0)<=0|(i|0)<0){break x}o=H[(d<<2)+e>>2];if(!(171>>>o&1)){break x}l=H[(o<<2)+11168>>2];e=H[g+44>>2];i=H[e+4>>2];k=0;while(1){n=i>>>3|0;p=n+H[e>>2]|0;m=I[p|0];i=i&7;t=p,u=Jl(i)&m,F[t|0]=u;n=n+H[e>>2]|0;F[n|0]=I[n|0]|(o>>>k&1)<>2]+1|0;H[e+4>>2]=i;k=k+1|0;if((l|0)!=(k|0)){continue}break}}if((b|0)<2){break w}k=H[g+48>>2];i=H[g+52>>2];e=H[g+68>>2];b=d;continue}}ei(h);b=c+232|0;ze(g,b);e=H[c+280>>2];y:{if(!e){break y}d=1;if(H[c+284>>2]<=0){break y}ze(e,b);if(H[c+284>>2]<2){break y}while(1){ze(H[c+280>>2]+(d<<5)|0,b);d=d+1|0;if((d|0)>2]){continue}break}}tb(H[c+272>>2]-H[c+268>>2]>>2,H[H[c+4>>2]+44>>2]);tb(H[c+168>>2],H[H[c+4>>2]+44>>2]);if(!Vg(c)){b=re(j,2029);H[a>>2]=-1;a=a+4|0;if(F[b+11|0]>=0){b=H[j+4>>2];H[a>>2]=H[j>>2];H[a+4>>2]=b;H[a+8>>2]=H[j+8>>2];break l}el(a,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break l}Wk(H[b>>2]);break l}b=H[H[c+4>>2]+44>>2];d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){ya(b,H[b+4>>2],H[c+232>>2],H[c+236>>2])}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break l}Fa();X()}Fa();X()}b=$k(48);c=I[1847]|I[1848]<<8|(I[1849]<<16|I[1850]<<24);d=I[1843]|I[1844]<<8|(I[1845]<<16|I[1846]<<24);F[b+24|0]=d;F[b+25|0]=d>>>8;F[b+26|0]=d>>>16;F[b+27|0]=d>>>24;F[b+28|0]=c;F[b+29|0]=c>>>8;F[b+30|0]=c>>>16;F[b+31|0]=c>>>24;c=I[1839]|I[1840]<<8|(I[1841]<<16|I[1842]<<24);d=I[1835]|I[1836]<<8|(I[1837]<<16|I[1838]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1831]|I[1832]<<8|(I[1833]<<16|I[1834]<<24);d=I[1827]|I[1828]<<8|(I[1829]<<16|I[1830]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1823]|I[1824]<<8|(I[1825]<<16|I[1826]<<24);d=I[1819]|I[1820]<<8|(I[1821]<<16|I[1822]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+32|0]=0;H[a>>2]=-1;el(a+4|0,b,32);Wk(b)}if(!f){break d}Wk(f)}da=j+32|0;return}Ua(1604);X()}function Dj(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;v=da-16|0;da=v;d=$k(88);H[d>>2]=0;H[d+4>>2]=0;H[d+56>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;b=d- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[d+72>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+60>>2]=d;u=da-16|0;da=u;H[d+80>>2]=0;H[d+84>>2]=0;b=H[d+76>>2];H[d+76>>2]=0;if(b){Wk(b)}H[d+68>>2]=0;H[d+72>>2]=0;c=d- -64|0;b=H[c>>2];H[c>>2]=0;if(b){Wk(b)}e=H[a>>2];b=H[a+4>>2]-e|0;k=(b|0)/12|0;c=N(k,3);i=H[d>>2];f=H[d+4>>2]-i>>2;a:{if(c>>>0>f>>>0){Ha(d,c-f|0);e=H[a>>2];b=H[a+4>>2]-e|0;k=(b|0)/12|0;i=H[d>>2];break a}if(c>>>0>=f>>>0){break a}H[d+4>>2]=(c<<2)+i}if(b){f=k>>>0>1?k:1;a=0;while(1){c=N(a,12);b=c+i|0;c=c+e|0;H[b>>2]=H[c>>2];H[b+4>>2]=H[c+4>>2];H[b+8>>2]=H[c+8>>2];a=a+1|0;if((f|0)!=(a|0)){continue}break}}H[u+12>>2]=-1;g=da-48|0;da=g;b:{s=u+12|0;c:{if(!s){break c}e=H[d+4>>2];n=H[d>>2];b=e-n|0;m=b>>2;c=H[d+12>>2];a=H[d+16>>2]-c>>2;d:{if(m>>>0>a>>>0){nb(d+12|0,m-a|0,14896);e=H[d+4>>2];n=H[d>>2];b=e-n|0;m=b>>2;break d}if(a>>>0<=m>>>0){break d}H[d+16>>2]=c+(m<<2)}c=0;H[g+40>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;e:{f:{g:{if(!b){H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;break g}h:{if((b|0)>=0){c=$k(b);H[g+36>>2]=c;H[g+32>>2]=c;H[g+40>>2]=(m<<2)+c;a=c;b=0;while(1){i=H[(b<<2)+n>>2];a=a-c>>2;i:{if(i>>>0>>0){break i}H[g+16>>2]=0;f=i+1|0;if(f>>>0>a>>>0){nb(g+32|0,f-a|0,g+16|0);n=H[d>>2];e=H[d+4>>2];c=H[g+32>>2];break i}if(a>>>0<=f>>>0){break i}H[g+36>>2]=(f<<2)+c}a=(i<<2)+c|0;H[a>>2]=H[a>>2]+1;b=b+1|0;a=e-n|0;m=a>>2;if(b>>>0>=m>>>0){break h}a=H[g+36>>2];continue}}break b}H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;if(!a){break g}if(a>>>0>=2147483645){break f}b=a<<1;a=$k(b);H[g+16>>2]=a;e=a+(m<<3)|0;H[g+24>>2]=e;gk(a,255,b);H[g+20>>2]=e}e=0;H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;a=H[g+36>>2]-c|0;i=a>>2;j:{k:{if(!a){break k}if((a|0)<0){break j}l=$k(a);H[g>>2]=l;a=i<<2;b=a+l|0;H[g+8>>2]=b;a=gk(l,0,a);H[g+4>>2]=b;f=i>>>0>1?i:1;k=f&3;b=0;if(f-1>>>0>=3){p=f&-4;while(1){f=h<<2;H[f+a>>2]=b;t=f|4;b=H[c+f>>2]+b|0;H[t+a>>2]=b;r=f|8;b=b+H[c+t>>2]|0;H[r+a>>2]=b;f=f|12;b=b+H[c+r>>2]|0;H[f+a>>2]=b;b=b+H[c+f>>2]|0;h=h+4|0;j=j+4|0;if((p|0)!=(j|0)){continue}break}}if(!k){break k}while(1){f=h<<2;H[f+a>>2]=b;h=h+1|0;b=H[c+f>>2]+b|0;o=o+1|0;if((k|0)!=(o|0)){continue}break}}if(!m){break e}t=H[d+12>>2];while(1){w=e<<2;b=w+n|0;j=-1;f=e+1|0;a=(f>>>0)%3|0?f:e-2|0;if((a|0)!=-1){j=H[(a<<2)+n>>2]}a=H[b>>2];l:{m:{if(!((e>>>0)%3|0)){o=-1;b=e+2|0;if((b|0)!=-1){o=H[(b<<2)+n>>2]}if(!((a|0)==(j|0)|(a|0)==(o|0))&(j|0)!=(o|0)){break m}H[d+40>>2]=H[d+40>>2]+1;e=e+3|0;break l}o=H[b-4>>2]}b=o<<2;r=H[b+c>>2];n:{o:{if((r|0)<=0){break o}k=H[g+16>>2];b=H[b+l>>2];h=0;while(1){p=k+(b<<3)|0;q=H[p>>2];if((q|0)==-1){break o}p:{if((j|0)!=(q|0)){break p}p=H[p+4>>2];if((p|0)!=-1){q=H[(p<<2)+n>>2]}else{q=-1}if((q|0)==(a|0)){break p}while(1){q:{a=b;h=h+1|0;if((r|0)<=(h|0)){break q}q=k+(a<<3)|0;b=a+1|0;x=k+(b<<3)|0;y=H[x>>2];H[q>>2]=y;H[q+4>>2]=H[x+4>>2];if((y|0)!=-1){continue}}break}H[k+(a<<3)>>2]=-1;if((p|0)==-1){break o}H[t+w>>2]=p;H[t+(p<<2)>>2]=e;break n}b=b+1|0;h=h+1|0;if((r|0)!=(h|0)){continue}break}}a=j<<2;k=H[a+c>>2];if((k|0)<=0){break n}j=H[g+16>>2];b=H[a+l>>2];h=0;while(1){a=j+(b<<3)|0;if(H[a>>2]==-1){H[a>>2]=o;H[a+4>>2]=e;break n}b=b+1|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}e=f}if(e>>>0>>0){continue}break}break e}Fa();X()}Fa();X()}H[s>>2]=i;if(l){Wk(l)}a=H[g+16>>2];if(a){H[g+20>>2]=a;Wk(a)}a=H[g+32>>2];if(!a){break c}H[g+36>>2]=a;Wk(a)}da=g+48|0;t=(s|0)!=0;if(t){h=da-32|0;da=h;m=H[d>>2];a=H[d+4>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;r:{s:{b=a-m|0;t:{if(!b){break t}if((b|0)<0){break s}c=b>>2;f=c-1>>>5|0;g=f+1|0;e=$k(g<<2);H[h+24>>2]=g;H[h+16>>2]=e;H[h+20>>2]=c;H[e+((b>>>0<132?0:f)<<2)>>2]=0;b=c>>>5<<2;e=gk(e,0,b);c=c&31;if(!c){break t}b=b+e|0;H[b>>2]=H[b>>2]&(-1>>>32-c^-1)}H[h+8>>2]=0;H[h>>2]=0;while(1){u:{p=0;e=0;if((a|0)==(m|0)){break u}while(1){i=H[h+16>>2];v:{if(H[i+(e>>>3&536870908)>>2]>>>e&1){break v}c=H[h>>2];H[h+4>>2]=c;b=H[d+12>>2];a=e;while(1){w:{f=a+1|0;g=a;a=(f>>>0)%3|0?f:a-2|0;if((a|0)==-1){break w}a=H[b+(a<<2)>>2];if((a|0)==-1){break w}f=a+1|0;a=(f>>>0)%3|0?f:a-2|0;if((e|0)==(a|0)|(a|0)==-1){break w}if(!(H[(a>>>3&536870908)+i>>2]>>>a&1)){continue}}break}b=c;k=g;x:{y:{z:{while(1){a=(k>>>3&536870908)+i|0;H[a>>2]=H[a>>2]|1<>>0)%3|0?a:k-2|0;r=(k>>>0)%3|0;n=(r?-1:2)+k|0;l=n<<2;A:{if((b|0)==(c|0)){break A}s=H[(f<<2)+m>>2];j=H[d+12>>2];a=b;if((n|0)!=-1){q=j+l|0;while(1){B:{if((s|0)!=H[a>>2]){break B}i=H[a+4>>2];o=H[q>>2];if((i|0)==(o|0)){break B}c=-1;a=-1;if((i|0)==-1){break x}break y}a=a+8|0;if((c|0)!=(a|0)){continue}break}break A}while(1){if((s|0)==H[a>>2]){o=-1;n=-1;i=H[a+4>>2];if((i|0)!=-1){break y}}a=a+8|0;if((c|0)!=(a|0)){continue}break}}l=H[l+m>>2];C:{if(H[h+8>>2]!=(c|0)){H[c>>2]=l;H[c+4>>2]=f;c=c+8|0;H[h+4>>2]=c;break C}i=c-b|0;c=i>>3;a=c+1|0;if(a>>>0>=536870912){break z}j=i>>2;j=i>>>0<2147483640?a>>>0>j>>>0?a:j:536870911;if(j){if(j>>>0>=536870912){break b}a=$k(j<<3)}else{a=0}c=a+(c<<3)|0;H[c>>2]=l;H[c+4>>2]=f;c=c+8|0;if((i|0)>0){ek(a,b,i)}H[h+8>>2]=a+(j<<3);H[h+4>>2]=c;H[h>>2]=a;if(!b){break C}Wk(b)}D:{E:{if(r){a=k-1|0;break E}a=k+2|0;if((a|0)==-1){break D}}a=H[H[d+12>>2]+(a<<2)>>2];if((a|0)==-1){break D}k=a+((a>>>0)%3|0?-1:2)|0;if((g|0)==(k|0)|(k|0)==-1){break D}m=H[d>>2];b=H[h>>2];i=H[h+16>>2];continue}break}m=H[d>>2];break v}Fa();X()}c=i;a=H[j+(c<<2)>>2]}if((o|0)!=-1){H[j+(o<<2)>>2]=-1}if((a|0)!=-1){H[H[d+12>>2]+(a<<2)>>2]=-1}a=H[d+12>>2];H[a+(n<<2)>>2]=-1;H[a+(c<<2)>>2]=-1;p=1}e=e+1|0;a=H[d+4>>2];if(e>>>0>2>>>0){continue}break}if(p){continue}}break}a=H[h>>2];if(a){Wk(a)}a=H[h+16>>2];if(a){Wk(a)}da=h+32|0;break r}jl();X()}n=0;h=da-32|0;da=h;a=H[u+12>>2];H[d+36>>2]=a;m=d+24|0;F:{G:{H:{I:{J:{K:{L:{c=H[d+24>>2];b=H[d+28>>2]-c>>2;M:{N:{if(b>>>0>>0){nb(m,a-b|0,14896);H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;break N}if(a>>>0>>0){H[d+28>>2]=c+(a<<2)}e=0;H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;if(!a){break M}}if((a|0)<0){break L}b=a-1>>>5|0;c=b+1|0;e=$k(c<<2);H[h+24>>2]=c;H[h+16>>2]=e;H[h+20>>2]=a;H[((a>>>0<33?0:b)<<2)+e>>2]=0;b=a>>>5<<2;c=gk(e,0,b);f=a&31;if(!f){break M}b=b+c|0;H[b>>2]=H[b>>2]&(-1>>>32-f^-1)}l=H[d>>2];k=H[d+4>>2];H[h+8>>2]=0;H[h>>2]=0;H[h+4>>2]=0;b=k-l|0;if(!b){break F}if((b|0)<0){break K}c=b>>2;f=c-1>>>5|0;g=f+1|0;j=$k(g<<2);H[h+8>>2]=g;H[h>>2]=j;H[h+4>>2]=c;o=0;H[((b>>>0<132?0:f)<<2)+j>>2]=0;f=c>>>5<<2;g=gk(j,0,f);c=c&31;if(c){f=f+g|0;H[f>>2]=H[f>>2]&(-1>>>32-c^-1)}if(b>>>0<12){break F}while(1){s=N(o,3);c=(s<<2)+l|0;b=H[c>>2];i=-1;f=s+1|0;if((f|0)!=-1){i=H[(f<<2)+l>>2]}O:{if((b|0)==(i|0)){break O}f=b;b=H[c+8>>2];if((f|0)==(b|0)){break O}p=0;if((b|0)==(i|0)){break O}while(1){c=p+s|0;if(!(H[(c>>>3&536870908)+j>>2]>>>c&1)){b=H[(c<<2)+l>>2];i=1<>>5|0;k=i&H[(j<<2)+e>>2];if(k){e=H[d+28>>2];P:{if((e|0)!=H[d+32>>2]){H[e>>2]=-1;H[d+28>>2]=e+4;break P}g=H[m>>2];f=e-g|0;j=f>>2;e=j+1|0;if(e>>>0>=1073741824){break J}i=f>>1;i=f>>>0<2147483644?e>>>0>i>>>0?e:i:1073741823;if(i){if(i>>>0>=1073741824){break b}e=$k(i<<2)}else{e=0}j=e+(j<<2)|0;H[j>>2]=-1;if((f|0)>0){ek(e,g,f)}H[d+32>>2]=e+(i<<2);H[d+28>>2]=j+4;H[d+24>>2]=e;if(!g){break P}Wk(g)}e=H[d+52>>2];Q:{if((e|0)!=H[d+56>>2]){H[e>>2]=b;H[d+52>>2]=e+4;break Q}g=H[d+48>>2];f=e-g|0;j=f>>2;e=j+1|0;if(e>>>0>=1073741824){break I}i=f>>1;i=f>>>0<2147483644?e>>>0>i>>>0?e:i:1073741823;if(i){if(i>>>0>=1073741824){break b}e=$k(i<<2)}else{e=0}j=e+(j<<2)|0;H[j>>2]=b;if((f|0)>0){ek(e,g,f)}H[d+56>>2]=e+(i<<2);H[d+52>>2]=j+4;H[d+48>>2]=e;if(!g){break Q}Wk(g)}i=H[h+20>>2];b=H[h+24>>2];if((i|0)==b<<5){if((i+1|0)<0){break H}e=h+16|0;if(i>>>0<=1073741822){f=i+32&-32;b=b<<6;b=b>>>0>>0?f:b}else{b=2147483647}Bc(e,b);i=H[h+20>>2]}H[h+20>>2]=i+1;b=H[h+16>>2]+(i>>>3&536870908)|0;e=H[b>>2];z=b,A=Jl(i)&e,H[z>>2]=A;i=1<>>5|0;b=a;a=a+1|0}f=a;e=H[h+16>>2];a=e+(j<<2)|0;H[a>>2]=H[a>>2]|i;r=H[d+24>>2]+(b<<2)|0;i=H[d+12>>2];l=H[d>>2];j=H[h>>2];a=c;R:{S:{T:{U:{V:{W:{while(1){if((a|0)==-1){break W}g=(a>>>3&536870908)+j|0;H[g>>2]=H[g>>2]|1<>2]=a;if(k){H[(a<<2)+l>>2]=b}q=a+1|0;a=(q>>>0)%3|0?q:a-2|0;g=-1;X:{if((a|0)==-1){break X}a=H[i+(a<<2)>>2];g=-1;if((a|0)==-1){break X}g=a+1|0;g=(g>>>0)%3|0?g:a-2|0}a=g;if((c|0)!=(a|0)){continue}break}if((c|0)!=-1){break R}a=1;break V}if((c>>>0)%3|0){a=c-1|0;break V}a=c+2|0;if((a|0)==-1){break U}}a=H[i+(a<<2)>>2];if((a|0)==-1){break U}if(!((a>>>0)%3|0)){break T}a=a-1|0;l=H[d>>2];j=H[h>>2];break S}l=H[d>>2];j=H[h>>2];break R}l=H[d>>2];j=H[h>>2];a=a+2|0;if((a|0)==-1){break R}}c=H[d+12>>2];while(1){g=(a>>>3&536870908)+j|0;H[g>>2]=H[g>>2]|1<>2]=b}Y:{if((a>>>0)%3|0){a=a-1|0;break Y}a=a+2|0;if((a|0)==-1){break R}}a=H[c+(a<<2)>>2];if((a|0)==-1){break R}a=a+((a>>>0)%3|0?-1:2)|0;if((a|0)!=-1){continue}break}}a=f}p=p+1|0;if((p|0)!=3){continue}break}l=H[d>>2];k=H[d+4>>2]}o=o+1|0;if(o>>>0<(k-l>>2>>>0)/3>>>0){continue}break}break G}jl();X()}jl();X()}Fa();X()}Fa();X()}jl();X()}e=H[h+16>>2]}H[d+44>>2]=0;a=H[h+20>>2];if(a){b=a&31;c=(a>>>3&536870908)+e|0;a=e;j=0;while(1){if(!(H[a>>2]>>>n&1)){j=j+1|0;H[d+44>>2]=j}f=(n|0)==31;n=f?0:n+1|0;a=(f<<2)+a|0;if((c|0)!=(a|0)|(b|0)!=(n|0)){continue}break}}a=H[h>>2];if(a){Wk(a);e=H[h+16>>2]}if(e){Wk(e)}da=h+32|0}da=u+16|0;if(!t){H[v+8>>2]=0;Ng(v+8|0,d);d=0}da=v+16|0;return d}Ua(1604);X()}function Mj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=da-16|0;da=e;a:{b:{if(c){H[a+88>>2]=0;H[a+92>>2]=0;f=H[a+84>>2];H[a+84>>2]=0;if(f){Wk(f)}H[a+76>>2]=0;H[a+80>>2]=0;f=H[a+72>>2];H[a+72>>2]=0;if(f){Wk(f)}f=H[c>>2];g=H[c+4>>2];F[e+15|0]=0;Eg(a,g-f>>2,e+15|0);f=H[c+28>>2];g=H[c+24>>2];F[e+14|0]=0;Eg(a+12|0,f-g>>2,e+14|0);Cg(a+28|0,H[c+4>>2]-H[c>>2]>>2,14964);g=H[c+28>>2]-H[c+24>>2]|0;h=g>>2;f=H[a+52>>2];c:{if(h>>>0<=H[a+60>>2]-f>>2>>>0){break c}if((g|0)<0){break a}j=H[a+56>>2];g=$k(g);i=g+(h<<2)|0;h=j-f|0;j=h+g|0;if((h|0)>0){ek(g,f,h)}H[a+60>>2]=i;H[a+56>>2]=j;H[a+52>>2]=g;if(!f){break c}Wk(f)}g=H[c+28>>2]-H[c+24>>2]|0;h=g>>2;f=H[a+40>>2];d:{if(h>>>0<=H[a+48>>2]-f>>2>>>0){break d}if((g|0)<0){break a}j=H[a+44>>2];g=$k(g);i=g+(h<<2)|0;h=j-f|0;j=h+g|0;if((h|0)>0){ek(g,f,h)}H[a+48>>2]=i;H[a+44>>2]=j;H[a+40>>2]=g;if(!f){break d}Wk(f)}F[a+24|0]=1;H[a+64>>2]=c}da=e+16|0;c=(c|0)!=0;break b}if(c){H[a+88>>2]=0;H[a+92>>2]=0;c=H[a+84>>2];H[a+84>>2]=0;if(c){Wk(c)}H[a+76>>2]=0;H[a+80>>2]=0;c=H[a+72>>2];H[a+72>>2]=0;if(c){Wk(c)}g=H[a+64>>2];if(H[g+4>>2]!=H[g>>2]){c=0;while(1){m=(c>>>0)/3|0;e=Ej(g,m);g=H[a+64>>2];e:{if(e){break e}i=H[H[g+12>>2]+(c<<2)>>2];f:{g:{if((i|0)==-1){e=H[a>>2]+(c>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?f:c-2|0;if((f|0)!=-1){e=H[H[g>>2]+(f<<2)>>2]}j=H[a+12>>2];f=j+(e>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>0)%3|0){e=c-1|0;break g}h=-1;e=c+2|0;if((e|0)!=-1){break g}break f}if(c>>>0>i>>>0){break e}e=-1;l=I[d+84|0];h=-1;k=c+1|0;n=c-2|0;j=(k>>>0)%3|0?k:n;if((j|0)>=0){f=(j>>>0)/3|0;h=H[(H[b+96>>2]+N(f,12)|0)+(j-N(f,3)<<2)>>2]}f=i+((i>>>0)%3|0?-1:2)|0;if((f|0)>=0){e=(f>>>0)/3|0;e=H[(H[b+96>>2]+N(e,12)|0)+(f-N(e,3)<<2)>>2]}if(!l){o=H[d+68>>2];e=H[o+(e<<2)>>2];h=H[(h<<2)+o>>2]}if((e|0)==(h|0)){e=-1;h=-1;if((j|0)!=-1){h=j+1|0;h=(h>>>0)%3|0?h:j-2|0}h:{if((f|0)==-1){break h}if((f>>>0)%3|0){e=f-1|0;break h}e=f+2|0}j=-1;f=-1;if((h|0)>=0){f=(h>>>0)/3|0;f=H[(H[b+96>>2]+N(f,12)|0)+(h-N(f,3)<<2)>>2]}if((e|0)>=0){h=(e>>>0)/3|0;j=H[(H[b+96>>2]+N(h,12)|0)+(e-N(h,3)<<2)>>2]}if(!l){e=H[d+68>>2];j=H[e+(j<<2)>>2];f=H[e+(f<<2)>>2]}if((f|0)==(j|0)){break e}}F[a+24|0]=0;e=H[a>>2];f=e+(c>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?k:n;if((e|0)!=-1){f=H[H[g>>2]+(e<<2)>>2]}j=H[a+12>>2];e=j+(f>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>2]+(e<<2)>>2]}e=(f>>>3&536870908)+j|0;H[e>>2]=H[e>>2]|1<>>0)%3|0?e:i-2|0;if((e|0)!=-1){h=H[H[g>>2]+(e<<2)>>2]}e=(h>>>3&536870908)+j|0;H[e>>2]=H[e>>2]|1<>>0)%3|0){e=i-1|0;break g}h=-1;e=i+2|0;if((e|0)==-1){break f}}h=H[H[g>>2]+(e<<2)>>2]}e=(h>>>3&536870908)+j|0;H[e>>2]=H[e>>2]|1<>>0>2]-H[g>>2]>>2>>>0){continue}break}}if(!(!b|!d)){j=b;b=0;h=0;f=a;H[f+56>>2]=H[f+52>>2];H[f+44>>2]=H[f+40>>2];k:{l:{m:{g=H[f+64>>2];e=H[g+24>>2];if((e|0)!=H[g+28>>2]){while(1){a=b;c=H[(h<<2)+e>>2];n:{if((c|0)==-1){break n}if((c|0)<0){e=-1}else{b=(c>>>0)/3|0;e=H[(H[j+96>>2]+N(b,12)|0)+(c-N(b,3)<<2)>>2]}e=I[d+84|0]?e:H[H[d+68>>2]+(e<<2)>>2];b=H[f+56>>2];i=H[f+60>>2];o:{if(b>>>0>>0){H[b>>2]=e;H[f+56>>2]=b+4;break o}g=H[f+52>>2];k=b-g|0;l=k>>2;b=l+1|0;if(b>>>0>=1073741824){break m}i=i-g|0;m=i>>1;i=i>>>0<2147483644?b>>>0>m>>>0?b:m:1073741823;if(i){if(i>>>0>=1073741824){break a}b=$k(i<<2)}else{b=0}l=b+(l<<2)|0;H[l>>2]=e;if((k|0)>0){ek(b,g,k)}H[f+60>>2]=b+(i<<2);H[f+56>>2]=l+4;H[f+52>>2]=b;if(!g){break o}Wk(g)}p:{if(!(H[H[f+12>>2]+(h>>>3&536870908)>>2]>>>h&1)){break p}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1){break p}g=H[f>>2];if(H[g+(b>>>3&536870908)>>2]>>>b&1){break p}b=H[H[H[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)==-1){break p}i=H[f+64>>2];while(1){c=e;b=e+1|0;b=(b>>>0)%3|0?b:e-2|0;if((b|0)==-1|H[g+(b>>>3&536870908)>>2]>>>b&1){break p}b=H[H[i+12>>2]+(b<<2)>>2];if((b|0)==-1){break p}e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)!=-1){continue}break}}H[H[f+28>>2]+(c<<2)>>2]=a;b=H[f+44>>2];q:{if((b|0)!=H[f+48>>2]){H[b>>2]=c;H[f+44>>2]=b+4;break q}g=H[f+40>>2];e=b-g|0;k=e>>2;b=k+1|0;if(b>>>0>=1073741824){break l}i=e>>1;i=e>>>0<2147483644?b>>>0>i>>>0?b:i:1073741823;if(i){if(i>>>0>=1073741824){break a}b=$k(i<<2)}else{b=0}k=b+(k<<2)|0;H[k>>2]=c;if((e|0)>0){ek(b,g,e)}H[f+48>>2]=b+(i<<2);H[f+44>>2]=k+4;H[f+40>>2]=b;if(!g){break q}Wk(g)}b=a+1|0;g=H[f+64>>2];r:{if((c>>>0)%3|0){e=c-1|0;break r}e=c+2|0;if((e|0)==-1){break n}}e=H[H[g+12>>2]+(e<<2)>>2];if((e|0)==-1){break n}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1|(c|0)==(e|0)){break n}while(1){g=e+1|0;g=(g>>>0)%3|0?g:e-2|0;if(H[H[f>>2]+(g>>>3&536870908)>>2]>>>g&1){g=(e|0)<0?-1:H[(H[j+96>>2]+N((e>>>0)/3|0,12)|0)+((e>>>0)%3<<2)>>2];g=I[d+84|0]?g:H[H[d+68>>2]+(g<<2)>>2];a=H[f+56>>2];k=H[f+60>>2];s:{if(a>>>0>>0){H[a>>2]=g;H[f+56>>2]=a+4;break s}i=H[f+52>>2];l=a-i|0;m=l>>2;a=m+1|0;if(a>>>0>=1073741824){break m}k=k-i|0;n=k>>1;k=k>>>0<2147483644?a>>>0>n>>>0?a:n:1073741823;if(k){if(k>>>0>=1073741824){break a}a=$k(k<<2)}else{a=0}m=a+(m<<2)|0;H[m>>2]=g;if((l|0)>0){ek(a,i,l)}H[f+60>>2]=a+(k<<2);H[f+56>>2]=m+4;H[f+52>>2]=a;if(!i){break s}Wk(i)}g=b+1|0;a=H[f+44>>2];t:{if((a|0)!=H[f+48>>2]){H[a>>2]=e;H[f+44>>2]=a+4;break t}k=H[f+40>>2];i=a-k|0;m=i>>2;a=m+1|0;if(a>>>0>=1073741824){break l}l=i>>1;l=i>>>0<2147483644?a>>>0>l>>>0?a:l:1073741823;if(l){if(l>>>0>=1073741824){break a}a=$k(l<<2)}else{a=0}m=a+(m<<2)|0;H[m>>2]=e;if((i|0)>0){ek(a,k,i)}H[f+48>>2]=a+(l<<2);H[f+44>>2]=m+4;H[f+40>>2]=a;if(!k){break t}Wk(k)}a=b;b=g}H[H[f+28>>2]+(e<<2)>>2]=a;g=H[f+64>>2];u:{if((e>>>0)%3|0){e=e-1|0;break u}e=e+2|0;if((e|0)==-1){break n}}e=H[H[g+12>>2]+(e<<2)>>2];if((e|0)==-1){break n}e=e+((e>>>0)%3|0?-1:2)|0;if((e|0)==-1){break n}if((c|0)!=(e|0)){continue}break}}h=h+1|0;e=H[g+24>>2];if(h>>>0>2]-e>>2>>>0){continue}break}}break k}Fa();X()}Fa();X()}return}b=0;j=0;f=a;H[f+56>>2]=H[f+52>>2];H[f+44>>2]=H[f+40>>2];v:{w:{x:{e=H[f+64>>2];c=H[e+24>>2];if((c|0)!=H[e+28>>2]){while(1){a=b;d=H[(j<<2)+c>>2];y:{if((d|0)==-1){break y}b=H[f+56>>2];z:{if((b|0)!=H[f+60>>2]){H[b>>2]=a;H[f+56>>2]=b+4;break z}e=H[f+52>>2];c=b-e|0;h=c>>2;b=h+1|0;if(b>>>0>=1073741824){break x}g=c>>1;g=c>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break a}b=$k(g<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=a;if((c|0)>0){ek(b,e,c)}H[f+60>>2]=b+(g<<2);H[f+56>>2]=h+4;H[f+52>>2]=b;if(!e){break z}Wk(e)}A:{if(!(H[H[f+12>>2]+(j>>>3&536870908)>>2]>>>j&1)){break A}b=d+1|0;b=(b>>>0)%3|0?b:d-2|0;if((b|0)==-1){break A}e=H[f>>2];if(H[e+(b>>>3&536870908)>>2]>>>b&1){break A}b=H[H[H[f+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break A}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)==-1){break A}g=H[f+64>>2];while(1){d=c;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)==-1|H[e+(b>>>3&536870908)>>2]>>>b&1){break A}b=H[H[g+12>>2]+(b<<2)>>2];if((b|0)==-1){break A}c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){continue}break}}H[H[f+28>>2]+(d<<2)>>2]=a;b=H[f+44>>2];B:{if((b|0)!=H[f+48>>2]){H[b>>2]=d;H[f+44>>2]=b+4;break B}e=H[f+40>>2];c=b-e|0;h=c>>2;b=h+1|0;if(b>>>0>=1073741824){break w}g=c>>1;g=c>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break a}b=$k(g<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=d;if((c|0)>0){ek(b,e,c)}H[f+48>>2]=b+(g<<2);H[f+44>>2]=h+4;H[f+40>>2]=b;if(!e){break B}Wk(e)}b=a+1|0;e=H[f+64>>2];C:{if((d>>>0)%3|0){c=d-1|0;break C}c=d+2|0;if((c|0)==-1){break y}}c=H[H[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break y}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|(c|0)==(d|0)){break y}while(1){e=c+1|0;e=(e>>>0)%3|0?e:c-2|0;if(H[H[f>>2]+(e>>>3&536870908)>>2]>>>e&1){a=H[f+56>>2];D:{if((a|0)!=H[f+60>>2]){H[a>>2]=b;H[f+56>>2]=a+4;break D}g=H[f+52>>2];e=a-g|0;i=e>>2;a=i+1|0;if(a>>>0>=1073741824){break x}h=e>>1;h=e>>>0<2147483644?a>>>0>h>>>0?a:h:1073741823;if(h){if(h>>>0>=1073741824){break a}a=$k(h<<2)}else{a=0}i=a+(i<<2)|0;H[i>>2]=b;if((e|0)>0){ek(a,g,e)}H[f+60>>2]=a+(h<<2);H[f+56>>2]=i+4;H[f+52>>2]=a;if(!g){break D}Wk(g)}e=b+1|0;a=H[f+44>>2];E:{if((a|0)!=H[f+48>>2]){H[a>>2]=c;H[f+44>>2]=a+4;break E}h=H[f+40>>2];g=a-h|0;k=g>>2;a=k+1|0;if(a>>>0>=1073741824){break w}i=g>>1;i=g>>>0<2147483644?a>>>0>i>>>0?a:i:1073741823;if(i){if(i>>>0>=1073741824){break a}a=$k(i<<2)}else{a=0}k=a+(k<<2)|0;H[k>>2]=c;if((g|0)>0){ek(a,h,g)}H[f+48>>2]=a+(i<<2);H[f+44>>2]=k+4;H[f+40>>2]=a;if(!h){break E}Wk(h)}a=b;b=e}H[H[f+28>>2]+(c<<2)>>2]=a;e=H[f+64>>2];F:{if((c>>>0)%3|0){c=c-1|0;break F}c=c+2|0;if((c|0)==-1){break y}}c=H[H[e+12>>2]+(c<<2)>>2];if((c|0)==-1){break y}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break y}if((c|0)!=(d|0)){continue}break}}j=j+1|0;c=H[e+24>>2];if(j>>>0>2]-c>>2>>>0){continue}break}}break v}Fa();X()}Fa();X()}}return}Ua(1604);X()}function Ab(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0;e=da+-64|0;da=e;h=H[a+28>>2];g=H[h+4>>2];l=H[a+8>>2];b=H[a+4>>2];c=l-b|0;a:{if(!c){break a}c=c>>2;j=c>>>0>1?c:1;i=j&3;f=H[g+8>>2];c=0;if(j-1>>>0>=3){j=j&-4;while(1){m=d;d=c<<2;d=(((m+F[H[f+(H[d+b>>2]<<2)>>2]+24|0]|0)+F[H[f+(H[(d|4)+b>>2]<<2)>>2]+24|0]|0)+F[H[f+(H[(d|8)+b>>2]<<2)>>2]+24|0]|0)+F[H[f+(H[(d|12)+b>>2]<<2)>>2]+24|0]|0;c=c+4|0;n=n+4|0;if((j|0)!=(n|0)){continue}break}}if(!i){break a}while(1){d=F[H[f+(H[(c<<2)+b>>2]<<2)>>2]+24|0]+d|0;c=c+1|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}n=H[g+80>>2];H[a+72>>2]=d;b:{c:{if((b|0)==(l|0)){c=1;break c}while(1){b=H[(o<<2)+b>>2];H[e+60>>2]=b;d:{e:{f:{j=H[H[g+8>>2]+(b<<2)>>2];switch(H[j+28>>2]-1|0){case 0:case 2:case 4:break e;case 8:break f;default:break d}}H[e+36>>2]=-1;H[e+32>>2]=1140;H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;f=H[h+48>>2];b=$k(32);H[e+16>>2]=b;H[e+20>>2]=17;H[e+24>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];c=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);d=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);d=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;h=Bb(f,e+60|0,e+16|0,-1);if(F[e+27|0]<0){Wk(H[e+16>>2])}g:{if((h|0)<=0){break g}g=H[H[a+28>>2]+48>>2];b=$k(32);H[e+16>>2]=b;H[e+20>>2]=19;H[e+24>>2]=-2147483616;f=0;F[b+19|0]=0;c=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;c=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);d=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);d=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;h:{if(!Cb(g,e+60|0,e+16|0)){break h}f=H[H[a+28>>2]+48>>2];b=$k(32);H[e>>2]=b;H[e+4>>2]=18;H[e+8>>2]=-2147483616;F[b+18|0]=0;c=I[1706]|I[1707]<<8;F[b+16|0]=c;F[b+17|0]=c>>>8;c=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);d=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);d=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;f=Cb(f,e+60|0,e);if(F[e+11|0]>=0){break h}Wk(H[e>>2])}if(F[e+27|0]<0){Wk(H[e+16>>2])}i:{if(f){c=F[j+24|0];b=0;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;if(c){if((c|0)<0){break b}c=c<<2;b=$k(c);H[e+16>>2]=b;d=b+c|0;H[e+24>>2]=d;gk(b,0,c);H[e+20>>2]=d}g=H[H[a+28>>2]+48>>2];c=$k(32);H[e>>2]=c;H[e+4>>2]=19;H[e+8>>2]=-2147483616;F[c+19|0]=0;d=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[c+15|0]=d;F[c+16|0]=d>>>8;F[c+17|0]=d>>>16;F[c+18|0]=d>>>24;d=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);f=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);f=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;Db(g,e+60|0,e,F[j+24|0],b);if(F[e+11|0]<0){Wk(H[e>>2])}g=H[H[a+28>>2]+48>>2];c=$k(32);H[e>>2]=c;H[e+4>>2]=18;H[e+8>>2]=-2147483616;F[c+18|0]=0;d=I[1706]|I[1707]<<8;F[c+16|0]=d;F[c+17|0]=d>>>8;d=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);f=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[c+8|0]=f;F[c+9|0]=f>>>8;F[c+10|0]=f>>>16;F[c+11|0]=f>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);f=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[c|0]=f;F[c+1|0]=f>>>8;F[c+2|0]=f>>>16;F[c+3|0]=f>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;p=Eb(g,e+60|0,e);if(F[e+11|0]<0){Wk(H[e>>2])}La(e+32|0,h,b,F[j+24|0],p);if(!b){break i}Wk(b);break i}if(!Na(e+32|0,j,h)){break g}}b=H[a+40>>2];j:{if((b|0)!=H[a+44>>2]){H[b>>2]=1140;c=H[e+36>>2];H[b+16>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+4>>2]=c;d=H[e+44>>2]-H[e+40>>2]|0;if(d){if((d|0)<0){break b}c=$k(d);H[b+8>>2]=c;H[b+12>>2]=c;H[b+16>>2]=c+(d>>2<<2);f=H[e+40>>2];d=H[e+44>>2]-f|0;if((d|0)>0){c=ek(c,f,d)+d|0}H[b+12>>2]=c}L[b+20>>2]=L[e+52>>2];H[a+40>>2]=b+24;break j}f=0;k:{l:{m:{c=H[a+40>>2];h=H[a+36>>2];d=(c-h|0)/24|0;b=d+1|0;if(b>>>0<178956971){g=(H[a+44>>2]-h|0)/24|0;i=g<<1;g=g>>>0<89478485?b>>>0>i>>>0?b:i:178956970;if(g){if(g>>>0>=178956971){break m}f=$k(N(g,24))}b=N(d,24)+f|0;H[b>>2]=1140;d=H[e+36>>2];H[b+16>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+4>>2]=d;l=H[e+40>>2];d=H[e+44>>2]-l|0;if(d){if((d|0)<0){break b}i=$k(d);H[b+8>>2]=i;H[b+16>>2]=i+(d>>2<<2);q=b,r=ek(i,l,d)+d|0,H[q+12>>2]=r}d=N(g,24)+f|0;L[b+20>>2]=L[e+52>>2];f=b+24|0;if((c|0)==(h|0)){break l}while(1){b=b-24|0;H[b>>2]=1140;H[b+4>>2]=H[c-20>>2];g=c-16|0;H[b+8>>2]=H[g>>2];H[b+12>>2]=H[c-12>>2];i=c-8|0;H[b+16>>2]=H[i>>2];H[i>>2]=0;H[g>>2]=0;H[g+4>>2]=0;L[b+20>>2]=L[c-4>>2];c=c-24|0;if((h|0)!=(c|0)){continue}break}H[a+44>>2]=d;d=H[a+40>>2];H[a+40>>2]=f;c=H[a+36>>2];H[a+36>>2]=b;if((c|0)==(d|0)){break k}while(1){d=d-24|0;ga[H[H[d>>2]>>2]](d)|0;if((c|0)!=(d|0)){continue}break}break k}break b}Ua(1604);X()}H[a+44>>2]=d;H[a+40>>2]=f;H[a+36>>2]=b}if(c){Wk(c)}}b=e+32|0;c=Va(b,j,n);H[e>>2]=c;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;Ja(b,j,e+16|0,c);b=H[e+16>>2];if(b){H[e+20>>2]=b;Wk(b)}b=H[a+64>>2];n:{if(b>>>0>2]){c=H[e>>2];H[e>>2]=0;H[b>>2]=c;H[a+64>>2]=b+4;break n}b=0;o:{p:{q:{d=H[a+60>>2];f=H[a+64>>2]-d>>2;c=f+1|0;if(c>>>0<1073741824){d=H[a+68>>2]-d|0;j=d>>1;c=d>>>0<2147483644?c>>>0>j>>>0?c:j:1073741823;if(c){if(c>>>0>=1073741824){break q}b=$k(c<<2)}j=H[e>>2];H[e>>2]=0;d=(f<<2)+b|0;H[d>>2]=j;f=(c<<2)+b|0;j=d+4|0;b=H[a+64>>2];c=H[a+60>>2];if((b|0)==(c|0)){break p}while(1){b=b-4|0;h=H[b>>2];H[b>>2]=0;d=d-4|0;H[d>>2]=h;if((b|0)!=(c|0)){continue}break}H[a+68>>2]=f;b=H[a+64>>2];H[a+64>>2]=j;c=H[a+60>>2];H[a+60>>2]=d;if((b|0)==(c|0)){break o}while(1){b=b-4|0;d=H[b>>2];H[b>>2]=0;if(d){Fb(d)}if((b|0)!=(c|0)){continue}break}break o}break b}Ua(1604);X()}H[a+68>>2]=f;H[a+64>>2]=j;H[a+60>>2]=d}if(c){Wk(c)}}b=H[e>>2];H[e>>2]=0;if(b){Fb(b)}H[e+32>>2]=1140;b=H[e+40>>2];if(!b){break d}H[e+44>>2]=b;Wk(b);break d}H[e+32>>2]=1140;a=H[e+40>>2];if(a){H[e+44>>2]=a;Wk(a)}c=0;break c}d=F[j+24|0];H[e+40>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;r:{if(!d){f=0;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;d=0;break r}if((d|0)<0){break b}b=d<<2;f=$k(b);H[e+32>>2]=f;h=b+f|0;H[e+40>>2]=h;c=0;b=f;g=d&7;if(g){while(1){H[b>>2]=2147483647;b=b+4|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}if((d-1&1073741823)>>>0>=7){while(1){H[b+24>>2]=2147483647;H[b+28>>2]=2147483647;H[b+16>>2]=2147483647;H[b+20>>2]=2147483647;H[b+8>>2]=2147483647;H[b+12>>2]=2147483647;H[b>>2]=2147483647;H[b+4>>2]=2147483647;b=b+32|0;if((h|0)!=(b|0)){continue}break}}H[e+36>>2]=h;b=F[j+24|0];d=0;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;if(!b){break r}if((b|0)<0){break b}b=b<<2;d=$k(b);H[e+16>>2]=d;c=b+d|0;H[e+24>>2]=c;gk(d,0,b);H[e+20>>2]=c}h=I[j+24|0];g=0;b=d;if(H[j+80>>2]){while(1){c=d;Gb(j,g,h<<24>>24,b);h=F[j+24|0];s:{if((h|0)<=0){break s}b=0;if((h|0)!=1){l=h&-2;d=0;while(1){i=b<<2;k=i+f|0;m=H[c+i>>2];if(H[k>>2]>(m|0)){H[k>>2]=m}i=i|4;k=i+f|0;i=H[c+i>>2];if(H[k>>2]>(i|0)){H[k>>2]=i}b=b+2|0;d=d+2|0;if((l|0)!=(d|0)){continue}break}}if(!(h&1)){break s}b=b<<2;d=b+f|0;b=H[b+c>>2];if(H[d>>2]<=(b|0)){break s}H[d>>2]=b}g=g+1|0;if(g>>>0>2]){d=H[e+16>>2];f=H[e+32>>2];b=c;continue}break}d=c}b=0;t:{if(h<<24>>24<=0){break t}u:{while(1){v:{l=(b<<2)+f|0;c=H[a+52>>2];w:{if((c|0)!=H[a+56>>2]){H[c>>2]=H[l>>2];H[a+52>>2]=c+4;break w}g=H[a+48>>2];h=c-g|0;k=h>>2;c=k+1|0;if(c>>>0>=1073741824){break v}i=h>>1;i=h>>>0<2147483644?c>>>0>i>>>0?c:i:1073741823;if(i){if(i>>>0>=1073741824){break u}c=$k(i<<2)}else{c=0}k=c+(k<<2)|0;H[k>>2]=H[l>>2];if((h|0)>0){ek(c,g,h)}H[a+56>>2]=c+(i<<2);H[a+52>>2]=k+4;H[a+48>>2]=c;if(!g){break w}Wk(g)}b=b+1|0;if((b|0)>2];if(o>>>0>=H[a+8>>2]-b>>2>>>0){break c}h=H[a+28>>2];g=H[h+4>>2];continue}}da=e- -64|0;return c|0}Fa();X()}function cb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=O(0);e=da-112|0;da=e;H[e+88>>2]=0;H[e+92>>2]=0;H[e+80>>2]=0;H[e+84>>2]=0;H[e+96>>2]=1065353216;c=H[a+80>>2];H[e+40>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=$k(d);H[e+32>>2]=g;c=d+g|0;H[e+40>>2]=c;gk(g,0,d);H[e+36>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;h=c+d|0;c=I[h+12|0]|I[h+13|0]<<8|(I[h+14|0]<<16|I[h+15|0]<<24);H[e+72>>2]=I[h+8|0]|I[h+9|0]<<8|(I[h+10|0]<<16|I[h+11|0]<<24);H[e+76>>2]=c;c=I[h+4|0]|I[h+5|0]<<8|(I[h+6|0]<<16|I[h+7|0]<<24);H[e+64>>2]=I[h|0]|I[h+1|0]<<8|(I[h+2|0]<<16|I[h+3|0]<<24);H[e+68>>2]=c;f=I[h|0]|I[h+1|0]<<8|(I[h+2|0]<<16|I[h+3|0]<<24);d=I[h+4|0]|I[h+5|0]<<8|(I[h+6|0]<<16|I[h+7|0]<<24);c=I[h+12|0]|I[h+13|0]<<8|(I[h+14|0]<<16|I[h+15|0]<<24);H[e+56>>2]=I[h+8|0]|I[h+9|0]<<8|(I[h+10|0]<<16|I[h+11|0]<<24);H[e+60>>2]=c;H[e+48>>2]=f;H[e+52>>2]=d;d=0;i=H[e+84>>2];c:{if(!i){break c}h=H[e+80>>2];j=H[e+60>>2]^(H[e+56>>2]^(H[e+52>>2]^(H[e+48>>2]^318)+239)+239)+239;c=j&i-1;f=Il(i);d:{if(f>>>0<=1){break d}c=j;if(c>>>0>>0){break d}c=(j>>>0)%(i>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){k=H[e+60>>2];p=H[e+56>>2];n=H[e+52>>2];m=H[e+48>>2];while(1){f=H[c+4>>2];f:{if((f|0)!=(j|0)){if(f>>>0>=i>>>0){f=(f>>>0)%(i>>>0)|0}if((h|0)!=(f|0)){break c}break f}f=H[c+8>>2];g:{if((f|0)!=(m|0)){f=(f|0)==(m|0);break g}f=H[c+12>>2];if((f|0)!=(n|0)){f=(f|0)==(n|0);break g}f=H[c+16>>2];if((f|0)!=(p|0)){f=(f|0)==(p|0);break g}f=(k|0)==H[c+20>>2]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}m=i-1|0;k=H[e+60>>2];i=H[e+56>>2];p=H[e+52>>2];n=H[e+48>>2];while(1){f=H[c+4>>2];h:{if((f|0)!=(j|0)){if((h|0)!=(f&m)){break c}break h}f=H[c+8>>2];if((f|0)!=(n|0)){if((f|0)!=(n|0)){break h}break e}f=H[c+12>>2];if((f|0)!=(p|0)){if((f|0)!=(p|0)){break h}break e}f=H[c+16>>2];if((f|0)!=(i|0)){if((f|0)!=(i|0)){break h}break e}if((k|0)==H[c+20>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+24>>2];break i}c=H[e+60>>2];H[e+16>>2]=H[e+56>>2];H[e+20>>2]=c;c=H[e+52>>2];H[e+8>>2]=H[e+48>>2];H[e+12>>2]=c;H[e+24>>2]=r;c=0;h=H[e+20>>2]^(H[e+16>>2]^(H[e+12>>2]^(H[e+8>>2]^318)+239)+239)+239;j:{k:{l=e+80|0;g=H[l+4>>2];if(!g){break k}d=Il(g);l:{if(d>>>0>=2){c=h;if(g>>>0<=c>>>0){c=(h>>>0)%(g>>>0)|0}i=H[H[l>>2]+(c<<2)>>2];if(!i){break k}if(d>>>0<2){break l}f=H[e+20>>2];m=H[e+16>>2];k=H[e+12>>2];j=H[e+8>>2];while(1){i=H[i>>2];if(!i){break k}d=H[i+4>>2];if((d|0)!=(h|0)){if(d>>>0>=g>>>0){d=(d>>>0)%(g>>>0)|0}if((c|0)!=(d|0)){break k}}d=H[i+8>>2];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=H[i+12>>2];if((d|0)!=(k|0)){d=(d|0)==(k|0);break m}d=H[i+16>>2];if((d|0)!=(m|0)){d=(d|0)==(m|0);break m}d=(f|0)==H[i+20>>2]}if(!d){continue}break}c=0;break j}c=h&g-1;i=H[H[l>>2]+(c<<2)>>2];if(!i){break k}}j=g-1|0;f=H[e+20>>2];n=H[e+16>>2];m=H[e+12>>2];k=H[e+8>>2];while(1){i=H[i>>2];if(!i){break k}d=H[i+4>>2];if((d|0)!=(h|0)&(d&j)!=(c|0)){break k}d=H[i+8>>2];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=H[i+12>>2];if((d|0)!=(m|0)){d=(d|0)==(m|0);break n}d=H[i+16>>2];if((d|0)!=(n|0)){d=(d|0)==(n|0);break n}d=(f|0)==H[i+20>>2]}if(!d){continue}break}c=0;break j}i=$k(28);d=H[e+20>>2];H[i+16>>2]=H[e+16>>2];H[i+20>>2]=d;d=H[e+12>>2];H[i+8>>2]=H[e+8>>2];H[i+12>>2]=d;d=H[e+24>>2];H[i>>2]=0;H[i+4>>2]=h;H[i+24>>2]=d;q=O(H[l+12>>2]+1>>>0);u=L[l+16>>2];o:{if(q>O(u*O(g>>>0))?0:g){break o}d=(g-1&g)!=0|g>>>0<3|g<<1;c=2;q=O(U(O(q/u)));p:{if(q=O(0)){f=~~q>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Rk(d);g=H[l+4>>2]}r:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break r}f=g>>>0<3;q=O(U(O(O(K[l+12>>2])/L[l+16>>2])));s:{if(q=O(0)){d=~~q>>>0;break s}d=0}t:{u:{if(f){break u}if(Il(g)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Rk(d)}c=c>>>0>>0?d:c;if(g>>>0<=c>>>0){break r}}d=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=$k(k<<2);g=H[l>>2];H[l>>2]=c;if(g){Wk(g)}H[l+4>>2]=k;if(k-1>>>0>=3){c=k&-4;g=0;while(1){f=d<<2;H[f+H[l>>2]>>2]=0;H[H[l>>2]+(f|4)>>2]=0;H[H[l>>2]+(f|8)>>2]=0;H[H[l>>2]+(f|12)>>2]=0;d=d+4|0;g=g+4|0;if((c|0)!=(g|0)){continue}break}}c=k&3;if(c){while(1){H[H[l>>2]+(d<<2)>>2]=0;d=d+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}g=H[l+8>>2];if(!g){break v}c=l+8|0;f=H[g+4>>2];d=Il(k);if(d>>>0<2){break x}f=f>>>0>=k>>>0?(f>>>0)%(k>>>0)|0:f;H[H[l>>2]+(f<<2)>>2]=c;c=H[g>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((f|0)==(j|0)){g=c;break z}d=c;p=j<<2;m=p+H[l>>2]|0;if(!H[m>>2]){H[m>>2]=g;g=c;f=j;break z}while(1){j=d;d=H[d>>2];if(d){n=H[c+8>>2];m=H[d+8>>2];A:{if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}n=H[c+12>>2];m=H[d+12>>2];if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}n=H[c+16>>2];m=H[d+16>>2];if((n|0)!=(m|0)){m=(m|0)==(n|0);break A}m=H[c+20>>2]==H[d+20>>2]}if(m){continue}}break}H[g>>2]=d;H[j>>2]=H[H[p+H[l>>2]>>2]>>2];H[H[p+H[l>>2]>>2]>>2]=c}c=H[g>>2];if(c){continue}break}break v}c=H[l>>2];H[l>>2]=0;if(c){Wk(c)}H[l+4>>2]=0;break v}Ua(1604);X()}f=k-1&f;H[H[l>>2]+(f<<2)>>2]=c;c=H[g>>2];if(!c){break v}}n=k-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(f|0)){g=c;break B}d=c;p=j<<2;k=p+H[l>>2]|0;if(H[k>>2]){while(1){j=d;d=H[d>>2];if(d){m=H[c+8>>2];k=H[d+8>>2];C:{if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}m=H[c+12>>2];k=H[d+12>>2];if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}m=H[c+16>>2];k=H[d+16>>2];if((m|0)!=(k|0)){k=(k|0)==(m|0);break C}k=H[c+20>>2]==H[d+20>>2]}if(k){continue}}break}H[g>>2]=d;H[j>>2]=H[H[p+H[l>>2]>>2]>>2];H[H[p+H[l>>2]>>2]>>2]=c;break B}H[k>>2]=g;g=c;f=j}c=H[g>>2];if(c){continue}break}}}g=H[l+4>>2];c=g-1|0;if(!(c&g)){c=c&h;break o}if(g>>>0>h>>>0){c=h;break o}c=(h>>>0)%(g>>>0)|0}c=H[l>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[i>>2]=H[l+8>>2];H[l+8>>2]=i;H[c>>2]=l+8;c=H[i>>2];if(!c){break D}c=H[c+4>>2];d=g-1|0;E:{if(!(d&g)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(g>>>0)|0}H[H[l>>2]+(c<<2)>>2]=i;break D}H[i>>2]=H[d>>2];H[d>>2]=i}H[l+12>>2]=H[l+12>>2]+1;c=1}F[e+108|0]=c;H[e+104>>2]=i;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,r)|0,e- -64|0,c);g=H[e+32>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){j=H[a+68>>2];b=H[a+72>>2]-j|0;if(!b){break F}h=H[e+32>>2];b=b>>2;c=b>>>0>1?b:1;o=c&3;b=0;if(c-1>>>0>=3){d=c&-4;g=0;while(1){f=b<<2;c=f+j|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=j+(f|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;g=g+4|0;if((d|0)!=(g|0)){continue}break}}if(!o){break F}while(1){c=j+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;t=t+1|0;if((o|0)!=(t|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}j=H[e+32>>2];b=0;if(c-1>>>0>=3){f=c&-4;g=0;while(1){h=b<<2;H[h+d>>2]=H[h+j>>2];o=h|4;H[o+d>>2]=H[j+o>>2];o=h|8;H[o+d>>2]=H[j+o>>2];o=h|12;H[o+d>>2]=H[j+o>>2];b=b+4|0;g=g+4|0;if((f|0)!=(g|0)){continue}break}}g=c&3;if(!g){break F}while(1){c=b<<2;H[c+d>>2]=H[c+j>>2];b=b+1|0;t=t+1|0;if((g|0)!=(t|0)){continue}break}}H[a+80>>2]=r}a=H[e+32>>2];if(a){Wk(a)}b=H[e+88>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[e+80>>2];H[e+80>>2]=0;if(a){Wk(a)}da=e+112|0;return r}Fa();X()}function Ik(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,N=0;l=da-336|0;da=l;m=i&65535;p=d;q=e&65535;s=(e^i)&-2147483648;k=h;x=i>>>16&32767;y=e>>>16&32767;a:{b:{if(x-32767>>>0>4294934529&y-32767>>>0>=4294934530){break b}j=e&2147483647;if(!(!d&(j|0)==2147418112?!(b|c):j>>>0<2147418112)){o=d;s=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){o=h;s=i|32768;b=f;c=g;break a}if(!(b|d|(j^2147418112|c))){if(!(f|h|(e^2147418112|g))){b=0;c=0;s=2147450880;break a}s=s|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){b=0;c=0;break a}if(!(b|d|(c|j))){b=!(f|h|(e|g));o=b?0:o;s=b?2147450880:s;b=0;c=0;break a}if(!(f|h|(e|g))){s=s|2147418112;b=0;c=0;break a}if((j|0)==65535|j>>>0<65535){i=b;d=!(p|q);h=d<<6;j=Q(d?b:p)+32|0;b=Q(d?c:q);b=h+((b|0)==32?j:b)|0;Fk(l+320|0,i,c,p,q,b-15|0);n=16-b|0;p=H[l+328>>2];q=H[l+332>>2];c=H[l+324>>2];b=H[l+320>>2]}if(e>>>0>65535){break b}d=!(k|m);e=d<<6;h=Q(d?f:k)+32|0;d=Q(d?g:m);d=e+((d|0)==32?h:d)|0;Fk(l+304|0,f,g,k,m,d-15|0);n=(d+n|0)-16|0;k=H[l+312>>2];m=H[l+316>>2];f=H[l+304>>2];g=H[l+308>>2]}e=m|65536;z=e;A=k;d=k;k=e<<15|d>>>17;d=d<<15|g>>>17;h=0-d|0;e=k;i=1963258675-(e+((d|0)!=0)|0)|0;Ok(l+288|0,d,e,0,0,h,i,0,0);j=H[l+296>>2];Ok(l+272|0,0-j|0,0-(H[l+300>>2]+((j|0)!=0)|0)|0,0,0,h,i,0,0);h=H[l+280>>2];i=h<<1|H[l+276>>2]>>>31;h=H[l+284>>2]<<1|h>>>31;Ok(l+256|0,i,h,0,0,d,e,0,0);j=h;h=H[l+264>>2];Ok(l+240|0,i,j,0,0,0-h|0,0-(H[l+268>>2]+((h|0)!=0)|0)|0,0,0);h=H[l+248>>2];i=h<<1|H[l+244>>2]>>>31;h=H[l+252>>2]<<1|h>>>31;Ok(l+224|0,i,h,0,0,d,e,0,0);j=h;h=H[l+232>>2];Ok(l+208|0,i,j,0,0,0-h|0,0-(H[l+236>>2]+((h|0)!=0)|0)|0,0,0);h=H[l+216>>2];i=h<<1|H[l+212>>2]>>>31;h=H[l+220>>2]<<1|h>>>31;Ok(l+192|0,i,h,0,0,d,e,0,0);e=h;h=H[l+200>>2];Ok(l+176|0,i,e,0,0,0-h|0,0-(H[l+204>>2]+((h|0)!=0)|0)|0,0,0);i=d;h=H[l+184>>2];d=h<<1|H[l+180>>2]>>>31;e=d-1|0;h=(H[l+188>>2]<<1|h>>>31)-!d|0;Ok(l+160|0,i,k,0,0,e,h,0,0);d=f;j=g<<15|d>>>17;Ok(l+144|0,d<<15,j,0,0,e,h,0,0);k=H[l+172>>2];m=H[l+160>>2];B=H[l+152>>2];d=m+B|0;i=H[l+164>>2];j=i+H[l+156>>2]|0;j=d>>>0>>0?j+1|0:j;m=(i|0)==(j|0)&d>>>0>>0|i>>>0>j>>>0;i=m+H[l+168>>2]|0;k=i>>>0>>0?k+1|0:k;m=!j&d>>>0>1|(j|0)!=0;i=m+i|0;k=i>>>0>>0?k+1|0:k;Ok(l+112|0,e,h,0,0,0-i|0,0-(((i|0)!=0)+k|0)|0,0,0);Ok(l+128|0,1-d|0,0-((d>>>0>1)+j|0)|0,0,0,e,h,0,0);G=(y-x|0)+n|0;e=H[l+116>>2];w=e;d=H[l+112>>2];j=e<<1|d>>>31;m=d<<1;n=j;d=j;h=H[l+140>>2];u=h;e=H[l+136>>2];j=h<<1|e>>>31;i=e<<1|H[l+132>>2]>>>31;h=i+m|0;j=d+j|0;j=h>>>0>>0?j+1|0:j;i=h;e=j;j=j-(h>>>0<13927)|0;r=j;k=q|65536;L=k;B=p;j=p;k=k<<1|j>>>31;p=j<<1|c>>>31;d=0;j=d|k;q=j;v=Fl(r,d,j,0);d=fa;t=d;j=b;d=c<<1|j>>>31;x=j<<1;y=d;h=h-13927|0;j=(e|0)==(r|0)&h>>>0>>0|e>>>0>r>>>0;e=(e|0)==(n|0)&i>>>0>>0|e>>>0>>0;d=H[l+120>>2];k=H[l+124>>2]<<1|d>>>31;i=d<<1;m=j;n=e;e=u>>>31|0;d=e+(w>>>31|i)|0;j=k;j=d>>>0>>0?j+1|0:j;e=d;d=n+d|0;j=d>>>0>>0?j+1|0:j;e=d;d=m+d|0;k=d>>>0>>0?j+1|0:j;e=d;d=d-1|0;C=k-!e|0;D=0;i=Fl(y,o,C,D);e=i+v|0;k=fa+t|0;k=e>>>0>>0?k+1|0:k;m=(k|0)==(t|0)&e>>>0>>0|k>>>0>>0;v=d;i=Fl(d,0,p,0);d=i+e|0;j=fa+k|0;j=d>>>0>>0?j+1|0:j;n=d;i=j;e=(j|0)==(k|0)&d>>>0>>0|j>>>0>>0;d=m+e|0;k=0;k=d>>>0>>0?1:k;e=Fl(q,o,C,D);d=e+d|0;j=fa+k|0;u=d;d=d>>>0>>0?j+1|0:j;m=Fl(q,o,v,o);k=fa;w=Fl(C,D,p,o);e=w+m|0;j=fa+k|0;j=e>>>0>>0?j+1|0:j;w=e;e=j;j=(k|0)==(j|0)&m>>>0>w>>>0|j>>>0>>0;m=u+e|0;d=d+j|0;j=m;m=j>>>0>>0?d+1|0:d;u=j;e=0;d=e+n|0;j=i+w|0;j=d>>>0>>0?j+1|0:j;e=j;k=(j|0)==(i|0)&d>>>0>>0|i>>>0>j>>>0;i=u+k|0;j=m;u=i;i=i>>>0>>0?j+1|0:j;n=d;m=e;w=h;h=Fl(h,0,p,o);e=fa;t=Fl(r,o,y,o);d=t+h|0;j=fa+e|0;j=d>>>0>>0?j+1|0:j;e=(e|0)==(j|0)&d>>>0>>0|e>>>0>j>>>0;h=j;E=u;t=e;F=x&-2;k=Fl(v,o,F,0);e=k+d|0;j=fa+j|0;j=e>>>0>>0?j+1|0:j;u=e;k=e;e=j;h=(j|0)==(h|0)&d>>>0>k>>>0|h>>>0>j>>>0;d=t+h|0;k=0;k=d>>>0>>0?1:k;j=d;h=n+d|0;d=k+m|0;d=h>>>0>>0?d+1|0:d;t=h;j=h;h=d;k=(d|0)==(m|0)&j>>>0>>0|d>>>0>>0;d=E+k|0;j=i;M=d;n=d>>>0>>0?j+1|0:j;I=Fl(q,o,w,o);E=fa;i=Fl(C,D,F,o);d=i+I|0;j=fa+E|0;j=d>>>0>>0?j+1|0:j;C=d;k=Fl(r,o,p,o);i=d+k|0;m=j;d=j+fa|0;d=i>>>0>>0?d+1|0:d;J=i;j=Fl(y,o,v,o);i=i+j|0;k=fa+d|0;D=i;k=i>>>0>>0?k+1|0:k;i=k;v=0;N=(d|0)==(k|0)&D>>>0>>0|d>>>0>k>>>0;j=(d|0)==(m|0)&C>>>0>J>>>0|d>>>0>>0;d=j+((m|0)==(E|0)&C>>>0>>0|m>>>0>>0)|0;k=0;d=N+d|0;m=i|0;k=m+t|0;j=(d|v)+h|0;v=k;d=k;j=d>>>0>>0?j+1|0:j;m=j;h=(h|0)==(j|0)&d>>>0>>0|h>>>0>j>>>0;d=h+M|0;j=n;E=d;h=d>>>0>>0?j+1|0:j;t=Fl(r,o,F,o);r=fa;k=Fl(y,o,w,o);d=k+t|0;j=fa+r|0;j=d>>>0>>0?j+1|0:j;n=0;k=(j|0)==(r|0)&d>>>0>>0|j>>>0>>0;r=j;d=j+u|0;j=(k|n)+e|0;n=d;j=d>>>0>>0?j+1|0:j;u=(e|0)==(j|0)&d>>>0>>0|e>>>0>j>>>0;i=0;e=i+d|0;d=j;k=D+d|0;k=e>>>0>>0?k+1|0:k;e=(d|0)==(k|0)&e>>>0>>0|d>>>0>k>>>0;d=u+e|0;j=0;j=d>>>0>>0?1:j;e=d;d=d+v|0;j=j+m|0;j=d>>>0>>0?j+1|0:j;e=j;j=(m|0)==(j|0)&d>>>0>>0|j>>>0>>0;i=j+E|0;k=h;h=i;k=h>>>0>>0?k+1|0:k;i=k;c:{if((k|0)==131071|k>>>0<131071){Ok(l+80|0,d,e,h,i,f,g,A,z);j=b<<17;b=0;c=H[l+88>>2];n=b-c|0;k=H[l+80>>2];m=H[l+84>>2];B=(k|m)!=0;r=n-B|0;n=(j-(H[l+92>>2]+(b>>>0>>0)|0)|0)-(n>>>0>>0)|0;b=k;k=0-k|0;m=0-(((b|0)!=0)+m|0)|0;b=G+16382|0;break c}k=h<<31;d=(e&1)<<31|d>>>1;e=e>>>1|k;h=(i&1)<<31|h>>>1;i=i>>>1|0;Ok(l+96|0,d,e,h,i,f,g,A,z);q=0;m=H[l+104>>2];n=q-m|0;k=H[l+96>>2];p=H[l+100>>2];x=(k|p)!=0;r=n-x|0;n=((b<<16)-(H[l+108>>2]+(m>>>0>q>>>0)|0)|0)-(n>>>0>>0)|0;j=k;k=0-j|0;m=0-(((j|0)!=0)+p|0)|0;x=b;y=c;p=B;q=L;b=G+16383|0}if((b|0)>=32767){s=s|2147418112;b=0;c=0;break a}d:{if((b|0)>0){c=r;j=n<<1|c>>>31;r=c<<1|m>>>31;n=j;p=h;q=i&65535|b<<16;j=m<<1|k>>>31;b=k<<1;break d}if((b|0)<=-113){b=0;c=0;break a}Mk(l- -64|0,d,e,h,i,1-b|0);Fk(l+48|0,x,y,p,q,b+112|0);d=H[l+64>>2];e=H[l+68>>2];p=H[l+72>>2];q=H[l+76>>2];Ok(l+32|0,f,g,A,z,d,e,p,q);c=H[l+40>>2];i=c<<1;c=H[l+44>>2]<<1|c>>>31;b=H[l+56>>2];h=H[l+36>>2];n=h>>>31|i;i=b-n|0;n=H[l+60>>2]-((b>>>0>>0)+c|0)|0;c=H[l+32>>2];k=h<<1|c>>>31;c=c<<1;j=H[l+52>>2];b=H[l+48>>2];h=(k|0)==(j|0)&c>>>0>b>>>0|j>>>0>>0;r=i-h|0;n=n-(h>>>0>i>>>0)|0;h=b;b=h-c|0;j=j-((c>>>0>h>>>0)+k|0)|0}Ok(l+16|0,f,g,A,z,3,0,0,0);Ok(l,f,g,A,z,5,0,0,0);h=d;m=p;p=d&1;c=b+p|0;d=0;k=j+d|0;k=b>>>0>c>>>0?k+1|0:k;i=c;c=k;g=(k|0)==(g|0)&i>>>0>f>>>0|g>>>0>>0;d=(d|0)==(k|0)&i>>>0

>>0|d>>>0>k>>>0;b=d+r|0;j=n;j=b>>>0>>0?j+1|0:j;f=b;d=b;b=j;g=(d|0)==(A|0)&(j|0)==(z|0)?g:(z|0)==(j|0)&d>>>0>A>>>0|j>>>0>z>>>0;d=h+g|0;k=e;k=d>>>0>>0?k+1|0:k;g=(e|0)==(k|0)&d>>>0>>0|e>>>0>k>>>0;e=m+g|0;j=q;j=e>>>0>>0?j+1|0:j;g=e;e=d;m=g;d=H[l+20>>2];h=(d|0)==(c|0)&K[l+16>>2]>>0|c>>>0>d>>>0;d=H[l+28>>2];g=H[l+24>>2];h=j>>>0<2147418112&((f|0)==(g|0)&(b|0)==(d|0)?h:(d|0)==(b|0)&g>>>0>>0|b>>>0>d>>>0);g=e+h|0;d=k;d=g>>>0>>0?d+1|0:d;h=(d|0)==(k|0)&e>>>0>g>>>0|d>>>0>>0;e=m+h|0;k=e>>>0>>0?j+1|0:j;h=e;e=H[l+4>>2];i=(e|0)==(c|0)&K[l>>2]>>0|c>>>0>e>>>0;c=H[l+12>>2];e=H[l+8>>2];c=k>>>0<2147418112&((e|0)==(f|0)&(b|0)==(c|0)?i:(c|0)==(b|0)&e>>>0>>0|b>>>0>c>>>0);b=c+g|0;j=b>>>0>>0?d+1|0:d;c=j;f=(d|0)==(j|0)&b>>>0>>0|d>>>0>j>>>0;e=h+f|0;d=k;o=e|o;s=s|(e>>>0>>0?d+1|0:d)}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=o;H[a+12>>2]=s;da=l+336|0}function Fc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=da-48|0;da=k;c=H[a+4>>2];g=H[a+12>>2];H[k+40>>2]=0;a=k;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;l=H[H[H[c+4>>2]+8>>2]+(g<<2)>>2];d=a+8|0;if((b|0)==-1){b=qe(g,c)}a:{if((b|0)==-2){break a}if((ga[H[H[c>>2]+8>>2]](c)|0)==1){j=da-32|0;da=j;f=H[H[H[c+4>>2]+8>>2]+(g<<2)>>2];b:{c:{d:{if((ga[H[H[c>>2]+8>>2]](c)|0)!=1|b-1>>>0>5){break d}h=ga[H[H[c>>2]+52>>2]](c)|0;a=ga[H[H[c>>2]+60>>2]](c,g)|0;if(!h|!a){break d}e=ga[H[H[c>>2]+56>>2]](c,g)|0;if(e){c=H[c+56>>2];H[j+20>>2]=e;H[j+16>>2]=c;H[j+28>>2]=a;H[j+24>>2]=a+12;e=j+16|0;a=0;e:{f:{switch(b-1|0){case 0:a=$k(60);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=$k(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=ek(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;H[a>>2]=2776;break e;case 3:a=$k(168);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=$k(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=ek(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=3540;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+144>>2]=0;H[a+160>>2]=0;H[a+152>>2]=0;H[a+156>>2]=0;break e;case 4:a=$k(104);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=$k(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=ek(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+8>>2];c=H[e+12>>2];H[a+84>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=3788;H[a+52>>2]=b;H[a+56>>2]=c;b=H[e+4>>2];H[a+88>>2]=H[e>>2];H[a+92>>2]=b;b=H[e+12>>2];H[a+96>>2]=H[e+8>>2];H[a+100>>2]=b;break e;case 5:break f;default:break e}}a=$k(144);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;g:{h:{c=H[d+28>>2]-H[d+24>>2]|0;if(c){if((c|0)<0){break h}b=$k(c);H[a+32>>2]=b;H[a+36>>2]=b;H[a+40>>2]=b+(c>>2<<2);f=H[d+24>>2];c=H[d+28>>2]-f|0;if((c|0)>0){b=ek(b,f,c)+c|0}H[a+36>>2]=b}H[a>>2]=3428;b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+60>>2]=4652;H[a>>2]=4024;b=H[e+4>>2];H[a+72>>2]=H[e>>2];H[a+76>>2]=b;b=H[e+12>>2];H[a+80>>2]=H[e+8>>2];H[a+84>>2]=b;H[a+104>>2]=1065353216;H[a+108>>2]=-1;H[a+96>>2]=-1;H[a+100>>2]=-1;H[a+88>>2]=1;H[a+92>>2]=-1;H[a+60>>2]=4260;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;break g}Fa();X()}break e}e=a;break d}e=H[c+56>>2];H[j+20>>2]=h;H[j+16>>2]=e;H[j+28>>2]=a;H[j+24>>2]=a+12;e=j+16|0;a=0;i:{j:{switch(b-1|0){case 0:a=$k(60);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=$k(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=ek(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;H[a>>2]=4680;break i;case 3:a=$k(168);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=$k(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=ek(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=5104;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+144>>2]=0;H[a+160>>2]=0;H[a+152>>2]=0;H[a+156>>2]=0;break i;case 4:a=$k(104);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;f=H[d+24>>2];b=H[d+28>>2]-f|0;if(b){if((b|0)<0){break c}c=$k(b);H[a+32>>2]=c;H[a+40>>2]=c+(b>>2<<2);m=a,n=ek(c,f,b)+b|0,H[m+36>>2]=n}b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+8>>2];c=H[e+12>>2];H[a+84>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a>>2]=5340;H[a+52>>2]=b;H[a+56>>2]=c;b=H[e+4>>2];H[a+88>>2]=H[e>>2];H[a+92>>2]=b;b=H[e+12>>2];H[a+96>>2]=H[e+8>>2];H[a+100>>2]=b;break i;case 5:break j;default:break i}}a=$k(144);H[a+4>>2]=f;H[a>>2]=3484;b=H[d+8>>2];c=H[d+12>>2];f=H[d+16>>2];g=H[d+20>>2];h=H[d>>2];i=H[d+4>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=f;H[a+28>>2]=g;H[a+16>>2]=b;H[a+20>>2]=c;H[a+8>>2]=h;H[a+12>>2]=i;k:{l:{c=H[d+28>>2]-H[d+24>>2]|0;if(c){if((c|0)<0){break l}b=$k(c);H[a+32>>2]=b;H[a+36>>2]=b;H[a+40>>2]=b+(c>>2<<2);f=H[d+24>>2];c=H[d+28>>2]-f|0;if((c|0)>0){b=ek(b,f,c)+c|0}H[a+36>>2]=b}H[a>>2]=5048;b=H[e+4>>2];H[a+44>>2]=H[e>>2];H[a+48>>2]=b;b=H[e+12>>2];H[a+52>>2]=H[e+8>>2];H[a+56>>2]=b;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+60>>2]=6148;H[a>>2]=5564;b=H[e+4>>2];H[a+72>>2]=H[e>>2];H[a+76>>2]=b;b=H[e+12>>2];H[a+80>>2]=H[e+8>>2];H[a+84>>2]=b;H[a+104>>2]=1065353216;H[a+108>>2]=-1;H[a+96>>2]=-1;H[a+100>>2]=-1;H[a+88>>2]=1;H[a+92>>2]=-1;H[a+60>>2]=5784;H[a+112>>2]=0;H[a+116>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;break k}Fa();X()}break i}e=a}da=j+32|0;break b}Fa();X()}if(e){break a}}e=$k(44);H[e+4>>2]=l;H[e>>2]=3484;a=H[d+8>>2];b=H[d+12>>2];c=H[d+16>>2];j=H[d+20>>2];f=H[d>>2];g=H[d+4>>2];H[e+40>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+24>>2]=c;H[e+28>>2]=j;H[e+16>>2]=a;H[e+20>>2]=b;H[e+8>>2]=f;H[e+12>>2]=g;m:{a=H[d+28>>2];d=H[d+24>>2];a=a-d|0;if(a){if((a|0)<0){break m}b=$k(a);H[e+32>>2]=b;H[e+40>>2]=b+(a>>2<<2);m=e,n=ek(b,d,a)+a|0,H[m+36>>2]=n}H[e>>2]=6176;break a}Fa();X()}a=H[k+32>>2];if(a){H[k+36>>2]=a;Wk(a)}da=k+48|0;return e|0}function kb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da-80|0;da=f;H[f+56>>2]=0;H[f+60>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+64>>2]=1065353216;c=H[a+80>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=$k(d);H[f+16>>2]=g;c=d+g|0;H[f+24>>2]=c;gk(g,0,d);H[f+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+d|0;d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[f+32>>2]=c;H[f+36>>2]=d;H[f+40>>2]=c;H[f+44>>2]=d;d=0;n=H[f+52>>2];c:{if(!n){break c}h=H[f+48>>2];m=J[f+38>>1]^(J[f+36>>1]^(J[f+34>>1]^(J[f+32>>1]^318)+239)+239)+239;c=m&n-1;e=Il(n);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(n>>>0)|0}l=h;h=c;c=H[l+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){o=J[f+32>>1];j=J[f+34>>1];i=J[f+36>>1];l=J[f+38>>1];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=n>>>0){e=(e>>>0)%(n>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=J[c+8>>1];g:{if((e|0)!=(o|0)){e=(e|0)==(o|0);break g}e=J[c+10>>1];if((e|0)!=(j|0)){e=(e|0)==(j|0);break g}e=J[c+12>>1];if((e|0)!=(i|0)){e=(e|0)==(i|0);break g}e=(l|0)==J[c+14>>1]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}i=n-1|0;n=J[f+32>>1];o=J[f+34>>1];j=J[f+36>>1];l=J[f+38>>1];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&i)){break c}break h}e=J[c+8>>1];if((e|0)!=(n|0)){if((e|0)!=(n|0)){break h}break e}e=J[c+10>>1];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=J[c+12>>1];if((e|0)!=(j|0)){if((e|0)!=(j|0)){break h}break e}if((l|0)==J[c+14>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+16>>2];break i}H[f+8>>2]=r;c=H[f+36>>2];H[f>>2]=H[f+32>>2];H[f+4>>2]=c;c=0;m=J[f+6>>1]^(J[f+4>>1]^(J[f+2>>1]^(J[f>>1]^318)+239)+239)+239;j:{k:{k=f+48|0;e=H[k+4>>2];if(!e){break k}d=Il(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}if(d>>>0<2){break l}j=J[f>>1];i=J[f+2>>1];l=J[f+4>>1];h=J[f+6>>1];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[g+8>>1];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=J[g+10>>1];if((d|0)!=(i|0)){d=(d|0)==(i|0);break m}d=J[g+12>>1];if((d|0)!=(l|0)){d=(d|0)==(l|0);break m}d=(h|0)==J[g+14>>1]}if(!d){continue}break}c=0;break j}c=m&e-1;g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}}l=e-1|0;o=J[f>>1];j=J[f+2>>1];i=J[f+4>>1];h=J[f+6>>1];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)&(d&l)!=(c|0)){break k}d=J[g+8>>1];n:{if((d|0)!=(o|0)){d=(d|0)==(o|0);break n}d=J[g+10>>1];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=J[g+12>>1];if((d|0)!=(i|0)){d=(d|0)==(i|0);break n}d=(h|0)==J[g+14>>1]}if(!d){continue}break}c=0;break j}g=$k(20);d=H[f+4>>2];H[g+8>>2]=H[f>>2];H[g+12>>2]=d;d=H[f+8>>2];H[g+4>>2]=m;H[g+16>>2]=d;H[g>>2]=0;p=O(H[k+12>>2]+1>>>0);u=L[k+16>>2];o:{if(p>O(u*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(p/u)));p:{if(p=O(0)){h=~~p>>>0;break p}h=0}d=d>>>0>>0?h:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Rk(d);e=H[k+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}h=e>>>0<3;p=O(U(O(O(K[k+12>>2])/L[k+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(h){break u}if(Il(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Rk(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}d=0;l=0;i=c;v:{w:{x:{y:{if(c){if(i>>>0>=1073741824){break y}c=$k(i<<2);e=H[k>>2];H[k>>2]=c;if(e){Wk(e)}H[k+4>>2]=i;if(i-1>>>0>=3){c=i&-4;e=0;while(1){h=d<<2;H[h+H[k>>2]>>2]=0;H[H[k>>2]+(h|4)>>2]=0;H[H[k>>2]+(h|8)>>2]=0;H[H[k>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=i&3;if(c){while(1){H[H[k>>2]+(d<<2)>>2]=0;d=d+1|0;l=l+1|0;if((c|0)!=(l|0)){continue}break}}e=H[k+8>>2];if(!e){break v}c=k+8|0;h=H[e+4>>2];d=Il(i);if(d>>>0<2){break x}h=h>>>0>=i>>>0?(h>>>0)%(i>>>0)|0:h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){l=H[c+4>>2];if(i>>>0<=l>>>0){l=(l>>>0)%(i>>>0)|0}z:{if((h|0)==(l|0)){e=c;break z}d=c;n=l<<2;j=n+H[k>>2]|0;if(!H[j>>2]){H[j>>2]=e;e=c;h=l;break z}while(1){l=d;d=H[d>>2];if(d){o=J[c+8>>1];j=J[d+8>>1];A:{if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=J[c+10>>1];j=J[d+10>>1];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=J[c+12>>1];j=J[d+12>>1];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}j=J[c+14>>1]==J[d+14>>1]}if(j){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[k>>2];H[k>>2]=0;if(c){Wk(c)}H[k+4>>2]=0;break v}Ua(1604);X()}h=i-1&h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=i-1|0;while(1){l=o&H[c+4>>2];B:{if((l|0)==(h|0)){e=c;break B}d=c;n=l<<2;i=n+H[k>>2]|0;if(H[i>>2]){while(1){l=d;d=H[d>>2];if(d){j=J[c+8>>1];i=J[d+8>>1];C:{if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=J[c+10>>1];i=J[d+10>>1];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=J[c+12>>1];i=J[d+12>>1];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}i=J[c+14>>1]==J[d+14>>1]}if(i){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c;break B}H[i>>2]=e;e=c;h=l}c=H[e>>2];if(c){continue}break}}}e=H[k+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[k>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[g>>2]=H[k+8>>2];H[k+8>>2]=g;H[c>>2]=k+8;c=H[g>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[k>>2]+(c<<2)>>2]=g;break D}H[g>>2]=H[d>>2];H[d>>2]=g}H[k+12>>2]=H[k+12>>2]+1;c=1}F[f+76|0]=c;H[f+72>>2]=g;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,r)|0,f+40|0,c);g=H[f+16>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break F}m=H[f+16>>2];b=b>>2;c=b>>>0>1?b:1;q=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){h=b<<2;c=h+l|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|4)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|8)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|12)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!q){break F}while(1){c=l+(b<<2)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((q|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);g=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+g}if(!c){break F}m=H[f+16>>2];e=0;b=0;if(c-1>>>0>=3){q=c&-4;while(1){h=b<<2;H[h+g>>2]=H[h+m>>2];d=h|4;H[d+g>>2]=H[d+m>>2];d=h|8;H[d+g>>2]=H[d+m>>2];d=h|12;H[d+g>>2]=H[d+m>>2];b=b+4|0;t=t+4|0;if((q|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+g>>2]=H[c+m>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=r}a=H[f+16>>2];if(a){Wk(a)}b=H[f+56>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[f+48>>2];H[f+48>>2]=0;if(a){Wk(a)}da=f+80|0;return r}Fa();X()}function bb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da-96|0;da=f;H[f+72>>2]=0;H[f+76>>2]=0;H[f+64>>2]=0;H[f+68>>2]=0;H[f+80>>2]=1065353216;c=H[a+80>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}e=c<<2;n=$k(e);H[f+16>>2]=n;c=e+n|0;H[f+24>>2]=c;gk(n,0,e);H[f+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+d|0;H[f+56>>2]=I[d+8|0]|I[d+9|0]<<8|(I[d+10|0]<<16|I[d+11|0]<<24);c=I[d+4|0]|I[d+5|0]<<8|(I[d+6|0]<<16|I[d+7|0]<<24);H[f+48>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);H[f+52>>2]=c;e=I[d+4|0]|I[d+5|0]<<8|(I[d+6|0]<<16|I[d+7|0]<<24);c=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);H[f+40>>2]=I[d+8|0]|I[d+9|0]<<8|(I[d+10|0]<<16|I[d+11|0]<<24);H[f+32>>2]=c;H[f+36>>2]=e;e=0;c=f- -64|0;o=H[c+4>>2];c:{if(!o){break c}h=H[c>>2];m=H[f+40>>2]^(H[f+36>>2]^(H[f+32>>2]^318)+239)+239;c=m&o-1;d=Il(o);d:{if(d>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(d>>>0>=2){k=H[f+40>>2];g=H[f+36>>2];l=H[f+32>>2];while(1){d=H[c+4>>2];f:{if((d|0)!=(m|0)){if(d>>>0>=o>>>0){d=(d>>>0)%(o>>>0)|0}if((d|0)!=(h|0)){break c}break f}d=H[c+8>>2];g:{if((d|0)!=(l|0)){d=(d|0)==(l|0);break g}d=H[c+12>>2];if((d|0)!=(g|0)){d=(d|0)==(g|0);break g}d=(k|0)==H[c+16>>2]}if(d){break e}}c=H[c>>2];if(c){continue}break}break c}l=o-1|0;k=H[f+40>>2];o=H[f+36>>2];g=H[f+32>>2];while(1){d=H[c+4>>2];h:{if((d|0)!=(m|0)){if((h|0)!=(d&l)){break c}break h}d=H[c+8>>2];if((d|0)!=(g|0)){if((d|0)!=(g|0)){break h}break e}d=H[c+12>>2];if((d|0)!=(o|0)){if((d|0)!=(o|0)){break h}break e}if((k|0)==H[c+16>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}e=c}i:{if(e){H[(s<<2)+n>>2]=H[e+20>>2];break i}H[f+8>>2]=H[f+40>>2];c=H[f+36>>2];H[f>>2]=H[f+32>>2];H[f+4>>2]=c;H[f+12>>2]=r;c=0;m=H[f+8>>2]^(H[f+4>>2]^(H[f>>2]^318)+239)+239;j:{k:{i=f- -64|0;g=H[i+4>>2];if(!g){break k}e=Il(g);l:{if(e>>>0>=2){c=m;if(g>>>0<=c>>>0){c=(m>>>0)%(g>>>0)|0}j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}if(e>>>0<2){break l}d=H[f+8>>2];k=H[f+4>>2];h=H[f>>2];while(1){j=H[j>>2];if(!j){break k}e=H[j+4>>2];if((e|0)!=(m|0)){if(e>>>0>=g>>>0){e=(e>>>0)%(g>>>0)|0}if((c|0)!=(e|0)){break k}}e=H[j+8>>2];m:{if((e|0)!=(h|0)){e=(e|0)==(h|0);break m}e=H[j+12>>2];if((e|0)!=(k|0)){e=(e|0)==(k|0);break m}e=(d|0)==H[j+16>>2]}if(!e){continue}break}c=0;break j}c=m&g-1;j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}}h=g-1|0;d=H[f+8>>2];l=H[f+4>>2];k=H[f>>2];while(1){j=H[j>>2];if(!j){break k}e=H[j+4>>2];if((e|0)!=(m|0)&(e&h)!=(c|0)){break k}e=H[j+8>>2];n:{if((e|0)!=(k|0)){e=(e|0)==(k|0);break n}e=H[j+12>>2];if((e|0)!=(l|0)){e=(e|0)==(l|0);break n}e=(d|0)==H[j+16>>2]}if(!e){continue}break}c=0;break j}j=$k(24);H[j+16>>2]=H[f+8>>2];e=H[f+4>>2];H[j+8>>2]=H[f>>2];H[j+12>>2]=e;e=H[f+12>>2];H[j>>2]=0;H[j+4>>2]=m;H[j+20>>2]=e;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(u>O(p*O(g>>>0))?0:g){break o}e=(g-1&g)!=0|g>>>0<3|g<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){d=~~p>>>0;break p}d=0}e=d>>>0>e>>>0?d:e;q:{if((e|0)==1){break q}if(!(e&e-1)){c=e;break q}c=Rk(e);g=H[i+4>>2]}r:{if(c>>>0<=g>>>0){if(c>>>0>=g>>>0){break r}d=g>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){e=~~p>>>0;break s}e=0}t:{u:{if(d){break u}if(Il(g)>>>0>1){break u}e=e>>>0<2?e:1<<32-Q(e-1|0);break t}e=Rk(e)}c=c>>>0>>0?e:c;if(g>>>0<=c>>>0){break r}}d=0;k=0;l=c;v:{w:{x:{y:{if(c){if(l>>>0>=1073741824){break y}c=$k(l<<2);e=H[i>>2];H[i>>2]=c;if(e){Wk(e)}H[i+4>>2]=l;if(l-1>>>0>=3){c=l&-4;e=0;while(1){h=d<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=l&3;if(c){while(1){H[H[i>>2]+(d<<2)>>2]=0;d=d+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}e=H[i+8>>2];if(!e){break v}c=i+8|0;h=H[e+4>>2];d=Il(l);if(d>>>0<2){break x}h=h>>>0>=l>>>0?(h>>>0)%(l>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){k=H[c+4>>2];if(l>>>0<=k>>>0){k=(k>>>0)%(l>>>0)|0}z:{if((h|0)==(k|0)){e=c;break z}d=c;n=k<<2;g=n+H[i>>2]|0;if(!H[g>>2]){H[g>>2]=e;e=c;h=k;break z}while(1){k=d;d=H[d>>2];if(d){o=H[c+8>>2];g=H[d+8>>2];A:{if((o|0)!=(g|0)){g=(g|0)==(o|0);break A}o=H[c+12>>2];g=H[d+12>>2];if((o|0)!=(g|0)){g=(g|0)==(o|0);break A}g=H[c+16>>2]==H[d+16>>2]}if(g){continue}}break}H[e>>2]=d;H[k>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){Wk(c)}H[i+4>>2]=0;break v}Ua(1604);X()}h=l-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=l-1|0;while(1){k=o&H[c+4>>2];B:{if((k|0)==(h|0)){e=c;break B}d=c;n=k<<2;l=n+H[i>>2]|0;if(H[l>>2]){while(1){k=d;d=H[d>>2];if(d){g=H[c+8>>2];l=H[d+8>>2];C:{if((g|0)!=(l|0)){g=(g|0)==(l|0);break C}g=H[c+12>>2];l=H[d+12>>2];if((g|0)!=(l|0)){g=(g|0)==(l|0);break C}g=H[c+16>>2]==H[d+16>>2]}if(g){continue}}break}H[e>>2]=d;H[k>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[l>>2]=e;e=c;h=k}c=H[e>>2];if(c){continue}break}}}g=H[i+4>>2];c=g-1|0;if(!(c&g)){c=c&m;break o}if(g>>>0>m>>>0){c=m;break o}c=(m>>>0)%(g>>>0)|0}c=H[i>>2]+(c<<2)|0;e=H[c>>2];D:{if(!e){H[j>>2]=H[i+8>>2];H[i+8>>2]=j;H[c>>2]=i+8;c=H[j>>2];if(!c){break D}c=H[c+4>>2];e=g-1|0;E:{if(!(e&g)){c=c&e;break E}if(c>>>0>>0){break E}c=(c>>>0)%(g>>>0)|0}H[H[i>>2]+(c<<2)>>2]=j;break D}H[j>>2]=H[e>>2];H[e>>2]=j}H[i+12>>2]=H[i+12>>2]+1;c=1}F[f+92|0]=c;H[f+88>>2]=j;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,r)|0,f+48|0,c);n=H[f+16>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[f+16>>2];b=b>>2;c=b>>>0>1?b:1;d=c&3;b=0;if(c-1>>>0>=3){e=c&-4;n=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;n=n+4|0;if((e|0)!=(n|0)){continue}break}}if(!d){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;t=t+1|0;if((d|0)!=(t|0)){continue}break}break F}F[a+84|0]=0;e=H[a+68>>2];b=H[a+72>>2]-e>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);e=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+e}if(!c){break F}m=H[f+16>>2];b=0;if(c-1>>>0>=3){q=c&-4;n=0;while(1){h=b<<2;H[h+e>>2]=H[h+m>>2];d=h|4;H[d+e>>2]=H[d+m>>2];d=h|8;H[d+e>>2]=H[d+m>>2];d=h|12;H[d+e>>2]=H[d+m>>2];b=b+4|0;n=n+4|0;if((q|0)!=(n|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+e>>2]=H[c+m>>2];b=b+1|0;t=t+1|0;if((d|0)!=(t|0)){continue}break}}H[a+80>>2]=r}a=H[f+16>>2];if(a){Wk(a)}b=H[f+72>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[f+64>>2];H[f+64>>2]=0;if(a){Wk(a)}da=f+96|0;return r}Fa();X()}function gb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);f=da+-64|0;da=f;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+48>>2]=1065353216;c=H[a+80>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;g=$k(d);H[f+8>>2]=g;c=d+g|0;H[f+16>>2]=c;gk(g,0,d);H[f+12>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+e|0;c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[f+24>>2]=c;H[f+28>>2]=c;d=0;n=H[f+36>>2];c:{if(!n){break c}h=H[f+32>>2];m=I[f+27|0]^(I[f+26|0]^(I[f+25|0]^(I[f+24|0]^318)+239)+239)+239;c=m&n-1;e=Il(n);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(n>>>0)|0}l=h;h=c;c=H[l+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){o=I[f+24|0];j=I[f+25|0];i=I[f+26|0];l=I[f+27|0];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=n>>>0){e=(e>>>0)%(n>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=I[c+8|0];g:{if((e|0)!=(o|0)){e=(e|0)==(o|0);break g}e=I[c+9|0];if((e|0)!=(j|0)){e=(e|0)==(j|0);break g}e=I[c+10|0];if((e|0)!=(i|0)){e=(e|0)==(i|0);break g}e=(l|0)==I[c+11|0]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}i=n-1|0;n=I[f+24|0];o=I[f+25|0];j=I[f+26|0];l=I[f+27|0];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&i)){break c}break h}e=I[c+8|0];if((e|0)!=(n|0)){if((e|0)!=(n|0)){break h}break e}e=I[c+9|0];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=I[c+10|0];if((e|0)!=(j|0)){if((e|0)!=(j|0)){break h}break e}if((l|0)==I[c+11|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+g>>2]=H[d+12>>2];break i}H[f+4>>2]=r;H[f>>2]=H[f+24>>2];c=0;m=I[f+3|0]^(I[f+2|0]^(I[f+1|0]^(I[f|0]^318)+239)+239)+239;j:{k:{k=f+32|0;e=H[k+4>>2];if(!e){break k}d=Il(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}if(d>>>0<2){break l}j=I[f|0];i=I[f+1|0];l=I[f+2|0];h=I[f+3|0];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[g+8|0];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=I[g+9|0];if((d|0)!=(i|0)){d=(d|0)==(i|0);break m}d=I[g+10|0];if((d|0)!=(l|0)){d=(d|0)==(l|0);break m}d=(h|0)==I[g+11|0]}if(!d){continue}break}c=0;break j}c=m&e-1;g=H[H[k>>2]+(c<<2)>>2];if(!g){break k}}l=e-1|0;o=I[f|0];j=I[f+1|0];i=I[f+2|0];h=I[f+3|0];while(1){g=H[g>>2];if(!g){break k}d=H[g+4>>2];if((d|0)!=(m|0)&(d&l)!=(c|0)){break k}d=I[g+8|0];n:{if((d|0)!=(o|0)){d=(d|0)==(o|0);break n}d=I[g+9|0];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=I[g+10|0];if((d|0)!=(i|0)){d=(d|0)==(i|0);break n}d=(h|0)==I[g+11|0]}if(!d){continue}break}c=0;break j}g=$k(16);H[g+8>>2]=H[f>>2];d=H[f+4>>2];H[g+4>>2]=m;H[g+12>>2]=d;H[g>>2]=0;p=O(H[k+12>>2]+1>>>0);u=L[k+16>>2];o:{if(p>O(u*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(p/u)));p:{if(p=O(0)){h=~~p>>>0;break p}h=0}d=d>>>0>>0?h:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Rk(d);e=H[k+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}h=e>>>0<3;p=O(U(O(O(K[k+12>>2])/L[k+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(h){break u}if(Il(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Rk(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}d=0;l=0;i=c;v:{w:{x:{y:{if(c){if(i>>>0>=1073741824){break y}c=$k(i<<2);e=H[k>>2];H[k>>2]=c;if(e){Wk(e)}H[k+4>>2]=i;if(i-1>>>0>=3){c=i&-4;e=0;while(1){h=d<<2;H[h+H[k>>2]>>2]=0;H[H[k>>2]+(h|4)>>2]=0;H[H[k>>2]+(h|8)>>2]=0;H[H[k>>2]+(h|12)>>2]=0;d=d+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=i&3;if(c){while(1){H[H[k>>2]+(d<<2)>>2]=0;d=d+1|0;l=l+1|0;if((c|0)!=(l|0)){continue}break}}e=H[k+8>>2];if(!e){break v}c=k+8|0;h=H[e+4>>2];d=Il(i);if(d>>>0<2){break x}h=h>>>0>=i>>>0?(h>>>0)%(i>>>0)|0:h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}if(d>>>0<=1){break w}while(1){l=H[c+4>>2];if(i>>>0<=l>>>0){l=(l>>>0)%(i>>>0)|0}z:{if((h|0)==(l|0)){e=c;break z}d=c;n=l<<2;j=n+H[k>>2]|0;if(!H[j>>2]){H[j>>2]=e;e=c;h=l;break z}while(1){l=d;d=H[d>>2];if(d){o=I[c+8|0];j=I[d+8|0];A:{if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=I[c+9|0];j=I[d+9|0];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}o=I[c+10|0];j=I[d+10|0];if((o|0)!=(j|0)){j=(j|0)==(o|0);break A}j=I[c+11|0]==I[d+11|0]}if(j){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break v}c=H[k>>2];H[k>>2]=0;if(c){Wk(c)}H[k+4>>2]=0;break v}Ua(1604);X()}h=i-1&h;H[H[k>>2]+(h<<2)>>2]=c;c=H[e>>2];if(!c){break v}}o=i-1|0;while(1){l=o&H[c+4>>2];B:{if((l|0)==(h|0)){e=c;break B}d=c;n=l<<2;i=n+H[k>>2]|0;if(H[i>>2]){while(1){l=d;d=H[d>>2];if(d){j=I[c+8|0];i=I[d+8|0];C:{if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=I[c+9|0];i=I[d+9|0];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}j=I[c+10|0];i=I[d+10|0];if((j|0)!=(i|0)){i=(i|0)==(j|0);break C}i=I[c+11|0]==I[d+11|0]}if(i){continue}}break}H[e>>2]=d;H[l>>2]=H[H[n+H[k>>2]>>2]>>2];H[H[n+H[k>>2]>>2]>>2]=c;break B}H[i>>2]=e;e=c;h=l}c=H[e>>2];if(c){continue}break}}}e=H[k+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[k>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[g>>2]=H[k+8>>2];H[k+8>>2]=g;H[c>>2]=k+8;c=H[g>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[k>>2]+(c<<2)>>2]=g;break D}H[g>>2]=H[d>>2];H[d>>2]=g}H[k+12>>2]=H[k+12>>2]+1;c=1}F[f+60|0]=c;H[f+56>>2]=g;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,r)|0,f+28|0,c);g=H[f+8>>2];H[g+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break F}m=H[f+8>>2];b=b>>2;c=b>>>0>1?b:1;q=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){h=b<<2;c=h+l|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|4)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|8)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];c=l+(h|12)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!q){break F}while(1){c=l+(b<<2)|0;H[c>>2]=H[m+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((q|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);g=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+g}if(!c){break F}m=H[f+8>>2];e=0;b=0;if(c-1>>>0>=3){q=c&-4;while(1){h=b<<2;H[h+g>>2]=H[h+m>>2];d=h|4;H[d+g>>2]=H[d+m>>2];d=h|8;H[d+g>>2]=H[d+m>>2];d=h|12;H[d+g>>2]=H[d+m>>2];b=b+4|0;t=t+4|0;if((q|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+g>>2]=H[c+m>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=r}a=H[f+8>>2];if(a){Wk(a)}b=H[f+40>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[f+32>>2];H[f+32>>2]=0;if(a){Wk(a)}da=f- -64|0;return r}Fa();X()}function Pb(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,O=0;r=da-32|0;da=r;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;n=H[e+20>>2];if(!H[e+16>>2]&(n|0)<=0|(n|0)<0){d=a+4|0;ya(e,H[e+4>>2],a,d);n=H[e+20>>2];if(!H[e+16>>2]&(n|0)<=0|(n|0)<0){ya(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){D=a+12|0;xe(D);E=a+44|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];F=a- -64|0;d=F;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];G=a+84|0;d=G;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[r+24>>2]=H[b+8>>2];d=H[b+4>>2];H[r+16>>2]=H[b>>2];H[r+20>>2]=d;H[r+8>>2]=H[c+8>>2];b=H[c+4>>2];H[r>>2]=H[c>>2];H[r+4>>2]=b;b=0;f=da-32|0;da=f;d=a;h=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(h){if(h>>>0>=1073741824){break b}a=h<<2;b=$k(a);H[f+8>>2]=b;k=a+b|0;H[f+16>>2]=k;gk(b,0,a);H[f+12>>2]=k}a=H[d+140>>2];c=H[a>>2];if(c){H[a+4>>2]=c;Wk(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=H[d+8>>2];k=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=k;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(h){if(h>>>0>=1073741824){break c}c=h<<2;a=$k(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;gk(a,0,c);H[f+12>>2]=b}c=H[d+152>>2];n=H[c>>2];if(n){H[c+4>>2]=n;Wk(n);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];z=H[r+4>>2];A=H[r+8>>2];x=H[r+20>>2];v=H[r+24>>2];n=H[r>>2];c=H[r+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;_b(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;b=(a>>>0)/113|0;a=H[H[f+12>>2]+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=n-c;H[a+24>>2]=0;H[a+12>>2]=n;H[a+4>>2]=x;H[a+8>>2]=v;H[a>>2]=c;H[a+16>>2]=z;H[a+20>>2]=A;a=H[f+28>>2];h=a+1|0;H[f+28>>2]=h;if(a>>>0<=h>>>0){J=d+44|0;m=d+12|0;L=d+84|0;M=v&-4;I=v&3;O=v-1>>>0<3;while(1){q=H[f+12>>2];g=H[f+24>>2];k=h-1|0;a=g+k|0;b=(a>>>0)/113|0;a=H[q+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;C=H[a+32>>2];b=H[a+24>>2];n=H[a+12>>2];c=H[a>>2];H[f+28>>2]=k;a=H[f+16>>2];k=a-q|0;if(((k?N(k>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){Wk(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}h=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;k=h<<2;B=N(C,12);q=B+H[d+152>>2]|0;b=H[d>>2]-H[k+H[q>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{p=n-c|0;if(p>>>0<=2){g=H[d+128>>2];H[g>>2]=h;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}g=H[d+140>>2];a=g+B|0;j=g;g=B+12|0;Ma(j+g|0,H[a>>2],H[a+4>>2]);a=H[g+H[d+140>>2]>>2]+k|0;q=H[a>>2]+(1<>2]=q;a=c;h:{if((n|0)==(a|0)){break h}o=H[x+24>>2];b=c;a=n;if(!v){if(q>>>0>K[k+o>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(q>>>0<=K[(H[z+24>>2]+k|0)+(N(a,A)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){s=o+(N(b,v)<<2)|0;if(q>>>0>K[s+k>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}i=H[z+24>>2]+(N(a,A)<<2)|0;if(q>>>0<=K[i+k>>2]){continue}break}t=0;g=0;u=0;if(!O){while(1){l=g<<2;j=l+s|0;w=H[j>>2];y=j;j=i+l|0;H[y>>2]=H[j>>2];H[j>>2]=w;j=l|4;w=j+s|0;y=H[w>>2];j=i+j|0;H[w>>2]=H[j>>2];H[j>>2]=y;j=l|8;w=j+s|0;y=H[w>>2];j=i+j|0;H[w>>2]=H[j>>2];H[j>>2]=y;l=l|12;j=l+s|0;w=H[j>>2];l=i+l|0;H[j>>2]=H[l>>2];H[l>>2]=w;g=g+4|0;u=u+4|0;if((M|0)!=(u|0)){continue}break}}if(I){while(1){l=g<<2;u=l+s|0;j=H[u>>2];l=i+l|0;H[u>>2]=H[l>>2];H[l>>2]=j;g=g+1|0;t=t+1|0;if((I|0)!=(t|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}q=a-c|0;s=n-a|0;if((q|0)!=(s|0)){$b(L,q>>>0>>0)}b=H[m>>2];g=H[b+12>>2];j=H[b+8>>2];i=(p>>>1|0)-(q>>>0>>0?q:s)|0;i=i<<8&16711680|i<<24|(i>>>8&65280|i>>>24);i=i>>>4&252645135|(i&252645135)<<4;i=i>>>2&858993459|(i&858993459)<<2;t=i>>>1&1431655765|(i&1431655765)<<1;i=Q(p)^31;o=32-i|0;p=t>>>o|0;t=Il(p);l=j+t|0;H[b+8>>2]=l;H[b+12>>2]=l>>>0>>0?g+1|0:g;g=i-t|0;t=g;l=g+H[b>>2]|0;g=H[b+4>>2]+(g>>31)|0;H[b>>2]=l;H[b+4>>2]=l>>>0>>0?g+1|0:g;i:{j:{k:{l:{m:{b=H[m+28>>2];t=32-b|0;n:{if((t|0)>=(i|0)){g=b+i|0;H[m+28>>2]=g;i=-1>>>o<>2]&(i^-1)|i&p<>2]=l;if((g|0)!=32){break i}b=H[m+16>>2];if((b|0)!=H[m+20>>2]){H[b>>2]=l;H[m+16>>2]=b+4;b=0;g=0;break n}i=H[m+12>>2];g=b-i|0;o=g>>2;b=o+1|0;if(b>>>0>=1073741824){break m}p=g>>1;p=g>>>0<2147483644?b>>>0>p>>>0?b:p:1073741823;if(p){if(p>>>0>=1073741824){break l}b=$k(p<<2)}else{b=0}o=b+(o<<2)|0;H[o>>2]=l;if((g|0)>0){ek(b,i,g)}H[m+20>>2]=b+(p<<2);H[m+16>>2]=o+4;H[m+12>>2]=b;b=0;if(!i){g=0;break n}Wk(i);g=0;break n}u=H[m+24>>2]&(-1<>2]=u;b=H[m+16>>2];o:{if((b|0)!=H[m+20>>2]){H[b>>2]=u;H[m+16>>2]=b+4;break o}l=H[m+12>>2];g=b-l|0;j=g>>2;b=j+1|0;if(b>>>0>=1073741824){break k}o=g>>1;o=g>>>0<2147483644?b>>>0>o>>>0?b:o:1073741823;if(o){if(o>>>0>=1073741824){break j}b=$k(o<<2)}else{b=0}j=b+(j<<2)|0;H[j>>2]=u;if((g|0)>0){ek(b,l,g)}H[m+20>>2]=b+(o<<2);H[m+16>>2]=j+4;H[m+12>>2]=b;if(!l){break o}Wk(l)}g=i-t|0;b=-1>>>32-g&p>>>t}H[m+28>>2]=g;H[m+24>>2]=b;break i}Fa();X()}Ua(1604);X()}Fa();X()}Ua(1604);X()}j=k;b=H[d+152>>2];g=b+B|0;k=H[g>>2];i=j+k|0;H[i>>2]=H[i>>2]+1;i=C+1|0;Ma(b+N(i,12)|0,k,H[g+4>>2]);if((a|0)!=(c|0)){k=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];b=H[f+16>>2]-g|0;if((k|0)==((b?N(b>>2,113)-1|0:0)|0)){_b(f+8|0);k=H[f+24>>2]+H[f+28>>2]|0;g=H[f+12>>2]}b=(k>>>0)/113|0;b=H[g+(b<<2)>>2]+N(k-N(b,113)|0,36)|0;H[b+32>>2]=C;H[b+28>>2]=q;H[b+24>>2]=h;H[b+12>>2]=a;H[b+4>>2]=x;H[b+8>>2]=v;H[b>>2]=c;H[b+20>>2]=v;H[b+16>>2]=x;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(n|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;k=H[f+12>>2];g=H[f+16>>2]-k|0;if((b|0)==((g?N(g>>2,113)-1|0:0)|0)){_b(f+8|0);k=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}g=(b>>>0)/113|0;b=H[(g<<2)+k>>2]+N(b-N(g,113)|0,36)|0;H[b+32>>2]=i;H[b+28>>2]=s;H[b+24>>2]=h;H[b+12>>2]=n;H[b+8>>2]=v;H[b+4>>2]=x;H[b>>2]=a;H[b+16>>2]=z;H[b+20>>2]=A;h=H[f+28>>2]+1|0;H[f+28>>2]=h;break d}while(1){h=(a-1|0)==(h|0)?0:h+1|0;H[g+(b<<2)>>2]=h;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}if(!p|!a){break e}g=0;b=1;while(1){h=0;p:{if(!b){b=0;break p}k=H[x+24>>2]+(N(H[x+4>>2],c+g|0)<<2)|0;while(1){b=H[H[d+128>>2]+(h<<2)>>2]<<2;s=H[d>>2]-H[b+H[q>>2]>>2]|0;if(s){ac(J,s,H[b+k>>2]);a=H[d+8>>2]}b=a;h=h+1|0;if(b>>>0>h>>>0){continue}break}}g=g+1|0;if((p|0)!=(g|0)){continue}break}}h=H[f+28>>2]}if(h){continue}break}}H[r+16>>2]=c;H[r>>2]=n;H[f+28>>2]=0;a=H[f+16>>2];h=H[f+12>>2];c=a-h|0;if(c>>>0>=9){while(1){Wk(H[h>>2]);h=H[f+12>>2]+4|0;H[f+12>>2]=h;a=H[f+16>>2];c=a-h|0;if(c>>>0>8){continue}break}}b=56;q:{switch((c>>>2|0)-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break q}}r:{if((a|0)==(h|0)){break r}while(1){Wk(H[h>>2]);h=h+4|0;if((h|0)!=(a|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break r}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){Wk(a)}da=f+32|0;break a}Fa();X()}Fa();X()}ze(D,e);ue(E,e);ue(F,e);ue(G,e)}da=r+32|0;return 1}function jb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=O(0);g=da-80|0;da=g;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+64>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=$k(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;gk(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+e|0;G[g+44>>1]=I[d+4|0]|I[d+5|0]<<8;H[g+40>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);c=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);G[g+36>>1]=I[d+4|0]|I[d+5|0]<<8;H[g+32>>2]=c;d=0;o=H[g+52>>2];c:{if(!o){break c}h=H[g+48>>2];m=J[g+36>>1]^(J[g+34>>1]^(J[g+32>>1]^318)+239)+239;c=m&o+262143;e=Il(o);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){f=J[g+32>>1];k=J[g+34>>1];j=J[g+36>>1];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=o>>>0){e=(e>>>0)%(o>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=J[c+8>>1];g:{if((e|0)!=(f|0)){e=(e|0)==(f|0);break g}e=J[c+10>>1];if((e|0)!=(k|0)){e=(e|0)==(k|0);break g}e=(j|0)==J[c+12>>1]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}k=o-1|0;o=J[g+32>>1];f=J[g+34>>1];j=J[g+36>>1];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&k)){break c}break h}e=J[c+8>>1];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=J[c+10>>1];if((e|0)!=(f|0)){if((e|0)!=(f|0)){break h}break e}if((j|0)==J[c+12>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+16>>2];break i}G[g+4>>1]=J[g+36>>1];H[g>>2]=H[g+32>>2];H[g+8>>2]=r;c=0;m=J[g+4>>1]^(J[g+2>>1]^(J[g>>1]^318)+239)+239;j:{k:{i=g+48|0;f=H[i+4>>2];if(!f){break k}d=Il(f);l:{if(d>>>0>=2){c=m;if(f>>>0<=c>>>0){c=(m>>>0)%(f>>>0)|0}l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}if(d>>>0<2){break l}j=J[g>>1];h=J[g+2>>1];e=J[g+4>>1];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)){if(d>>>0>=f>>>0){d=(d>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[l+8>>1];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=J[l+10>>1];if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(e|0)==J[l+12>>1]}if(!d){continue}break}c=0;break j}c=m&f+262143;l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}}h=f-1|0;k=J[g>>1];j=J[g+2>>1];e=J[g+4>>1];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=J[l+8>>1];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=J[l+10>>1];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(e|0)==J[l+12>>1]}if(!d){continue}break}c=0;break j}l=$k(20);G[l+12>>1]=J[g+4>>1];H[l+8>>2]=H[g>>2];d=H[g+8>>2];H[l>>2]=0;H[l+4>>2]=m;H[l+16>>2]=d;t=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(t>O(p*O(f>>>0))?0:f){break o}d=(f-1&f)!=0|f>>>0<3|f<<1;c=2;p=O(U(O(t/p)));p:{if(p=O(0)){e=~~p>>>0;break p}e=0}d=d>>>0>>0?e:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Rk(d);f=H[i+4>>2]}r:{if(c>>>0<=f>>>0){if(c>>>0>=f>>>0){break r}e=f>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(e){break u}if(Il(f)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Rk(d)}c=c>>>0>>0?d:c;if(f>>>0<=c>>>0){break r}}e=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=$k(k<<2);d=H[i>>2];H[i>>2]=c;if(d){Wk(d)}H[i+4>>2]=k;if(k-1>>>0>=3){c=k&-4;d=0;while(1){h=e<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;e=e+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[i>>2]+(e<<2)>>2]=0;e=e+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];e=Il(k);if(e>>>0<2){break x}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(e>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}e=c;n=j<<2;f=n+H[i>>2]|0;if(!H[f>>2]){H[f>>2]=d;d=c;h=j;break z}while(1){j=e;e=H[e>>2];if(e){o=J[c+8>>1];f=J[e+8>>1];A:{if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}o=J[c+10>>1];f=J[e+10>>1];if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}f=J[c+12>>1]==J[e+12>>1]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){Wk(c)}H[i+4>>2]=0;break v}Ua(1604);X()}h=k-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}o=k-1|0;while(1){j=o&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}e=c;n=j<<2;k=n+H[i>>2]|0;if(H[k>>2]){while(1){j=e;e=H[e>>2];if(e){f=J[c+8>>1];k=J[e+8>>1];C:{if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=J[c+10>>1];k=J[e+10>>1];if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=J[c+12>>1]==J[e+12>>1]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[k>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}f=H[i+4>>2];c=f-1|0;if(!(c&f)){c=c&m;break o}if(f>>>0>m>>>0){c=m;break o}c=(m>>>0)%(f>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[l>>2]=H[i+8>>2];H[i+8>>2]=l;H[c>>2]=i+8;c=H[l>>2];if(!c){break D}c=H[c+4>>2];d=f-1|0;E:{if(!(d&f)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=l;break D}H[l>>2]=H[d>>2];H[d>>2]=l}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+76|0]=c;H[g+72>>2]=l;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,r)|0,g+40|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;e=c&3;n=0;b=0;if(c-1>>>0>=3){d=c&-4;f=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;f=f+4|0;if((d|0)!=(f|0)){continue}break}}if(!e){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}m=H[g+16>>2];n=0;b=0;if(c-1>>>0>=3){q=c&-4;f=0;while(1){h=b<<2;H[h+d>>2]=H[h+m>>2];e=h|4;H[e+d>>2]=H[e+m>>2];e=h|8;H[e+d>>2]=H[e+m>>2];e=h|12;H[e+d>>2]=H[e+m>>2];b=b+4|0;f=f+4|0;if((q|0)!=(f|0)){continue}break}}e=c&3;if(!e){break F}while(1){c=b<<2;H[c+d>>2]=H[c+m>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}}H[a+80>>2]=r}a=H[g+16>>2];if(a){Wk(a)}b=H[g+56>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[g+48>>2];H[g+48>>2]=0;if(a){Wk(a)}da=g+80|0;return r}Fa();X()}function fb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=$k(d);H[g+8>>2]=n;c=d+n|0;H[g+16>>2]=c;gk(n,0,d);H[g+12>>2]=c;while(1){c=H[H[b>>2]>>2];e=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;d=c+e|0;F[g+30|0]=I[d+2|0];G[g+28>>1]=I[d|0]|I[d+1|0]<<8;c=I[d|0]|I[d+1|0]<<8;F[g+26|0]=I[d+2|0];G[g+24>>1]=c;d=0;o=H[g+36>>2];c:{if(!o){break c}h=H[g+32>>2];m=I[g+26|0]^(I[g+25|0]^(I[g+24|0]^318)+239)+239;c=m&o-1;e=Il(o);d:{if(e>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(o>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(e>>>0>=2){f=I[g+24|0];k=I[g+25|0];j=I[g+26|0];while(1){e=H[c+4>>2];f:{if((e|0)!=(m|0)){if(e>>>0>=o>>>0){e=(e>>>0)%(o>>>0)|0}if((e|0)!=(h|0)){break c}break f}e=I[c+8|0];g:{if((e|0)!=(f|0)){e=(e|0)==(f|0);break g}e=I[c+9|0];if((e|0)!=(k|0)){e=(e|0)==(k|0);break g}e=(j|0)==I[c+10|0]}if(e){break e}}c=H[c>>2];if(c){continue}break}break c}k=o-1|0;o=I[g+24|0];f=I[g+25|0];j=I[g+26|0];while(1){e=H[c+4>>2];h:{if((e|0)!=(m|0)){if((h|0)!=(e&k)){break c}break h}e=I[c+8|0];if((e|0)!=(o|0)){if((e|0)!=(o|0)){break h}break e}e=I[c+9|0];if((e|0)!=(f|0)){if((e|0)!=(f|0)){break h}break e}if((j|0)==I[c+10|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}F[g+2|0]=I[g+26|0];G[g>>1]=J[g+24>>1];H[g+4>>2]=r;c=0;m=I[g+2|0]^(I[g+1|0]^(I[g|0]^318)+239)+239;j:{k:{i=g+32|0;f=H[i+4>>2];if(!f){break k}d=Il(f);l:{if(d>>>0>=2){c=m;if(f>>>0<=c>>>0){c=(m>>>0)%(f>>>0)|0}l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}if(d>>>0<2){break l}j=I[g|0];h=I[g+1|0];e=I[g+2|0];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)){if(d>>>0>=f>>>0){d=(d>>>0)%(f>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[l+8|0];m:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break m}d=I[l+9|0];if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(e|0)==I[l+10|0]}if(!d){continue}break}c=0;break j}c=m&f-1;l=H[H[i>>2]+(c<<2)>>2];if(!l){break k}}h=f-1|0;k=I[g|0];j=I[g+1|0];e=I[g+2|0];while(1){l=H[l>>2];if(!l){break k}d=H[l+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=I[l+8|0];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=I[l+9|0];if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(e|0)==I[l+10|0]}if(!d){continue}break}c=0;break j}l=$k(16);F[l+10|0]=I[g+2|0];G[l+8>>1]=J[g>>1];d=H[g+4>>2];H[l>>2]=0;H[l+4>>2]=m;H[l+12>>2]=d;t=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(t>O(p*O(f>>>0))?0:f){break o}d=(f-1&f)!=0|f>>>0<3|f<<1;c=2;p=O(U(O(t/p)));p:{if(p=O(0)){e=~~p>>>0;break p}e=0}d=d>>>0>>0?e:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Rk(d);f=H[i+4>>2]}r:{if(c>>>0<=f>>>0){if(c>>>0>=f>>>0){break r}e=f>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(e){break u}if(Il(f)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Rk(d)}c=c>>>0>>0?d:c;if(f>>>0<=c>>>0){break r}}e=0;j=0;k=c;v:{w:{x:{y:{if(c){if(k>>>0>=1073741824){break y}c=$k(k<<2);d=H[i>>2];H[i>>2]=c;if(d){Wk(d)}H[i+4>>2]=k;if(k-1>>>0>=3){c=k&-4;d=0;while(1){h=e<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;e=e+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[i>>2]+(e<<2)>>2]=0;e=e+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];e=Il(k);if(e>>>0<2){break x}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(e>>>0<=1){break w}while(1){j=H[c+4>>2];if(k>>>0<=j>>>0){j=(j>>>0)%(k>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}e=c;n=j<<2;f=n+H[i>>2]|0;if(!H[f>>2]){H[f>>2]=d;d=c;h=j;break z}while(1){j=e;e=H[e>>2];if(e){o=I[c+8|0];f=I[e+8|0];A:{if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}o=I[c+9|0];f=I[e+9|0];if((o|0)!=(f|0)){f=(f|0)==(o|0);break A}f=I[c+10|0]==I[e+10|0]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){Wk(c)}H[i+4>>2]=0;break v}Ua(1604);X()}h=k-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}o=k-1|0;while(1){j=o&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}e=c;n=j<<2;k=n+H[i>>2]|0;if(H[k>>2]){while(1){j=e;e=H[e>>2];if(e){f=I[c+8|0];k=I[e+8|0];C:{if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=I[c+9|0];k=I[e+9|0];if((f|0)!=(k|0)){f=(f|0)==(k|0);break C}f=I[c+10|0]==I[e+10|0]}if(f){continue}}break}H[d>>2]=e;H[j>>2]=H[H[n+H[i>>2]>>2]>>2];H[H[n+H[i>>2]>>2]>>2]=c;break B}H[k>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}f=H[i+4>>2];c=f-1|0;if(!(c&f)){c=c&m;break o}if(f>>>0>m>>>0){c=m;break o}c=(m>>>0)%(f>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[l>>2]=H[i+8>>2];H[i+8>>2]=l;H[c>>2]=i+8;c=H[l>>2];if(!c){break D}c=H[c+4>>2];d=f-1|0;E:{if(!(d&f)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(f>>>0)|0}H[H[i>>2]+(c<<2)>>2]=l;break D}H[l>>2]=H[d>>2];H[d>>2]=l}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=l;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,r)|0,g+28|0,c);n=H[g+8>>2];H[n+(s<<2)>>2]=r;r=r+1|0}c=s+1|0;q=c?q:q+1|0;s=c;c=H[a+80>>2];if(!q&c>>>0>s>>>0){continue}break}if((c|0)==(r|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+8>>2];b=b>>2;c=b>>>0>1?b:1;e=c&3;n=0;b=0;if(c-1>>>0>=3){d=c&-4;f=0;while(1){q=b<<2;c=q+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(q|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;f=f+4|0;if((d|0)!=(f|0)){continue}break}}if(!e){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}break F}F[a+84|0]=0;d=H[a+68>>2];b=H[a+72>>2]-d>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);d=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+d}if(!c){break F}m=H[g+8>>2];n=0;b=0;if(c-1>>>0>=3){q=c&-4;f=0;while(1){h=b<<2;H[h+d>>2]=H[h+m>>2];e=h|4;H[e+d>>2]=H[e+m>>2];e=h|8;H[e+d>>2]=H[e+m>>2];e=h|12;H[e+d>>2]=H[e+m>>2];b=b+4|0;f=f+4|0;if((q|0)!=(f|0)){continue}break}}e=c&3;if(!e){break F}while(1){c=b<<2;H[c+d>>2]=H[c+m>>2];b=b+1|0;n=n+1|0;if((e|0)!=(n|0)){continue}break}}H[a+80>>2]=r}a=H[g+8>>2];if(a){Wk(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){Wk(a)}da=g- -64|0;return r}Fa();X()}function ab(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da-80|0;da=g;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+64>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=$k(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;gk(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];d=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+d|0;d=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[g+32>>2]=c;H[g+36>>2]=d;H[g+40>>2]=c;H[g+44>>2]=d;d=0;l=H[g+52>>2];c:{if(!l){break c}h=H[g+48>>2];m=H[g+36>>2]^(H[g+32>>2]^318)+239;c=m&l-1;f=Il(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}k=h;h=c;c=H[k+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){k=H[g+36>>2];e=H[g+32>>2];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=H[c+8>>2];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(k|0)==H[c+12>>2]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;k=H[g+36>>2];l=H[g+32>>2];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=H[c+8>>2];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((k|0)==H[c+12>>2]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+16>>2];break i}H[g+8>>2]=q;c=H[g+36>>2];H[g>>2]=H[g+32>>2];H[g+4>>2]=c;c=0;m=H[g+4>>2]^(H[g>>2]^318)+239;j:{k:{i=g+48|0;e=H[i+4>>2];if(!e){break k}d=Il(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}if(d>>>0<2){break l}f=H[g+4>>2];h=H[g>>2];while(1){j=H[j>>2];if(!j){break k}d=H[j+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=H[j+8>>2];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==H[j+12>>2]}if(!d){continue}break}c=0;break j}c=m&e-1;j=H[H[i>>2]+(c<<2)>>2];if(!j){break k}}h=e-1|0;f=H[g+4>>2];k=H[g>>2];while(1){j=H[j>>2];if(!j){break k}d=H[j+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=H[j+8>>2];n:{if((d|0)!=(k|0)){d=(d|0)==(k|0);break n}d=(f|0)==H[j+12>>2]}if(!d){continue}break}c=0;break j}j=$k(20);d=H[g+4>>2];H[j+8>>2]=H[g>>2];H[j+12>>2]=d;d=H[g+8>>2];H[j+4>>2]=m;H[j+16>>2]=d;H[j>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(u>O(p*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Rk(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Il(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Rk(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;k=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=$k(e<<2);d=H[i>>2];H[i>>2]=c;if(d){Wk(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Il(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){k=H[c+4>>2];if(e>>>0<=k>>>0){k=(k>>>0)%(e>>>0)|0}z:{if((h|0)==(k|0)){d=c;break z}f=c;r=k<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=k;break z}while(1){k=f;f=H[f>>2];if(f){n=H[c+8>>2];l=H[f+8>>2];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=H[c+12>>2]==H[f+12>>2]}if(l){continue}}break}H[d>>2]=f;H[k>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){Wk(c)}H[i+4>>2]=0;break v}Ua(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){k=n&H[c+4>>2];B:{if((k|0)==(h|0)){d=c;break B}f=c;r=k<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){k=f;f=H[f>>2];if(f){l=H[c+8>>2];e=H[f+8>>2];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=H[c+12>>2]==H[f+12>>2]}if(e){continue}}break}H[d>>2]=f;H[k>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=k}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[j>>2]=H[i+8>>2];H[i+8>>2]=j;H[c>>2]=i+8;c=H[j>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=j;break D}H[j>>2]=H[d>>2];H[d>>2]=j}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+76|0]=c;H[g+72>>2]=j;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,q)|0,g+40|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+16>>2];if(a){Wk(a)}b=H[g+56>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[g+48>>2];H[g+48>>2]=0;if(a){Wk(a)}da=g+80|0;return q}Fa();X()}function ib(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=$k(d);H[g+8>>2]=n;c=d+n|0;H[g+16>>2]=c;gk(n,0,d);H[g+12>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+f|0;c=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[g+24>>2]=c;H[g+28>>2]=c;d=0;l=H[g+36>>2];c:{if(!l){break c}h=H[g+32>>2];m=J[g+26>>1]^(J[g+24>>1]^318)+239;c=m&l+131071;f=Il(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){e=J[g+24>>1];j=J[g+26>>1];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=J[c+8>>1];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(j|0)==J[c+10>>1]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;l=J[g+24>>1];j=J[g+26>>1];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=J[c+8>>1];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((j|0)==J[c+10>>1]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}H[g+4>>2]=q;H[g>>2]=H[g+24>>2];c=0;m=J[g+2>>1]^(J[g>>1]^318)+239;j:{k:{i=g+32|0;e=H[i+4>>2];if(!e){break k}d=Il(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}if(d>>>0<2){break l}h=J[g>>1];f=J[g+2>>1];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=J[k+8>>1];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==J[k+10>>1]}if(!d){continue}break}c=0;break j}c=m&e+131071;k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}}h=e-1|0;j=J[g>>1];f=J[g+2>>1];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=J[k+8>>1];n:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(f|0)==J[k+10>>1]}if(!d){continue}break}c=0;break j}k=$k(16);H[k+8>>2]=H[g>>2];d=H[g+4>>2];H[k+4>>2]=m;H[k+12>>2]=d;H[k>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(u>O(p*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Rk(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Il(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Rk(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;j=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=$k(e<<2);d=H[i>>2];H[i>>2]=c;if(d){Wk(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Il(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){j=H[c+4>>2];if(e>>>0<=j>>>0){j=(j>>>0)%(e>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}f=c;r=j<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=j;break z}while(1){j=f;f=H[f>>2];if(f){n=J[c+8>>1];l=J[f+8>>1];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=J[c+10>>1]==J[f+10>>1]}if(l){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){Wk(c)}H[i+4>>2]=0;break v}Ua(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}f=c;r=j<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){j=f;f=H[f>>2];if(f){l=J[c+8>>1];e=J[f+8>>1];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=J[c+10>>1]==J[f+10>>1]}if(e){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[k>>2]=H[i+8>>2];H[i+8>>2]=k;H[c>>2]=i+8;c=H[k>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=k;break D}H[k>>2]=H[d>>2];H[d>>2]=k}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=k;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,q)|0,g+28|0,c);n=H[g+8>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+8>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+8>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+8>>2];if(a){Wk(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){Wk(a)}da=g- -64|0;return q}Fa();X()}function eb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=0,r=0,s=0,t=0,u=O(0);g=da+-64|0;da=g;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+48>>2]=1065353216;c=H[a+80>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;n=$k(d);H[g+16>>2]=n;c=d+n|0;H[g+24>>2]=c;gk(n,0,d);H[g+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],s,0)|0;c=c+f|0;c=I[c|0]|I[c+1|0]<<8;G[g+28>>1]=c;G[g+30>>1]=c;d=0;l=H[g+36>>2];c:{if(!l){break c}h=H[g+32>>2];m=I[g+29|0]^(I[g+28|0]^318)+239;c=m&l+1023;f=Il(l);d:{if(f>>>0<=1){break d}c=m;if(c>>>0>>0){break d}c=(m>>>0)%(l>>>0)|0}j=h;h=c;c=H[j+(c<<2)>>2];if(!c){break c}c=H[c>>2];if(!c){break c}e:{if(f>>>0>=2){e=I[g+28|0];j=I[g+29|0];while(1){f=H[c+4>>2];f:{if((f|0)!=(m|0)){if(f>>>0>=l>>>0){f=(f>>>0)%(l>>>0)|0}if((f|0)!=(h|0)){break c}break f}f=I[c+8|0];g:{if((f|0)!=(e|0)){f=(e|0)==(f|0);break g}f=(j|0)==I[c+9|0]}if(f){break e}}c=H[c>>2];if(c){continue}break}break c}e=l-1|0;l=I[g+28|0];j=I[g+29|0];while(1){f=H[c+4>>2];h:{if((f|0)!=(m|0)){if((h|0)!=(e&f)){break c}break h}f=I[c+8|0];if((f|0)!=(l|0)){if((f|0)!=(l|0)){break h}break e}if((j|0)==I[c+9|0]){break e}}c=H[c>>2];if(c){continue}break}break c}d=c}i:{if(d){H[(s<<2)+n>>2]=H[d+12>>2];break i}H[g+12>>2]=q;G[g+8>>1]=J[g+28>>1];c=0;m=I[g+9|0]^(I[g+8|0]^318)+239;j:{k:{i=g+32|0;e=H[i+4>>2];if(!e){break k}d=Il(e);l:{if(d>>>0>=2){c=m;if(e>>>0<=c>>>0){c=(m>>>0)%(e>>>0)|0}k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}if(d>>>0<2){break l}h=I[g+8|0];f=I[g+9|0];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break k}}d=I[k+8|0];m:{if((d|0)!=(h|0)){d=(d|0)==(h|0);break m}d=(f|0)==I[k+9|0]}if(!d){continue}break}c=0;break j}c=m&e+1023;k=H[H[i>>2]+(c<<2)>>2];if(!k){break k}}h=e-1|0;j=I[g+8|0];f=I[g+9|0];while(1){k=H[k>>2];if(!k){break k}d=H[k+4>>2];if((d|0)!=(m|0)&(d&h)!=(c|0)){break k}d=I[k+8|0];n:{if((d|0)!=(j|0)){d=(d|0)==(j|0);break n}d=(f|0)==I[k+9|0]}if(!d){continue}break}c=0;break j}k=$k(16);G[k+8>>1]=J[g+8>>1];d=H[g+12>>2];H[k+4>>2]=m;H[k+12>>2]=d;H[k>>2]=0;u=O(H[i+12>>2]+1>>>0);p=L[i+16>>2];o:{if(u>O(p*O(e>>>0))?0:e){break o}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;p=O(U(O(u/p)));p:{if(p=O(0)){f=~~p>>>0;break p}f=0}d=d>>>0>>0?f:d;q:{if((d|0)==1){break q}if(!(d&d-1)){c=d;break q}c=Rk(d);e=H[i+4>>2]}r:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break r}f=e>>>0<3;p=O(U(O(O(K[i+12>>2])/L[i+16>>2])));s:{if(p=O(0)){d=~~p>>>0;break s}d=0}t:{u:{if(f){break u}if(Il(e)>>>0>1){break u}d=d>>>0<2?d:1<<32-Q(d-1|0);break t}d=Rk(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break r}}f=0;j=0;e=c;v:{w:{x:{y:{if(c){if(e>>>0>=1073741824){break y}c=$k(e<<2);d=H[i>>2];H[i>>2]=c;if(d){Wk(d)}H[i+4>>2]=e;if(e-1>>>0>=3){c=e&-4;d=0;while(1){h=f<<2;H[h+H[i>>2]>>2]=0;H[H[i>>2]+(h|4)>>2]=0;H[H[i>>2]+(h|8)>>2]=0;H[H[i>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=e&3;if(c){while(1){H[H[i>>2]+(f<<2)>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}d=H[i+8>>2];if(!d){break v}c=i+8|0;h=H[d+4>>2];f=Il(e);if(f>>>0<2){break x}h=e>>>0<=h>>>0?(h>>>0)%(e>>>0)|0:h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}if(f>>>0<=1){break w}while(1){j=H[c+4>>2];if(e>>>0<=j>>>0){j=(j>>>0)%(e>>>0)|0}z:{if((h|0)==(j|0)){d=c;break z}f=c;r=j<<2;l=r+H[i>>2]|0;if(!H[l>>2]){H[l>>2]=d;d=c;h=j;break z}while(1){j=f;f=H[f>>2];if(f){n=I[c+8|0];l=I[f+8|0];A:{if((n|0)!=(l|0)){l=(n|0)==(l|0);break A}l=I[c+9|0]==I[f+9|0]}if(l){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break v}c=H[i>>2];H[i>>2]=0;if(c){Wk(c)}H[i+4>>2]=0;break v}Ua(1604);X()}h=e-1&h;H[H[i>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break v}}n=e-1|0;while(1){j=n&H[c+4>>2];B:{if((j|0)==(h|0)){d=c;break B}f=c;r=j<<2;e=r+H[i>>2]|0;if(H[e>>2]){while(1){j=f;f=H[f>>2];if(f){l=I[c+8|0];e=I[f+8|0];C:{if((l|0)!=(e|0)){e=(e|0)==(l|0);break C}e=I[c+9|0]==I[f+9|0]}if(e){continue}}break}H[d>>2]=f;H[j>>2]=H[H[r+H[i>>2]>>2]>>2];H[H[r+H[i>>2]>>2]>>2]=c;break B}H[e>>2]=d;d=c;h=j}c=H[d>>2];if(c){continue}break}}}e=H[i+4>>2];c=e-1|0;if(!(c&e)){c=c&m;break o}if(e>>>0>m>>>0){c=m;break o}c=(m>>>0)%(e>>>0)|0}c=H[i>>2]+(c<<2)|0;d=H[c>>2];D:{if(!d){H[k>>2]=H[i+8>>2];H[i+8>>2]=k;H[c>>2]=i+8;c=H[k>>2];if(!c){break D}c=H[c+4>>2];d=e-1|0;E:{if(!(d&e)){c=c&d;break E}if(c>>>0>>0){break E}c=(c>>>0)%(e>>>0)|0}H[H[i>>2]+(c<<2)>>2]=k;break D}H[k>>2]=H[d>>2];H[d>>2]=k}H[i+12>>2]=H[i+12>>2]+1;c=1}F[g+60|0]=c;H[g+56>>2]=k;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,q)|0,g+30|0,c);n=H[g+16>>2];H[n+(s<<2)>>2]=q;q=q+1|0}c=s+1|0;o=c?o:o+1|0;s=c;c=H[a+80>>2];if(!o&c>>>0>s>>>0){continue}break}if((c|0)==(q|0)){break b}F:{if(!I[a+84|0]){m=H[a+68>>2];b=H[a+72>>2]-m|0;if(!b){break F}h=H[g+16>>2];b=b>>2;c=b>>>0>1?b:1;f=c&3;e=0;b=0;if(c-1>>>0>=3){d=c&-4;while(1){o=b<<2;c=o+m|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|4)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|8)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];c=m+(o|12)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+4|0;t=t+4|0;if((d|0)!=(t|0)){continue}break}}if(!f){break F}while(1){c=m+(b<<2)|0;H[c>>2]=H[h+(H[c>>2]<<2)>>2];b=b+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break F}F[a+84|0]=0;n=H[a+68>>2];b=H[a+72>>2]-n>>2;G:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);n=H[a+68>>2];c=H[a+80>>2];break G}if(b>>>0<=c>>>0){break G}H[a+72>>2]=(c<<2)+n}if(!c){break F}h=H[g+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;while(1){o=b<<2;H[o+n>>2]=H[h+o>>2];d=o|4;H[d+n>>2]=H[d+h>>2];d=o|8;H[d+n>>2]=H[d+h>>2];d=o|12;H[d+n>>2]=H[d+h>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}d=c&3;if(!d){break F}while(1){c=b<<2;H[c+n>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=q}a=H[g+16>>2];if(a){Wk(a)}b=H[g+40>>2];if(b){while(1){a=H[b>>2];Wk(b);b=a;if(b){continue}break}}a=H[g+32>>2];H[g+32>>2]=0;if(a){Wk(a)}da=g- -64|0;return q}Fa();X()}function Bk(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0;l=da-560|0;da=l;H[l+44>>2]=0;A(+b);g=v(1)|0;v(0)|0;a:{if((g|0)<0){s=1;w=1285;b=-b;A(+b);g=v(1)|0;v(0)|0;break a}if(e&2048){s=1;w=1288;break a}s=e&1;w=s?1291:1286;z=!s}b:{if((g&2146435072)==2146435072){d=s+3|0;Ak(a,32,c,d,e&-65537);wk(a,w,s);f=f&32;wk(a,b!=b?f?1546:1787:f?1597:1791,3);Ak(a,32,c,d,e^8192);i=(c|0)>(d|0)?c:d;break b}u=l+16|0;c:{d:{e:{b=uk(b,l+44|0);b=b+b;if(b!=0){g=H[l+44>>2];H[l+44>>2]=g-1;r=f|32;if((r|0)!=97){break e}break c}r=f|32;if((r|0)==97){break c}k=H[l+44>>2];m=(d|0)<0?6:d;break d}k=g-29|0;H[l+44>>2]=k;b=b*268435456;m=(d|0)<0?6:d}p=(k|0)<0?l+48|0:l+336|0;h=p;while(1){if(b<4294967296&b>=0){d=~~b>>>0}else{d=0}H[h>>2]=d;h=h+4|0;b=(b-+(d>>>0))*1e9;if(b!=0){continue}break}f:{if((k|0)<=0){d=k;g=h;j=p;break f}j=p;d=k;while(1){d=d>>>0<29?d:29;g=h-4|0;g:{if(j>>>0>g>>>0){break g}i=0;while(1){o=H[g>>2];n=d&31;x=i;if((d&63)>>>0>=32){i=o<>>32-n;o=o<>>0>>0?i+1|0:i;i=Hl(n,i,1e9,0);o=Fl(i,fa,1e9,0);H[g>>2]=n-o;g=g-4|0;if(j>>>0<=g>>>0){continue}break}if(!i){break g}j=j-4|0;H[j>>2]=i}while(1){g=h;if(j>>>0>>0){h=g-4|0;if(!H[h>>2]){continue}}break}d=H[l+44>>2]-d|0;H[l+44>>2]=d;h=g;if((d|0)>0){continue}break}}h=(m+25>>>0)/9|0;if((d|0)<0){t=h+1|0;n=(r|0)==102;while(1){d=0-d|0;i=d>>>0<9?d:9;h:{if(g>>>0>j>>>0){o=1e9>>>i|0;y=-1<>2];H[h>>2]=x+(d>>>i|0);d=N(o,d&y);h=h+4|0;if(h>>>0>>0){continue}break}h=H[j>>2];if(!d){break h}H[g>>2]=d;g=g+4|0;break h}h=H[j>>2]}d=i+H[l+44>>2]|0;H[l+44>>2]=d;j=(!h<<2)+j|0;h=n?p:j;g=g-h>>2>(t|0)?h+(t<<2)|0:g;if((d|0)<0){continue}break}}d=0;i:{if(g>>>0<=j>>>0){break i}d=N(p-j>>2,9);h=10;i=H[j>>2];if(i>>>0<10){break i}while(1){d=d+1|0;h=N(h,10);if(i>>>0>=h>>>0){continue}break}}h=(m-((r|0)==102?0:d)|0)-((r|0)==103&(m|0)!=0)|0;if((h|0)<(N(g-p>>2,9)-9|0)){i=h+9216|0;n=(i|0)/9|0;k=((((k|0)<0?4:292)+l|0)+(n<<2)|0)-4048|0;h=10;i=i-N(n,9)|0;if((i|0)<=7){while(1){h=N(h,10);i=i+1|0;if((i|0)!=8){continue}break}}n=H[k>>2];t=(n>>>0)/(h>>>0)|0;i=n-N(h,t)|0;o=k+4|0;j:{if(!i&(o|0)==(g|0)){break j}k:{if(!(t&1)){b=9007199254740992;if(!(F[k-4|0]&1)|((h|0)!=1e9|j>>>0>=k>>>0)){break k}}b=9007199254740994}q=(g|0)==(o|0)?1:1.5;o=h>>>1|0;q=i>>>0>>0?.5:(o|0)==(i|0)?q:1.5;if(!(I[w|0]!=45|z)){q=-q;b=-b}i=n-i|0;H[k>>2]=i;if(b+q==b){break j}d=h+i|0;H[k>>2]=d;if(d>>>0>=1e9){while(1){H[k>>2]=0;k=k-4|0;if(k>>>0>>0){j=j-4|0;H[j>>2]=0}d=H[k>>2]+1|0;H[k>>2]=d;if(d>>>0>999999999){continue}break}}d=N(p-j>>2,9);h=10;i=H[j>>2];if(i>>>0<10){break j}while(1){d=d+1|0;h=N(h,10);if(i>>>0>=h>>>0){continue}break}}h=k+4|0;g=g>>>0>h>>>0?h:g}while(1){h=g;i=g>>>0<=j>>>0;if(!i){g=h-4|0;if(!H[g>>2]){continue}}break}l:{if((r|0)!=103){k=e&8;break l}g=m?m:1;k=(g|0)>(d|0)&(d|0)>-5;m=(k?d^-1:-1)+g|0;f=(k?-1:-2)+f|0;k=e&8;if(k){break l}g=-9;m:{if(i){break m}n=H[h-4>>2];if(!n){break m}i=10;g=0;if((n>>>0)%10|0){break m}while(1){k=g;g=g+1|0;i=N(i,10);if(!((n>>>0)%(i>>>0)|0)){continue}break}g=k^-1}i=N(h-p>>2,9);if((f&-33)==70){k=0;g=(g+i|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g;break l}k=0;g=((d+i|0)+g|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g}i=-1;r=k|m;if(((r?2147483645:2147483646)|0)<(m|0)){break b}n=(((r|0)!=0)+m|0)+1|0;o=f&-33;n:{if((o|0)==70){if((2147483647-n|0)<(d|0)){break b}g=(d|0)>0?d:0;break n}g=d>>31;g=zk(g+d^g,0,u);if((u-g|0)<=1){while(1){g=g-1|0;F[g|0]=48;if((u-g|0)<2){continue}break}}t=g-2|0;F[t|0]=f;F[g-1|0]=(d|0)<0?45:43;g=u-t|0;if((g|0)>(2147483647-n|0)){break b}}d=g+n|0;if((d|0)>(s^2147483647)){break b}f=d+s|0;Ak(a,32,c,f,e);wk(a,w,s);Ak(a,48,c,f,e^65536);o:{p:{q:{if((o|0)==70){g=l+16|0;d=g|8;k=g|9;i=j>>>0>p>>>0?p:j;j=i;while(1){g=zk(H[j>>2],0,k);r:{if((i|0)!=(j|0)){if(l+16>>>0>=g>>>0){break r}while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}break r}if((g|0)!=(k|0)){break r}F[l+24|0]=48;g=d}wk(a,g,k-g|0);j=j+4|0;if(p>>>0>=j>>>0){continue}break}if(r){wk(a,2125,1)}if((m|0)<=0|h>>>0<=j>>>0){break q}while(1){g=zk(H[j>>2],0,k);if(g>>>0>l+16>>>0){while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}}wk(a,g,(m|0)<9?m:9);g=m-9|0;j=j+4|0;if(h>>>0<=j>>>0){break p}d=(m|0)>9;m=g;if(d){continue}break}break p}s:{if((m|0)<0){break s}i=h>>>0>j>>>0?h:j+4|0;d=l+16|0;p=d|9;d=d|8;h=j;while(1){g=zk(H[h>>2],0,p);if((p|0)==(g|0)){F[l+24|0]=48;g=d}t:{if((h|0)!=(j|0)){if(l+16>>>0>=g>>>0){break t}while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}break t}wk(a,g,1);g=g+1|0;if(!(k|m)){break t}wk(a,2125,1)}x=g;g=p-g|0;wk(a,x,(g|0)<(m|0)?g:m);m=m-g|0;h=h+4|0;if(i>>>0<=h>>>0){break s}if((m|0)>=0){continue}break}}Ak(a,48,m+18|0,18,0);wk(a,t,u-t|0);break o}g=m}Ak(a,48,g+9|0,9,0)}Ak(a,32,c,f,e^8192);i=(c|0)>(f|0)?c:f;break b}m=(f<<26>>31&9)+w|0;u:{if(d>>>0>11){break u}g=12-d|0;q=16;while(1){q=q*16;g=g-1|0;if(g){continue}break}if(I[m|0]==45){b=-(q+(-b-q));break u}b=b+q-q}h=H[l+44>>2];g=h>>31;g=zk(g^g+h,0,u);if((u|0)==(g|0)){F[l+15|0]=48;g=l+15|0}k=s|2;j=f&32;h=H[l+44>>2];p=g-2|0;F[p|0]=f+15;F[g-1|0]=(h|0)<0?45:43;i=e&8;h=l+16|0;while(1){f=h;if(P(b)<2147483648){g=~~b}else{g=-2147483648}F[h|0]=j|I[g+17792|0];b=(b-+(g|0))*16;h=f+1|0;if(!(!((d|0)>0|i)&b==0|(h-(l+16|0)|0)!=1)){F[f+1|0]=46;h=f+2|0}if(b!=0){continue}break}i=-1;n=u-p|0;f=n+k|0;if((2147483645-f|0)<(d|0)){break b}v:{w:{if(!d){break w}j=h-(l+16|0)|0;if((j-2|0)>=(d|0)){break w}g=d+2|0;break v}j=h-(l+16|0)|0;g=j}d=g+f|0;Ak(a,32,c,d,e);wk(a,m,k);Ak(a,48,c,d,e^65536);wk(a,l+16|0,j);Ak(a,48,g-j|0,0,0);wk(a,p,n);Ak(a,32,c,d,e^8192);i=(c|0)>(d|0)?c:d}da=l+560|0;return i|0}function vk(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=da-80|0;da=f;H[f+76>>2]=1601;v=f+55|0;r=f+56|0;a:{b:{c:{d:{e:while(1){if((2147483647-m|0)<(e|0)){break d}m=e+m|0;f:{g:{h:{l=H[f+76>>2];e=l;k=I[e|0];if(k){while(1){i:{g=k&255;j:{if(!g){k=e;break j}if((g|0)!=37){break i}k=e;while(1){if(I[e+1|0]!=37){break j}g=e+2|0;H[f+76>>2]=g;k=k+1|0;h=I[e+2|0];e=g;if((h|0)==37){continue}break}}e=k-l|0;u=2147483647-m|0;if((e|0)>(u|0)){break d}if(a){wk(a,l,e)}if(e){continue e}p=-1;g=1;e=H[f+76>>2];if(!(F[e+1|0]-48>>>0>=10|I[e+2|0]!=36)){p=F[e+1|0]-48|0;t=1;g=3}e=g+e|0;H[f+76>>2]=e;n=0;i=F[e|0];h=i-32|0;k:{if(h>>>0>31){g=e;break k}g=e;j=1<>2]=g;n=j|n;i=F[e+1|0];h=i-32|0;if(h>>>0>=32){break k}e=g;j=1<>>0>=10){break n}e=H[f+76>>2];if(I[e+2|0]!=36){break n}H[((F[e+1|0]<<2)+d|0)-192>>2]=10;o=H[((F[e+1|0]<<3)+c|0)-384>>2];t=1;e=e+3|0;break m}if(t){break h}t=0;o=0;if(a){e=H[b>>2];H[b>>2]=e+4;o=H[e>>2]}e=H[f+76>>2]+1|0}H[f+76>>2]=e;if((o|0)>=0){break l}o=0-o|0;n=n|8192;break l}o=xk(f+76|0);if((o|0)<0){break d}e=H[f+76>>2]}g=0;j=-1;q=0;o:{if(I[e|0]!=46){break o}if(I[e+1|0]==42){p:{q:{if(F[e+2|0]-48>>>0>=10){break q}e=H[f+76>>2];if(I[e+3|0]!=36){break q}H[((F[e+2|0]<<2)+d|0)-192>>2]=10;j=H[((F[e+2|0]<<3)+c|0)-384>>2];e=e+4|0;break p}if(t){break h}if(a){e=H[b>>2];H[b>>2]=e+4;j=H[e>>2]}else{j=0}e=H[f+76>>2]+2|0}H[f+76>>2]=e;q=(j^-1)>>>31|0;break o}H[f+76>>2]=e+1;j=xk(f+76|0);e=H[f+76>>2];q=1}while(1){s=g;k=28;if(F[e|0]-123>>>0<4294967238){break c}i=e+1|0;H[f+76>>2]=i;g=F[e|0];e=i;g=I[(g+N(s,58)|0)+17263|0];if(g-1>>>0<8){continue}break}r:{s:{if((g|0)!=27){if(!g){break c}if((p|0)>=0){H[(p<<2)+d>>2]=g;e=(p<<3)+c|0;g=H[e+4>>2];H[f+64>>2]=H[e>>2];H[f+68>>2]=g;break s}if(!a){break f}yk(f- -64|0,g,b);i=H[f+76>>2];break r}if((p|0)>=0){break c}}e=0;if(!a){continue e}}h=n&-65537;g=n&8192?h:n;n=0;p=1275;k=r;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{e=F[i-1|0];e=s?(e&15)==3?e&-33:e:e;switch(e-88|0){case 11:break t;case 9:case 13:case 14:case 15:break u;case 27:break z;case 12:case 17:break C;case 23:break D;case 0:case 32:break E;case 24:break F;case 22:break G;case 29:break H;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break I}}J:{switch(e-65|0){case 0:case 4:case 5:case 6:break u;case 2:break x;case 1:case 3:break g;default:break J}}if((e|0)==83){break y}break g}i=H[f+64>>2];h=H[f+68>>2];p=1275;break B}e=0;K:{switch(s&255){case 0:H[H[f+64>>2]>>2]=m;continue e;case 1:H[H[f+64>>2]>>2]=m;continue e;case 2:g=H[f+64>>2];H[g>>2]=m;H[g+4>>2]=m>>31;continue e;case 3:G[H[f+64>>2]>>1]=m;continue e;case 4:F[H[f+64>>2]]=m;continue e;case 6:H[H[f+64>>2]>>2]=m;continue e;case 7:break K;default:continue e}}g=H[f+64>>2];H[g>>2]=m;H[g+4>>2]=m>>31;continue e}j=j>>>0>8?j:8;g=g|8;e=120}l=r;w=e&32;i=H[f+64>>2];h=H[f+68>>2];if(i|h){while(1){l=l-1|0;F[l|0]=w|I[(i&15)+17792|0];x=!h&i>>>0>15|(h|0)!=0;s=h;h=h>>>4|0;i=(s&15)<<28|i>>>4;if(x){continue}break}}if(!(H[f+64>>2]|H[f+68>>2])|!(g&8)){break A}p=(e>>>4|0)+1275|0;n=2;break A}e=r;i=H[f+64>>2];h=H[f+68>>2];if(i|h){while(1){e=e-1|0;F[e|0]=i&7|48;s=!h&i>>>0>7|(h|0)!=0;l=h;h=h>>>3|0;i=(l&7)<<29|i>>>3;if(s){continue}break}}l=e;if(!(g&8)){break A}e=r-l|0;j=(e|0)<(j|0)?j:e+1|0;break A}e=H[f+68>>2];h=e;i=H[f+64>>2];if((e|0)<0){h=0-(h+((i|0)!=0)|0)|0;i=0-i|0;H[f+64>>2]=i;H[f+68>>2]=h;n=1;p=1275;break B}if(g&2048){n=1;p=1276;break B}n=g&1;p=n?1277:1275}l=zk(i,h,r)}if((j|0)<0?q:0){break d}g=q?g&-65537:g;h=H[f+64>>2];e=H[f+68>>2];if(!(j|(h|e)!=0)){l=r;k=l;j=0;break g}e=!(e|h)+(r-l|0)|0;j=(e|0)<(j|0)?j:e;break g}q=(j|0)<0?2147483647:j;i=q;g=(i|0)!=0;e=H[f+64>>2];l=e?e:2127;k=l;e=l;L:{M:{N:{O:{if(!(e&3)|!i){break O}while(1){if(!I[e|0]){break N}i=i-1|0;g=(i|0)!=0;e=e+1|0;if(!(e&3)){break O}if(i){continue}break}}if(!g){break M}}P:{if(!I[e|0]|i>>>0<4){break P}while(1){g=H[e>>2];if((g^-1)&g-16843009&-2139062144){break P}e=e+4|0;i=i-4|0;if(i>>>0>3){continue}break}}if(!i){break M}while(1){if(!I[e|0]){break L}e=e+1|0;i=i-1|0;if(i){continue}break}}e=0}e=e?e-k|0:q;k=e+l|0;if((j|0)>=0){g=h;j=e;break g}g=h;j=e;if(I[k|0]){break d}break g}if(j){k=H[f+64>>2];break w}e=0;Ak(a,32,o,0,g);break v}H[f+12>>2]=0;H[f+8>>2]=H[f+64>>2];k=f+8|0;H[f+64>>2]=k;j=-1}e=0;Q:{while(1){h=H[k>>2];if(!h){break Q}h=Dk(f+4|0,h);l=(h|0)<0;if(!(l|h>>>0>j-e>>>0)){k=k+4|0;e=e+h|0;if(j>>>0>e>>>0){continue}break Q}break}if(l){break b}}k=61;if((e|0)<0){break c}Ak(a,32,o,e,g);if(!e){e=0;break v}j=0;k=H[f+64>>2];while(1){h=H[k>>2];if(!h){break v}h=Dk(f+4|0,h);j=h+j|0;if(j>>>0>e>>>0){break v}wk(a,f+4|0,h);k=k+4|0;if(e>>>0>j>>>0){continue}break}}Ak(a,32,o,e,g^8192);e=(e|0)<(o|0)?o:e;continue e}if((j|0)<0?q:0){break d}k=61;e=ga[368](a,M[f+64>>3],o,j,g,e)|0;if((e|0)>=0){continue e}break c}F[f+55|0]=H[f+64>>2];j=1;l=v;g=h;break g}g=e+1|0;H[f+76>>2]=g;k=I[e+1|0];e=g;continue}}if(a){break a}if(!t){break f}e=1;while(1){a=H[(e<<2)+d>>2];if(a){yk((e<<3)+c|0,a,b);m=1;e=e+1|0;if((e|0)!=10){continue}break a}break}m=1;if(e>>>0>=10){break a}while(1){if(H[(e<<2)+d>>2]){break h}e=e+1|0;if((e|0)!=10){continue}break}break a}k=28;break c}i=k-l|0;j=(j|0)<(i|0)?i:j;if((j|0)>(2147483647-n|0)){break d}k=61;h=j+n|0;e=(h|0)>(o|0)?h:o;if((u|0)<(e|0)){break c}Ak(a,32,e,h,g);wk(a,p,n);Ak(a,48,e,h,g^65536);Ak(a,48,j,i,0);wk(a,l,i);Ak(a,32,e,h,g^8192);continue}break}m=0;break a}k=61}H[4739]=k}m=-1}da=f+80|0;return m}function Nb(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0;n=da-32|0;da=n;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;k=H[e+20>>2];if(!H[e+16>>2]&(k|0)<=0|(k|0)<0){d=a+4|0;ya(e,H[e+4>>2],a,d);k=H[e+20>>2];if(!H[e+16>>2]&(k|0)<=0|(k|0)<0){ya(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){B=a+12|0;Ub(B);C=a+1068|0;d=C;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];D=a+1088|0;d=D;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];E=a+1108|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[n+24>>2]=H[b+8>>2];d=H[b+4>>2];H[n+16>>2]=H[b>>2];H[n+20>>2]=d;H[n+8>>2]=H[c+8>>2];b=H[c+4>>2];H[n>>2]=H[c>>2];H[n+4>>2]=b;b=0;f=da-32|0;da=f;d=a;h=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(h){if(h>>>0>=1073741824){break b}a=h<<2;b=$k(a);H[f+8>>2]=b;g=a+b|0;H[f+16>>2]=g;gk(b,0,a);H[f+12>>2]=g}a=H[d+1164>>2];c=H[a>>2];if(c){H[a+4>>2]=c;Wk(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=H[d+8>>2];g=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=g;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(h){if(h>>>0>=1073741824){break c}c=h<<2;a=$k(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;gk(a,0,c);H[f+12>>2]=b}c=H[d+1176>>2];k=H[c>>2];if(k){H[c+4>>2]=k;Wk(k);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];w=H[n+4>>2];x=H[n+8>>2];u=H[n+20>>2];r=H[n+24>>2];k=H[n>>2];c=H[n+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;_b(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;b=(a>>>0)/113|0;a=H[H[f+12>>2]+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=k-c;H[a+24>>2]=0;H[a+12>>2]=k;H[a+4>>2]=u;H[a+8>>2]=r;H[a>>2]=c;H[a+16>>2]=w;H[a+20>>2]=x;a=H[f+28>>2];h=a+1|0;H[f+28>>2]=h;if(a>>>0<=h>>>0){I=d+1068|0;J=d+1108|0;L=r&-4;F=r&3;M=r-1>>>0<3;while(1){m=H[f+12>>2];g=H[f+24>>2];i=h-1|0;a=g+i|0;b=(a>>>0)/113|0;a=H[m+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;z=H[a+32>>2];b=H[a+24>>2];k=H[a+12>>2];c=H[a>>2];H[f+28>>2]=i;a=H[f+16>>2];i=a-m|0;if(((i?N(i>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){Wk(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}h=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;i=h<<2;y=N(z,12);m=y+H[d+1176>>2]|0;b=H[d>>2]-H[i+H[m>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{s=k-c|0;if(s>>>0<=2){g=H[d+1152>>2];H[g>>2]=h;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}g=H[d+1164>>2];a=g+y|0;q=g;g=y+12|0;Ma(q+g|0,H[a>>2],H[a+4>>2]);a=i+H[g+H[d+1164>>2]>>2]|0;m=H[a>>2]+(1<>2]=m;a=c;h:{if((k|0)==(a|0)){break h}G=H[u+24>>2];b=c;a=k;if(!r){if(m>>>0>K[i+G>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(m>>>0<=K[(i+H[w+24>>2]|0)+(N(a,x)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){o=(N(b,r)<<2)+G|0;if(m>>>0>K[o+i>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}p=H[w+24>>2]+(N(a,x)<<2)|0;if(m>>>0<=K[p+i>>2]){continue}break}A=0;g=0;v=0;if(!M){while(1){l=g<<2;j=l+o|0;t=H[j>>2];q=j;j=l+p|0;H[q>>2]=H[j>>2];H[j>>2]=t;j=l|4;t=j+o|0;q=H[t>>2];j=j+p|0;H[t>>2]=H[j>>2];H[j>>2]=q;j=l|8;t=j+o|0;q=H[t>>2];j=j+p|0;H[t>>2]=H[j>>2];H[j>>2]=q;l=l|12;j=l+o|0;t=H[j>>2];l=l+p|0;H[j>>2]=H[l>>2];H[l>>2]=t;g=g+4|0;v=v+4|0;if((L|0)!=(v|0)){continue}break}}if(F){while(1){l=g<<2;v=l+o|0;j=H[v>>2];l=l+p|0;H[v>>2]=H[l>>2];H[l>>2]=j;g=g+1|0;A=A+1|0;if((A|0)!=(F|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}m=a-c|0;o=k-a|0;if((m|0)!=(o|0)){$b(J,m>>>0>>0)}l=z+1|0;b=Q(s);p=b^31;g=s>>>1|0;i:{if(m>>>0>>0){if(!p){break i}s=g-m|0;b=1<<30-b;g=0;while(1){ye((d+(g<<5)|0)+12|0,(b&s)!=0);b=b>>>1|0;g=g+1|0;if((p|0)!=(g|0)){continue}break}break i}if(!p){break i}s=g-o|0;b=1<<30-b;g=0;while(1){ye((d+(g<<5)|0)+12|0,(b&s)!=0);b=b>>>1|0;g=g+1|0;if((p|0)!=(g|0)){continue}break}}q=i;b=H[d+1176>>2];g=b+y|0;i=H[g>>2];p=q+i|0;H[p>>2]=H[p>>2]+1;Ma(b+N(l,12)|0,i,H[g+4>>2]);if((a|0)!=(c|0)){b=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];i=H[f+16>>2]-g|0;if((b|0)==((i?N(i>>2,113)-1|0:0)|0)){_b(f+8|0);g=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}q=g;g=(b>>>0)/113|0;b=H[q+(g<<2)>>2]+N(b-N(g,113)|0,36)|0;H[b+32>>2]=z;H[b+28>>2]=m;H[b+24>>2]=h;H[b+12>>2]=a;H[b+4>>2]=u;H[b+8>>2]=r;H[b>>2]=c;H[b+20>>2]=r;H[b+16>>2]=u;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(k|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;g=H[f+12>>2];i=H[f+16>>2]-g|0;if((b|0)==((i?N(i>>2,113)-1|0:0)|0)){_b(f+8|0);g=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}q=g;g=(b>>>0)/113|0;b=H[q+(g<<2)>>2]+N(b-N(g,113)|0,36)|0;H[b+32>>2]=l;H[b+28>>2]=o;H[b+24>>2]=h;H[b+12>>2]=k;H[b+8>>2]=r;H[b+4>>2]=u;H[b>>2]=a;H[b+16>>2]=w;H[b+20>>2]=x;h=H[f+28>>2]+1|0;H[f+28>>2]=h;break d}while(1){h=(a-1|0)==(h|0)?0:h+1|0;H[g+(b<<2)>>2]=h;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}g=0;b=a;if(!s){break e}while(1){j:{if(!b){b=0;break j}i=H[u+24>>2]+(N(H[u+4>>2],c+g|0)<<2)|0;h=0;while(1){b=H[H[d+1152>>2]+(h<<2)>>2]<<2;o=H[d>>2]-H[b+H[m>>2]>>2]|0;if(o){ac(I,o,H[b+i>>2]);a=H[d+8>>2]}b=a;h=h+1|0;if(h>>>0>>0){continue}break}}g=g+1|0;if((s|0)!=(g|0)){continue}break}}h=H[f+28>>2]}if(h){continue}break}}H[n+16>>2]=c;H[n>>2]=k;H[f+28>>2]=0;c=H[f+16>>2];h=H[f+12>>2];a=c-h|0;if(a>>>0>=9){while(1){Wk(H[h>>2]);h=H[f+12>>2]+4|0;H[f+12>>2]=h;c=H[f+16>>2];a=c-h|0;if(a>>>0>8){continue}break}}b=56;k:{switch((a>>>2|0)-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break k}}l:{if((c|0)==(h|0)){break l}while(1){Wk(H[h>>2]);h=h+4|0;if((h|0)!=(c|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break l}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){Wk(a)}da=f+32|0;break a}Fa();X()}Fa();X()}Vb(B,e);ue(C,e);ue(D,e);ue(E,e)}da=n+32|0;return 1}function Uh(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=da-16|0;da=h;H[b+44>>2]=d;H[b+48>>2]=c;d=H[b+12>>2];f=H[b+8>>2];if((d|0)!=(f|0)){while(1){d=d-4|0;e=H[d>>2];H[d>>2]=0;if(e){ga[H[H[e>>2]+4>>2]](e)}if((d|0)!=(f|0)){continue}break}}H[b+12>>2]=f;H[b+24>>2]=H[b+20>>2];H[b+36>>2]=H[b+32>>2];a:{if(!H[b+4>>2]){b=$k(32);c=I[1814]|I[1815]<<8|(I[1816]<<16|I[1817]<<24);d=I[1810]|I[1811]<<8|(I[1812]<<16|I[1813]<<24);F[b+15|0]=d;F[b+16|0]=d>>>8;F[b+17|0]=d>>>16;F[b+18|0]=d>>>24;F[b+19|0]=c;F[b+20|0]=c>>>8;F[b+21|0]=c>>>16;F[b+22|0]=c>>>24;c=I[1807]|I[1808]<<8|(I[1809]<<16|I[1810]<<24);d=I[1803]|I[1804]<<8|(I[1805]<<16|I[1806]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1799]|I[1800]<<8|(I[1801]<<16|I[1802]<<24);d=I[1795]|I[1796]<<8|(I[1797]<<16|I[1798]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+23|0]=0;H[a>>2]=-1;el(a+4|0,b,23);Wk(b);break a}d=da-16|0;da=d;e=H[b+44>>2];f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){ya(e,H[e+4>>2],1781,1786)}e=ga[H[H[b>>2]+8>>2]](b)|0;F[d+15|0]=e;F[d+14|0]=2;F[d+13|0]=e&255?2:3;e=H[b+44>>2];f=H[e+20>>2];b:{if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}ya(e,H[e+4>>2],d+14|0,d+15|0);e=H[b+44>>2];f=H[e+20>>2];if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}ya(e,H[e+4>>2],d+13|0,d+14|0);e=H[b+44>>2];f=H[e+20>>2];if(!!H[e+16>>2]&(f|0)>=0|(f|0)>0){break b}ya(e,H[e+4>>2],d+15|0,d+16|0);e=H[b+44>>2]}k=d,l=ga[H[H[b>>2]+12>>2]](b)|0,F[k+12|0]=l;f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){ya(e,H[e+4>>2],d+12|0,d+13|0)}G[d+10>>1]=(H[H[b+4>>2]+4>>2]!=0)<<15;e=H[b+44>>2];f=H[e+20>>2];if(!H[e+16>>2]&(f|0)<=0|(f|0)<0){ya(e,H[e+4>>2],d+10|0,d+12|0)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=d+16|0;if(H[a>>2]){break a}e=a+4|0;if(F[a+15|0]<0){Wk(H[e>>2])}d=H[H[b+4>>2]+4>>2];c:{if(!d){H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break c}f=H[b+44>>2];if(d){tb(H[d+28>>2]-H[d+24>>2]>>2,f);g=H[d+24>>2];j=H[d+28>>2];if((g|0)!=(j|0)){while(1){i=H[g>>2];if(i){tb(H[i+24>>2],f);Pj(h,f,i)}g=g+4|0;if((j|0)!=(g|0)){continue}break}}Pj(h,f,d)}if(d){H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break c}d=$k(32);f=I[2026]|I[2027]<<8;F[d+24|0]=f;F[d+25|0]=f>>>8;f=I[2022]|I[2023]<<8|(I[2024]<<16|I[2025]<<24);g=I[2018]|I[2019]<<8|(I[2020]<<16|I[2021]<<24);F[d+16|0]=g;F[d+17|0]=g>>>8;F[d+18|0]=g>>>16;F[d+19|0]=g>>>24;F[d+20|0]=f;F[d+21|0]=f>>>8;F[d+22|0]=f>>>16;F[d+23|0]=f>>>24;f=I[2014]|I[2015]<<8|(I[2016]<<16|I[2017]<<24);g=I[2010]|I[2011]<<8|(I[2012]<<16|I[2013]<<24);F[d+8|0]=g;F[d+9|0]=g>>>8;F[d+10|0]=g>>>16;F[d+11|0]=g>>>24;F[d+12|0]=f;F[d+13|0]=f>>>8;F[d+14|0]=f>>>16;F[d+15|0]=f>>>24;f=I[2006]|I[2007]<<8|(I[2008]<<16|I[2009]<<24);g=I[2002]|I[2003]<<8|(I[2004]<<16|I[2005]<<24);F[d|0]=g;F[d+1|0]=g>>>8;F[d+2|0]=g>>>16;F[d+3|0]=g>>>24;F[d+4|0]=f;F[d+5|0]=f>>>8;F[d+6|0]=f>>>16;F[d+7|0]=f>>>24;F[d+26|0]=0;H[a>>2]=-1;el(e,d,26);Wk(d);if(H[a>>2]){break a}}if(F[e+11|0]<0){Wk(H[e>>2])}if(!(ga[H[H[b>>2]+16>>2]](b)|0)){b=$k(32);c=I[1942]|I[1943]<<8|(I[1944]<<16|I[1945]<<24);d=I[1938]|I[1939]<<8|(I[1940]<<16|I[1941]<<24);F[b+21|0]=d;F[b+22|0]=d>>>8;F[b+23|0]=d>>>16;F[b+24|0]=d>>>24;F[b+25|0]=c;F[b+26|0]=c>>>8;F[b+27|0]=c>>>16;F[b+28|0]=c>>>24;c=I[1937]|I[1938]<<8|(I[1939]<<16|I[1940]<<24);d=I[1933]|I[1934]<<8|(I[1935]<<16|I[1936]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1929]|I[1930]<<8|(I[1931]<<16|I[1932]<<24);d=I[1925]|I[1926]<<8|(I[1927]<<16|I[1928]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1921]|I[1922]<<8|(I[1923]<<16|I[1924]<<24);d=I[1917]|I[1918]<<8|(I[1919]<<16|I[1920]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+29|0]=0;H[a>>2]=-1;el(e,b,29);Wk(b);break a}if(!(ga[H[H[b>>2]+20>>2]](b)|0)){b=$k(32);c=I[2085]|I[2086]<<8|(I[2087]<<16|I[2088]<<24);d=I[2081]|I[2082]<<8|(I[2083]<<16|I[2084]<<24);F[b+23|0]=d;F[b+24|0]=d>>>8;F[b+25|0]=d>>>16;F[b+26|0]=d>>>24;F[b+27|0]=c;F[b+28|0]=c>>>8;F[b+29|0]=c>>>16;F[b+30|0]=c>>>24;c=I[2078]|I[2079]<<8|(I[2080]<<16|I[2081]<<24);d=I[2074]|I[2075]<<8|(I[2076]<<16|I[2077]<<24);F[b+16|0]=d;F[b+17|0]=d>>>8;F[b+18|0]=d>>>16;F[b+19|0]=d>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[2070]|I[2071]<<8|(I[2072]<<16|I[2073]<<24);d=I[2066]|I[2067]<<8|(I[2068]<<16|I[2069]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[2062]|I[2063]<<8|(I[2064]<<16|I[2065]<<24);d=I[2058]|I[2059]<<8|(I[2060]<<16|I[2061]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+31|0]=0;H[a>>2]=-1;el(e,b,31);Wk(b);break a}ga[H[H[b>>2]+24>>2]](a,b);if(H[a>>2]){break a}if(F[e+11|0]<0){Wk(H[e>>2])}if(!(ga[H[H[b>>2]+28>>2]](b)|0)){b=re(h,1852);H[a>>2]=-1;if(F[b+11|0]>=0){a=H[h+4>>2];H[e>>2]=H[h>>2];H[e+4>>2]=a;H[e+8>>2]=H[h+8>>2];break a}el(e,H[b>>2],H[b+4>>2]);if(F[b+11|0]>=0){break a}Wk(H[b>>2]);break a}d=c;c=re(h,1326);d=ki(d,c,0);if(F[c+11|0]<0){Wk(H[c>>2])}if(d){ga[H[H[b>>2]+48>>2]](b)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}da=h+16|0}function Sb(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,L=0,M=0,O=0;n=da-32|0;da=n;H[a>>2]=H[d>>2];d=H[c>>2]-H[b>>2]|0;H[a+4>>2]=d;k=H[e+20>>2];if(!H[e+16>>2]&(k|0)<=0|(k|0)<0){d=a+4|0;ya(e,H[e+4>>2],a,d);k=H[e+20>>2];if(!H[e+16>>2]&(k|0)<=0|(k|0)<0){ya(e,H[e+4>>2],d,d+4|0)}d=H[d>>2]}if(d){B=a+12|0;d=B;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];C=a+32|0;d=C;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];D=a+52|0;d=D;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];E=a+72|0;d=E;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=H[d>>2];H[n+24>>2]=H[b+8>>2];d=H[b+4>>2];H[n+16>>2]=H[b>>2];H[n+20>>2]=d;H[n+8>>2]=H[c+8>>2];b=H[c+4>>2];H[n>>2]=H[c>>2];H[n+4>>2]=b;b=0;f=da-32|0;da=f;d=a;g=H[a+8>>2];H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a:{b:{if(g){if(g>>>0>=1073741824){break b}a=g<<2;b=$k(a);H[f+8>>2]=b;i=a+b|0;H[f+16>>2]=i;gk(b,0,a);H[f+12>>2]=i}a=H[d+128>>2];c=H[a>>2];if(c){H[a+4>>2]=c;Wk(c);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;g=H[d+8>>2];i=H[f+12>>2];b=H[f+8>>2]}H[a+4>>2]=i;H[a>>2]=b;H[a+8>>2]=H[f+16>>2];b=0;H[f+16>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;a=0;c:{if(g){if(g>>>0>=1073741824){break c}c=g<<2;a=$k(c);H[f+8>>2]=a;b=a+c|0;H[f+16>>2]=b;gk(a,0,c);H[f+12>>2]=b}c=H[d+140>>2];k=H[c>>2];if(k){H[c+4>>2]=k;Wk(k);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=H[f+12>>2];a=H[f+8>>2]}H[c+4>>2]=b;H[c>>2]=a;H[c+8>>2]=H[f+16>>2];w=H[n+4>>2];x=H[n+8>>2];s=H[n+20>>2];q=H[n+24>>2];k=H[n>>2];c=H[n+16>>2];H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;_b(f+8|0);a=H[f+24>>2]+H[f+28>>2]|0;b=(a>>>0)/113|0;a=H[H[f+12>>2]+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;H[a+32>>2]=0;H[a+28>>2]=k-c;H[a+24>>2]=0;H[a+12>>2]=k;H[a+4>>2]=s;H[a+8>>2]=q;H[a>>2]=c;H[a+16>>2]=w;H[a+20>>2]=x;a=H[f+28>>2];g=a+1|0;H[f+28>>2]=g;if(a>>>0<=g>>>0){I=d+32|0;J=d+12|0;L=d+72|0;M=q&-4;F=q&3;O=q-1>>>0<3;while(1){l=H[f+12>>2];h=H[f+24>>2];i=g-1|0;a=h+i|0;b=(a>>>0)/113|0;a=H[l+(b<<2)>>2]+N(a-N(b,113)|0,36)|0;z=H[a+32>>2];b=H[a+24>>2];k=H[a+12>>2];c=H[a>>2];H[f+28>>2]=i;a=H[f+16>>2];i=a-l|0;if(((i?N(i>>2,113)-1|0:0)-(g+h|0)|0)+1>>>0>=226){Wk(H[a-4>>2]);H[f+16>>2]=H[f+16>>2]-4}g=(b|0)==(H[d+8>>2]-1|0)?0:b+1|0;i=g<<2;y=N(z,12);l=y+H[d+140>>2]|0;b=H[d>>2]-H[i+H[l>>2]>>2]|0;d:{e:{if(!b){break e}f:{g:{u=k-c|0;if(u>>>0<=2){h=H[d+116>>2];H[h>>2]=g;b=1;a=H[d+8>>2];if(a>>>0>1){break g}break f}h=H[d+128>>2];a=h+y|0;j=h;h=y+12|0;Ma(j+h|0,H[a>>2],H[a+4>>2]);a=i+H[h+H[d+128>>2]>>2]|0;l=H[a>>2]+(1<>2]=l;a=c;h:{if((k|0)==(a|0)){break h}G=H[s+24>>2];b=c;a=k;if(!q){if(l>>>0>K[i+G>>2]){break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}if(l>>>0<=K[(i+H[w+24>>2]|0)+(N(a,x)<<2)>>2]){continue}b=b+1|0;if((b|0)!=(a|0)){continue}break}break h}while(1){o=(N(b,q)<<2)+G|0;if(l>>>0>K[o+i>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break h}while(1){a=a-1|0;if((b|0)==(a|0)){a=b;break h}p=H[w+24>>2]+(N(a,x)<<2)|0;if(l>>>0<=K[p+i>>2]){continue}break}A=0;h=0;t=0;if(!O){while(1){m=h<<2;j=m+o|0;r=H[j>>2];v=j;j=m+p|0;H[v>>2]=H[j>>2];H[j>>2]=r;j=m|4;r=j+o|0;v=H[r>>2];j=j+p|0;H[r>>2]=H[j>>2];H[j>>2]=v;j=m|8;r=j+o|0;v=H[r>>2];j=j+p|0;H[r>>2]=H[j>>2];H[j>>2]=v;m=m|12;j=m+o|0;r=H[j>>2];m=m+p|0;H[j>>2]=H[m>>2];H[m>>2]=r;h=h+4|0;t=t+4|0;if((M|0)!=(t|0)){continue}break}}if(F){while(1){m=h<<2;t=m+o|0;j=H[t>>2];m=m+p|0;H[t>>2]=H[m>>2];H[m>>2]=j;h=h+1|0;A=A+1|0;if((A|0)!=(F|0)){continue}break}}b=b+1|0;if((b|0)!=(a|0)){continue}break}}l=a-c|0;o=k-a|0;if((l|0)!=(o|0)){$b(L,l>>>0>>0)}ac(J,Q(u)^31,(u>>>1|0)-(l>>>0>>0?l:o)|0);j=i;b=H[d+140>>2];h=b+y|0;i=H[h>>2];p=j+i|0;H[p>>2]=H[p>>2]+1;p=z+1|0;Ma(b+N(p,12)|0,i,H[h+4>>2]);if((a|0)!=(c|0)){i=H[f+28>>2]+H[f+24>>2]|0;h=H[f+12>>2];b=H[f+16>>2]-h|0;if((i|0)==((b?N(b>>2,113)-1|0:0)|0)){_b(f+8|0);i=H[f+24>>2]+H[f+28>>2]|0;h=H[f+12>>2]}b=(i>>>0)/113|0;b=H[h+(b<<2)>>2]+N(i-N(b,113)|0,36)|0;H[b+32>>2]=z;H[b+28>>2]=l;H[b+24>>2]=g;H[b+12>>2]=a;H[b+4>>2]=s;H[b+8>>2]=q;H[b>>2]=c;H[b+20>>2]=q;H[b+16>>2]=s;H[f+28>>2]=H[f+28>>2]+1}if((a|0)==(k|0)){break e}b=H[f+28>>2]+H[f+24>>2]|0;i=H[f+12>>2];h=H[f+16>>2]-i|0;if((b|0)==((h?N(h>>2,113)-1|0:0)|0)){_b(f+8|0);i=H[f+12>>2];b=H[f+24>>2]+H[f+28>>2]|0}h=(b>>>0)/113|0;b=H[(h<<2)+i>>2]+N(b-N(h,113)|0,36)|0;H[b+32>>2]=p;H[b+28>>2]=o;H[b+24>>2]=g;H[b+12>>2]=k;H[b+8>>2]=q;H[b+4>>2]=s;H[b>>2]=a;H[b+16>>2]=w;H[b+20>>2]=x;g=H[f+28>>2]+1|0;H[f+28>>2]=g;break d}while(1){g=(a-1|0)==(g|0)?0:g+1|0;H[h+(b<<2)>>2]=g;a=H[d+8>>2];b=b+1|0;if(a>>>0>b>>>0){continue}break}}if(!u|!a){break e}h=0;b=1;while(1){g=0;i:{if(!b){b=0;break i}i=H[s+24>>2]+(N(H[s+4>>2],c+h|0)<<2)|0;while(1){b=H[H[d+116>>2]+(g<<2)>>2]<<2;o=H[d>>2]-H[b+H[l>>2]>>2]|0;if(o){ac(I,o,H[b+i>>2]);a=H[d+8>>2]}b=a;g=g+1|0;if(g>>>0>>0){continue}break}}h=h+1|0;if((u|0)!=(h|0)){continue}break}}g=H[f+28>>2]}if(g){continue}break}}H[n+16>>2]=c;H[n>>2]=k;H[f+28>>2]=0;a=H[f+16>>2];g=H[f+12>>2];c=a-g|0;if(c>>>0>=9){while(1){Wk(H[g>>2]);g=H[f+12>>2]+4|0;H[f+12>>2]=g;a=H[f+16>>2];c=a-g|0;if(c>>>0>8){continue}break}}b=56;j:{switch((c>>>2|0)-1|0){case 1:b=113;case 0:H[f+24>>2]=b;break;default:break j}}k:{if((a|0)==(g|0)){break k}while(1){Wk(H[g>>2]);g=g+4|0;if((g|0)!=(a|0)){continue}break}a=H[f+16>>2];b=H[f+12>>2];if((a|0)==(b|0)){break k}H[f+16>>2]=a+(((a-b|0)-4>>>2^-1)<<2)}a=H[f+8>>2];if(a){Wk(a)}da=f+32|0;break a}Fa();X()}Fa();X()}ue(B,e);ue(C,e);ue(D,e);ue(E,e)}da=n+32|0;return 1}function _j(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=O(0),z=0,A=0;c=da+-64|0;da=c;f=H[a+80>>2];H[c+40>>2]=0;H[c+44>>2]=0;H[c+56>>2]=a;H[c+48>>2]=a;H[c+32>>2]=0;H[c+36>>2]=0;H[c+52>>2]=1065353216;e=2;a:{if((f|0)!=1){if(f&f-1){f=Rk(f)}e=f;if(!f){break a}}$j(c+32|0,e)}f=H[a+80>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;b:{c:{d:{e:{if(!f){H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;break e}if(f>>>0>=1073741824){break b}f=f<<2;s=$k(f);H[c+16>>2]=s;b=f+s|0;H[c+24>>2]=b;gk(s,0,f);H[c+20>>2]=b;H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;z=c+40|0;f=0;while(1){d=0;b=H[c+48>>2];m=H[b+8>>2];n=H[b+12>>2]-m|0;u=(n|0)<=0;f:{if(u){break f}b=n>>>2|0;b=b>>>0>1?b:1;i=b&1;e=0;if(n>>>0>=8){j=b&1073741822;b=0;while(1){g=e<<2;h=H[g+m>>2];if(I[h+84|0]){h=f}else{h=H[H[h+68>>2]+(f<<2)>>2]}e=e+2|0;h=h<<3^d<<2;d=H[m+(g|4)>>2];if(I[d+84|0]){d=f}else{d=H[H[d+68>>2]+(f<<2)>>2]}d=h^d<<2;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!i){break f}b=H[m+(e<<2)>>2];if(I[b+84|0]){b=f}else{b=H[H[b+68>>2]+(f<<2)>>2]}d=b<<2^d<<1}g:{h:{g=H[c+36>>2];if(!g){break h}i=H[c+32>>2];e=Il(g)>>>0>1;b=g-1&d;i:{if(!e){break i}b=d;if(b>>>0>>0){break i}b=(d>>>0)%(g>>>0)|0}h=b;b=H[i+(h<<2)>>2];if(!b){break h}k=H[b>>2];if(!k){break h}p=H[c+56>>2];j:{k:{if(!e){v=g-1|0;while(1){b=H[k+4>>2];l:{if((b|0)!=(d|0)){if((h|0)==(b&v)){break l}break h}w=H[p+8>>2];b=H[p+12>>2]-w|0;if((b|0)<=0){break j}i=H[k+8>>2];l=1;o=b>>2;A=(o|0)>1?o:1;e=0;while(1){b=f;j=H[w+(e<<2)>>2];if(I[j+84|0]){j=i}else{j=H[j+68>>2];b=H[j+(f<<2)>>2];j=H[j+(i<<2)>>2]}if((b|0)==(j|0)){e=e+1|0;l=(o|0)>(e|0);if((e|0)!=(A|0)){continue}}break}if(!l){break k}}k=H[k>>2];if(k){continue}break}break h}while(1){b=H[k+4>>2];m:{if((b|0)!=(d|0)){if(b>>>0>=g>>>0){b=(b>>>0)%(g>>>0)|0}if((b|0)==(h|0)){break m}break h}v=H[p+8>>2];b=H[p+12>>2]-v|0;if((b|0)<=0){break j}i=H[k+8>>2];l=1;o=b>>2;w=(o|0)>1?o:1;e=0;while(1){b=f;j=H[v+(e<<2)>>2];if(I[j+84|0]){j=i}else{j=H[j+68>>2];b=H[j+(f<<2)>>2];j=H[j+(i<<2)>>2]}if((b|0)==(j|0)){e=e+1|0;l=(o|0)>(e|0);if((e|0)!=(w|0)){continue}}break}if(!l){break k}}k=H[k>>2];if(k){continue}break}break h}if(!k){break h}}H[(f<<2)+s>>2]=H[k+12>>2];break g}n:{if(u){h=0;break n}b=n>>>2|0;b=b>>>0>1?b:1;i=b&1;h=0;e=0;if(n>>>0>=8){j=b&1073741822;b=0;while(1){l=e<<2;d=H[l+m>>2];if(I[d+84|0]){d=f}else{d=H[H[d+68>>2]+(f<<2)>>2]}e=e+2|0;h=d<<3^h<<2;d=H[m+(l|4)>>2];if(I[d+84|0]){d=f}else{d=H[H[d+68>>2]+(f<<2)>>2]}h=h^d<<2;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!i){break n}b=H[m+(e<<2)>>2];if(I[b+84|0]){b=f}else{b=H[H[b+68>>2]+(f<<2)>>2]}h=b<<2^h<<1}o:{p:{if(!g){break p}l=g-1|0;if(l&g){k=g>>>0<=h>>>0?(h>>>0)%(g>>>0)|0:h;j=H[H[c+32>>2]+(k<<2)>>2];if(!j){break p}m=H[c+56>>2];while(1){j=H[j>>2];if(!j){break p}b=H[j+4>>2];if((b|0)!=(h|0)){if(b>>>0>=g>>>0){b=(b>>>0)%(g>>>0)|0}if((b|0)!=(k|0)){break p}}p=H[m+8>>2];b=H[m+12>>2]-p|0;if((b|0)<=0){break o}d=H[j+8>>2];l=1;n=b>>2;o=(n|0)>1?n:1;e=0;while(1){b=f;i=H[p+(e<<2)>>2];if(I[i+84|0]){i=d}else{i=H[i+68>>2];b=H[i+(f<<2)>>2];i=H[i+(d<<2)>>2]}if((b|0)==(i|0)){e=e+1|0;l=(n|0)>(e|0);if((e|0)!=(o|0)){continue}}break}if(l){continue}break}break o}k=h&l;j=H[H[c+32>>2]+(k<<2)>>2];if(!j){break p}m=H[c+56>>2];while(1){j=H[j>>2];if(!j){break p}b=H[j+4>>2];if((b|0)!=(h|0)&(b&l)!=(k|0)){break p}o=H[m+8>>2];b=H[m+12>>2]-o|0;if((b|0)<=0){break o}d=H[j+8>>2];n=1;p=b>>2;u=(p|0)>1?p:1;e=0;while(1){b=f;i=H[o+(e<<2)>>2];if(I[i+84|0]){i=d}else{i=H[i+68>>2];b=H[i+(f<<2)>>2];i=H[i+(d<<2)>>2]}if((b|0)==(i|0)){e=e+1|0;n=(p|0)>(e|0);if((e|0)!=(u|0)){continue}}break}if(n){continue}break}break o}e=$k(16);H[e+8>>2]=f;H[e+4>>2]=h;H[e>>2]=0;H[e+12>>2]=t;y=O(H[c+44>>2]+1>>>0);q=L[c+52>>2];q:{if(y>O(q*O(g>>>0))?0:g){break q}k=(g-1&g)!=0|g>>>0<3|g<<1;d=2;q=O(U(O(y/q)));r:{if(q=O(0)){b=~~q>>>0;break r}b=0}b=b>>>0>k>>>0?b:k;s:{if((b|0)==1){break s}if(!(b&b-1)){d=b;break s}d=Rk(b);g=H[c+36>>2]}t:{if(d>>>0<=g>>>0){if(d>>>0>=g>>>0){break t}k=g>>>0<3;q=O(U(O(O(K[c+44>>2])/L[c+52>>2])));u:{if(q=O(0)){b=~~q>>>0;break u}b=0}v:{w:{if(k){break w}if(Il(g)>>>0>1){break w}b=b>>>0<2?b:1<<32-Q(b-1|0);break v}b=Rk(b)}d=b>>>0>d>>>0?b:d;if(g>>>0<=d>>>0){break t}}$j(c+32|0,d)}g=H[c+36>>2];b=g-1|0;if(!(b&g)){k=b&h;break q}if(g>>>0>h>>>0){k=h;break q}k=(h>>>0)%(g>>>0)|0}d=H[c+32>>2]+(k<<2)|0;b=H[d>>2];x:{if(!b){H[e>>2]=H[c+40>>2];H[c+40>>2]=e;H[d>>2]=z;b=H[e>>2];if(!b){break x}d=H[b+4>>2];b=g-1|0;y:{if(!(b&g)){d=b&d;break y}if(d>>>0>>0){break y}d=(d>>>0)%(g>>>0)|0}H[H[c+32>>2]+(d<<2)>>2]=e;break x}H[e>>2]=H[b>>2];H[b>>2]=e}H[c+44>>2]=H[c+44>>2]+1;x=H[c+8>>2];r=H[c+4>>2];s=H[c+16>>2]}H[(f<<2)+s>>2]=t;t=t+1|0;if((r|0)!=(x|0)){H[r>>2]=f;r=r+4|0;H[c+4>>2]=r;break g}h=H[c>>2];d=x-h|0;i=d>>2;b=i+1|0;if(b>>>0>=1073741824){break d}e=d>>1;e=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>=1073741824){break c}b=$k(e<<2)}else{b=0}i=b+(i<<2)|0;H[i>>2]=f;x=b+(e<<2)|0;r=i+4|0;if((d|0)>0){ek(b,h,d)}H[c+8>>2]=x;H[c+4>>2]=r;H[c>>2]=b;if(!h){break g}Wk(h)}f=f+1|0;b=H[a+80>>2];if(f>>>0>>0){continue}break}if((b|0)==(t|0)){break e}ga[H[H[a>>2]+24>>2]](a,c+16|0,c);H[a+80>>2]=t}a=H[c>>2];if(a){H[c+4>>2]=a;Wk(a)}a=H[c+16>>2];if(a){H[c+20>>2]=a;Wk(a)}f=H[c+40>>2];if(f){while(1){a=H[f>>2];Wk(f);f=a;if(f){continue}break}}a=H[c+32>>2];H[c+32>>2]=0;if(a){Wk(a)}da=c- -64|0;return}Fa();X()}Ua(1604);X()}Fa();X()}function hb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=O(0);j=da+-64|0;da=j;H[j+40>>2]=0;H[j+44>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+48>>2]=1065353216;c=H[a+80>>2];H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;k=$k(d);H[j+16>>2]=k;c=d+k|0;H[j+24>>2]=c;gk(k,0,d);H[j+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],q,0)|0;c=c+f|0;e=I[c|0]|I[c+1|0]<<8;G[j+30>>1]=e;c:{d:{e:{if(!i){break e}g=H[j+32>>2];h=e^318;d=Il(i)>>>0>1;c=h&i-1;f:{if(!d){break f}c=h;if(c>>>0>>0){break f}c=(h>>>0)%(i>>>0)|0}f=c;c=H[g+(f<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!d){i=i-1|0;while(1){d=H[c+4>>2];g:{if((d|0)!=(h|0)){if((f|0)==(d&i)){break g}break e}if((e|0)==J[c+8>>1]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){d=H[c+4>>2];h:{if((d|0)!=(h|0)){if(d>>>0>=i>>>0){d=(d>>>0)%(i>>>0)|0}if((d|0)==(f|0)){break h}break e}if((e|0)==J[c+8>>1]){break d}}c=H[c>>2];if(c){continue}break}}H[j+12>>2]=o;G[j+8>>1]=e;c=0;h=J[j+8>>1];i=h^318;i:{j:{g=j+32|0;e=H[g+4>>2];if(!e){break j}d=Il(e);k:{if(d>>>0>=2){c=i;if(e>>>0<=c>>>0){c=(i>>>0)%(e>>>0)|0}l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}if(d>>>0<=1){break k}while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break j}}if((h|0)!=J[l+8>>1]){continue}break}c=0;break i}c=i&e-1;l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}}f=e-1|0;while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)&(d&f)!=(c|0)){break j}if((h|0)!=J[l+8>>1]){continue}break}c=0;break i}l=$k(16);G[l+8>>1]=J[j+8>>1];d=H[j+12>>2];H[l+4>>2]=i;H[l+12>>2]=d;H[l>>2]=0;s=O(H[g+12>>2]+1>>>0);n=L[g+16>>2];l:{if(s>O(n*O(e>>>0))?0:e){break l}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;n=O(U(O(s/n)));m:{if(n=O(0)){f=~~n>>>0;break m}f=0}d=d>>>0>>0?f:d;n:{if((d|0)==1){break n}if(!(d&d-1)){c=d;break n}c=Rk(d);e=H[g+4>>2]}o:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break o}f=e>>>0<3;n=O(U(O(O(K[g+12>>2])/L[g+16>>2])));p:{if(n=O(0)){d=~~n>>>0;break p}d=0}q:{r:{if(f){break r}if(Il(e)>>>0>1){break r}d=d>>>0<2?d:1<<32-Q(d-1|0);break q}d=Rk(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break o}}d=0;e=0;k=c;s:{t:{u:{v:{if(c){if(k>>>0>=1073741824){break v}c=$k(k<<2);f=H[g>>2];H[g>>2]=c;if(f){Wk(f)}H[g+4>>2]=k;f=0;if(k-1>>>0>=3){c=k&-4;while(1){h=f<<2;H[h+H[g>>2]>>2]=0;H[H[g>>2]+(h|4)>>2]=0;H[H[g>>2]+(h|8)>>2]=0;H[H[g>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[g>>2]+(f<<2)>>2]=0;f=f+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}d=H[g+8>>2];if(!d){break s}c=g+8|0;h=H[d+4>>2];f=Il(k);if(f>>>0<2){break u}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}if(f>>>0<=1){break t}while(1){e=H[c+4>>2];if(k>>>0<=e>>>0){e=(e>>>0)%(k>>>0)|0}w:{if((e|0)==(h|0)){d=c;break w}f=c;p=e<<2;r=p+H[g>>2]|0;if(!H[r>>2]){H[r>>2]=d;d=c;h=e;break w}while(1){e=f;f=H[e>>2];if(J[c+8>>1]==J[f+8>>1]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break s}c=H[g>>2];H[g>>2]=0;if(c){Wk(c)}H[g+4>>2]=0;break s}Ua(1604);X()}h=k-1&h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}}r=k-1|0;while(1){e=r&H[c+4>>2];x:{if((e|0)==(h|0)){d=c;break x}f=c;p=e<<2;k=p+H[g>>2]|0;if(H[k>>2]){while(1){e=f;f=H[e>>2];if(J[c+8>>1]==J[f+8>>1]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c;break x}H[k>>2]=d;d=c;h=e}c=H[d>>2];if(c){continue}break}}}e=H[g+4>>2];c=e-1|0;if(!(c&e)){c=c&i;break l}if(e>>>0>i>>>0){c=i;break l}c=(i>>>0)%(e>>>0)|0}c=H[g>>2]+(c<<2)|0;d=H[c>>2];y:{if(!d){H[l>>2]=H[g+8>>2];H[g+8>>2]=l;H[c>>2]=g+8;c=H[l>>2];if(!c){break y}c=H[c+4>>2];d=e-1|0;z:{if(!(d&e)){c=c&d;break z}if(c>>>0>>0){break z}c=(c>>>0)%(e>>>0)|0}H[H[g>>2]+(c<<2)>>2]=l;break y}H[l>>2]=H[d>>2];H[d>>2]=l}H[g+12>>2]=H[g+12>>2]+1;c=1}F[j+60|0]=c;H[j+56>>2]=l;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,o)|0,j+30|0,c);k=H[j+16>>2];H[k+(q<<2)>>2]=o;o=o+1|0;break c}H[(q<<2)+k>>2]=H[c+12>>2]}c=q+1|0;m=c?m:m+1|0;q=c;c=H[a+80>>2];if(!m&c>>>0>q>>>0){i=H[j+36>>2];continue}break}if((c|0)==(o|0)){break b}A:{if(!I[a+84|0]){i=H[a+68>>2];b=H[a+72>>2]-i|0;if(!b){break A}h=H[j+16>>2];b=b>>2;b=b>>>0>1?b:1;f=b&3;e=0;c=0;if(b-1>>>0>=3){d=b&-4;k=0;while(1){m=c<<2;b=m+i|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|4)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|8)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|12)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+4|0;k=k+4|0;if((d|0)!=(k|0)){continue}break}}if(!f){break A}while(1){b=i+(c<<2)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break A}F[a+84|0]=0;i=H[a+68>>2];b=H[a+72>>2]-i>>2;B:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);i=H[a+68>>2];c=H[a+80>>2];break B}if(b>>>0<=c>>>0){break B}H[a+72>>2]=(c<<2)+i}if(!c){break A}h=H[j+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;k=0;while(1){m=b<<2;H[m+i>>2]=H[h+m>>2];d=m|4;H[d+i>>2]=H[d+h>>2];d=m|8;H[d+i>>2]=H[d+h>>2];d=m|12;H[d+i>>2]=H[d+h>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=c&3;if(!d){break A}while(1){c=b<<2;H[c+i>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=o}a=H[j+16>>2];if(a){Wk(a)}c=H[j+40>>2];if(c){while(1){a=H[c>>2];Wk(c);c=a;if(c){continue}break}}a=H[j+32>>2];H[j+32>>2]=0;if(a){Wk(a)}da=j- -64|0;return o}Fa();X()}function db(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=O(0);j=da+-64|0;da=j;H[j+40>>2]=0;H[j+44>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+48>>2]=1065353216;c=H[a+80>>2];H[j+24>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}d=c<<2;k=$k(d);H[j+16>>2]=k;c=d+k|0;H[j+24>>2]=c;gk(k,0,d);H[j+20>>2]=c;while(1){c=H[H[b>>2]>>2];f=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],q,0)|0;e=I[c+f|0];F[j+31|0]=e;c:{d:{e:{if(!i){break e}g=H[j+32>>2];h=e^318;d=Il(i)>>>0>1;c=h&i-1;f:{if(!d){break f}c=h;if(c>>>0>>0){break f}c=(h>>>0)%(i>>>0)|0}f=c;c=H[g+(f<<2)>>2];if(!c){break e}c=H[c>>2];if(!c){break e}if(!d){i=i-1|0;while(1){d=H[c+4>>2];g:{if((d|0)!=(h|0)){if((f|0)==(d&i)){break g}break e}if((e|0)==I[c+8|0]){break d}}c=H[c>>2];if(c){continue}break}break e}while(1){d=H[c+4>>2];h:{if((d|0)!=(h|0)){if(d>>>0>=i>>>0){d=(d>>>0)%(i>>>0)|0}if((d|0)==(f|0)){break h}break e}if((e|0)==I[c+8|0]){break d}}c=H[c>>2];if(c){continue}break}}H[j+12>>2]=o;F[j+8|0]=e;c=0;h=I[j+8|0];i=h^318;i:{j:{g=j+32|0;e=H[g+4>>2];if(!e){break j}d=Il(e);k:{if(d>>>0>=2){c=i;if(e>>>0<=c>>>0){c=(i>>>0)%(e>>>0)|0}l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}if(d>>>0<=1){break k}while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)){if(d>>>0>=e>>>0){d=(d>>>0)%(e>>>0)|0}if((c|0)!=(d|0)){break j}}if((h|0)!=I[l+8|0]){continue}break}c=0;break i}c=i&e-1;l=H[H[g>>2]+(c<<2)>>2];if(!l){break j}}f=e-1|0;while(1){l=H[l>>2];if(!l){break j}d=H[l+4>>2];if((d|0)!=(i|0)&(d&f)!=(c|0)){break j}if((h|0)!=I[l+8|0]){continue}break}c=0;break i}l=$k(16);F[l+8|0]=I[j+8|0];d=H[j+12>>2];H[l+4>>2]=i;H[l+12>>2]=d;H[l>>2]=0;s=O(H[g+12>>2]+1>>>0);n=L[g+16>>2];l:{if(s>O(n*O(e>>>0))?0:e){break l}d=(e-1&e)!=0|e>>>0<3|e<<1;c=2;n=O(U(O(s/n)));m:{if(n=O(0)){f=~~n>>>0;break m}f=0}d=d>>>0>>0?f:d;n:{if((d|0)==1){break n}if(!(d&d-1)){c=d;break n}c=Rk(d);e=H[g+4>>2]}o:{if(c>>>0<=e>>>0){if(c>>>0>=e>>>0){break o}f=e>>>0<3;n=O(U(O(O(K[g+12>>2])/L[g+16>>2])));p:{if(n=O(0)){d=~~n>>>0;break p}d=0}q:{r:{if(f){break r}if(Il(e)>>>0>1){break r}d=d>>>0<2?d:1<<32-Q(d-1|0);break q}d=Rk(d)}c=c>>>0>>0?d:c;if(e>>>0<=c>>>0){break o}}d=0;e=0;k=c;s:{t:{u:{v:{if(c){if(k>>>0>=1073741824){break v}c=$k(k<<2);f=H[g>>2];H[g>>2]=c;if(f){Wk(f)}H[g+4>>2]=k;f=0;if(k-1>>>0>=3){c=k&-4;while(1){h=f<<2;H[h+H[g>>2]>>2]=0;H[H[g>>2]+(h|4)>>2]=0;H[H[g>>2]+(h|8)>>2]=0;H[H[g>>2]+(h|12)>>2]=0;f=f+4|0;d=d+4|0;if((c|0)!=(d|0)){continue}break}}c=k&3;if(c){while(1){H[H[g>>2]+(f<<2)>>2]=0;f=f+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}d=H[g+8>>2];if(!d){break s}c=g+8|0;h=H[d+4>>2];f=Il(k);if(f>>>0<2){break u}h=h>>>0>=k>>>0?(h>>>0)%(k>>>0)|0:h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}if(f>>>0<=1){break t}while(1){e=H[c+4>>2];if(k>>>0<=e>>>0){e=(e>>>0)%(k>>>0)|0}w:{if((e|0)==(h|0)){d=c;break w}f=c;p=e<<2;r=p+H[g>>2]|0;if(!H[r>>2]){H[r>>2]=d;d=c;h=e;break w}while(1){e=f;f=H[e>>2];if(I[c+8|0]==I[f+8|0]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c}c=H[d>>2];if(c){continue}break}break s}c=H[g>>2];H[g>>2]=0;if(c){Wk(c)}H[g+4>>2]=0;break s}Ua(1604);X()}h=k-1&h;H[H[g>>2]+(h<<2)>>2]=c;c=H[d>>2];if(!c){break s}}r=k-1|0;while(1){e=r&H[c+4>>2];x:{if((e|0)==(h|0)){d=c;break x}f=c;p=e<<2;k=p+H[g>>2]|0;if(H[k>>2]){while(1){e=f;f=H[e>>2];if(I[c+8|0]==I[f+8|0]?f:0){continue}break}H[d>>2]=f;H[e>>2]=H[H[p+H[g>>2]>>2]>>2];H[H[p+H[g>>2]>>2]>>2]=c;break x}H[k>>2]=d;d=c;h=e}c=H[d>>2];if(c){continue}break}}}e=H[g+4>>2];c=e-1|0;if(!(c&e)){c=c&i;break l}if(e>>>0>i>>>0){c=i;break l}c=(i>>>0)%(e>>>0)|0}c=H[g>>2]+(c<<2)|0;d=H[c>>2];y:{if(!d){H[l>>2]=H[g+8>>2];H[g+8>>2]=l;H[c>>2]=g+8;c=H[l>>2];if(!c){break y}c=H[c+4>>2];d=e-1|0;z:{if(!(d&e)){c=c&d;break z}if(c>>>0>>0){break z}c=(c>>>0)%(e>>>0)|0}H[H[g>>2]+(c<<2)>>2]=l;break y}H[l>>2]=H[d>>2];H[d>>2]=l}H[g+12>>2]=H[g+12>>2]+1;c=1}F[j+60|0]=c;H[j+56>>2]=l;c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,o)|0,j+31|0,c);k=H[j+16>>2];H[k+(q<<2)>>2]=o;o=o+1|0;break c}H[(q<<2)+k>>2]=H[c+12>>2]}c=q+1|0;m=c?m:m+1|0;q=c;c=H[a+80>>2];if(!m&c>>>0>q>>>0){i=H[j+36>>2];continue}break}if((c|0)==(o|0)){break b}A:{if(!I[a+84|0]){i=H[a+68>>2];b=H[a+72>>2]-i|0;if(!b){break A}h=H[j+16>>2];b=b>>2;b=b>>>0>1?b:1;f=b&3;e=0;c=0;if(b-1>>>0>=3){d=b&-4;k=0;while(1){m=c<<2;b=m+i|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|4)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|8)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];b=i+(m|12)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+4|0;k=k+4|0;if((d|0)!=(k|0)){continue}break}}if(!f){break A}while(1){b=i+(c<<2)|0;H[b>>2]=H[h+(H[b>>2]<<2)>>2];c=c+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}break A}F[a+84|0]=0;i=H[a+68>>2];b=H[a+72>>2]-i>>2;B:{if(b>>>0>>0){nb(a+68|0,c-b|0,2204);i=H[a+68>>2];c=H[a+80>>2];break B}if(b>>>0<=c>>>0){break B}H[a+72>>2]=(c<<2)+i}if(!c){break A}h=H[j+16>>2];e=0;b=0;if(c-1>>>0>=3){f=c&-4;k=0;while(1){m=b<<2;H[m+i>>2]=H[h+m>>2];d=m|4;H[d+i>>2]=H[d+h>>2];d=m|8;H[d+i>>2]=H[d+h>>2];d=m|12;H[d+i>>2]=H[d+h>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=c&3;if(!d){break A}while(1){c=b<<2;H[c+i>>2]=H[c+h>>2];b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}H[a+80>>2]=o}a=H[j+16>>2];if(a){Wk(a)}c=H[j+40>>2];if(c){while(1){a=H[c>>2];Wk(c);c=a;if(c){continue}break}}a=H[j+32>>2];H[j+32>>2]=0;if(a){Wk(a)}da=j- -64|0;return o}Fa();X()}function Rg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=da-32|0;da=j;c=H[a+16>>2];H[a+20>>2]=c;a:{b:{c:{d:{e:{if((c|0)!=H[a+24>>2]){H[c>>2]=b;b=c+4|0;H[a+20>>2]=b;f=c;break e}f=$k(4);H[f>>2]=b;b=f+4|0;H[a+24>>2]=b;H[a+20>>2]=b;H[a+16>>2]=f;if(c){break d}}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0;break c}Wk(c);b=H[a+20>>2];f=H[a+16>>2];if((b|0)==(f|0)){break b}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0}if((c|0)<=0){d=H[a+28>>2];while(1){c=b-4|0;e=H[c>>2];f:{if((e|0)!=-1){e=(e>>>0)/3|0;if(!(H[d+(e>>>3&268435452)>>2]>>>e&1)){break f}}H[a+20>>2]=c;b=c}if((b|0)!=(f|0)){continue}break}break b}p=a+120|0;c=(c|0)/12|0;q=(c|0)>1?c:1;g:{h:{i:{while(1){j:{k:{l:{c=b-4|0;b=H[c>>2];if((b|0)==-1){break l}d=H[a+28>>2];f=(b>>>0)/3|0;if(H[d+(f>>>3&268435452)>>2]>>>f&1){break l}i=0;while(1){H[a+164>>2]=H[a+164>>2]+1;h=(b>>>0)/3|0;g=(b|0)==-1;l=g?-1:h;c=(l>>>3&536870908)+d|0;H[c>>2]=H[c>>2]|1<>2];m:{if((c|0)!=H[a+80>>2]){H[c>>2]=b;H[a+76>>2]=c+4;break m}d=H[a+72>>2];f=c-d|0;k=f>>2;c=k+1|0;if(c>>>0>1073741823){break j}e=f>>1;e=f>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>1073741823){break a}c=$k(e<<2)}else{c=0}k=c+(k<<2)|0;H[k>>2]=b;if((f|0)>0){ek(c,d,f)}H[a+80>>2]=c+(e<<2);H[a+76>>2]=k+4;H[a+72>>2]=c;if(!d){break m}Wk(d)}c=-1;c=(b|0)!=-1?H[H[H[a+12>>2]>>2]+(b<<2)>>2]:c;m=c<<2;k=H[m+H[a+152>>2]>>2];n:{o:{f=H[a+84>>2]+(c>>>3&536870908)|0;d=H[f>>2];c=1<>2]=c|d;if((k|0)==-1){break o}}p:{if(g){break p}c=-1;f=b+1|0;g=(f>>>0)%3|0?f:b-2|0;if((g|0)!=-1){c=H[H[H[a+12>>2]+12>>2]+(g<<2)>>2]}q:{r:{h=b-N(h,3)|0;s:{if(h){f=b-1|0;break s}f=b+2|0;if((f|0)==-1){break r}}f=H[H[H[a+12>>2]+12>>2]+(f<<2)>>2];e=(f|0)==-1?-1:(f>>>0)/3|0;d=(c|0)==-1?-1:(c>>>0)/3|0;break q}e=-1;f=-1;d=(c|0)==-1?-1:(c>>>0)/3|0}t:{if((g|0)==-1){break t}n=H[H[a+12>>2]+12>>2];g=H[n+(g<<2)>>2];if((g|0)==-1){break t}o=H[a+28>>2];g=(g>>>0)/3|0;if(H[o+(g>>>3&268435452)>>2]>>>g&1){break t}u:{v:{if(h){d=b-1|0;break v}d=b+2|0;if((d|0)==-1){break u}}d=H[(d<<2)+n>>2];if((d|0)==-1){break u}d=(d>>>0)/3|0;if(H[(d>>>3&268435452)+o>>2]>>>d&1){break u}d=H[a+272>>2];w:{if((d|0)!=H[a+276>>2]){H[d>>2]=1;H[a+272>>2]=d+4;break w}g=H[a+268>>2];e=d-g|0;h=e>>2;d=h+1|0;if(d>>>0>1073741823){break i}i=e>>1;i=e>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(i){if(i>>>0>1073741823){break a}d=$k(i<<2)}else{d=0}h=d+(h<<2)|0;H[h>>2]=1;if((e|0)>0){ek(d,g,e)}H[a+276>>2]=d+(i<<2);H[a+272>>2]=h+4;H[a+268>>2]=d;if(!g){break w}Wk(g)}H[a+168>>2]=H[a+168>>2]+1;x:{if((k|0)==-1){break x}d=H[H[a+152>>2]+m>>2];if(H[H[a+140>>2]+(d>>>3&536870908)>>2]>>>d&1){break x}Sg(a,b,0)}b=H[a+164>>2];H[j+4>>2]=l;d=j+4|0;H[j+16>>2]=d;Yg(j+24|0,p,d,j+16|0);H[H[j+24>>2]+12>>2]=b;b=H[a+20>>2];H[b-4>>2]=f;if((b|0)!=H[a+24>>2]){H[b>>2]=c;H[a+20>>2]=b+4;break k}d=H[a+16>>2];f=b-d|0;g=f>>2;b=g+1|0;if(b>>>0>1073741823){break h}e=f>>1;e=f>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break g}b=$k(e<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;if((f|0)>0){ek(b,d,f)}H[a+24>>2]=b+(e<<2);H[a+20>>2]=g+4;H[a+16>>2]=b;if(!d){break k}Wk(d);break k}if((e|0)!=-1){Zg(a,H[a+164>>2],0,e)}b=H[a+272>>2];if((b|0)!=H[a+276>>2]){H[b>>2]=3;H[a+272>>2]=b+4;break n}d=H[a+268>>2];f=b-d|0;g=f>>2;b=g+1|0;if(b>>>0>1073741823){break i}e=f>>1;e=f>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break a}b=$k(e<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=3;if((f|0)>0){ek(b,d,f)}H[a+276>>2]=b+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=b;if(!d){break n}Wk(d);break n}if((d|0)!=-1){Zg(a,H[a+164>>2],1,d)}y:{z:{if(h){b=b-1|0;break z}b=b+2|0;if((b|0)==-1){break y}}b=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break y}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break y}b=H[a+272>>2];if((b|0)!=H[a+276>>2]){H[b>>2]=5;H[a+272>>2]=b+4;c=f;break n}d=H[a+268>>2];c=b-d|0;g=c>>2;b=g+1|0;if(b>>>0>1073741823){break i}e=c>>1;e=c>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break a}b=$k(e<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=5;if((c|0)>0){ek(b,d,c)}H[a+276>>2]=b+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=b;if(!d){c=f;break n}Wk(d);c=f;break n}if((e|0)==-1){break p}Zg(a,H[a+164>>2],0,e)}b=H[a+272>>2];A:{if((b|0)!=H[a+276>>2]){H[b>>2]=7;H[a+272>>2]=b+4;break A}f=H[a+268>>2];c=b-f|0;e=c>>2;b=e+1|0;if(b>>>0>1073741823){break i}d=c>>1;d=c>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>1073741823){break a}b=$k(d<<2)}else{b=0}e=b+(e<<2)|0;H[e>>2]=7;if((c|0)>0){ek(b,f,c)}H[a+276>>2]=b+(d<<2);H[a+272>>2]=e+4;H[a+268>>2]=b;if(!f){break A}Wk(f)}H[a+20>>2]=H[a+20>>2]-4;break k}c=H[a+272>>2];B:{if((c|0)!=H[a+276>>2]){H[c>>2]=0;H[a+272>>2]=c+4;break B}d=H[a+268>>2];f=c-d|0;g=f>>2;c=g+1|0;if(c>>>0>1073741823){break i}e=f>>1;e=f>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>1073741823){break a}c=$k(e<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=0;if((f|0)>0){ek(c,d,f)}H[a+276>>2]=c+(e<<2);H[a+272>>2]=g+4;H[a+268>>2]=c;if(!d){break B}Wk(d)}c=-1;if((b|0)==-1){break n}f=b+1|0;b=(f>>>0)%3|0?f:b-2|0;if((b|0)==-1){break n}c=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2]}i=i+1|0;if((q|0)==(i|0)){break k}d=H[a+28>>2];b=c;continue}}H[a+20>>2]=c}b=H[a+20>>2];if((b|0)!=H[a+16>>2]){continue}break b}break}Fa();X()}Fa();X()}Fa();X()}break a}da=j+32|0;return 1}Ua(1604);X()}function Xe(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=H[b+48>>2];if(!h){b=$k(32);c=I[1814]|I[1815]<<8|(I[1816]<<16|I[1817]<<24);f=I[1810]|I[1811]<<8|(I[1812]<<16|I[1813]<<24);F[b+15|0]=f;F[b+16|0]=f>>>8;F[b+17|0]=f>>>16;F[b+18|0]=f>>>24;F[b+19|0]=c;F[b+20|0]=c>>>8;F[b+21|0]=c>>>16;F[b+22|0]=c>>>24;c=I[1807]|I[1808]<<8|(I[1809]<<16|I[1810]<<24);f=I[1803]|I[1804]<<8|(I[1805]<<16|I[1806]<<24);F[b+8|0]=f;F[b+9|0]=f>>>8;F[b+10|0]=f>>>16;F[b+11|0]=f>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1799]|I[1800]<<8|(I[1801]<<16|I[1802]<<24);f=I[1795]|I[1796]<<8|(I[1797]<<16|I[1798]<<24);F[b|0]=f;F[b+1|0]=f>>>8;F[b+2|0]=f>>>16;F[b+3|0]=f>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+23|0]=0;H[a>>2]=-1;el(a+4|0,b,23);Wk(b);return}g=H[b+52>>2];if(!g){f=da-32|0;da=f;e=$k(16);H[f+16>>2]=e;H[f+20>>2]=15;H[f+24>>2]=-2147483632;F[e+15|0]=0;d=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);g=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[e+7|0]=g;F[e+8|0]=g>>>8;F[e+9|0]=g>>>16;F[e+10|0]=g>>>24;F[e+11|0]=d;F[e+12|0]=d>>>8;F[e+13|0]=d>>>16;F[e+14|0]=d>>>24;d=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);g=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[e|0]=g;F[e+1|0]=g>>>8;F[e+2|0]=g>>>16;F[e+3|0]=g>>>24;F[e+4|0]=d;F[e+5|0]=d>>>8;F[e+6|0]=d>>>16;F[e+7|0]=d>>>24;g=b+4|0;j=hi(g,f+16|0,-1);if(F[f+27|0]<0){Wk(H[f+16>>2])}a:{b:{c:{d:{e:{switch(j+1|0){case 1:d=$k(56);H[d>>2]=0;H[d+4>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;e=Th(d);H[d>>2]=12688;break c;case 0:break e;default:break d}}if((Kb(g)|0)!=10){break d}d=$k(56);H[d>>2]=0;H[d+4>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;e=Th(d);H[d>>2]=12688;break c}e=0;H[f+12>>2]=0;f:{i=H[h+12>>2];d=H[h+8>>2];if((i-d|0)>0){while(1){k=H[H[(e<<2)+d>>2]+28>>2];if(k-1>>>0>=6){if((k|0)!=9){break f}e=$k(32);H[f+16>>2]=e;H[f+20>>2]=17;H[f+24>>2]=-2147483616;F[e+17|0]=0;F[e+16|0]=I[1373];d=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);i=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[e+8|0]=i;F[e+9|0]=i>>>8;F[e+10|0]=i>>>16;F[e+11|0]=i>>>24;F[e+12|0]=d;F[e+13|0]=d>>>8;F[e+14|0]=d>>>16;F[e+15|0]=d>>>24;d=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);i=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[e|0]=i;F[e+1|0]=i>>>8;F[e+2|0]=i>>>16;F[e+3|0]=i>>>24;F[e+4|0]=d;F[e+5|0]=d>>>8;F[e+6|0]=d>>>16;F[e+7|0]=d>>>24;e=Bb(g,f+12|0,f+16|0,-1);if(F[f+27|0]<0){Wk(H[f+16>>2])}if((e|0)<=0){break f}d=H[h+8>>2];i=H[h+12>>2];e=H[f+12>>2]}e=e+1|0;H[f+12>>2]=e;if(i-d>>2>(e|0)){continue}break}}d=$k(56);H[d>>2]=0;H[d+4>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;e=Th(d);H[d>>2]=12580;break c}if((j|0)==1){break b}d=$k(56);H[d>>2]=0;H[d+4>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;e=Th(d);H[d>>2]=12688}H[e+4>>2]=h;Uh(a,e,g,c);if(!H[a>>2]){if(F[a+15|0]<0){Wk(H[a+4>>2])}c=H[e+52>>2];H[b+44>>2]=0;H[b+40>>2]=c;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}ga[H[H[e>>2]+4>>2]](e);break a}b=$k(32);c=I[1997]|I[1998]<<8|(I[1999]<<16|I[2e3]<<24);e=I[1993]|I[1994]<<8|(I[1995]<<16|I[1996]<<24);F[b+16|0]=e;F[b+17|0]=e>>>8;F[b+18|0]=e>>>16;F[b+19|0]=e>>>24;F[b+20|0]=c;F[b+21|0]=c>>>8;F[b+22|0]=c>>>16;F[b+23|0]=c>>>24;c=I[1989]|I[1990]<<8|(I[1991]<<16|I[1992]<<24);e=I[1985]|I[1986]<<8|(I[1987]<<16|I[1988]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1981]|I[1982]<<8|(I[1983]<<16|I[1984]<<24);e=I[1977]|I[1978]<<8|(I[1979]<<16|I[1980]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;F[b+24|0]=0;H[a>>2]=-1;el(a+4|0,b,24);Wk(b)}da=f+32|0;return}e=da-16|0;da=e;f=$k(16);H[e>>2]=f;H[e+4>>2]=15;H[e+8>>2]=-2147483632;F[f+15|0]=0;d=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);h=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[f+7|0]=h;F[f+8|0]=h>>>8;F[f+9|0]=h>>>16;F[f+10|0]=h>>>24;F[f+11|0]=d;F[f+12|0]=d>>>8;F[f+13|0]=d>>>16;F[f+14|0]=d>>>24;d=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);h=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[f|0]=h;F[f+1|0]=h>>>8;F[f+2|0]=h>>>16;F[f+3|0]=h>>>24;F[f+4|0]=d;F[f+5|0]=d>>>8;F[f+6|0]=d>>>16;F[f+7|0]=d>>>24;d=b+4|0;f=hi(d,e,-1);if(F[e+11|0]<0){Wk(H[e>>2])}g:{h:{i:{switch(f+1|0){case 0:if((Kb(d)|0)==10){break h}break;case 2:break i;default:break h}}f=$k(68);Jh(f);H[f+64>>2]=0;H[f>>2]=10432;break g}f=$k(64);Jh(f);H[f>>2]=12296}H[f+56>>2]=g;H[f+4>>2]=g;Uh(a,f,d,c);if(!H[a>>2]){if(F[a+15|0]<0){Wk(H[a+4>>2])}H[b+40>>2]=H[f+52>>2];H[b+44>>2]=H[f+60>>2];H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}ga[H[H[f>>2]+4>>2]](f);da=e+16|0}function ng(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=da-16|0;da=e;f=H[a+48>>2];b=$k(32);H[e>>2]=b;H[e+4>>2]=20;H[e+8>>2]=-2147483616;F[b+20|0]=0;c=I[1471]|I[1472]<<8|(I[1473]<<16|I[1474]<<24);F[b+16|0]=c;F[b+17|0]=c>>>8;F[b+18|0]=c>>>16;F[b+19|0]=c>>>24;c=I[1467]|I[1468]<<8|(I[1469]<<16|I[1470]<<24);d=I[1463]|I[1464]<<8|(I[1465]<<16|I[1466]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1459]|I[1460]<<8|(I[1461]<<16|I[1462]<<24);d=I[1455]|I[1456]<<8|(I[1457]<<16|I[1458]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;f=ji(f+24|0,e);if(F[e+11|0]<0){Wk(H[e>>2])}g=H[a+48>>2];b=$k(32);H[e>>2]=b;H[e+4>>2]=22;H[e+8>>2]=-2147483616;F[b+22|0]=0;c=I[1450]|I[1451]<<8|(I[1452]<<16|I[1453]<<24);d=I[1446]|I[1447]<<8|(I[1448]<<16|I[1449]<<24);F[b+14|0]=d;F[b+15|0]=d>>>8;F[b+16|0]=d>>>16;F[b+17|0]=d>>>24;F[b+18|0]=c;F[b+19|0]=c>>>8;F[b+20|0]=c>>>16;F[b+21|0]=c>>>24;c=I[1444]|I[1445]<<8|(I[1446]<<16|I[1447]<<24);d=I[1440]|I[1441]<<8|(I[1442]<<16|I[1443]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1436]|I[1437]<<8|(I[1438]<<16|I[1439]<<24);d=I[1432]|I[1433]<<8|(I[1434]<<16|I[1435]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;g=ji(g+24|0,e);if(F[e+11|0]<0){Wk(H[e>>2])}b=H[a+64>>2];H[a+64>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}b=H[a+56>>2];h=H[b+100>>2];i=H[a+48>>2];j=H[b+96>>2];b=$k(32);H[e>>2]=b;H[e+4>>2]=18;H[e+8>>2]=-2147483616;F[b+18|0]=0;c=I[1725]|I[1726]<<8;F[b+16|0]=c;F[b+17|0]=c>>>8;c=I[1721]|I[1722]<<8|(I[1723]<<16|I[1724]<<24);d=I[1717]|I[1718]<<8|(I[1719]<<16|I[1720]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1713]|I[1714]<<8|(I[1715]<<16|I[1716]<<24);d=I[1709]|I[1710]<<8|(I[1711]<<16|I[1712]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;b=hi(i,e,-1);if(F[e+11|0]<0){Wk(H[e>>2])}c=(h-j|0)/12|0;a:{b:{c:{d:{e:{f:{g:{h:{switch(b+1|0){case 1:break f;case 3:break g;case 0:break h;default:break c}}if(!f){break g}if(c>>>0<1e3|(Kb(H[a+48>>2])|0)>4|g^1){break e}}b=H[a+44>>2];F[e|0]=2;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],e,e+1|0)}b=$k(360);H[b+4>>2]=0;H[b+8>>2]=0;H[b+72>>2]=0;H[b+76>>2]=0;H[b>>2]=10612;H[b+12>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+64>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[b+96>>2]=0;H[b+100>>2]=0;H[b+104>>2]=0;H[b+108>>2]=0;H[b+112>>2]=0;H[b+116>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+136>>2]=1065353216;H[b+156>>2]=0;H[b+160>>2]=0;H[b+148>>2]=0;H[b+152>>2]=0;H[b+140>>2]=0;H[b+144>>2]=0;H[b+168>>2]=0;H[b+172>>2]=0;H[b+164>>2]=-1;H[b+176>>2]=0;H[b+180>>2]=0;H[b+184>>2]=0;H[b+188>>2]=0;H[b+192>>2]=0;c=b+200|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=b+232|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[b+304>>2]=0;H[b+308>>2]=0;H[b+296>>2]=0;H[b+300>>2]=0;H[b+288>>2]=0;H[b+292>>2]=0;H[b+280>>2]=0;H[b+284>>2]=0;H[b+272>>2]=0;H[b+276>>2]=0;H[b+264>>2]=0;H[b+268>>2]=0;F[b+352|0]=0;H[b+344>>2]=0;H[b+336>>2]=0;H[b+340>>2]=0;H[b+328>>2]=2;H[b+332>>2]=7;H[b+320>>2]=-1;H[b+324>>2]=0;H[b+312>>2]=0;H[b+316>>2]=-1;break d}if(!f){break c}}b=H[a+44>>2];F[e|0]=0;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],e,e+1|0)}b=$k(296);H[b+4>>2]=0;H[b+8>>2]=0;H[b+72>>2]=0;H[b+76>>2]=0;H[b>>2]=10560;H[b+12>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+64>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[b+96>>2]=0;H[b+100>>2]=0;H[b+104>>2]=0;H[b+108>>2]=0;H[b+112>>2]=0;H[b+116>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+136>>2]=1065353216;H[b+156>>2]=0;H[b+160>>2]=0;H[b+148>>2]=0;H[b+152>>2]=0;H[b+140>>2]=0;H[b+144>>2]=0;H[b+168>>2]=0;H[b+172>>2]=0;H[b+164>>2]=-1;H[b+176>>2]=0;H[b+180>>2]=0;H[b+184>>2]=0;H[b+188>>2]=0;H[b+192>>2]=0;c=b+200|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=b+232|0;H[c>>2]=0;H[c+4>>2]=0;F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;F[b+288|0]=0;H[b+280>>2]=0;H[b+284>>2]=0;H[b+272>>2]=0;H[b+276>>2]=0;H[b+264>>2]=0;H[b+268>>2]=0}c=H[a+64>>2];H[a+64>>2]=b;if(!c){break b}ga[H[H[c>>2]+4>>2]](c)}b=H[a+64>>2];if(b){break b}a=0;break a}a=ga[H[H[b>>2]+8>>2]](b,a)|0}da=e+16|0;return a|0}function Mb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=da-16|0;da=e;H[a+8>>2]=b;H[a>>2]=0;d=a+12|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;c=d+32|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+96|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+128|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+160|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+192|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+224|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+256|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+288|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+320|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+352|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+384|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+416|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+448|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+480|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+512|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+544|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+576|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+608|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+640|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+672|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+704|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+736|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+768|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+800|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+832|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+864|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+896|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+928|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=d+960|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;d=d+992|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1036|0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1068|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1088|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=a+1108|0;H[d>>2]=0;H[d+4>>2]=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[a+1136>>2]=0;H[a+1128>>2]=0;H[a+1132>>2]=0;h=a+1164|0;a:{b:{if(b){if(b>>>0<1073741824){break b}Fa();X()}H[a+1140>>2]=0;H[a+1144>>2]=0;d=a+1156|0;H[d>>2]=0;H[d+4>>2]=0;d=a+1148|0;H[d>>2]=0;H[d+4>>2]=0;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;d=1;break a}d=b<<2;c=$k(d);H[a+1128>>2]=c;f=c+d|0;H[a+1136>>2]=f;gk(c,0,d);g=a+1148|0;H[g>>2]=0;H[a+1140>>2]=0;H[a+1144>>2]=0;H[a+1132>>2]=f;c=$k(d);H[a+1140>>2]=c;f=c+d|0;H[g>>2]=f;gk(c,0,d);g=a+1160|0;H[g>>2]=0;H[a+1152>>2]=0;H[a+1156>>2]=0;H[a+1144>>2]=f;c=$k(d);H[a+1152>>2]=c;f=c+d|0;H[g>>2]=f;gk(c,0,d);H[a+1156>>2]=f;c=$k(d);H[e>>2]=c;f=c+d|0;H[e+8>>2]=f;gk(c,0,d);H[e+4>>2]=f;d=b<<5|1}Wb(h,d,e);c=H[e>>2];if(c){H[e+4>>2]=c;Wk(c)}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if(b){b=b<<2;c=$k(b);H[e>>2]=c;f=b+c|0;H[e+8>>2]=f;gk(c,0,b);H[e+4>>2]=f}Wb(a+1176|0,d,e);b=H[e>>2];if(b){H[e+4>>2]=b;Wk(b)}da=e+16|0;return a}function ed(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;g=da-80|0;da=g;i=-1;f=-1;a:{if((b|0)==-1){break a}f=b+1|0;i=(f>>>0)%3|0?f:b-2|0;f=b-1|0;if((b>>>0)%3|0){break a}f=b+2|0}e=H[a+36>>2];b=H[e>>2];b:{c:{d:{e:{f:{g:{e=H[e+4>>2]-b>>2;h=i<<2;i=H[H[a+32>>2]+28>>2];j=H[h+i>>2];if(e>>>0<=j>>>0){break g}f=H[i+(f<<2)>>2];if(f>>>0>=e>>>0){break g}h:{i:{e=H[b+(f<<2)>>2];k=H[b+(j<<2)>>2];if((e|0)>=(d|0)|(k|0)>=(d|0)){break i}b=(e<<3)+c|0;n=H[b+4>>2];f=(k<<3)+c|0;i=H[f+4>>2];q=H[f>>2];A=H[b>>2];if(!((q|0)!=(A|0)|(i|0)!=(n|0))){H[a+8>>2]=q;H[a+12>>2]=i;break h}b=H[H[a+4>>2]+(d<<2)>>2];H[g+72>>2]=0;H[g+76>>2]=0;f=g- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}fd(f,b,F[f+24|0],g+56|0);b=H[H[a+4>>2]+(k<<2)>>2];H[g+48>>2]=0;H[g+52>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}fd(f,b,F[f+24|0],g+32|0);b=H[H[a+4>>2]+(e<<2)>>2];H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}fd(f,b,F[f+24|0],g+8|0);E=H[g+44>>2];b=H[g+16>>2];p=H[g+40>>2];f=p;j=H[g+20>>2]-(E+(b>>>0>>0)|0)|0;r=b-f|0;b=Fl(r,j,r,j);f=fa;s=b;G=H[g+36>>2];b=H[g+8>>2];B=H[g+32>>2];e=B;h=H[g+12>>2]-(G+(b>>>0>>0)|0)|0;v=b-e|0;l=Fl(v,h,v,h);b=s+l|0;e=fa+f|0;e=b>>>0>>0?e+1|0:e;x=b;J=H[g+52>>2];b=H[g+24>>2];s=H[g+48>>2];f=s;l=H[g+28>>2]-(J+(b>>>0>>0)|0)|0;w=b-f|0;o=Fl(w,l,w,l);b=x+o|0;f=fa+e|0;t=b;o=b>>>0>>0?f+1|0:f;if(!(b|o)){break i}x=H[g+64>>2];b=x;C=H[g+68>>2];b=Fl(b-p|0,C-((b>>>0

>>0)+E|0)|0,r,j);f=fa;k=b;K=H[g+56>>2];b=K;L=H[g+60>>2];e=Fl(b-B|0,L-((b>>>0>>0)+G|0)|0,v,h);b=k+e|0;f=fa+f|0;f=b>>>0>>0?f+1|0:f;e=b;M=H[g+72>>2];b=M;N=H[g+76>>2];k=Fl(b-s|0,N-((b>>>0>>0)+J|0)|0,w,l);b=e+k|0;e=fa+f|0;e=b>>>0>>0?e+1|0:e;k=b;u=e;b=l>>31;e=b+w|0;f=b+l|0;f=e>>>0>>0?f+1|0:f;D=e^b;b=b^f;f=b;b=j>>31;m=b+r|0;e=b+j|0;e=m>>>0>>0?e+1|0:e;y=m^b;b=b^e;e=b;b=h>>31;z=b+v|0;m=b+h|0;m=z>>>0>>0?m+1|0:m;z=z^b;b=b^m;m=(b|0)==(e|0)&y>>>0>z>>>0|b>>>0>>0;y=m?y:z;b=m?e:b;e=(b|0)==(f|0)&y>>>0>>0|b>>>0>>0;f=Hl(-1,2147483647,e?D:y,e?f:b)>>>0>>0;b=fa;if(f&(b|0)<=(u|0)|(b|0)<(u|0)){break c}b=i;y=n-b|0;f=b>>31;z=(n>>31)-(f+(b>>>0>n>>>0)|0)|0;b=Fl(k,u,y,z);e=fa;i=Fl(i,f,t,o);f=i+b|0;b=fa+e|0;n=f;D=f>>>0>>0?b+1|0:b;b=q;O=A-b|0;f=b>>31;P=(A>>31)-(f+(b>>>0>A>>>0)|0)|0;b=Fl(k,u,O,P);i=fa;f=Fl(q,f,t,o);b=f+b|0;e=fa+i|0;q=b;A=b>>>0>>0?e+1|0:e;i=1;f=0;b=x;r=Gl(Fl(r,j,k,u),fa,t,o);j=r+p|0;e=fa+E|0;e=j>>>0>>0?e+1|0:e;e=C-((b>>>0>>0)+e|0)|0;b=b-j|0;b=Fl(b,e,b,e);r=fa;e=K;p=b;h=Gl(Fl(v,h,k,u),fa,t,o);j=h+B|0;b=fa+G|0;b=h>>>0>j>>>0?b+1|0:b;b=L-((e>>>0>>0)+b|0)|0;e=e-j|0;j=Fl(e,b,e,b);b=p+j|0;e=fa+r|0;h=b;j=b>>>0>>0?e+1|0:e;b=M;p=h;l=Gl(Fl(w,l,k,u),fa,t,o);h=l+s|0;e=fa+J|0;e=h>>>0>>0?e+1|0:e;e=N-((b>>>0>>0)+e|0)|0;b=b-h|0;h=Fl(b,e,b,e);e=p+h|0;b=fa+j|0;j=Fl(e,e>>>0>>0?b+1|0:b,t,o);b=fa;h=b;if(!b&j>>>0<=1){break f}l=j;e=h;while(1){b=f<<1|i>>>31;i=i<<1;f=b;k=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(k){continue}break}break e}if((d|0)>(k|0)){b=k<<1}else{if((d|0)<=0){H[a+8>>2]=0;H[a+12>>2]=0;break h}b=(d<<1)-2|0}b=(b<<2)+c|0;H[a+8>>2]=H[b>>2];H[a+12>>2]=H[b+4>>2]}break c}Sc();X()}f=h;i=j;if(j-1|0){break d}}while(1){b=Hl(j,h,i,f)+i|0;m=f+fa|0;m=b>>>0>>0?m+1|0:m;i=(m&1)<<31|b>>>1;f=m>>>1|0;b=Fl(i,f,i,f);e=fa;if((h|0)==(e|0)&b>>>0>j>>>0|e>>>0>h>>>0){continue}break}}j=a+16|0;w=H[a+24>>2];u=w<<5;b=H[a+20>>2];h=(d<<3)+c|0;d=H[h+4>>2];p=Fl(i,f,O,P);c=p;B=fa;c=Gl(n-c|0,D-(B+(c>>>0>n>>>0)|0)|0,t,o);k=d-c|0;l=d>>31;e=l-(fa+(c>>>0>d>>>0)|0)|0;s=Fl(k,e,k,e);x=fa;h=H[h>>2];e=h>>31;k=h;r=e;v=Fl(i,f,y,z);f=q+v|0;C=fa;m=A+C|0;i=Gl(f,f>>>0>>0?m+1|0:m,t,o);f=e-(fa+(h>>>0>>0)|0)|0;e=h-i|0;h=Fl(e,f,e,f);f=h+s|0;e=fa+x|0;s=f;h=f>>>0>>0?e+1|0:e;f=d;e=D+B|0;d=n+p|0;e=d>>>0>>0?e+1|0:e;d=Gl(d,e,t,o);e=l-(fa+(d>>>0>f>>>0)|0)|0;f=f-d|0;e=Fl(f,e,f,e);p=fa;x=e;f=Gl(q-v|0,A-((q>>>0>>0)+C|0)|0,t,o);n=k-f|0;e=r-(fa+(f>>>0>k>>>0)|0)|0;q=Fl(n,e,n,e);n=x+q|0;e=fa+p|0;e=n>>>0>>0?e+1|0:e;j:{if((e|0)==(h|0)&n>>>0>s>>>0|e>>>0>h>>>0){if((b|0)==(u|0)){if((b+1|0)<0){break b}if(b>>>0<=1073741822){b=b+32&-32;d=w<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Bc(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;d=H[a+16>>2]+(b>>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>>0<=1073741822){b=b+32&-32;c=w<<6;b=b>>>0>c>>>0?b:c}else{b=2147483647}Bc(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;c=H[a+16>>2]+(b>>>3&536870908)|0;i=H[c>>2];Q=c,R=Jl(b)&i,H[Q>>2]=R;c=d;i=f}H[a+8>>2]=i;H[a+12>>2]=c}da=g+80|0;return}jl();X()}function xd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;g=da-80|0;da=g;f=-1;a:{if((b|0)==-1){break a}i=H[a+32>>2];e=b+1|0;e=(e>>>0)%3|0?e:b-2|0;if((e|0)!=-1){f=H[H[i>>2]+(e<<2)>>2]}e=((b>>>0)%3|0?-1:2)+b|0;b=-1;b=(e|0)!=-1?H[H[i>>2]+(e<<2)>>2]:b;e=H[a+36>>2];i=H[e>>2];e=H[e+4>>2]-i>>2;if(e>>>0<=f>>>0|b>>>0>=e>>>0){break a}b:{c:{d:{e:{f:{g:{e=H[i+(b<<2)>>2];k=H[i+(f<<2)>>2];if((e|0)>=(d|0)|(k|0)>=(d|0)){break g}b=(e<<3)+c|0;n=H[b+4>>2];f=(k<<3)+c|0;i=H[f+4>>2];q=H[f>>2];A=H[b>>2];if(!((q|0)!=(A|0)|(i|0)!=(n|0))){H[a+8>>2]=q;H[a+12>>2]=i;break c}b=H[H[a+4>>2]+(d<<2)>>2];H[g+72>>2]=0;H[g+76>>2]=0;f=g- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}fd(f,b,F[f+24|0],g+56|0);b=H[H[a+4>>2]+(k<<2)>>2];H[g+48>>2]=0;H[g+52>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}fd(f,b,F[f+24|0],g+32|0);b=H[H[a+4>>2]+(e<<2)>>2];H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;f=H[a>>2];if(!I[f+84|0]){b=H[H[f+68>>2]+(b<<2)>>2]}fd(f,b,F[f+24|0],g+8|0);E=H[g+44>>2];b=H[g+16>>2];p=H[g+40>>2];f=p;j=H[g+20>>2]-(E+(b>>>0>>0)|0)|0;r=b-f|0;b=Fl(r,j,r,j);f=fa;s=b;G=H[g+36>>2];b=H[g+8>>2];B=H[g+32>>2];e=B;h=H[g+12>>2]-(G+(b>>>0>>0)|0)|0;v=b-e|0;l=Fl(v,h,v,h);b=s+l|0;e=fa+f|0;e=b>>>0>>0?e+1|0:e;x=b;J=H[g+52>>2];b=H[g+24>>2];s=H[g+48>>2];f=s;l=H[g+28>>2]-(J+(b>>>0>>0)|0)|0;w=b-f|0;o=Fl(w,l,w,l);b=x+o|0;f=fa+e|0;t=b;o=b>>>0>>0?f+1|0:f;if(!(b|o)){break g}x=H[g+64>>2];b=x;C=H[g+68>>2];b=Fl(b-p|0,C-((b>>>0

>>0)+E|0)|0,r,j);f=fa;k=b;K=H[g+56>>2];b=K;L=H[g+60>>2];e=Fl(b-B|0,L-((b>>>0>>0)+G|0)|0,v,h);b=k+e|0;f=fa+f|0;f=b>>>0>>0?f+1|0:f;e=b;M=H[g+72>>2];b=M;N=H[g+76>>2];k=Fl(b-s|0,N-((b>>>0>>0)+J|0)|0,w,l);b=e+k|0;e=fa+f|0;e=b>>>0>>0?e+1|0:e;k=b;u=e;b=l>>31;e=b+w|0;f=b+l|0;f=e>>>0>>0?f+1|0:f;D=e^b;b=b^f;f=b;b=j>>31;m=b+r|0;e=b+j|0;e=m>>>0>>0?e+1|0:e;y=m^b;b=b^e;e=b;b=h>>31;z=b+v|0;m=b+h|0;m=z>>>0>>0?m+1|0:m;z=z^b;b=b^m;m=(b|0)==(e|0)&y>>>0>z>>>0|b>>>0>>0;y=m?y:z;b=m?e:b;e=(b|0)==(f|0)&y>>>0>>0|b>>>0>>0;f=Hl(-1,2147483647,e?D:y,e?f:b)>>>0>>0;b=fa;if(f&(b|0)<=(u|0)|(b|0)<(u|0)){break c}b=i;y=n-b|0;f=b>>31;z=(n>>31)-(f+(b>>>0>n>>>0)|0)|0;b=Fl(k,u,y,z);e=fa;i=Fl(i,f,t,o);f=i+b|0;b=fa+e|0;n=f;D=f>>>0>>0?b+1|0:b;b=q;O=A-b|0;f=b>>31;P=(A>>31)-(f+(b>>>0>A>>>0)|0)|0;b=Fl(k,u,O,P);i=fa;f=Fl(q,f,t,o);b=f+b|0;e=fa+i|0;q=b;A=b>>>0>>0?e+1|0:e;i=1;f=0;b=x;r=Gl(Fl(r,j,k,u),fa,t,o);j=r+p|0;e=fa+E|0;e=j>>>0>>0?e+1|0:e;e=C-((b>>>0>>0)+e|0)|0;b=b-j|0;b=Fl(b,e,b,e);r=fa;e=K;p=b;h=Gl(Fl(v,h,k,u),fa,t,o);j=h+B|0;b=fa+G|0;b=h>>>0>j>>>0?b+1|0:b;b=L-((e>>>0>>0)+b|0)|0;e=e-j|0;j=Fl(e,b,e,b);b=p+j|0;e=fa+r|0;h=b;j=b>>>0>>0?e+1|0:e;b=M;p=h;l=Gl(Fl(w,l,k,u),fa,t,o);h=l+s|0;e=fa+J|0;e=h>>>0>>0?e+1|0:e;e=N-((b>>>0>>0)+e|0)|0;b=b-h|0;h=Fl(b,e,b,e);e=p+h|0;b=fa+j|0;j=Fl(e,e>>>0>>0?b+1|0:b,t,o);b=fa;h=b;if(!b&j>>>0<=1){break f}l=j;e=h;while(1){b=f<<1|i>>>31;i=i<<1;f=b;k=!e&l>>>0>7|(e|0)!=0;l=(e&3)<<30|l>>>2;e=e>>>2|0;if(k){continue}break}break e}if((d|0)>(k|0)){b=k<<1}else{if((d|0)<=0){H[a+8>>2]=0;H[a+12>>2]=0;break c}b=(d<<1)-2|0}b=(b<<2)+c|0;H[a+8>>2]=H[b>>2];H[a+12>>2]=H[b+4>>2];break c}f=h;i=j;if(i-1|0){break d}}while(1){b=Hl(j,h,i,f)+i|0;m=f+fa|0;m=b>>>0>>0?m+1|0:m;i=(m&1)<<31|b>>>1;f=m>>>1|0;b=Fl(i,f,i,f);e=fa;if((h|0)==(e|0)&b>>>0>j>>>0|e>>>0>h>>>0){continue}break}}j=a+16|0;w=H[a+24>>2];u=w<<5;b=H[a+20>>2];h=(d<<3)+c|0;d=H[h+4>>2];p=Fl(i,f,O,P);c=p;B=fa;c=Gl(n-c|0,D-(B+(c>>>0>n>>>0)|0)|0,t,o);k=d-c|0;l=d>>31;e=l-(fa+(c>>>0>d>>>0)|0)|0;s=Fl(k,e,k,e);x=fa;h=H[h>>2];e=h>>31;k=h;r=e;v=Fl(i,f,y,z);f=q+v|0;C=fa;m=A+C|0;i=Gl(f,f>>>0>>0?m+1|0:m,t,o);f=e-(fa+(h>>>0>>0)|0)|0;e=h-i|0;h=Fl(e,f,e,f);f=h+s|0;e=fa+x|0;s=f;h=f>>>0>>0?e+1|0:e;f=d;e=D+B|0;d=n+p|0;e=d>>>0>>0?e+1|0:e;d=Gl(d,e,t,o);e=l-(fa+(d>>>0>f>>>0)|0)|0;f=f-d|0;e=Fl(f,e,f,e);p=fa;x=e;f=Gl(q-v|0,A-((q>>>0>>0)+C|0)|0,t,o);n=k-f|0;e=r-(fa+(f>>>0>k>>>0)|0)|0;q=Fl(n,e,n,e);n=x+q|0;e=fa+p|0;e=n>>>0>>0?e+1|0:e;h:{if((e|0)==(h|0)&n>>>0>s>>>0|e>>>0>h>>>0){if((b|0)==(u|0)){if((b+1|0)<0){break b}if(b>>>0<=1073741822){b=b+32&-32;d=w<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Bc(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;d=H[a+16>>2]+(b>>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>>0<=1073741822){b=b+32&-32;c=w<<6;b=b>>>0>c>>>0?b:c}else{b=2147483647}Bc(j,b);b=H[a+20>>2]}H[a+20>>2]=b+1;c=H[a+16>>2]+(b>>>3&536870908)|0;i=H[c>>2];Q=c,R=Jl(b)&i,H[Q>>2]=R;c=d;i=f}H[a+8>>2]=i;H[a+12>>2]=c}da=g+80|0;return}jl();X()}Sc();X()}function Rk(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[e+12>>2]=a;a:{if(a>>>0<=211){d=H[Sk(17808,18e3,e+12|0)>>2];break a}if(a>>>0>=4294967292){Tk();X()}f=(a>>>0)/210|0;d=N(f,210);H[e+8>>2]=a-d;g=Sk(18e3,18192,e+8|0)-18e3>>2;while(1){d=H[(g<<2)+18e3>>2]+d|0;a=5;b:{while(1){c:{if((a|0)==47){a=211;while(1){b=(d>>>0)/(a>>>0)|0;if(b>>>0>>0){break b}if((N(a,b)|0)==(d|0)){break c}b=a+10|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+12|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+16|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+18|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+22|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+28|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+30|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+36|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+40|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+42|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+46|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+52|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+58|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+60|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+66|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+70|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+72|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+78|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+82|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+88|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+96|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+100|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+102|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+106|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+108|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+112|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+120|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+126|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+130|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+136|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+138|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+142|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+148|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+150|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+156|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+162|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+166|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+168|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+172|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+178|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+180|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+186|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+190|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+192|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+196|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+198|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}if((N(b,c)|0)==(d|0)){break c}b=a+208|0;c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+210|0;if((N(b,c)|0)!=(d|0)){continue}break}break c}b=H[(a<<2)+17808>>2];c=(d>>>0)/(b>>>0)|0;if(b>>>0>c>>>0){break b}a=a+1|0;if((N(b,c)|0)!=(d|0)){continue}}break}d=g+1|0;a=(d|0)==48;g=a?0:d;f=a+f|0;d=N(f,210);continue}break}H[e+12>>2]=d}da=e+16|0;return d}function Gc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=da-32|0;da=g;a:{b:{if(!H[H[a+8>>2]+80>>2]){d=1;break b}F[g+31|0]=254;i=H[a+36>>2];if(i){if(!(ga[H[H[a>>2]+40>>2]](a,i)|0)){break b}d=H[a+36>>2];n=g,o=ga[H[H[d>>2]+8>>2]](d)|0,F[n+31|0]=o}d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){ya(c,H[c+4>>2],g+31|0,g+32|0)}d=H[a+36>>2];c:{if(!d){break c}n=g,o=ga[H[H[d>>2]+36>>2]](d)|0,F[n+16|0]=o;d=H[c+20>>2];if(!!H[c+16>>2]&(d|0)>=0|(d|0)>0){break c}ya(c,H[c+4>>2],g+16|0,g+17|0)}d=H[a+32>>2];e=H[d+48>>2];f=H[H[d>>2]>>2];h=H[d+80>>2];k=F[d+24|0];i=0;H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;h=N(h,k);if(h){if(h>>>0>=1073741824){break a}d=h<<2;i=$k(d);H[g+16>>2]=i;j=d+i|0;H[g+24>>2]=j;gk(i,0,d);H[g+20>>2]=j}d=e+f|0;e=H[a+36>>2];d:{e:{if(!e){break e}ga[H[H[e>>2]+44>>2]](e,d,i,h,k,H[b>>2])|0;e=H[a+36>>2];if(!e){break e}if(ga[H[H[e>>2]+32>>2]](e)|0){break d}d=H[a+36>>2]?i:d}e=0;f=0;f:{if((h|0)<=0){break f}if((h|0)!=1){m=h&-2;while(1){l=e<<2;j=H[l+d>>2];H[i+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;l=l|4;j=H[l+d>>2];H[i+l>>2]=(j|0)>=0?j<<1:(j^-1)<<1|1;e=e+2|0;f=f+2|0;if((m|0)!=(f|0)){continue}break}}if(!(h&1)){break f}e=e<<2;d=H[e+d>>2];H[e+i>>2]=(d|0)>=0?d<<1:(d^-1)<<1|1}}g:{h:{i:{j:{k:{d=H[a+4>>2];if(!d){break k}j=H[d+48>>2];d=$k(48);H[g>>2]=d;H[g+4>>2]=34;H[g+8>>2]=-2147483600;F[d+34|0]=0;e=I[1523]|I[1524]<<8;F[d+32|0]=e;F[d+33|0]=e>>>8;e=I[1519]|I[1520]<<8|(I[1521]<<16|I[1522]<<24);f=I[1515]|I[1516]<<8|(I[1517]<<16|I[1518]<<24);F[d+24|0]=f;F[d+25|0]=f>>>8;F[d+26|0]=f>>>16;F[d+27|0]=f>>>24;F[d+28|0]=e;F[d+29|0]=e>>>8;F[d+30|0]=e>>>16;F[d+31|0]=e>>>24;e=I[1511]|I[1512]<<8|(I[1513]<<16|I[1514]<<24);f=I[1507]|I[1508]<<8|(I[1509]<<16|I[1510]<<24);F[d+16|0]=f;F[d+17|0]=f>>>8;F[d+18|0]=f>>>16;F[d+19|0]=f>>>24;F[d+20|0]=e;F[d+21|0]=e>>>8;F[d+22|0]=e>>>16;F[d+23|0]=e>>>24;e=I[1503]|I[1504]<<8|(I[1505]<<16|I[1506]<<24);f=I[1499]|I[1500]<<8|(I[1501]<<16|I[1502]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1495]|I[1496]<<8|(I[1497]<<16|I[1498]<<24);f=I[1491]|I[1492]<<8|(I[1493]<<16|I[1494]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=ki(j,g,1);if(F[g+11|0]<0){Wk(H[g>>2])}if(d){break k}if(!h){break j}e=0;d=0;b=0;if(h-1>>>0>=3){j=h&-4;f=0;while(1){k=d<<2;b=H[(k|12)+i>>2]|(H[(k|8)+i>>2]|(H[(k|4)+i>>2]|(H[i+k>>2]|b)));d=d+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}f=h&3;if(f){while(1){b=H[(d<<2)+i>>2]|b;d=d+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(!b){break j}b=4-(Q(b)>>>3|0)|0;break i}F[g|0]=1;d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){ya(c,H[c+4>>2],g,g+1|0)}H[g+4>>2]=0;H[g+8>>2]=0;H[g>>2]=g+4;d=H[a+4>>2];if(d){j=10-Kb(H[d+48>>2])|0;h=da-16|0;da=h;l:{if(j>>>0>10){break l}d=$k(48);H[h>>2]=d;H[h+4>>2]=33;H[h+8>>2]=-2147483600;F[d+33|0]=0;F[d+32|0]=I[1582];e=I[1578]|I[1579]<<8|(I[1580]<<16|I[1581]<<24);f=I[1574]|I[1575]<<8|(I[1576]<<16|I[1577]<<24);F[d+24|0]=f;F[d+25|0]=f>>>8;F[d+26|0]=f>>>16;F[d+27|0]=f>>>24;F[d+28|0]=e;F[d+29|0]=e>>>8;F[d+30|0]=e>>>16;F[d+31|0]=e>>>24;e=I[1570]|I[1571]<<8|(I[1572]<<16|I[1573]<<24);f=I[1566]|I[1567]<<8|(I[1568]<<16|I[1569]<<24);F[d+16|0]=f;F[d+17|0]=f>>>8;F[d+18|0]=f>>>16;F[d+19|0]=f>>>24;F[d+20|0]=e;F[d+21|0]=e>>>8;F[d+22|0]=e>>>16;F[d+23|0]=e>>>24;e=I[1562]|I[1563]<<8|(I[1564]<<16|I[1565]<<24);f=I[1558]|I[1559]<<8|(I[1560]<<16|I[1561]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1554]|I[1555]<<8|(I[1556]<<16|I[1557]<<24);f=I[1550]|I[1551]<<8|(I[1552]<<16|I[1553]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;fi(g,h,j);if(F[h+11|0]>=0){break l}Wk(H[h>>2])}da=h+16|0}b=ef(i,N(k,H[b+4>>2]-H[b>>2]>>2),k,g,c);Hc(g,H[g+4>>2]);d=0;if(b){break h}break g}b=1}F[g|0]=0;d=H[c+20>>2];m:{if(!!H[c+16>>2]&(d|0)>=0|(d|0)>0){break m}e=g+1|0;ya(c,H[c+4>>2],g,e);d=H[c+20>>2];f=H[c+16>>2];F[g|0]=b;if(!!f&(d|0)>=0|(d|0)>0){break m}ya(c,H[c+4>>2],g,e)}if((b|0)!=H[3716]){if(!h){break h}d=H[c+20>>2];e=d;f=H[c+16>>2];if(!!f&(d|0)>=0|(d|0)>0){break h}d=0;while(1){if(!f&(e|0)<=0|(e|0)<0){e=(d<<2)+i|0;ya(c,H[c+4>>2],e,b+e|0)}d=d+1|0;if((h|0)==(d|0)){break h}f=H[c+16>>2];e=H[c+20>>2];continue}}b=H[c+20>>2];if(!!H[c+16>>2]&(b|0)>=0|(b|0)>0){break h}ya(c,H[c+4>>2],i,(h<<2)+i|0)}d=1;a=H[a+36>>2];if(!a){break g}ga[H[H[a>>2]+40>>2]](a,c)|0}if(!i){break b}Wk(i)}da=g+32|0;return d|0}Fa();X()}function sh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{e:{if(H[a+92>>2]==H[a+88>>2]){break e}c=H[a+52>>2];f:{if((c|0)!=H[a+56>>2]){H[c>>2]=b;H[a+52>>2]=c+4;break f}d=H[a+48>>2];i=c-d|0;f=i>>2;e=f+1|0;if(e>>>0>=1073741824){break b}c=i>>1;e=i>>>0<2147483644?c>>>0>>0?e:c:1073741823;if(e){if(e>>>0>=1073741824){break a}c=$k(e<<2)}else{c=0}f=c+(f<<2)|0;H[f>>2]=b;if((i|0)>0){ek(c,d,i)}H[a+56>>2]=c+(e<<2);H[a+52>>2]=f+4;H[a+48>>2]=c;if(!d){break f}Wk(d)}H[a+84>>2]=0;f=-1;c=-1;g:{if((b|0)==-1){break g}e=H[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=H[H[e>>2]+(c<<2)>>2]}h:{if((b>>>0)%3|0){d=b-1|0;break h}d=b+2|0;c=-1;if((d|0)==-1){break g}}c=H[H[e>>2]+(d<<2)>>2]}h=c>>>3&536870908;e=H[a+36>>2];g=e+(f>>>3&536870908)|0;i=H[g>>2];d=1<>2]=d|i;g=a+8|0;if((b|0)!=-1){e=b+1|0;d=(e>>>0)%3|0?e:b-2|0}else{d=-1}th(g,f,d);e=H[a+36>>2]}d=e+h|0;e=H[d>>2];f=1<>2]=e|f;d=a+8|0;f=-1;i:{if((b|0)==-1){break i}f=b-1|0;if((b>>>0)%3|0){break i}f=b+2|0}th(d,c,f)}f=-1;f=(b|0)!=-1?H[H[H[a+4>>2]>>2]+(b<<2)>>2]:f;d=H[a+36>>2]+(f>>>3&536870908)|0;e=H[d>>2];c=1<>2]=c|e;th(a+8|0,f,b)}d=H[a+84>>2];if((d|0)>2){break e}while(1){f=N(d,12)+a|0;b=H[f+52>>2];if((b|0)==H[f+48>>2]){d=d+1|0;if((d|0)!=3){continue}break e}c=b-4|0;b=H[c>>2];H[f+52>>2]=c;H[a+84>>2]=d;if((b|0)==-1){break e}f=H[a+24>>2];c=(b>>>0)/3|0;j:{if(H[f+(c>>>3&268435452)>>2]>>>c&1){break j}k:{while(1){k=(b>>>0)/3|0;c=(k>>>3&268435452)+f|0;H[c>>2]=H[c>>2]|1<>2]>>2]+(b<<2)>>2]:f;d=H[a+36>>2]+(f>>>3&536870908)|0;e=H[d>>2];c=1<>2]=c|e;i=H[(H[H[a+16>>2]+96>>2]+N(k,12)|0)+((b>>>0)%3<<2)>>2];j=H[H[a+20>>2]+4>>2];c=H[j+4>>2];t:{if((c|0)!=H[j+8>>2]){H[c>>2]=i;H[j+4>>2]=c+4;break t}g=H[j>>2];h=c-g|0;e=h>>2;d=e+1|0;if(d>>>0>=1073741824){break s}c=h>>1;d=h>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=$k(d<<2)}else{c=0}e=c+(e<<2)|0;H[e>>2]=i;if((h|0)>0){ek(c,g,h)}H[j+8>>2]=c+(d<<2);H[j+4>>2]=e+4;H[j>>2]=c;if(!g){break t}Wk(g)}h=H[a+12>>2];c=H[h+4>>2];u:{if((c|0)!=H[h+8>>2]){H[c>>2]=b;H[h+4>>2]=c+4;break u}i=H[h>>2];g=c-i|0;e=g>>2;d=e+1|0;if(d>>>0>=1073741824){break r}c=g>>1;d=g>>>0<2147483644?c>>>0>>0?d:c:1073741823;if(d){if(d>>>0>=1073741824){break a}c=$k(d<<2)}else{c=0}e=c+(e<<2)|0;H[e>>2]=b;if((g|0)>0){ek(c,i,g)}H[h+8>>2]=c+(d<<2);H[h+4>>2]=e+4;H[h>>2]=c;if(!i){break u}Wk(i)}c=H[a+12>>2];H[H[c+12>>2]+(f<<2)>>2]=H[c+24>>2];H[c+24>>2]=H[c+24>>2]+1}if((b|0)==-1){break k}h=H[a+4>>2];f=-1;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){f=H[H[h+12>>2]+(c<<2)>>2]}v:{w:{if((N(k,3)|0)!=(b|0)){e=b-1|0;break w}e=b+2|0;b=-1;if((e|0)==-1){break v}}b=H[H[h+12>>2]+(e<<2)>>2]}g=(b|0)==-1;i=(b>>>0)/3|0;e=(f>>>0)/3|0;c=(f|0)==-1;if(!c){c=c?-1:e;c=H[H[a+24>>2]+(c>>>3&536870908)>>2]&1<>2]+(c>>>3&536870908)>>2]>>>c&1){break x}e=0;c=H[H[h>>2]+(b<<2)>>2];if(!(H[H[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){c=H[a+88>>2]+(c<<2)|0;e=H[c>>2];H[c>>2]=e+1;e=(e|0)<=0?2:1}if(H[a+84>>2]>=(e|0)?d:0){break m}j=N(e,12)+a|0;c=H[j+52>>2];y:{if((c|0)!=H[j+56>>2]){H[c>>2]=b;H[j+52>>2]=c+4;break y}h=H[j+48>>2];k=c-h|0;i=k>>2;g=i+1|0;if(g>>>0>=1073741824){break d}c=k>>1;g=k>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(g){if(g>>>0>=1073741824){break a}c=$k(g<<2)}else{c=0}i=c+(i<<2)|0;H[i>>2]=b;if((k|0)>0){ek(c,h,k)}H[j+48>>2]=c;H[j+52>>2]=i+4;H[j+56>>2]=c+(g<<2);if(!h){break y}Wk(h)}if(H[a+84>>2]<=(e|0)){break x}H[a+84>>2]=e}if(d){break k}b=-1;if((f|0)==-1){break n}}b=H[H[H[a+4>>2]>>2]+(f<<2)>>2]}e=0;if(!(H[H[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=H[a+88>>2]+(b<<2)|0;c=H[b>>2];H[b>>2]=c+1;e=(c|0)<=0?2:1}if(H[a+84>>2]<(e|0)){break l}b=f}f=H[a+24>>2];continue}break}h=N(e,12)+a|0;b=H[h+52>>2];z:{if((b|0)!=H[h+56>>2]){H[b>>2]=f;H[h+52>>2]=b+4;break z}i=H[h+48>>2];g=b-i|0;c=g>>2;d=c+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=g>>>0<2147483644?b>>>0>>0?d:b:1073741823;if(d){if(d>>>0>=1073741824){break a}b=$k(d<<2)}else{b=0}c=b+(c<<2)|0;H[c>>2]=f;if((g|0)>0){ek(b,i,g)}H[h+48>>2]=b;H[h+52>>2]=c+4;H[h+56>>2]=b+(d<<2);if(!i){break z}Wk(i)}d=H[a+84>>2];if((e|0)>=(d|0)){break j}H[a+84>>2]=e;d=e;break j}d=H[a+84>>2]}if((d|0)<3){continue}break}}return 1}Fa();X()}Fa();X()}Fa();X()}Ua(1604);X()}function Vh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=da-16|0;da=r;a:{if(!(ga[H[H[a>>2]+32>>2]](a)|0)){break a}e=H[a+44>>2];d=H[a+12>>2];b=H[a+8>>2];F[r+15|0]=d-b>>>2;g=H[e+20>>2];if(!H[e+16>>2]&(g|0)<=0|(g|0)<0){ya(e,H[e+4>>2],r+15|0,r+16|0);b=H[a+8>>2];d=H[a+12>>2]}if((b|0)!=(d|0)){while(1){g=H[b>>2];if(!(ga[H[H[g>>2]+8>>2]](g,a,H[a+4>>2])|0)){break a}b=b+4|0;if((d|0)!=(b|0)){continue}break}}f=da-48|0;da=f;s=a+32|0;d=H[a+12>>2];h=H[a+8>>2];i=d-h|0;b=i>>2;g=H[a+32>>2];e=H[a+36>>2]-g>>2;b:{if(b>>>0>e>>>0){Ha(s,b-e|0);d=H[a+12>>2];h=H[a+8>>2];i=d-h|0;b=i>>2;break b}if(b>>>0>=e>>>0){break b}H[a+36>>2]=g+(b<<2)}H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;c:{d:{e:{if(!i){break e}if((i|0)<0){break d}e=b-1>>>5|0;g=e+1|0;m=$k(g<<2);H[f+40>>2]=g;H[f+32>>2]=m;H[f+36>>2]=b;H[m+((i>>>0<132?0:e)<<2)>>2]=0;e=m;m=b>>>5<<2;e=gk(e,0,m);g=b&31;if(!g){break e}b=e+m|0;H[b>>2]=H[b>>2]&(-1>>>32-g^-1)}while(1){f:{g:{b=d-h|0;if(b>>2>>>0>o>>>0){if(!b){p=0;b=0;break g}m=H[f+32>>2];p=0;l=0;while(1){k=m+(l>>>3&536870908)|0;d=H[k>>2];e=1<>2];b=H[i+4>>2];if((b|0)!=H[i+8>>2]){q=0;d=1;g=H[f+32>>2];while(1){h=0;n=H[(q<<2)+b>>2];i:{if((ga[H[H[i>>2]+24>>2]](i,n)|0)<=0){break i}while(1){j:{b=H[j+H[a+8>>2]>>2];b=ga[H[H[b>>2]+28>>2]](b,n,h)|0;if((b|0)==(l|0)){break j}b=H[H[a+20>>2]+(b<<2)>>2];if(H[(b>>>3&536870908)+g>>2]>>>b&1){break j}d=0;break i}b=H[j+H[a+8>>2]>>2];h=h+1|0;if((ga[H[H[b>>2]+24>>2]](b,n)|0)>(h|0)){continue}break}}h=H[a+8>>2];i=H[j+h>>2];b=H[i+4>>2];q=q+1|0;if(q>>>0>2]-b>>2>>>0){continue}break}if(!d){break h}d=H[k>>2]}H[H[s>>2]+(o<<2)>>2]=l;H[k>>2]=d|e;p=1;o=o+1|0}d=H[a+12>>2];b=d-h>>2;l=l+1|0;if(b>>>0>l>>>0){continue}break}break g}p=0;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[a+4>>2];b=H[c+12>>2];c=H[c+8>>2];H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;l=0;k:{l:{m:{g=b-c|0;n:{if(!g){break n}if((g|0)<0){break m}e=g>>2;b=e-1>>>5|0;c=b+1|0;l=$k(c<<2);H[f+8>>2]=c;H[f>>2]=l;H[f+4>>2]=e;H[((g>>>0<132?0:b)<<2)+l>>2]=0;g=e>>>5<<2;c=gk(l,0,g);b=e&31;if(!b){break n}c=c+g|0;H[c>>2]=H[c>>2]&(-1>>>32-b^-1)}o:{if((d|0)==(h|0)){c=1;break o}while(1){n=H[H[s>>2]+(p<<2)>>2]<<2;c=H[n+h>>2];c=H[c+8>>2]-H[c+4>>2]|0;p:{if((c|0)<8){break p}k=c>>2;c=H[f+16>>2];d=H[f+20>>2]-c>>2;q:{if(k>>>0>d>>>0){Ha(f+16|0,k-d|0);break q}if(d>>>0<=k>>>0){break q}H[f+20>>2]=c+(k<<2)}e=(k|0)>1?k:1;o=0;r:{while(1){if((k|0)<=(o|0)){break r}d=0;q=0;while(1){b=1<>>5<<2;s:{if(b&H[g+l>>2]){break s}c=H[n+H[a+8>>2]>>2];m=H[H[c+4>>2]+(d<<2)>>2];if((ga[H[H[c>>2]+24>>2]](c,m)|0)>0){h=0;l=H[f>>2];while(1){c=H[n+H[a+8>>2]>>2];c=ga[H[H[c>>2]+28>>2]](c,m,h)|0;if(!(H[(c>>>3&536870908)+l>>2]>>>c&1)){break s}c=H[n+H[a+8>>2]>>2];h=h+1|0;if((ga[H[H[c>>2]+24>>2]](c,m)|0)>(h|0)){continue}break}}H[H[f+16>>2]+(o<<2)>>2]=d;c=g+l|0;H[c>>2]=b|H[c>>2];q=1;o=o+1|0}d=d+1|0;if((e|0)!=(d|0)){continue}break}if((k|0)<=(o|0)|q){continue}break}c=0;break o}h=H[a+8>>2];j=H[n+h>>2];d=H[j+4>>2];H[j+8>>2]=d;H[j+20>>2]=H[j+16>>2];i=H[f+16>>2];g=H[f+20>>2];if((i|0)==(g|0)){break p}m=j+16|0;b=d;while(1){k=H[i>>2];t:{if(H[j+12>>2]!=(b|0)){H[b>>2]=k;H[j+8>>2]=b+4;break t}n=b-d|0;b=n>>2;e=b+1|0;if(e>>>0>=1073741824){break l}c=n>>1;e=n>>>0<2147483644?c>>>0>>0?e:c:1073741823;if(e){if(e>>>0>=1073741824){break k}c=$k(e<<2)}else{c=0}b=c+(b<<2)|0;H[b>>2]=k;if((n|0)>0){ek(c,d,n)}H[j+12>>2]=c+(e<<2);H[j+8>>2]=b+4;H[j+4>>2]=c;if(!d){break t}Wk(d)}b=H[j+16>>2];d=H[j+20>>2]-b>>2;u:{if((d|0)>(k|0)){break u}H[f+44>>2]=-1;c=k+1|0;if(c>>>0>d>>>0){nb(m,c-d|0,f+44|0);b=H[m>>2];break u}if(d>>>0<=c>>>0){break u}H[j+20>>2]=(c<<2)+b}c=(k<<2)+b|0;b=H[j+8>>2];d=H[j+4>>2];H[c>>2]=(b-d>>2)-1;i=i+4|0;if((g|0)!=(i|0)){continue}break}h=H[a+8>>2]}c=1;p=p+1|0;if(p>>>0>2]-h>>2>>>0){continue}break}}d=H[f>>2];if(d){Wk(d)}d=H[f+16>>2];if(!d){break f}H[f+20>>2]=d;Wk(d);break f}jl();X()}Fa();X()}Ua(1604);X()}if(p&1|b>>>0<=o>>>0){continue}}break}d=H[f+32>>2];if(d){Wk(d)}da=f+48|0;break c}jl();X()}if(!c){break a}b=H[a+32>>2];c=H[a+36>>2];v:{if((b|0)==(c|0)){break v}while(1){if(!(ga[H[H[a>>2]+40>>2]](a,H[b>>2])|0)){break a}b=b+4|0;if((c|0)!=(b|0)){continue}break}b=H[a+32>>2];d=H[a+36>>2];if((b|0)==(d|0)){break v}while(1){c=H[H[a+8>>2]+(H[b>>2]<<2)>>2];if(!(ga[H[H[c>>2]+12>>2]](c,H[a+44>>2])|0)){break a}b=b+4|0;if((d|0)!=(b|0)){continue}break}}t=ga[H[H[a>>2]+44>>2]](a)|0}da=r+16|0;return t|0}function Nk(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,R=0;k=da-96|0;da=k;t=h;u=i&65535;m=(e^i)&-2147483648;l=e&65535;p=l;z=l;J=i>>>16&32767;K=e>>>16&32767;a:{b:{if(J-32767>>>0>4294934529&K-32767>>>0>=4294934530){break b}l=e&2147483647;j=d;if(!(!d&(l|0)==2147418112?!(b|c):l>>>0<2147418112)){o=d;m=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){o=h;m=i|32768;b=f;c=g;break a}if(!(b|j|(l^2147418112|c))){if(!(f|h|(e|g))){m=2147450880;b=0;c=0;break a}m=m|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){d=b|j;e=c|l;b=0;c=0;if(!(d|e)){m=2147450880;break a}m=m|2147418112;break a}if(!(b|j|(c|l))){b=0;c=0;break a}if(!(f|h|(e|g))){b=0;c=0;break a}if((l|0)==65535|l>>>0<65535){j=b;h=!(d|p);i=h<<6;l=Q(h?b:d)+32|0;b=Q(h?c:p);b=i+((b|0)==32?l:b)|0;Fk(k+80|0,j,c,d,p,b-15|0);s=16-b|0;d=H[k+88>>2];z=H[k+92>>2];c=H[k+84>>2];b=H[k+80>>2]}if(e>>>0>65535){break b}e=!(t|u);h=e<<6;i=Q(e?f:t)+32|0;e=Q(e?g:u);e=h+((e|0)==32?i:e)|0;Fk(k- -64|0,f,g,t,u,e-15|0);s=(s-e|0)+16|0;t=H[k+72>>2];u=H[k+76>>2];f=H[k+64>>2];g=H[k+68>>2]}e=f;j=g<<15|e>>>17;h=e<<15;e=j;p=h&-32768;q=c;A=Fl(p,0,c,0);c=fa;w=c;B=e;i=0;j=Fl(e,0,b,i);e=j+A|0;h=fa+c|0;h=e>>>0>>0?h+1|0:h;c=e;j=e;n=Fl(b,i,p,i);l=0+n|0;e=fa+e|0;e=l>>>0>>0?e+1|0:e;x=l;n=l;l=e;C=(j|0)==(e|0)&r>>>0>n>>>0|e>>>0>>0;r=d;L=Fl(p,i,d,0);F=fa;e=Fl(q,i,B,i);d=e+L|0;j=fa+F|0;n=d;d=d>>>0>>0?j+1|0:j;e=t;j=u<<15|e>>>17;y=e<<15|g>>>17;g=j;j=Fl(y,0,b,i);e=j+n|0;f=fa+d|0;G=e;f=e>>>0>>0?f+1|0:f;u=f;e=f;f=(h|0)==(w|0)&c>>>0>>0|h>>>0>>0;c=h+G|0;f=e+f|0;A=c;f=c>>>0>>0?f+1|0:f;t=f;c=f;D=z|65536;z=v;M=Fl(p,i,D,v);I=fa;h=Fl(r,o,B,i);f=h+M|0;e=fa+I|0;N=f;e=f>>>0>>0?e+1|0:e;v=e;E=g|-2147483648;w=0;g=Fl(E,w,b,i);b=g+f|0;f=fa+e|0;f=b>>>0>>0?f+1|0:f;O=b;e=Fl(y,o,q,i);b=b+e|0;p=f;j=f+fa|0;P=b;g=b>>>0>>0?j+1|0:j;f=0;b=f+A|0;e=c+P|0;e=b>>>0>>0?e+1|0:e;R=b;c=b;b=b+C|0;C=e;f=b>>>0>>0?e+1|0:e;c=f;s=((K+J|0)+s|0)-16383|0;j=Fl(E,w,q,i);h=fa;i=Fl(D,z,B,i);e=i+j|0;f=fa+h|0;f=e>>>0>>0?f+1|0:f;i=(f|0)==(h|0)&e>>>0>>0|f>>>0>>0;h=e;q=i;i=Fl(y,o,r,o);e=i+e|0;j=fa+f|0;j=e>>>0>>0?j+1|0:j;i=(f|0)==(j|0)&e>>>0>>0|f>>>0>j>>>0;f=q+i|0;h=0;h=f>>>0>>0?1:h;q=Fl(E,w,D,z);i=q+f|0;f=fa+h|0;f=i>>>0>>0?f+1|0:f;q=e;h=j;B=i;e=(d|0)==(u|0)&n>>>0>G>>>0|d>>>0>u>>>0;d=e+((d|0)==(F|0)&n>>>0>>0|d>>>0>>0)|0;j=0;j=d>>>0>>0?1:j;i=d;d=q+d|0;e=h+j|0;e=d>>>0>>0?e+1|0:e;n=d;i=e;e=(e|0)==(h|0)&d>>>0>>0|e>>>0>>0;d=B+e|0;h=d>>>0>>0?f+1|0:f;q=d;j=Fl(y,o,D,z);e=fa;r=Fl(E,w,r,o);d=r+j|0;f=fa+e|0;f=d>>>0>>0?f+1|0:f;r=d;d=f;f=(e|0)==(f|0)&j>>>0>r>>>0|e>>>0>f>>>0;y=d+q|0;e=f+h|0;e=d>>>0>y>>>0?e+1|0:e;h=0;d=h+n|0;f=i+r|0;f=d>>>0>>0?f+1|0:f;h=f;j=(i|0)==(f|0)&d>>>0>>0|f>>>0>>0;i=j+y|0;n=i;i=i>>>0>>0?e+1|0:e;r=d;e=d;d=h;j=(p|0)==(v|0)&N>>>0>O>>>0|p>>>0>>0;f=j+((v|0)==(I|0)&N>>>0>>0|v>>>0>>0)|0;h=0;j=f+((g|0)==(p|0)&O>>>0>P>>>0|g>>>0

>>0)|0;f=g+e|0;e=d+j|0;e=f>>>0>>0?e+1|0:e;g=f;h=(d|0)==(e|0)&f>>>0>>0|d>>>0>e>>>0;d=h+n|0;f=i;f=d>>>0>>0?f+1|0:f;h=e;n=d;i=(t|0)==(C|0)&A>>>0>R>>>0|t>>>0>C>>>0;d=i+((t|0)==(u|0)&A>>>0>>0|t>>>0>>0)|0;j=0;j=d>>>0>>0?1:j;i=d;d=d+g|0;e=e+j|0;e=d>>>0>>0?e+1|0:e;h=(e|0)==(h|0)&d>>>0>>0|e>>>0>>0;g=n+h|0;f=g>>>0>>0?f+1|0:f;h=g;i=f;c:{if(f&65536){s=s+1|0;break c}v=l>>>31|0;f=i<<1|h>>>31;h=g<<1|e>>>31;i=f;f=e<<1|d>>>31;d=d<<1|c>>>31;e=f;g=x;f=l<<1|g>>>31;x=g<<1;l=f;f=c<<1|b>>>31;b=b<<1|v;c=f}if((s|0)>=32767){m=m|2147418112;b=0;c=0;break a}d:{if((s|0)<=0){f=1-s|0;if(f>>>0>=128){b=0;c=0;break a}g=s+127|0;Fk(k+48|0,x,l,b,c,g);Fk(k+32|0,d,e,h,i,g);Mk(k+16|0,x,l,b,c,f);Mk(k,d,e,h,i,f);x=H[k+32>>2]|H[k+16>>2]|(H[k+48>>2]|H[k+56>>2]|(H[k+52>>2]|H[k+60>>2]))!=0;l=H[k+36>>2]|H[k+20>>2];b=H[k+40>>2]|H[k+24>>2];c=H[k+44>>2]|H[k+28>>2];d=H[k>>2];e=H[k+4>>2];f=H[k+8>>2];g=H[k+12>>2];break d}f=h;g=i&65535|s<<16}o=f|o;m=g|m;if(!(!b&(c|0)==-2147483648?!(l|x):(c|0)>0|(c|0)>=0)){b=d+1|0;j=b?e:e+1|0;c=j;f=(e|0)==(j|0)&b>>>0>>0|e>>>0>j>>>0;d=f+o|0;e=m;o=d;m=d>>>0>>0?e+1|0:e;break a}if(b|x|(c^-2147483648|l)){b=d;c=e;break a}j=m;c=d&1;b=c+d|0;f=b>>>0>>0?e+1|0:e;c=f;e=(e|0)==(f|0)&b>>>0>>0|e>>>0>f>>>0;d=e+o|0;o=d;m=d>>>0>>0?j+1|0:j}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=o;H[a+12>>2]=m;da=k+96|0}function Mh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=da-16|0;da=j;c=H[b+56>>2];f=H[c+100>>2]-H[c+96>>2]|0;n=(f|0)/12|0;tb(n,H[b+44>>2]);tb(H[H[b+56>>2]+80>>2],H[b+44>>2]);g=H[b+48>>2];c=$k(32);H[j>>2]=c;H[j+4>>2]=21;H[j+8>>2]=-2147483616;F[c+21|0]=0;d=I[1261]|I[1262]<<8|(I[1263]<<16|I[1264]<<24);e=I[1257]|I[1258]<<8|(I[1259]<<16|I[1260]<<24);F[c+13|0]=e;F[c+14|0]=e>>>8;F[c+15|0]=e>>>16;F[c+16|0]=e>>>24;F[c+17|0]=d;F[c+18|0]=d>>>8;F[c+19|0]=d>>>16;F[c+20|0]=d>>>24;d=I[1256]|I[1257]<<8|(I[1258]<<16|I[1259]<<24);e=I[1252]|I[1253]<<8|(I[1254]<<16|I[1255]<<24);F[c+8|0]=e;F[c+9|0]=e>>>8;F[c+10|0]=e>>>16;F[c+11|0]=e>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1248]|I[1249]<<8|(I[1250]<<16|I[1251]<<24);e=I[1244]|I[1245]<<8|(I[1246]<<16|I[1247]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;c=ki(g,j,0);if(F[j+11|0]<0){Wk(H[j>>2])}g=H[b+44>>2];a:{if(c){F[j|0]=0;c=H[g+20>>2];if(!H[g+16>>2]&(c|0)<=0|(c|0)<0){ya(g,H[g+4>>2],j,j+1|0)}c=0;m=da-16|0;da=m;H[m>>2]=0;H[m+4>>2]=0;g=b;b=H[b+56>>2];e=H[b+96>>2];b=H[b+100>>2]-e|0;if(b){b=(b|0)/12|0;n=b>>>0>1?b:1;b=H[m>>2];b:{c:{while(1){d:{o=N(p,12)+e|0;l=H[o>>2];d=l-h|0;e=d>>31;h=(e^d+e)<<1|d>>>31;e:{if((i|0)!=(k|0)){H[i>>2]=h;i=i+4|0;H[m+4>>2]=i;break e}k=i-c|0;d=k>>2;f=d+1|0;if(f>>>0>=1073741824){break d}e=k>>1;f=k>>>0<2147483644?e>>>0>>0?f:e:1073741823;if(f){if(f>>>0>=1073741824){break c}b=$k(f<<2)}else{b=0}e=b+(d<<2)|0;H[e>>2]=h;i=e+4|0;if((k|0)>0){ek(b,c,k)}k=(f<<2)+b|0;H[m+4>>2]=i;if(c){Wk(c)}c=b}f=H[o+4>>2];d=f-l|0;e=d>>31;l=(e^d+e)<<1|d>>>31;f:{if((i|0)!=(k|0)){H[i>>2]=l;i=i+4|0;H[m+4>>2]=i;break f}k=i-c|0;d=k>>2;h=d+1|0;if(h>>>0>1073741823){break d}e=k>>1;h=k>>>0<2147483644?e>>>0>>0?h:e:1073741823;if(h){if(h>>>0>1073741823){break c}b=$k(h<<2)}else{b=0}e=b+(d<<2)|0;H[e>>2]=l;i=e+4|0;if((k|0)>0){ek(b,c,k)}k=(h<<2)+b|0;H[m+4>>2]=i;if(c){Wk(c)}c=b}h=H[o+8>>2];d=h-f|0;e=d>>31;l=(e^d+e)<<1|d>>>31;g:{if((i|0)!=(k|0)){H[i>>2]=l;i=i+4|0;H[m+4>>2]=i;break g}o=i-c|0;d=o>>2;f=d+1|0;if(f>>>0>1073741823){break d}e=o>>1;f=o>>>0<2147483644?e>>>0>>0?f:e:1073741823;if(f){if(f>>>0>1073741823){break c}b=$k(f<<2)}else{b=0}e=b+(d<<2)|0;H[e>>2]=l;i=e+4|0;if((o|0)>0){ek(b,c,o)}k=(f<<2)+b|0;H[m+4>>2]=i;if(c){Wk(c)}c=b}p=p+1|0;if((n|0)==(p|0)){break b}e=H[H[g+56>>2]+96>>2];continue}break}H[m+8>>2]=i;H[m>>2]=b;Fa();X()}H[m>>2]=b;Ua(1604);X()}H[m>>2]=b}ef(c,i-c>>2,1,0,H[g+44>>2]);if(c){Wk(c)}da=m+16|0;break a}F[j|0]=1;c=H[g+20>>2];if(!H[g+16>>2]&(c|0)<=0|(c|0)<0){ya(g,H[g+4>>2],j,j+1|0)}h=H[b+56>>2];c=H[h+80>>2];if(c>>>0<=255){if(!f){break a}l=j+1|0;e=n>>>0>1?n:1;c=0;while(1){d=H[b+44>>2];h=H[h+96>>2]+N(c,12)|0;F[j|0]=H[h>>2];g=H[d+20>>2];h:{if(!!H[d+16>>2]&(g|0)>=0|(g|0)>0){break h}ya(d,H[d+4>>2],j,l);f=H[b+44>>2];d=H[f+20>>2];g=H[f+16>>2];F[j|0]=H[h+4>>2];if(!!g&(d|0)>=0|(d|0)>0){break h}ya(f,H[f+4>>2],j,l);f=H[b+44>>2];g=H[f+16>>2];d=H[f+20>>2];F[j|0]=H[h+8>>2];if(!!g&(d|0)>=0|(d|0)>0){break h}ya(f,H[f+4>>2],j,l)}c=c+1|0;if((e|0)==(c|0)){break a}h=H[b+56>>2];continue}}if(c>>>0<=65535){if(!f){break a}l=j+2|0;e=n>>>0>1?n:1;c=0;while(1){d=H[b+44>>2];h=H[h+96>>2]+N(c,12)|0;G[j>>1]=H[h>>2];g=H[d+20>>2];i:{if(!!H[d+16>>2]&(g|0)>=0|(g|0)>0){break i}ya(d,H[d+4>>2],j,l);f=H[b+44>>2];d=H[f+20>>2];g=H[f+16>>2];G[j>>1]=H[h+4>>2];if(!!g&(d|0)>=0|(d|0)>0){break i}ya(f,H[f+4>>2],j,l);f=H[b+44>>2];g=H[f+16>>2];d=H[f+20>>2];G[j>>1]=H[h+8>>2];if(!!g&(d|0)>=0|(d|0)>0){break i}ya(f,H[f+4>>2],j,l)}c=c+1|0;if((e|0)==(c|0)){break a}h=H[b+56>>2];continue}}if(c>>>0>=2097152){if(!f){break a}i=H[b+44>>2];c=i;g=H[c+20>>2];d=H[c+16>>2];if(!!d&(g|0)>=0|(g|0)>0){break a}e=n>>>0>1?n:1;c=0;while(1){if(!d&(g|0)<=0|(g|0)<0){g=H[h+96>>2]+N(c,12)|0;ya(i,H[i+4>>2],g,g+12|0)}c=c+1|0;if((e|0)==(c|0)){break a}h=H[b+56>>2];i=H[b+44>>2];d=H[i+16>>2];g=H[i+20>>2];continue}}if(!f){break a}g=n>>>0>1?n:1;c=0;while(1){e=H[h+96>>2]+N(c,12)|0;tb(H[e>>2],H[b+44>>2]);tb(H[e+4>>2],H[b+44>>2]);tb(H[e+8>>2],H[b+44>>2]);c=c+1|0;if((g|0)==(c|0)){break a}h=H[b+56>>2];continue}}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=j+16|0}function fd(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0;a:{if(!d){break a}b:{c:{switch(H[a+28>>2]-1|0){case 0:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=F[b|0];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 1:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=I[b|0];H[e+4>>2]=0;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 2:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=G[b>>1];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+2|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 3:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=J[b>>1];H[e+4>>2]=0;b=b+2|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 4:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;g=H[b>>2];H[e>>2]=g;H[e+4>>2]=g>>31;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 5:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=H[b>>2];H[e+4>>2]=0;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 6:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}g=H[b+4>>2];e=(f<<3)+d|0;H[e>>2]=H[b>>2];H[e+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 7:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=H[b>>2];g=H[b+4>>2];if((g|0)<0){break a}k=(f<<3)+d|0;H[k>>2]=e;H[k+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 8:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;k=H[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;i=L[b>>2];d:{if(O(P(i))=O(1)?~~(i>O(0)?O(R(O(T(O(i*O(2.3283064365386963e-10)))),O(4294967296))):O(U(O(O(i-O(~~i>>>0>>>0))*O(2.3283064365386963e-10)))))>>>0:0;h=~~i>>>0;break d}g=-2147483648;h=0}H[e>>2]=h;H[e+4>>2]=g;b=b+4|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 9:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;k=H[e+4>>2];while(1){if(b>>>0>=k>>>0){break a}e=(f<<3)+d|0;j=M[b>>3];e:{if(P(j)<0x8000000000000000){g=P(j)>=1?~~(j>0?R(T(j*2.3283064365386963e-10),4294967295):U((j-+(~~j>>>0>>>0))*2.3283064365386963e-10))>>>0:0;h=~~j>>>0;break e}g=-2147483648;h=0}H[e>>2]=h;H[e+4>>2]=g;b=b+8|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break b}break a;case 10:break c;default:break a}}e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];g=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=g+b|0;h=H[e+4>>2];while(1){if(b>>>0>=h>>>0){break a}e=(f<<3)+d|0;H[e>>2]=I[b|0];H[e+4>>2]=0;b=b+1|0;f=f+1|0;e=F[a+24|0];if((f|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break a}}gk((e<<3)+d|0,0,c-e<<3)}}function nd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=da-96|0;da=f;e=H[a+16>>2];F[f+92|0]=1;H[f+88>>2]=b;H[f+84>>2]=b;H[f+80>>2]=e;m=H[a+20>>2];d=H[m>>2];a:{b:{e=H[H[e+28>>2]+(b<<2)>>2];if(e>>>0>2]-d>>2>>>0){d=H[H[a+8>>2]+(H[d+(e<<2)>>2]<<2)>>2];e=H[a+4>>2];if(!I[e+84|0]){d=H[H[e+68>>2]+(d<<2)>>2]}H[f+72>>2]=0;H[f+76>>2]=0;m=f- -64|0;H[m>>2]=0;H[m+4>>2]=0;H[f+56>>2]=0;H[f+60>>2]=0;fd(e,d,F[e+24|0],f+56|0);e=b+1|0;d=(e>>>0)%3|0;if(b>>>0<=e>>>0){m=d?e:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;while(1){d=m;e=h;c:{if(!H[a+28>>2]){break c}e=b+1|0;d=(e>>>0)%3|0?e:b-2|0;e=b-1|0;if((b>>>0)%3|0){break c}e=b+2|0}k=H[a+20>>2];b=H[k>>2];d=H[H[H[a+16>>2]+28>>2]+(d<<2)>>2];if(d>>>0>=H[k+4>>2]-b>>2>>>0){break b}d=H[H[a+8>>2]+(H[b+(d<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){d=H[H[b+68>>2]+(d<<2)>>2]}H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;fd(b,d,F[b+24|0],f+32|0);d=H[a+20>>2];b=H[d>>2];e=H[H[H[a+16>>2]+28>>2]+(e<<2)>>2];if(e>>>0>=H[d+4>>2]-b>>2>>>0){break a}d=H[H[a+8>>2]+(H[b+(e<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){d=H[H[b+68>>2]+(d<<2)>>2]}H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;fd(b,d,F[b+24|0],f+8|0);e=H[f+8>>2];b=H[f+56>>2];d=e-b|0;k=H[f+60>>2];n=H[f+12>>2]-(k+(b>>>0>e>>>0)|0)|0;i=H[f+40>>2];e=H[f+64>>2];s=i-e|0;t=H[f+68>>2];i=H[f+44>>2]-(t+(e>>>0>i>>>0)|0)|0;u=Fl(d,n,s,i);v=j-u|0;g=g-(fa+(j>>>0>>0)|0)|0;w=v;j=H[f+16>>2];u=j-e|0;t=H[f+20>>2]-((e>>>0>j>>>0)+t|0)|0;j=H[f+32>>2];v=j-b|0;k=H[f+36>>2]-((b>>>0>j>>>0)+k|0)|0;e=Fl(u,t,v,k);j=w+e|0;b=fa+g|0;b=e>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=H[f+48>>2];e=H[f+72>>2];n=b-e|0;o=H[f+76>>2];x=H[f+52>>2]-(o+(b>>>0>>0)|0)|0;p=Fl(d,p,n,x);d=w+p|0;b=fa+l|0;b=d>>>0

>>0?b+1|0:b;l=H[f+24>>2];p=l-e|0;e=H[f+28>>2]-((e>>>0>l>>>0)+o|0)|0;l=Fl(p,e,v,k);o=d-l|0;l=b-(fa+(d>>>0>>0)|0)|0;b=Fl(u,t,n,x);d=q-b|0;b=r-(fa+(b>>>0>q>>>0)|0)|0;r=Fl(p,e,s,i);q=r+d|0;b=fa+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=H[f+88>>2];e=H[f+80>>2];d:{if(I[f+92|0]){e:{f:{g:{h:{if((b|0)==-1){break h}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break h}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break g}}H[f+88>>2]=-1;break f}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;H[f+88>>2]=b;if((b|0)!=-1){break e}}b=H[f+84>>2];d=-1;i:{if((b|0)==-1){break i}j:{if((b>>>0)%3|0){b=b-1|0;break j}b=b+2|0;d=-1;if((b|0)==-1){break i}}d=-1;if(H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break i}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break i}d=b-1|0;if((b>>>0)%3|0){break i}d=b+2|0}F[f+92|0]=0;H[f+88>>2]=d;break d}if((b|0)!=H[f+84>>2]){break d}H[f+88>>2]=-1;break d}d=-1;k:{if((b|0)==-1){break k}l:{if((b>>>0)%3|0){b=b-1|0;break l}b=b+2|0;d=-1;if((b|0)==-1){break k}}d=-1;if(H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break k}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break k}d=b-1|0;if((b>>>0)%3|0){break k}d=b+2|0}H[f+88>>2]=d}b=H[f+88>>2];if((b|0)!=-1){continue}break}}b=r>>31;d=b+q|0;e=b;b=b+r|0;k=d^e;h=e^(d>>>0>>0?b+1|0:b);n=-1;d=2147483647;b=l>>31;i=b;e=b+o|0;b=b+l|0;b=e>>>0>>0?b+1|0:b;e=e^i;b=b^i;i=b;s=e^-1;b=b^2147483647;m=g;m:{n:{if(!H[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break m}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=a;a=b;b=g>>31;d=b+j|0;h=g;g=b;b=h+b|0;b=d>>>0>>0?b+1|0:b;h=d^g;d=h+e|0;g=b^g;b=d;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;g=!(a&0);a=a?-1:b;if(g&(a|0)<=536870912|(a|0)<536870912){break m}b=0;a=a>>>29|0;break n}o:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break o}b=h+i|0;a=e+k|0;b=a>>>0>>0?b+1|0:b;e=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(e|0)&(g^-1)>>>0>>0|e>>>0>h>>>0){break o}b=b+e|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;d=b;if(!b&a>>>0<536870913){break m}}b=d>>>29|0;a=(d&536870911)<<3|n>>>29}j=Gl(j,m,a,b);o=Gl(o,l,a,b);q=Gl(q,r,a,b)}H[c+8>>2]=j;H[c+4>>2]=o;H[c>>2]=q;da=f+96|0;return}Sc();X()}Sc();X()}Sc();X()}function bk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0);d=1;a:{if(!H[a+80>>2]){break a}b=H[a+8>>2];if((H[a+12>>2]-b|0)<=0){break a}while(1){c=H[(o<<2)+b>>2];g=0;n=0;h=0;d=0;b=-1;b:{c:{d:{e:{switch(H[c+28>>2]-1|0){case 8:f:{switch(F[c+24|0]-1|0){case 0:e=da+-64|0;da=e;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+48>>2]=1065353216;b=H[c+80>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g:{h:{i:{if(!b){break i}if(b>>>0>=1073741824){break h}f=b<<2;j=$k(f);H[e+16>>2]=j;b=f+j|0;H[e+24>>2]=b;gk(j,0,f);H[e+20>>2]=b;while(1){b=H[H[c>>2]>>2];f=H[c+48>>2]+Fl(H[c+40>>2],H[c+44>>2],h,0)|0;b=b+f|0;p=(x(2,I[b|0]|I[b+1|0]<<8|(I[b+2|0]<<16|I[b+3|0]<<24)),C());L[e+28>>2]=p;j:{k:{l:{if(!g){break l}i=H[e+32>>2];m=(B(p),v(2));k=m^318;f=Il(g)>>>0>1;b=k&g-1;m:{if(!f){break m}b=k;if(b>>>0>>0){break m}b=(k>>>0)%(g>>>0)|0}l=b;b=H[i+(l<<2)>>2];if(!b){break l}b=H[b>>2];if(!b){break l}if(!f){i=g-1|0;while(1){f=H[b+4>>2];n:{if((f|0)!=(k|0)){if((l|0)==(f&i)){break n}break l}if((m|0)==H[b+8>>2]){break k}}b=H[b>>2];if(b){continue}break}break l}while(1){f=H[b+4>>2];o:{if((f|0)!=(k|0)){if(g>>>0<=f>>>0){f=(f>>>0)%(g>>>0)|0}if((f|0)==(l|0)){break o}break l}if((m|0)==H[b+8>>2]){break k}}b=H[b>>2];if(b){continue}break}}H[e+12>>2]=n;L[e+8>>2]=p;b=e+8|0;mb(e+56|0,e+32|0,b,b);b=H[c+40>>2];ek(H[H[c>>2]>>2]+N(b,n)|0,e+28|0,b);j=H[e+16>>2];H[j+(h<<2)>>2]=n;n=n+1|0;break j}H[(h<<2)+j>>2]=H[b+12>>2]}b=h+1|0;d=b?d:d+1|0;h=b;b=H[c+80>>2];if(!d&b>>>0>h>>>0){g=H[e+36>>2];continue}break}if((b|0)==(n|0)){break i}p:{if(!I[c+84|0]){m=H[c+68>>2];b=H[c+72>>2]-m|0;if(!b){break p}i=H[e+16>>2];b=b>>2;d=b>>>0>1?b:1;l=d&3;j=0;b=0;if(d-1>>>0>=3){f=d&-4;k=0;while(1){h=b<<2;d=h+m|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|4)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|8)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];d=m+(h|12)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];b=b+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}if(!l){break p}while(1){d=m+(b<<2)|0;H[d>>2]=H[i+(H[d>>2]<<2)>>2];b=b+1|0;j=j+1|0;if((l|0)!=(j|0)){continue}break}break p}F[c+84|0]=0;g=H[c+68>>2];d=H[c+72>>2]-g>>2;q:{if(d>>>0>>0){nb(c+68|0,b-d|0,2204);g=H[c+68>>2];b=H[c+80>>2];break q}if(b>>>0>=d>>>0){break q}H[c+72>>2]=(b<<2)+g}if(!b){break p}h=H[e+16>>2];j=0;i=0;if(b-1>>>0>=3){f=b&-4;k=0;while(1){l=i<<2;H[l+g>>2]=H[h+l>>2];d=l|4;H[d+g>>2]=H[d+h>>2];d=l|8;H[d+g>>2]=H[d+h>>2];d=l|12;H[d+g>>2]=H[d+h>>2];i=i+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=b&3;if(!d){break p}while(1){b=i<<2;H[b+g>>2]=H[b+h>>2];i=i+1|0;j=j+1|0;if((d|0)!=(j|0)){continue}break}}H[c+80>>2]=n}b=H[e+16>>2];if(b){Wk(b)}b=H[e+40>>2];if(b){while(1){d=H[b>>2];Wk(b);b=d;if(b){continue}break}}b=H[e+32>>2];H[e+32>>2]=0;if(b){Wk(b)}da=e- -64|0;b=n;break g}Fa();X()}break d;case 1:b=ab(c,c);break d;case 2:b=bb(c,c);break d;case 3:break f;default:break c}}b=cb(c,c);break d;case 0:r:{switch(F[c+24|0]-1|0){case 0:b=db(c,c);break d;case 1:b=eb(c,c);break d;case 2:b=fb(c,c);break d;case 3:break r;default:break c}}b=gb(c,c);break d;case 1:case 10:s:{switch(F[c+24|0]-1|0){case 0:b=db(c,c);break d;case 1:b=eb(c,c);break d;case 2:b=fb(c,c);break d;case 3:break s;default:break c}}b=gb(c,c);break d;case 3:t:{switch(F[c+24|0]-1|0){case 0:b=hb(c,c);break d;case 1:b=ib(c,c);break d;case 2:b=jb(c,c);break d;case 3:break t;default:break c}}b=kb(c,c);break d;case 2:u:{switch(F[c+24|0]-1|0){case 0:b=hb(c,c);break d;case 1:b=ib(c,c);break d;case 2:b=jb(c,c);break d;case 3:break u;default:break c}}b=kb(c,c);break d;case 5:v:{switch(F[c+24|0]-1|0){case 0:b=lb(c,c);break d;case 1:b=ab(c,c);break d;case 2:b=bb(c,c);break d;case 3:break v;default:break c}}b=cb(c,c);break d;case 4:break e;default:break b}}w:{switch(F[c+24|0]-1|0){case 0:b=lb(c,c);break d;case 1:b=ab(c,c);break d;case 2:b=bb(c,c);break d;case 3:break w;default:break c}}b=cb(c,c)}if(b){break b}}b=-1}d=b;if(b){o=o+1|0;b=H[a+8>>2];if((o|0)>2]-b>>2){continue}}break}d=(d|0)!=0}return d|0}function Bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=da-96|0;da=e;d=H[a+16>>2];F[e+92|0]=1;H[e+88>>2]=b;H[e+84>>2]=b;H[e+80>>2]=d;a:{if((b|0)==-1){break a}m=H[a+20>>2];f=H[m>>2];d=H[H[d>>2]+(b<<2)>>2];if(d>>>0>=H[m+4>>2]-f>>2>>>0){break a}f=H[H[a+8>>2]+(H[f+(d<<2)>>2]<<2)>>2];d=H[a+4>>2];if(!I[d+84|0]){f=H[H[d+68>>2]+(f<<2)>>2]}H[e+72>>2]=0;H[e+76>>2]=0;m=e- -64|0;H[m>>2]=0;H[m+4>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;fd(d,f,F[d+24|0],e+56|0);d=b+1|0;m=(d>>>0)%3|0?d:b-2|0;h=((b>>>0)%3|0?-1:2)+b|0;b:{c:{while(1){f=m;d=h;d:{if(!H[a+28>>2]){break d}d=b+1|0;f=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break d}d=b+2|0}if((f|0)==-1){break b}k=H[a+20>>2];b=H[k>>2];f=H[H[H[a+16>>2]>>2]+(f<<2)>>2];if(f>>>0>=H[k+4>>2]-b>>2>>>0){break b}f=H[H[a+8>>2]+(H[b+(f<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;fd(b,f,F[b+24|0],e+32|0);if((d|0)==-1){break c}f=H[a+20>>2];b=H[f>>2];d=H[H[H[a+16>>2]>>2]+(d<<2)>>2];if(d>>>0>=H[f+4>>2]-b>>2>>>0){break c}f=H[H[a+8>>2]+(H[b+(d<<2)>>2]<<2)>>2];b=H[a+4>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}H[e+24>>2]=0;H[e+28>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;fd(b,f,F[b+24|0],e+8|0);d=H[e+8>>2];b=H[e+56>>2];f=d-b|0;k=H[e+60>>2];n=H[e+12>>2]-(k+(b>>>0>d>>>0)|0)|0;i=H[e+40>>2];d=H[e+64>>2];s=i-d|0;t=H[e+68>>2];i=H[e+44>>2]-(t+(d>>>0>i>>>0)|0)|0;u=Fl(f,n,s,i);v=j-u|0;g=g-(fa+(j>>>0>>0)|0)|0;w=v;j=H[e+16>>2];u=j-d|0;t=H[e+20>>2]-((d>>>0>j>>>0)+t|0)|0;j=H[e+32>>2];v=j-b|0;k=H[e+36>>2]-((b>>>0>j>>>0)+k|0)|0;d=Fl(u,t,v,k);j=w+d|0;b=fa+g|0;b=d>>>0>j>>>0?b+1|0:b;g=b;w=o;p=n;b=H[e+48>>2];d=H[e+72>>2];n=b-d|0;o=H[e+76>>2];x=H[e+52>>2]-(o+(b>>>0>>0)|0)|0;p=Fl(f,p,n,x);f=w+p|0;b=fa+l|0;b=f>>>0

>>0?b+1|0:b;l=H[e+24>>2];p=l-d|0;d=H[e+28>>2]-((d>>>0>l>>>0)+o|0)|0;l=Fl(p,d,v,k);o=f-l|0;l=b-(fa+(f>>>0>>0)|0)|0;b=Fl(u,t,n,x);f=q-b|0;b=r-(fa+(b>>>0>q>>>0)|0)|0;r=Fl(p,d,s,i);q=r+f|0;b=fa+b|0;b=q>>>0>>0?b+1|0:b;r=b;b=H[e+88>>2];f=H[e+80>>2];e:{if(I[e+92|0]){f:{g:{h:{i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break i}b=H[H[f+12>>2]+(b<<2)>>2];if((b|0)!=-1){break h}}H[e+88>>2]=-1;break g}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;H[e+88>>2]=b;if((b|0)!=-1){break f}}b=H[e+84>>2];d=-1;j:{if((b|0)==-1){break j}k:{if((b>>>0)%3|0){b=b-1|0;break k}b=b+2|0;d=-1;if((b|0)==-1){break j}}b=H[H[f+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break j}d=b-1|0;if((b>>>0)%3|0){break j}d=b+2|0}F[e+92|0]=0;H[e+88>>2]=d;break e}if((b|0)!=H[e+84>>2]){break e}H[e+88>>2]=-1;break e}d=-1;l:{if((b|0)==-1){break l}m:{if((b>>>0)%3|0){b=b-1|0;break m}b=b+2|0;d=-1;if((b|0)==-1){break l}}b=H[H[f+12>>2]+(b<<2)>>2];d=-1;if((b|0)==-1){break l}d=b-1|0;if((b>>>0)%3|0){break l}d=b+2|0}H[e+88>>2]=d}b=H[e+88>>2];if((b|0)!=-1){continue}break}b=r>>31;f=b+q|0;d=b;b=b+r|0;k=f^d;h=d^(f>>>0>>0?b+1|0:b);n=-1;f=2147483647;b=l>>31;i=b;d=b+o|0;b=b+l|0;b=d>>>0>>0?b+1|0:b;d=d^i;b=b^i;i=b;s=d^-1;b=b^2147483647;m=g;n:{o:{if(!H[a+28>>2]){if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break n}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=a;a=b;b=g>>31;f=b+j|0;h=g;g=b;b=h+b|0;b=f>>>0>>0?b+1|0:b;h=f^g;f=h+d|0;g=b^g;b=f;g=g^2147483647;a=(g|0)==(a|0)&(h^-1)>>>0>>0|a>>>0>g>>>0;d=!(a&0);a=a?-1:b;if(d&(a|0)<=536870912|(a|0)<536870912){break n}b=0;a=a>>>29|0;break o}p:{if((b|0)==(h|0)&k>>>0>s>>>0|b>>>0>>0){break p}b=h+i|0;a=d+k|0;b=a>>>0>>0?b+1|0:b;d=b;h=g;b=g>>31;g=b+j|0;i=h;h=b;b=i+b|0;b=g>>>0>>0?b+1|0:b;g=g^h;b=b^h;h=b^2147483647;if((h|0)==(d|0)&(g^-1)>>>0>>0|d>>>0>h>>>0){break p}b=b+d|0;a=a+g|0;b=a>>>0>>0?b+1|0:b;n=a;f=b;if(!b&a>>>0<536870913){break n}}b=f>>>29|0;a=(f&536870911)<<3|n>>>29}j=Gl(j,m,a,b);o=Gl(o,l,a,b);q=Gl(q,r,a,b)}H[c+8>>2]=j;H[c+4>>2]=o;H[c>>2]=q;da=e+96|0;return}Sc();X()}Sc();X()}Sc();X()}function Hd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=da-48|0;da=b;g=H[H[a+4>>2]+48>>2];H[b+8>>2]=H[a+12>>2];d=$k(32);H[b+24>>2]=d;H[b+28>>2]=17;H[b+32>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[1373];e=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);f=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);f=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=Bb(g,b+8|0,b+24|0,-1);if(F[b+35|0]<0){Wk(H[b+24>>2])}H[b+32>>2]=-1;H[b+36>>2]=1065353216;H[b+24>>2]=-1;H[b+28>>2]=-1;H[b+40>>2]=-1;d=-1<>>0<4294967267){break a}H[b+24>>2]=d+1;d=-2<>2]=d^-1;d=-2-d|0;H[b+32>>2]=d;H[b+40>>2]=(d|0)/2;L[b+36>>2]=O(2)/O(d|0)}g=qe(H[a+12>>2],H[a+4>>2]);h=H[H[a+4>>2]+48>>2];H[b+20>>2]=H[a+12>>2];d=$k(32);H[b+8>>2]=d;H[b+12>>2]=17;H[b+16>>2]=-2147483616;F[d+17|0]=0;F[d+16|0]=I[1688];e=I[1684]|I[1685]<<8|(I[1686]<<16|I[1687]<<24);f=I[1680]|I[1681]<<8|(I[1682]<<16|I[1683]<<24);F[d+8|0]=f;F[d+9|0]=f>>>8;F[d+10|0]=f>>>16;F[d+11|0]=f>>>24;F[d+12|0]=e;F[d+13|0]=e>>>8;F[d+14|0]=e>>>16;F[d+15|0]=e>>>24;e=I[1676]|I[1677]<<8|(I[1678]<<16|I[1679]<<24);f=I[1672]|I[1673]<<8|(I[1674]<<16|I[1675]<<24);F[d|0]=f;F[d+1|0]=f>>>8;F[d+2|0]=f>>>16;F[d+3|0]=f>>>24;F[d+4|0]=e;F[d+5|0]=e>>>8;F[d+6|0]=e>>>16;F[d+7|0]=e>>>24;d=Bb(h,b+20|0,b+8|0,g);if(F[b+19|0]<0){Wk(H[b+8>>2])}b:{c:{switch(d|0){case 6:e=H[a+4>>2];g=H[a+12>>2];j=H[H[H[e+4>>2]+8>>2]+(g<<2)>>2];if((ga[H[H[e>>2]+8>>2]](e)|0)==1){a=b+24|0;d=da-32|0;da=d;h=H[H[H[e+4>>2]+8>>2]+(g<<2)>>2];d:{if((ga[H[H[e>>2]+8>>2]](e)|0)!=1){break d}i=ga[H[H[e>>2]+52>>2]](e)|0;f=ga[H[H[e>>2]+60>>2]](e,g)|0;if(!i|!f){break d}c=ga[H[H[e>>2]+56>>2]](e,g)|0;if(c){e=H[e+56>>2];H[d+20>>2]=c;H[d+16>>2]=e;H[d+28>>2]=f;H[d+24>>2]=f+12;c=$k(128);H[c+4>>2]=h;e=H[a+4>>2];H[c+8>>2]=H[a>>2];H[c+12>>2]=e;e=H[a+12>>2];H[c+16>>2]=H[a+8>>2];H[c+20>>2]=e;H[c+24>>2]=H[a+16>>2];a=H[d+20>>2];H[c+28>>2]=H[d+16>>2];H[c+32>>2]=a;a=H[d+28>>2];H[c+36>>2]=H[d+24>>2];H[c+40>>2]=a;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=7552;a=H[d+20>>2];H[c+56>>2]=H[d+16>>2];H[c+60>>2]=a;e=H[d+28>>2];a=c- -64|0;H[a>>2]=H[d+24>>2];H[a+4>>2]=e;H[c+88>>2]=1065353216;H[c+92>>2]=-1;H[c+80>>2]=-1;H[c+84>>2]=-1;H[c+72>>2]=1;H[c+76>>2]=-1;H[c+44>>2]=7812;H[c+96>>2]=0;H[c+100>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;break d}c=H[e+56>>2];H[d+20>>2]=i;H[d+16>>2]=c;H[d+28>>2]=f;H[d+24>>2]=f+12;c=$k(128);H[c+4>>2]=h;e=H[a+4>>2];H[c+8>>2]=H[a>>2];H[c+12>>2]=e;e=H[a+12>>2];H[c+16>>2]=H[a+8>>2];H[c+20>>2]=e;H[c+24>>2]=H[a+16>>2];a=H[d+20>>2];H[c+28>>2]=H[d+16>>2];H[c+32>>2]=a;a=H[d+28>>2];H[c+36>>2]=H[d+24>>2];H[c+40>>2]=a;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=9176;a=H[d+20>>2];H[c+56>>2]=H[d+16>>2];H[c+60>>2]=a;e=H[d+28>>2];a=c- -64|0;H[a>>2]=H[d+24>>2];H[a+4>>2]=e;H[c+88>>2]=1065353216;H[c+92>>2]=-1;H[c+80>>2]=-1;H[c+84>>2]=-1;H[c+72>>2]=1;H[c+76>>2]=-1;H[c+44>>2]=9420;H[c+96>>2]=0;H[c+100>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0}da=d+32|0;if(c){break b}}c=$k(28);H[c+4>>2]=j;a=H[b+28>>2];H[c+8>>2]=H[b+24>>2];H[c+12>>2]=a;a=H[b+36>>2];H[c+16>>2]=H[b+32>>2];H[c+20>>2]=a;H[c+24>>2]=H[b+40>>2];H[c>>2]=9832;break b;case 0:break c;default:break b}}c=H[a+4>>2];a=H[H[H[c+4>>2]+8>>2]+(H[a+12>>2]<<2)>>2];if((ga[H[H[c>>2]+8>>2]](c)|0)==1){ga[H[H[c>>2]+8>>2]](c)|0}c=$k(28);H[c+4>>2]=a;a=H[b+28>>2];H[c+8>>2]=H[b+24>>2];H[c+12>>2]=a;a=H[b+36>>2];H[c+16>>2]=H[b+32>>2];H[c+20>>2]=a;H[c+24>>2]=H[b+40>>2];H[c>>2]=9832}da=b+48|0;return c|0}function Gb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=O(0),k=0;a:{b:{if(!d){break b}c:{d:{switch(H[a+28>>2]-1|0){case 0:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=F[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 1:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=I[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 2:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=G[b>>1];b=b+2|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 3:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=J[b>>1];b=b+2|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 4:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=H[b>>2];b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 5:e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b>>2];if((e|0)<0){break b}H[(g<<2)+d>>2]=e;b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}h=1;if((c|0)>(e|0)){break c}break b;case 6:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b>>2];if((H[b+4>>2]-(e>>>0<2147483648)|0)!=-1){break a}H[(g<<2)+d>>2]=e;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 7:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}e=H[b+4>>2];i=H[b>>2];if(!e&i>>>0>2147483647|e){break a}H[(g<<2)+d>>2]=i;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 8:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;j=L[b>>2];e:{if(O(P(j))>2]=e;b=b+4|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 9:h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}i=(g<<2)+d|0;k=M[b>>3];f:{if(P(k)<2147483648){e=~~k;break f}e=-2147483648}H[i>>2]=e;b=b+8|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)>(e|0)){break c}break b;case 10:break d;default:break b}}h=1;e=F[a+24|0];if((((c|0)<(e|0)?c:e)|0)>0){e=H[a>>2];f=H[e>>2];b=H[a+48>>2]+Fl(H[a+40>>2],H[a+44>>2],b,0)|0;b=f+b|0;f=H[e+4>>2];while(1){if(b>>>0>=f>>>0){break a}H[(g<<2)+d>>2]=I[b|0];b=b+1|0;g=g+1|0;e=F[a+24|0];if((g|0)<(((c|0)<(e|0)?c:e)|0)){continue}break}}if((c|0)<=(e|0)){break b}}gk((e<<2)+d|0,0,c-e<<2)}return h}return 0}function ff(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;o=da-32|0;da=o;a:{if((c|0)<=0){break a}p=c&3;b:{if(c-1>>>0<3){c=0;break b}z=c&-4;c=0;while(1){t=c|1;k=(t<<3)+b|0;f=H[k+4>>2];q=H[k>>2];u=c|2;m=(u<<3)+b|0;k=H[m+4>>2];v=H[m>>2];w=c|3;i=(w<<3)+b|0;m=H[i+4>>2];x=H[i>>2];r=j;j=(c<<3)+b|0;y=H[j+4>>2];i=H[j>>2];j=m|x?w:k|v?u:f|q?t:!(y|i)?r:c;e=e+y|0;n=i+n|0;e=n>>>0>>0?e+1|0:e;i=n+q|0;e=e+f|0;e=i>>>0>>0?e+1|0:e;f=i+v|0;e=e+k|0;e=f>>>0>>0?e+1|0:e;k=f;f=f+x|0;e=e+m|0;e=f>>>0>>0?e+1|0:e;n=f;c=c+4|0;g=g+4|0;if((z|0)!=(g|0)){continue}break}}if(!p){break a}while(1){g=(c<<3)+b|0;f=H[g+4>>2];g=H[g>>2];j=f|g?c:j;c=c+1|0;e=e+f|0;k=g+n|0;e=k>>>0>>0?e+1|0:e;n=k;h=h+1|0;if((p|0)!=(h|0)){continue}break}}h=j+1|0;H[a+12>>2]=h;g=H[a>>2];c=H[a+4>>2]-g>>3;c:{if(c>>>0>>0){df(a,h-c|0);g=H[a>>2];break c}if(c>>>0<=h>>>0){break c}H[a+4>>2]=(h<<3)+g}f=0;k=0;d:{e:{if((j|0)>=0){s=+(n>>>0)+ +(e>>>0)*4294967296;c=0;while(1){m=c<<3;i=m+b|0;e=H[i+4>>2];i=H[i>>2];n=(e|i)!=0;r=g+m|0;l=(+(i>>>0)+ +(e>>>0)*4294967296)/s*4096+.5;f:{if(l<4294967296&l>=0){e=~~l>>>0;break f}e=0}e=e?e:n?1:e;H[r>>2]=e;k=e+k|0;e=(c|0)==(j|0);c=c+1|0;if(!e){continue}break}if((k|0)==4096){break e}}H[o+16>>2]=0;H[o+8>>2]=0;H[o+12>>2]=0;g=0;g:{h:{i:{if(h){if(h>>>0>=1073741824){break i}c=h<<2;f=$k(c);H[o+8>>2]=f;H[o+16>>2]=c+f;c=(j<<2)+4|0;g=gk(f,0,c)+c|0;H[o+12>>2]=g}c=0;j:{if((j|0)<0){break j}h=j+1|0;e=h&7;if(j>>>0>=7){m=h&-8;h=0;while(1){H[(c<<2)+f>>2]=c;i=c|1;H[(i<<2)+f>>2]=i;i=c|2;H[(i<<2)+f>>2]=i;i=c|3;H[(i<<2)+f>>2]=i;i=c|4;H[(i<<2)+f>>2]=i;i=c|5;H[(i<<2)+f>>2]=i;i=c|6;H[(i<<2)+f>>2]=i;i=c|7;H[(i<<2)+f>>2]=i;c=c+8|0;h=h+8|0;if((m|0)!=(h|0)){continue}break}}if(!e){break j}h=0;while(1){H[(c<<2)+f>>2]=c;c=c+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}H[o+24>>2]=a;c=g-f|0;e=c>>2;k:{if((c|0)<=512){hf(f,g,o+24|0,e,0,0);break k}c=e>>>0<536870911?e:536870911;l:{while(1){h=$k(c<<2);if(h){break l}h=c>>>0>1;c=c>>>1|0;if(h){continue}break}hf(f,g,o+24|0,e,0,0);break k}hf(f,g,o+24|0,e,h,c);Wk(h)}if((k|0)<4096){c=H[a>>2]+(H[g-4>>2]<<3)|0;H[c>>2]=(H[c>>2]-k|0)+4096;break h}m:{if((j|0)>0){h=k-4096|0;while(1){l=4096/+(k|0);i=H[a>>2];g=j;n:{while(1){e=i+(H[(g<<2)+f>>2]<<3)|0;c=H[e>>2];if(c>>>0>=2){n=c-1|0;r=e;m=c;s=T(l*+(c>>>0));o:{if(P(s)<2147483648){e=~~s;break o}e=-2147483648}e=c-e|0;e=e?e:1;c=(c|0)>(e|0)?e:n;c=(c|0)>(h|0)?h:c;H[r>>2]=m-c;h=h-c|0;k=k-c|0;if((k|0)==4096){k=4096;break n}c=(g|0)>1;g=g-1|0;if(c){continue}break n}break}if((g|0)==(j|0)){break m}}if((h|0)<=0){break g}f=H[o+8>>2];continue}}if(k>>>0<4097){break h}while(1)continue}Wk(f);break d}Fa();X()}if(!f){break e}}Wk(f)}if((j|0)<0){break d}e=H[a>>2];m=j+1|0;i=m&3;k=0;h=0;c=0;if(j>>>0>=3){n=m&-4;f=0;while(1){g=h<<3;p=g+e|0;H[p+4>>2]=c;q=e+(g|8)|0;c=H[p>>2]+c|0;H[q+4>>2]=c;p=e+(g|16)|0;c=c+H[q>>2]|0;H[p+4>>2]=c;g=e+(g|24)|0;c=c+H[p>>2]|0;H[g+4>>2]=c;c=c+H[g>>2]|0;h=h+4|0;f=f+4|0;if((n|0)!=(f|0)){continue}break}}if(i){while(1){g=e+(h<<3)|0;H[g+4>>2]=c;h=h+1|0;c=H[g>>2]+c|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}if((c|0)!=4096){break d}c=0;l=0;p:{if((j|0)<0){break p}e=H[a>>2];if(j){h=m&-2;g=0;while(1){j=c<<3;f=H[j+e>>2];if(f){j=b+j|0;l=(+K[j>>2]+ +K[j+4>>2]*4294967296)*hk(+(f>>>0)*.000244140625)+l}j=(c|1)<<3;f=H[j+e>>2];if(f){j=b+j|0;l=(+K[j>>2]+ +K[j+4>>2]*4294967296)*hk(+(f>>>0)*.000244140625)+l}c=c+2|0;g=g+2|0;if((h|0)!=(g|0)){continue}break}}if(!(m&1)){break p}c=c<<3;e=H[c+e>>2];if(!e){break p}b=b+c|0;l=(+K[b>>2]+ +K[b+4>>2]*4294967296)*hk(+(e>>>0)*.000244140625)+l}l=U(-l);q:{if(l<0x10000000000000000&l>=0){c=P(l)>=1?~~(l>0?R(T(l*2.3283064365386963e-10),4294967295):U((l-+(~~l>>>0>>>0))*2.3283064365386963e-10))>>>0:0;b=~~l>>>0;break q}c=0;b=0}H[a+16>>2]=b;H[a+20>>2]=c;jf(a,d)}da=o+32|0}function le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0);f=da-32|0;da=f;H[f+28>>2]=c;a:{b:{if(!Dc(a,b,c)){break b}i=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];if(H[i+28>>2]!=9){break b}g=H[b+48>>2];c=$k(32);H[f+16>>2]=c;H[f+20>>2]=17;H[f+24>>2]=-2147483616;F[c+17|0]=0;F[c+16|0]=I[1373];d=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);h=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[c+8|0]=h;F[c+9|0]=h>>>8;F[c+10|0]=h>>>16;F[c+11|0]=h>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);h=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[c|0]=h;F[c+1|0]=h>>>8;F[c+2|0]=h>>>16;F[c+3|0]=h>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;h=Bb(g,f+28|0,f+16|0,-1);if(F[f+27|0]<0){Wk(H[f+16>>2])}if((h|0)<=0){break b}j=H[b+48>>2];c=$k(32);H[f+16>>2]=c;H[f+20>>2]=19;H[f+24>>2]=-2147483616;F[c+19|0]=0;d=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[c+15|0]=d;F[c+16|0]=d>>>8;F[c+17|0]=d>>>16;F[c+18|0]=d>>>24;d=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);g=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[c+8|0]=g;F[c+9|0]=g>>>8;F[c+10|0]=g>>>16;F[c+11|0]=g>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);g=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[c|0]=g;F[c+1|0]=g>>>8;F[c+2|0]=g>>>16;F[c+3|0]=g>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;c:{if(!Cb(j,f+28|0,f+16|0)){break c}g=H[b+48>>2];c=$k(32);H[f>>2]=c;H[f+4>>2]=18;H[f+8>>2]=-2147483616;F[c+18|0]=0;e=I[1706]|I[1707]<<8;F[c+16|0]=e;F[c+17|0]=e>>>8;e=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);d=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[c+8|0]=d;F[c+9|0]=d>>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;F[c+12|0]=e;F[c+13|0]=e>>>8;F[c+14|0]=e>>>16;F[c+15|0]=e>>>24;e=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);d=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;F[c+4|0]=e;F[c+5|0]=e>>>8;F[c+6|0]=e>>>16;F[c+7|0]=e>>>24;e=Cb(g,f+28|0,f);if(F[f+11|0]>=0){break c}Wk(H[f>>2])}if(F[f+27|0]<0){Wk(H[f+16>>2])}d:{if(e){e=F[i+24|0];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=0;if(e){if((e|0)<0){break a}e=e<<2;c=$k(e);H[f+16>>2]=c;d=c+e|0;H[f+24>>2]=d;gk(c,0,e);H[f+20>>2]=d}j=H[b+48>>2];e=$k(32);H[f>>2]=e;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[e+19|0]=0;d=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[e+15|0]=d;F[e+16|0]=d>>>8;F[e+17|0]=d>>>16;F[e+18|0]=d>>>24;d=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);g=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[e+8|0]=g;F[e+9|0]=g>>>8;F[e+10|0]=g>>>16;F[e+11|0]=g>>>24;F[e+12|0]=d;F[e+13|0]=d>>>8;F[e+14|0]=d>>>16;F[e+15|0]=d>>>24;d=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);g=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[e|0]=g;F[e+1|0]=g>>>8;F[e+2|0]=g>>>16;F[e+3|0]=g>>>24;F[e+4|0]=d;F[e+5|0]=d>>>8;F[e+6|0]=d>>>16;F[e+7|0]=d>>>24;Db(j,f+28|0,f,F[i+24|0],c);if(F[f+11|0]<0){Wk(H[f>>2])}g=H[b+48>>2];b=$k(32);H[f>>2]=b;H[f+4>>2]=18;H[f+8>>2]=-2147483616;F[b+18|0]=0;e=I[1706]|I[1707]<<8;F[b+16|0]=e;F[b+17|0]=e>>>8;e=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);d=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=e;F[b+13|0]=e>>>8;F[b+14|0]=e>>>16;F[b+15|0]=e>>>24;e=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);d=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=e;F[b+5|0]=e>>>8;F[b+6|0]=e>>>16;F[b+7|0]=e>>>24;k=Eb(g,f+28|0,f);if(F[f+11|0]<0){Wk(H[f>>2])}a=La(a+40|0,h,c,F[i+24|0],k);if(c){Wk(c)}e=0;if(a){break d}break b}e=0;if(!Na(a+40|0,i,h)){break b}}e=1}da=f+32|0;return e|0}Fa();X()}function md(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-48|0;da=j;H[a+68>>2]=f;o=a+112|0;xe(o);f=H[a+56>>2];e=H[f>>2];d=H[f+4>>2];H[j+40>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{d=d-e|0;if((d|0)<=0){break a}i=H[f>>2];if((i|0)!=H[f+4>>2]){p=a+60|0;d=d>>>2|0;q=d>>>0>1?d:1;r=c+4|0;while(1){nd(p,H[(n<<2)+i>>2],j+32|0);f=H[j+36>>2];k=f>>31;g=H[j+32>>2];h=g>>31;i=H[j+40>>2];d=i>>31;e=d^d+i;h=e+((k^f+k)+(h^g+h)|0)|0;d=0;l=h;d=e>>>0>h>>>0?1:d;b:{if(!(h|d)){m=H[a+108>>2];g=m;break b}m=H[a+108>>2];h=m;e=h>>31;f=Gl(Fl(h,e,f,f>>31),fa,l,d);k=f>>31;g=Gl(Fl(h,e,g,g>>31),fa,l,d);d=g>>31;d=(k^f+k)+(d^d+g)|0;i=(i|0)>=0?h-d|0:d-h|0}c:{if((g|0)>=0){h=f+m|0;k=i+m|0;break c}d:{if((f|0)<0){d=i>>31;h=d+i^d;break d}d=i>>31;h=H[a+100>>2]-(d+i^d)|0}if((i|0)<0){d=f>>31;k=d+f^d;break c}d=f>>31;k=H[a+100>>2]-(d+f^d)|0}d=H[a+100>>2];l=d;e=d;e:{if(!(h|k)){break e}if(!((d|0)!=(k|0)|h)){l=k;e=k;break e}if(!((d|0)!=(h|0)|k)){l=h;e=h;break e}if(!((k|0)<=(m|0)|h)){l=(m<<1)-k|0;e=0;break e}if(!((d|0)!=(h|0)|(k|0)>=(m|0))){l=(m<<1)-k|0;e=h;break e}if(!((d|0)!=(k|0)|(h|0)>=(m|0))){l=k;e=(m<<1)-h|0;break e}if(k){l=k;e=h;break e}l=0;e=h;if((e|0)<=(m|0)){break e}e=(m<<1)-h|0}H[j+28>>2]=l;H[j+24>>2]=e;H[j+40>>2]=0-i;H[j+36>>2]=0-f;H[j+32>>2]=0-g;f:{if((g|0)<=0){g=m-i|0;e=m-f|0;break f}e=f>>31;e=e+f^e;g=(i|0)>0?e:d-e|0;e=i>>31;e=e+i^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|g)){g=d;break g}if(!((d|0)!=(g|0)|e)){g=d;break g}f=(d|0)!=(e|0);if(!(g|f)){g=d;break g}if(!((g|0)<=(m|0)|e)){g=(m<<1)-g|0;d=0;break g}if(!((g|0)>=(m|0)|f)){g=(m<<1)-g|0;break g}if(!((d|0)!=(g|0)|(e|0)>=(m|0))){g=d;d=(m<<1)-e|0;break g}if(g){d=e;break g}g=0;if((e|0)<=(m|0)){d=e;break g}d=(m<<1)-e|0}H[j+20>>2]=g;H[j+16>>2]=d;i=H[a+8>>2];h:{if((i|0)<=0){break h}m=(n<<3)+b|0;h=0;e=j+24|0;while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];i:{if((g|0)>(d|0)){H[k+l>>2]=d;break i}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break i}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}}d=h<<2;e=d+(j+8|0)|0;f=H[d+m>>2]-H[d+k>>2]|0;H[e>>2]=f;d=H[a+28>>2];j:{if((f|0)<(d|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break j}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}h=0;e=j+16|0;if((i|0)<=0){break h}while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];k:{if((g|0)>(d|0)){H[k+l>>2]=d;break k}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break k}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}d=H[a+28>>2]}f=h<<2;e=f+j|0;f=H[f+m>>2]-H[f+k>>2]|0;H[e>>2]=f;l:{if((d|0)>(f|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break l}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}}f=H[j+8>>2];e=H[a+108>>2];m:{if((f|0)>(e|0)){f=f-H[a+96>>2]|0;break m}if((0-e|0)<=(f|0)){break m}f=H[a+96>>2]+f|0}H[j+8>>2]=f;i=H[j+12>>2];n:{if((e|0)<(i|0)){i=i-H[a+96>>2]|0;break n}if((0-e|0)<=(i|0)){break n}i=H[a+96>>2]+i|0}H[j+12>>2]=i;d=H[j>>2];o:{if((e|0)<(d|0)){d=d-H[a+96>>2]|0;break o}if((0-e|0)<=(d|0)){break o}d=H[a+96>>2]+d|0}l=n<<1;H[j>>2]=d;g=H[j+4>>2];p:{if((e|0)<(g|0)){g=g-H[a+96>>2]|0;break p}if((0-e|0)<=(g|0)){break p}g=H[a+96>>2]+g|0}H[j+4>>2]=g;e=i>>31;h=e+i^e;e=f>>31;e=e+f^e;k=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;e=g>>31;h=e+g^e;e=d>>31;e=e+d^e;e=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;ye(o,k>>>0>=e>>>0);h=l<<2;e=e>>>0>k>>>0;d=e?f:d;H[h+c>>2]=(H[a+96>>2]&d>>31)+d;d=e?i:g;H[h+r>>2]=(H[a+96>>2]&d>>31)+d;n=n+1|0;if((q|0)==(n|0)){break a}d=H[a+56>>2];i=H[d>>2];if(H[d+4>>2]-i>>2>>>0>n>>>0){continue}break}}Sc();X()}da=j+48|0;return 1}function Ad(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-48|0;da=j;H[a+68>>2]=f;o=a+112|0;xe(o);f=H[a+56>>2];e=H[f>>2];d=H[f+4>>2];H[j+40>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{d=d-e|0;if((d|0)<=0){break a}i=H[f>>2];if((i|0)!=H[f+4>>2]){p=a+60|0;d=d>>>2|0;q=d>>>0>1?d:1;r=c+4|0;while(1){Bd(p,H[(n<<2)+i>>2],j+32|0);f=H[j+36>>2];k=f>>31;g=H[j+32>>2];h=g>>31;i=H[j+40>>2];d=i>>31;e=d^d+i;h=e+((k^f+k)+(h^g+h)|0)|0;d=0;l=h;d=e>>>0>h>>>0?1:d;b:{if(!(h|d)){m=H[a+108>>2];g=m;break b}m=H[a+108>>2];h=m;e=h>>31;f=Gl(Fl(h,e,f,f>>31),fa,l,d);k=f>>31;g=Gl(Fl(h,e,g,g>>31),fa,l,d);d=g>>31;d=(k^f+k)+(d^d+g)|0;i=(i|0)>=0?h-d|0:d-h|0}c:{if((g|0)>=0){h=f+m|0;k=i+m|0;break c}d:{if((f|0)<0){d=i>>31;h=d+i^d;break d}d=i>>31;h=H[a+100>>2]-(d+i^d)|0}if((i|0)<0){d=f>>31;k=d+f^d;break c}d=f>>31;k=H[a+100>>2]-(d+f^d)|0}d=H[a+100>>2];l=d;e=d;e:{if(!(h|k)){break e}if(!((d|0)!=(k|0)|h)){l=k;e=k;break e}if(!((d|0)!=(h|0)|k)){l=h;e=h;break e}if(!((k|0)<=(m|0)|h)){l=(m<<1)-k|0;e=0;break e}if(!((d|0)!=(h|0)|(k|0)>=(m|0))){l=(m<<1)-k|0;e=h;break e}if(!((d|0)!=(k|0)|(h|0)>=(m|0))){l=k;e=(m<<1)-h|0;break e}if(k){l=k;e=h;break e}l=0;e=h;if((e|0)<=(m|0)){break e}e=(m<<1)-h|0}H[j+28>>2]=l;H[j+24>>2]=e;H[j+40>>2]=0-i;H[j+36>>2]=0-f;H[j+32>>2]=0-g;f:{if((g|0)<=0){g=m-i|0;e=m-f|0;break f}e=f>>31;e=e+f^e;g=(i|0)>0?e:d-e|0;e=i>>31;e=e+i^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|g)){g=d;break g}if(!((d|0)!=(g|0)|e)){g=d;break g}f=(d|0)!=(e|0);if(!(g|f)){g=d;break g}if(!((g|0)<=(m|0)|e)){g=(m<<1)-g|0;d=0;break g}if(!((g|0)>=(m|0)|f)){g=(m<<1)-g|0;break g}if(!((d|0)!=(g|0)|(e|0)>=(m|0))){g=d;d=(m<<1)-e|0;break g}if(g){d=e;break g}g=0;if((e|0)<=(m|0)){d=e;break g}d=(m<<1)-e|0}H[j+20>>2]=g;H[j+16>>2]=d;i=H[a+8>>2];h:{if((i|0)<=0){break h}m=(n<<3)+b|0;h=0;e=j+24|0;while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];i:{if((g|0)>(d|0)){H[k+l>>2]=d;break i}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break i}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}}d=h<<2;e=d+(j+8|0)|0;f=H[d+m>>2]-H[d+k>>2]|0;H[e>>2]=f;d=H[a+28>>2];j:{if((f|0)<(d|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break j}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}h=0;e=j+16|0;if((i|0)<=0){break h}while(1){k=H[a+32>>2];f=0;if((i|0)>0){while(1){l=f<<2;g=H[l+e>>2];d=H[a+16>>2];k:{if((g|0)>(d|0)){H[k+l>>2]=d;break k}l=k+l|0;d=H[a+12>>2];if((d|0)>(g|0)){H[l>>2]=d;break k}H[l>>2]=g}f=f+1|0;i=H[a+8>>2];if((f|0)<(i|0)){continue}break}d=H[a+28>>2]}f=h<<2;e=f+j|0;f=H[f+m>>2]-H[f+k>>2]|0;H[e>>2]=f;l:{if((d|0)>(f|0)){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break l}f=f-H[a+20>>2]|0}H[e>>2]=f}e=k;h=h+1|0;if((h|0)<(i|0)){continue}break}}f=H[j+8>>2];e=H[a+108>>2];m:{if((f|0)>(e|0)){f=f-H[a+96>>2]|0;break m}if((0-e|0)<=(f|0)){break m}f=H[a+96>>2]+f|0}H[j+8>>2]=f;i=H[j+12>>2];n:{if((e|0)<(i|0)){i=i-H[a+96>>2]|0;break n}if((0-e|0)<=(i|0)){break n}i=H[a+96>>2]+i|0}H[j+12>>2]=i;d=H[j>>2];o:{if((e|0)<(d|0)){d=d-H[a+96>>2]|0;break o}if((0-e|0)<=(d|0)){break o}d=H[a+96>>2]+d|0}l=n<<1;H[j>>2]=d;g=H[j+4>>2];p:{if((e|0)<(g|0)){g=g-H[a+96>>2]|0;break p}if((0-e|0)<=(g|0)){break p}g=H[a+96>>2]+g|0}H[j+4>>2]=g;e=i>>31;h=e+i^e;e=f>>31;e=e+f^e;k=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;e=g>>31;h=e+g^e;e=d>>31;e=e+d^e;e=e>>>0>(h^2147483647)>>>0?2147483647:h+e|0;ye(o,k>>>0>=e>>>0);h=l<<2;e=e>>>0>k>>>0;d=e?f:d;H[h+c>>2]=(H[a+96>>2]&d>>31)+d;d=e?i:g;H[h+r>>2]=(H[a+96>>2]&d>>31)+d;n=n+1|0;if((q|0)==(n|0)){break a}d=H[a+56>>2];i=H[d>>2];if(H[d+4>>2]-i>>2>>>0>n>>>0){continue}break}}Sc();X()}da=j+48|0;return 1}function dh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=da-32|0;da=i;c=H[a+16>>2];H[a+20>>2]=c;a:{b:{c:{d:{if((c|0)!=H[a+24>>2]){H[c>>2]=b;b=c+4|0;H[a+20>>2]=b;d=c;break d}d=$k(4);H[d>>2]=b;b=d+4|0;H[a+24>>2]=b;H[a+20>>2]=b;H[a+16>>2]=d;if(c){break c}}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0;break b}Wk(c);b=H[a+20>>2];d=H[a+16>>2];if((b|0)==(d|0)){break a}c=H[a+8>>2];c=H[c+100>>2]-H[c+96>>2]|0}if((c|0)<=0){f=H[a+28>>2];while(1){c=b-4|0;h=H[c>>2];e:{if((h|0)!=-1){h=(h>>>0)/3|0;if(!(H[f+(h>>>3&268435452)>>2]>>>h&1)){break e}}H[a+20>>2]=c;b=c}if((b|0)!=(d|0)){continue}break}break a}q=a+120|0;h=a+200|0;c=(c|0)/12|0;r=(c|0)>1?c:1;f:{g:{h:{while(1){i:{j:{k:{c=b-4|0;b=H[c>>2];if((b|0)==-1){break k}e=H[a+28>>2];d=(b>>>0)/3|0;if(H[e+(d>>>3&268435452)>>2]>>>d&1){break k}l=0;while(1){H[a+164>>2]=H[a+164>>2]+1;g=(b>>>0)/3|0;k=(b|0)==-1;m=k?-1:g;c=(m>>>3&536870908)+e|0;H[c>>2]=H[c>>2]|1<>2];l:{if((c|0)!=H[a+80>>2]){H[c>>2]=b;H[a+76>>2]=c+4;break l}f=H[a+72>>2];d=c-f|0;j=d>>2;c=j+1|0;if(c>>>0>1073741823){break i}e=d>>1;e=d>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>1073741823){break h}c=$k(e<<2)}else{c=0}j=c+(j<<2)|0;H[j>>2]=b;if((d|0)>0){ek(c,f,d)}H[a+80>>2]=c+(e<<2);H[a+76>>2]=j+4;H[a+72>>2]=c;if(!f){break l}Wk(f)}H[a+320>>2]=b;c=-1;c=(b|0)!=-1?H[H[H[a+12>>2]>>2]+(b<<2)>>2]:c;n=c<<2;j=H[n+H[a+152>>2]>>2];m:{n:{d=H[a+84>>2]+(c>>>3&536870908)|0;f=H[d>>2];c=1<>2]=c|f;if((j|0)==-1){break n}}o:{if(k){break o}c=-1;d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;if((e|0)!=-1){c=H[H[H[a+12>>2]+12>>2]+(e<<2)>>2]}p:{q:{k=b-N(g,3)|0;r:{if(k){d=b-1|0;break r}d=b+2|0;if((d|0)==-1){break q}}g=(c|0)==-1?-1:(c>>>0)/3|0;d=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2];f=(d|0)==-1?-1:(d>>>0)/3|0;break p}g=(c|0)==-1?-1:(c>>>0)/3|0;d=-1;f=-1}s:{if((e|0)==-1){break s}o=H[H[a+12>>2]+12>>2];e=H[o+(e<<2)>>2];if((e|0)==-1){break s}p=H[a+28>>2];e=(e>>>0)/3|0;if(H[p+(e>>>3&268435452)>>2]>>>e&1){break s}t:{u:{if(k){e=b-1|0;break u}e=b+2|0;if((e|0)==-1){break t}}e=H[(e<<2)+o>>2];if((e|0)==-1){break t}e=(e>>>0)/3|0;if(H[(e>>>3&268435452)+p>>2]>>>e&1){break t}eh(h,1);H[a+168>>2]=H[a+168>>2]+1;v:{if((j|0)==-1){break v}f=H[H[a+152>>2]+n>>2];if(H[H[a+140>>2]+(f>>>3&536870908)>>2]>>>f&1){break v}Sg(a,b,0)}b=H[a+164>>2];H[i+4>>2]=m;f=i+4|0;H[i+16>>2]=f;Yg(i+24|0,q,f,i+16|0);H[H[i+24>>2]+12>>2]=b;b=H[a+20>>2];H[b-4>>2]=d;if((b|0)!=H[a+24>>2]){H[b>>2]=c;H[a+20>>2]=b+4;break j}f=H[a+16>>2];d=b-f|0;g=d>>2;b=g+1|0;if(b>>>0>1073741823){break g}e=d>>1;e=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>1073741823){break f}b=$k(e<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;if((d|0)>0){ek(b,f,d)}H[a+24>>2]=b+(e<<2);H[a+20>>2]=g+4;H[a+16>>2]=b;if(!f){break j}Wk(f);break j}if((f|0)!=-1){Zg(a,H[a+164>>2],0,f)}eh(h,3);break m}if((g|0)!=-1){Zg(a,H[a+164>>2],1,g)}w:{x:{if(k){b=b-1|0;break x}b=b+2|0;if((b|0)==-1){break w}}b=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break w}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break w}eh(h,5);c=d;break m}if((f|0)==-1){break o}Zg(a,H[a+164>>2],0,f)}eh(h,7);H[a+20>>2]=H[a+20>>2]-4;break j}eh(h,0);c=-1;if((b|0)==-1){break m}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break m}c=H[H[H[a+12>>2]+12>>2]+(b<<2)>>2]}l=l+1|0;if((r|0)==(l|0)){break j}e=H[a+28>>2];b=c;continue}}H[a+20>>2]=c}b=H[a+20>>2];if((b|0)!=H[a+16>>2]){continue}break a}break}Fa();X()}Ua(1604);X()}Fa();X()}Ua(1604);X()}da=i+32|0;return 1}function Ja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;if(H[c>>2]==H[c+4>>2]){g=H[d+80>>2];v=da-16|0;da=v;j=H[a+4>>2];h=H[d+48>>2];d=H[H[d>>2]>>2];i=F[b+24|0];c=v+8|0;H[c>>2]=1065353216;u=c;L[c>>2]=O(-1<>2];w=$k((i|0)!=(i&1073741823)?-1:i<<2);a:{if(!g|(i|0)<=0){break a}s=d+h|0;y=H[b>>2];c=H[b+48>>2];z=H[b+44>>2];x=H[b+40>>2];if(!I[b+84|0]){n=H[b+68>>2];t=i&-2;j=i&1;b=0;while(1){f=H[y>>2];d=Fl(x,z,H[n+(o<<2)>>2],0)+c|0;p=ek(w,f+d|0,x);k=L[u>>2];l=H[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){f=s+(b<<2)|0;q=d<<2;e=O(T(O(O(k*O(L[q+p>>2]-L[l+q>>2]))+O(.5))));b:{if(O(P(e))>2]=h;h=q|4;e=O(T(O(O(k*O(L[h+p>>2]-L[l+h>>2]))+O(.5))));c:{if(O(P(e))>2]=h;d=d+2|0;b=b+2|0;m=m+2|0;if((t|0)!=(m|0)){continue}break}}if(j){f=s+(b<<2)|0;d=d<<2;e=O(T(O(O(k*O(L[d+p>>2]-L[d+l>>2]))+O(.5))));d:{if(O(P(e))>2]=d;b=b+1|0}o=o+1|0;if((g|0)!=(o|0)){continue}break}break a}n=i&-2;t=i&1;b=0;while(1){h=H[y>>2];d=Fl(x,z,o,f)+c|0;p=ek(w,h+d|0,x);k=L[u>>2];l=H[a+8>>2];d=0;m=0;if((i|0)!=1){while(1){h=s+(b<<2)|0;q=d<<2;e=O(T(O(O(k*O(L[q+p>>2]-L[l+q>>2]))+O(.5))));e:{if(O(P(e))>2]=j;j=q|4;e=O(T(O(O(k*O(L[j+p>>2]-L[l+j>>2]))+O(.5))));f:{if(O(P(e))>2]=j;d=d+2|0;b=b+2|0;m=m+2|0;if((n|0)!=(m|0)){continue}break}}if(t){h=s+(b<<2)|0;d=d<<2;e=O(T(O(O(k*O(L[d+p>>2]-L[d+l>>2]))+O(.5))));g:{if(O(P(e))>2]=d;b=b+1|0}d=o+1|0;f=d?f:f+1|0;o=d;if((g|0)!=(d|0)|f){continue}break}}Wk(w);da=v+16|0;return 1}v=da-16|0;da=v;u=H[a+4>>2];g=H[d+48>>2];f=H[H[d>>2]>>2];r=F[b+24|0];d=v+8|0;H[d>>2]=1065353216;h=d;L[d>>2]=O(-1<>2];w=$k((r|0)!=(r&1073741823)?-1:r<<2);y=H[c>>2];c=H[c+4>>2]-y|0;h:{if(!c|(r|0)<=0){break h}s=f+g|0;z=H[b>>2];d=H[b+48>>2];x=H[b+44>>2];o=H[b+40>>2];c=c>>2;q=c>>>0>1?c:1;if(I[b+84|0]){j=r&-2;u=r&1;b=0;while(1){f=H[z>>2];c=Fl(o,x,H[y+(m<<2)>>2],0)+d|0;l=ek(w,f+c|0,o);k=L[h>>2];n=H[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;t=c<<2;e=O(T(O(O(k*O(L[t+l>>2]-L[n+t>>2]))+O(.5))));i:{if(O(P(e))>2]=g;g=t|4;e=O(T(O(O(k*O(L[g+l>>2]-L[n+g>>2]))+O(.5))));j:{if(O(P(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=O(T(O(O(k*O(L[c+l>>2]-L[c+n>>2]))+O(.5))));k:{if(O(P(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}break h}t=H[b+68>>2];j=r&-2;u=r&1;b=0;while(1){f=H[z>>2];c=Fl(o,x,H[t+(H[y+(m<<2)>>2]<<2)>>2],0)+d|0;p=ek(w,f+c|0,o);k=L[h>>2];l=H[a+8>>2];c=0;i=0;if((r|0)!=1){while(1){f=s+(b<<2)|0;n=c<<2;e=O(T(O(O(k*O(L[n+p>>2]-L[l+n>>2]))+O(.5))));l:{if(O(P(e))>2]=g;g=n|4;e=O(T(O(O(k*O(L[g+p>>2]-L[l+g>>2]))+O(.5))));m:{if(O(P(e))>2]=g;c=c+2|0;b=b+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(u){f=s+(b<<2)|0;c=c<<2;e=O(T(O(O(k*O(L[c+p>>2]-L[c+l>>2]))+O(.5))));n:{if(O(P(e))>2]=c;b=b+1|0}m=m+1|0;if((q|0)!=(m|0)){continue}break}}Wk(w);da=v+16|0;return 1}function qd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;H[a+8>>2]=e;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ha(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){d=g;break c}q=1;f=d-1|0;i=f&1;d:{if((d|0)==2){d=g;break d}p=f&-2;f=0;d=g;while(1){h=(q<<2)+b|0;j=H[h+4>>2];k=H[h>>2];o=(k|0)<(d|0);d=o?k:d;h=(d|0)>(j|0);d=h?j:d;g=o?g:(g|0)<(k|0)?k:g;g=h?g:(g|0)<(j|0)?j:g;q=q+2|0;f=f+2|0;if((p|0)!=(f|0)){continue}break}}if(!i){break c}h=H[(q<<2)+b>>2];f=(h|0)<(d|0);d=f?h:d;g=f?g:(g|0)<(h|0)?h:g}H[a+16>>2]=g;H[a+12>>2]=d;f=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;d=g-d|0;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}d=(e&1073741823)!=(e|0)?-1:e<<2;h=gk($k(d),0,d);d=H[a+56>>2];r=H[d>>2];d=H[d+4>>2]-r|0;if((d|0)>=5){t=H[a+52>>2];s=H[a+48>>2];u=e&-2;v=e&1;q=d>>2;o=q;while(1){p=o;e:{f:{o=o-1|0;if(q>>>0>o>>>0){l=N(e,o);d=H[(o<<2)+r>>2];if((d|0)==-1){break f}m=H[H[s+12>>2]+(d<<2)>>2];if((m|0)==-1){break f}f=-1;k=H[t>>2];j=H[s>>2];g=k+(H[j+(m<<2)>>2]<<2)|0;d=m+1|0;d=(d>>>0)%3|0?d:m-2|0;if((d|0)!=-1){f=H[j+(d<<2)>>2]}i=H[g>>2];g:{h:{if((m>>>0)%3|0){g=m-1|0;break h}g=m+2|0;d=-1;if((g|0)==-1){break g}}d=H[j+(g<<2)>>2]}if((i|0)>=(o|0)){break f}f=H[k+(f<<2)>>2];if((f|0)>=(o|0)){break f}d=H[k+(d<<2)>>2];if((d|0)>=(o|0)){break f}i:{if((e|0)<=0){break i}j=N(d,e);k=N(e,f);i=N(e,i);g=0;f=0;if((e|0)!=1){while(1){H[h+(g<<2)>>2]=(H[(g+j<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+i<<2)+b>>2];d=g|1;H[h+(d<<2)>>2]=(H[(d+j<<2)+b>>2]+H[(d+k<<2)+b>>2]|0)-H[(d+i<<2)+b>>2];g=g+2|0;f=f+2|0;if((u|0)!=(f|0)){continue}break}}if(!v){break i}H[h+(g<<2)>>2]=(H[(g+j<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+i<<2)+b>>2]}d=H[a+8>>2];if((d|0)<=0){break e}f=l<<2;j=f+c|0;k=b+f|0;n=0;f=h;while(1){i=H[a+32>>2];g=0;if((d|0)>0){while(1){l=g<<2;m=H[l+f>>2];d=H[a+16>>2];j:{if((m|0)>(d|0)){H[i+l>>2]=d;break j}l=i+l|0;d=H[a+12>>2];if((d|0)>(m|0)){H[l>>2]=d;break j}H[l>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+j|0;f=H[f+k>>2]-H[f+i>>2]|0;H[d>>2]=f;k:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break k}f=f-H[a+20>>2]|0}H[d>>2]=f}f=i;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}break e}Sc();X()}d=H[a+8>>2];if((d|0)<=0){break e}f=l<<2;j=f+c|0;k=b+f|0;f=(N(p-2|0,e)<<2)+b|0;n=0;while(1){i=H[a+32>>2];g=0;if((d|0)>0){while(1){l=g<<2;m=H[l+f>>2];d=H[a+16>>2];l:{if((m|0)>(d|0)){H[i+l>>2]=d;break l}l=i+l|0;d=H[a+12>>2];if((d|0)>(m|0)){H[l>>2]=d;break l}H[l>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+j|0;f=H[f+k>>2]-H[f+i>>2]|0;H[d>>2]=f;m:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break m}f=f-H[a+20>>2]|0}H[d>>2]=f}f=i;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}}if((p|0)>2){continue}break}}if((e|0)>0){gk(h,0,e<<2)}d=H[a+8>>2];if((d|0)>0){n=0;f=h;while(1){e=H[a+32>>2];g=0;if((d|0)>0){while(1){p=g<<2;i=H[p+f>>2];d=H[a+16>>2];n:{if((i|0)>(d|0)){H[e+p>>2]=d;break n}p=e+p|0;d=H[a+12>>2];if((d|0)>(i|0)){H[p>>2]=d;break n}H[p>>2]=i}g=g+1|0;if((g|0)>2]){continue}break}}f=n<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;o:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break o}f=f-H[a+20>>2]|0}H[d>>2]=f}f=e;d=H[a+8>>2];n=n+1|0;if((d|0)>(n|0)){continue}break}}Wk(h);return 1}function Rc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;H[a+8>>2]=e;g=a+32|0;f=H[g>>2];i=H[a+36>>2]-f>>2;a:{if(i>>>0>>0){Ha(g,e-i|0);break a}if(e>>>0>=i>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){d=g;break c}p=1;f=d-1|0;h=f&1;d:{if((d|0)==2){d=g;break d}n=f&-2;f=0;d=g;while(1){i=(p<<2)+b|0;o=H[i+4>>2];l=H[i>>2];m=(l|0)<(d|0);d=m?l:d;i=(d|0)>(o|0);d=i?o:d;g=m?g:(g|0)<(l|0)?l:g;g=i?g:(g|0)<(o|0)?o:g;p=p+2|0;f=f+2|0;if((n|0)!=(f|0)){continue}break}}if(!h){break c}i=H[(p<<2)+b>>2];f=(i|0)<(d|0);d=f?i:d;g=f?g:(g|0)<(i|0)?i:g}H[a+16>>2]=g;H[a+12>>2]=d;f=(g>>31)-((d>>31)+(d>>>0>g>>>0)|0)|0;d=g-d|0;if(!f&d>>>0>2147483646|f){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}d=(e&1073741823)!=(e|0)?-1:e<<2;i=gk($k(d),0,d);d=H[a+56>>2];s=H[d>>2];d=H[d+4>>2]-s|0;if((d|0)>=5){t=H[a+52>>2];r=H[a+48>>2];u=e&-2;v=e&1;p=d>>2;m=p;while(1){n=m;e:{f:{m=m-1|0;if(p>>>0>m>>>0){o=N(e,m);d=H[(m<<2)+s>>2];if((d|0)==-1|H[H[r>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}j=H[H[H[r+64>>2]+12>>2]+(d<<2)>>2];if((j|0)==-1){break f}h=H[t>>2];l=H[r+28>>2];g=H[h+(H[l+(j<<2)>>2]<<2)>>2];if((g|0)>=(m|0)){break f}d=j+1|0;f=H[h+(H[l+(((d>>>0)%3|0?d:j-2|0)<<2)>>2]<<2)>>2];if((f|0)>=(m|0)){break f}d=H[h+(H[l+(j+((j>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(m|0)){break f}g:{if((e|0)<=0){break g}l=N(d,e);h=N(e,f);f=N(e,g);g=0;k=0;if((e|0)!=1){while(1){H[i+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+h<<2)+b>>2]|0)-H[(f+g<<2)+b>>2];d=g|1;H[i+(d<<2)>>2]=(H[(d+l<<2)+b>>2]+H[(d+h<<2)+b>>2]|0)-H[(d+f<<2)+b>>2];g=g+2|0;k=k+2|0;if((u|0)!=(k|0)){continue}break}}if(!v){break g}H[i+(g<<2)>>2]=(H[(g+l<<2)+b>>2]+H[(g+h<<2)+b>>2]|0)-H[(f+g<<2)+b>>2]}d=H[a+8>>2];if((d|0)<=0){break e}f=o<<2;o=f+c|0;l=b+f|0;k=0;f=i;while(1){h=H[a+32>>2];g=0;if((d|0)>0){while(1){j=g<<2;q=H[j+f>>2];d=H[a+16>>2];h:{if((q|0)>(d|0)){H[h+j>>2]=d;break h}j=h+j|0;d=H[a+12>>2];if((d|0)>(q|0)){H[j>>2]=d;break h}H[j>>2]=q}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+o|0;f=H[f+l>>2]-H[f+h>>2]|0;H[d>>2]=f;i:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break i}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}break e}Sc();X()}d=H[a+8>>2];if((d|0)<=0){break e}f=o<<2;o=f+c|0;l=b+f|0;f=(N(n-2|0,e)<<2)+b|0;k=0;while(1){h=H[a+32>>2];g=0;if((d|0)>0){while(1){j=g<<2;q=H[j+f>>2];d=H[a+16>>2];j:{if((q|0)>(d|0)){H[h+j>>2]=d;break j}j=h+j|0;d=H[a+12>>2];if((d|0)>(q|0)){H[j>>2]=d;break j}H[j>>2]=q}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+o|0;f=H[f+l>>2]-H[f+h>>2]|0;H[d>>2]=f;k:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break k}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}}if((n|0)>2){continue}break}}if((e|0)>0){gk(i,0,e<<2)}d=H[a+8>>2];if((d|0)>0){k=0;f=i;while(1){e=H[a+32>>2];g=0;if((d|0)>0){while(1){n=g<<2;h=H[n+f>>2];d=H[a+16>>2];l:{if((h|0)>(d|0)){H[e+n>>2]=d;break l}n=e+n|0;d=H[a+12>>2];if((d|0)>(h|0)){H[n>>2]=d;break l}H[n>>2]=h}g=g+1|0;if((g|0)>2]){continue}break}}f=k<<2;d=f+c|0;f=H[b+f>>2]-H[e+f>>2]|0;H[d>>2]=f;m:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break m}f=f-H[a+20>>2]|0}H[d>>2]=f}f=e;d=H[a+8>>2];k=k+1|0;if((d|0)>(k|0)){continue}break}}Wk(i);return 1}function Ee(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=da-16|0;da=k;a:{if(!H[a+8>>2]){break a}e=H[a>>2];H[a>>2]=a+4;H[H[a+4>>2]+8>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;f=H[e+4>>2];e=f?f:e;if(!e){Hc(a,e);break a}g=H[e+8>>2];b:{if(!g){break b}f=H[g>>2];if((f|0)==(e|0)){H[g>>2]=0;f=H[g+4>>2];if(!f){d=g;break b}while(1){d=f;f=H[d>>2];if(f){continue}f=H[d+4>>2];if(f){continue}break}break b}H[g+4>>2]=0;if(!f){d=g;break b}while(1){d=f;f=H[d>>2];if(f){continue}f=H[d+4>>2];if(f){continue}break}}c:{if((b|0)==(c|0)){g=e;break c}f=b;while(1){g=d;H[k+12>>2]=e+28;H[k+8>>2]=e+16;h=f+16|0;i=H[k+8>>2];d:{if((h|0)==(i|0)){break d}d=I[h+11|0];b=d<<24>>24;if(F[i+11|0]>=0){if((b|0)>=0){b=H[h+4>>2];H[i>>2]=H[h>>2];H[i+4>>2]=b;H[i+8>>2]=H[h+8>>2];break d}hl(i,H[h>>2],H[h+4>>2]);break d}b=(b|0)<0;gl(i,b?H[h>>2]:h,b?H[h+4>>2]:d)}j=H[k+12>>2];i=h+12|0;if((j|0)!=(i|0)){e:{d=I[i+11|0];b=d<<24>>24;if(F[j+11|0]>=0){if((b|0)>=0){b=H[i+4>>2];H[j>>2]=H[i>>2];H[j+4>>2]=b;H[j+8>>2]=H[i+8>>2];break e}hl(j,H[h+12>>2],H[h+16>>2]);break e}b=(b|0)<0;gl(j,b?H[h+12>>2]:i,b?H[h+16>>2]:d)}}b=H[a+4>>2];f:{g:{if(b){d=I[e+27|0];i=d<<24>>24<0;m=i?H[e+20>>2]:d;j=i?H[e+16>>2]:e+16|0;while(1){d=I[b+27|0];l=d<<24>>24<0;h:{i:{j:{k:{h=l?H[b+20>>2]:d;i=h>>>0>>0?h:m;if(i){d=b+16|0;d=ik(j,l?H[d>>2]:d,i);if(d){break k}}if(h>>>0>m>>>0){break j}break i}if((d|0)>=0){break i}}d=H[b>>2];if(!d){break g}break h}d=H[b+4>>2];if(d){break h}d=b+4|0;break f}b=d;continue}}b=a+4|0}d=b}H[e+8>>2]=b;H[e>>2]=0;H[e+4>>2]=0;H[d>>2]=e;b=H[H[a>>2]>>2];if(b){H[a>>2]=b;e=H[d>>2]}Qe(H[a+4>>2],e);H[a+8>>2]=H[a+8>>2]+1;d=0;l:{if(!g){break l}e=H[g+8>>2];if(!e){break l}b=H[e>>2];if((g|0)==(b|0)){H[e>>2]=0;b=H[e+4>>2];if(!b){d=e;break l}while(1){d=b;b=H[b>>2];if(b){continue}b=H[d+4>>2];if(b){continue}break}break l}H[e+4>>2]=0;if(!b){d=e;break l}while(1){d=b;b=H[b>>2];if(b){continue}b=H[d+4>>2];if(b){continue}break}}e=H[f+4>>2];m:{if(!e){b=H[f+8>>2];if(H[b>>2]==(f|0)){break m}f=f+8|0;while(1){e=H[f>>2];f=e+8|0;b=H[e+8>>2];if((e|0)!=H[b>>2]){continue}break}break m}while(1){b=e;e=H[b>>2];if(e){continue}break}}if(!g){break c}e=g;f=b;if((b|0)!=(c|0)){continue}break}}Hc(a,g);if(!d){break a}while(1){f=H[d+8>>2];if(f){d=f;continue}break}Hc(a,d)}if((b|0)!=(c|0)){while(1){e=$k(40);g=e+16|0;f=b;n:{if(F[b+27|0]>=0){d=H[b+20>>2];H[g>>2]=H[b+16>>2];H[g+4>>2]=d;H[g+8>>2]=H[b+24>>2];break n}el(g,H[b+16>>2],H[b+20>>2])}g=e+28|0;o:{if(F[b+39|0]>=0){d=H[b+32>>2];H[g>>2]=H[b+28>>2];H[g+4>>2]=d;H[g+8>>2]=H[b+36>>2];break o}el(g,H[b+28>>2],H[b+32>>2])}b=H[a+4>>2];p:{q:{if(b){d=I[e+27|0];g=d<<24>>24<0;l=g?H[e+20>>2]:d;i=g?H[e+16>>2]:e+16|0;while(1){d=I[b+27|0];h=d<<24>>24<0;r:{s:{t:{u:{j=h?H[b+20>>2]:d;g=j>>>0>>0?j:l;if(g){d=b+16|0;d=ik(i,h?H[d>>2]:d,g);if(d){break u}}if(j>>>0>l>>>0){break t}break s}if((d|0)>=0){break s}}d=H[b>>2];if(!d){break q}break r}d=H[b+4>>2];if(d){break r}d=b+4|0;break p}b=d;continue}}b=a+4|0}d=b}H[e+8>>2]=b;H[e>>2]=0;H[e+4>>2]=0;H[d>>2]=e;b=H[H[a>>2]>>2];if(b){H[a>>2]=b;e=H[d>>2]}Qe(H[a+4>>2],e);H[a+8>>2]=H[a+8>>2]+1;e=H[f+4>>2];v:{if(!e){b=H[f+8>>2];if((f|0)==H[b>>2]){break v}d=f+8|0;while(1){f=H[d>>2];d=f+8|0;b=H[f+8>>2];if((f|0)!=H[b>>2]){continue}break}break v}while(1){b=e;e=H[b>>2];if(e){continue}break}}if((b|0)!=(c|0)){continue}break}}da=k+16|0}function Ek(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=da-112|0;da=j;k=i&2147483647;l=e&2147483647;m=l;a:{b:{n=!(b|c);if(!(d|l?l-2147418112>>>0<2147549184:n)){p=k-2147418112|0;if(!h&(p|0)==-2147418112?f|g:(p|0)==-2147418112&(h|0)!=0|p>>>0>2147549184){break b}}if(!(!d&(m|0)==2147418112?n:m>>>0<2147418112)){h=d;i=e|32768;f=b;g=c;break a}if(!(!h&(k|0)==2147418112?!(f|g):k>>>0<2147418112)){i=i|32768;break a}if(!(b|d|(m^2147418112|c))){m=d;d=!(b^f|d^h|(c^g|e^i^-2147483648));h=d?0:m;i=d?2147450880:e;f=d?0:b;g=d?0:c;break a}if(!(f|h|(k^2147418112|g))){break a}if(!(b|d|(c|m))){if(f|h|(g|k)){break a}f=b&f;g=c&g;h=d&h;i=e&i;break a}if(f|h|(g|k)){break b}f=b;g=c;h=d;i=e;break a}l=(k|0)==(m|0);q=l&(d|0)==(h|0)?(c|0)==(g|0)&b>>>0>>0|c>>>0>>0:l&d>>>0>>0|k>>>0>m>>>0;k=q;n=k?f:b;l=k?g:c;m=k?i:e;p=m;o=k?h:d;m=m&65535;e=k?e:i;r=e;h=k?d:h;d=e>>>16&32767;k=p>>>16&32767;if(!k){e=!(m|o);i=e<<6;k=Q(e?n:o)+32|0;e=Q(e?l:m);e=i+((e|0)==32?k:e)|0;Fk(j+96|0,n,l,o,m,e-15|0);o=H[j+104>>2];m=H[j+108>>2];n=H[j+96>>2];k=16-e|0;l=H[j+100>>2]}f=q?b:f;g=q?c:g;i=r&65535;if(!d){b=!(h|i);c=b<<6;d=Q(b?f:h)+32|0;b=Q(b?g:i);b=c+((b|0)==32?d:b)|0;Fk(j+80|0,f,g,h,i,b-15|0);h=H[j+88>>2];i=H[j+92>>2];f=H[j+80>>2];g=H[j+84>>2];d=16-b|0}c=h;b=i<<3|c>>>29;h=c<<3|g>>>29;i=b|524288;c=o;b=m<<3|c>>>29;e=c<<3|l>>>29;m=b;o=p^r;c=f;b=g<<3|c>>>29;c=c<<3;d=k-d|0;c:{if(!d){break c}if(d>>>0>127){h=0;i=0;b=0;c=1;break c}Fk(j- -64|0,c,b,h,i,128-d|0);Mk(j+48|0,c,b,h,i,d);h=H[j+56>>2];i=H[j+60>>2];b=H[j+52>>2];c=H[j+48>>2]|(H[j+64>>2]|H[j+72>>2]|(H[j+68>>2]|H[j+76>>2]))!=0}f=b;m=m|524288;d=n;b=l<<3|d>>>29;d=d<<3;d:{if((o|0)<0){n=d-c|0;g=h;o=e-h|0;q=(b|0)==(f|0)&c>>>0>d>>>0|b>>>0>>0;h=o-q|0;l=b-((c>>>0>d>>>0)+f|0)|0;i=(m-((e>>>0>>0)+i|0)|0)-(o>>>0>>0)|0;if(!(n|h|(l|i))){f=0;g=0;h=0;i=0;break a}if(i>>>0>524287){break d}b=!(h|i);c=b<<6;d=Q(b?n:h)+32|0;b=Q(b?l:i);b=c+((b|0)==32?d:b)|0;b=b-12|0;Fk(j+32|0,n,l,h,i,b);k=k-b|0;h=H[j+40>>2];i=H[j+44>>2];n=H[j+32>>2];l=H[j+36>>2];break d}b=b+f|0;g=c+d|0;b=g>>>0>>0?b+1|0:b;n=g;d=g;l=b;f=(f|0)==(b|0)&c>>>0>d>>>0|b>>>0>>0;b=i+m|0;c=e+h|0;b=c>>>0>>0?b+1|0:b;d=c;c=f+c|0;h=c;i=c>>>0>>0?b+1|0:b;if(!(i&1048576)){break d}n=n&1|((l&1)<<31|n>>>1);c=h;l=c<<31|l>>>1;k=k+1|0;h=(i&1)<<31|c>>>1;i=i>>>1|0}d=0;m=p&-2147483648;if((k|0)>=32767){h=d;i=m|2147418112;f=0;g=0;break a}c=0;e:{if((k|0)>0){c=k;break e}Fk(j+16|0,n,l,h,i,k+127|0);Mk(j,n,l,h,i,1-k|0);n=H[j>>2]|(H[j+16>>2]|H[j+24>>2]|(H[j+20>>2]|H[j+28>>2]))!=0;l=H[j+4>>2];h=H[j+8>>2];i=H[j+12>>2]}e=h<<29;b=l>>>3|0;k=(l&7)<<29|n>>>3;l=n&7;g=l>>>0>4;f=k+g|0;e=b|e;b=e;b=f>>>0>>0?b+1|0:b;g=b;e=(e|0)==(b|0)&f>>>0>>0|b>>>0>>0;b=i>>>3&65535;h=(i&7)<<29|h>>>3;i=c<<16;d=d|h;c=d+e|0;b=m|(b|i);h=c;i=c>>>0>>0?b+1|0:b;f:{if((l|0)==4){d=0;b=g+d|0;e=f&1;c=f+e|0;b=c>>>0>>0?b+1|0:b;f=c;g=b;c=(d|0)==(b|0)&c>>>0>>0|b>>>0>>0;b=c+h|0;i=b>>>0>>0?i+1|0:i;h=b;break f}if(!l){break a}}}H[a>>2]=f;H[a+4>>2]=g;H[a+8>>2]=h;H[a+12>>2]=i;da=j+112|0}function Zj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if((b|0)<0){break a}d=H[a+12>>2];c=H[a+8>>2];if(d-c>>2>>>0<=b>>>0){break a}e=c+(b<<2)|0;f=H[e>>2];i=H[f+60>>2];g=H[f+56>>2];c=e+4|0;b:{if((c|0)!=(d|0)){while(1){h=H[c>>2];H[c>>2]=0;H[e>>2]=h;if(f){Fb(f)}e=e+4|0;c=c+4|0;if((c|0)!=(d|0)){f=H[e>>2];continue}break}d=H[a+12>>2];if((e|0)==(d|0)){break b}}while(1){d=d-4|0;c=H[d>>2];H[d>>2]=0;if(c){Fb(c)}if((d|0)!=(e|0)){continue}break}}H[a+12>>2]=e;f=H[a+4>>2];c:{if(!f|(i|0)<0){break c}d=H[f+24>>2];c=H[f+28>>2];if((d|0)==(c|0)){break c}while(1){if((i|0)==H[H[d>>2]+24>>2]){e=d+4|0;i=H[f+28>>2];d:{if((e|0)!=(i|0)){while(1){h=H[e>>2];H[e>>2]=0;c=H[d>>2];H[d>>2]=h;if(c){Di(c+12|0,H[c+16>>2]);Ei(c,H[c+4>>2]);Wk(c)}d=d+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}e=H[f+28>>2];if((e|0)==(d|0)){break d}}while(1){e=e-4|0;c=H[e>>2];H[e>>2]=0;if(c){Di(c+12|0,H[c+16>>2]);Ei(c,H[c+4>>2]);Wk(c)}if((d|0)!=(e|0)){continue}break}}H[f+28>>2]=d;break c}d=d+4|0;if((c|0)!=(d|0)){continue}break}}e:{if((g|0)>4){break e}f:{e=N(g,12)+a|0;d=H[e+20>>2];c=H[e+24>>2];if((d|0)==(c|0)){break f}while(1){if(H[d>>2]==(b|0)){break f}d=d+4|0;if((c|0)!=(d|0)){continue}break}break e}if((d|0)==(c|0)){break e}f=d+4|0;c=c-f|0;if(c){fk(d,f,c)}H[e+24>>2]=d+c}e=H[a+20>>2];c=H[a+24>>2]-e|0;g:{if(!c){break g}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break g}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break g}H[d>>2]=c-1}e=H[a+32>>2];c=H[a+36>>2]-e|0;h:{if(!c){break h}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break h}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break h}H[d>>2]=c-1}e=H[a+44>>2];c=H[a+48>>2]-e|0;i:{if(!c){break i}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break i}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break i}H[d>>2]=c-1}e=H[a+56>>2];c=H[a+60>>2]-e|0;j:{if(!c){break j}d=c>>2;f=d>>>0>1?d:1;i=f&1;d=0;if(c>>>0>=8){f=f&-2;c=0;while(1){g=d<<2;h=g+e|0;j=H[h>>2];if((j|0)>(b|0)){H[h>>2]=j-1}g=e+(g|4)|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!i){break j}d=e+(d<<2)|0;c=H[d>>2];if((c|0)<=(b|0)){break j}H[d>>2]=c-1}c=H[a+72>>2];a=H[a+68>>2];c=c-a|0;if(!c){break a}d=c>>2;e=d>>>0>1?d:1;f=e&1;d=0;if(c>>>0>=8){e=e&-2;c=0;while(1){i=d<<2;g=i+a|0;h=H[g>>2];if((h|0)>(b|0)){H[g>>2]=h-1}i=a+(i|4)|0;g=H[i>>2];if((g|0)>(b|0)){H[i>>2]=g-1}d=d+2|0;c=c+2|0;if((e|0)!=(c|0)){continue}break}}if(!f){break a}c=b;a=a+(d<<2)|0;b=H[a>>2];if((c|0)>=(b|0)){break a}H[a>>2]=b-1}}function Wk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(!a){break a}d=a-8|0;b=H[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=H[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=H[d+8>>2];b=b>>>3|0;c=H[d+12>>2];if((c|0)==(e|0)){i=19128,j=H[4782]&Jl(b),H[i>>2]=j;break b}H[e+12>>2]=c;H[c+8>>2]=e;break b}h=H[d+24>>2];b=H[d+12>>2];c:{if((d|0)!=(b|0)){c=H[d+8>>2];H[c+12>>2]=b;H[b+8>>2]=c;break c}d:{e=d+20|0;c=H[e>>2];if(c){break d}e=d+16|0;c=H[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=H[e>>2];if(c){continue}e=b+16|0;c=H[b+16>>2];if(c){continue}break}H[g>>2]=0}if(!h){break b}e=H[d+28>>2];c=(e<<2)+19432|0;e:{if(H[c>>2]==(d|0)){H[c>>2]=b;if(b){break e}i=19132,j=H[4783]&Jl(e),H[i>>2]=j;break b}H[h+(H[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}H[b+24>>2]=h;c=H[d+16>>2];if(c){H[b+16>>2]=c;H[c+24>>2]=b}c=H[d+20>>2];if(!c){break b}H[b+20>>2]=c;H[c+24>>2]=b;break b}b=H[f+4>>2];if((b&3)!=3){break b}H[4784]=a;H[f+4>>2]=b&-2;H[d+4>>2]=a|1;H[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=H[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(H[4788]==(f|0)){H[4788]=d;a=H[4785]+a|0;H[4785]=a;H[d+4>>2]=a|1;if(H[4787]!=(d|0)){break a}H[4784]=0;H[4787]=0;return}if(H[4787]==(f|0)){H[4787]=d;a=H[4784]+a|0;H[4784]=a;H[d+4>>2]=a|1;H[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=H[f+8>>2];b=b>>>3|0;c=H[f+12>>2];if((c|0)==(e|0)){i=19128,j=H[4782]&Jl(b),H[i>>2]=j;break g}H[e+12>>2]=c;H[c+8>>2]=e;break g}h=H[f+24>>2];b=H[f+12>>2];h:{if((f|0)!=(b|0)){c=H[f+8>>2];H[c+12>>2]=b;H[b+8>>2]=c;break h}i:{e=f+20|0;c=H[e>>2];if(c){break i}e=f+16|0;c=H[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=H[e>>2];if(c){continue}e=b+16|0;c=H[b+16>>2];if(c){continue}break}H[g>>2]=0}if(!h){break g}e=H[f+28>>2];c=(e<<2)+19432|0;j:{if(H[c>>2]==(f|0)){H[c>>2]=b;if(b){break j}i=19132,j=H[4783]&Jl(e),H[i>>2]=j;break g}H[h+(H[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}H[b+24>>2]=h;c=H[f+16>>2];if(c){H[b+16>>2]=c;H[c+24>>2]=b}c=H[f+20>>2];if(!c){break g}H[b+20>>2]=c;H[c+24>>2]=b}H[d+4>>2]=a|1;H[a+d>>2]=a;if(H[4787]!=(d|0)){break f}H[4784]=a;return}H[f+4>>2]=b&-2;H[d+4>>2]=a|1;H[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+19168|0;c=H[4782];a=1<>2]}H[b+8>>2]=d;H[a+12>>2]=d;H[d+12>>2]=b;H[d+8>>2]=a;return}e=31;H[d+16>>2]=0;H[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}H[d+28>>2]=e;g=(e<<2)+19432|0;l:{m:{c=H[4783];b=1<>2]=d;H[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=H[g>>2];while(1){c=b;if((H[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=H[g+16>>2];if(b){continue}break}H[g+16>>2]=d;H[d+24>>2]=c}H[d+12>>2]=d;H[d+8>>2]=d;break l}a=H[c+8>>2];H[a+12>>2]=d;H[c+8>>2]=d;H[d+24>>2]=0;H[d+12>>2]=c;H[d+8>>2]=a}a=H[4790]-1|0;H[4790]=a?a:-1}}function je(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=da-48|0;da=l;d=H[a+8>>2];if(d-31>>>0>=4294967267){H[a+76>>2]=d;e=-1<>2]=d;H[a+80>>2]=e^-1;H[a+92>>2]=(d|0)/2;L[a+88>>2]=O(2)/O(d|0)}H[a+52>>2]=f;o=a+96|0;xe(o);d=H[a+40>>2];e=H[d>>2];f=H[d+4>>2];H[l+16>>2]=0;H[l+8>>2]=0;H[l+12>>2]=0;a:{e=f-e|0;if((e|0)<=0){break a}j=H[d>>2];if((j|0)!=H[d+4>>2]){p=a+8|0;q=a+44|0;d=e>>>2|0;r=d>>>0>1?d:1;s=c+4|0;while(1){Bd(q,H[(n<<2)+j>>2],l+8|0);f=H[l+12>>2];d=f>>31;e=H[l+8>>2];i=e>>31;j=H[l+16>>2];g=j>>31;g=g^g+j;i=g+((d^d+f)+(i^e+i)|0)|0;d=0;d=g>>>0>i>>>0?1:d;b:{if(!(d|i)){k=H[a+92>>2];h=k;break b}k=H[a+92>>2];m=k>>31;f=Gl(Fl(k,m,f,f>>31),fa,i,d);g=f>>31;h=Gl(Fl(k,m,e,e>>31),fa,i,d);d=h>>31;d=(g^f+g)+(d^d+h)|0;j=(j|0)>=0?k-d|0:d-k|0}c:{if((h|0)>=0){i=f+k|0;g=j+k|0;break c}d:{if((f|0)<0){d=j>>31;i=d+j^d;break d}d=j>>31;i=H[a+84>>2]-(d+j^d)|0}if((j|0)<0){d=f>>31;g=d+f^d;break c}d=f>>31;g=H[a+84>>2]-(d+f^d)|0}d=H[a+84>>2];m=d;e=d;e:{if(!(g|i)){break e}if(!((d|0)!=(g|0)|i)){m=g;e=g;break e}if(!((d|0)!=(i|0)|g)){m=i;e=i;break e}if(!((g|0)<=(k|0)|i)){m=(k<<1)-g|0;e=0;break e}if(!((d|0)!=(i|0)|(g|0)>=(k|0))){m=(k<<1)-g|0;e=i;break e}if(!((d|0)!=(g|0)|(i|0)>=(k|0))){m=g;e=(k<<1)-i|0;break e}if(g){m=g;e=i;break e}m=0;e=i;if((e|0)<=(k|0)){break e}e=(k<<1)-i|0}i=e;H[l+16>>2]=0-j;H[l+12>>2]=0-f;H[l+8>>2]=0-h;f:{if((h|0)<=0){h=k-j|0;e=k-f|0;break f}e=f>>31;e=e+f^e;h=(j|0)>0?e:d-e|0;e=j>>31;e=e+j^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|h)){h=d;break g}if(!((d|0)!=(h|0)|e)){h=d;break g}f=(d|0)!=(e|0);if(!(h|f)){h=d;break g}if(!((h|0)<=(k|0)|e)){h=(k<<1)-h|0;d=0;break g}if(!((h|0)>=(k|0)|f)){h=(k<<1)-h|0;break g}if(!((d|0)!=(h|0)|(e|0)>=(k|0))){h=d;d=(k<<1)-e|0;break g}if(h){d=e;break g}h=0;if((e|0)<=(k|0)){d=e;break g}d=(k<<1)-e|0}e=(n<<3)+b|0;f=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=f;H[l+28>>2]=m;H[l+24>>2]=i;i=l+40|0;g=l+32|0;m=l+24|0;Ld(i,p,g,m);f=H[l+44>>2];j=H[l+40>>2];k=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=k;H[l+28>>2]=h;H[l+24>>2]=d;Ld(i,p,g,m);d=H[l+44>>2];h=H[l+40>>2];e=H[a+92>>2];h:{if((e|0)<(j|0)){j=j-H[a+80>>2]|0;break h}if((0-e|0)<=(j|0)){break h}j=H[a+80>>2]+j|0}i:{if((e|0)<(f|0)){f=f-H[a+80>>2]|0;break i}if((0-e|0)<=(f|0)){break i}f=H[a+80>>2]+f|0}j:{if((e|0)<(h|0)){h=h-H[a+80>>2]|0;break j}if((0-e|0)<=(h|0)){break j}h=H[a+80>>2]+h|0}i=n<<1;k:{if((d|0)>(e|0)){d=d-H[a+80>>2]|0;break k}if((0-e|0)<=(d|0)){break k}d=H[a+80>>2]+d|0}e=f>>31;e=e+f^e;g=j>>31;g=g+j^g;e=g>>>0>(e^2147483647)>>>0?2147483647:e+g|0;g=d>>31;g=g+d^g;m=h>>31;m=m+h^m;g=m>>>0>(g^2147483647)>>>0?2147483647:g+m|0;ye(o,e>>>0>=g>>>0);i=i<<2;e=e>>>0>>0;g=e?j:h;H[i+c>>2]=(H[a+80>>2]&g>>31)+g;d=e?f:d;H[i+s>>2]=(H[a+80>>2]&d>>31)+d;n=n+1|0;if((r|0)==(n|0)){break a}d=H[a+40>>2];j=H[d>>2];if(H[d+4>>2]-j>>2>>>0>n>>>0){continue}break}}Sc();X()}da=l+48|0;return 1}function $d(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=da-48|0;da=l;d=H[a+8>>2];if(d-31>>>0>=4294967267){H[a+76>>2]=d;e=-1<>2]=d;H[a+80>>2]=e^-1;H[a+92>>2]=(d|0)/2;L[a+88>>2]=O(2)/O(d|0)}H[a+52>>2]=f;o=a+96|0;xe(o);d=H[a+40>>2];e=H[d>>2];f=H[d+4>>2];H[l+16>>2]=0;H[l+8>>2]=0;H[l+12>>2]=0;a:{e=f-e|0;if((e|0)<=0){break a}j=H[d>>2];if((j|0)!=H[d+4>>2]){p=a+8|0;q=a+44|0;d=e>>>2|0;r=d>>>0>1?d:1;s=c+4|0;while(1){nd(q,H[(n<<2)+j>>2],l+8|0);f=H[l+12>>2];d=f>>31;e=H[l+8>>2];i=e>>31;j=H[l+16>>2];g=j>>31;g=g^g+j;i=g+((d^d+f)+(i^e+i)|0)|0;d=0;d=g>>>0>i>>>0?1:d;b:{if(!(d|i)){k=H[a+92>>2];h=k;break b}k=H[a+92>>2];m=k>>31;f=Gl(Fl(k,m,f,f>>31),fa,i,d);g=f>>31;h=Gl(Fl(k,m,e,e>>31),fa,i,d);d=h>>31;d=(g^f+g)+(d^d+h)|0;j=(j|0)>=0?k-d|0:d-k|0}c:{if((h|0)>=0){i=f+k|0;g=j+k|0;break c}d:{if((f|0)<0){d=j>>31;i=d+j^d;break d}d=j>>31;i=H[a+84>>2]-(d+j^d)|0}if((j|0)<0){d=f>>31;g=d+f^d;break c}d=f>>31;g=H[a+84>>2]-(d+f^d)|0}d=H[a+84>>2];m=d;e=d;e:{if(!(g|i)){break e}if(!((d|0)!=(g|0)|i)){m=g;e=g;break e}if(!((d|0)!=(i|0)|g)){m=i;e=i;break e}if(!((g|0)<=(k|0)|i)){m=(k<<1)-g|0;e=0;break e}if(!((d|0)!=(i|0)|(g|0)>=(k|0))){m=(k<<1)-g|0;e=i;break e}if(!((d|0)!=(g|0)|(i|0)>=(k|0))){m=g;e=(k<<1)-i|0;break e}if(g){m=g;e=i;break e}m=0;e=i;if((e|0)<=(k|0)){break e}e=(k<<1)-i|0}i=e;H[l+16>>2]=0-j;H[l+12>>2]=0-f;H[l+8>>2]=0-h;f:{if((h|0)<=0){h=k-j|0;e=k-f|0;break f}e=f>>31;e=e+f^e;h=(j|0)>0?e:d-e|0;e=j>>31;e=e+j^e;e=(f|0)>0?e:d-e|0}g:{if(!(e|h)){h=d;break g}if(!((d|0)!=(h|0)|e)){h=d;break g}f=(d|0)!=(e|0);if(!(h|f)){h=d;break g}if(!((h|0)<=(k|0)|e)){h=(k<<1)-h|0;d=0;break g}if(!((h|0)>=(k|0)|f)){h=(k<<1)-h|0;break g}if(!((d|0)!=(h|0)|(e|0)>=(k|0))){h=d;d=(k<<1)-e|0;break g}if(h){d=e;break g}h=0;if((e|0)<=(k|0)){d=e;break g}d=(k<<1)-e|0}e=(n<<3)+b|0;f=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=f;H[l+28>>2]=m;H[l+24>>2]=i;i=l+40|0;g=l+32|0;m=l+24|0;Ld(i,p,g,m);f=H[l+44>>2];j=H[l+40>>2];k=H[e+4>>2];H[l+32>>2]=H[e>>2];H[l+36>>2]=k;H[l+28>>2]=h;H[l+24>>2]=d;Ld(i,p,g,m);d=H[l+44>>2];h=H[l+40>>2];e=H[a+92>>2];h:{if((e|0)<(j|0)){j=j-H[a+80>>2]|0;break h}if((0-e|0)<=(j|0)){break h}j=H[a+80>>2]+j|0}i:{if((e|0)<(f|0)){f=f-H[a+80>>2]|0;break i}if((0-e|0)<=(f|0)){break i}f=H[a+80>>2]+f|0}j:{if((e|0)<(h|0)){h=h-H[a+80>>2]|0;break j}if((0-e|0)<=(h|0)){break j}h=H[a+80>>2]+h|0}i=n<<1;k:{if((d|0)>(e|0)){d=d-H[a+80>>2]|0;break k}if((0-e|0)<=(d|0)){break k}d=H[a+80>>2]+d|0}e=f>>31;e=e+f^e;g=j>>31;g=g+j^g;e=g>>>0>(e^2147483647)>>>0?2147483647:e+g|0;g=d>>31;g=g+d^g;m=h>>31;m=m+h^m;g=m>>>0>(g^2147483647)>>>0?2147483647:g+m|0;ye(o,e>>>0>=g>>>0);i=i<<2;e=e>>>0>>0;g=e?j:h;H[i+c>>2]=(H[a+80>>2]&g>>31)+g;d=e?f:d;H[i+s>>2]=(H[a+80>>2]&d>>31)+d;n=n+1|0;if((r|0)==(n|0)){break a}d=H[a+40>>2];j=H[d>>2];if(H[d+4>>2]-j>>2>>>0>n>>>0){continue}break}}Sc();X()}da=l+48|0;return 1}function Le(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;g=da-16|0;da=g;H[g+12>>2]=b;b=$k(32);H[g>>2]=b;H[g+4>>2]=17;H[g+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];i=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);h=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=h;F[b+9|0]=h>>>8;F[b+10|0]=h>>>16;F[b+11|0]=h>>>24;F[b+12|0]=i;F[b+13|0]=i>>>8;F[b+14|0]=i>>>16;F[b+15|0]=i>>>24;i=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);h=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=h;F[b+1|0]=h>>>8;F[b+2|0]=h>>>16;F[b+3|0]=h>>>24;F[b+4|0]=i;F[b+5|0]=i>>>8;F[b+6|0]=i>>>16;F[b+7|0]=i>>>24;i=a+4|0;fi(Fe(i,g+12|0),g,c);if(F[g+11|0]<0){Wk(H[g>>2])}a=$k(32);H[g>>2]=a;H[g+4>>2]=19;H[g+8>>2]=-2147483616;F[a+19|0]=0;b=I[1541]|I[1542]<<8|(I[1543]<<16|I[1544]<<24);F[a+15|0]=b;F[a+16|0]=b>>>8;F[a+17|0]=b>>>16;F[a+18|0]=b>>>24;b=I[1538]|I[1539]<<8|(I[1540]<<16|I[1541]<<24);c=I[1534]|I[1535]<<8|(I[1536]<<16|I[1537]<<24);F[a+8|0]=c;F[a+9|0]=c>>>8;F[a+10|0]=c>>>16;F[a+11|0]=c>>>24;F[a+12|0]=b;F[a+13|0]=b>>>8;F[a+14|0]=b>>>16;F[a+15|0]=b>>>24;b=I[1530]|I[1531]<<8|(I[1532]<<16|I[1533]<<24);c=I[1526]|I[1527]<<8|(I[1528]<<16|I[1529]<<24);F[a|0]=c;F[a+1|0]=c>>>8;F[a+2|0]=c>>>16;F[a+3|0]=c>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;c=Fe(i,g+12|0);a=da-48|0;da=a;H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;a:{if((d|0)<=0){break a}il(a,L[e>>2]);b=I[a+11|0];h=b<<24>>24<0;fl(a+16|0,h?H[a>>2]:a,h?H[a+4>>2]:b);if(F[a+11|0]<0){Wk(H[a>>2])}b=1;if((d|0)==1){break a}while(1){h=a+16|0;fl(h,2164,jk(2164));il(a,L[(b<<2)+e>>2]);k=h;h=I[a+11|0];j=h<<24>>24<0;fl(k,j?H[a>>2]:a,j?H[a+4>>2]:h);if(F[a+11|0]<0){Wk(H[a>>2])}b=b+1|0;if((d|0)!=(b|0)){continue}break}}H[a+40>>2]=g;Ue(a,c,g,a+40|0);b=H[a>>2]+28|0;b:{if((b|0)==(a+16|0)){break b}d=I[a+27|0];c=d<<24>>24;if(F[b+11|0]>=0){if((c|0)>=0){c=H[a+20>>2];H[b>>2]=H[a+16>>2];H[b+4>>2]=c;H[b+8>>2]=H[a+24>>2];break b}hl(b,H[a+16>>2],H[a+20>>2]);break b}e=b;b=(c|0)<0;gl(e,b?H[a+16>>2]:a+16|0,b?H[a+20>>2]:d)}if(F[a+27|0]<0){Wk(H[a+16>>2])}da=a+48|0;if(F[g+11|0]<0){Wk(H[g>>2])}a=$k(32);H[g>>2]=a;H[g+4>>2]=18;H[g+8>>2]=-2147483616;F[a+18|0]=0;b=I[1706]|I[1707]<<8;F[a+16|0]=b;F[a+17|0]=b>>>8;b=I[1702]|I[1703]<<8|(I[1704]<<16|I[1705]<<24);c=I[1698]|I[1699]<<8|(I[1700]<<16|I[1701]<<24);F[a+8|0]=c;F[a+9|0]=c>>>8;F[a+10|0]=c>>>16;F[a+11|0]=c>>>24;F[a+12|0]=b;F[a+13|0]=b>>>8;F[a+14|0]=b>>>16;F[a+15|0]=b>>>24;b=I[1694]|I[1695]<<8|(I[1696]<<16|I[1697]<<24);c=I[1690]|I[1691]<<8|(I[1692]<<16|I[1693]<<24);F[a|0]=c;F[a+1|0]=c>>>8;F[a+2|0]=c>>>16;F[a+3|0]=c>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;b=Fe(i,g+12|0);a=da-48|0;da=a;il(a+8|0,f);H[a+32>>2]=g;Ue(a+40|0,b,g,a+32|0);b=H[a+40>>2];if(F[b+39|0]<0){Wk(H[b+28>>2])}c=H[a+12>>2];H[b+28>>2]=H[a+8>>2];H[b+32>>2]=c;H[b+36>>2]=H[a+16>>2];da=a+48|0;if(F[g+11|0]<0){Wk(H[g>>2])}da=g+16|0}function Ih(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==-1){return 1}c=(b>>>0)/3|0;if(!(H[H[a+24>>2]+(c>>>3&268435452)>>2]>>>c&1)){d=H[a+48>>2];H[a+52>>2]=d;a:{if((d|0)!=H[a+56>>2]){H[d>>2]=b;H[a+52>>2]=d+4;break a}e=$k(4);H[e>>2]=b;f=e+4|0;H[a+56>>2]=f;H[a+52>>2]=f;H[a+48>>2]=e;if(!d){break a}Wk(d)}f=H[H[a+4>>2]+28>>2];d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=H[f+(e<<2)>>2];if((d|0)==-1){return 0}g=(b-N(c,3)|0?-1:2)+b|0;c=H[f+(g<<2)>>2];if((c|0)==-1){return 0}b=H[a+36>>2];f=b+(d>>>3&536870908)|0;h=H[f>>2];i=1<>2]=h|i;th(a+8|0,d,e);b=H[a+36>>2]}b=(c>>>3&536870908)+b|0;d=H[b>>2];e=1<>2]=d|e;th(a+8|0,c,g)}c=H[a+52>>2];if((c|0)==H[a+48>>2]){return 1}k=a+8|0;while(1){c=c-4|0;b=H[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=H[a+24>>2]+(d>>>3&268435452)|0;f=H[e>>2];d=1<>2]=d|f;e=H[a+4>>2];d=H[H[e+28>>2]+(b<<2)>>2];if((d|0)==-1){return 0}while(1){c=b;d:{e:{f=H[a+36>>2]+(d>>>3&536870908)|0;g=H[f>>2];h=1<>2]+(d<<2)>>2];g:{if((b|0)==-1){break g}i=b+1|0;b=(i>>>0)%3|0?i:b-2|0;if((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break f}}H[f>>2]=g|h;th(k,d,c);break e}H[f>>2]=g|h;th(k,d,c);d=b+1|0;if((((d>>>0)%3|0?d:b-2|0)|0)==-1){break e}b=-1;e=H[a+4>>2];h:{if((c|0)==-1){break h}d=c+1|0;d=(d>>>0)%3|0?d:c-2|0;if((d|0)==-1|H[H[e>>2]+(d>>>3&536870908)>>2]>>>d&1){break h}b=H[H[H[e+64>>2]+12>>2]+(d<<2)>>2]}d=(b>>>0)/3|0;h=1<>2];i=d>>>5|0;f=H[c+(i<<2)>>2];break d}i:{j:{if((c|0)==-1){break j}d=-1;b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;e=H[a+4>>2];if(!((b|0)==-1|H[H[e>>2]+(b>>>3&536870908)>>2]>>>b&1)){d=H[H[H[e+64>>2]+12>>2]+(b<<2)>>2]}k:{l:{if((c>>>0)%3|0){c=c-1|0;break l}c=c+2|0;b=-1;if((c|0)==-1){break k}}b=-1;if(H[H[e>>2]+(c>>>3&536870908)>>2]>>>c&1){break k}b=H[H[H[e+64>>2]+12>>2]+(c<<2)>>2]}j=(b|0)==-1;g=j?-1:(b>>>0)/3|0;f=(d>>>0)/3|0;h=(d|0)==-1;if(!h){c=H[a+24>>2];h=h?-1:f;i=h>>>5|0;f=H[c+(i<<2)>>2];h=1<>2];i=g>>>5|0;f=H[c+(i<<2)>>2];if(!(h&f)){break d}}c=H[a+52>>2]-4|0;H[a+52>>2]=c;break b}if(j){b=d;break d}if(H[(g>>>3&536870908)+c>>2]>>>g&1){b=d;break d}c=H[a+52>>2];H[c-4>>2]=b;if((c|0)!=H[a+56>>2]){H[c>>2]=d;c=c+4|0;break c}m:{f=H[a+48>>2];e=c-f|0;c=e>>2;b=c+1|0;if(b>>>0<1073741824){g=e>>1;g=e>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break m}b=$k(g<<2)}else{b=0}c=b+(c<<2)|0;H[c>>2]=d;c=c+4|0;if((e|0)>0){ek(b,f,e)}H[a+56>>2]=b+(g<<2);H[a+52>>2]=c;H[a+48>>2]=b;if(!f){break b}Wk(f);c=H[a+52>>2];break b}Fa();X()}Ua(1604);X()}H[(i<<2)+c>>2]=f|h;d=H[H[e+28>>2]+(b<<2)>>2];if((d|0)!=-1){continue}break}return 0}H[a+52>>2]=c}if(H[a+48>>2]!=(c|0)){continue}break}}return 1}function bh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=da+-64|0;da=e;a:{b:{c:{d:{if(!I[a+352|0]){break d}c=1;h=ga[H[H[a>>2]+40>>2]](a)|0;if((H[h+12>>2]-H[h+8>>2]|0)<=0){break d}qb(H[H[(ga[H[H[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;f=H[c+H[H[(ga[H[H[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];i=H[c+H[H[(ga[H[H[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;d=H[a+172>>2];c=H[a+176>>2]-d|0;e:{if(!c){break e}c=(c|0)/136|0;g=c>>>0>1?c:1;c=0;while(1){if(H[d+N(c,136)>>2]==(b|0)){h=c;break e}c=c+1|0;if((g|0)!=(c|0)){continue}break}}f:{g:{h:{i:{j:{k:{if(!I[a+352|0]){c=H[i+56>>2];if(!(!f|!c)&(!I[(d+N(h,136)|0)+28|0]|(f|0)!=1)){break i}if(c){break k}}c=a+40|0;break j}c=H[a+12>>2];f=H[c+28>>2];c=H[c+24>>2];H[e>>2]=-1;k=d;d=N(h,136);g=k+d|0;Cg(g+116|0,f-c>>2,e);F[(d+H[a+172>>2]|0)+100|0]=0;c=g+104|0}d=0;if(Kb(H[(ga[H[H[a>>2]+40>>2]](a)|0)+48>>2])|H[i+56>>2]){break h}if(!I[a+352|0]){d=1;c=Dg(a,c);break g}d=H[a+8>>2];f=H[d+12>>2]-H[d+8>>2]|0;d=(f|0)<5;if((f|0)>4){break h}c=Dg(a,c);break g}d=d+N(h,136)|0;c=H[d+56>>2];f=H[d+60>>2];H[e>>2]=-1;Cg(d+116|0,f-c>>2,e);c=$k(80);f=H[a+8>>2];H[c+12>>2]=0;H[c+16>>2]=0;H[c>>2]=12e3;H[c+4>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+76>>2]=0;i=d+104|0;H[c+72>>2]=i;H[c+68>>2]=f;H[c- -64>>2]=0;g=c+56|0;H[g>>2]=0;H[g+4>>2]=0;H[c+8>>2]=10904;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;j=e+24|0;H[j>>2]=0;H[j+4>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e+56>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e>>2]=10904;l=d+4|0;H[e+4>>2]=l;d=H[d+68>>2];k=H[d>>2];d=H[d+4>>2];F[e+63|0]=0;k=(d-k>>2>>>0)/3|0;d=e+63|0;Eg(j,k,d);j=H[e+4>>2];k=H[j+56>>2];j=H[j+52>>2];F[e+63|0]=0;Eg(e+36|0,k-j>>2,d);H[e+20>>2]=c;H[e+16>>2]=f;H[e+12>>2]=i;H[e+8>>2]=l;H[c+76>>2]=a+72;Fg(c+8|0,e);Gg(g,H[e+48>>2],H[e+52>>2]);H[e>>2]=10904;d=H[e+48>>2];if(d){H[e+52>>2]=d;Wk(d)}H[e>>2]=11156;d=H[e+36>>2];if(d){Wk(d)}d=H[e+24>>2];if(d){Wk(d)}d=0;break f}c=Hg(a,c)}if(c){break f}c=0;break c}H[((h|0)==-1?a+68|0:(H[a+172>>2]+N(h,136)|0)+132|0)>>2]=d;i=mc($k(76),c,b);b=H[a+188>>2];l:{if((b|0)!=H[a+192>>2]){H[b>>2]=h;H[a+188>>2]=b+4;break l}d=H[a+184>>2];c=b-d|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=$k(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=h;if((c|0)>0){ek(b,d,c)}H[a+192>>2]=b+(f<<2);H[a+188>>2]=g+4;H[a+184>>2]=b;if(!d){break l}Wk(d)}a=ga[H[H[a>>2]+40>>2]](a)|0;H[e>>2]=i;b=H[a+12>>2];m:{if(b>>>0>2]){H[e>>2]=0;H[b>>2]=i;H[a+12>>2]=b+4;break m}Ig(a+8|0,e)}a=H[e>>2];H[e>>2]=0;if(a){ga[H[H[a>>2]+4>>2]](a)}c=1}da=e- -64|0;return c|0}Fa();X()}Ua(1604);X()}function Bg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=da+-64|0;da=e;a:{b:{c:{d:{if(!I[a+288|0]){break d}c=1;h=ga[H[H[a>>2]+40>>2]](a)|0;if((H[h+12>>2]-H[h+8>>2]|0)<=0){break d}qb(H[H[(ga[H[H[a>>2]+40>>2]](a)|0)+8>>2]>>2],b);break c}c=b<<2;f=H[c+H[H[(ga[H[H[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];i=H[c+H[H[(ga[H[H[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];h=-1;d=H[a+172>>2];c=H[a+176>>2]-d|0;e:{if(!c){break e}c=(c|0)/136|0;g=c>>>0>1?c:1;c=0;while(1){if(H[d+N(c,136)>>2]==(b|0)){h=c;break e}c=c+1|0;if((g|0)!=(c|0)){continue}break}}f:{g:{h:{i:{j:{k:{if(!I[a+288|0]){c=H[i+56>>2];if(!(!f|!c)&(!I[(d+N(h,136)|0)+28|0]|(f|0)!=1)){break i}if(c){break k}}c=a+40|0;break j}c=H[a+12>>2];f=H[c+28>>2];c=H[c+24>>2];H[e>>2]=-1;k=d;d=N(h,136);g=k+d|0;Cg(g+116|0,f-c>>2,e);F[(d+H[a+172>>2]|0)+100|0]=0;c=g+104|0}d=0;if(Kb(H[(ga[H[H[a>>2]+40>>2]](a)|0)+48>>2])|H[i+56>>2]){break h}if(!I[a+288|0]){d=1;c=Dg(a,c);break g}d=H[a+8>>2];f=H[d+12>>2]-H[d+8>>2]|0;d=(f|0)<5;if((f|0)>4){break h}c=Dg(a,c);break g}d=d+N(h,136)|0;c=H[d+56>>2];f=H[d+60>>2];H[e>>2]=-1;Cg(d+116|0,f-c>>2,e);c=$k(80);f=H[a+8>>2];H[c+12>>2]=0;H[c+16>>2]=0;H[c>>2]=12e3;H[c+4>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+76>>2]=0;i=d+104|0;H[c+72>>2]=i;H[c+68>>2]=f;H[c- -64>>2]=0;g=c+56|0;H[g>>2]=0;H[g+4>>2]=0;H[c+8>>2]=10904;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;j=e+24|0;H[j>>2]=0;H[j+4>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e+56>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e>>2]=10904;l=d+4|0;H[e+4>>2]=l;d=H[d+68>>2];k=H[d>>2];d=H[d+4>>2];F[e+63|0]=0;k=(d-k>>2>>>0)/3|0;d=e+63|0;Eg(j,k,d);j=H[e+4>>2];k=H[j+56>>2];j=H[j+52>>2];F[e+63|0]=0;Eg(e+36|0,k-j>>2,d);H[e+20>>2]=c;H[e+16>>2]=f;H[e+12>>2]=i;H[e+8>>2]=l;H[c+76>>2]=a+72;Fg(c+8|0,e);Gg(g,H[e+48>>2],H[e+52>>2]);H[e>>2]=10904;d=H[e+48>>2];if(d){H[e+52>>2]=d;Wk(d)}H[e>>2]=11156;d=H[e+36>>2];if(d){Wk(d)}d=H[e+24>>2];if(d){Wk(d)}d=0;break f}c=Hg(a,c)}if(c){break f}c=0;break c}H[((h|0)==-1?a+68|0:(H[a+172>>2]+N(h,136)|0)+132|0)>>2]=d;i=mc($k(76),c,b);b=H[a+188>>2];l:{if((b|0)!=H[a+192>>2]){H[b>>2]=h;H[a+188>>2]=b+4;break l}d=H[a+184>>2];c=b-d|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break b}f=c>>1;f=c>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break a}b=$k(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=h;if((c|0)>0){ek(b,d,c)}H[a+192>>2]=b+(f<<2);H[a+188>>2]=g+4;H[a+184>>2]=b;if(!d){break l}Wk(d)}a=ga[H[H[a>>2]+40>>2]](a)|0;H[e>>2]=i;b=H[a+12>>2];m:{if(b>>>0>2]){H[e>>2]=0;H[b>>2]=i;H[a+12>>2]=b+4;break m}Ig(a+8|0,e)}a=H[e>>2];H[e>>2]=0;if(a){ga[H[H[a>>2]+4>>2]](a)}c=1}da=e- -64|0;return c|0}Fa();X()}Ua(1604);X()}function eh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=da-16|0;da=j;H[a+124>>2]=H[a+124>>2]+1;h=-1;d=H[a+120>>2];c=-1;a:{if((d|0)==-1){break a}c=d+1|0;h=(c>>>0)%3|0?c:d-2|0;c=d-1|0;if((d>>>0)%3|0){break a}c=d+2|0}f=H[a+104>>2];e=H[a+92>>2];g=e+(h<<2)|0;k=f+(H[g>>2]<<2)|0;i=H[k>>2];b:{c:{switch(b|0){case 0:case 1:H[k>>2]=i-1;d=(H[(c<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;if((b|0)!=1){break b}d:{if((c|0)==-1){g=a- -64|0;d=1;break d}g=a- -64|0;d=1;c=H[H[H[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break d}while(1){e:{e=H[g>>2];if(ga[H[H[e>>2]+36>>2]](e,(c>>>0)/3|0)|0){break e}e=c+1|0;c=(e>>>0)%3|0?e:c-2|0;if((c|0)==-1){d=d+1|0;break e}d=d+1|0;c=H[H[H[a+88>>2]+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}}break}f=H[a+104>>2];e=H[a+92>>2]}H[(H[(H[a+120>>2]<<2)+e>>2]<<2)+f>>2]=d;f:{if((h|0)==-1){e=1;break f}e=1;c=H[H[H[a+88>>2]+12>>2]+(h<<2)>>2];if((c|0)==-1){break f}f=H[a+108>>2]-f>>2;while(1){d=H[g>>2];h=(c>>>0)/3|0;if(ga[H[H[d>>2]+36>>2]](d,h)|0){break f}d=c+1|0;H[H[a+92>>2]+(((d>>>0)%3|0?d:c-2|0)<<2)>>2]=f;d=H[a+88>>2];g:{if((N(h,3)|0)!=(c|0)){c=c-1|0;break g}c=c+2|0;if((c|0)!=-1){break g}e=e+1|0;break f}e=e+1|0;c=H[H[d+12>>2]+(c<<2)>>2];if((c|0)!=-1){continue}break}}H[j+12>>2]=e;h:{c=H[a+108>>2];f=H[a+112>>2];if(c>>>0>>0){H[c>>2]=H[j+12>>2];H[a+108>>2]=c+4;break h}i:{e=H[a+104>>2];d=c-e|0;h=d>>2;c=h+1|0;if(c>>>0<1073741824){f=f-e|0;g=f>>1;f=f>>>0<2147483644?c>>>0>g>>>0?c:g:1073741823;if(f){if(f>>>0>=1073741824){break i}c=$k(f<<2)}else{c=0}h=c+(h<<2)|0;H[h>>2]=H[j+12>>2];if((d|0)>0){ek(c,e,d)}H[a+112>>2]=c+(f<<2);H[a+108>>2]=h+4;H[a+104>>2]=c;if(e){Wk(e)}break h}Fa();X()}Ua(1604);X()}break b;case 7:d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-2;break b;case 3:d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-2;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-1;break b;case 5:break c;default:break b}}d=(H[(d<<2)+e>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;d=(H[g>>2]<<2)+f|0;H[d>>2]=H[d>>2]-1;c=(H[(c<<2)+e>>2]<<2)+f|0;H[c>>2]=H[c>>2]-2}j:{k:{c=H[a+116>>2];l:{if((c|0)==-1){break l}h=H[(c<<2)+11200>>2];c=H[a+132>>2];d=(c|0)<(i|0)?c:i;c=H[a+128>>2];e=H[a+136>>2]+N((c|0)>(i|0)?0:d-c|0,12)|0;c=H[e+4>>2];d=H[e+8>>2];if(c>>>0>>0){H[c>>2]=h;H[e+4>>2]=c+4;break l}f=H[e>>2];i=c-f|0;g=i>>2;c=g+1|0;if(c>>>0>=1073741824){break k}d=d-f|0;k=d>>1;d=d>>>0<2147483644?c>>>0>k>>>0?c:k:1073741823;if(d){if(d>>>0>=1073741824){break j}c=$k(d<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=h;if((i|0)>0){ek(c,f,i)}H[e>>2]=c;H[e+4>>2]=g+4;H[e+8>>2]=c+(d<<2);if(!f){break l}Wk(f)}H[a+116>>2]=b;da=j+16|0;return}Fa();X()}Ua(1604);X()}function Ye(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=a+4|0;if((e|0)!=(b|0)){Ee(e,H[b>>2],b+4|0);c=H[b+12>>2];l=b+16|0;e=0;g=a+16|0;a:{if(!H[g+8>>2]){break a}f=H[g>>2];k=g+4|0;H[g>>2]=k;H[H[g+4>>2]+8>>2]=0;H[g+4>>2]=0;H[g+8>>2]=0;d=H[f+4>>2];h=d?d:f;if(!h){De(g,h);break a}f=H[h+8>>2];b:{if(!f){break b}d=H[f>>2];if((h|0)==(d|0)){H[f>>2]=0;d=H[f+4>>2];if(!d){e=f;break b}while(1){e=d;d=H[d>>2];if(d){continue}d=H[e+4>>2];if(d){continue}break}break b}H[f+4>>2]=0;if(!d){e=f;break b}while(1){e=d;d=H[d>>2];if(d){continue}d=H[e+4>>2];if(d){continue}break}}c:{if((c|0)==(l|0)){f=h;break c}i=c;while(1){f=e;H[h+16>>2]=H[i+16>>2];if((h|0)!=(i|0)){Ee(h+20|0,H[i+20>>2],i+24|0)}d:{c=H[k>>2];if(!c){c=k;d=c;break d}e=H[h+16>>2];while(1){e:{if((e|0)>2]){d=H[c>>2];if(d){break e}d=c;break d}d=H[c+4>>2];if(d){break e}d=c+4|0;break d}c=d;continue}}H[h+8>>2]=c;H[h>>2]=0;H[h+4>>2]=0;H[d>>2]=h;e=H[H[g>>2]>>2];if(e){H[g>>2]=e;h=H[d>>2]}Qe(H[g+4>>2],h);H[g+8>>2]=H[g+8>>2]+1;e=0;f:{if(!f){break f}d=H[f+8>>2];if(!d){break f}c=H[d>>2];if((f|0)==(c|0)){H[d>>2]=0;c=H[d+4>>2];if(!c){e=d;break f}while(1){e=c;c=H[c>>2];if(c){continue}c=H[e+4>>2];if(c){continue}break}break f}H[d+4>>2]=0;if(!c){e=d;break f}while(1){e=c;c=H[c>>2];if(c){continue}c=H[e+4>>2];if(c){continue}break}}d=H[i+4>>2];g:{if(!d){c=H[i+8>>2];if(H[c>>2]==(i|0)){break g}h=i+8|0;while(1){d=H[h>>2];h=d+8|0;c=H[d+8>>2];if((d|0)!=H[c>>2]){continue}break}break g}while(1){c=d;d=H[c>>2];if(d){continue}break}}if(!f){break c}i=c;h=f;if((c|0)!=(l|0)){continue}break}}De(g,f);if(!e){break a}while(1){d=H[e+8>>2];if(d){e=d;continue}break}De(g,e)}if((c|0)!=(l|0)){while(1){k=da-16|0;da=k;j=$k(32);f=c;c=c+16|0;e=H[c>>2];m=j+24|0;H[m>>2]=0;H[m+4>>2]=0;H[j+16>>2]=e;h=j+20|0;H[h>>2]=m;e=H[c+4>>2];i=c+8|0;if((e|0)!=(i|0)){while(1){d=e;c=d+16|0;Re(k+8|0,h,m,c,c);c=H[d+4>>2];h:{if(!c){e=H[d+8>>2];if((d|0)==H[e>>2]){break h}c=d+8|0;while(1){d=H[c>>2];c=d+8|0;e=H[d+8>>2];if((d|0)!=H[e>>2]){continue}break}break h}while(1){e=c;c=H[c>>2];if(c){continue}break}}if((e|0)!=(i|0)){continue}break}}c=H[g+4>>2];i:{j:{if(c){d=H[j+16>>2];while(1){k:{if((d|0)>2]){e=H[c>>2];if(!e){break j}break k}e=H[c+4>>2];if(e){break k}e=c+4|0;break i}c=e;continue}}c=g+4|0}e=c}H[j+8>>2]=c;H[j>>2]=0;H[j+4>>2]=0;H[e>>2]=j;c=H[H[g>>2]>>2];if(c){H[g>>2]=c;j=H[e>>2]}Qe(H[g+4>>2],j);H[g+8>>2]=H[g+8>>2]+1;da=k+16|0;d=H[f+4>>2];l:{if(!d){c=H[f+8>>2];if((f|0)==H[c>>2]){break l}e=f+8|0;while(1){d=H[e>>2];e=d+8|0;c=H[d+8>>2];if((d|0)!=H[c>>2]){continue}break}break l}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(l|0)){continue}break}}Ee(a+28|0,H[b+24>>2],b+28|0)}}function Sj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=H[b+4>>2];a:{if(!c){d=H[b+8>>2];if(H[d>>2]==(b|0)){break a}e=b+8|0;while(1){c=H[e>>2];e=c+8|0;d=H[c+8>>2];if((c|0)!=H[d>>2]){continue}break}break a}while(1){d=c;c=H[c>>2];if(c){continue}break}}if(H[a>>2]==(b|0)){H[a>>2]=d}H[a+8>>2]=H[a+8>>2]-1;d=H[a+4>>2];f=b;b:{c:{c=H[b>>2];if(c){a=H[f+4>>2];if(!a){break c}while(1){b=a;a=H[a>>2];if(a){continue}break}}c=H[b+4>>2];if(c){break c}c=0;e=1;break b}H[c+8>>2]=H[b+8>>2];e=0}g=H[b+8>>2];a=H[g>>2];d:{if((b|0)==(a|0)){H[g>>2]=c;if((b|0)==(d|0)){a=0;d=c;break d}a=H[g+4>>2];break d}H[g+4>>2]=c}h=!I[b+12|0];if((b|0)!=(f|0)){g=H[f+8>>2];H[b+8>>2]=g;H[g+(((f|0)!=H[H[f+8>>2]>>2])<<2)>>2]=b;g=H[f>>2];H[b>>2]=g;H[g+8>>2]=b;g=H[f+4>>2];H[b+4>>2]=g;if(g){H[g+8>>2]=b}F[b+12|0]=I[f+12|0];d=(d|0)==(f|0)?b:d}e:{if(h|!d){break e}if(e){while(1){b=I[a+12|0];f:{e=H[a+8>>2];if(H[e>>2]!=(a|0)){if(!b){F[a+12|0]=1;F[e+12|0]=0;c=H[e+4>>2];b=H[c>>2];H[e+4>>2]=b;if(b){H[b+8>>2]=e}H[c+8>>2]=H[e+8>>2];b=H[e+8>>2];H[(((e|0)!=H[b>>2])<<2)+b>>2]=c;H[c>>2]=e;H[e+8>>2]=c;b=a;a=H[a>>2];d=(a|0)==(d|0)?b:d;a=H[a+4>>2]}g:{h:{b=H[a>>2];i:{if(!(I[b+12|0]?0:b)){c=H[a+4>>2];if(I[c+12|0]?0:c){break i}F[a+12|0]=0;a=H[a+8>>2];j:{if((d|0)==(a|0)){a=d;break j}if(I[a+12|0]){break f}}F[a+12|0]=1;break e}c=H[a+4>>2];if(!c){break h}}if(I[c+12|0]){break h}b=a;break g}F[b+12|0]=1;F[a+12|0]=0;c=H[b+4>>2];H[a>>2]=c;if(c){H[c+8>>2]=a}H[b+8>>2]=H[a+8>>2];c=H[a+8>>2];H[((H[c>>2]!=(a|0))<<2)+c>>2]=b;H[b+4>>2]=a;H[a+8>>2]=b;c=a}d=H[b+8>>2];F[b+12|0]=I[d+12|0];F[d+12|0]=1;F[c+12|0]=1;b=H[d+4>>2];a=H[b>>2];H[d+4>>2]=a;if(a){H[a+8>>2]=d}H[b+8>>2]=H[d+8>>2];a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b>>2]=d;H[d+8>>2]=b;break e}if(!b){F[a+12|0]=1;F[e+12|0]=0;b=H[a+4>>2];H[e>>2]=b;if(b){H[b+8>>2]=e}H[a+8>>2]=H[e+8>>2];b=H[e+8>>2];H[(((e|0)!=H[b>>2])<<2)+b>>2]=a;H[a+4>>2]=e;H[e+8>>2]=a;d=(d|0)==(e|0)?a:d;a=H[e>>2]}c=H[a>>2];k:{if(!(!c|I[c+12|0])){b=a;break k}b=H[a+4>>2];if(!(I[b+12|0]?0:b)){F[a+12|0]=0;a=H[a+8>>2];if((a|0)!=(d|0)?I[a+12|0]:0){break f}F[a+12|0]=1;break e}if(c){if(!I[c+12|0]){b=a;break k}b=H[a+4>>2]}F[b+12|0]=1;F[a+12|0]=0;c=H[b>>2];H[a+4>>2]=c;if(c){H[c+8>>2]=a}H[b+8>>2]=H[a+8>>2];c=H[a+8>>2];H[((H[c>>2]!=(a|0))<<2)+c>>2]=b;H[b>>2]=a;H[a+8>>2]=b;c=a}d=H[b+8>>2];F[b+12|0]=I[d+12|0];F[d+12|0]=1;F[c+12|0]=1;b=H[d>>2];a=H[b+4>>2];H[d>>2]=a;if(a){H[a+8>>2]=d}H[b+8>>2]=H[d+8>>2];a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b+4>>2]=d;H[d+8>>2]=b;break e}b=a;a=H[a+8>>2];a=H[(((b|0)==H[a>>2])<<2)+a>>2];continue}}F[c+12|0]=1}a=H[f+28>>2];if(a){H[f+32>>2]=a;Wk(a)}if(F[f+27|0]<0){Wk(H[f+16>>2])}Wk(f)}function Wg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=H[a+8>>2];c=H[a+4>>2];if((d-c|0)/136>>>0>=b>>>0){d=a;if(b){a=N(b,136)+c|0;while(1){H[c>>2]=-1;Lj(c+4|0);H[c+104>>2]=0;H[c+108>>2]=0;F[c+100|0]=1;H[c+112>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+128>>2]=0;c=c+136|0;if((a|0)!=(c|0)){continue}break}c=a}H[d+4>>2]=c;return}a:{b:{c:{f=H[a>>2];g=(c-f|0)/136|0;c=g+b|0;if(c>>>0<31580642){d=(d-f|0)/136|0;f=d<<1;f=d>>>0<15790320?c>>>0>f>>>0?c:f:31580641;if(f){if(f>>>0>=31580642){break c}e=$k(N(f,136))}d=N(g,136)+e|0;g=d+N(b,136)|0;c=d;while(1){H[c>>2]=-1;Lj(c+4|0);H[c+104>>2]=0;H[c+108>>2]=0;F[c+100|0]=1;H[c+112>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+128>>2]=0;c=c+136|0;if((g|0)!=(c|0)){continue}break}f=N(f,136)+e|0;b=H[a>>2];c=H[a+4>>2];if((b|0)==(c|0)){break b}while(1){d=d-136|0;c=c-136|0;H[d>>2]=H[c>>2];H[d+4>>2]=H[c+4>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=H[c+12>>2];H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[d+16>>2]=H[c+16>>2];H[d+20>>2]=H[c+20>>2];H[d+24>>2]=H[c+24>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;e=I[c+28|0];H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;F[d+28|0]=e;H[d+32>>2]=H[c+32>>2];H[d+36>>2]=H[c+36>>2];H[d+40>>2]=H[c+40>>2];H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[d+52>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+44>>2]=H[c+44>>2];H[d+48>>2]=H[c+48>>2];H[d+52>>2]=H[c+52>>2];H[c+52>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;e=d- -64|0;H[e>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+56>>2]=H[c+56>>2];H[d+60>>2]=H[c+60>>2];h=e;e=c- -64|0;H[h>>2]=H[e>>2];H[e>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[d+68>>2]=H[c+68>>2];e=H[c+72>>2];H[d+84>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+72>>2]=e;H[d+76>>2]=H[c+76>>2];H[d+80>>2]=H[c+80>>2];H[d+84>>2]=H[c+84>>2];H[c+84>>2]=0;H[c+76>>2]=0;H[c+80>>2]=0;H[d+96>>2]=0;H[d+88>>2]=0;H[d+92>>2]=0;H[d+88>>2]=H[c+88>>2];H[d+92>>2]=H[c+92>>2];H[d+96>>2]=H[c+96>>2];H[c+96>>2]=0;H[c+88>>2]=0;H[c+92>>2]=0;e=I[c+100|0];H[d+112>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;F[d+100|0]=e;H[d+104>>2]=H[c+104>>2];H[d+108>>2]=H[c+108>>2];H[d+112>>2]=H[c+112>>2];H[c+112>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;H[d+124>>2]=0;H[d+116>>2]=0;H[d+120>>2]=0;H[d+116>>2]=H[c+116>>2];H[d+120>>2]=H[c+120>>2];H[d+124>>2]=H[c+124>>2];H[c+124>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[d+128>>2]=H[c+128>>2];H[d+132>>2]=H[c+132>>2];if((b|0)!=(c|0)){continue}break}H[a+8>>2]=f;c=H[a+4>>2];H[a+4>>2]=g;b=H[a>>2];H[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=H[c-20>>2];if(a){H[c-16>>2]=a;Wk(a)}a=H[c-32>>2];if(a){H[c-28>>2]=a;Wk(a)}Xg(c-132|0);c=c-136|0;if((c|0)!=(b|0)){continue}break}break a}Fa();X()}Ua(1604);X()}H[a+8>>2]=f;H[a+4>>2]=g;H[a>>2]=d}if(b){Wk(b)}}function Ch(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(H[H[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=H[a+48>>2];H[a+52>>2]=c;a:{if((c|0)!=H[a+56>>2]){H[c>>2]=b;H[a+52>>2]=c+4;break a}e=$k(4);H[e>>2]=b;f=e+4|0;H[a+56>>2]=f;H[a+52>>2]=f;H[a+48>>2]=e;if(!c){break a}Wk(c)}e=-1;f=H[a+4>>2];c=b+1|0;g=(c>>>0)%3|0?c:b-2|0;if((g|0)!=-1){e=H[H[f>>2]+(g<<2)>>2]}b:{h=b-N(d,3)|0;if(h){c=b-1|0;break b}c=b+2|0;if((c|0)!=-1){break b}return 0}if((e|0)==-1){return 0}d=H[H[f>>2]+(c<<2)>>2];if((d|0)==-1){return 0}c=H[a+36>>2];f=c+(e>>>3&536870908)|0;i=H[f>>2];j=1<>2]=i|j;th(a+8|0,e,g);c=H[a+36>>2]}c=(d>>>3&536870908)+c|0;e=H[c>>2];f=1<>2]=e|f;th(a+8|0,d,(h?-1:2)+b|0)}c=H[a+52>>2];if((c|0)==H[a+48>>2]){return 1}j=a+8|0;while(1){c=c-4|0;b=H[c>>2];d=(b>>>0)/3|0;c:{d:{if((b|0)==-1){break d}e=H[a+24>>2]+(d>>>3&268435452)|0;f=H[e>>2];d=1<>2]=d|f;while(1){d=H[a+4>>2];c=H[H[d>>2]+(b<<2)>>2];if((c|0)==-1){return 0}e:{f:{e=H[a+36>>2]+(c>>>3&536870908)|0;f=H[e>>2];g=1<>2]+(c<<2)>>2];h:{if((h|0)==-1){break h}i=h+1|0;h=(i>>>0)%3|0?i:h-2|0;if((h|0)==-1){break h}d=H[H[d+12>>2]+(h<<2)>>2];if((d|0)!=-1){break g}}H[e>>2]=f|g;th(j,c,b);break f}H[e>>2]=f|g;th(j,c,b);c=d+1|0;if((((c>>>0)%3|0?c:d-2|0)|0)==-1){break f}d=b-2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=H[H[H[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<>2];h=c>>>5|0;d=H[e+(h<<2)>>2];break e}c=-1;f=H[a+4>>2];d=b+1|0;d=(d>>>0)%3|0?d:b-2|0;if((d|0)!=-1){c=H[H[f+12>>2]+(d<<2)>>2]}i:{j:{if((b>>>0)%3|0){e=b-1|0;break j}e=b+2|0;b=-1;if((e|0)==-1){break i}}b=H[H[f+12>>2]+(e<<2)>>2]}i=(b|0)==-1;f=i?-1:(b>>>0)/3|0;d=(c>>>0)/3|0;k:{g=(c|0)==-1;if(!g){e=H[a+24>>2];g=g?-1:d;h=g>>>5|0;d=H[e+(h<<2)>>2];g=1<>2];h=f>>>5|0;d=H[e+(h<<2)>>2];if(!(g&d)){break e}}c=H[a+52>>2]-4|0;H[a+52>>2]=c;break c}if(i){b=c;break e}if(H[(f>>>3&536870908)+e>>2]>>>f&1){b=c;break e}d=H[a+52>>2];H[d-4>>2]=b;if((d|0)!=H[a+56>>2]){H[d>>2]=c;c=d+4|0;break d}l:{e=H[a+48>>2];d=d-e|0;g=d>>2;b=g+1|0;if(b>>>0<1073741824){f=d>>1;f=d>>>0<2147483644?b>>>0>f>>>0?b:f:1073741823;if(f){if(f>>>0>=1073741824){break l}b=$k(f<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=c;c=g+4|0;if((d|0)>0){ek(b,e,d)}H[a+56>>2]=b+(f<<2);H[a+52>>2]=c;H[a+48>>2]=b;if(!e){break c}Wk(e);c=H[a+52>>2];break c}Fa();X()}Ua(1604);X()}H[(h<<2)+e>>2]=d|g;if((b|0)!=-1){continue}break}return 0}H[a+52>>2]=c}if(H[a+48>>2]!=(c|0)){continue}break}}return 1}function lb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=da+-64|0;da=e;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+48>>2]=1065353216;c=H[a+80>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;a:{b:{if(!c){break b}if(c>>>0>=1073741824){break a}f=c<<2;k=$k(f);H[e+16>>2]=k;c=f+k|0;H[e+24>>2]=c;gk(k,0,f);H[e+20>>2]=c;while(1){c=H[H[b>>2]>>2];j=H[b+48>>2]+Fl(H[b+40>>2],H[b+44>>2],i,0)|0;c=c+j|0;n=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[e+28>>2]=n;c:{d:{e:{if(!g){break e}d=H[e+32>>2];j=n^318;l=Il(g)>>>0>1;c=j&g-1;f:{if(!l){break f}c=j;if(c>>>0>>0){break f}c=(j>>>0)%(g>>>0)|0}f=c;c=H[d+(f<<2)>>2];if(!c){break e}d=H[c>>2];if(!d){break e}if(!l){l=g-1|0;while(1){c=H[d+4>>2];g:{if((c|0)!=(j|0)){if((f|0)==(c&l)){break g}break e}if((n|0)==H[d+8>>2]){break d}}d=H[d>>2];if(d){continue}break}break e}while(1){c=H[d+4>>2];h:{if((c|0)!=(j|0)){if(c>>>0>=g>>>0){c=(c>>>0)%(g>>>0)|0}if((c|0)==(f|0)){break h}break e}if((n|0)==H[d+8>>2]){break d}}d=H[d>>2];if(d){continue}break}}H[e+12>>2]=m;H[e+8>>2]=n;c=e+8|0;mb(e+56|0,e+32|0,c,c);c=H[a+40>>2];ek(H[H[a>>2]>>2]+N(c,m)|0,e+28|0,c);k=H[e+16>>2];H[k+(i<<2)>>2]=m;m=m+1|0;break c}H[(i<<2)+k>>2]=H[d+12>>2]}c=i+1|0;h=c?h:h+1|0;i=c;d=H[a+80>>2];if(!h&d>>>0>c>>>0){g=H[e+36>>2];continue}break}if((d|0)==(m|0)){break b}i:{if(!I[a+84|0]){l=H[a+68>>2];b=H[a+72>>2]-l|0;if(!b){break i}i=H[e+16>>2];b=b>>2;b=b>>>0>1?b:1;c=b&3;j=0;d=0;if(b-1>>>0>=3){h=b&-4;k=0;while(1){f=d<<2;b=f+l|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|4)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|8)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];b=l+(f|12)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];d=d+4|0;k=k+4|0;if((h|0)!=(k|0)){continue}break}}if(!c){break i}while(1){b=l+(d<<2)|0;H[b>>2]=H[i+(H[b>>2]<<2)>>2];d=d+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}break i}F[a+84|0]=0;g=H[a+68>>2];b=H[a+72>>2]-g>>2;j:{if(b>>>0>>0){nb(a+68|0,d-b|0,2204);g=H[a+68>>2];d=H[a+80>>2];break j}if(b>>>0<=d>>>0){break j}H[a+72>>2]=(d<<2)+g}if(!d){break i}i=H[e+16>>2];j=0;b=0;if(d-1>>>0>=3){c=d&-4;k=0;while(1){f=b<<2;H[f+g>>2]=H[i+f>>2];h=f|4;H[h+g>>2]=H[i+h>>2];h=f|8;H[h+g>>2]=H[i+h>>2];h=f|12;H[h+g>>2]=H[i+h>>2];b=b+4|0;k=k+4|0;if((c|0)!=(k|0)){continue}break}}c=d&3;if(!c){break i}while(1){h=b<<2;H[h+g>>2]=H[i+h>>2];b=b+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}H[a+80>>2]=m}a=H[e+16>>2];if(a){Wk(a)}d=H[e+40>>2];if(d){while(1){a=H[d>>2];Wk(d);d=a;if(d){continue}break}}a=H[e+32>>2];H[e+32>>2]=0;if(a){Wk(a)}da=e- -64|0;return m}Fa();X()}function Ec(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=da-16|0;da=l;a:{f=H[a+4>>2];b:{c:{if(f){if(ga[H[H[a>>2]+52>>2]](a,b,H[H[f+4>>2]+80>>2])|0){break c}break b}if(!(ga[H[H[a>>2]+52>>2]](a,b,0)|0)){break b}}n=1;if(!I[a+28|0]){break b}d=H[a+32>>2];i=H[a+8>>2];c=H[i+80>>2];f=0;H[l+8>>2]=0;H[l>>2]=0;H[l+4>>2]=0;if(c){if(c>>>0>=1073741824){break a}c=c<<2;f=$k(c);H[l>>2]=f;e=c+f|0;H[l+8>>2]=e;gk(f,0,c);H[l+4>>2]=e}e=H[b>>2];b=H[b+4>>2]-e|0;d:{if(!b){break d}b=b>>2;if(I[i+84|0]){c=b>>>0>1?b:1;h=c&3;b=0;if(c-1>>>0>=3){j=c&-4;c=0;while(1){H[(H[e+(b<<2)>>2]<<2)+f>>2]=b;k=b|1;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;k=b|2;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;k=b|3;H[(H[e+(k<<2)>>2]<<2)+f>>2]=k;b=b+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}if(!h){break d}while(1){H[(H[e+(b<<2)>>2]<<2)+f>>2]=b;b=b+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}break d}g=b>>>0>1?b:1;j=g&3;h=H[i+68>>2];c=0;b=0;if(g-1>>>0>=3){k=g&-4;g=0;while(1){H[(H[h+(H[e+(b<<2)>>2]<<2)>>2]<<2)+f>>2]=b;m=b|1;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;m=b|2;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;m=b|3;H[(H[h+(H[e+(m<<2)>>2]<<2)>>2]<<2)+f>>2]=m;b=b+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}if(!j){break d}while(1){H[(H[h+(H[e+(b<<2)>>2]<<2)>>2]<<2)+f>>2]=b;b=b+1|0;c=c+1|0;if((j|0)!=(c|0)){continue}break}}e:{if(!I[d+84|0]){break e}b=H[H[H[a+4>>2]+4>>2]+80>>2];F[d+84|0]=0;e=H[d+68>>2];c=H[d+72>>2]-e>>2;if(c>>>0>>0){nb(d+68|0,b-c|0,2764);break e}if(b>>>0>=c>>>0){break e}H[d+72>>2]=e+(b<<2)}h=H[H[H[a+4>>2]+4>>2]+80>>2];f:{if(!h){break f}e=H[d+68>>2];if(I[i+84|0]){a=0;b=0;if(h-1>>>0>=3){g=h&-4;c=0;while(1){d=b<<2;H[d+e>>2]=H[f+d>>2];i=d|4;H[i+e>>2]=H[f+i>>2];i=d|8;H[i+e>>2]=H[f+i>>2];d=d|12;H[d+e>>2]=H[f+d>>2];b=b+4|0;c=c+4|0;if((g|0)!=(c|0)){continue}break}}c=h&3;if(!c){break f}while(1){d=b<<2;H[d+e>>2]=H[f+d>>2];b=b+1|0;a=a+1|0;if((c|0)!=(a|0)){continue}break}break f}a=H[i+68>>2];c=0;b=0;if(h-1>>>0>=3){i=h&-4;g=0;while(1){d=b<<2;H[d+e>>2]=H[(H[a+d>>2]<<2)+f>>2];j=d|4;H[j+e>>2]=H[(H[a+j>>2]<<2)+f>>2];j=d|8;H[j+e>>2]=H[(H[a+j>>2]<<2)+f>>2];d=d|12;H[d+e>>2]=H[(H[a+d>>2]<<2)+f>>2];b=b+4|0;g=g+4|0;if((i|0)!=(g|0)){continue}break}}d=h&3;if(!d){break f}while(1){g=b<<2;H[g+e>>2]=H[(H[a+g>>2]<<2)+f>>2];b=b+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}a=H[l>>2];if(!a){break b}Wk(a)}da=l+16|0;return n|0}Fa();X()}function Rj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=da-32|0;da=i;H[a+4>>2]=0;H[a+8>>2]=0;c=a+16|0;H[c>>2]=0;H[c+4>>2]=0;l=a+4|0;H[a>>2]=l;H[a+12>>2]=c;c=H[b>>2];k=b+4|0;if((c|0)!=(k|0)){while(1){f=da-16|0;da=f;g=c;c=c+16|0;h=Se(a,l,f+12|0,f+8|0,c);d=H[h>>2];if(d){c=0}else{d=$k(40);e=d+16|0;a:{if(F[c+11|0]>=0){m=H[c+4>>2];H[e>>2]=H[c>>2];H[e+4>>2]=m;H[e+8>>2]=H[c+8>>2];break a}el(e,H[c>>2],H[c+4>>2])}H[d+36>>2]=0;e=d+28|0;H[e>>2]=0;H[e+4>>2]=0;ai(e,H[c+16>>2]-H[c+12>>2]|0);j=H[e>>2];e=H[c+12>>2];ek(j,e,H[c+16>>2]-e|0);H[d+8>>2]=H[f+12>>2];H[d>>2]=0;H[d+4>>2]=0;H[h>>2]=d;c=H[H[a>>2]>>2];if(c){H[a>>2]=c;c=H[h>>2]}else{c=d}Qe(H[a+4>>2],c);H[a+8>>2]=H[a+8>>2]+1;c=1}F[i+28|0]=c;H[i+24>>2]=d;da=f+16|0;d=H[g+4>>2];b:{if(!d){c=H[g+8>>2];if((g|0)==H[c>>2]){break b}d=g+8|0;while(1){g=H[d>>2];d=g+8|0;c=H[g+8>>2];if((g|0)!=H[c>>2]){continue}break}break b}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(k|0)){continue}break}}c=H[b+12>>2];m=b+16|0;if((c|0)!=(m|0)){f=a+12|0;while(1){g=c;n=$k(24);Rj(n,H[c+28>>2]);b=c+16|0;H[i+16>>2]=b;a=H[f+4>>2];c:{d:{if(a){c=I[b+11|0];d=c<<24>>24<0;e=d?H[b>>2]:b;d=d?H[b+4>>2]:c;b=f+4|0;while(1){c=I[a+27|0];h=c<<24>>24<0;c=h?H[a+20>>2]:c;l=c>>>0>>0;e:{f:{g:{h:{i:{k=l?c:d;j:{if(k){j=a+16|0;h=h?H[j>>2]:j;j=ik(e,h,k);if(!j){if(c>>>0>d>>>0){break j}break i}if((j|0)>=0){break i}break j}if(c>>>0<=d>>>0){break h}}c=H[a>>2];if(c){break e}break d}c=ik(h,e,k);if(c){break g}}if(l){break f}break c}if((c|0)>=0){break c}}b=a+4|0;c=H[a+4>>2];if(!c){break c}a=b}b=a;a=c;continue}}a=f+4|0}b=a}c=H[b>>2];if(c){a=0}else{c=$k(32);e=c+16|0;d=H[i+16>>2];k:{if(F[d+11|0]>=0){h=H[d+4>>2];H[e>>2]=H[d>>2];H[e+4>>2]=h;H[e+8>>2]=H[d+8>>2];break k}el(e,H[d>>2],H[d+4>>2])}H[c+8>>2]=a;H[c>>2]=0;H[c+4>>2]=0;H[c+28>>2]=0;H[b>>2]=c;a=H[H[f>>2]>>2];if(a){H[f>>2]=a;a=H[b>>2]}else{a=c}Qe(H[f+4>>2],a);H[f+8>>2]=H[f+8>>2]+1;a=1}F[i+28|0]=a;H[i+24>>2]=c;b=H[i+24>>2];a=H[b+28>>2];H[b+28>>2]=n;if(a){Di(a+12|0,H[a+16>>2]);Ei(a,H[a+4>>2]);Wk(a)}d=H[g+4>>2];l:{if(!d){c=H[g+8>>2];if((g|0)==H[c>>2]){break l}d=g+8|0;while(1){a=H[d>>2];d=a+8|0;c=H[a+8>>2];if((a|0)!=H[c>>2]){continue}break}break l}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(m|0)){continue}break}}da=i+32|0}function Bc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=da-32|0;da=g;a:{b:{if(H[a+8>>2]<<5>>>0>=b>>>0){break b}H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;if((b|0)<0){break a}b=(b-1>>>5|0)+1|0;c=$k(b<<2);H[g+24>>2]=b;H[g+20>>2]=0;H[g+16>>2]=c;b=H[a>>2];H[g+12>>2]=0;H[g+8>>2]=b;c=H[a+4>>2];H[g+4>>2]=c&31;H[g>>2]=b+(c>>>3&536870908);f=da-32|0;da=f;j=H[g+4>>2];e=H[g+12>>2];k=H[g>>2];i=H[g+8>>2];b=(j-e|0)+(k-i<<3)|0;d=H[g+20>>2];h=b+d|0;H[g+20>>2]=h;c:{if(!(!d|(h-1^d-1)>>>0>31)){c=H[g+16>>2];break c}c=H[g+16>>2];if(h>>>0<=32){H[c>>2]=0;break c}H[(h-1>>>3&536870908)+c>>2]=0}c=(d>>>3&536870908)+c|0;d=d&31;d:{if((d|0)==(e|0)){if((b|0)<=0){break d}if(e){h=32-e|0;d=(b|0)<(h|0)?b:h;h=-1<>>h-d;H[c>>2]=H[c>>2]&(h^-1)|h&H[i>>2];b=b-d|0;i=i+4|0;c=c+(d+e>>>3&536870908)|0}j=c;e=(b|0)/32|0;c=e<<2;d=fk(j,i,c);b=b-(e<<5)|0;if((b|0)<=0){break d}e=c+d|0;b=-1>>>32-b|0;H[e>>2]=H[e>>2]&(b^-1)|b&H[c+i>>2];break d}H[f+28>>2]=e;H[f+24>>2]=i;H[f+20>>2]=j;H[f+16>>2]=k;H[f+12>>2]=d;H[f+8>>2]=c;b=H[f+28>>2];c=H[f+24>>2];i=(H[f+20>>2]-b|0)+(H[f+16>>2]-c<<3)|0;e:{if((i|0)<=0){b=H[f+12>>2];break e}f:{if(!b){b=H[f+12>>2];break f}e=H[f+12>>2];j=32-e|0;k=32-b|0;d=(i|0)<(k|0)?i:k;h=d>>>0>j>>>0?j:d;l=H[f+8>>2];m=H[l>>2]&(-1<>>j-h^-1);j=H[c>>2]&(-1<>>k-d);H[l>>2]=m|(b>>>0>>0?j<>>b-e|0);c=e+h|0;b=c&31;H[f+12>>2]=b;e=l+(c>>>3&536870908)|0;H[f+8>>2]=e;c=d-h|0;if((c|0)>0){H[e>>2]=H[e>>2]&(-1>>>32-c^-1)|j>>>h+H[f+28>>2];H[f+12>>2]=c;b=c}i=i-d|0;c=H[f+24>>2]+4|0;H[f+24>>2]=c}e=32-b|0;h=-1<=32){j=h^-1;while(1){d=H[f+8>>2];c=H[c>>2];H[d>>2]=j&H[d>>2]|c<>2]=d+4;H[d+4>>2]=h&H[d+4>>2]|c>>>e;c=H[f+24>>2]+4|0;H[f+24>>2]=c;d=i>>>0>63;i=i-32|0;if(d){continue}break}}if((i|0)<=0){break e}d=H[f+8>>2];j=e;e=(e|0)<(i|0)?e:i;j=H[d>>2]&(h&-1>>>j-e^-1);h=H[c>>2]&-1>>>32-i;H[d>>2]=j|h<>2]=b;d=d+(c>>>3&536870908)|0;H[f+8>>2]=d;c=i-e|0;if((c|0)<=0){break e}H[d>>2]=H[d>>2]&(-1>>>32-c^-1)|h>>>e;H[f+12>>2]=c;b=c}c=H[f+8>>2];H[f+4>>2]=b;H[f>>2]=c}da=f+32|0;b=H[a>>2];H[a>>2]=H[g+16>>2];H[g+16>>2]=b;c=H[a+4>>2];H[a+4>>2]=H[g+20>>2];H[g+20>>2]=c;c=H[a+8>>2];H[a+8>>2]=H[g+24>>2];H[g+24>>2]=c;if(!b){break b}Wk(b)}da=g+32|0;return}jl();X()}function rg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=da-16|0;da=h;b=H[a+64>>2];a:{if(!b){break a}i=ga[H[H[b>>2]+32>>2]](b)|0;if(!i){break a}m=(H[i+28>>2]-H[i+24>>2]>>2)-H[i+44>>2]|0;b=H[a+56>>2];d=H[b+8>>2];b:{if((H[b+12>>2]-d|0)<5){break b}H[h+8>>2]=0;H[h>>2]=0;H[h+4>>2]=0;c:{d:{while(1){e:{f:{if(!H[H[(c<<2)+d>>2]+56>>2]){break f}j=ga[H[H[a>>2]+56>>2]](a,c)|0;if(!j){break f}if(H[h+8>>2]!=(e|0)){H[e>>2]=j;e=e+4|0;H[h+4>>2]=e;break f}f=H[h>>2];d=e-f|0;e=d>>2;b=e+1|0;if(b>>>0>=1073741824){break e}g=d>>1;g=d>>>0<2147483644?b>>>0>g>>>0?b:g:1073741823;if(g){if(g>>>0>=1073741824){break d}b=$k(g<<2)}else{b=0}e=b+(e<<2)|0;H[e>>2]=j;e=e+4|0;if((d|0)>0){ek(b,f,d)}H[h+8>>2]=b+(g<<2);H[h+4>>2]=e;H[h>>2]=b;if(!f){break f}Wk(f)}l=H[a+56>>2];d=H[l+8>>2];c=c+1|0;if((c|0)>2]-d>>2){continue}break c}break}Fa();X()}Ua(1604);X()}j=H[h>>2];o=H[i+24>>2];b=H[i+28>>2]-o|0;if(b){b=b>>2;q=b>>>0>1?b:1;p=e-j|0;b=p>>2;r=b>>>0>1?b:1;while(1){f=H[(n<<2)+o>>2];if((f|0)!=-1){g:{if((f|0)<0){c=(f>>>0)%3|0;b=-1;break g}b=(f>>>0)/3|0;c=f-N(b,3)|0;b=H[(H[l+96>>2]+N(b,12)|0)+(c<<2)>>2]}h:{i:{if(c){c=f-1|0;break i}c=f+2|0;if((c|0)!=-1){break i}g=0;break h}g=0;c=H[H[i+12>>2]+(c<<2)>>2];if((c|0)==-1){break h}j:{if((c>>>0)%3|0){d=c-1|0;break j}d=c+2|0;if((d|0)==-1){break h}}e=f;while(1){c=(d|0)<0?-1:H[(H[l+96>>2]+N((d>>>0)/3|0,12)|0)+((d>>>0)%3<<2)>>2];k:{if((b|0)==(c|0)){c=0;if(!p){c=b;break k}l:{while(1){k=H[H[(c<<2)+j>>2]+28>>2];if(H[k+(d<<2)>>2]!=H[k+(e<<2)>>2]){break l}c=c+1|0;if((r|0)!=(c|0)){continue}break}c=b;break k}c=b}g=g+1|0}if((d|0)==(f|0)|(d|0)==-1){break h}m:{if((d>>>0)%3|0){e=d-1|0;break m}e=d+2|0;if((e|0)==-1){break h}}k=H[H[i+12>>2]+(e<<2)>>2];if((k|0)==-1){break h}b=c;e=d;c=k+((k>>>0)%3|0?-1:2)|0;d=c;if((c|0)!=-1){continue}break}}c=1;b=f+1|0;b=(b>>>0)%3|0?b:f-2|0;n:{if((b|0)==-1){break n}b=H[H[i+12>>2]+(b<<2)>>2];if((b|0)==-1){break n}c=b+1|0;c=(((c>>>0)%3|0?c:b-2|0)|0)==-1}m=(g+m|0)-((c^-1)&(g|0)!=0)|0}n=n+1|0;if((q|0)!=(n|0)){continue}break}}if(!j){break b}Wk(j)}H[a+52>>2]=m}da=h+16|0}function qk(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=da-128|0;da=j;a:{b:{c:{if(!Gk(f,g,h,i,0,0,0,0)){break c}m=i&65535;n=i>>>16&32767;d:{e:{if((n|0)!=32767){l=4;if(n){break e}l=f|h|(g|m)?3:2;break d}l=!(f|h|(g|m))}}r=e>>>16|0;o=r&32767;if((o|0)==32767){break c}if(l){break b}}Nk(j+16|0,b,c,d,e,f,g,h,i);e=H[j+16>>2];d=H[j+20>>2];c=H[j+24>>2];b=H[j+28>>2];Ik(j,e,d,c,b,e,d,c,b);d=H[j+8>>2];e=H[j+12>>2];h=H[j>>2];i=H[j+4>>2];break a}m=e&65535|o<<16;p=m;l=d;m=h;q=i>>>16&32767;k=i&65535|q<<16;if((Gk(b,c,l,p,f,g,h,k)|0)<=0){if(Gk(b,c,l,p,f,g,m,k)){h=b;i=c;break a}Nk(j+112|0,b,c,d,e,0,0,0,0);d=H[j+120>>2];e=H[j+124>>2];h=H[j+112>>2];i=H[j+116>>2];break a}if(o){i=c;h=b}else{Nk(j+96|0,b,c,l,p,0,0,0,1081540608);h=H[j+108>>2];p=h;l=H[j+104>>2];o=(h>>>16|0)-120|0;i=H[j+100>>2];h=H[j+96>>2]}if(!q){Nk(j+80|0,f,g,m,k,0,0,0,1081540608);f=H[j+92>>2];k=f;m=H[j+88>>2];q=(k>>>16|0)-120|0;g=H[j+84>>2];f=H[j+80>>2]}s=k&65535|65536;p=p&65535|65536;if((o|0)>(q|0)){while(1){t=l-m|0;k=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;n=(p-((l>>>0>>0)+s|0)|0)-(t>>>0>>0)|0;k=t-k|0;f:{if((n|0)>0|(n|0)>=0){l=h;h=h-f|0;i=i-((f>>>0>l>>>0)+g|0)|0;if(!(h|k|(i|n))){Nk(j+32|0,b,c,d,e,0,0,0,0);d=H[j+40>>2];e=H[j+44>>2];h=H[j+32>>2];i=H[j+36>>2];break a}n=n<<1|k>>>31;l=k<<1|i>>>31;p=n;break f}n=p<<1|l>>>31;l=l<<1|i>>>31;p=n}n=i<<1|h>>>31;h=h<<1;i=n;o=o-1|0;if((q|0)<(o|0)){continue}break}o=q}q=l-m|0;n=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;k=(p-((l>>>0>>0)+s|0)|0)-(q>>>0>>0)|0;m=q-n|0;g:{if((k|0)<0){m=l;k=p;break g}l=h;h=h-f|0;i=i-((f>>>0>l>>>0)+g|0)|0;if(h|m|(i|k)){break g}Nk(j+48|0,b,c,d,e,0,0,0,0);d=H[j+56>>2];e=H[j+60>>2];h=H[j+48>>2];i=H[j+52>>2];break a}if((k|0)==65535|k>>>0<65535){while(1){b=i>>>31|0;o=o-1|0;p=i<<1|h>>>31;h=h<<1;i=p;c=b;b=m;k=k<<1|b>>>31;m=c|b<<1;if(k>>>0<65536){continue}break}}b=r&32768;if((o|0)<=0){Nk(j- -64|0,h,i,m,k&65535|(b|o+120)<<16,0,0,0,1065811968);d=H[j+72>>2];e=H[j+76>>2];h=H[j+64>>2];i=H[j+68>>2];break a}d=m;e=k&65535|(b|o)<<16}H[a>>2]=h;H[a+4>>2]=i;H[a+8>>2]=d;H[a+12>>2]=e;da=j+128|0}function Cj(a,b){var c=0,d=0,e=0,f=0;f=da-16|0;da=f;e=$k(32);H[f>>2]=e;H[f+4>>2]=30;H[f+8>>2]=-2147483616;F[e+30|0]=0;c=I[1352]|I[1353]<<8|(I[1354]<<16|I[1355]<<24);d=I[1348]|I[1349]<<8|(I[1350]<<16|I[1351]<<24);F[e+22|0]=d;F[e+23|0]=d>>>8;F[e+24|0]=d>>>16;F[e+25|0]=d>>>24;F[e+26|0]=c;F[e+27|0]=c>>>8;F[e+28|0]=c>>>16;F[e+29|0]=c>>>24;c=I[1346]|I[1347]<<8|(I[1348]<<16|I[1349]<<24);d=I[1342]|I[1343]<<8|(I[1344]<<16|I[1345]<<24);F[e+16|0]=d;F[e+17|0]=d>>>8;F[e+18|0]=d>>>16;F[e+19|0]=d>>>24;F[e+20|0]=c;F[e+21|0]=c>>>8;F[e+22|0]=c>>>16;F[e+23|0]=c>>>24;c=I[1338]|I[1339]<<8|(I[1340]<<16|I[1341]<<24);d=I[1334]|I[1335]<<8|(I[1336]<<16|I[1337]<<24);F[e+8|0]=d;F[e+9|0]=d>>>8;F[e+10|0]=d>>>16;F[e+11|0]=d>>>24;F[e+12|0]=c;F[e+13|0]=c>>>8;F[e+14|0]=c>>>16;F[e+15|0]=c>>>24;c=I[1330]|I[1331]<<8|(I[1332]<<16|I[1333]<<24);d=I[1326]|I[1327]<<8|(I[1328]<<16|I[1329]<<24);F[e|0]=d;F[e+1|0]=d>>>8;F[e+2|0]=d>>>16;F[e+3|0]=d>>>24;F[e+4|0]=c;F[e+5|0]=c>>>8;F[e+6|0]=c>>>16;F[e+7|0]=c>>>24;e=a+4|0;fi(e,f,b);if(F[f+11|0]<0){Wk(H[f>>2])}a=$k(32);H[f>>2]=a;H[f+4>>2]=29;H[f+8>>2]=-2147483616;F[a+29|0]=0;c=I[1420]|I[1421]<<8|(I[1422]<<16|I[1423]<<24);d=I[1416]|I[1417]<<8|(I[1418]<<16|I[1419]<<24);F[a+21|0]=d;F[a+22|0]=d>>>8;F[a+23|0]=d>>>16;F[a+24|0]=d>>>24;F[a+25|0]=c;F[a+26|0]=c>>>8;F[a+27|0]=c>>>16;F[a+28|0]=c>>>24;c=I[1415]|I[1416]<<8|(I[1417]<<16|I[1418]<<24);d=I[1411]|I[1412]<<8|(I[1413]<<16|I[1414]<<24);F[a+16|0]=d;F[a+17|0]=d>>>8;F[a+18|0]=d>>>16;F[a+19|0]=d>>>24;F[a+20|0]=c;F[a+21|0]=c>>>8;F[a+22|0]=c>>>16;F[a+23|0]=c>>>24;c=I[1407]|I[1408]<<8|(I[1409]<<16|I[1410]<<24);d=I[1403]|I[1404]<<8|(I[1405]<<16|I[1406]<<24);F[a+8|0]=d;F[a+9|0]=d>>>8;F[a+10|0]=d>>>16;F[a+11|0]=d>>>24;F[a+12|0]=c;F[a+13|0]=c>>>8;F[a+14|0]=c>>>16;F[a+15|0]=c>>>24;c=I[1399]|I[1400]<<8|(I[1401]<<16|I[1402]<<24);d=I[1395]|I[1396]<<8|(I[1397]<<16|I[1398]<<24);F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;F[a+4|0]=c;F[a+5|0]=c>>>8;F[a+6|0]=c>>>16;F[a+7|0]=c>>>24;fi(e,f,b);if(F[f+11|0]<0){Wk(H[f>>2])}da=f+16|0} +function Hf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Hf(a,j,i,d,o,q,g,h);a=i;b=l;break g}Hf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}} +function yf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){yf(a,j,i,d,o,q,g,h);a=i;b=l;break g}yf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function vf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){vf(a,j,i,d,o,q,g,h);a=i;b=l;break g}vf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function sf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){sf(a,j,i,d,o,q,g,h);a=i;b=l;break g}sf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function mg(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){mg(a,j,i,d,o,q,g,h);a=i;b=l;break g}mg(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function mf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){mf(a,j,i,d,o,q,g,h);a=i;b=l;break g}mf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function jg(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){jg(a,j,i,d,o,q,g,h);a=i;b=l;break g}jg(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function gg(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){gg(a,j,i,d,o,q,g,h);a=i;b=l;break g}gg(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function dg(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){dg(a,j,i,d,o,q,g,h);a=i;b=l;break g}dg(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function ag(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){ag(a,j,i,d,o,q,g,h);a=i;b=l;break g}ag(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Zf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Zf(a,j,i,d,o,q,g,h);a=i;b=l;break g}Zf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Wf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Wf(a,j,i,d,o,q,g,h);a=i;b=l;break g}Wf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Tf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Tf(a,j,i,d,o,q,g,h);a=i;b=l;break g}Tf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Qf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Qf(a,j,i,d,o,q,g,h);a=i;b=l;break g}Qf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Nf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Nf(a,j,i,d,o,q,g,h);a=i;b=l;break g}Nf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Kf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Kf(a,j,i,d,o,q,g,h);a=i;b=l;break g}Kf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Ef(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Ef(a,j,i,d,o,q,g,h);a=i;b=l;break g}Ef(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Bf(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:{if(!f){break a}while(1){b:{c:{if(!((e|0)<=(h|0)|(f|0)<=(h|0))){if(!e){break a}i=H[d>>2];k=H[i>>2];m=H[i+4>>2]-k>>3;s=H[b>>2];d:{if(m>>>0<=s>>>0){break d}l=k+(s<<3)|0;while(1){i=H[a>>2];if(i>>>0>=m>>>0){break d}if(K[l>>2]>=K[k+(i<<3)>>2]){a=a+4|0;e=e-1|0;if(e){continue}break a}break}if((e|0)<(f|0)){q=(f|0)/2|0;l=(q<<2)+b|0;j=a;i=b-j|0;e:{if(!i){break e}j=H[l>>2];if(j>>>0>=m>>>0){break d}o=i>>2;i=o>>>1|0;p=(i<<2)+a|0;n=H[p>>2];if(n>>>0>=m>>>0){break d}r=p+4|0;p=H[k+(j<<3)>>2];n=p>>>0>2];j=n?a:r;i=n?i:o+(i^-1)|0;if(!i){break e}while(1){o=i>>>1|0;n=(o<<2)+j|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=p>>>0>2];j=n?j:t;i=n?o:(o^-1)+i|0;if(i){continue}break}}o=j-a>>2;break b}if((e|0)==1){H[a>>2]=s;H[b>>2]=i;return}o=(e|0)/2|0;j=(o<<2)+a|0;i=c-b|0;if(!i){l=b;break c}i=i>>2;l=H[j>>2];if(l>>>0>>0){p=k+(l<<3)|0;l=b;while(1){q=i>>>1|0;n=(q<<2)+l|0;r=H[n>>2];if(r>>>0>=m>>>0){break d}t=n+4|0;n=K[k+(r<<3)>>2]>2];l=n?t:l;i=n?(q^-1)+i|0:q;if(i){continue}break}break c}}Sc();X()}of(a,b,c,d,e,f,g);return}q=l-b>>2}f=f-q|0;e=e-o|0;i=l;f:{if((b|0)==(j|0)){break f}i=j;if((b|0)==(l|0)){break f}m=j+4|0;if((m|0)==(b|0)){k=H[j>>2];i=l-b|0;if(i){fk(j,b,i)}i=i+j|0;H[i>>2]=k;break f}if((b+4|0)==(l|0)){b=l-4|0;k=H[b>>2];i=l;b=b-j|0;if(b){i=l-b|0;fk(i,j,b)}H[j>>2]=k;break f}n=l-b>>2;i=n;p=b-j>>2;k=p;if((i|0)==(k|0)){i=H[j>>2];H[j>>2]=s;H[b>>2]=i;i=b;if((m|0)==(i|0)){break f}while(1){k=H[m>>2];H[m>>2]=H[i+4>>2];H[i+4>>2]=k;i=i+4|0;m=m+4|0;if((m|0)!=(b|0)){continue}break}i=b;break f}while(1){b=k;k=i;i=(b|0)%(i|0)|0;if(i){continue}break}if(k){b=(k<<2)+j|0;while(1){b=b-4|0;i=p<<2;m=b+i|0;s=H[b>>2];k=b;while(1){r=k;k=m;H[r>>2]=H[k>>2];m=l-k>>2;m=(m|0)>(p|0)?i+k|0:(p-m<<2)+j|0;if((m|0)!=(b|0)){continue}break}H[k>>2]=s;if((b|0)!=(j|0)){continue}break}}i=(n<<2)+j|0}g:{if((o+q|0)<(e+f|0)){Bf(a,j,i,d,o,q,g,h);a=i;b=l;break g}Bf(i,l,c,d,e,f,g,h);f=q;e=o;c=i;b=j}if(f){continue}break}}}function Cd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;H[a+8>>2]=e;h=a+32|0;f=H[h>>2];g=H[a+36>>2]-f>>2;a:{if(g>>>0>>0){Ha(h,e-g|0);break a}if(e>>>0>=g>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}g=H[b>>2];c:{if((d|0)<2){h=g;break c}j=1;f=d-1|0;o=f&1;d:{if((d|0)==2){h=g;break d}l=f&-2;f=0;h=g;while(1){i=(j<<2)+b|0;m=H[i+4>>2];k=H[i>>2];n=(k|0)<(h|0);h=n?k:h;i=(h|0)>(m|0);h=i?m:h;g=n?g:(g|0)<(k|0)?k:g;g=i?g:(g|0)<(m|0)?m:g;j=j+2|0;f=f+2|0;if((l|0)!=(f|0)){continue}break}}if(!o){break c}i=H[(j<<2)+b>>2];f=(i|0)<(h|0);h=f?i:h;g=f?g:(g|0)<(i|0)?i:g}H[a+16>>2]=g;H[a+12>>2]=h;f=(g>>31)-((h>>31)+(g>>>0>>0)|0)|0;h=g-h|0;if(!f&h>>>0>2147483646|f){break b}h=h+1|0;H[a+20>>2]=h;f=h>>>1|0;H[a+24>>2]=f;H[a+28>>2]=0-f;if(h&1){break b}H[a+24>>2]=f-1}d=d-e|0;i=H[a+8>>2];if(!((d|0)<=0|(i|0)<=0)){n=0-e<<2;while(1){if((i|0)>0){f=d<<2;o=f+c|0;l=b+f|0;f=l+n|0;j=0;while(1){h=H[a+32>>2];g=0;if((i|0)>0){while(1){k=g<<2;m=H[k+f>>2];i=H[a+16>>2];e:{if((m|0)>(i|0)){H[h+k>>2]=i;break e}k=h+k|0;i=H[a+12>>2];if((i|0)>(m|0)){H[k>>2]=i;break e}H[k>>2]=m}g=g+1|0;if((g|0)>2]){continue}break}}g=j<<2;f=g+o|0;g=H[g+l>>2]-H[g+h>>2]|0;H[f>>2]=g;f:{if((g|0)>2]){g=g+H[a+20>>2]|0}else{if((g|0)<=H[a+24>>2]){break f}g=g-H[a+20>>2]|0}H[f>>2]=g}f=h;i=H[a+8>>2];j=j+1|0;if((i|0)>(j|0)){continue}break}}d=d-e|0;if((d|0)>0){continue}break}}d=(e&1073741823)!=(e|0)?-1:e<<2;e=gk($k(d),0,d);if((i|0)>0){j=0;f=e;while(1){h=H[a+32>>2];g=0;if((i|0)>0){while(1){i=g<<2;l=H[i+f>>2];d=H[a+16>>2];g:{if((l|0)>(d|0)){H[h+i>>2]=d;break g}i=h+i|0;d=H[a+12>>2];if((d|0)>(l|0)){H[i>>2]=d;break g}H[i>>2]=l}g=g+1|0;if((g|0)>2]){continue}break}}f=j<<2;d=f+c|0;f=H[b+f>>2]-H[f+h>>2]|0;H[d>>2]=f;h:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break h}f=f-H[a+20>>2]|0}H[d>>2]=f}f=h;i=H[a+8>>2];j=j+1|0;if((i|0)>(j|0)){continue}break}}Wk(e);return 1}function yg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=da-16|0;da=f;H[a+4>>2]=b;H[a+8>>2]=H[b+56>>2];H[a+188>>2]=H[a+184>>2];e=H[b+48>>2];c=$k(32);b=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[c+15|0]=b;F[c+16|0]=b>>>8;F[c+17|0]=b>>>16;F[c+18|0]=b>>>24;b=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[c+8|0]=d;F[c+9|0]=d>>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;F[c+12|0]=b;F[c+13|0]=b>>>8;F[c+14|0]=b>>>16;F[c+15|0]=b>>>24;b=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;F[c+4|0]=b;F[c+5|0]=b>>>8;F[c+6|0]=b>>>16;F[c+7|0]=b>>>24;F[c+19|0]=0;b=H[e+4>>2];a:{if(b){while(1){d=I[b+27|0];e=d<<24>>24<0;d=e?H[b+20>>2]:d;i=d>>>0<19;b:{c:{h=i?d:19;d:{e:{if(h){g=b+16|0;e=e?H[g>>2]:g;g=ik(c,e,h);f:{if(!g){if(d>>>0<=19){break f}break b}if((g|0)<0){break b}}d=ik(e,c,h);if(!d){break e}if((d|0)>=0){break d}break c}if(d>>>0>19){break b}}if(i){break c}}Wk(c);e=H[H[a+4>>2]+48>>2];b=$k(32);H[f>>2]=b;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[b+19|0]=0;c=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;c=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;j=a,k=ki(e,f,0),F[j+288|0]=k;if(F[f+11|0]>=0){break a}Wk(H[f>>2]);break a}b=b+4|0}b=H[b>>2];if(b){continue}break}}Wk(c);if((Kb(H[H[a+4>>2]+48>>2])|0)>=6){F[a+288|0]=1;break a}F[a+288|0]=0}da=f+16|0;return 1}function ah(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=da-16|0;da=f;H[a+4>>2]=b;H[a+8>>2]=H[b+56>>2];H[a+188>>2]=H[a+184>>2];e=H[b+48>>2];c=$k(32);b=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[c+15|0]=b;F[c+16|0]=b>>>8;F[c+17|0]=b>>>16;F[c+18|0]=b>>>24;b=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[c+8|0]=d;F[c+9|0]=d>>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;F[c+12|0]=b;F[c+13|0]=b>>>8;F[c+14|0]=b>>>16;F[c+15|0]=b>>>24;b=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;F[c+4|0]=b;F[c+5|0]=b>>>8;F[c+6|0]=b>>>16;F[c+7|0]=b>>>24;F[c+19|0]=0;b=H[e+4>>2];a:{if(b){while(1){d=I[b+27|0];e=d<<24>>24<0;d=e?H[b+20>>2]:d;i=d>>>0<19;b:{c:{h=i?d:19;d:{e:{if(h){g=b+16|0;e=e?H[g>>2]:g;g=ik(c,e,h);f:{if(!g){if(d>>>0<=19){break f}break b}if((g|0)<0){break b}}d=ik(e,c,h);if(!d){break e}if((d|0)>=0){break d}break c}if(d>>>0>19){break b}}if(i){break c}}Wk(c);e=H[H[a+4>>2]+48>>2];b=$k(32);H[f>>2]=b;H[f+4>>2]=19;H[f+8>>2]=-2147483616;F[b+19|0]=0;c=I[1390]|I[1391]<<8|(I[1392]<<16|I[1393]<<24);F[b+15|0]=c;F[b+16|0]=c>>>8;F[b+17|0]=c>>>16;F[b+18|0]=c>>>24;c=I[1387]|I[1388]<<8|(I[1389]<<16|I[1390]<<24);d=I[1383]|I[1384]<<8|(I[1385]<<16|I[1386]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1379]|I[1380]<<8|(I[1381]<<16|I[1382]<<24);d=I[1375]|I[1376]<<8|(I[1377]<<16|I[1378]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;j=a,k=ki(e,f,0),F[j+352|0]=k;if(F[f+11|0]>=0){break a}Wk(H[f>>2]);break a}b=b+4|0}b=H[b>>2];if(b){continue}break}}Wk(c);if((Kb(H[H[a+4>>2]+48>>2])|0)>=6){F[a+352|0]=1;break a}F[a+352|0]=0}da=f+16|0;return 1}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-32|0;da=c;d=a- -64|0;tb(H[d>>2],b);if(H[d>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);d=H[a+64>>2];if((d|0)>0){while(1){f=d-1|0;ye(c,H[H[a+60>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d>>>0>1;d=f;if(e){continue}break}}ze(c,b);ve(c)}tb(H[a+76>>2],b);if(H[a+76>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);d=H[a+76>>2];if((d|0)>=2){while(1){f=d-2|0;ye(c,H[H[a+72>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-1|0;ye(c,H[H[a+72>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>3;d=f;if(e){continue}break}}ze(c,b);ve(c)}tb(H[a+88>>2],b);if(H[a+88>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);d=H[a+88>>2];if((d|0)>=3){while(1){f=d-3|0;ye(c,H[H[a+84>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-2|0;ye(c,H[H[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;ye(c,H[H[a+84>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>5;d=f;if(e){continue}break}}ze(c,b);ve(c)}tb(H[a+100>>2],b);if(H[a+100>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);d=H[a+100>>2];if((d|0)>=4){while(1){f=d-4|0;ye(c,H[H[a+96>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-3|0;ye(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;ye(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;ye(c,H[H[a+96>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>7;d=f;if(e){continue}break}}ze(c,b);ve(c)}H[c>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}f=c+4|0;ya(b,H[b+4>>2],c,f);d=H[b+20>>2];e=H[b+16>>2];H[c>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c,f)}da=c+32|0;return 1}function Od(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-32|0;da=c;tb(H[a+48>>2],b);if(H[a+48>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);d=H[a+48>>2];if((d|0)>0){while(1){f=d-1|0;ye(c,H[H[a+44>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d>>>0>1;d=f;if(e){continue}break}}ze(c,b);ve(c)}tb(H[a+60>>2],b);if(H[a+60>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);d=H[a+60>>2];if((d|0)>=2){while(1){f=d-2|0;ye(c,H[H[a+56>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-1|0;ye(c,H[H[a+56>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>3;d=f;if(e){continue}break}}ze(c,b);ve(c)}tb(H[a+72>>2],b);if(H[a+72>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);d=H[a+72>>2];if((d|0)>=3){while(1){f=d-3|0;ye(c,H[H[a+68>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-2|0;ye(c,H[H[a+68>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;ye(c,H[H[a+68>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>5;d=f;if(e){continue}break}}ze(c,b);ve(c)}tb(H[a+84>>2],b);if(H[a+84>>2]){H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);d=H[a+84>>2];if((d|0)>=4){while(1){f=d-4|0;ye(c,H[H[a+80>>2]+(f>>>3&536870908)>>2]>>>f&1);e=d-3|0;ye(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-2|0;ye(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d-1|0;ye(c,H[H[a+80>>2]+(e>>>3&536870908)>>2]>>>e&1);e=d>>>0>7;d=f;if(e){continue}break}}ze(c,b);ve(c)}H[c>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}f=c+4|0;ya(b,H[b+4>>2],c,f);d=H[b+20>>2];e=H[b+16>>2];H[c>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c,f)}da=c+32|0;return 1}function ae(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;i=da-32|0;da=i;d=(e&1073741823)!=(e|0)?-1:e<<2;l=gk($k(d),0,d);o=a+8|0;d=H[a+40>>2];g=H[d>>2];a:{h=H[d+4>>2]-g|0;if((h|0)<5){break a}f=h>>>2|0;d=f-1|0;if(d>>>0>2>>>0){q=H[a+36>>2];p=H[a+32>>2];r=e&-2;s=e&1;while(1){t=N(d,e);b:{c:{g=H[(d<<2)+g>>2];if((g|0)==-1){break c}g=H[H[p+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}k=H[q>>2];h=H[p>>2];m=H[k+(H[h+(g<<2)>>2]<<2)>>2];j=g+1|0;j=(j>>>0)%3|0?j:g-2|0;if((j|0)!=-1){j=H[h+(j<<2)>>2]}else{j=-1}d:{e:{if((g>>>0)%3|0){g=g-1|0;break e}g=g+2|0;n=-1;if((g|0)==-1){break d}}n=H[h+(g<<2)>>2]}if((d|0)<=(m|0)){break c}g=H[(j<<2)+k>>2];if((g|0)>=(d|0)){break c}h=H[k+(n<<2)>>2];if((h|0)>=(d|0)){break c}f:{if((e|0)<=0){break f}h=N(e,h);k=N(e,g);m=N(e,m);g=0;n=0;if((e|0)!=1){while(1){H[(g<<2)+l>>2]=(H[(g+h<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2];j=g|1;H[(j<<2)+l>>2]=(H[(h+j<<2)+b>>2]+H[(j+k<<2)+b>>2]|0)-H[(j+m<<2)+b>>2];g=g+2|0;n=n+2|0;if((r|0)!=(n|0)){continue}break}}if(!s){break f}H[(g<<2)+l>>2]=(H[(g+h<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2]}g=H[l>>2];h=H[l+4>>2];break b}h=(N(f-2|0,e)<<2)+b|0;g=H[h>>2];h=H[h+4>>2]}k=t<<2;m=k+b|0;j=H[m+4>>2];H[i+16>>2]=H[m>>2];H[i+20>>2]=j;H[i+8>>2]=g;H[i+12>>2]=h;Ld(i+24|0,o,i+16|0,i+8|0);g=c+k|0;H[g>>2]=H[i+24>>2];H[g+4>>2]=H[i+28>>2];if((f|0)<3){break a}f=d;h=H[a+40>>2];g=H[h>>2];d=d-1|0;if(d>>>0>2]-g>>2>>>0){continue}break}}Sc();X()}if((e|0)>0){gk(l,0,e<<2)}a=H[l>>2];d=H[l+4>>2];e=H[b+4>>2];H[i+16>>2]=H[b>>2];H[i+20>>2]=e;H[i+8>>2]=a;H[i+12>>2]=d;Ld(i+24|0,o,i+16|0,i+8|0);H[c>>2]=H[i+24>>2];H[c+4>>2]=H[i+28>>2];Wk(l);da=i+32|0;return 1}function Ki(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=da+-64|0;da=e;a:{b:{c:{d:{e:{f:{if(!b){break f}f=jk(c);if(f>>>0>=4294967280){break e}g:{h:{if(f>>>0>=11){g=f+16&-16;a=$k(g);H[e+56>>2]=g|-2147483648;H[e+48>>2]=a;H[e+52>>2]=f;break h}F[e+59|0]=f;a=e+48|0;if(!f){break g}}ek(a,c,f)}F[a+f|0]=0;f=jk(d);if(f>>>0>=4294967280){break d}i:{j:{if(f>>>0>=11){g=f+16&-16;a=$k(g);H[e+40>>2]=g|-2147483648;H[e+32>>2]=a;H[e+36>>2]=f;break j}F[e+43|0]=f;a=e+32|0;if(!f){break i}}ek(a,d,f)}F[a+f|0]=0;f=jk(c);if(f>>>0>=4294967280){break c}k:{l:{if(f>>>0>=11){g=f+16&-16;a=$k(g);H[e+24>>2]=g|-2147483648;H[e+16>>2]=a;H[e+20>>2]=f;break l}F[e+27|0]=f;a=e+16|0;if(!f){break k}}ek(a,c,f)}F[a+f|0]=0;c=jk(d);if(c>>>0>=4294967280){break b}m:{n:{if(c>>>0>=11){f=c+16&-16;a=$k(f);H[e+8>>2]=f|-2147483648;H[e>>2]=a;H[e+4>>2]=c;break n}F[e+11|0]=c;a=e;if(!c){break m}}ek(a,d,c)}F[a+c|0]=0;a=da-48|0;da=a;c=Zb(b,e+16|0);if((c|0)!=(b+4|0)){Sj(b,c)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;c=F[e+11|0];ai(a,(c|0)<0?H[e+4>>2]:c&255);c=I[e+11|0];d=c<<24>>24<0;ek(H[a>>2],d?H[e>>2]:e,d?H[e+4>>2]:c);o:{if(F[e+27|0]>=0){H[a+24>>2]=H[e+24>>2];c=H[e+20>>2];H[a+16>>2]=H[e+16>>2];H[a+20>>2]=c;break o}el(a+16|0,H[e+16>>2],H[e+20>>2])}H[a+36>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;ai(a+28|0,H[a+4>>2]-H[a>>2]|0);c=H[a>>2];ek(H[a+28>>2],c,H[a+4>>2]-c|0);c=a+16|0;Tj(a+40|0,b,c,c);c=H[a+28>>2];if(c){H[a+32>>2]=c;Wk(c)}if(F[a+27|0]<0){Wk(H[a+16>>2])}c=H[a>>2];if(c){H[a+4>>2]=c;Wk(c)}da=a+48|0;if(F[e+11|0]<0){Wk(H[e>>2])}if(F[e+27|0]<0){Wk(H[e+16>>2])}if(F[e+43|0]<0){Wk(H[e+32>>2])}if(F[e+59|0]>=0){break f}Wk(H[e+48>>2])}da=e- -64|0;a=(b|0)!=0;break a}se();X()}se();X()}se();X()}se();X()}return a|0}function ze(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=da-32|0;da=g;d=H[a>>2];e=H[d>>2];c=H[d+4>>2];j=+(e>>>0)+ +(c>>>0)*4294967296;c=H[d+12>>2]+c|0;d=H[d+8>>2];e=d+e|0;c=e>>>0>>0?c+1|0:c;d=!(c|e);j=j/(+((d?1:e)>>>0)+ +((d?0:c)>>>0)*4294967296)*256+.5;a:{if(j<4294967296&j>=0){c=~~j>>>0;break a}c=0}c=c>>>0<255?c:255;k=!(c&255)+c|0;F[g+23|0]=k;i=H[a+16>>2];n=H[a+12>>2];H[g+16>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;b:{c:{c=(i-n<<1)- -64|0;if(c){if((c|0)<0){break c}h=$k(c);H[g+8>>2]=h;d=c+h|0;H[g+16>>2]=d;gk(h,0,c);H[g+12>>2]=d}c=H[a+28>>2]-1|0;if((c|0)<0){e=4096;break b}l=0-k|0;o=l&255;p=H[a+24>>2];e=4096;while(1){m=p&1<>>0<=e>>>0){F[f+h|0]=e;f=f+1|0;e=e>>>8|0}q=256-d|0;d=(d<<3)+12800|0;Fl(H[d>>2],0,e,0);e=((m?0:o)+e|0)+N(q,fa+e>>>H[d+4>>2]|0)|0;c=c-1|0;if((c|0)>=0){continue}break}break b}Fa();X()}if((i|0)!=(n|0)){l=0-k|0;o=l&255;while(1){i=i-4|0;p=H[i>>2];c=31;while(1){d=c;m=p&1<>>0<=e>>>0){F[f+h|0]=e;f=f+1|0;e=e>>>8|0}q=256-c|0;c=(c<<3)+12800|0;Fl(H[c>>2],0,e,0);e=((m?0:o)+e|0)+N(q,fa+e>>>H[c+4>>2]|0)|0;c=d-1|0;if(d){continue}break}if((i|0)!=(n|0)){continue}break}}c=e-4096|0;d:{if(c>>>0<=63){F[f+h|0]=c;f=f+1|0;break d}if(c>>>0<=16383){c=f+h|0;d=e+12288|0;F[c|0]=d;F[c+1|0]=d>>>8;f=f+2|0;break d}if(c>>>0>4194303){break d}c=f+h|0;d=e+8384512|0;F[c|0]=d;F[c+2|0]=d>>>16;F[c+1|0]=d>>>8;f=f+3|0}c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],g+23|0,g+24|0)}tb(f,b);c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],h,f+h|0)}H[g+24>>2]=0;H[g+28>>2]=0;we(a,g+24|0);H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=H[a+12>>2];if(h){Wk(h)}da=g+32|0}function Na(a,b,c){var d=O(0),e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=O(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;o=da-16|0;da=o;a:{if(!(H[a+4>>2]!=-1|c-1>>>0>29)){H[a+4>>2]=c;f=F[b+24|0];c=0;H[a+20>>2]=0;H[o+8>>2]=0;H[o>>2]=0;H[o+4>>2]=0;if(f){if((f|0)<0){break a}c=f<<2;m=$k(c);c=gk(m,0,c)+c|0}g=H[a+8>>2];if(g){H[a+12>>2]=g;Wk(g)}H[a+8>>2]=m;H[a+16>>2]=c;H[a+12>>2]=c;c=(f&1073741823)!=(f|0)?-1:f<<2;j=$k(c);c=$k(c);r=H[b+44>>2];e=c;g=H[b+48>>2];c=g;n=H[b>>2];h=H[b+40>>2];s=ek(e,c+H[n>>2]|0,h);ek(m,c+H[n>>2]|0,h);t=ek(j,c+H[n>>2]|0,h);b=H[b+80>>2];b:{if(b>>>0<2){break b}j=b;if(f){e=1;c=0;while(1){p=H[n>>2];b=Fl(e,c,h,r)+g|0;p=ek(s,p+b|0,h);b=0;while(1){q=b<<2;i=q+m|0;k=q+p|0;d=L[k>>2];if(d>2]){L[i>>2]=d;d=L[k>>2]}k=q+t|0;if(L[k>>2]>2]=d}b=b+1|0;if((f|0)!=(b|0)){continue}break}m=H[a+8>>2];b=c;c=e+1|0;b=c?b:b+1|0;e=c;c=b;if((j|0)!=(e|0)|b){continue}break}break b}e=1;c=0;i=j-1|0;j=0-!j|0;u=i&1;if((b|0)!=2){q=i&-2;while(1){i=H[n>>2];b=Fl(e,c,h,r)+g|0;v=ek(s,i+b|0,h);w=H[n>>2];b=c;i=e+1|0;b=i?b:b+1|0;b=Fl(h,r,i,b)+g|0;ek(v,w+b|0,h);b=e+2|0;c=b>>>0<2?c+1|0:c;e=b;b=p+2|0;k=b>>>0<2?k+1|0:k;p=b;if((q|0)!=(b|0)|(j|0)!=(k|0)){continue}break}}if(!(u|x)){break b}j=H[n>>2];b=Fl(e,c,h,r)+g|0;ek(s,j+b|0,h)}c=1;c:{d:{e:{if((f|0)>0){d=L[m>>2];if(d!=d|O(P(d))==O(Z)){break c}b=0;break e}d=L[a+20>>2];c=0;break d}while(1){l=L[(b<<2)+t>>2];if(l!=l|O(P(l))==O(Z)){break c}l=O(l-d);d=L[a+20>>2];if(l>d){L[a+20>>2]=l;d=l}b=b+1|0;c=(f|0)>(b|0);if((b|0)==(f|0)){break d}d=L[(b<<2)+m>>2];if(d!=d){break c}if(O(P(d))!=O(Z)){continue}break}break c}if(d!=O(0)){break c}H[a+20>>2]=1065353216}Wk(s);Wk(t);g=c^1}da=o+16|0;return g&1}Fa();X()}function Kd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=da-32|0;da=h;d=(e&1073741823)!=(e|0)?-1:e<<2;l=gk($k(d),0,d);p=a+8|0;d=H[a+40>>2];g=H[d>>2];a:{n=H[d+4>>2]-g|0;if((n|0)<5){break a}f=n>>>2|0;d=f-1|0;if(d>>>0>2>>>0){q=H[a+36>>2];n=H[a+32>>2];r=e&-2;s=e&1;while(1){t=N(d,e);b:{c:{g=H[(d<<2)+g>>2];if((g|0)==-1|H[H[n>>2]+(g>>>3&536870908)>>2]>>>g&1){break c}g=H[H[H[n+64>>2]+12>>2]+(g<<2)>>2];if((g|0)==-1){break c}k=H[q>>2];i=H[n+28>>2];m=H[k+(H[i+(g<<2)>>2]<<2)>>2];if((m|0)>=(d|0)){break c}j=g+1|0;j=H[k+(H[i+(((j>>>0)%3|0?j:g-2|0)<<2)>>2]<<2)>>2];if((j|0)>=(d|0)){break c}g=H[k+(H[i+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(d|0)){break c}d:{if((e|0)<=0){break d}i=N(e,g);k=N(e,j);m=N(e,m);g=0;o=0;if((e|0)!=1){while(1){H[(g<<2)+l>>2]=(H[(g+i<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2];j=g|1;H[(j<<2)+l>>2]=(H[(i+j<<2)+b>>2]+H[(j+k<<2)+b>>2]|0)-H[(j+m<<2)+b>>2];g=g+2|0;o=o+2|0;if((r|0)!=(o|0)){continue}break}}if(!s){break d}H[(g<<2)+l>>2]=(H[(g+i<<2)+b>>2]+H[(g+k<<2)+b>>2]|0)-H[(g+m<<2)+b>>2]}g=H[l>>2];i=H[l+4>>2];break b}i=(N(f-2|0,e)<<2)+b|0;g=H[i>>2];i=H[i+4>>2]}k=t<<2;m=k+b|0;j=H[m+4>>2];H[h+16>>2]=H[m>>2];H[h+20>>2]=j;H[h+8>>2]=g;H[h+12>>2]=i;Ld(h+24|0,p,h+16|0,h+8|0);g=c+k|0;H[g>>2]=H[h+24>>2];H[g+4>>2]=H[h+28>>2];if((f|0)<3){break a}f=d;i=H[a+40>>2];g=H[i>>2];d=d-1|0;if(d>>>0>2]-g>>2>>>0){continue}break}}Sc();X()}if((e|0)>0){gk(l,0,e<<2)}a=H[l>>2];d=H[l+4>>2];e=H[b+4>>2];H[h+16>>2]=H[b>>2];H[h+20>>2]=e;H[h+8>>2]=a;H[h+12>>2]=d;Ld(h+24|0,p,h+16|0,h+8|0);H[c>>2]=H[h+24>>2];H[c+4>>2]=H[h+28>>2];Wk(l);da=h+32|0;return 1}function Yj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=da-16|0;da=k;H[k+8>>2]=c;e=H[a+12>>2];d=H[a+8>>2];f=e-d>>2;a:{if((f|0)>(b|0)){break a}h=b+1|0;if(h>>>0>f>>>0){f=h-f|0;g=H[a+16>>2];d=H[a+12>>2];if(f>>>0<=g-d>>2>>>0){if(f){e=d;d=f<<2;d=gk(e,0,d)+d|0}H[a+12>>2]=d;break a}b:{c:{d:{h=H[a+8>>2];i=d-h>>2;e=i+f|0;if(e>>>0<1073741824){g=g-h|0;l=g>>1;g=g>>>0<2147483644?e>>>0>l>>>0?e:l:1073741823;if(g){if(g>>>0>=1073741824){break d}j=$k(g<<2)}e=(i<<2)+j|0;i=f<<2;f=gk(e,0,i);i=f+i|0;g=(g<<2)+j|0;if((d|0)==(h|0)){break c}while(1){d=d-4|0;f=H[d>>2];H[d>>2]=0;e=e-4|0;H[e>>2]=f;if((d|0)!=(h|0)){continue}break}H[a+16>>2]=g;f=H[a+12>>2];H[a+12>>2]=i;d=H[a+8>>2];H[a+8>>2]=e;if((d|0)==(f|0)){break b}while(1){f=f-4|0;e=H[f>>2];H[f>>2]=0;if(e){Fb(e)}if((d|0)!=(f|0)){continue}break}break b}Fa();X()}Ua(1604);X()}H[a+16>>2]=g;H[a+12>>2]=i;H[a+8>>2]=f}if(d){Wk(d)}break a}if(f>>>0<=h>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e-4|0;c=H[e>>2];H[e>>2]=0;if(c){Fb(c)}if((d|0)!=(e|0)){continue}break}c=H[k+8>>2]}H[a+12>>2]=d}e:{f:{d=H[c+56>>2];g:{if((d|0)>4){break g}e=N(d,12)+a|0;d=H[e+24>>2];if((d|0)!=H[e+28>>2]){H[d>>2]=b;H[e+24>>2]=d+4;break g}h=H[e+20>>2];f=d-h|0;j=f>>2;d=j+1|0;if(d>>>0>=1073741824){break f}g=f>>1;g=f>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(g){if(g>>>0>=1073741824){break e}d=$k(g<<2)}else{d=0}j=d+(j<<2)|0;H[j>>2]=b;if((f|0)>0){ek(d,h,f)}H[e+20>>2]=d;H[e+24>>2]=j+4;H[e+28>>2]=d+(g<<2);if(!h){break g}Wk(h)}H[c+60>>2]=b;a=H[a+8>>2];H[k+8>>2]=0;b=a+(b<<2)|0;a=H[b>>2];H[b>>2]=c;if(a){Fb(a)}a=H[k+8>>2];H[k+8>>2]=0;if(a){Fb(a)}da=k+16|0;return}Fa();X()}Ua(1604);X()}function mb(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=O(0);j=H[c>>2];g=j^318;a:{b:{f=H[b+4>>2];if(!f){break b}h=Il(f);c:{if(h>>>0>=2){e=g;if(f>>>0<=e>>>0){e=(g>>>0)%(f>>>0)|0}c=H[H[b>>2]+(e<<2)>>2];if(!c){break b}if(h>>>0<=1){break c}while(1){c=H[c>>2];if(!c){break b}h=H[c+4>>2];if((h|0)!=(g|0)){if(f>>>0<=h>>>0){h=(h>>>0)%(f>>>0)|0}if((e|0)!=(h|0)){break b}}if(H[c+8>>2]!=(j|0)){continue}break}b=0;break a}e=f-1&g;c=H[H[b>>2]+(e<<2)>>2];if(!c){break b}}h=f-1|0;while(1){c=H[c>>2];if(!c){break b}k=H[c+4>>2];if((k|0)!=(g|0)&(h&k)!=(e|0)){break b}if(H[c+8>>2]!=(j|0)){continue}break}b=0;break a}c=$k(16);H[c+8>>2]=H[d>>2];d=H[d+4>>2];H[c+4>>2]=g;H[c+12>>2]=d;H[c>>2]=0;i=O(H[b+12>>2]+1>>>0);l=L[b+16>>2];d:{if(i>O(l*O(f>>>0))?0:f){break d}h=(f-1&f)!=0|f>>>0<3|f<<1;d=2;i=O(U(O(i/l)));e:{if(i=O(0)){e=~~i>>>0;break e}e=0}e=e>>>0>h>>>0?e:h;f:{if((e|0)==1){break f}if(!(e&e-1)){d=e;break f}d=Rk(e);f=H[b+4>>2]}g:{if(d>>>0<=f>>>0){if(d>>>0>=f>>>0){break g}h=f>>>0<3;i=O(U(O(O(K[b+12>>2])/L[b+16>>2])));h:{if(i=O(0)){e=~~i>>>0;break h}e=0}i:{j:{if(h){break j}if(Il(f)>>>0>1){break j}e=e>>>0<2?e:1<<32-Q(e-1|0);break i}e=Rk(e)}d=d>>>0>>0?e:d;if(f>>>0<=d>>>0){break g}}ob(b,d)}f=H[b+4>>2];d=f-1|0;if(!(d&f)){e=d&g;break d}if(f>>>0>g>>>0){e=g;break d}e=(g>>>0)%(f>>>0)|0}g=H[b>>2]+(e<<2)|0;d=H[g>>2];k:{if(!d){H[c>>2]=H[b+8>>2];H[b+8>>2]=c;H[g>>2]=b+8;d=H[c>>2];if(!d){break k}d=H[d+4>>2];g=f-1|0;l:{if(!(g&f)){d=d&g;break l}if(d>>>0>>0){break l}d=(d>>>0)%(f>>>0)|0}H[H[b>>2]+(d<<2)>>2]=c;break k}H[c>>2]=H[d>>2];H[d>>2]=c}H[b+12>>2]=H[b+12>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function Yg(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=O(0);h=H[c>>2];a:{b:{e=H[b+4>>2];if(!e){break b}g=Il(e);c:{if(g>>>0>=2){f=h;if(f>>>0>=e>>>0){f=(h>>>0)%(e>>>0)|0}c=H[H[b>>2]+(f<<2)>>2];if(!c){break b}if(g>>>0<=1){break c}while(1){c=H[c>>2];if(!c){break b}g=H[c+4>>2];if((g|0)!=(h|0)){if(e>>>0<=g>>>0){g=(g>>>0)%(e>>>0)|0}if((f|0)!=(g|0)){break b}}if(H[c+8>>2]!=(h|0)){continue}break}b=0;break a}f=e-1&h;c=H[H[b>>2]+(f<<2)>>2];if(!c){break b}}g=e-1|0;while(1){c=H[c>>2];if(!c){break b}j=H[c+4>>2];if((j|0)!=(h|0)&(g&j)!=(f|0)){break b}if(H[c+8>>2]!=(h|0)){continue}break}b=0;break a}c=$k(16);d=H[H[d>>2]>>2];H[c+12>>2]=0;H[c+8>>2]=d;H[c+4>>2]=h;H[c>>2]=0;k=O(H[b+12>>2]+1>>>0);i=L[b+16>>2];d:{if(k>O(i*O(e>>>0))?0:e){break d}g=(e-1&e)!=0|e>>>0<3|e<<1;f=2;i=O(U(O(k/i)));e:{if(i=O(0)){d=~~i>>>0;break e}d=0}d=d>>>0>g>>>0?d:g;f:{if((d|0)==1){break f}if(!(d&d-1)){f=d;break f}f=Rk(d);e=H[b+4>>2]}g:{if(e>>>0>=f>>>0){if(e>>>0<=f>>>0){break g}g=e>>>0<3;i=O(U(O(O(K[b+12>>2])/L[b+16>>2])));h:{if(i=O(0)){d=~~i>>>0;break h}d=0}i:{j:{if(g){break j}if(Il(e)>>>0>1){break j}d=d>>>0<2?d:1<<32-Q(d-1|0);break i}d=Rk(d)}f=d>>>0>f>>>0?d:f;if(f>>>0>=e>>>0){break g}}ob(b,f)}e=H[b+4>>2];d=e-1|0;if(!(d&e)){f=d&h;break d}if(e>>>0>h>>>0){f=h;break d}f=(h>>>0)%(e>>>0)|0}f=H[b>>2]+(f<<2)|0;d=H[f>>2];k:{if(!d){H[c>>2]=H[b+8>>2];H[b+8>>2]=c;H[f>>2]=b+8;d=H[c>>2];if(!d){break k}d=H[d+4>>2];f=e-1|0;l:{if(!(f&e)){d=d&f;break l}if(d>>>0>>0){break l}d=(d>>>0)%(e>>>0)|0}H[H[b>>2]+(d<<2)>>2]=c;break k}H[c>>2]=H[d>>2];H[d>>2]=c}H[b+12>>2]=H[b+12>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function wd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;H[a+8>>2]=e;H[a- -64>>2]=f;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ha(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;j=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;g=0;d=f;while(1){h=(i<<2)+b|0;k=H[h+4>>2];l=H[h>>2];o=(l|0)<(d|0);d=o?l:d;h=(d|0)>(k|0);d=h?k:d;f=o?f:(f|0)<(l|0)?l:f;f=h?f:(f|0)<(k|0)?k:f;i=i+2|0;g=g+2|0;if((n|0)!=(g|0)){continue}break}}if(!j){break c}h=H[(i<<2)+b>>2];g=(h|0)<(d|0);d=g?h:d;f=g?f:(f|0)<(h|0)?h:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}f=H[a+56>>2];d=H[f>>2];e:{f=H[f+4>>2]-d|0;if((f|0)<=0){break e}n=f>>>2|0;i=n-1|0;if(i>>>0>2>>>0){k=a+60|0;h=a+68|0;while(1){xd(k,H[(i<<2)+d>>2],b,i);d=H[a+8>>2];if((d|0)>0){f=N(e,i)<<2;l=f+c|0;o=b+f|0;p=0;g=h;while(1){j=H[a+32>>2];f=0;if((d|0)>0){while(1){m=f<<2;q=H[m+g>>2];d=H[a+16>>2];f:{if((q|0)>(d|0)){H[j+m>>2]=d;break f}m=j+m|0;d=H[a+12>>2];if((d|0)>(q|0)){H[m>>2]=d;break f}H[m>>2]=q}f=f+1|0;if((f|0)>2]){continue}break}}f=p<<2;d=f+l|0;f=H[f+o>>2]-H[f+j>>2]|0;H[d>>2]=f;g:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break g}f=f-H[a+20>>2]|0}H[d>>2]=f}g=j;d=H[a+8>>2];p=p+1|0;if((d|0)>(p|0)){continue}break}}if((n|0)<2){break e}n=i;f=H[a+56>>2];d=H[f>>2];i=i-1|0;if(i>>>0>2]-d>>2>>>0){continue}break}}Sc();X()}return 1}function dd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;H[a+8>>2]=e;H[a- -64>>2]=f;g=a+32|0;f=H[g>>2];h=H[a+36>>2]-f>>2;a:{if(h>>>0>>0){Ha(g,e-h|0);break a}if(e>>>0>=h>>>0){break a}H[a+36>>2]=f+(e<<2)}b:{if(!d){break b}f=H[b>>2];c:{if((d|0)<2){d=f;break c}i=1;g=d-1|0;j=g&1;d:{if((d|0)==2){d=f;break d}n=g&-2;g=0;d=f;while(1){h=(i<<2)+b|0;k=H[h+4>>2];l=H[h>>2];o=(l|0)<(d|0);d=o?l:d;h=(d|0)>(k|0);d=h?k:d;f=o?f:(f|0)<(l|0)?l:f;f=h?f:(f|0)<(k|0)?k:f;i=i+2|0;g=g+2|0;if((n|0)!=(g|0)){continue}break}}if(!j){break c}h=H[(i<<2)+b>>2];g=(h|0)<(d|0);d=g?h:d;f=g?f:(f|0)<(h|0)?h:f}H[a+16>>2]=f;H[a+12>>2]=d;g=(f>>31)-((d>>31)+(d>>>0>f>>>0)|0)|0;d=f-d|0;if(!g&d>>>0>2147483646|g){break b}f=d+1|0;H[a+20>>2]=f;d=f>>>1|0;H[a+24>>2]=d;H[a+28>>2]=0-d;if(f&1){break b}H[a+24>>2]=d-1}f=H[a+56>>2];d=H[f>>2];e:{f=H[f+4>>2]-d|0;if((f|0)<=0){break e}n=f>>>2|0;i=n-1|0;if(i>>>0>2>>>0){k=a+60|0;h=a+68|0;while(1){ed(k,H[(i<<2)+d>>2],b,i);d=H[a+8>>2];if((d|0)>0){f=N(e,i)<<2;l=f+c|0;o=b+f|0;p=0;g=h;while(1){j=H[a+32>>2];f=0;if((d|0)>0){while(1){m=f<<2;q=H[m+g>>2];d=H[a+16>>2];f:{if((q|0)>(d|0)){H[j+m>>2]=d;break f}m=j+m|0;d=H[a+12>>2];if((d|0)>(q|0)){H[m>>2]=d;break f}H[m>>2]=q}f=f+1|0;if((f|0)>2]){continue}break}}f=p<<2;d=f+l|0;f=H[f+o>>2]-H[f+j>>2]|0;H[d>>2]=f;g:{if((f|0)>2]){f=f+H[a+20>>2]|0}else{if((f|0)<=H[a+24>>2]){break g}f=f-H[a+20>>2]|0}H[d>>2]=f}g=j;d=H[a+8>>2];p=p+1|0;if((d|0)>(p|0)){continue}break}}if((n|0)<2){break e}n=i;f=H[a+56>>2];d=H[f>>2];i=i-1|0;if(i>>>0>2]-d>>2>>>0){continue}break}}Sc();X()}return 1}function Ae(a){var b=0,c=0,d=0,e=0;e=da-16|0;da=e;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;b=a+16|0;H[b>>2]=0;H[b+4>>2]=0;H[a+12>>2]=b;a=a+24|0;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;b=$k(32);H[e>>2]=b;H[e+4>>2]=20;H[e+8>>2]=-2147483616;F[b+20|0]=0;c=I[1471]|I[1472]<<8|(I[1473]<<16|I[1474]<<24);F[b+16|0]=c;F[b+17|0]=c>>>8;F[b+18|0]=c>>>16;F[b+19|0]=c>>>24;c=I[1467]|I[1468]<<8|(I[1469]<<16|I[1470]<<24);d=I[1463]|I[1464]<<8|(I[1465]<<16|I[1466]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1459]|I[1460]<<8|(I[1461]<<16|I[1462]<<24);d=I[1455]|I[1456]<<8|(I[1457]<<16|I[1458]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;fi(a,e,1);if(F[e+11|0]<0){Wk(H[e>>2])}b=$k(32);H[e>>2]=b;H[e+4>>2]=22;H[e+8>>2]=-2147483616;F[b+22|0]=0;c=I[1450]|I[1451]<<8|(I[1452]<<16|I[1453]<<24);d=I[1446]|I[1447]<<8|(I[1448]<<16|I[1449]<<24);F[b+14|0]=d;F[b+15|0]=d>>>8;F[b+16|0]=d>>>16;F[b+17|0]=d>>>24;F[b+18|0]=c;F[b+19|0]=c>>>8;F[b+20|0]=c>>>16;F[b+21|0]=c>>>24;c=I[1444]|I[1445]<<8|(I[1446]<<16|I[1447]<<24);d=I[1440]|I[1441]<<8|(I[1442]<<16|I[1443]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1436]|I[1437]<<8|(I[1438]<<16|I[1439]<<24);d=I[1432]|I[1433]<<8|(I[1434]<<16|I[1435]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;fi(a,e,1);if(F[e+11|0]<0){Wk(H[e>>2])}da=e+16|0}function Dg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=da-112|0;da=c;d=$k(120);i=H[a+8>>2];H[d+12>>2]=0;H[d+16>>2]=0;H[d>>2]=11240;H[d+4>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+8>>2]=11452;f=d- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[d+72>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+88>>2]=0;H[d+116>>2]=0;H[d+112>>2]=b;H[d+108>>2]=i;H[d+104>>2]=0;H[d+96>>2]=0;H[d+100>>2]=0;f=H[a+12>>2];H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;g=c+32|0;H[g>>2]=0;H[g+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;e=c- -64|0;H[e>>2]=0;H[e+4>>2]=0;H[c+72>>2]=0;H[c+76>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+88>>2]=0;H[c+104>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+8>>2]=11452;H[c+96>>2]=0;H[c+100>>2]=0;H[c+12>>2]=f;e=H[f>>2];h=H[f+4>>2];F[c+111|0]=0;j=g;g=c+111|0;Eg(j,(h-e>>2>>>0)/3|0,g);e=H[c+12>>2];h=H[e+28>>2];e=H[e+24>>2];F[c+111|0]=0;Eg(c+44|0,h-e>>2,g);H[c+28>>2]=d;H[c+24>>2]=i;H[c+20>>2]=b;H[c+16>>2]=f;H[d+116>>2]=a+72;b=d+8|0;a=c+8|0;Fg(b,a);a:{if((a|0)==(b|0)){H[d+92>>2]=H[a+84>>2];break a}Gg(d+56|0,H[a+48>>2],H[a+52>>2]);Gg(d+68|0,H[a+60>>2],H[a- -64>>2]);Gg(d+80|0,H[a+72>>2],H[a+76>>2]);H[d+92>>2]=H[a+84>>2];Ma(d+96|0,H[a+88>>2],H[a+92>>2])}H[c+8>>2]=11452;a=H[c+96>>2];if(a){H[c+100>>2]=a;Wk(a)}a=H[c+80>>2];if(a){H[c+84>>2]=a;Wk(a)}a=H[c+68>>2];if(a){H[c+72>>2]=a;Wk(a)}a=H[c+56>>2];if(a){H[c+60>>2]=a;Wk(a)}H[c+8>>2]=11688;a=H[c+44>>2];if(a){Wk(a)}a=H[c+32>>2];if(a){Wk(a)}da=c+112|0;return d}function Bj(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=H[a+8>>2];g=H[a+4>>2];if((e-g|0)/12>>>0>=b>>>0){a:{if(!b){break a}d=g;e=N(b,12)-12|0;f=((e>>>0)/12|0)+1&3;if(f){while(1){j=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=j;H[d+8>>2]=H[c+8>>2];d=d+12|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}g=N(b,12)+g|0;if(e>>>0<36){break a}while(1){b=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=b;H[d+8>>2]=H[c+8>>2];H[d+20>>2]=H[c+8>>2];b=H[c+4>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=b;H[d+32>>2]=H[c+8>>2];b=H[c+4>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=b;b=H[c+4>>2];H[d+36>>2]=H[c>>2];H[d+40>>2]=b;H[d+44>>2]=H[c+8>>2];d=d+48|0;if((g|0)!=(d|0)){continue}break}}H[a+4>>2]=g;return}b:{f=H[a>>2];i=(g-f|0)/12|0;d=i+b|0;if(d>>>0<357913942){e=(e-f|0)/12|0;f=e<<1;f=e>>>0<178956970?d>>>0>f>>>0?d:f:357913941;if(f){if(f>>>0>=357913942){break b}j=$k(N(f,12))}e=N(i,12)+j|0;d=e;b=N(b,12);i=b-12|0;k=((i>>>0)/12|0)+1&3;if(k){d=e;while(1){l=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=l;H[d+8>>2]=H[c+8>>2];d=d+12|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}h=b+e|0;if(i>>>0>=36){while(1){b=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=b;H[d+8>>2]=H[c+8>>2];H[d+20>>2]=H[c+8>>2];b=H[c+4>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=b;H[d+32>>2]=H[c+8>>2];b=H[c+4>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=b;b=H[c+4>>2];H[d+36>>2]=H[c>>2];H[d+40>>2]=b;H[d+44>>2]=H[c+8>>2];d=d+48|0;if((h|0)!=(d|0)){continue}break}}b=H[a>>2];c=g-b|0;d=e+N((c|0)/-12|0,12)|0;if((c|0)>0){ek(d,b,c)}H[a+8>>2]=N(f,12)+j;H[a+4>>2]=h;H[a>>2]=d;if(b){Wk(b)}return}Fa();X()}Ua(1604);X()}function Se(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{b:{c:{d:{e:{l=a+4|0;f:{if((l|0)==(b|0)){break f}f=I[b+27|0];h=f<<24>>24<0;i=I[e+11|0];n=i<<24>>24;g=(n|0)<0;f=h?H[b+20>>2]:f;i=g?H[e+4>>2]:i;j=f>>>0>>0;k=j?f:i;if(k){g=g?H[e>>2]:e;m=b+16|0;h=h?H[m>>2]:m;m=ik(g,h,k);if(!m){if(f>>>0>i>>>0){break f}break e}if((m|0)>=0){break e}break f}if(f>>>0<=i>>>0){break d}}h=H[b>>2];d=b;g:{h:{if(H[a>>2]==(b|0)){break h}i:{if(h){f=h;while(1){d=f;f=H[f+4>>2];if(f){continue}break}break i}d=b+8|0;if(H[H[b+8>>2]>>2]==(b|0)){while(1){f=H[d>>2];d=f+8|0;if((f|0)==H[H[f+8>>2]>>2]){continue}break}}d=H[d>>2]}g=I[e+11|0];f=g<<24>>24<0;j=I[d+27|0];i=j<<24>>24<0;j:{g=f?H[e+4>>2]:g;j=i?H[d+20>>2]:j;k=g>>>0>>0?g:j;if(k){l=d+16|0;f=ik(i?H[l>>2]:l,f?H[e>>2]:e,k);if(f){break j}}if(g>>>0>j>>>0){break h}break g}if((f|0)>=0){break g}}if(!h){H[c>>2]=b;return b}H[c>>2]=d;return d+4|0}return Te(a,c,e)}f=ik(h,g,k);if(f){break c}}if(j){break b}break a}if((f|0)>=0){break a}}h=H[b+4>>2];k:{if(h){f=h;while(1){d=f;f=H[f>>2];if(f){continue}break}break k}d=H[b+8>>2];if(H[d>>2]==(b|0)){break k}f=b+8|0;while(1){g=H[f>>2];f=g+8|0;d=H[g+8>>2];if((g|0)!=H[d>>2]){continue}break}}l:{m:{if((d|0)==(l|0)){break m}g=I[d+27|0];f=g<<24>>24<0;n:{g=f?H[d+20>>2]:g;j=g>>>0>>0?g:i;if(j){k=d+16|0;f=ik((n|0)<0?H[e>>2]:e,f?H[k>>2]:k,j);if(f){break n}}if(g>>>0>i>>>0){break m}break l}if((f|0)>=0){break l}}if(!h){H[c>>2]=b;return b+4|0}H[c>>2]=d;return d}return Te(a,c,e)}H[c>>2]=b;H[d>>2]=b;return d}function $j(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}d=$k(b<<2);e=H[a>>2];H[a>>2]=d;if(e){Wk(e)}H[a+4>>2]=b;if(b-1>>>0>=3){f=b&-4;e=0;while(1){d=c<<2;H[d+H[a>>2]>>2]=0;H[H[a>>2]+(d|4)>>2]=0;H[H[a>>2]+(d|8)>>2]=0;H[H[a>>2]+(d|12)>>2]=0;c=c+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=b&3;if(e){while(1){H[H[a>>2]+(c<<2)>>2]=0;c=c+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}}f=H[a+8>>2];if(!f){break b}e=a+8|0;g=H[f+4>>2];d=Il(b);c:{if(d>>>0<=1){g=b-1&g;break c}if(b>>>0>g>>>0){break c}g=(g>>>0)%(b>>>0)|0}H[H[a>>2]+(g<<2)>>2]=e;e=H[f>>2];if(!e){break b}q=b-1|0;r=d>>>0>1;while(1){c=H[e+4>>2];d:{if(!r){c=c&q;break d}if(b>>>0>c>>>0){break d}c=(c>>>0)%(b>>>0)|0}e:{if((c|0)==(g|0)){f=e;break e}f:{g:{k=c<<2;d=k+H[a>>2]|0;if(H[d>>2]){j=0;c=H[e>>2];if(!c){d=e;break f}d=H[a+24>>2];m=H[d+8>>2];d=H[d+12>>2]-m|0;if((d|0)<=0){break g}l=d>>2;s=(l|0)>1?l:1;n=H[e+8>>2];d=e;while(1){j=c;o=H[c+8>>2];c=0;p=1;while(1){i=o;h=H[(c<<2)+m>>2];if(I[h+84|0]){h=n}else{h=H[h+68>>2];i=H[h+(o<<2)>>2];h=H[h+(n<<2)>>2]}if((h|0)==(i|0)){c=c+1|0;p=(l|0)>(c|0);if((c|0)!=(s|0)){continue}}break}if(p){break f}d=j;c=H[d>>2];if(c){continue}break}j=0;break f}H[d>>2]=f;f=e;g=c;break e}while(1){d=c;c=H[c>>2];if(c){continue}break}}H[f>>2]=j;H[d>>2]=H[H[H[a>>2]+k>>2]>>2];H[H[H[a>>2]+k>>2]>>2]=e}e=H[f>>2];if(e){continue}break}break b}b=H[a>>2];H[a>>2]=0;if(b){Wk(b)}H[a+4>>2]=0}return}Ua(1604);X()}function Hb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=da-32|0;da=g;n=a+4|0;a=Zb(a,b);a:{if((n|0)==(a|0)){break a}b:{if(F[a+39|0]>=0){H[g+24>>2]=H[a+36>>2];b=H[a+32>>2];H[g+16>>2]=H[a+28>>2];H[g+20>>2]=b;break b}el(g+16|0,H[a+28>>2],H[a+32>>2])}b=I[g+27|0];a=b<<24>>24;if(!(!((a|0)<0?H[g+20>>2]:b)|(c|0)<=0)){b=0;a=(a|0)<0?H[g+16>>2]:g+16|0;while(1){c:{m=da-16|0;da=m;sk(m,a,g+12|0,0);h=H[m>>2];l=H[m+4>>2];i=da-32|0;da=i;o=H[m+12>>2];j=o&2147483647;f=j;e=f-1065418752|0;k=f-1082064896|0;j=H[m+8>>2];d:{if((e|0)==(k|0)&j>>>0>>0|e>>>0>>0){f=(o&33554431)<<7|j>>>25;e=0;n=e;k=j&33554431;if(!(!e&(k|0)==16777216?!(h|l):!e&k>>>0<16777216)){e=f+1073741825|0;break d}e=f+1073741824|0;if(k^16777216|h|(l|n)){break d}e=(f&1)+e|0;break d}if(!(!j&(f|0)==2147418112?!(h|l):f>>>0<2147418112)){e=((o&33554431)<<7|j>>>25)&4194303|2143289344;break d}e=2139095040;if(f>>>0>1082064895){break d}e=0;f=f>>>16|0;if(f>>>0<16145){break d}e=o&65535|65536;Fk(i+16|0,h,l,j,e,f-16129|0);Mk(i,h,l,j,e,16257-f|0);h=H[i+8>>2];e=(H[i+12>>2]&33554431)<<7|h>>>25;k=H[i>>2]|(H[i+16>>2]|H[i+24>>2]|(H[i+20>>2]|H[i+28>>2]))!=0;l=H[i+4>>2];f=0;h=h&33554431;if(!(!f&(h|0)==16777216?!(k|l):!f&h>>>0<16777216)){e=e+1|0;break d}if(h^16777216|k|(f|l)){break d}e=(e&1)+e|0}da=i+32|0;da=m+16|0;n=a;a=H[g+12>>2];if((n|0)==(a|0)){break c}H[(b<<2)+d>>2]=o&-2147483648|e;b=b+1|0;if((c|0)!=(b|0)){continue}}break}a=I[g+27|0]}if(a<<24>>24>=0){break a}Wk(H[g+16>>2])}da=g+32|0}function ya(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=d-c|0;if((h|0)<=0){return}a:{f=H[a+8>>2];i=H[a+4>>2];if((h|0)<=(f-i|0)){j=i-b|0;if((j|0)>=(h|0)){g=i;f=d;break a}g=i;f=c+j|0;if((f|0)!=(d|0)){e=f;while(1){F[g|0]=I[e|0];g=g+1|0;e=e+1|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=g;if((j|0)>0){break a}return}e=H[a>>2];d=h+(i-e|0)|0;if((d|0)>=0){g=b-e|0;f=f-e|0;j=f<<1;f=f>>>0<1073741823?d>>>0>j>>>0?d:j:2147483647;if(f){d=$k(f)}else{d=0}c=ek(g+d|0,c,h);if((g|0)>0){ek(d,e,g)}c=c+h|0;if((b|0)!=(i|0)){g=(b^-1)+i|0;h=i-b&7;if(h){e=0;while(1){F[c|0]=I[b|0];c=c+1|0;b=b+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if(g>>>0>=7){while(1){F[c|0]=I[b|0];F[c+1|0]=I[b+1|0];F[c+2|0]=I[b+2|0];F[c+3|0]=I[b+3|0];F[c+4|0]=I[b+4|0];F[c+5|0]=I[b+5|0];F[c+6|0]=I[b+6|0];F[c+7|0]=I[b+7|0];c=c+8|0;b=b+8|0;if((i|0)!=(b|0)){continue}break}}e=H[a>>2]}H[a+8>>2]=d+f;H[a+4>>2]=c;H[a>>2]=d;if(e){Wk(e)}return}Fa();X()}e=g;d=e-h|0;if(i>>>0>d>>>0){while(1){F[e|0]=I[d|0];e=e+1|0;d=d+1|0;if(i>>>0>d>>>0){continue}break}}H[a+4>>2]=e;a=g-(b+h|0)|0;if(a){fk(g-a|0,b,a)}if((c|0)==(f|0)){return}a=(c^-1)+f|0;g=f-c&7;b:{if(!g){e=b;break b}d=0;e=b;while(1){F[e|0]=I[c|0];e=e+1|0;c=c+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<7){return}while(1){F[e|0]=I[c|0];F[e+1|0]=I[c+1|0];F[e+2|0]=I[c+2|0];F[e+3|0]=I[c+3|0];F[e+4|0]=I[c+4|0];F[e+5|0]=I[c+5|0];F[e+6|0]=I[c+6|0];F[e+7|0]=I[c+7|0];e=e+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}function zf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Af(a,h,c,g,e);f=b;b=e+i|0;Af(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}zf(a,h,c,g,e,f);d=d-g|0;zf(h,b,c,d,e,f);Bf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function wf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){xf(a,h,c,g,e);f=b;b=e+i|0;xf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}wf(a,h,c,g,e,f);d=d-g|0;wf(h,b,c,d,e,f);yf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function tf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){uf(a,h,c,g,e);f=b;b=e+i|0;uf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}tf(a,h,c,g,e,f);d=d-g|0;tf(h,b,c,d,e,f);vf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function qf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){rf(a,h,c,g,e);f=b;b=e+i|0;rf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}qf(a,h,c,g,e,f);d=d-g|0;qf(h,b,c,d,e,f);sf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function kg(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){lg(a,h,c,g,e);f=b;b=e+i|0;lg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}kg(a,h,c,g,e,f);d=d-g|0;kg(h,b,c,d,e,f);mg(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function hg(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){ig(a,h,c,g,e);f=b;b=e+i|0;ig(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}hg(a,h,c,g,e,f);d=d-g|0;hg(h,b,c,d,e,f);jg(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function hf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){lf(a,h,c,g,e);f=b;b=e+i|0;lf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}hf(a,h,c,g,e,f);d=d-g|0;hf(h,b,c,d,e,f);mf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function eg(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){fg(a,h,c,g,e);f=b;b=e+i|0;fg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}eg(a,h,c,g,e,f);d=d-g|0;eg(h,b,c,d,e,f);gg(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function bg(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){cg(a,h,c,g,e);f=b;b=e+i|0;cg(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}bg(a,h,c,g,e,f);d=d-g|0;bg(h,b,c,d,e,f);dg(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function _f(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){$f(a,h,c,g,e);f=b;b=e+i|0;$f(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}_f(a,h,c,g,e,f);d=d-g|0;_f(h,b,c,d,e,f);ag(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Xf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Yf(a,h,c,g,e);f=b;b=e+i|0;Yf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Xf(a,h,c,g,e,f);d=d-g|0;Xf(h,b,c,d,e,f);Zf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Uf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Vf(a,h,c,g,e);f=b;b=e+i|0;Vf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Uf(a,h,c,g,e,f);d=d-g|0;Uf(h,b,c,d,e,f);Wf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Rf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Sf(a,h,c,g,e);f=b;b=e+i|0;Sf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Rf(a,h,c,g,e,f);d=d-g|0;Rf(h,b,c,d,e,f);Tf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Of(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Pf(a,h,c,g,e);f=b;b=e+i|0;Pf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Of(a,h,c,g,e,f);d=d-g|0;Of(h,b,c,d,e,f);Qf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Lf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Mf(a,h,c,g,e);f=b;b=e+i|0;Mf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Lf(a,h,c,g,e,f);d=d-g|0;Lf(h,b,c,d,e,f);Nf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function If(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Jf(a,h,c,g,e);f=b;b=e+i|0;Jf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}If(a,h,c,g,e,f);d=d-g|0;If(h,b,c,d,e,f);Kf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Ff(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Gf(a,h,c,g,e);f=b;b=e+i|0;Gf(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Ff(a,h,c,g,e,f);d=d-g|0;Ff(h,b,c,d,e,f);Hf(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function Cf(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;a:{b:{c:{d:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;e=b-4|0;b=H[e>>2];if(d>>>0<=b>>>0){break c}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break c}if(K[c+(b<<3)>>2]>=K[c+(d<<3)>>2]){break a}H[a>>2]=b;H[e>>2]=d;break a;case 0:case 1:break a;default:break d}}if((d|0)>128){break b}if((a|0)==(b|0)){break a}d=a+4|0;if((d|0)==(b|0)){break a}while(1){g=H[d>>2];e:{e=a;if((e|0)==(d|0)){break e}e=H[c>>2];h=H[e>>2];f:{j=H[e+4>>2]-h>>3;if(g>>>0>=j>>>0){break f}k=h+(g<<3)|0;e=d;while(1){f=e-4|0;i=H[f>>2];if(i>>>0>=j>>>0){break f}if(K[k>>2]>=K[h+(i<<3)>>2]){break e}H[e>>2]=i;e=f;if((e|0)!=(a|0)){continue}break}e=a;break e}Sc();X()}H[e>>2]=g;d=d+4|0;if((d|0)!=(b|0)){continue}break}break a}Sc();X()}g=d>>>1|0;i=g<<2;h=i+a|0;g:{h:{if((d|0)<=(f|0)){Df(a,h,c,g,e);f=b;b=e+i|0;Df(h,f,c,d-g|0,b);f=(d<<2)+e|0;c=H[c>>2];d=b;while(1){if((d|0)==(f|0)){if((b|0)==(e|0)){break a}while(1){H[a>>2]=H[e>>2];a=a+4|0;e=e+4|0;if((b|0)!=(e|0)){continue}break}break a}g=H[c>>2];i=H[c+4>>2]-g>>3;h=H[d>>2];if(i>>>0<=h>>>0){break h}j=i;i=H[e>>2];if(j>>>0<=i>>>0){break h}i:{if(K[g+(h<<3)>>2]>2]){H[a>>2]=h;d=d+4|0;break i}H[a>>2]=i;e=e+4|0}a=a+4|0;if((b|0)!=(e|0)){continue}break}break g}Cf(a,h,c,g,e,f);d=d-g|0;Cf(h,b,c,d,e,f);Ef(a,h,b,c,g,d,e,f);return}Sc();X()}if((d|0)==(f|0)){break a}while(1){H[a>>2]=H[d>>2];a=a+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}}function uc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;b=H[H[a+4>>2]+(b<<2)>>2];H[c+12>>2]=b;a=H[a+28>>2];e=H[H[H[a+4>>2]+8>>2]+(b<<2)>>2];b=H[e+28>>2];a:{if(b-1>>>0>=6){b:{if((b|0)!=9){break b}f=H[a+48>>2];a=$k(32);H[c>>2]=a;H[c+4>>2]=17;H[c+8>>2]=-2147483616;F[a+17|0]=0;F[a+16|0]=I[1373];b=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);d=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[a+8|0]=d;F[a+9|0]=d>>>8;F[a+10|0]=d>>>16;F[a+11|0]=d>>>24;F[a+12|0]=b;F[a+13|0]=b>>>8;F[a+14|0]=b>>>16;F[a+15|0]=b>>>24;b=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);d=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[a|0]=d;F[a+1|0]=d>>>8;F[a+2|0]=d>>>16;F[a+3|0]=d>>>24;F[a+4|0]=b;F[a+5|0]=b>>>8;F[a+6|0]=b>>>16;F[a+7|0]=b>>>24;a=Bb(f,c+12|0,c,-1);if(F[c+11|0]<0){Wk(H[c>>2])}if((a|0)<=0){break b}if(H[e+56>>2]==1){a=$k(48);H[a>>2]=0;H[a+4>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;Cc(a);H[a+44>>2]=-1;H[a+40>>2]=1032;H[a>>2]=6336;break a}a=$k(64);Cc(a);H[a+48>>2]=0;H[a+52>>2]=0;H[a+44>>2]=-1;H[a+40>>2]=1140;H[a>>2]=10016;H[a+56>>2]=0;H[a+60>>2]=0;break a}a=$k(36);H[a+32>>2]=0;H[a+12>>2]=-1;H[a+4>>2]=0;H[a+8>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=2420;F[a+21|0]=0;F[a+22|0]=0;F[a+23|0]=0;F[a+24|0]=0;F[a+25|0]=0;F[a+26|0]=0;F[a+27|0]=0;F[a+28|0]=0;break a}a=Cc($k(40))}da=c+16|0;return a|0}function hh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;H[a>>2]=10612;d=a+200|0;c=H[d+136>>2];if(c){b=H[d+140>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;f=H[e>>2];if(f){H[b-8>>2]=f;Wk(f)}b=e;if((c|0)!=(b|0)){continue}break}b=H[d+136>>2]}H[d+140>>2]=c;Wk(b)}b=H[d+104>>2];if(b){H[d+108>>2]=b;Wk(b)}b=H[d+92>>2];if(b){H[d+96>>2]=b;Wk(b)}c=H[d+80>>2];H[d+80>>2]=0;if(c){e=c-4|0;b=H[e>>2];if(b){b=c+(b<<5)|0;while(1){b=ve(b-32|0);if((c|0)!=(b|0)){continue}break}}Wk(e)}b=H[d+68>>2];if(b){H[d+72>>2]=b;Wk(b)}b=H[d+44>>2];H[d+44>>2]=0;if(b){Wk(b)}b=H[d+32>>2];if(b){H[d+36>>2]=b;Wk(b)}ve(d);b=H[a+184>>2];if(b){H[a+188>>2]=b;Wk(b)}c=H[a+172>>2];if(c){b=H[a+176>>2];if((c|0)==(b|0)){b=c}else{while(1){e=H[b-20>>2];if(e){H[b-16>>2]=e;Wk(e)}e=H[b-32>>2];if(e){H[b-28>>2]=e;Wk(e)}Xg(b-132|0);b=b-136|0;if((c|0)!=(b|0)){continue}break}b=H[a+172>>2]}H[a+176>>2]=c;Wk(b)}b=H[a+152>>2];if(b){H[a+156>>2]=b;Wk(b)}b=H[a+140>>2];if(b){Wk(b)}b=H[a+128>>2];if(b){while(1){c=H[b>>2];Wk(b);b=c;if(b){continue}break}}b=H[a+120>>2];H[a+120>>2]=0;if(b){Wk(b)}b=H[a+108>>2];if(b){H[a+112>>2]=b;Wk(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+84>>2];if(b){Wk(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;Wk(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;Wk(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;Wk(b)}b=H[a+28>>2];if(b){Wk(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}b=H[a+12>>2];H[a+12>>2]=0;if(b){Ng(a+12|0,b)}return a|0}function tc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+8>>2]-H[a+4>>2]>>2;b=H[a+40>>2];c=H[a+36>>2];d=b-c>>2;a:{if(e>>>0>d>>>0){g=e-d|0;c=H[a+44>>2];b=H[a+40>>2];if(g>>>0<=c-b>>2>>>0){if(g){i=b;b=g<<2;b=gk(i,0,b)+b|0}H[a+40>>2]=b;break a}b:{c:{d:{j=H[a+36>>2];e=b-j>>2;f=e+g|0;if(f>>>0<1073741824){d=c-j|0;c=d>>1;d=d>>>0<2147483644?c>>>0>>0?f:c:1073741823;if(d){if(d>>>0>=1073741824){break d}i=$k(d<<2)}h=(e<<2)+i|0;c=g<<2;f=gk(h,0,c);e=c+f|0;d=(d<<2)+i|0;if((b|0)==(j|0)){break c}while(1){b=b-4|0;c=H[b>>2];H[b>>2]=0;h=h-4|0;H[h>>2]=c;if((b|0)!=(j|0)){continue}break}H[a+44>>2]=d;d=H[a+40>>2];H[a+40>>2]=e;b=H[a+36>>2];H[a+36>>2]=h;if((b|0)==(d|0)){break b}while(1){d=d-4|0;c=H[d>>2];H[d>>2]=0;if(c){ga[H[H[c>>2]+4>>2]](c)}if((b|0)!=(d|0)){continue}break}break b}Fa();X()}Ua(1604);X()}H[a+44>>2]=d;H[a+40>>2]=e;H[a+36>>2]=f}if(b){Wk(b)}break a}if(d>>>0<=e>>>0){break a}c=c+(e<<2)|0;if((c|0)!=(b|0)){while(1){b=b-4|0;d=H[b>>2];H[b>>2]=0;if(d){ga[H[H[d>>2]+4>>2]](d)}if((b|0)!=(c|0)){continue}break}}H[a+40>>2]=c}if(H[a+8>>2]==H[a+4>>2]){return 1}b=0;while(1){e=ga[H[H[a>>2]+56>>2]](a,b)|0;d=b<<2;c=d+H[a+36>>2]|0;f=H[c>>2];H[c>>2]=e;if(f){ga[H[H[f>>2]+4>>2]](f)}c=H[d+H[a+36>>2]>>2];if(c){if(!(!(H[H[a+48>>2]+(b>>>3&536870908)>>2]>>>b&1)|K[a+52>>2]<=b>>>0)){F[c+28|0]=1}b=b+1|0;if(b>>>0>2]-H[a+4>>2]>>2>>>0){continue}}break}return(c|0)!=0|0}function jf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=da-16|0;da=f;tb(H[a+12>>2],b);e=1;a:{if(!H[a+12>>2]){break a}m=f+14|0;n=f+15|0;o=f+16|0;while(1){b:{c:{c=H[a>>2];j=H[c+(h<<3)>>2];if(j>>>0>=64){d=1;if(j>>>0<16384){break c}if(j>>>0<=4194303){d=2;break c}break a}e=0;d=0;if(j){break c}while(1){d:{if(H[(c+(e+h<<3)|0)+8>>2]){d=e;break d}d=e+1|0;if(H[(c+(h+d<<3)|0)+8>>2]){break d}d=e+2|0;if(H[(c+(h+d<<3)|0)+8>>2]){break d}d=63;e=e+3|0;if((e|0)!=63){continue}}break}F[f+15|0]=d<<2|3;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],f+15|0,o)}h=d+h|0;break b}F[f+14|0]=j<<2|d;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],f+14|0,n)}if(!e){break b}e=H[b+20>>2];g=e;c=H[b+16>>2];if(!!c&(e|0)>=0|(e|0)>0){break b}p=d>>>0>1?d:1;e=0;while(1){e=e+1|0;l=j>>>(e<<3)-2|0;F[f+13|0]=l;e:{if(!!c&(g|0)>=0|(g|0)>0){break e}c=H[b+8>>2];d=H[b+4>>2];if((c-d|0)>0){if((f+13|0)==(m|0)){H[b+4>>2]=d;break e}F[d|0]=I[f+13|0];H[b+4>>2]=d+1;break e}k=H[b>>2];d=d-k|0;i=d+1|0;if((i|0)>=0){g=c-k|0;c=g<<1;i=g>>>0<1073741823?c>>>0>>0?i:c:2147483647;if(i){c=$k(i)}else{c=0}g=c+d|0;F[g|0]=l;if((d|0)>0){ek(c,k,d)}H[b+8>>2]=c+i;H[b+4>>2]=g+1;H[b>>2]=c;if(!k){break e}Wk(k);break e}Fa();X()}if((e|0)==(p|0)){break b}c=H[b+16>>2];g=H[b+20>>2];continue}}e=1;h=h+1|0;if(h>>>0>2]){continue}break}}da=f+16|0}function ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{c:{d:{if(b){if(b>>>0>=1073741824){break d}d=$k(b<<2);c=H[a>>2];H[a>>2]=d;if(c){Wk(c)}H[a+4>>2]=b;d=0;if(b-1>>>0>=3){g=b&-4;while(1){c=d<<2;H[c+H[a>>2]>>2]=0;H[H[a>>2]+(c|4)>>2]=0;H[H[a>>2]+(c|8)>>2]=0;H[H[a>>2]+(c|12)>>2]=0;d=d+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=b&3;if(c){while(1){H[H[a>>2]+(d<<2)>>2]=0;d=d+1|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}e=H[a+8>>2];if(!e){break a}c=a+8|0;g=H[e+4>>2];d=Il(b);if(d>>>0<2){break c}g=b>>>0<=g>>>0?(g>>>0)%(b>>>0)|0:g;H[H[a>>2]+(g<<2)>>2]=c;c=H[e>>2];if(!c){break a}if(d>>>0<=1){break b}while(1){f=H[c+4>>2];if(f>>>0>=b>>>0){f=(f>>>0)%(b>>>0)|0}e:{if((g|0)==(f|0)){e=c;break e}d=c;h=f<<2;i=h+H[a>>2]|0;if(!H[i>>2]){H[i>>2]=e;e=c;g=f;break e}while(1){f=d;d=H[d>>2];if(H[c+8>>2]==H[d+8>>2]?d:0){continue}break}H[e>>2]=d;H[f>>2]=H[H[h+H[a>>2]>>2]>>2];H[H[h+H[a>>2]>>2]>>2]=c}c=H[e>>2];if(c){continue}break}break a}b=H[a>>2];H[a>>2]=0;if(b){Wk(b)}H[a+4>>2]=0;break a}Ua(1604);X()}g=b-1&g;H[H[a>>2]+(g<<2)>>2]=c;c=H[e>>2];if(!c){break a}}h=b-1|0;while(1){b=h&H[c+4>>2];f:{if((b|0)==(g|0)){e=c;break f}d=c;f=b<<2;i=f+H[a>>2]|0;if(H[i>>2]){while(1){b=d;d=H[b>>2];if(H[c+8>>2]==H[d+8>>2]?d:0){continue}break}H[e>>2]=d;H[b>>2]=H[H[f+H[a>>2]>>2]>>2];H[H[f+H[a>>2]>>2]>>2]=c;break f}H[i>>2]=e;e=c;g=b}c=H[e>>2];if(c){continue}break}}}function il(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=da-16|0;da=d;h=da-16|0;da=h;Yk(d);da=h+16|0;Zk(d,I[d+11|0]>>>7|0?(H[d+8>>2]&2147483647)-1|0:10);i=da-16|0;da=i;l=+b;if(I[d+11|0]>>>7|0){h=H[d+4>>2]}else{h=I[d+11|0]}while(1){a:{if(I[d+11|0]>>>7|0){e=H[d>>2]}else{e=d}c=e;M[i>>3]=l;k=da-16|0;da=k;H[k+12>>2]=i;f=da-160|0;da=f;e=-1;g=h+1|0;H[f+148>>2]=g?g-1|0:0;j=g?c:f+158|0;H[f+144>>2]=j;c=gk(f,0,144);H[c+76>>2]=-1;H[c+36>>2]=370;H[c+80>>2]=-1;H[c+44>>2]=c+159;H[c+84>>2]=c+144;b:{if((g|0)<0){H[4739]=61;break b}F[j|0]=0;g=0;f=da-208|0;da=f;H[f+204>>2]=i;e=f+160|0;gk(e,0,40);H[f+200>>2]=H[f+204>>2];c:{if((vk(0,f+200|0,f+80|0,e)|0)<0){e=-1;break c}m=H[c+76>>2]>=0;j=H[c>>2];if(H[c+72>>2]<=0){H[c>>2]=j&-33}d:{e:{f:{if(!H[c+48>>2]){H[c+48>>2]=80;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;g=H[c+44>>2];H[c+44>>2]=f;break f}if(H[c+16>>2]){break e}}e=-1;if(tk(c)){break d}}e=vk(c,f+200|0,f+80|0,f+160|0)}if(g){ga[H[c+36>>2]](c,0,0)|0;H[c+48>>2]=0;H[c+44>>2]=g;H[c+28>>2]=0;g=H[c+20>>2];H[c+16>>2]=0;H[c+20>>2]=0;e=g?e:-1}g=H[c>>2];H[c>>2]=g|j&32;e=g&32?-1:e;if(!m){break c}}da=f+208|0}da=c+160|0;da=k+16|0;g:{if((e|0)>=0){if(e>>>0<=h>>>0){break a}h=e;break g}h=h<<1|1}Zk(d,h);continue}break}Zk(d,e);h=H[d+4>>2];H[a>>2]=H[d>>2];H[a+4>>2]=h;H[a+8>>2]=H[d+8>>2];Yk(d);da=i+16|0;if(I[d+11|0]>>>7|0){Wk(H[d>>2])}da=d+16|0}function Ld(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=H[b+16>>2];e=H[c+4>>2]-g|0;H[c>>2]=0|H[c>>2]-g;H[c+4>>2]=e;e=H[d+4>>2]-g|0;f=H[d>>2]-g|0;H[d>>2]=j|f;H[d+4>>2]=e;h=H[b+16>>2];g=e>>31;j=g+e^g;g=f>>31;if((h|0)<(j+(g+f^g)|0)){i=H[c+4>>2];k=H[c>>2];a:{b:{if((k|0)>=0){e=1;g=1;if((i|0)>=0){break a}f=1;e=-1;g=-1;if(k){break b}break a}f=-1;e=-1;g=-1;if((i|0)<=0){break a}}e=(i|0)<=0?-1:1;g=f}f=1;j=-1;l=k<<1;k=N(g,h);l=l-k|0;g=(N(e,g)|0)>=0;e=N(e,h);H[c+4>>2]=((g?0-l|0:l)+e|0)/2;e=(i<<1)-e|0;H[c>>2]=(k+(g?0-e|0:e)|0)/2;g=H[d+4>>2];i=H[d>>2];c:{d:{if((i|0)>=0){e=1;if((g|0)>=0){break c}j=1;f=-1;e=-1;if(i){break d}break c}f=-1;e=-1;if((g|0)<=0){break c}}f=(g|0)<=0?-1:1;e=j}h=i<<1;j=H[b+16>>2];i=N(j,e);h=h-i|0;l=0-h|0;k=h;h=(N(e,f)|0)>=0;f=N(f,j);e=((h?l:k)+f|0)/2|0;H[d+4>>2]=e;f=(g<<1)-f|0;f=(i+(h?0-f|0:f)|0)/2|0;H[d>>2]=f}e:{f:{g:{h:{i:{j:{if(f){if((f|0)>=0){break j}if((e|0)>0){break h}break e}if(e){break i}e=0;f=0;break e}if((e|0)<0){break g}e=0-H[c+4>>2]|0;H[c>>2]=0-H[c>>2];H[c+4>>2]=e;f=0-H[d>>2]|0;e=0-H[d+4>>2]|0;break f}if((e|0)<=0){break g}}e=H[c>>2];H[c>>2]=0-H[c+4>>2];H[c+4>>2]=e;f=0-H[d+4>>2]|0;e=H[d>>2];break f}e=0-H[c>>2]|0;H[c>>2]=H[c+4>>2];H[c+4>>2]=e;f=H[d+4>>2];e=0-H[d>>2]|0}H[d>>2]=f;H[d+4>>2]=e}d=H[c>>2];b=H[b+4>>2];c=H[c+4>>2]-e|0;H[a+4>>2]=(b&c>>31)+c;c=a;a=d-f|0;H[c>>2]=(b&a>>31)+a}function Wi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;a=0;a:{if(!d|(!b|(c|0)<0)){break a}f=H[b+8>>2];if(H[b+12>>2]-f>>2<=(c|0)){break a}if(!H[b+4>>2]){a=$k(36);H[a+4>>2]=0;H[a+8>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;e=a+16|0;H[e>>2]=0;H[e+4>>2]=0;H[a>>2]=a+4;H[a+32>>2]=0;H[a+12>>2]=e;H[b+4>>2]=a}a=H[H[f+(c<<2)>>2]+60>>2];e=$k(28);Rj(e,d);H[e+24>>2]=a;a=H[b+4>>2];c=da-16|0;da=c;H[c+8>>2]=e;b:{if(!e){H[c+8>>2]=0;break b}b=H[a+28>>2];c:{if(b>>>0>2]){H[c+8>>2]=0;H[b>>2]=e;H[a+28>>2]=b+4;break c}b=0;d:{e:{f:{e=H[a+24>>2];f=H[a+28>>2]-e>>2;d=f+1|0;if(d>>>0<1073741824){e=H[a+32>>2]-e|0;g=e>>1;d=e>>>0<2147483644?d>>>0>g>>>0?d:g:1073741823;if(d){if(d>>>0>=1073741824){break f}b=$k(d<<2)}g=H[c+8>>2];H[c+8>>2]=0;e=(f<<2)+b|0;H[e>>2]=g;f=(d<<2)+b|0;g=e+4|0;b=H[a+28>>2];d=H[a+24>>2];if((b|0)==(d|0)){break e}while(1){b=b-4|0;h=H[b>>2];H[b>>2]=0;e=e-4|0;H[e>>2]=h;if((b|0)!=(d|0)){continue}break}H[a+32>>2]=f;b=H[a+28>>2];H[a+28>>2]=g;d=H[a+24>>2];H[a+24>>2]=e;if((b|0)==(d|0)){break d}while(1){b=b-4|0;a=H[b>>2];H[b>>2]=0;if(a){Di(a+12|0,H[a+16>>2]);Ei(a,H[a+4>>2]);Wk(a)}if((b|0)!=(d|0)){continue}break}break d}Fa();X()}Ua(1604);X()}H[a+32>>2]=f;H[a+28>>2]=g;H[a+24>>2]=e}if(d){Wk(d)}}a=H[c+8>>2];H[c+8>>2]=0;if(!a){break b}Di(a+12|0,H[a+16>>2]);Ei(a,H[a+4>>2]);Wk(a)}da=c+16|0;a=1}return a|0}function Ug(a,b){var c=0,d=0,e=0,f=0,g=0;e=-1;c=(b|0)==-1;d=-1;a:{if(c){break a}d=b+1|0;e=(d>>>0)%3|0?d:b-2|0;d=b-1|0;if((b>>>0)%3|0){break a}d=b+2|0}f=c?-1:(b>>>0)/3|0;g=H[a+28>>2]+(f>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>2]+12>>2]+(b<<2)>>2];if((c|0)==-1){break b}c=(c>>>0)/3|0;if(H[H[a+28>>2]+(c>>>3&268435452)>>2]>>>c&1){break b}f=H[a+172>>2];if((f|0)==H[a+176>>2]){break b}g=1<>>5<<2;while(1){ye(H[a+280>>2]+(c<<5)|0,(g&H[b+H[(N(c,136)+f|0)+4>>2]>>2])!=0);c=c+1|0;f=H[a+172>>2];if(c>>>0<(H[a+176>>2]-f|0)/136>>>0){continue}break}}c:{if((e|0)==-1){break c}b=H[H[H[a+12>>2]+12>>2]+(e<<2)>>2];if((b|0)==-1){break c}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break c}b=H[a+172>>2];if((b|0)==H[a+176>>2]){break c}f=1<>>5<<2;while(1){ye(H[a+280>>2]+(c<<5)|0,(f&H[e+H[(N(c,136)+b|0)+4>>2]>>2])!=0);c=c+1|0;b=H[a+172>>2];if(c>>>0<(H[a+176>>2]-b|0)/136>>>0){continue}break}}d:{if((d|0)==-1){break d}b=H[H[H[a+12>>2]+12>>2]+(d<<2)>>2];if((b|0)==-1){break d}b=(b>>>0)/3|0;if(H[H[a+28>>2]+(b>>>3&268435452)>>2]>>>b&1){break d}b=H[a+172>>2];if((b|0)==H[a+176>>2]){break d}e=1<>>5<<2;while(1){ye(H[a+280>>2]+(c<<5)|0,(e&H[d+H[(N(c,136)+b|0)+4>>2]>>2])!=0);c=c+1|0;b=H[a+172>>2];if(c>>>0<(H[a+176>>2]-b|0)/136>>>0){continue}break}}}function Fe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=da-48|0;da=e;f=a+16|0;d=H[f>>2];a:{b:{if(!d){break b}g=H[b>>2];c=f;while(1){h=(g|0)>H[d+16>>2];c=h?c:d;d=H[(h<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)){break b}if((g|0)>=H[c+16>>2]){break a}}h=e+24|0;H[h+4>>2]=0;H[h+8>>2]=0;i=h+4|0;H[h>>2]=i;b=H[b>>2];j=e+16|0;d=j;H[d>>2]=0;H[d+4>>2]=0;H[e+8>>2]=b;H[e+12>>2]=d;c=H[h>>2];if((i|0)!=(c|0)){g=e+8|4;while(1){b=c;d=c+16|0;Re(e+40|0,g,j,d,d);d=H[c+4>>2];c:{if(!d){c=H[b+8>>2];if((b|0)==H[c>>2]){break c}d=b+8|0;while(1){b=H[d>>2];d=b+8|0;c=H[b+8>>2];if((b|0)!=H[c>>2]){continue}break}break c}while(1){c=d;d=H[c>>2];if(d){continue}break}}if((c|0)!=(i|0)){continue}break}}d=H[f>>2];d:{if(d){f=a+16|0;g=H[e+8>>2];while(1){b=H[d+16>>2];e:{if((b|0)>(g|0)){c=H[d>>2];if(c){break e}f=d;break d}if((b|0)>=(g|0)){break d}f=d+4|0;c=H[d+4>>2];if(!c){break d}d=f}f=d;d=c;continue}}d=f}c=H[f>>2];if(!c){c=$k(32);H[c+16>>2]=H[e+8>>2];H[c+20>>2]=H[e+12>>2];i=c+24|0;g=H[e+16>>2];H[i>>2]=g;b=H[e+20>>2];H[c+28>>2]=b;f:{if(!b){H[c+20>>2]=i;break f}H[g+8>>2]=i;H[e+16>>2]=0;H[e+20>>2]=0;H[e+12>>2]=j}H[c+8>>2]=d;H[c>>2]=0;H[c+4>>2]=0;H[f>>2]=c;b=H[H[a+12>>2]>>2];if(b){H[a+12>>2]=b;b=H[f>>2]}else{b=c}Qe(H[a+16>>2],b);H[a+20>>2]=H[a+20>>2]+1}Hc(e+8|4,H[e+16>>2]);Hc(h,H[h+4>>2])}da=e+48|0;return c+20|0}function Tg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=H[a>>2];b=b-e|0;h=(b&-4)+e|0;i=d-c|0;if((i|0)<=0){return}a:{j=i>>2;f=H[a+8>>2];g=H[a+4>>2];if((j|0)<=f-g>>2){i=g-h|0;e=i>>2;if((e|0)>=(j|0)){b=g;f=d;break a}b=g;f=(e<<2)+c|0;if((f|0)!=(d|0)){e=f;while(1){H[b>>2]=H[e>>2];b=b+4|0;e=e+4|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=b;if((i|0)>0){break a}return}b:{d=j+(g-e>>2)|0;if(d>>>0<1073741824){f=f-e|0;k=f>>1;f=f>>>0<2147483644?d>>>0>k>>>0?d:k:1073741823;if(f){if(f>>>0>=1073741824){break b}d=$k(f<<2)}else{d=0}c=ek(d+(b>>2<<2)|0,c,i&-4);if((b|0)>0){ek(d,e,b)}b=c+(j<<2)|0;if((g|0)!=(h|0)){while(1){H[b>>2]=H[h>>2];b=b+4|0;h=h+4|0;if((g|0)!=(h|0)){continue}break}}H[a+8>>2]=d+(f<<2);H[a+4>>2]=b;H[a>>2]=d;if(e){Wk(e)}return}Fa();X()}Ua(1604);X()}d=b;i=b-((j<<2)+h|0)|0;e=(i&-4)+h|0;if(g>>>0>e>>>0){j=e;while(1){H[d>>2]=H[j>>2];d=d+4|0;j=j+4|0;if(g>>>0>j>>>0){continue}break}}H[a+4>>2]=d;c:{if(!i){break c}a=i-4|0;g=(a>>>2|0)+1&3;if(g){d=0;while(1){b=b-4|0;e=e-4|0;H[b>>2]=H[e>>2];d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0<12){break c}while(1){H[b-4>>2]=H[e-4>>2];H[b-8>>2]=H[e-8>>2];H[b-12>>2]=H[e-12>>2];b=b-16|0;e=e-16|0;H[b>>2]=H[e>>2];if((e|0)!=(h|0)){continue}break}}if((c|0)==(f|0)){return}b=h;while(1){H[b>>2]=H[c>>2];b=b+4|0;c=c+4|0;if((f|0)!=(c|0)){continue}break}}function af(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=da-16|0;da=l;g=H[b+28>>2];h=H[b+24>>2];H[a+8>>2]=h;H[a+12>>2]=g;g=H[b+20>>2];H[a>>2]=H[b+16>>2];H[a+4>>2]=g;g=H[b+36>>2];H[a+16>>2]=H[b+32>>2];H[a+20>>2]=g;H[a+8>>2]=d+h;a:{b:{if((d|0)>0){g=H[b>>2];while(1){f=H[b+4>>2]-g>>2;h=H[(i<<2)+c>>2];if(f>>>0<=h>>>0){H[l+12>>2]=0;j=h+1|0;c:{if(j>>>0>f>>>0){nb(b,j-f|0,l+12|0);break c}if(f>>>0<=j>>>0){break c}H[b+4>>2]=(j<<2)+g}g=H[b>>2]}j=(h<<2)+g|0;f=H[j>>2];d:{if((f|0)>=2){k=+(f|0);k=hk(k)*k;break d}k=0;if(f){break d}H[a+16>>2]=H[a+16>>2]+1;if(h>>>0<=K[a+12>>2]){break d}H[a+12>>2]=h}h=f+1|0;H[j>>2]=h;m=+(h|0);n=a,o=hk(m)*m-k+M[a>>3],M[n>>3]=o;i=i+1|0;if((i|0)!=(d|0)){continue}break}if(e){break b}if((d|0)<=0){break a}a=H[b>>2];e=0;i=0;if(d-1>>>0>=3){h=d&-4;g=0;while(1){b=i<<2;f=a+(H[b+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;f=a+(H[(b|4)+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;f=a+(H[(b|8)+c>>2]<<2)|0;H[f>>2]=H[f>>2]-1;b=a+(H[(b|12)+c>>2]<<2)|0;H[b>>2]=H[b>>2]-1;i=i+4|0;g=g+4|0;if((h|0)!=(g|0)){continue}break}}b=d&3;if(!b){break a}while(1){d=a+(H[(i<<2)+c>>2]<<2)|0;H[d>>2]=H[d>>2]-1;i=i+1|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}break a}if(!e){break a}}c=H[a+4>>2];H[b+16>>2]=H[a>>2];H[b+20>>2]=c;H[b+32>>2]=H[a+16>>2];c=H[a+12>>2];H[b+24>>2]=H[a+8>>2];H[b+28>>2]=c}da=l+16|0}function zc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+16>>2];a:{if(H[a+20>>2]-e>>2<=(b|0)){break a}i=H[e+(b<<2)>>2];if((i|0)<0){break a}if(K[a+52>>2]<=i>>>0){b:{b=da-16|0;da=b;c:{f=H[a+52>>2];c=i+1|0;d:{if(f>>>0>>0){e=c-f|0;g=H[a+56>>2];d=g<<5;e:{if(!(e>>>0>d>>>0|f>>>0>d-e>>>0)){H[a+52>>2]=c;d=f&31;c=H[a+48>>2]+(f>>>3&536870908)|0;break e}H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;if((c|0)<0){break c}if(d>>>0<=1073741822){c=c+31&-32;d=g<<6;h=c>>>0>d>>>0?c:d}else{h=2147483647}Bc(b,h);d=H[a+52>>2];H[b+4>>2]=d+e;f=H[a+48>>2];c=H[b>>2];f:{if((d|0)<=0){d=0;break f}h=d>>>5|0;g=h<<2;c=fk(c,f,g)+g|0;d=d-(h<<5)|0;g:{if((d|0)<=0){d=0;break g}h=-1>>>32-d|0;H[c>>2]=H[c>>2]&(h^-1)|h&H[f+g>>2]}f=H[a+48>>2]}H[a+48>>2]=H[b>>2];H[b>>2]=f;g=H[a+52>>2];H[a+52>>2]=H[b+4>>2];H[b+4>>2]=g;g=H[a+56>>2];H[a+56>>2]=H[b+8>>2];H[b+8>>2]=g;if(!f){break e}Wk(f)}if(!e){break d}if(d){f=32-d|0;g=f>>>0>e>>>0?e:f;H[c>>2]=H[c>>2]&(-1<>>f-g^-1);e=e-g|0;c=c+4|0}h=c;c=e>>>5<<2;d=gk(h,0,c);e=e&31;if(!e){break d}c=c+d|0;H[c>>2]=H[c>>2]&(-1>>>32-e^-1);break d}H[a+52>>2]=c}da=b+16|0;break b}jl();X()}}c=1;b=H[a+48>>2]+(i>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];a=H[a+36>>2];if(b-a>>2>>>0<=i>>>0){break a}F[H[a+(i<<2)>>2]+28|0]=1}return c|0}function rk(a){var b=0,c=0,d=0,e=0,f=0;a:{b:{c:{d:{e:{b=H[a+4>>2];f:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break f}b=lk(a)}switch(b-43|0){case 0:case 2:break e;default:break d}}f=(b|0)==45;b=H[a+4>>2];g:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break g}b=lk(a)}e=b-58|0;if(e>>>0>4294967285){break c}if(H[a+116>>2]<0){break b}H[a+4>>2]=H[a+4>>2]-1;break b}e=b-58|0}if(e>>>0<4294967286){break b}e=b-48|0;if(e>>>0<10){while(1){d=(N(d,10)+b|0)-48|0;c=(d|0)<214748364;b=H[a+4>>2];h:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break h}b=lk(a)}e=b-48|0;if(c&e>>>0<=9){continue}break}c=d>>31}i:{if(e>>>0>=10){break i}while(1){c=Fl(d,c,10,0);d=c+b|0;b=fa;b=c>>>0>d>>>0?b+1|0:b;c=d;d=c-48|0;c=b-(c>>>0<48)|0;b=H[a+4>>2];j:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break j}b=lk(a)}e=b-48|0;if(e>>>0>9){break i}if(d>>>0<2061584302&(c|0)<=21474836|(c|0)<21474836){continue}break}}if(e>>>0<10){while(1){b=H[a+4>>2];k:{if((b|0)!=H[a+104>>2]){H[a+4>>2]=b+1;b=I[b|0];break k}b=lk(a)}if(b-48>>>0<10){continue}break}}b=H[a+116>>2];if((b|0)>0|(b|0)>=0){H[a+4>>2]=H[a+4>>2]-1}a=d;d=f?0-a|0:a;c=f?0-(((a|0)!=0)+c|0)|0:c;break a}c=-2147483648;if(H[a+116>>2]<0){break a}H[a+4>>2]=H[a+4>>2]-1;fa=-2147483648;return 0}fa=c;return d}function Ob(a,b){var c=0,d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[a+8>>2]=b;H[a>>2]=0;c=a+12|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+60>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;c=a- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[c+16>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+100>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+112>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;g=a+140|0;a:{b:{if(b){if(b>>>0<1073741824){break b}Fa();X()}H[a+116>>2]=0;H[a+120>>2]=0;H[a+132>>2]=0;H[a+136>>2]=0;H[a+124>>2]=0;H[a+128>>2]=0;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;c=1;break a}c=b<<2;d=$k(c);H[a+104>>2]=d;f=c+d|0;H[a+112>>2]=f;gk(d,0,c);H[a+124>>2]=0;H[a+116>>2]=0;H[a+120>>2]=0;H[a+108>>2]=f;d=$k(c);H[a+116>>2]=d;f=c+d|0;H[a+124>>2]=f;gk(d,0,c);H[a+136>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=f;d=$k(c);H[a+128>>2]=d;f=c+d|0;H[a+136>>2]=f;gk(d,0,c);H[a+132>>2]=f;d=$k(c);H[e>>2]=d;f=c+d|0;H[e+8>>2]=f;gk(d,0,c);H[e+4>>2]=f;c=b<<5|1}Wb(g,c,e);d=H[e>>2];if(d){H[e+4>>2]=d;Wk(d)}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if(b){b=b<<2;d=$k(b);H[e>>2]=d;f=b+d|0;H[e+8>>2]=f;gk(d,0,b);H[e+4>>2]=f}Wb(a+152|0,c,e);b=H[e>>2];if(b){H[e+4>>2]=b;Wk(b)}da=e+16|0;return a}function Kh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=da-16|0;da=f;ga[H[H[b>>2]+64>>2]](a,b);if(!H[a>>2]){if(F[a+15|0]<0){Wk(H[a+4>>2])}g=H[b+48>>2];c=$k(32);H[f>>2]=c;H[f+4>>2]=29;H[f+8>>2]=-2147483616;F[c+29|0]=0;d=I[1420]|I[1421]<<8|(I[1422]<<16|I[1423]<<24);e=I[1416]|I[1417]<<8|(I[1418]<<16|I[1419]<<24);F[c+21|0]=e;F[c+22|0]=e>>>8;F[c+23|0]=e>>>16;F[c+24|0]=e>>>24;F[c+25|0]=d;F[c+26|0]=d>>>8;F[c+27|0]=d>>>16;F[c+28|0]=d>>>24;d=I[1415]|I[1416]<<8|(I[1417]<<16|I[1418]<<24);e=I[1411]|I[1412]<<8|(I[1413]<<16|I[1414]<<24);F[c+16|0]=e;F[c+17|0]=e>>>8;F[c+18|0]=e>>>16;F[c+19|0]=e>>>24;F[c+20|0]=d;F[c+21|0]=d>>>8;F[c+22|0]=d>>>16;F[c+23|0]=d>>>24;d=I[1407]|I[1408]<<8|(I[1409]<<16|I[1410]<<24);e=I[1403]|I[1404]<<8|(I[1405]<<16|I[1406]<<24);F[c+8|0]=e;F[c+9|0]=e>>>8;F[c+10|0]=e>>>16;F[c+11|0]=e>>>24;F[c+12|0]=d;F[c+13|0]=d>>>8;F[c+14|0]=d>>>16;F[c+15|0]=d>>>24;d=I[1399]|I[1400]<<8|(I[1401]<<16|I[1402]<<24);e=I[1395]|I[1396]<<8|(I[1397]<<16|I[1398]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;c=ki(g,f,0);if(F[f+11|0]<0){Wk(H[f>>2])}if(c){ga[H[H[b>>2]+68>>2]](b)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}da=f+16|0}function we(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{c=H[a+8>>2];d=H[a>>2];if(c-d>>3>>>0>=2){f=H[a+4>>2];h=f-d>>3;g=h>>>0<2?h:2;b:{if(!g){break b}j=g-1|0;i=g&7;c:{if(!i){c=d;break c}c=d;while(1){k=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=k;g=g-1|0;c=c+8|0;e=e+1|0;if((e|0)!=(i|0)){continue}break}}if(j>>>0<7){break b}while(1){e=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=e;e=H[b+4>>2];H[c+8>>2]=H[b>>2];H[c+12>>2]=e;e=H[b+4>>2];H[c+16>>2]=H[b>>2];H[c+20>>2]=e;e=H[b+4>>2];H[c+24>>2]=H[b>>2];H[c+28>>2]=e;e=H[b+4>>2];H[c+32>>2]=H[b>>2];H[c+36>>2]=e;e=H[b+4>>2];H[c+40>>2]=H[b>>2];H[c+44>>2]=e;e=H[b+4>>2];H[c+48>>2]=H[b>>2];H[c+52>>2]=e;e=H[b+4>>2];H[c+56>>2]=H[b>>2];H[c+60>>2]=e;c=c- -64|0;g=g-8|0;if(g){continue}break}}if(h>>>0<2){d=a;a=2-h|0;if(a){a=(a<<3)+f|0;while(1){c=H[b+4>>2];H[f>>2]=H[b>>2];H[f+4>>2]=c;f=f+8|0;if((a|0)!=(f|0)){continue}break}}else{a=f}H[d+4>>2]=a;return}break a}if(d){H[a+4>>2]=d;Wk(d);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;c=0}d=c>>2;d=c>>>0<2147483640?d>>>0<2?2:d:536870911;if(d>>>0<536870912){c=d<<3;d=$k(c);H[a>>2]=d;H[a+8>>2]=c+d;e=H[b>>2];f=H[b+4>>2];c=d;b=0;while(1){H[c>>2]=e;H[c+4>>2]=f;c=c+8|0;b=b+1|0;if((b|0)!=2){continue}break}break a}Fa();X()}H[a+4>>2]=d+16}function Cg(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=H[a+8>>2];e=H[a>>2];if(d-e>>2>>>0>=b>>>0){g=H[a+4>>2];h=g-e>>2;f=b>>>0>h>>>0?h:b;a:{if(!f){break a}k=f-1|0;i=f&7;b:{if(!i){d=e;break b}d=e;while(1){H[d>>2]=H[c>>2];f=f-1|0;d=d+4|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;f=f-8|0;if(f){continue}break}}if(b>>>0>h>>>0){d=a;a=b-h|0;if(a){a=(a<<2)+g|0;while(1){H[g>>2]=H[c>>2];g=g+4|0;if((a|0)!=(g|0)){continue}break}}else{a=g}H[d+4>>2]=a;return}H[a+4>>2]=e+(b<<2);return}if(e){H[a+4>>2]=e;Wk(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}c:{if(b>>>0>=1073741824){break c}e=d>>1;d=d>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(d>>>0>=1073741824){break c}d=d<<2;e=$k(d);H[a>>2]=e;H[a+8>>2]=d+e;c=H[c>>2];d=e;g=b&7;if(g){while(1){H[d>>2]=c;d=d+4|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){H[d+28>>2]=c;H[d+24>>2]=c;H[d+20>>2]=c;H[d+16>>2]=c;H[d+12>>2]=c;H[d+8>>2]=c;H[d+4>>2]=c;H[d>>2]=c;d=d+32|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=e;return}Fa();X()}function Jj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;Yj(a,b,c);c=H[a+84>>2];d=H[a+88>>2]-c>>2;a:{if((d|0)>(b|0)){break a}b=b+1|0;if(b>>>0>d>>>0){b:{d=b-d|0;e=H[a+92>>2];c=H[a+88>>2];if(d>>>0<=e-c>>2>>>0){c:{if(!d){break c}b=c;f=d&7;if(f){while(1){H[b>>2]=1;b=b+4|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}c=(d<<2)+c|0;if((d-1&1073741823)>>>0<7){break c}while(1){H[b+24>>2]=1;H[b+28>>2]=1;H[b+16>>2]=1;H[b+20>>2]=1;H[b+8>>2]=1;H[b+12>>2]=1;H[b>>2]=1;H[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}H[a+88>>2]=c;break b}d:{f=H[a+84>>2];j=c-f|0;c=j>>2;b=c+d|0;if(b>>>0<1073741824){e=e-f|0;h=e>>1;e=e>>>0<2147483644?b>>>0>h>>>0?b:h:1073741823;if(e){if(e>>>0>=1073741824){break d}i=$k(e<<2)}c=(c<<2)+i|0;b=c;h=d&7;if(h){b=c;while(1){H[b>>2]=1;b=b+4|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}c=c+(d<<2)|0;if((d-1&1073741823)>>>0>=7){while(1){H[b+24>>2]=1;H[b+28>>2]=1;H[b+16>>2]=1;H[b+20>>2]=1;H[b+8>>2]=1;H[b+12>>2]=1;H[b>>2]=1;H[b+4>>2]=1;b=b+32|0;if((c|0)!=(b|0)){continue}break}}if((j|0)>0){ek(i,f,j)}H[a+92>>2]=(e<<2)+i;H[a+88>>2]=c;H[a+84>>2]=i;if(f){Wk(f)}break b}Fa();X()}Ua(1604);X()}return}if(b>>>0>=d>>>0){break a}H[a+88>>2]=c+(b<<2)}}function Kb(a){var b=0,c=0,d=0,e=0,f=0;e=da-16|0;da=e;b=$k(16);H[e>>2]=b;H[e+4>>2]=14;H[e+8>>2]=-2147483632;F[b+14|0]=0;c=I[1761]|I[1762]<<8|(I[1763]<<16|I[1764]<<24);d=I[1757]|I[1758]<<8|(I[1759]<<16|I[1760]<<24);F[b+6|0]=d;F[b+7|0]=d>>>8;F[b+8|0]=d>>>16;F[b+9|0]=d>>>24;F[b+10|0]=c;F[b+11|0]=c>>>8;F[b+12|0]=c>>>16;F[b+13|0]=c>>>24;c=I[1755]|I[1756]<<8|(I[1757]<<16|I[1758]<<24);d=I[1751]|I[1752]<<8|(I[1753]<<16|I[1754]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;f=hi(a,e,-1);if(F[e+11|0]<0){Wk(H[e>>2])}b=$k(16);H[e>>2]=b;H[e+4>>2]=14;H[e+8>>2]=-2147483632;F[b+14|0]=0;c=I[1776]|I[1777]<<8|(I[1778]<<16|I[1779]<<24);d=I[1772]|I[1773]<<8|(I[1774]<<16|I[1775]<<24);F[b+6|0]=d;F[b+7|0]=d>>>8;F[b+8|0]=d>>>16;F[b+9|0]=d>>>24;F[b+10|0]=c;F[b+11|0]=c>>>8;F[b+12|0]=c>>>16;F[b+13|0]=c>>>24;c=I[1770]|I[1771]<<8|(I[1772]<<16|I[1773]<<24);d=I[1766]|I[1767]<<8|(I[1768]<<16|I[1769]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;a=hi(a,e,-1);if(F[e+11|0]<0){Wk(H[e>>2])}da=e+16|0;a=(a|0)>(f|0)?a:f;return(a|0)==-1?5:a}function Rb(a,b){var c=0,d=0,e=0,f=0,g=0;d=da-16|0;da=d;H[a+8>>2]=b;H[a>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;H[a+28>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+48>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+68>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+88>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+100>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;g=a+128|0;a:{b:{if(b){if(b>>>0<1073741824){break b}Fa();X()}H[a+104>>2]=0;H[a+108>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;e=1;break a}e=b<<2;c=$k(e);H[a+92>>2]=c;f=c+e|0;H[a+100>>2]=f;gk(c,0,e);H[a+112>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+96>>2]=f;c=$k(e);H[a+104>>2]=c;f=c+e|0;H[a+112>>2]=f;gk(c,0,e);H[a+124>>2]=0;H[a+116>>2]=0;H[a+120>>2]=0;H[a+108>>2]=f;c=$k(e);H[a+116>>2]=c;f=c+e|0;H[a+124>>2]=f;gk(c,0,e);H[a+120>>2]=f;c=$k(e);H[d>>2]=c;f=c+e|0;H[d+8>>2]=f;gk(c,0,e);H[d+4>>2]=f;e=b<<5|1}Wb(g,e,d);c=H[d>>2];if(c){H[d+4>>2]=c;Wk(c)}H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;if(b){b=b<<2;c=$k(b);H[d>>2]=c;f=b+c|0;H[d+8>>2]=f;gk(c,0,b);H[d+4>>2]=f}Wb(a+140|0,e,d);b=H[d>>2];if(b){H[d+4>>2]=b;Wk(b)}da=d+16|0;return a}function Sg(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=-1;a:{if((b|0)==-1){h=H[a+12>>2];i=h+12|0;d=1;g=-1;break a}b:{c:{if((b>>>0)%3|0){e=b-1|0;h=H[a+12>>2];i=h+12|0;break c}h=H[a+12>>2];i=h+12|0;e=b+2|0;if((e|0)!=-1){break c}d=1;break b}g=H[h+12>>2];while(1){f=e;d=H[g+(e<<2)>>2];if((d|0)!=-1){f=-1;e=d+1|0;e=(e>>>0)%3|0?e:d-2|0;if((e|0)!=-1){continue}}break}d=(d|0)!=-1;g=-1;if((b|0)==-1){break a}}g=H[H[h>>2]+(b<<2)>>2]}b=0;if(c){b=H[a+84>>2]+(g>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2]+(g<<2)>>2];e=H[a+140>>2]+(c>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>>0)%3|0){e=f-1|0;break e}e=f+2|0;if((e|0)!=-1){break e}f=-3;break d}c=H[H[h>>2]+(e<<2)>>2]}if((c|0)!=(g|0)){j=H[a+84>>2];while(1){a=f;f=(c>>>3&536870908)+j|0;H[f>>2]=H[f>>2]|1<>>0)%3|0?d:a-2|0;if((d|0)==-1){break f}e=H[i>>2];while(1){a=H[e+(d<<2)>>2];if((a|0)!=-1){d=a+1|0;d=(d>>>0)%3|0?d:a-2|0;if((d|0)!=-1){continue}break f}break}g:{if((d>>>0)%3|0){e=d-1|0;break g}e=d+2|0;if((e|0)!=-1){break g}f=-3;break f}c=H[H[h>>2]+(e<<2)>>2];f=d}b=b+1|0;if((c|0)!=(g|0)){continue}break}}}function Og(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{b:{b=H[a+12>>2];c=H[b+4>>2]-H[b>>2]|0;if(!c){break b}j=a+140|0;c=c>>2;k=c>>>0>1?c:1;while(1){c:{if(Ej(b,(e>>>0)/3|0)){break c}b=H[a+12>>2];if(H[H[b+12>>2]+(e<<2)>>2]!=-1){break c}f=H[a+152>>2];d=e+1|0;d=(d>>>0)%3|0?d:e-2|0;if((d|0)!=-1){b=H[H[b>>2]+(d<<2)>>2]}else{b=-1}c=b<<2;if(H[f+c>>2]!=-1){break c}g=-1;h=H[a+144>>2];b=h;d=H[a+148>>2];if((b|0)==d<<5){if((h+1|0)<0){break a}if(h>>>0<=1073741822){b=h+32&-32;d=d<<6;b=b>>>0>d>>>0?b:d}else{b=2147483647}Bc(j,b);f=H[a+152>>2];g=H[c+f>>2];b=H[a+144>>2]}H[a+144>>2]=b+1;d=H[a+140>>2]+(b>>>3&536870908)|0;i=H[d>>2];m=d,n=Jl(b)&i,H[m>>2]=n;if((g|0)!=-1){break c}i=H[a+12>>2];c=c+f|0;b=e;while(1){d=b;H[c>>2]=h;b=-1;g=-1;d:{if((d|0)==-1){break d}c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)==-1){break d}l=H[i+12>>2];while(1){d=H[(c<<2)+l>>2];if((d|0)!=-1){c=d+1|0;c=(c>>>0)%3|0?c:d-2|0;if((c|0)!=-1){continue}break d}break}b=c+1|0;b=(b>>>0)%3|0?b:c-2|0;if((b|0)!=-1){g=H[H[i>>2]+(b<<2)>>2]}b=c}c=(g<<2)+f|0;if(H[c>>2]==-1){continue}break}}e=e+1|0;if((k|0)==(e|0)){break b}b=H[a+12>>2];continue}}return 1}jl();X()}function Je(a,b,c){var d=0,e=0,f=0,g=0;f=da-16|0;da=f;d=$k(16);H[f>>2]=d;H[f+4>>2]=14;H[f+8>>2]=-2147483632;F[d+14|0]=0;g=I[1761]|I[1762]<<8|(I[1763]<<16|I[1764]<<24);e=I[1757]|I[1758]<<8|(I[1759]<<16|I[1760]<<24);F[d+6|0]=e;F[d+7|0]=e>>>8;F[d+8|0]=e>>>16;F[d+9|0]=e>>>24;F[d+10|0]=g;F[d+11|0]=g>>>8;F[d+12|0]=g>>>16;F[d+13|0]=g>>>24;g=I[1755]|I[1756]<<8|(I[1757]<<16|I[1758]<<24);e=I[1751]|I[1752]<<8|(I[1753]<<16|I[1754]<<24);F[d|0]=e;F[d+1|0]=e>>>8;F[d+2|0]=e>>>16;F[d+3|0]=e>>>24;F[d+4|0]=g;F[d+5|0]=g>>>8;F[d+6|0]=g>>>16;F[d+7|0]=g>>>24;d=a+4|0;fi(d,f,b);if(F[f+11|0]<0){Wk(H[f>>2])}a=$k(16);H[f>>2]=a;H[f+4>>2]=14;H[f+8>>2]=-2147483632;F[a+14|0]=0;e=I[1776]|I[1777]<<8|(I[1778]<<16|I[1779]<<24);b=I[1772]|I[1773]<<8|(I[1774]<<16|I[1775]<<24);F[a+6|0]=b;F[a+7|0]=b>>>8;F[a+8|0]=b>>>16;F[a+9|0]=b>>>24;F[a+10|0]=e;F[a+11|0]=e>>>8;F[a+12|0]=e>>>16;F[a+13|0]=e>>>24;e=I[1770]|I[1771]<<8|(I[1772]<<16|I[1773]<<24);b=I[1766]|I[1767]<<8|(I[1768]<<16|I[1769]<<24);F[a|0]=b;F[a+1|0]=b>>>8;F[a+2|0]=b>>>16;F[a+3|0]=b>>>24;F[a+4|0]=e;F[a+5|0]=e>>>8;F[a+6|0]=e>>>16;F[a+7|0]=e>>>24;fi(d,f,c);if(F[f+11|0]<0){Wk(H[f>>2])}da=f+16|0}function fh(a){a=a|0;var b=0,c=0,d=0,e=0;H[a>>2]=10560;e=H[a+280>>2];H[a+280>>2]=0;if(e){d=e-4|0;b=H[d>>2];if(b){c=(b<<5)+e|0;while(1){c=ve(c-32|0);if((e|0)!=(c|0)){continue}break}}Wk(d)}b=H[a+268>>2];if(b){H[a+272>>2]=b;Wk(b)}b=H[a+244>>2];H[a+244>>2]=0;if(b){Wk(b)}b=H[a+232>>2];if(b){H[a+236>>2]=b;Wk(b)}ve(a+200|0);b=H[a+184>>2];if(b){H[a+188>>2]=b;Wk(b)}d=H[a+172>>2];if(d){c=H[a+176>>2];if((d|0)==(c|0)){b=d}else{while(1){b=H[c-20>>2];if(b){H[c-16>>2]=b;Wk(b)}b=H[c-32>>2];if(b){H[c-28>>2]=b;Wk(b)}Xg(c-132|0);c=c-136|0;if((d|0)!=(c|0)){continue}break}b=H[a+172>>2]}H[a+176>>2]=d;Wk(b)}b=H[a+152>>2];if(b){H[a+156>>2]=b;Wk(b)}b=H[a+140>>2];if(b){Wk(b)}c=H[a+128>>2];if(c){while(1){b=H[c>>2];Wk(c);c=b;if(b){continue}break}}b=H[a+120>>2];H[a+120>>2]=0;if(b){Wk(b)}b=H[a+108>>2];if(b){H[a+112>>2]=b;Wk(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+84>>2];if(b){Wk(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;Wk(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;Wk(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;Wk(b)}b=H[a+28>>2];if(b){Wk(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}b=H[a+12>>2];H[a+12>>2]=0;if(b){Ng(a+12|0,b)}return a|0}function lk(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=H[a+112>>2];d=H[a+116>>2];e=!!(b|d);c=b;a:{i=e;e=H[a+4>>2];f=H[a+44>>2];b=e-f|0;h=b;g=b+H[a+120>>2]|0;b=H[a+124>>2]+(b>>31)|0;b=g>>>0>>0?b+1|0:b;if(!(i&(c>>>0<=g>>>0&(b|0)>=(d|0)|(b|0)>(d|0)))){d=da-16|0;da=d;e=-1;c=H[a+72>>2];H[a+72>>2]=c-1|c;if(H[a+20>>2]!=H[a+28>>2]){ga[H[a+36>>2]](a,0,0)|0}H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;c=H[a>>2];b:{if(c&4){H[a>>2]=c|32;c=-1;break b}f=H[a+44>>2]+H[a+48>>2]|0;H[a+8>>2]=f;H[a+4>>2]=f;c=c<<27>>31}c:{if(c){break c}if((ga[H[a+32>>2]](a,d+15|0,1)|0)!=1){break c}e=I[d+15|0]}da=d+16|0;if((e|0)>=0){break a}f=H[a+44>>2];e=H[a+4>>2]}H[a+112>>2]=-1;H[a+116>>2]=-1;H[a+104>>2]=e;d=f-e|0;e=d+g|0;b=(d>>31)+b|0;H[a+120>>2]=e;H[a+124>>2]=d>>>0>e>>>0?b+1|0:b;return-1}d=g+1|0;b=d?b:b+1|0;g=H[a+4>>2];f=H[a+8>>2];c=H[a+112>>2];h=H[a+116>>2];d:{if(!(c|h)){break d}i=c-d|0;c=h-(b+(d>>>0>c>>>0)|0)|0;j=f-g|0;h=j>>31;if((c|0)>=(h|0)&i>>>0>=j>>>0|(c|0)>(h|0)){break d}f=g+i|0}H[a+104>>2]=f;c=H[a+44>>2];f=c-g|0;d=f+d|0;b=(f>>31)+b|0;H[a+120>>2]=d;H[a+124>>2]=d>>>0>>0?b+1|0:b;if(c>>>0>=g>>>0){F[g-1|0]=e}return e}function ek(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){aa(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){F[c|0]=I[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){H[c>>2]=H[b>>2];H[c+4>>2]=H[b+4>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=H[b+12>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=H[b+20>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=H[b+28>>2];H[c+32>>2]=H[b+32>>2];H[c+36>>2]=H[b+36>>2];H[c+40>>2]=H[b+40>>2];H[c+44>>2]=H[b+44>>2];H[c+48>>2]=H[b+48>>2];H[c+52>>2]=H[b+52>>2];H[c+56>>2]=H[b+56>>2];H[c+60>>2]=H[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){H[c>>2]=H[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){F[c|0]=I[b|0];F[c+1|0]=I[b+1|0];F[c+2|0]=I[b+2|0];F[c+3|0]=I[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){F[c|0]=I[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function nb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=H[a+8>>2];e=H[a+4>>2];if(f-e>>2>>>0>=b>>>0){a:{if(!b){break a}d=e;g=b&7;if(g){while(1){H[d>>2]=H[c>>2];d=d+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}e=(b<<2)+e|0;if((b-1&1073741823)>>>0<7){break a}while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=e;return}b:{g=H[a>>2];k=e-g|0;e=k>>2;d=e+b|0;if(d>>>0<1073741824){f=f-g|0;i=f>>1;f=f>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(f){if(f>>>0>=1073741824){break b}j=$k(f<<2)}e=(e<<2)+j|0;d=e;i=b&7;if(i){d=e;while(1){H[d>>2]=H[c>>2];d=d+4|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}e=e+(b<<2)|0;if((b-1&1073741823)>>>0>=7){while(1){H[d>>2]=H[c>>2];H[d+4>>2]=H[c>>2];H[d+8>>2]=H[c>>2];H[d+12>>2]=H[c>>2];H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c>>2];H[d+24>>2]=H[c>>2];H[d+28>>2]=H[c>>2];d=d+32|0;if((e|0)!=(d|0)){continue}break}}if((k|0)>0){ek(j,g,k)}H[a+8>>2]=(f<<2)+j;H[a+4>>2]=e;H[a>>2]=j;if(g){Wk(g)}return}Fa();X()}Ua(1604);X()}function Mi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a=da-32|0;da=a;a:{b:{c:{d:{if(!b){break d}f=jk(c);if(f>>>0>=4294967280){break c}e:{f:{if(f>>>0>=11){h=f+16&-16;g=$k(h);H[a+24>>2]=h|-2147483648;H[a+16>>2]=g;H[a+20>>2]=f;break f}F[a+27|0]=f;g=a+16|0;if(!f){break e}}ek(g,c,f)}F[f+g|0]=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;if(e){if((e|0)<0){break b}c=e<<2;e=$k(c);H[a>>2]=e;f=c+e|0;H[a+8>>2]=f;ek(e,d,c);H[a+4>>2]=f}c=da-48|0;da=c;d=Zb(b,a+16|0);if((d|0)!=(b+4|0)){Sj(b,d)}H[c>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;d=H[a+4>>2]-H[a>>2]|0;ai(c,d);ek(H[c>>2],H[a>>2],d);g:{if(F[a+27|0]>=0){H[c+24>>2]=H[a+24>>2];d=H[a+20>>2];H[c+16>>2]=H[a+16>>2];H[c+20>>2]=d;break g}el(c+16|0,H[a+16>>2],H[a+20>>2])}H[c+36>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;ai(c+28|0,H[c+4>>2]-H[c>>2]|0);d=H[c>>2];ek(H[c+28>>2],d,H[c+4>>2]-d|0);d=c+16|0;Tj(c+40|0,b,d,d);d=H[c+28>>2];if(d){H[c+32>>2]=d;Wk(d)}if(F[c+27|0]<0){Wk(H[c+16>>2])}d=H[c>>2];if(d){H[c+4>>2]=d;Wk(d)}da=c+48|0;c=H[a>>2];if(c){H[a+4>>2]=c;Wk(c)}if(F[a+27|0]>=0){break d}Wk(H[a+16>>2])}da=a+32|0;a=(b|0)!=0;break a}se();X()}Fa();X()}return a|0}function Zg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;a:{b:{e=H[a+124>>2];c:{if(!e){break c}f=H[a+120>>2];i=Il(e);h=e-1&d;d:{if(i>>>0<=1){break d}h=d;if(d>>>0>>0){break d}h=(d>>>0)%(e>>>0)|0}f=H[f+(h<<2)>>2];if(!f){break c}g=H[f>>2];if(!g){break c}e:{if(i>>>0<=1){f=e-1|0;while(1){e=H[g+4>>2];f:{if((e|0)!=(d|0)){if((h|0)==(e&f)){break f}break c}if(H[g+8>>2]==(d|0)){break e}}g=H[g>>2];if(g){continue}break}break c}while(1){f=H[g+4>>2];g:{if((f|0)!=(d|0)){if(e>>>0<=f>>>0){f=(f>>>0)%(e>>>0)|0}if((f|0)==(h|0)){break g}break c}if(H[g+8>>2]==(d|0)){break e}}g=H[g>>2];if(g){continue}break}break c}h=H[g+12>>2];if((h|0)==-1){break c}g=c&1;c=H[a+112>>2];if((c|0)!=H[a+116>>2]){F[c+8|0]=g;H[c+4>>2]=b;H[c>>2]=h;H[a+112>>2]=c+12;return}d=H[a+108>>2];f=c-d|0;c=(f|0)/12|0;e=c+1|0;if(e>>>0>=357913942){break b}i=c<<1;e=c>>>0<178956970?e>>>0>i>>>0?e:i:357913941;if(e>>>0>=357913942){break a}e=N(e,12);i=$k(e);c=i+N(c,12)|0;F[c+8|0]=g;H[c+4>>2]=b;H[c>>2]=h;b=c+N((f|0)/-12|0,12)|0;if((f|0)>0){ek(b,d,f)}H[a+116>>2]=e+i;H[a+112>>2]=c+12;H[a+108>>2]=b;if(!d){break c}Wk(d)}return}Fa();X()}Ua(1604);X()}function fi(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=da-48|0;da=f;e=da-32|0;da=e;i=e+21|0;d=i;l=e+32|0;if(!((d|0)==(l|0)|(c|0)>=0)){F[d|0]=45;d=d+1|0;c=0-c|0}a:{b:{h=l-d|0;if((h|0)<=9){g=N(32-Q(c|1)|0,1233)>>>12|0;if((h|0)<((g-(K[(g<<2)+18416>>2]>c>>>0)|0)+1|0)){break b}}h=e;c:{if(c>>>0<=99999999){d:{if(c>>>0<=9999){c=cl(d,c);break d}g=d;d=(c>>>0)/1e4|0;c=bl(cl(g,d),c-N(d,1e4)|0)}break c}g=(c>>>0)/1e8|0;j=c-N(g,1e8)|0;c=(j>>>0)/1e4|0;c=bl(bl(al(d,g),c),j-N(c,1e4)|0)}H[h+8>>2]=c;c=0;break a}H[e+8>>2]=l;c=61}H[e+12>>2]=c;g=da-16|0;da=g;h=da-16|0;da=h;c=f+8|0;e:{j=H[e+8>>2];e=j-i|0;if(e>>>0<=4294967279){f:{if(e>>>0<=10){F[c+11|0]=e;d=c;break f}if(e>>>0>=11){k=e+16&-16;d=k-1|0;d=(d|0)==11?k:d}else{d=10}k=d+1|0;d=$k(k);H[c>>2]=d;H[c+8>>2]=k|-2147483648;H[c+4>>2]=e}while(1){if((i|0)!=(j|0)){F[d|0]=I[i|0];d=d+1|0;i=i+1|0;continue}break}F[h+15|0]=0;F[d|0]=I[h+15|0];da=h+16|0;break e}se();X()}da=g+16|0;da=l;H[f+32>>2]=b;Ue(f+40|0,a,b,f+32|0);a=H[f+40>>2];if(F[a+39|0]<0){Wk(H[a+28>>2])}b=H[f+12>>2];H[a+28>>2]=H[f+8>>2];H[a+32>>2]=b;H[a+36>>2]=H[f+16>>2];da=f+48|0}function Cb(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{b:{g=a+16|0;d=H[g>>2];if(!d){break b}h=H[b>>2];b=g;while(1){f=(h|0)>H[d+16>>2];b=f?b:d;d=H[(f<<2)+d>>2];if(d){continue}break}if((b|0)==(g|0)|(h|0)>2]){break b}d=H[b+24>>2];if(!d){break a}a=I[c+11|0];b=a<<24>>24<0;g=b?H[c>>2]:c;a=b?H[c+4>>2]:a;while(1){b=I[d+27|0];c=b<<24>>24<0;b=c?H[d+20>>2]:b;h=b>>>0>>0;c:{d:{f=h?b:a;e:{if(f){e=d+16|0;c=c?H[e>>2]:e;e=ik(g,c,f);f:{if(!e){if(a>>>0>=b>>>0){break f}break c}if((e|0)<0){break c}}b=ik(c,g,f);if(!b){break e}if((b|0)<0){break d}return 1}if(a>>>0>>0){break c}}if(h){break d}return 1}d=d+4|0}d=H[d>>2];if(d){continue}break}break a}d=H[a+4>>2];if(!d){break a}a=I[c+11|0];b=a<<24>>24<0;g=b?H[c>>2]:c;a=b?H[c+4>>2]:a;while(1){b=I[d+27|0];c=b<<24>>24<0;b=c?H[d+20>>2]:b;h=b>>>0>>0;g:{h:{f=h?b:a;i:{if(f){e=d+16|0;c=c?H[e>>2]:e;e=ik(g,c,f);j:{if(!e){if(a>>>0>=b>>>0){break j}break g}if((e|0)<0){break g}}b=ik(c,g,f);if(!b){break i}if((b|0)<0){break h}return 1}if(a>>>0>>0){break g}}if(h){break h}return 1}d=d+4|0}d=H[d>>2];if(d){continue}break}}return 0}function Dc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;H[a+4>>2]=b;d=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];H[a+12>>2]=c;H[a+8>>2]=d;a:{if((ga[H[H[a>>2]+32>>2]](a)|0)==1&H[H[a+8>>2]+28>>2]-1>>>0>5){break a}f=H[b+48>>2];d=da-16|0;da=d;H[d+12>>2]=c;b=$k(32);H[d>>2]=b;H[d+4>>2]=17;H[d+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1688];c=I[1684]|I[1685]<<8|(I[1686]<<16|I[1687]<<24);e=I[1680]|I[1681]<<8|(I[1682]<<16|I[1683]<<24);F[b+8|0]=e;F[b+9|0]=e>>>8;F[b+10|0]=e>>>16;F[b+11|0]=e>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1676]|I[1677]<<8|(I[1678]<<16|I[1679]<<24);e=I[1672]|I[1673]<<8|(I[1674]<<16|I[1675]<<24);F[b|0]=e;F[b+1|0]=e>>>8;F[b+2|0]=e>>>16;F[b+3|0]=e>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;b=Bb(f,d+12|0,d,-1);if(F[d+11|0]<0){Wk(H[d>>2])}da=d+16|0;b=ga[H[H[a>>2]+48>>2]](a,(b|0)==-1?-1:b>>>0>6?-2:b)|0;c=H[a+36>>2];H[a+36>>2]=b;e=1;if(c){ga[H[H[c>>2]+4>>2]](c);b=H[a+36>>2]}if(!b){break a}if(ga[H[H[a>>2]+36>>2]](a,b)|0){break a}b=H[a+36>>2];H[a+36>>2]=0;if(!b){break a}ga[H[H[b>>2]+4>>2]](b)}return e|0}function ac(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=32-b|0;c=c<>2];f=32-e|0;d:{if((f|0)>=(b|0)){b=b+e|0;H[a+16>>2]=b;f=H[a+12>>2]|c>>>e;H[a+12>>2]=f;if((b|0)!=32){break d}b=H[a+4>>2];e:{if((b|0)!=H[a+8>>2]){H[b>>2]=f;H[a+4>>2]=b+4;break e}e=H[a>>2];c=b-e|0;g=c>>2;b=g+1|0;if(b>>>0>=1073741824){break c}d=c>>1;d=c>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break b}b=$k(d<<2)}else{b=0}g=b+(g<<2)|0;H[g>>2]=f;if((c|0)>0){ek(b,e,c)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=g+4;H[a>>2]=b;if(!e){break e}Wk(e)}H[a+12>>2]=0;H[a+16>>2]=0;return}b=b-f|0;H[a+16>>2]=b;g=c>>>d|0;f=H[a+12>>2]|g>>>b;H[a+12>>2]=f;b=H[a+4>>2];f:{if((b|0)!=H[a+8>>2]){H[b>>2]=f;H[a+4>>2]=b+4;break f}e=H[a>>2];c=b-e|0;h=c>>2;b=h+1|0;if(b>>>0>=1073741824){break c}d=c>>1;d=c>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break a}b=$k(d<<2)}else{b=0}h=b+(h<<2)|0;H[h>>2]=f;if((c|0)>0){ek(b,e,c)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=h+4;H[a>>2]=b;if(!e){break f}Wk(e)}H[a+12>>2]=g<<32-H[a+16>>2]}return}Fa();X()}Ua(1604);X()}Ua(1604);X()}function Hl(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(b){if(!g){break k}if(!d){break j}c=Q(d)-Q(b)|0;if(c>>>0<=31){break i}break c}if((d|0)==1|d>>>0>1){break c}a=(a>>>0)/(g>>>0)|0;fa=0;break a}if(!a){break h}if(!d){break g}if(d-1&d){break g}a=b>>>Kl(d)|0;fa=0;break a}if(!(g-1&g)){break f}h=(Q(g)+33|0)-Q(b)|0;e=0-h|0;break d}h=c+1|0;e=63-c|0;break d}a=(b>>>0)/(d>>>0)|0;fa=0;break a}c=Q(d)-Q(b)|0;if(c>>>0<31){break e}break c}if((g|0)==1){break b}c=Kl(g);d=c&31;if((c&63)>>>0>=32){c=0;a=b>>>d|0}else{c=b>>>d|0;a=((1<>>d}fa=c;break a}h=c+1|0;e=63-c|0}c=h&63;f=c&31;if(c>>>0>=32){c=0;i=b>>>f|0}else{c=b>>>f|0;i=((1<>>f}f=c;c=e&63;e=c&31;if(c>>>0>=32){c=a<>>32-e|b<>>31;f=f<<1|i>>>31;j=m-(f+(c>>>0>e>>>0)|0)>>31;k=g&j;i=c-k|0;f=f-((d&j)+(c>>>0>>0)|0)|0;b=b<<1|a>>>31;a=l|a<<1;l=j&1;h=h-1|0;if(h){continue}break}}fa=b<<1|a>>>31;a=l|a<<1;break a}a=0;b=0}fa=b}return a}function Nj(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=da-16|0;da=e;a:{d=Wj(a);b:{if(!d){a=0;break b}b=H[a+100>>2];g=H[a+96>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;f=b-g|0;b=(f|0)/12|0;c:{if(!f){break c}if(b>>>0>=357913942){break a}c=$k(f);H[e>>2]=c;H[e+8>>2]=c+N(b,12);a=0;h=c;c=N((f-12>>>0)/12|0,12)+12|0;f=gk(h,0,c);H[e+4>>2]=c+f;if(I[d+84|0]){d=b>>>0>1?b:1;i=d&1;if(b>>>0>=2){j=d&-2;b=0;while(1){c=N(a,12);d=c+g|0;h=H[d+4>>2];k=H[d>>2];c=c+f|0;H[c+8>>2]=H[d+8>>2];H[c>>2]=k;H[c+4>>2]=h;c=N(a|1,12);d=c+g|0;h=H[d+8>>2];k=H[d+4>>2];c=c+f|0;H[c>>2]=H[d>>2];H[c+4>>2]=k;H[c+8>>2]=h;a=a+2|0;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!i){break c}b=N(a,12);a=b+g|0;g=H[a+4>>2];d=H[a>>2];b=b+f|0;H[b+8>>2]=H[a+8>>2];H[b>>2]=d;H[b+4>>2]=g;break c}i=b>>>0>1?b:1;a=H[d+68>>2];b=0;while(1){c=N(b,12);d=c+g|0;j=H[a+(H[d>>2]<<2)>>2];h=H[a+(H[d+4>>2]<<2)>>2];c=c+f|0;H[c+8>>2]=H[a+(H[d+8>>2]<<2)>>2];H[c+4>>2]=h;H[c>>2]=j;b=b+1|0;if((i|0)!=(b|0)){continue}break}}a=Dj(e);b=H[e>>2];if(!b){break b}H[e+4>>2]=b;Wk(b)}da=e+16|0;return a}Fa();X()}function hk(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;A(+a);c=v(1)|0;b=v(0)|0;d=c-1072604335|0;if((d|0)==135337|d>>>0<135337){if(!b&(c|0)==1072693248){return 0}f=M[1881];a=a+-1;A(+a);b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);g=+z();h=f*g;e=a*a;i=e*(a*M[1890]+M[1889]);j=h+i;l=e*e;return j+(l*(l*(e*(a*M[1898]+M[1897])+(a*M[1896]+M[1895]))+(e*(a*M[1894]+M[1893])+(a*M[1892]+M[1891])))+((a-g)*f+a*M[1882]+(i+(h-j))))}d=c>>>16|0;a:{if(d-32752>>>0<=4294934559){if(!(c&2147483647|b)){b=da-16|0;M[b+8>>3]=-1;return M[b+8>>3]/0}if(!b&(c|0)==2146435072){break a}if(!(!(d&32768)&(d&32752)!=32752)){a=a-a;return a/a}A(+(a*4503599627370496));c=v(1)|0;b=v(0)|0;c=c-54525952|0}d=c-1072037888|0;k=(d>>>14&63)<<4;f=M[k+15200>>3]+ +(d>>20);g=M[1881];a=M[k+15192>>3];x(0,b-0|0);x(1,c-((d&-1048576)+(b>>>0>>0)|0)|0);a=a*(+z()-M[k+16216>>3]-M[k+16224>>3]);A(+a);b=v(1)|0;v(0)|0;x(0,0);x(1,b|0);h=+z();i=g*h;j=f+i;e=a*a;a=j+(e*(e*e*(a*M[1888]+M[1887])+(e*(a*M[1886]+M[1885])+(a*M[1884]+M[1883])))+((a-h)*g+M[1882]*a+(i+(f-j))))}return a}function ak(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=H[a+12>>2];g=H[a+8>>2];j=m-g|0;e=H[c>>2];n=H[c+4>>2];a:{if((e|0)==(n|0)){break a}p=H[b>>2];if((j|0)<=0){while(1){b=H[(H[e>>2]<<2)+p>>2];d=b>>>0>>0?d:b+1|0;e=e+4|0;if((n|0)!=(e|0)){continue}break}break a}b=j>>2;b=(b|0)>1?b:1;r=b&2147483646;s=b&1;t=(j|0)<8;while(1){c=H[e>>2];k=c<<2;l=H[p+k>>2];if(l>>>0>=d>>>0){d=0;i=0;if(!t){while(1){q=d<<2;h=H[q+g>>2];f=H[h+68>>2];b=c;b=I[h+84|0]?b:H[f+k>>2];h=f;f=l<<2;H[h+f>>2]=b;h=f;b=H[(q|4)+g>>2];f=H[b+68>>2];H[h+f>>2]=I[b+84|0]?c:H[f+k>>2];d=d+2|0;i=i+2|0;if((r|0)!=(i|0)){continue}break}}if(s){b=H[(d<<2)+g>>2];d=H[b+68>>2];i=d+(l<<2)|0;if(!I[b+84|0]){c=H[d+k>>2]}H[i>>2]=c}d=l+1|0}e=e+4|0;if((n|0)!=(e|0)){continue}break}}if((j|0)>0){while(1){b=H[(o<<2)+g>>2];F[b+84|0]=0;e=H[b+68>>2];c=H[b+72>>2]-e>>2;b:{if(c>>>0>>0){nb(b+68|0,d-c|0,15040);g=H[a+8>>2];m=H[a+12>>2];break b}if(c>>>0<=d>>>0){break b}H[b+72>>2]=e+(d<<2)}o=o+1|0;if((o|0)>2){continue}break}}}function Ze(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=da-16|0;da=j;H[j+8>>2]=0;H[j>>2]=0;H[j+4>>2]=0;a:{b:{e=c+1|0;if(e>>>0>=c>>>0){if(e>>>0>=1073741824){break b}h=$k(e<<2);gk(h,0,(c<<2)+4|0)}c:{if((b|0)<=0){break c}e=0;if(b-1>>>0>=3){k=b&-4;while(1){f=e<<2;i=(H[f+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;i=(H[(f|4)+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;i=(H[(f|8)+a>>2]<<2)+h|0;H[i>>2]=H[i>>2]+1;f=(H[(f|12)+a>>2]<<2)+h|0;H[f>>2]=H[f>>2]+1;e=e+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}f=b&3;if(!f){break c}while(1){k=(H[(e<<2)+a>>2]<<2)+h|0;H[k>>2]=H[k>>2]+1;e=e+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}e=0;if((c|0)<0){a=0;break a}o=+(b|0);a=0;while(1){b=H[(e<<2)+h>>2];if((b|0)>0){n=+(b|0);g=n*hk(n/o)+g;a=a+1|0}b=(c|0)==(e|0);e=e+1|0;if(!b){continue}break}break a}Fa();X()}if(d){H[d>>2]=a}if(h){Wk(h)}g=-g;d:{if(P(g)<0x8000000000000000){b=P(g)>=1?~~(g>0?R(T(g*2.3283064365386963e-10),4294967295):U((g-+(~~g>>>0>>>0))*2.3283064365386963e-10))>>>0:0;a=~~g>>>0;break d}b=-2147483648;a=0}da=j+16|0;fa=b;return a}function Qe(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);F[b+12|0]=c;a:{if(c){break a}while(1){d=H[b+8>>2];if(I[d+12|0]){break a}b:{c=H[d+8>>2];e=H[c>>2];c:{if((d|0)==(e|0)){e=H[c+4>>2];if(!(!e|I[e+12|0])){break b}d:{if(H[d>>2]==(b|0)){b=d;break d}b=H[d+4>>2];a=H[b>>2];H[d+4>>2]=a;if(a){H[a+8>>2]=d;c=H[d+8>>2]}H[b+8>>2]=c;a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b>>2]=d;H[d+8>>2]=b;c=H[b+8>>2]}F[b+12|0]=1;F[c+12|0]=0;a=H[c>>2];b=H[a+4>>2];H[c>>2]=b;if(b){H[b+8>>2]=c}H[a+8>>2]=H[c+8>>2];b=H[c+8>>2];H[((H[b>>2]!=(c|0))<<2)+b>>2]=a;H[a+4>>2]=c;b=c+8|0;break c}if(!(I[e+12|0]|!e)){break b}e:{if(H[d>>2]!=(b|0)){b=d;break e}a=H[b+4>>2];H[d>>2]=a;if(a){H[a+8>>2]=d;c=H[d+8>>2]}H[b+8>>2]=c;a=H[d+8>>2];H[(((d|0)!=H[a>>2])<<2)+a>>2]=b;H[b+4>>2]=d;H[d+8>>2]=b;c=H[b+8>>2]}F[b+12|0]=1;F[c+12|0]=0;a=H[c+4>>2];b=H[a>>2];H[c+4>>2]=b;if(b){H[b+8>>2]=c}H[a+8>>2]=H[c+8>>2];b=H[c+8>>2];H[((H[b>>2]!=(c|0))<<2)+b>>2]=a;H[a>>2]=c;b=c+8|0}H[b>>2]=a;break a}F[d+12|0]=1;d=(a|0)==(c|0);F[c+12|0]=d;F[e+12|0]=1;b=c;if(!d){continue}break}}}function of(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0;a:{b:{if((e|0)<=(f|0)){if((a|0)==(b|0)){break b}e=g;f=a;while(1){H[e>>2]=H[f>>2];e=e+4|0;f=f+4|0;if((f|0)!=(b|0)){continue}break}if((e|0)==(g|0)){break b}d=H[d>>2];while(1){if((b|0)==(c|0)){b=e-g|0;if(!b){break b}fk(a,g,b);return}c:{f=H[d>>2];h=H[d+4>>2]-f>>3;i=H[b>>2];if(h>>>0<=i>>>0){break c}j=h;h=H[g>>2];if(j>>>0<=h>>>0){break c}d:{if(K[f+(i<<3)>>2]>2]){H[a>>2]=i;b=b+4|0;break d}H[a>>2]=h;g=g+4|0}a=a+4|0;if((e|0)!=(g|0)){continue}break b}break}Sc();X()}if((b|0)==(c|0)){break b}e=g;f=b;while(1){H[e>>2]=H[f>>2];e=e+4|0;f=f+4|0;if((f|0)!=(c|0)){continue}break}if((e|0)==(g|0)){break b}while(1){if((a|0)==(b|0)){while(1){c=c-4|0;e=e-4|0;H[c>>2]=H[e>>2];if((e|0)!=(g|0)){continue}break b}}i=H[d>>2];f=H[i>>2];h=H[i+4>>2]-f>>3;k=e-4|0;i=H[k>>2];if(h>>>0<=i>>>0){break a}j=h;l=b-4|0;h=H[l>>2];if(j>>>0<=h>>>0){break a}c=c-4|0;f=K[f+(i<<3)>>2]>2];H[c>>2]=f?h:i;b=f?l:b;e=f?e:k;if((g|0)!=(e|0)){continue}break}}return}Sc();X()}function _b(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=da-32|0;da=b;c=H[a+16>>2];a:{if(c>>>0>=113){H[a+16>>2]=c-113;c=H[a+4>>2];H[b+8>>2]=H[c>>2];H[a+4>>2]=c+4;bc(a,b+8|0);break a}b:{c:{d:{e:{e=H[a+8>>2];f=e-H[a+4>>2]>>2;d=H[a+12>>2];c=d-H[a>>2]|0;if(f>>>0>2>>>0){if((d|0)==(e|0)){break e}g=b,h=$k(4068),H[g+8>>2]=h;bc(a,b+8|0);break a}H[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=$k(d);H[b+8>>2]=c;e=c+(f<<2)|0;H[b+16>>2]=e;H[b+20>>2]=c+d;H[b+12>>2]=e;g=b,h=$k(4068),H[g+4>>2]=h;bc(b+8|0,b+4|0);d=H[a+8>>2];if((d|0)==H[a+4>>2]){c=d;break b}while(1){d=d-4|0;cc(b+8|0,d);if(H[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=$k(4068),H[g+8>>2]=h;c=b+8|0;cc(a,c);d=H[a+4>>2];H[b+8>>2]=H[d>>2];H[a+4>>2]=d+4;bc(a,c);break a}Ua(1604);X()}c=H[a+8>>2]}e=H[a>>2];H[a>>2]=H[b+8>>2];H[b+8>>2]=e;H[a+4>>2]=H[b+12>>2];H[b+12>>2]=d;H[a+8>>2]=H[b+16>>2];H[b+16>>2]=c;f=H[a+12>>2];H[a+12>>2]=H[b+20>>2];H[b+20>>2]=f;if((c|0)!=(d|0)){H[b+16>>2]=c+(((c-d|0)-4>>>2^-1)<<2)}if(!e){break a}Wk(e)}da=b+32|0}function Ka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=da-16|0;da=k;if(H[c+28>>2]==9){d=H[a+4>>2];g=F[c+24|0];e=g<<2;f=$k((g&1073741823)!=(g|0)?-1:e);l=k+8|0;H[l>>2]=1065353216;i=L[a+20>>2];d=-1<0){L[l>>2]=i/O(d|0)}o=(d|0)>0;a:{if(!o){break a}j=H[c+80>>2];if(!j){break a}d=0;if((g|0)<=0){if((j|0)!=1){a=j&-2;b=0;while(1){ek(H[H[c+64>>2]>>2]+d|0,f,e);d=d+e|0;ek(d+H[H[c+64>>2]>>2]|0,f,e);d=d+e|0;b=b+2|0;if((a|0)!=(b|0)){continue}break}}if(!(j&1)){break a}ek(H[H[c+64>>2]>>2]+d|0,f,e);break a}p=H[H[b>>2]>>2]+H[b+48>>2]|0;t=g&-2;u=g&1;while(1){m=H[a+8>>2];i=L[l>>2];b=0;n=0;if((g|0)!=1){while(1){h=b<<2;q=(d<<2)+p|0;L[h+f>>2]=O(i*O(H[q>>2]))+L[h+m>>2];h=h|4;L[h+f>>2]=O(i*O(H[q+4>>2]))+L[h+m>>2];b=b+2|0;d=d+2|0;n=n+2|0;if((t|0)!=(n|0)){continue}break}}if(u){b=b<<2;L[b+f>>2]=O(i*O(H[(d<<2)+p>>2]))+L[b+m>>2];d=d+1|0}ek(H[H[c+64>>2]>>2]+r|0,f,e);r=e+r|0;s=s+1|0;if((s|0)!=(j|0)){continue}break}}Wk(f)}da=k+16|0;return o|0}function Zk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{if(I[a+11|0]>>>7|0){d=H[a+4>>2]}else{d=I[a+11|0]}if(d>>>0>>0){i=da-16|0;da=i;h=b-d|0;if(h){e=I[a+11|0]>>>7|0?(H[a+8>>2]&2147483647)-1|0:10;if(I[a+11|0]>>>7|0){b=H[a+4>>2]}else{b=I[a+11|0]}j=b+h|0;if(e-b>>>0>>0){b:{g=da-16|0;da=g;c=j-e|0;if(c>>>0<=-17-e>>>0){if(I[a+11|0]>>>7|0){d=H[a>>2]}else{d=a}c:{if(e>>>0<2147483623){H[g+8>>2]=e<<1;H[g+12>>2]=c+e;c=da-16|0;da=c;da=c+16|0;c=g+8|0;f=g+12|0;c=H[(K[f>>2]>2]?c:f)>>2];if(c>>>0>=11){f=c+16&-16;c=f-1|0;c=(c|0)==11?f:c}else{c=10}break c}c=-18}f=c+1|0;c=$k(f);if(b){Xk(c,d,b)}if((e|0)!=10){Wk(d)}H[a>>2]=c;H[a+8>>2]=f|-2147483648;da=g+16|0;break b}se();X()}}d=b;if(I[a+11|0]>>>7|0){b=H[a>>2]}else{b=a}d=d+b|0;if(h){gk(d,0,h)}d:{if(I[a+11|0]>>>7|0){H[a+4>>2]=j;break d}F[a+11|0]=j}F[i+15|0]=0;F[b+j|0]=I[i+15|0]}da=i+16|0;break a}d=da-16|0;da=d;e:{if(I[a+11|0]>>>7|0){e=H[a>>2];F[d+15|0]=0;F[b+e|0]=I[d+15|0];H[a+4>>2]=b;break e}F[d+14|0]=0;F[a+b|0]=I[d+14|0];F[a+11|0]=b}da=d+16|0}}function Ga(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=H[b+88>>2];if(!(!c|H[c>>2]!=1)){d=H[c+8>>2];H[a+4>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);d=F[b+24|0];e=H[a+8>>2];f=H[a+12>>2]-e>>2;a:{if(d>>>0>f>>>0){Ha(a+8|0,d-f|0);d=F[b+24|0];e=H[a+8>>2];break a}if(d>>>0>=f>>>0){break a}H[a+12>>2]=(d<<2)+e}k=1;f=H[c+8>>2];b:{if((d|0)<=0){b=4;break b}h=d&3;c:{if(d-1>>>0<3){b=4;d=0;break c}l=d&-4;d=0;b=4;while(1){g=d<<2;c=b+f|0;H[g+e>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);H[(g|4)+e>>2]=I[c+4|0]|I[c+5|0]<<8|(I[c+6|0]<<16|I[c+7|0]<<24);H[(g|8)+e>>2]=I[c+8|0]|I[c+9|0]<<8|(I[c+10|0]<<16|I[c+11|0]<<24);H[(g|12)+e>>2]=I[c+12|0]|I[c+13|0]<<8|(I[c+14|0]<<16|I[c+15|0]<<24);d=d+4|0;b=b+16|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}if(!h){break b}while(1){c=b+f|0;H[(d<<2)+e>>2]=I[c|0]|I[c+1|0]<<8|(I[c+2|0]<<16|I[c+3|0]<<24);d=d+1|0;b=b+4|0;j=j+1|0;if((j|0)!=(h|0)){continue}break}}c=a;a=b+f|0;H[c+20>>2]=I[a|0]|I[a+1|0]<<8|(I[a+2|0]<<16|I[a+3|0]<<24)}return k|0}function Qk(a,b,c,d){var e=0,f=0,g=0,h=0;g=da-32|0;da=g;e=d&2147483647;h=e;f=e-1006698496|0;e=e-1140785152|0;a:{if((f|0)==(e|0)&0|e>>>0>f>>>0){e=d<<4|c>>>28;f=c<<4|b>>>28;c=e;b=b&268435455;if((b|0)==134217728&(a|0)!=0|b>>>0>134217728){e=c+1073741824|0;a=f+1|0;e=a?e:e+1|0;f=a;break a}e=c+1073741824|0;if(b^134217728|a){break a}b=f&1;a=b+f|0;e=a>>>0>>0?e+1|0:e;f=a;break a}if(!(!c&(h|0)==2147418112?!(a|b):h>>>0<2147418112)){e=c;c=d<<4|e>>>28;f=e<<4|b>>>28;e=c&524287|2146959360;break a}f=0;e=2146435072;if(h>>>0>1140785151){break a}e=0;h=h>>>16|0;if(h>>>0<15249){break a}e=d&65535|65536;Fk(g+16|0,a,b,c,e,h-15233|0);Mk(g,a,b,c,e,15361-h|0);e=H[g+4>>2];h=e;a=H[g+8>>2];c=H[g+12>>2]<<4|a>>>28;f=a<<4|e>>>28;e=c;a=h&268435455;b=H[g>>2]|(H[g+16>>2]|H[g+24>>2]|(H[g+20>>2]|H[g+28>>2]))!=0;if((a|0)==134217728&(b|0)!=0|a>>>0>134217728){a=f+1|0;e=a?e:e+1|0;f=a;break a}if(a^134217728|b){break a}a=f+(f&1)|0;e=a>>>0>>0?e+1|0:e;f=a}da=g+32|0;x(0,f|0);x(1,d&-2147483648|e);return+z()}function Lb(a){var b=0,c=0,d=0,e=0;c=H[a+1176>>2];if(c){b=H[a+1180>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;Wk(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+1176>>2]}H[a+1180>>2]=c;Wk(b)}c=H[a+1164>>2];if(c){b=H[a+1168>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;Wk(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+1164>>2]}H[a+1168>>2]=c;Wk(b)}b=H[a+1152>>2];if(b){H[a+1156>>2]=b;Wk(b)}b=H[a+1140>>2];if(b){H[a+1144>>2]=b;Wk(b)}b=H[a+1128>>2];if(b){H[a+1132>>2]=b;Wk(b)}te(a+1108|0);te(a+1088|0);te(a+1068|0);ve(a+1036|0);a=a+12|0;ve(a+992|0);ve(a+960|0);ve(a+928|0);ve(a+896|0);ve(a+864|0);ve(a+832|0);ve(a+800|0);ve(a+768|0);ve(a+736|0);ve(a+704|0);ve(a+672|0);ve(a+640|0);ve(a+608|0);ve(a+576|0);ve(a+544|0);ve(a+512|0);ve(a+480|0);ve(a+448|0);ve(a+416|0);ve(a+384|0);ve(a+352|0);ve(a+320|0);ve(a+288|0);ve(a+256|0);ve(a+224|0);ve(a+192|0);ve(a+160|0);ve(a+128|0);ve(a+96|0);ve(a- -64|0);ve(a+32|0);ve(a)}function th(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=(c>>>0)/3|0;i=H[(H[H[a+8>>2]+96>>2]+N(d,12)|0)+(c-N(d,3)<<2)>>2];e=H[H[a+12>>2]+4>>2];d=H[e+4>>2];a:{if((d|0)!=H[e+8>>2]){H[d>>2]=i;H[e+4>>2]=d+4;break a}b:{h=H[e>>2];g=d-h|0;j=g>>2;d=j+1|0;if(d>>>0<1073741824){f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break b}d=$k(f<<2)}else{d=0}j=d+(j<<2)|0;H[j>>2]=i;if((g|0)>0){ek(d,h,g)}H[e+8>>2]=d+(f<<2);H[e+4>>2]=j+4;H[e>>2]=d;if(h){Wk(h)}break a}Fa();X()}Ua(1604);X()}e=H[a+4>>2];d=H[e+4>>2];c:{d:{e:{if((d|0)!=H[e+8>>2]){H[d>>2]=c;H[e+4>>2]=d+4;break e}h=H[e>>2];g=d-h|0;i=g>>2;d=i+1|0;if(d>>>0>=1073741824){break d}f=g>>1;f=g>>>0<2147483644?d>>>0>f>>>0?d:f:1073741823;if(f){if(f>>>0>=1073741824){break c}d=$k(f<<2)}else{d=0}i=d+(i<<2)|0;H[i>>2]=c;if((g|0)>0){ek(d,h,g)}H[e+8>>2]=d+(f<<2);H[e+4>>2]=i+4;H[e>>2]=d;if(!h){break e}Wk(h)}a=H[a+4>>2];H[H[a+12>>2]+(b<<2)>>2]=H[a+24>>2];H[a+24>>2]=H[a+24>>2]+1;return}Fa();X()}Ua(1604);X()}function Hg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=da+-64|0;da=c;d=$k(80);i=H[a+8>>2];H[d+12>>2]=0;H[d+16>>2]=0;H[d>>2]=11708;H[d+4>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+76>>2]=0;H[d+72>>2]=b;H[d+68>>2]=i;H[d- -64>>2]=0;j=d+56|0;e=j;H[e>>2]=0;H[e+4>>2]=0;H[d+8>>2]=11872;e=H[a+12>>2];H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;f=c+24|0;H[f>>2]=0;H[f+4>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+56>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c>>2]=11872;H[c+4>>2]=e;g=H[e>>2];h=H[e+4>>2];F[c+63|0]=0;k=f;f=c+63|0;Eg(k,(h-g>>2>>>0)/3|0,f);g=H[c+4>>2];h=H[g+28>>2];g=H[g+24>>2];F[c+63|0]=0;Eg(c+36|0,h-g>>2,f);H[c+20>>2]=d;H[c+16>>2]=i;H[c+12>>2]=b;H[c+8>>2]=e;H[d+76>>2]=a+72;Fg(d+8|0,c);Gg(j,H[c+48>>2],H[c+52>>2]);H[c>>2]=11872;a=H[c+48>>2];if(a){H[c+52>>2]=a;Wk(a)}H[c>>2]=11688;a=H[c+36>>2];if(a){Wk(a)}a=H[c+24>>2];if(a){Wk(a)}da=c- -64|0;return d}function xf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;wf(a,g,c,f,e,f);d=d-f|0;wf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function uf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;tf(a,g,c,f,e,f);d=d-f|0;tf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function rf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;qf(a,g,c,f,e,f);d=d-f|0;qf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function lg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;kg(a,g,c,f,e,f);d=d-f|0;kg(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function lf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;hf(a,g,c,f,e,f);d=d-f|0;hf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function ig(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;hg(a,g,c,f,e,f);d=d-f|0;hg(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function fg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;eg(a,g,c,f,e,f);d=d-f|0;eg(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function cg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;bg(a,g,c,f,e,f);d=d-f|0;bg(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Yf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Xf(a,g,c,f,e,f);d=d-f|0;Xf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Vf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Uf(a,g,c,f,e,f);d=d-f|0;Uf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Sf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Rf(a,g,c,f,e,f);d=d-f|0;Rf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Pf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Of(a,g,c,f,e,f);d=d-f|0;Of(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Mf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Lf(a,g,c,f,e,f);d=d-f|0;Lf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Jf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;If(a,g,c,f,e,f);d=d-f|0;If(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Gf(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Ff(a,g,c,f,e,f);d=d-f|0;Ff(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Df(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;Cf(a,g,c,f,e,f);d=d-f|0;Cf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function Af(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;zf(a,g,c,f,e,f);d=d-f|0;zf(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function $f(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;a:{b:{c:{d:{e:{switch(d|0){case 2:d=H[c>>2];c=H[d>>2];d=H[d+4>>2]-c>>3;g=b-4|0;b=H[g>>2];if(d>>>0<=b>>>0){break d}f=d;d=H[a>>2];if(f>>>0<=d>>>0){break d}if(K[c+(b<<3)>>2]>2]){H[e>>2]=b;H[e+4>>2]=H[a>>2];return}H[e>>2]=d;H[e+4>>2]=H[g>>2];return;default:if((d|0)<=8){nf(a,b,e,c);return}f=d>>>1|0;h=f<<2;g=h+a|0;_f(a,g,c,f,e,f);d=d-f|0;_f(g,b,c,d,e+h|0,d);c=H[c>>2];d=g;while(1){if((b|0)==(d|0)){if((a|0)==(g|0)){break a}while(1){H[e>>2]=H[a>>2];e=e+4|0;a=a+4|0;if((g|0)!=(a|0)){continue}break}break a}f=H[c>>2];j=H[c+4>>2]-f>>3;h=H[d>>2];if(j>>>0<=h>>>0){break c}i=H[a>>2];if(j>>>0<=i>>>0){break c}f:{if(K[f+(h<<3)>>2]>2]){H[e>>2]=h;d=d+4|0;break f}H[e>>2]=i;a=a+4|0}e=e+4|0;if((a|0)!=(g|0)){continue}break};break b;case 0:break a;case 1:break e}}H[e>>2]=H[a>>2];break a}Sc();X()}Sc();X()}if((b|0)==(d|0)){break a}while(1){H[e>>2]=H[d>>2];e=e+4|0;d=d+4|0;if((d|0)!=(b|0)){continue}break}}}function ua(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=H[d+80>>2];e=da-48|0;da=e;a=H[a+4>>2];a:{if(a-31>>>0<4294967267){break a}i=H[H[d>>2]>>2]+H[d+48>>2]|0;H[e+16>>2]=a;a=-1<>2]=a^-1;a=-2-a|0;H[e+24>>2]=a;H[e+32>>2]=(a|0)/2;L[e+28>>2]=O(2)/O(a|0);g=H[c>>2];if((g|0)!=H[c+4>>2]){a=0;d=0;while(1){f=H[(d<<2)+g>>2];h=e+36|0;j=H[H[b>>2]>>2];l=H[b+48>>2];g=H[b+44>>2];k=H[b+40>>2];if(!I[b+84|0]){f=H[H[b+68>>2]+(f<<2)>>2]}f=Fl(k,g,f,0)+l|0;ek(h,f+j|0,k);va(e+16|0,h,e+12|0,e+8|0);g=a<<2;H[g+i>>2]=H[e+12>>2];H[(g|4)+i>>2]=H[e+8>>2];f=1;a=a+2|0;d=d+1|0;g=H[c>>2];if(d>>>0>2]-g>>2>>>0){continue}break}break a}if(!h){f=1;break a}d=0;a=0;while(1){j=e+36|0;c=H[H[b>>2]>>2];f=H[b+40>>2];g=H[b+48>>2]+Fl(f,H[b+44>>2],I[b+84|0]?a:H[H[b+68>>2]+(a<<2)>>2],0)|0;ek(j,c+g|0,f);va(e+16|0,j,e+12|0,e+8|0);c=d<<2;H[c+i>>2]=H[e+12>>2];H[(c|4)+i>>2]=H[e+8>>2];d=d+2|0;f=1;a=a+1|0;if((h|0)!=(a|0)){continue}break}}da=e+48|0;return f|0}function Tj(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=H[b+4>>2];a:{b:{if(f){g=I[c+11|0];e=g<<24>>24<0;k=e?H[c>>2]:c;e=e?H[c+4>>2]:g;g=b+4|0;while(1){c=I[f+27|0];h=c<<24>>24<0;c=h?H[f+20>>2]:c;l=c>>>0>>0;c:{d:{e:{f:{g:{j=l?c:e;h:{if(j){i=f+16|0;h=h?H[i>>2]:i;i=ik(k,h,j);if(!i){if(c>>>0>e>>>0){break h}break g}if((i|0)>=0){break g}break h}if(c>>>0<=e>>>0){break f}}c=H[f>>2];if(c){break c}break b}c=ik(h,k,j);if(c){break e}}if(l){break d}break a}if((c|0)>=0){break a}}g=f+4|0;c=H[f+4>>2];if(!c){break a}f=g}g=f;f=c;continue}}f=b+4|0}g=f}c=H[g>>2];if(c){b=0}else{c=$k(40);H[c+24>>2]=H[d+8>>2];e=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=e;H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[c+36>>2]=0;e=c+28|0;H[e>>2]=0;H[e+4>>2]=0;ai(e,H[d+16>>2]-H[d+12>>2]|0);h=H[e>>2];e=H[d+12>>2];ek(h,e,H[d+16>>2]-e|0);H[c+8>>2]=f;H[c>>2]=0;H[c+4>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}Qe(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function Wh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=H[a+4>>2];b=H[b+12>>2]-H[b+8>>2]|0;a:{if((b|0)>0){while(1){if(ga[H[H[a>>2]+36>>2]](a,c)|0){b=H[a+4>>2];b=H[b+12>>2]-H[b+8>>2]>>2;c=c+1|0;if((b|0)>(c|0)){continue}break a}break}return 0}b=b>>2}h=a+20|0;d=H[a+20>>2];c=H[a+24>>2]-d>>2;b:{if(c>>>0>>0){Ha(h,b-c|0);break b}if(b>>>0>=c>>>0){break b}H[a+24>>2]=d+(b<<2)}i=H[a+8>>2];a=H[a+12>>2]-i|0;if(!a){return 1}a=a>>2;k=a>>>0>1?a:1;c=0;while(1){a=H[(c<<2)+i>>2];b=H[a+4>>2];a=H[a+8>>2]-b|0;c:{if(!a){break c}d=H[h>>2];a=a>>2;e=a>>>0>1?a:1;j=e&3;f=0;a=0;if(e-1>>>0>=3){l=e&-4;g=0;while(1){e=a<<2;H[d+(H[e+b>>2]<<2)>>2]=c;H[d+(H[b+(e|4)>>2]<<2)>>2]=c;H[d+(H[b+(e|8)>>2]<<2)>>2]=c;H[d+(H[b+(e|12)>>2]<<2)>>2]=c;a=a+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}if(!j){break c}while(1){H[d+(H[b+(a<<2)>>2]<<2)>>2]=c;a=a+1|0;f=f+1|0;if((f|0)!=(j|0)){continue}break}}c=c+1|0;if((k|0)!=(c|0)){continue}break}return 1}function rh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=da-16|0;da=g;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+28>>2]-H[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=$k(c);h=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ek(c,d,e)}H[b+8>>2]=h;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}Wk(d)}b=H[a+12>>2];d=H[b+28>>2];b=H[b+24>>2];H[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=H[c>>2];d=H[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){nb(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}H[a+100>>2]=e+(b<<2)}e=a+8|0;b=H[a+116>>2];d:{if(b){c=H[b>>2];if((c|0)==H[b+4>>2]){d=1;break d}b=0;while(1){d=sh(e,H[(b<<2)+c>>2]);if(!d){break d}f=H[a+116>>2];c=H[f>>2];b=b+1|0;if(b>>>0>2]-c>>2>>>0){continue}break}break d}d=1;a=H[a+12>>2];a=H[a+4>>2]-H[a>>2]|0;if(a>>>0<12){break d}a=(a>>2>>>0)/3|0;b=0;while(1){d=sh(e,N(b,3));if(!d){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}}da=g+16|0;return d|0}Ua(1604);X()}function qh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=H[a+12>>2];c=H[a+108>>2];e=H[c+80>>2];F[b+84|0]=0;f=H[b+68>>2];d=H[b+72>>2]-f>>2;a:{if(d>>>0>>0){nb(b+68|0,e-d|0,11440);c=H[a+108>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=f+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=H[l>>2]+(N(c,3)<<2)|0;h=H[d>>2];if((h|0)==-1){break b}f=N(c,12)+k|0;g=H[f>>2];if(g>>>0>=e>>>0){break b}j=H[H[a+112>>2]+12>>2];i=H[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=H[b+68>>2];H[h+(g<<2)>>2]=i;g=H[d+4>>2];if((g|0)==-1){break b}i=H[f+4>>2];if(i>>>0>=e>>>0){break b}g=H[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}H[h+(i<<2)>>2]=g;d=H[d+8>>2];if((d|0)==-1){break b}f=H[f+8>>2];if(f>>>0>=e>>>0){break b}d=H[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}H[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function wj(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=c-b|0;e=H[a+8>>2];d=H[a>>2];if(f>>>0<=e-d>>>0){h=H[a+4>>2]-d|0;e=h+b|0;g=f>>>0>h>>>0?e:c;a:{if((g|0)==(b|0)){break a}k=(b^-1)+g|0;i=g-b&7;if(i){while(1){F[d|0]=I[b|0];d=d+1|0;b=b+1|0;j=j+1|0;if((j|0)!=(i|0)){continue}break}}if(k>>>0<7){break a}while(1){F[d|0]=I[b|0];F[d+1|0]=I[b+1|0];F[d+2|0]=I[b+2|0];F[d+3|0]=I[b+3|0];F[d+4|0]=I[b+4|0];F[d+5|0]=I[b+5|0];F[d+6|0]=I[b+6|0];F[d+7|0]=I[b+7|0];d=d+8|0;b=b+8|0;if((g|0)!=(b|0)){continue}break}}if(f>>>0>h>>>0){b=H[a+4>>2];if((c|0)!=(g|0)){while(1){F[b|0]=I[e|0];b=b+1|0;e=e+1|0;if((e|0)!=(c|0)){continue}break}}H[a+4>>2]=b;return}H[a+4>>2]=d;return}if(d){H[a+4>>2]=d;Wk(d);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;e=0}b:{if((f|0)<0){break b}d=e<<1;e=e>>>0<1073741823?d>>>0>>0?f:d:2147483647;if((e|0)<0){break b}d=$k(e);H[a>>2]=d;H[a+4>>2]=d;H[a+8>>2]=d+e;if((b|0)!=(c|0)){d=ek(d,b,f)+f|0}H[a+4>>2]=d;return}Fa();X()}function Ah(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=H[a+12>>2];c=H[a+68>>2];e=H[c+80>>2];F[b+84|0]=0;f=H[b+68>>2];d=H[b+72>>2]-f>>2;a:{if(d>>>0>>0){nb(b+68|0,e-d|0,11440);c=H[a+68>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=f+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;m=c>>>0>1?c:1;c=0;b:{while(1){if((c|0)==1431655765){break b}d=H[l>>2]+(N(c,3)<<2)|0;h=H[d>>2];if((h|0)==-1){break b}f=N(c,12)+k|0;g=H[f>>2];if(g>>>0>=e>>>0){break b}j=H[H[a+72>>2]+12>>2];i=H[j+(h<<2)>>2];if(i>>>0>=e>>>0){break b}h=H[b+68>>2];H[h+(g<<2)>>2]=i;g=H[d+4>>2];if((g|0)==-1){break b}i=H[f+4>>2];if(i>>>0>=e>>>0){break b}g=H[(g<<2)+j>>2];if(g>>>0>=e>>>0){break b}H[h+(i<<2)>>2]=g;d=H[d+8>>2];if((d|0)==-1){break b}f=H[f+8>>2];if(f>>>0>=e>>>0){break b}d=H[(d<<2)+j>>2];if(d>>>0>=e>>>0){break b}H[h+(f<<2)>>2]=d;c=c+1|0;if((m|0)!=(c|0)){continue}break}return 1}return 0}function Pa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=H[a+12>>2];h=H[a+8>>2];d=f-h>>2;b=F[b+24|0];a:{if(d>>>0>>0){Ha(a+8|0,b-d|0);h=H[a+8>>2];f=H[a+12>>2];break a}if(b>>>0>=d>>>0){break a}f=(b<<2)+h|0;H[a+12>>2]=f}b=0;i=H[c+20>>2];e=H[c+16>>2];d=f-h|0;f=d;g=e+d|0;j=H[c+12>>2];i=d>>>0>g>>>0?i+1|0:i;b:{if(g>>>0>K[c+8>>2]&(j|0)<=(i|0)|(i|0)>(j|0)){break b}ek(h,e+H[c>>2]|0,d);d=H[c+20>>2];e=f+H[c+16>>2]|0;d=e>>>0>>0?d+1|0:d;g=e;H[c+16>>2]=e;H[c+20>>2]=d;e=H[c+12>>2];f=g+4|0;d=f>>>0<4?d+1|0:d;if(f>>>0>K[c+8>>2]&(d|0)>=(e|0)|(d|0)>(e|0)){break b}d=g+H[c>>2]|0;H[a+20>>2]=I[d|0]|I[d+1|0]<<8|(I[d+2|0]<<16|I[d+3|0]<<24);d=H[c+20>>2];g=H[c+16>>2];e=g+4|0;f=e>>>0<4?d+1|0:d;j=e;H[c+16>>2]=e;H[c+20>>2]=f;e=H[c+12>>2];if((f|0)>=(e|0)&j>>>0>=K[c+8>>2]|(f|0)>(e|0)){break b}e=I[j+H[c>>2]|0];f=g+5|0;d=f>>>0<5?d+1|0:d;H[c+16>>2]=f;H[c+20>>2]=d;if(e-1>>>0>29){break b}H[a+4>>2]=e;b=1}return b|0}function bc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{e=H[a+8>>2];b:{if((e|0)!=H[a+12>>2]){break b}d=H[a+4>>2];g=H[a>>2];if(d>>>0>g>>>0){g=((d-g>>2)+1|0)/-2<<2;c=g+d|0;f=e-d|0;if(f){fk(c,d,f);d=H[a+4>>2]}e=c+f|0;H[a+8>>2]=e;H[a+4>>2]=d+g;break b}c=e-g|0;f=c?c>>1:1;if(f>>>0>=1073741824){break a}c=f<<2;h=$k(c);k=h+c|0;c=e-d|0;f=(f&-4)+h|0;e=f;c:{if(!c){break c}l=c&-4;i=c-4|0;j=(i>>>2|0)+1&7;d:{if(!j){c=f;break d}e=0;c=f;while(1){H[c>>2]=H[d>>2];d=d+4|0;c=c+4|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}e=f+l|0;if(i>>>0<28){break c}while(1){H[c>>2]=H[d>>2];H[c+4>>2]=H[d+4>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=H[d+12>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=H[d+20>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=H[d+28>>2];d=d+32|0;c=c+32|0;if((e|0)!=(c|0)){continue}break}}H[a+12>>2]=k;H[a+8>>2]=e;H[a+4>>2]=f;H[a>>2]=h;if(!g){break b}Wk(g);e=H[a+8>>2]}H[e>>2]=H[b>>2];H[a+8>>2]=H[a+8>>2]+4;return}Ua(1604);X()}function Ue(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=H[b+4>>2];a:{b:{if(e){g=I[c+11|0];f=g<<24>>24<0;j=f?H[c>>2]:c;f=f?H[c+4>>2]:g;g=b+4|0;while(1){c=I[e+27|0];h=c<<24>>24<0;c=h?H[e+20>>2]:c;l=c>>>0>>0;c:{d:{e:{f:{g:{k=l?c:f;h:{if(k){i=e+16|0;h=h?H[i>>2]:i;i=ik(j,h,k);if(!i){if(c>>>0>f>>>0){break h}break g}if((i|0)>=0){break g}break h}if(c>>>0<=f>>>0){break f}}c=H[e>>2];if(c){break c}break b}c=ik(h,j,k);if(c){break e}}if(l){break d}break a}if((c|0)>=0){break a}}g=e+4|0;c=H[e+4>>2];if(!c){break a}e=g}g=e;e=c;continue}}e=b+4|0}g=e}c=H[g>>2];if(c){b=0}else{c=$k(40);f=c+16|0;d=H[d>>2];i:{if(F[d+11|0]>=0){j=H[d+4>>2];H[f>>2]=H[d>>2];H[f+4>>2]=j;H[f+8>>2]=H[d+8>>2];break i}el(f,H[d>>2],H[d+4>>2])}H[c+8>>2]=e;H[c>>2]=0;H[c+4>>2]=0;H[c+36>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}Qe(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c}function cc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{g=H[a+4>>2];b:{if((g|0)!=H[a>>2]){c=g;break b}d=H[a+8>>2];c=H[a+12>>2];if(d>>>0>>0){f=((c-d>>2)+1|0)/2<<2;c=f+d|0;e=d-g|0;if(e){c=c-e|0;fk(c,g,e);d=H[a+8>>2]}H[a+4>>2]=c;H[a+8>>2]=d+f;break b}c=c-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}e=c<<2;h=$k(e);l=h+e|0;c=(c+3&-4)+h|0;f=c;i=d-g|0;c:{if(!i){break c}d=c;e=g;j=i-4|0;k=(j>>>2|0)+1&7;if(k){f=0;while(1){H[d>>2]=H[e>>2];e=e+4|0;d=d+4|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}f=(i&-4)+c|0;if(j>>>0<28){break c}while(1){H[d>>2]=H[e>>2];H[d+4>>2]=H[e+4>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=H[e+12>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=H[e+20>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=H[e+28>>2];e=e+32|0;d=d+32|0;if((f|0)!=(d|0)){continue}break}}H[a+12>>2]=l;H[a+8>>2]=f;H[a+4>>2]=c;H[a>>2]=h;if(!g){break b}Wk(g);c=H[a+4>>2]}H[c-4>>2]=H[b>>2];H[a+4>>2]=H[a+4>>2]-4;return}Ua(1604);X()}function pf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=da-32|0;da=e;f=H[b>>2]+H[a+40>>2]|0;d=H[a+32>>2];c=d-4194304|0;a:{if(c>>>0<=63){F[H[a+24>>2]+H[a+28>>2]|0]=c;c=H[a+28>>2]+1|0;break a}if(c>>>0<=16383){c=H[a+24>>2]+H[a+28>>2]|0;d=d-4177920|0;F[c|0]=d;F[c+1|0]=d>>>8;c=H[a+28>>2]+2|0;break a}if(c>>>0<=4194303){c=H[a+24>>2]+H[a+28>>2]|0;d=d+4194304|0;F[c+2|0]=d>>>16;F[c+1|0]=d>>>8;F[c|0]=d;c=H[a+28>>2]+3|0;break a}if(c>>>0<=1073741823){c=H[a+24>>2]+H[a+28>>2]|0;d=d-1077936128|0;F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=H[a+28>>2]+4|0;break a}c=H[a+28>>2]}H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;h=c;d=c>>31;kf(c,d,e);g=H[e+4>>2]-H[e>>2]|0;fk(g+f|0,f,c);ek(f,H[e>>2],g);c=H[a+44>>2];f=b;i=H[a+40>>2];a=d;b=h+g|0;a=b>>>0>>0?a+1|0:a;d=b;b=i+d|0;ci(f,b);a=H[e+12>>2];H[e+12>>2]=0;if(a){Wk(a)}a=H[e>>2];if(a){H[e+4>>2]=a;Wk(a)}da=e+32|0}function Gh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=H[a+12>>2];c=H[a+68>>2];e=H[c+80>>2];F[b+84|0]=0;g=H[b+68>>2];d=H[b+72>>2]-g>>2;a:{if(d>>>0>>0){nb(b+68|0,e-d|0,11440);c=H[a+68>>2];e=H[c+80>>2];break a}if(e>>>0>=d>>>0){break a}H[b+72>>2]=g+(e<<2)}k=H[c+96>>2];c=H[c+100>>2]-k|0;if(!c){return 1}c=(c|0)/12|0;l=c>>>0>1?c:1;m=H[h+28>>2];c=0;b:{while(1){d=(N(c,3)<<2)+m|0;g=H[d>>2];if((g|0)==-1){break b}h=N(c,12)+k|0;i=H[h>>2];if(i>>>0>=e>>>0){break b}f=g<<2;g=H[H[a+72>>2]+12>>2];f=H[f+g>>2];if(f>>>0>=e>>>0){break b}j=i<<2;i=H[b+68>>2];H[j+i>>2]=f;f=H[d+4>>2];if((f|0)==-1){break b}j=H[h+4>>2];if(j>>>0>=e>>>0){break b}f=H[g+(f<<2)>>2];if(f>>>0>=e>>>0){break b}H[i+(j<<2)>>2]=f;d=H[d+8>>2];if((d|0)==-1){break b}h=H[h+8>>2];if(h>>>0>=e>>>0){break b}d=H[g+(d<<2)>>2];if(d>>>0>=e>>>0){break b}H[i+(h<<2)>>2]=d;c=c+1|0;if((l|0)!=(c|0)){continue}break}return 1}return 0}function gf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=da-32|0;da=e;f=H[b>>2]+H[a+40>>2]|0;c=H[a+32>>2];d=c-16384|0;a:{if(d>>>0<=63){F[H[a+24>>2]+H[a+28>>2]|0]=d;c=H[a+28>>2]+1|0;break a}if(d>>>0<=16383){d=H[a+24>>2]+H[a+28>>2]|0;F[d|0]=c;F[d+1|0]=c>>>8;c=H[a+28>>2]+2|0;break a}if(d>>>0<=4194303){d=H[a+24>>2]+H[a+28>>2]|0;c=c+8372224|0;F[d+2|0]=c>>>16;F[d+1|0]=c>>>8;F[d|0]=c;c=H[a+28>>2]+3|0;break a}if(d>>>0<=1073741823){d=H[a+24>>2]+H[a+28>>2]|0;c=c-1073758208|0;F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;c=H[a+28>>2]+4|0;break a}c=H[a+28>>2]}H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;h=c;d=c>>31;kf(c,d,e);g=H[e+4>>2]-H[e>>2]|0;fk(g+f|0,f,c);ek(f,H[e>>2],g);c=H[a+44>>2];f=b;i=H[a+40>>2];a=d;b=h+g|0;a=b>>>0>>0?a+1|0:a;d=b;b=i+d|0;ci(f,b);a=H[e+12>>2];H[e+12>>2]=0;if(a){Wk(a)}a=H[e>>2];if(a){H[e+4>>2]=a;Wk(a)}da=e+32|0}function va(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=+L[b>>2];k=+L[b+4>>2];l=+L[b+8>>2];g=P(j)+P(k)+P(l);a:{if(!(g>1e-6)){j=1;k=0;e=0;break a}g=1/g;k=g*k;j=g*j;e=g*l<0}h=H[a+16>>2];l=+(h|0);g=T(j*l+.5);b:{if(P(g)<2147483648){m=~~g;break b}m=-2147483648}f=m>>31;i=f+m^f;g=T(k*l+.5);c:{if(P(g)<2147483648){f=~~g;break c}f=-2147483648}b=f>>31;b=h-(i+(f+b^b)|0)|0;i=(b|0)<0?0:b;e=e?0-i|0:i;f=f+(b>>31&((f|0)>0?b:0-b|0))|0;d:{if((m|0)>=0){b=e+h|0;a=H[a+8>>2];e=h+f|0;break d}b=f>>31;b=b+f^b;a=H[a+8>>2];b=(e|0)<0?b:a-b|0;e=(f|0)<0?i:a-i|0}e:{if(!(b|e)){b=a;break e}if(!((a|0)!=(b|0)|e)){b=a;break e}if(!((a|0)!=(e|0)|b)){b=a;break e}if(!((b|0)<=(h|0)|e)){b=(h<<1)-b|0;a=0;break e}if(!((a|0)!=(e|0)|(b|0)>=(h|0))){b=(h<<1)-b|0;break e}if(!((a|0)!=(b|0)|(e|0)>=(h|0))){b=a;a=(h<<1)-e|0;break e}if(b){a=e;break e}b=0;if((e|0)<=(h|0)){a=e;break e}a=(h<<1)-e|0}H[c>>2]=a;H[d>>2]=b}function wa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0;a:{if(H[c+28>>2]!=9|I[c+24|0]!=3){break a}a=H[a+4>>2];if(a-31>>>0<4294967267){break a}o=1;j=H[c+80>>2];if(!j){break a}k=O(O(2)/O((1<>2]>>2]+H[c+48>>2]|0;a=H[H[b>>2]>>2]+H[b+48>>2]|0;b=0;while(1){g=O(0);l=O(0);m=O(0);e=O(O(O(H[a>>2])*k)+O(-1));f=O(O(O(H[a+4>>2])*k)+O(-1));i=O(O(O(1)-O(P(e)))-O(P(f)));h=O(S(O(-i),O(0)));n=O(-h);f=O(f+(f>>8;F[c+10|0]=d>>>16;F[c+11|0]=d>>>24;d=(B(l),v(2));F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;d=(B(g),v(2));F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}return o|0}function Ni(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,f=0,g=0,h=0;f=da-16|0;da=f;a:{b:{c:{if(!b){break c}g=jk(c);if(g>>>0>=4294967280){break b}d:{e:{if(g>>>0>=11){h=g+16&-16;a=$k(h);H[f+8>>2]=h|-2147483648;H[f>>2]=a;H[f+4>>2]=g;break e}F[f+11|0]=g;a=f;if(!g){break d}}ek(a,c,g)}F[a+g|0]=0;g=da-16|0;da=g;M[g+8>>3]=d;e=da-32|0;da=e;a=Zb(b,f);if((a|0)!=(b+4|0)){Sj(b,a)}c=H[g+8>>2];a=H[g+12>>2];f:{if(F[f+11|0]>=0){H[e+8>>2]=H[f+8>>2];h=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=h;break f}el(e,H[f>>2],H[f+4>>2])}H[e+20>>2]=0;H[e+12>>2]=0;H[e+16>>2]=0;ai(e+12|0,8);h=H[e+12>>2];F[h|0]=c;F[h+1|0]=c>>>8;F[h+2|0]=c>>>16;F[h+3|0]=c>>>24;F[h+4|0]=a;F[h+5|0]=a>>>8;F[h+6|0]=a>>>16;F[h+7|0]=a>>>24;Tj(e+24|0,b,e,e);a=H[e+12>>2];if(a){H[e+16>>2]=a;Wk(a)}if(F[e+11|0]<0){Wk(H[e>>2])}da=e+32|0;da=g+16|0;if(F[f+11|0]>=0){break c}Wk(H[f>>2])}da=f+16|0;a=(b|0)!=0;break a}se();X()}return a|0}function Lg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=da-16|0;da=c;b=H[H[a+184>>2]+(b<<2)>>2];F[c+15|0]=b;e=H[H[a+4>>2]+44>>2];d=H[e+20>>2];if(!H[e+16>>2]&(d|0)<=0|(d|0)<0){ya(e,H[e+4>>2],c+15|0,c+16|0);b=I[c+15|0]}a:{b:{c:{if(b<<24>>24<0){e=H[a+68>>2];break c}b=H[H[a+172>>2]+N(b&255,136)>>2];d=ga[H[H[a>>2]+40>>2]](a)|0;f=H[a+172>>2]+N(F[c+15|0],136)|0;e=H[f+132>>2];d:{switch(H[H[H[d+56>>2]+84>>2]+(b<<2)>>2]){case 0:break c;case 1:break d;default:break b}}if(!I[f+28|0]){break b}}b=H[H[a+4>>2]+44>>2];F[c+14|0]=0;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+14|0,c+15|0);break a}b=H[H[a+4>>2]+44>>2];F[c+13|0]=1;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+13|0,c+14|0)}a=H[H[a+4>>2]+44>>2];F[c+12|0]=e;b=H[a+20>>2];if(!H[a+16>>2]&(b|0)<=0|(b|0)<0){ya(a,H[a+4>>2],c+12|0,c+13|0)}da=c+16|0;return 1}function Fg(a,b){var c=0,d=0;c=H[b+8>>2];H[a+4>>2]=H[b+4>>2];H[a+8>>2]=c;H[a+20>>2]=H[b+20>>2];c=H[b+16>>2];H[a+12>>2]=H[b+12>>2];H[a+16>>2]=c;a:{b:{if((a|0)!=(b|0)){c=H[b+28>>2];if(c){c:{if(H[a+32>>2]<<5>>>0>=c>>>0){d=H[a+24>>2];break c}d=H[a+24>>2];if(d){Wk(d);H[a+32>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;c=H[b+28>>2]}if((c|0)<0){break b}c=(c-1>>>5|0)+1|0;d=$k(c<<2);H[a+32>>2]=c;H[a+28>>2]=0;H[a+24>>2]=d;c=H[b+28>>2]}fk(d,H[b+24>>2],(c-1>>>3&536870908)+4|0);c=H[b+28>>2]}else{c=0}H[a+28>>2]=c;c=H[b+40>>2];if(c){d:{if(H[a+44>>2]<<5>>>0>=c>>>0){d=H[a+36>>2];break d}d=H[a+36>>2];if(d){Wk(d);H[a+44>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;c=H[b+40>>2]}if((c|0)<0){break a}c=(c-1>>>5|0)+1|0;d=$k(c<<2);H[a+44>>2]=c;H[a+40>>2]=0;H[a+36>>2]=d;c=H[b+40>>2]}fk(d,H[b+36>>2],(c-1>>>3&536870908)+4|0);b=H[b+40>>2]}else{b=0}H[a+40>>2]=b}return}jl();X()}jl();X()}function Pj(a,b,c){var d=0,e=0,f=0,g=0;tb(H[c+8>>2],b);d=H[c>>2];g=c+4|0;if((d|0)!=(g|0)){while(1){f=d;if(!Qj(b,d+16|0)){return}d=H[f+32>>2]-H[f+28>>2]|0;tb(d,b);e=H[b+20>>2];if(!H[b+16>>2]&(e|0)<=0|(e|0)<0){e=H[f+28>>2];ya(b,H[b+4>>2],e,e+d|0)}e=H[f+4>>2];a:{if(!e){d=H[f+8>>2];if((f|0)==H[d>>2]){break a}e=f+8|0;while(1){f=H[e>>2];e=f+8|0;d=H[f+8>>2];if((f|0)!=H[d>>2]){continue}break}break a}while(1){d=e;e=H[d>>2];if(e){continue}break}}if((d|0)!=(g|0)){continue}break}}tb(H[c+20>>2],b);d=H[c+12>>2];f=c+16|0;if((d|0)==(f|0)){return}while(1){c=d;if(!Qj(b,d+16|0)){return}Pj(a,b,H[c+28>>2]);e=H[c+4>>2];b:{if(!e){d=H[c+8>>2];if((c|0)==H[d>>2]){break b}e=c+8|0;while(1){c=H[e>>2];e=c+8|0;d=H[c+8>>2];if((c|0)!=H[d>>2]){continue}break}break b}while(1){d=e;e=H[d>>2];if(e){continue}break}}if((d|0)!=(f|0)){continue}break}}function hc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b:{if((ga[H[H[b>>2]+20>>2]](b)|0)>0){while(1){d=Vj(H[H[a+4>>2]+4>>2],ga[H[H[b>>2]+24>>2]](b,i)|0);if((d|0)!=-1){c=H[a+20>>2];c:{if((c|0)!=H[a+24>>2]){H[c>>2]=d;H[a+20>>2]=c+4;break c}h=H[a+16>>2];e=c-h|0;g=e>>2;c=g+1|0;if(c>>>0>=1073741824){break b}f=e>>1;f=e>>>0<2147483644?c>>>0>f>>>0?c:f:1073741823;if(f){if(f>>>0>=1073741824){break a}c=$k(f<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=d;if((e|0)>0){ek(c,h,e)}H[a+24>>2]=c+(f<<2);H[a+20>>2]=g+4;H[a+16>>2]=c;if(!h){break c}Wk(h)}c=H[a+4>>2];d:{if((d|0)<0){break d}e=H[c+4>>2];if(H[e+12>>2]-H[e+8>>2]>>2<=(d|0)){break d}c=H[H[c+8>>2]+(H[H[c+20>>2]+(d<<2)>>2]<<2)>>2];ga[H[H[c>>2]+32>>2]](c,d)|0}i=i+1|0;if((ga[H[H[b>>2]+20>>2]](b)|0)>(i|0)){continue}}break}a=(d|0)!=-1}else{a=1}return a|0}Fa();X()}Ua(1604);X()}function Li(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=da-16|0;da=e;a:{b:{c:{if(!b){break c}f=jk(c);if(f>>>0>=4294967280){break b}d:{e:{if(f>>>0>=11){g=f+16&-16;a=$k(g);H[e+8>>2]=g|-2147483648;H[e>>2]=a;H[e+4>>2]=f;break e}F[e+11|0]=f;a=e;if(!f){break d}}ek(a,c,f)}F[a+f|0]=0;f=da-16|0;da=f;H[f+12>>2]=d;a=da-32|0;da=a;c=Zb(b,e);if((c|0)!=(b+4|0)){Sj(b,c)}c=H[f+12>>2];f:{if(F[e+11|0]>=0){H[a+8>>2]=H[e+8>>2];d=H[e+4>>2];H[a>>2]=H[e>>2];H[a+4>>2]=d;break f}el(a,H[e>>2],H[e+4>>2])}H[a+20>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;ai(a+12|0,4);d=H[a+12>>2];F[d|0]=c;F[d+1|0]=c>>>8;F[d+2|0]=c>>>16;F[d+3|0]=c>>>24;Tj(a+24|0,b,a,a);c=H[a+12>>2];if(c){H[a+16>>2]=c;Wk(c)}if(F[a+11|0]<0){Wk(H[a>>2])}da=a+32|0;da=f+16|0;if(F[e+11|0]>=0){break c}Wk(H[e>>2])}da=e+16|0;a=(b|0)!=0;break a}se();X()}return a|0}function Vg(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=H[a+112>>2]-H[a+108>>2]|0;e=(d|0)/12|0;tb(e,H[H[a+4>>2]+44>>2]);if(d){f=e>>>0>1?e:1;d=0;while(1){b=H[a+108>>2]+N(d,12)|0;tb(H[b+4>>2]-c|0,H[H[a+4>>2]+44>>2]);tb(H[b+4>>2]-H[b>>2]|0,H[H[a+4>>2]+44>>2]);c=H[b+4>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}d=0;di(H[H[a+4>>2]+44>>2],e,0,0);a:{b=H[H[a+4>>2]+44>>2];f=H[b+16>>2];c=H[b+20>>2];if(!f&(c|0)<=0|(c|0)<0){break a}h=e>>>0>1?e:1;while(1){if(!!f&(c|0)>=0|(c|0)>0){f=I[(H[a+108>>2]+N(d,12)|0)+8|0];e=H[b+12>>2];c=H[e+4>>2];b=c>>>3|0;g=b+H[e>>2]|0;i=I[g|0];c=c&7;j=g,k=Jl(c)&i,F[j|0]=k;b=b+H[e>>2]|0;F[b|0]=I[b|0]|(f&1)<>2]=H[e+4>>2]+1}d=d+1|0;if((h|0)==(d|0)){break a}b=H[H[a+4>>2]+44>>2];f=H[b+16>>2];c=H[b+20>>2];continue}}ei(H[H[a+4>>2]+44>>2])}return 1}function Oj(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=da-16|0;da=e;b=H[a+100>>2];g=H[a+96>>2];H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;f=b-g|0;b=(f|0)/12|0;a:{b:{if(!f){break b}if(b>>>0>=357913942){break a}c=$k(f);H[e>>2]=c;H[e+8>>2]=c+N(b,12);a=0;d=c;c=N((f-12>>>0)/12|0,12)+12|0;f=gk(d,0,c);H[e+4>>2]=c+f;c=b>>>0>1?b:1;j=c&1;if(b>>>0>=2){k=c&-2;b=0;while(1){d=N(a,12);c=d+g|0;h=H[c+4>>2];i=H[c>>2];d=d+f|0;H[d+8>>2]=H[c+8>>2];H[d>>2]=i;H[d+4>>2]=h;d=N(a|1,12);c=d+g|0;h=H[c+8>>2];i=H[c+4>>2];d=d+f|0;H[d>>2]=H[c>>2];H[d+4>>2]=i;H[d+8>>2]=h;a=a+2|0;b=b+2|0;if((k|0)!=(b|0)){continue}break}}if(!j){break b}b=N(a,12);a=b+g|0;g=H[a+4>>2];c=H[a>>2];b=b+f|0;H[b+8>>2]=H[a+8>>2];H[b>>2]=c;H[b+4>>2]=g}b=Dj(e);a=H[e>>2];if(a){H[e+4>>2]=a;Wk(a)}da=e+16|0;return b}Fa();X()}function ue(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=da-16|0;da=f;a:{b:{c=H[a+4>>2];c:{if((c|0)!=H[a+8>>2]){H[c>>2]=H[a+12>>2];d=c+4|0;H[a+4>>2]=d;break c}h=H[a>>2];g=c-h|0;d=g>>2;c=d+1|0;if(c>>>0>=1073741824){break b}e=g>>1;e=g>>>0<2147483644?c>>>0>e>>>0?c:e:1073741823;if(e){if(e>>>0>=1073741824){break a}c=$k(e<<2)}else{c=0}d=c+(d<<2)|0;H[d>>2]=H[a+12>>2];d=d+4|0;if((g|0)>0){ek(c,h,g)}H[a+8>>2]=(e<<2)+c;H[a+4>>2]=d;H[a>>2]=c;if(!h){break c}Wk(h);d=H[a+4>>2]}c=d;d=H[a>>2];H[f+12>>2]=c-d;c=H[b+20>>2];d:{if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break d}ya(b,H[b+4>>2],f+12|0,f+16|0);d=H[a>>2];c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break d}ya(b,H[b+4>>2],d,H[f+12>>2]+d|0);d=H[a>>2]}H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=d;da=f+16|0;return}Fa();X()}Ua(1604);X()}function sb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=da-16|0;da=c;tb(H[a+8>>2]-H[a+4>>2]>>2,b);e=H[a+4>>2];if((e|0)!=H[a+8>>2]){h=c+13|0;i=c+14|0;j=c+15|0;k=c+16|0;while(1){e=H[H[H[a+32>>2]+8>>2]+(H[(g<<2)+e>>2]<<2)>>2];F[c+15|0]=H[e+56>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+15|0,k);d=H[b+20>>2];f=H[b+16>>2];F[c+14|0]=H[e+28>>2];if(!!f&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+14|0,j);d=H[b+20>>2];f=H[b+16>>2];F[c+13|0]=I[e+24|0];if(!!f&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+13|0,i);d=H[b+20>>2];f=H[b+16>>2];F[c+12|0]=I[e+32|0];if(!!f&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+12|0,h)}tb(H[e+60>>2],b);g=g+1|0;e=H[a+4>>2];if(g>>>0>2]-e>>2>>>0){continue}break}}da=c+16|0;return 1}function Dd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=da-16|0;da=e;H[e+12>>2]=c;if(!(!Dc(a,b,c)|I[H[a+8>>2]+24|0]!=3)){f=H[b+48>>2];b=$k(32);H[e>>2]=b;H[e+4>>2]=17;H[e+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];c=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);d=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=d;F[b+9|0]=d>>>8;F[b+10|0]=d>>>16;F[b+11|0]=d>>>24;F[b+12|0]=c;F[b+13|0]=c>>>8;F[b+14|0]=c>>>16;F[b+15|0]=c>>>24;c=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);d=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=d;F[b+1|0]=d>>>8;F[b+2|0]=d>>>16;F[b+3|0]=d>>>24;F[b+4|0]=c;F[b+5|0]=c>>>8;F[b+6|0]=c>>>16;F[b+7|0]=c>>>24;b=Bb(f,e+12|0,e,-1);if(F[e+11|0]<0){Wk(H[e>>2])}if((b|0)>0){H[a+44>>2]=b}d=(b|0)>0}da=e+16|0;return d|0}function fk(a,b,c){var d=0,e=0;a:{if((a|0)==(b|0)){break a}e=a+c|0;if(b-e>>>0<=0-(c<<1)>>>0){return ek(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}F[d|0]=I[b|0];b=b+1|0;c=c-1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(e&3){while(1){if(!c){break a}c=c-1|0;d=c+a|0;F[d|0]=I[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c-4|0;H[c+a>>2]=H[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c-1|0;F[c+a|0]=I[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){H[d>>2]=H[b>>2];b=b+4|0;d=d+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){F[d|0]=I[b|0];d=d+1|0;b=b+1|0;c=c-1|0;if(c){continue}break}}return a}function Qg(a,b,c){var d=0,e=0,f=0,g=0;a:{b=N(b,3);if((b|0)==-1){break a}b:{e=H[a+12>>2];f=H[e+12>>2];d=b<<2;c:{if(H[f+d>>2]==-1){break c}a=H[a+152>>2];e=H[e>>2];if(H[a+(H[e+d>>2]<<2)>>2]!=-1){break b}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break a}d=b<<2;if(H[d+f>>2]==-1){break c}if(H[a+(H[d+e>>2]<<2)>>2]!=-1){break b}d=b+1|0;b=(d>>>0)%3|0?d:b-2|0;if((b|0)==-1){break a}d=b<<2;if(H[d+f>>2]==-1){break c}if(H[a+(H[d+e>>2]<<2)>>2]!=-1){break b}g=1;a=b+1|0;b=(a>>>0)%3|0?a:b-2|0}H[c>>2]=b;return g}while(1){d:{a=b;e:{if((b>>>0)%3|0){b=a-1|0;break e}b=a+2|0;if((b|0)==-1){break d}}b=H[(b<<2)+f>>2];if((b|0)==-1){break d}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){continue}}break}H[c>>2]=a+((a>>>0)%3|0?-1:2);return 0}H[c>>2]=-1;return 0}function yk(a,b,c){a:{switch(b-9|0){case 0:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];return;case 6:b=H[c>>2];H[c>>2]=b+4;b=G[b>>1];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 7:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=J[b>>1];H[a+4>>2]=0;return;case 8:b=H[c>>2];H[c>>2]=b+4;b=F[b|0];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 9:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=I[b|0];H[a+4>>2]=0;return;case 16:b=H[c>>2]+7&-8;H[c>>2]=b+8;M[a>>3]=M[b>>3];return;case 17:ga[369](a,c);default:return;case 1:case 4:case 14:b=H[c>>2];H[c>>2]=b+4;b=H[b>>2];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];H[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=H[c>>2]+7&-8;H[c>>2]=b+8;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c}function pk(a,b,c,d,e,f){var g=0;g=da-80|0;da=g;a:{if((f|0)>=16384){Nk(g+32|0,b,c,d,e,0,0,0,2147352576);d=H[g+40>>2];e=H[g+44>>2];b=H[g+32>>2];c=H[g+36>>2];if(f>>>0<32767){f=f-16383|0;break a}Nk(g+16|0,b,c,d,e,0,0,0,2147352576);f=(f>>>0<49149?f:49149)-32766|0;d=H[g+24>>2];e=H[g+28>>2];b=H[g+16>>2];c=H[g+20>>2];break a}if((f|0)>-16383){break a}Nk(g- -64|0,b,c,d,e,0,0,0,7471104);d=H[g+72>>2];e=H[g+76>>2];b=H[g+64>>2];c=H[g+68>>2];if(f>>>0>4294934644){f=f+16269|0;break a}Nk(g+48|0,b,c,d,e,0,0,0,7471104);f=(f>>>0>4294918376?f:-48920)+32538|0;d=H[g+56>>2];e=H[g+60>>2];b=H[g+48>>2];c=H[g+52>>2]}Nk(g,b,c,d,e,0,0,0,f+16383<<16);b=H[g+12>>2];H[a+8>>2]=H[g+8>>2];H[a+12>>2]=b;b=H[g+4>>2];H[a>>2]=H[g>>2];H[a+4>>2]=b;da=g+80|0}function ye(a,b){var c=0,d=0,e=0,f=0;c=H[a>>2];a:{if(b){b=H[c+12>>2];d=H[c+8>>2]+1|0;b=d?b:b+1|0;H[c+8>>2]=d;H[c+12>>2]=b;b=H[a+28>>2];H[a+24>>2]=H[a+24>>2]|1<>2];d=H[c>>2]+1|0;b=d?b:b+1|0;H[c>>2]=d;H[c+4>>2]=b;b=H[a+28>>2]}b=b+1|0;H[a+28>>2]=b;b:{c:{if((b|0)==32){b=H[a+16>>2];d:{if((b|0)!=H[a+20>>2]){H[b>>2]=H[a+24>>2];H[a+16>>2]=b+4;break d}d=H[a+12>>2];c=b-d|0;f=c>>2;b=f+1|0;if(b>>>0>=1073741824){break c}e=c>>1;e=c>>>0<2147483644?b>>>0>e>>>0?b:e:1073741823;if(e){if(e>>>0>=1073741824){break b}b=$k(e<<2)}else{b=0}f=b+(f<<2)|0;H[f>>2]=H[a+24>>2];if((c|0)>0){ek(b,d,c)}H[a+20>>2]=b+(e<<2);H[a+16>>2]=f+4;H[a+12>>2]=b;if(!d){break d}Wk(d)}H[a+24>>2]=0;H[a+28>>2]=0}return}Fa();X()}Ua(1604);X()}function gk(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}F[a|0]=b;e=a+c|0;F[e-1|0]=b;if(c>>>0<3){break a}F[a+2|0]=b;F[a+1|0]=b;F[e-3|0]=b;F[e-2|0]=b;if(c>>>0<7){break a}F[a+3|0]=b;F[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=N(b&255,16843009);H[f>>2]=d;b=c-e&-4;c=b+f|0;H[c-4>>2]=d;if(b>>>0<9){break a}H[f+8>>2]=d;H[f+4>>2]=d;H[c-8>>2]=d;H[c-12>>2]=d;if(b>>>0<25){break a}H[f+24>>2]=d;H[f+20>>2]=d;H[f+16>>2]=d;H[f+12>>2]=d;H[c-16>>2]=d;H[c-20>>2]=d;H[c-24>>2]=d;H[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=Fl(d,0,1,1);e=fa;b=b+f|0;while(1){H[b+24>>2]=d;H[b+28>>2]=e;H[b+16>>2]=d;H[b+20>>2]=e;H[b+8>>2]=d;H[b+12>>2]=e;H[b>>2]=d;H[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function Ce(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=da-16|0;da=g;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=a+4;d=a+16|0;H[d>>2]=0;H[d+4>>2]=0;H[a+12>>2]=d;d=a+24|0;H[d+4>>2]=0;H[d+8>>2]=0;H[d>>2]=d+4;if((b+4|0)!=(a|0)){Ee(a,H[b+4>>2],b+8|0)}if((d|0)!=(b+28|0)){Ee(d,H[b+28>>2],b+32|0)}H[g+12>>2]=0;a:{f=H[c+8>>2];if((H[c+12>>2]-f|0)<=0){break a}d=b+20|0;b=H[d>>2];if(!b){break a}while(1){b:{if(!b){break b}h=H[H[(e<<2)+f>>2]+56>>2];e=d;while(1){f=H[b+16>>2]<(h|0);e=f?e:b;b=H[(f<<2)+b>>2];if(b){continue}break}if((d|0)==(e|0)|H[e+16>>2]>(h|0)){break b}b=Fe(a,g+12|0);if((b|0)==(e+20|0)){break b}Ee(b,H[e+20>>2],e+24|0)}e=H[g+12>>2]+1|0;H[g+12>>2]=e;f=H[c+8>>2];if(H[c+12>>2]-f>>2<=(e|0)){break a}b=H[d>>2];continue}}da=g+16|0}function Hh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+56>>2]-H[c+52>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=$k(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ek(c,d,e)}H[b+8>>2]=g;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}Wk(d)}e=a+8|0;b=H[a+76>>2];c:{if(b){d=H[b>>2];if((d|0)==H[b+4>>2]){return 1}b=0;while(1){c=Ih(e,H[(b<<2)+d>>2]);if(!c){break c}f=H[a+76>>2];d=H[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=H[H[a+12>>2]+64>>2];a=H[a+4>>2]-H[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=Ih(e,N(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}Ua(1604);X()}function Bh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=H[a+4>>2];d=H[b>>2];a:{c=H[a+12>>2];c=H[c+28>>2]-H[c+24>>2]|0;e=c>>2;b:{if(e>>>0<=H[b+8>>2]-d>>2>>>0){break b}if((c|0)<0){break a}f=H[b+4>>2];c=$k(c);g=c+(e<<2)|0;e=f-d|0;f=e+c|0;if((e|0)>0){ek(c,d,e)}H[b+8>>2]=g;H[b+4>>2]=f;H[b>>2]=c;if(!d){break b}Wk(d)}e=a+8|0;b=H[a+76>>2];c:{if(b){d=H[b>>2];if((d|0)==H[b+4>>2]){return 1}b=0;while(1){c=Ch(e,H[(b<<2)+d>>2]);if(!c){break c}f=H[a+76>>2];d=H[f>>2];b=b+1|0;if(b>>>0>2]-d>>2>>>0){continue}break}break c}c=1;a=H[a+12>>2];a=H[a+4>>2]-H[a>>2]|0;if(a>>>0<12){break c}a=(a>>2>>>0)/3|0;b=0;while(1){c=Ch(e,N(b,3));if(!c){break c}b=b+1|0;if((a|0)!=(b|0)){continue}break}}return c|0}Ua(1604);X()}function qb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=da-16|0;da=h;a:{b:{c=H[a+8>>2];c:{if((c|0)!=H[a+12>>2]){H[c>>2]=b;H[a+8>>2]=c+4;break c}e=H[a+4>>2];d=c-e|0;g=d>>2;c=g+1|0;if(c>>>0>=1073741824){break b}f=d>>1;f=d>>>0<2147483644?c>>>0>f>>>0?c:f:1073741823;if(f){if(f>>>0>=1073741824){break a}c=$k(f<<2)}else{c=0}g=c+(g<<2)|0;H[g>>2]=b;if((d|0)>0){ek(c,e,d)}H[a+12>>2]=c+(f<<2);H[a+8>>2]=g+4;H[a+4>>2]=c;if(!e){break c}Wk(e)}c=H[a+16>>2];d=H[a+20>>2]-c>>2;d:{if((d|0)>(b|0)){break d}H[h+12>>2]=-1;e=b+1|0;if(e>>>0>d>>>0){nb(a+16|0,e-d|0,h+12|0);c=H[a+16>>2];break d}if(d>>>0<=e>>>0){break d}H[a+20>>2]=(e<<2)+c}H[(b<<2)+c>>2]=(H[a+8>>2]-H[a+4>>2]>>2)-1;da=h+16|0;return}Fa();X()}Ua(1604);X()}function Ic(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[b+4>>2]-H[b>>2]>>2;f=H[a+8>>2];i=F[f+24|0];d=i;g=da+-64|0;da=g;h=Wa(g);d=N(d,H[3716]);Xa(h,H[H[a+8>>2]+56>>2],0,i,5,d,d>>31);j=$k(96);$a(Za(j,h),e);d=H[a+32>>2];H[a+32>>2]=j;if(d){Fb(d)}a:{if(!c){break a}d=H[a+32>>2];F[d+84|0]=0;h=H[d+68>>2];e=H[d+72>>2]-h>>2;if(e>>>0>>0){nb(d+68|0,c-e|0,2764);break a}if(c>>>0>=e>>>0){break a}H[d+72>>2]=h+(c<<2)}da=g- -64|0;c=H[b>>2];d=H[b+4>>2];if((c|0)==(d|0)){return 1}a=H[a+32>>2];g=H[H[a>>2]>>2]+H[a+48>>2]|0;b=0;while(1){a=H[c>>2];if(!I[f+84|0]){a=H[H[f+68>>2]+(a<<2)>>2]}a=Gb(f,a,F[f+24|0],g+(b<<2)|0);if(a){b=b+i|0;c=c+4|0;if((d|0)!=(c|0)){continue}}break}return a|0}function Db(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{g=a+16|0;f=H[g>>2];b:{if(!f){break b}i=H[b>>2];b=g;while(1){h=(i|0)>H[f+16>>2];b=h?b:f;f=H[(h<<2)+f>>2];if(f){continue}break}if((b|0)==(g|0)|(i|0)>2]){break b}f=H[b+24>>2];if(!f){break b}g=I[c+11|0];h=g<<24>>24<0;i=h?H[c>>2]:c;g=h?H[c+4>>2]:g;m=b+20|0;while(1){b=I[f+27|0];h=b<<24>>24<0;b=h?H[f+20>>2]:b;l=b>>>0>>0;c:{d:{k=l?b:g;e:{if(k){j=f+16|0;h=h?H[j>>2]:j;j=ik(i,h,k);f:{if(!j){if(b>>>0<=g>>>0){break f}break c}if((j|0)<0){break c}}b=ik(h,i,k);if(!b){break e}if((b|0)<0){break d}break a}if(b>>>0>g>>>0){break c}}if(l){break d}break a}f=f+4|0}f=H[f>>2];if(f){continue}break}}Hb(a,c,d,e);return}Hb(m,c,d,e)}function Bb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=a+16|0;e=H[f>>2];a:{if(!e){break a}h=H[b>>2];b=f;while(1){g=(h|0)>H[e+16>>2];b=g?b:e;e=H[(g<<2)+e>>2];if(e){continue}break}if((b|0)==(f|0)|(h|0)>2]){break a}e=H[b+24>>2];if(!e){break a}f=I[c+11|0];g=f<<24>>24<0;h=g?H[c>>2]:c;f=g?H[c+4>>2]:f;g=b+20|0;while(1){b=I[e+27|0];i=b<<24>>24<0;b=i?H[e+20>>2]:b;l=b>>>0>>0;b:{c:{k=l?b:f;d:{if(k){j=e+16|0;i=i?H[j>>2]:j;j=ik(h,i,k);e:{if(!j){if(b>>>0<=f>>>0){break e}break b}if((j|0)<0){break b}}b=ik(i,h,k);if(!b){break d}if((b|0)<0){break c}return hi(g,c,d)}if(b>>>0>f>>>0){break b}}if(l){break c}return hi(g,c,d)}e=e+4|0}e=H[e>>2];if(e){continue}break}}return hi(a,c,d)}function Ud(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=da-48|0;da=d;H[d+40>>2]=H[a- -64>>2];c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],d+40|0,d+44|0)}c=d+8|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);if(H[d+40>>2]>0){f=1;while(1){g=f;f=H[H[a+60>>2]+(e>>>3&536870908)>>2]>>>e|0;ye(c,(g^f^-1)&1);f=f&1;e=e+1|0;if((e|0)>2]){continue}break}}ze(c,b);H[d+44>>2]=H[a+12>>2];e=H[b+20>>2];a:{if(!!H[b+16>>2]&(e|0)>=0|(e|0)>0){break a}f=d+48|0;ya(b,H[b+4>>2],d+44|0,f);e=H[b+20>>2];g=H[b+16>>2];H[d+44>>2]=H[a+24>>2];if(!!g&(e|0)>=0|(e|0)>0){break a}ya(b,H[b+4>>2],d+44|0,f)}ve(c);da=d+48|0;return 1}function cd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=da-48|0;da=d;H[d+40>>2]=H[a+80>>2];c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],d+40|0,d+44|0)}c=d+8|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;xe(c);if(H[d+40>>2]>0){f=1;while(1){g=f;f=H[H[a+76>>2]+(e>>>3&536870908)>>2]>>>e|0;ye(c,(g^f^-1)&1);f=f&1;e=e+1|0;if((e|0)>2]){continue}break}}ze(c,b);H[d+44>>2]=H[a+12>>2];e=H[b+20>>2];a:{if(!!H[b+16>>2]&(e|0)>=0|(e|0)>0){break a}f=d+48|0;ya(b,H[b+4>>2],d+44|0,f);e=H[b+20>>2];g=H[b+16>>2];H[d+44>>2]=H[a+16>>2];if(!!g&(e|0)>=0|(e|0)>0){break a}ya(b,H[b+4>>2],d+44|0,f)}ve(c);da=d+48|0;return 1}function Ig(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{d=H[a>>2];g=H[a+4>>2]-d>>2;e=g+1|0;if(e>>>0<1073741824){d=H[a+8>>2]-d|0;f=d>>1;d=d>>>0<2147483644?e>>>0>f>>>0?e:f:1073741823;if(d){if(d>>>0>=1073741824){break c}c=$k(d<<2)}f=H[b>>2];H[b>>2]=0;e=(g<<2)+c|0;H[e>>2]=f;d=(d<<2)+c|0;g=e+4|0;b=H[a>>2];c=H[a+4>>2];if((b|0)==(c|0)){break b}while(1){c=c-4|0;f=H[c>>2];H[c>>2]=0;e=e-4|0;H[e>>2]=f;if((b|0)!=(c|0)){continue}break}H[a+8>>2]=d;c=H[a+4>>2];H[a+4>>2]=g;b=H[a>>2];H[a>>2]=e;if((b|0)==(c|0)){break a}while(1){c=c-4|0;a=H[c>>2];H[c>>2]=0;if(a){ga[H[H[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Fa();X()}Ua(1604);X()}H[a+8>>2]=d;H[a+4>>2]=g;H[a>>2]=e}if(b){Wk(b)}}function Eb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=a+16|0;d=H[e>>2];a:{if(!d){break a}g=H[b>>2];b=e;while(1){f=(g|0)>H[d+16>>2];b=f?b:d;d=H[(f<<2)+d>>2];if(d){continue}break}if((b|0)==(e|0)|(g|0)>2]){break a}d=H[b+24>>2];if(!d){break a}e=I[c+11|0];f=e<<24>>24<0;g=f?H[c>>2]:c;e=f?H[c+4>>2]:e;f=b+20|0;while(1){b=I[d+27|0];h=b<<24>>24<0;b=h?H[d+20>>2]:b;k=b>>>0>>0;b:{c:{j=k?b:e;d:{if(j){i=d+16|0;h=h?H[i>>2]:i;i=ik(g,h,j);e:{if(!i){if(b>>>0<=e>>>0){break e}break b}if((i|0)<0){break b}}b=ik(h,g,j);if(!b){break d}if((b|0)<0){break c}return ii(f,c)}if(b>>>0>e>>>0){break b}}if(k){break c}return ii(f,c)}d=d+4|0}d=H[d>>2];if(d){continue}break}}return ii(a,c)}function $a(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(H[a+64>>2]){break a}d=$k(32);H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;c=H[a+64>>2];H[a+64>>2]=d;if(!c){break a}d=H[c>>2];if(d){H[c+4>>2]=d;Wk(d)}Wk(c)}d=H[a+64>>2];c=H[a+28>>2]-1|0;if(c>>>0<=10){c=H[(c<<2)+14848>>2]}else{c=-1}c=N(c,F[a+24|0]);g=c;f=c>>31;e=Fl(c,f,b,0);c=0;b:{if((fa|0)<0){break b}ai(d,e);c=H[d+28>>2];e=H[d+24>>2]+1|0;c=e?c:c+1|0;H[d+24>>2]=e;H[d+28>>2]=c;c=1}if(c){d=H[a+64>>2];H[a>>2]=d;c=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=c;c=H[d+24>>2];d=H[d+28>>2];H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=g;H[a+44>>2]=f;H[a+16>>2]=c;H[a+20>>2]=d;H[a+80>>2]=b}}function nf(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:{if((a|0)==(b|0)){break a}e=H[a>>2];H[c>>2]=e;f=a+4|0;if((f|0)==(b|0)){break a}a=H[d>>2];g=H[a>>2];d=H[f>>2];h=H[a+4>>2]-g>>3;b:{if(d>>>0>=h>>>0){break b}a=c;while(1){if(e>>>0>=h>>>0){break b}j=a+4|0;c:{if(K[(d<<3)+g>>2]>2]){H[a+4>>2]=e;i=c;d:{if((a|0)==(c|0)){break d}while(1){k=H[f>>2];if(k>>>0>=h>>>0){break b}e=a-4|0;d=H[e>>2];if(d>>>0>=h>>>0){break b}i=a;if(K[(k<<3)+g>>2]>=K[(d<<3)+g>>2]){break d}H[a>>2]=d;a=e;if((c|0)!=(a|0)){continue}break}i=c}H[i>>2]=H[f>>2];break c}H[j>>2]=d}f=f+4|0;if((f|0)==(b|0)){break a}e=H[j>>2];a=j;d=H[f>>2];if(h>>>0>d>>>0){continue}break}}Sc();X()}}function Ia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;H[b>>2]=1;f=b+8|0;c=H[b+8>>2];d=H[b+12>>2]-c|0;if(d>>>0<=4294967291){bi(f,d+4|0);c=H[f>>2]}c=c+d|0;d=H[a+4>>2];F[c|0]=d;F[c+1|0]=d>>>8;F[c+2|0]=d>>>16;F[c+3|0]=d>>>24;c=H[a+8>>2];if((c|0)!=H[a+12>>2]){d=0;while(1){g=(d<<2)+c|0;c=H[b+8>>2];e=H[b+12>>2]-c|0;if(e>>>0<=4294967291){bi(f,e+4|0);c=H[f>>2]}c=c+e|0;e=H[g>>2];F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;d=d+1|0;c=H[a+8>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}c=H[b+12>>2];b=H[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){bi(f,c+4|0);b=H[f>>2]}b=b+c|0;a=H[a+20>>2];F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24}function Eg(a,b,c){var d=0,e=0,f=0,g=0;e=da-16|0;da=e;H[a+4>>2]=0;a:{b:{if(!b){break b}g=H[a+8>>2];d=g<<5;c:{if(d>>>0>=b>>>0){H[a+4>>2]=b;break c}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;if((b|0)<0){break a}if(d>>>0<=1073741822){f=b+31&-32;d=g<<6;d=d>>>0>>0?f:d}else{d=2147483647}Bc(e,d);f=H[a>>2];H[a>>2]=H[e>>2];H[e>>2]=f;d=H[a+4>>2];H[a+4>>2]=b;H[e+4>>2]=d;d=H[a+8>>2];H[a+8>>2]=H[e+8>>2];H[e+8>>2]=d;if(!f){break c}Wk(f)}f=b>>>5|0;d=f<<2;a=H[a>>2];if(I[c|0]){a=gk(a,255,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;H[a>>2]=H[a>>2]|-1>>>32-b;break b}a=gk(a,0,d);b=b&31;if(!b){break b}a=a+(f<<2)|0;H[a>>2]=H[a>>2]&(-1>>>32-b^-1)}da=e+16|0;return}jl();X()}function qe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=da-16|0;da=e;d=H[b+48>>2];a:{if((Kb(d)|0)>9){break a}if((ga[H[H[b>>2]+8>>2]](b)|0)!=1){break a}b:{f=H[H[H[b+4>>2]+8>>2]+(a<<2)>>2];a=H[f+56>>2];if((a|0)==3){if(I[f+24|0]!=2){break b}c=5;if((Kb(d)|0)<4){break a}a=H[f+56>>2]}if((a|0)!=1){break b}c:{if((Kb(d)|0)>3){break c}g=e,h=Vj(H[b+4>>2],0),H[g+12>>2]=h;a=Wj(H[b+4>>2]);if(!a){break c}a=H[a+28>>2]-1|0;if(a>>>0<11&1279>>>a){c=6;break a}a=re(e,1357);b=Bb(d,e+12|0,a,-1);if(F[a+11|0]<0){Wk(H[a>>2])}c=6;if((b|0)>0){break a}}c=0;break a}c=0;if((Kb(d)|0)>7){break a}c=1;if((Kb(d)|0)>1){break a}c=K[H[b+4>>2]+80>>2]<40?1:4}da=e+16|0;return c}function Ke(a,b,c){var d=0,e=0,f=0;d=da-16|0;da=d;H[d+12>>2]=b;b=$k(32);H[d>>2]=b;H[d+4>>2]=17;H[d+8>>2]=-2147483616;F[b+17|0]=0;F[b+16|0]=I[1373];e=I[1369]|I[1370]<<8|(I[1371]<<16|I[1372]<<24);f=I[1365]|I[1366]<<8|(I[1367]<<16|I[1368]<<24);F[b+8|0]=f;F[b+9|0]=f>>>8;F[b+10|0]=f>>>16;F[b+11|0]=f>>>24;F[b+12|0]=e;F[b+13|0]=e>>>8;F[b+14|0]=e>>>16;F[b+15|0]=e>>>24;e=I[1361]|I[1362]<<8|(I[1363]<<16|I[1364]<<24);f=I[1357]|I[1358]<<8|(I[1359]<<16|I[1360]<<24);F[b|0]=f;F[b+1|0]=f>>>8;F[b+2|0]=f>>>16;F[b+3|0]=f>>>24;F[b+4|0]=e;F[b+5|0]=e>>>8;F[b+6|0]=e>>>16;F[b+7|0]=e>>>24;fi(Fe(a+4|0,d+12|0),d,c);if(F[d+11|0]<0){Wk(H[d>>2])}da=d+16|0}function Yc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){f=H[a+4>>2]-e|0;d=f+b|0;h=f>>2;i=h>>>0>>0?d:c;f=i-b|0;if(f){fk(e,b,f)}if(g>>>0>h>>>0){b=H[a+4>>2];if((c|0)!=(i|0)){while(1){H[b>>2]=H[d>>2];b=b+4|0;d=d+4|0;if((d|0)!=(c|0)){continue}break}}H[a+4>>2]=b;return}H[a+4>>2]=e+f;return}if(e){H[a+4>>2]=e;Wk(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}e=d>>1;d=d>>>0<2147483644?e>>>0>>0?g:e:1073741823;if(d>>>0>=1073741824){break a}e=d<<2;d=$k(e);H[a>>2]=d;H[a+4>>2]=d;H[a+8>>2]=d+e;if((b|0)!=(c|0)){c=b;b=f&-4;d=ek(d,c,b)+b|0}H[a+4>>2]=d;return}Fa();X()}function ke(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;f=da-32|0;da=f;a=a+8|0;d=d-e|0;if((d|0)>0){i=0-e<<2;while(1){j=d<<2;g=j+b|0;h=g+i|0;k=H[h>>2];h=H[h+4>>2];l=H[g+4>>2];H[f+16>>2]=H[g>>2];H[f+20>>2]=l;H[f+8>>2]=k;H[f+12>>2]=h;Ld(f+24|0,a,f+16|0,f+8|0);g=c+j|0;H[g>>2]=H[f+24>>2];H[g+4>>2]=H[f+28>>2];d=d-e|0;if((d|0)>0){continue}break}}d=(e&1073741823)!=(e|0)?-1:e<<2;d=gk($k(d),0,d);e=H[d>>2];g=H[d+4>>2];i=H[b+4>>2];H[f+16>>2]=H[b>>2];H[f+20>>2]=i;H[f+8>>2]=e;H[f+12>>2]=g;Ld(f+24|0,a,f+16|0,f+8|0);H[c>>2]=H[f+24>>2];H[c+4>>2]=H[f+28>>2];Wk(d);da=f+32|0;return 1}function ei(a){var b=0,c=0,d=0,e=0,f=0;c=da-32|0;da=c;b=H[a+20>>2];e=H[a+16>>2];if(!!e&(b|0)>=0|(b|0)>0){b=H[H[a+12>>2]+4>>2]+7|0;d=b>>>0<7?1:d;f=d<<29|b>>>3;b=d>>>3|0;if(I[a+24|0]){d=H[a+4>>2];F[c+24|0]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=0;H[c+4>>2]=0;kf(f,b,c);d=d-e|0;b=d-8|0;e=H[c+4>>2]-H[c>>2]|0;fk(b+e|0,d,f);ek(b,H[c>>2],e);b=8-e|0;d=b+H[a+16>>2]|0;e=H[a+20>>2];H[a+16>>2]=d;H[a+20>>2]=b>>>0>d>>>0?e+1|0:e;b=H[c+12>>2];H[c+12>>2]=0;if(b){Wk(b)}b=H[c>>2];if(b){H[c+4>>2]=b;Wk(b)}b=H[a+16>>2]}else{b=e}ai(a,f-b+(H[a+4>>2]-H[a>>2])|0);H[a+16>>2]=0;H[a+20>>2]=0}da=c+32|0}function Gg(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){f=H[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){H[e>>2]=H[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>0){f=ek(f,d,b)+b|0}H[a+4>>2]=f;return}H[a+4>>2]=e;return}if(e){H[a+4>>2]=e;Wk(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=$k(e);H[a>>2]=c;H[a+4>>2]=c;H[a+8>>2]=c+e;if(f){c=ek(c,b,f)+f|0}H[a+4>>2]=c;return}Fa();X()}function ge(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=da-32|0;da=g;H[a+48>>2]=f;d=H[a+40>>2];h=H[d>>2];a:{i=H[d+4>>2]-h|0;if((i|0)<=0){break a}d=i>>>2|0;f=d-1|0;if(f>>>0>2>>>0){i=a+8|0;m=a+44|0;while(1){xd(m,H[(f<<2)+h>>2],b,f);h=H[a+52>>2];j=H[a+56>>2];k=N(e,f)<<2;l=k+b|0;n=H[l+4>>2];H[g+16>>2]=H[l>>2];H[g+20>>2]=n;H[g+8>>2]=h;H[g+12>>2]=j;Ld(g+24|0,i,g+16|0,g+8|0);h=c+k|0;H[h>>2]=H[g+24>>2];H[h+4>>2]=H[g+28>>2];if(d>>>0<2){break a}d=f;j=H[a+40>>2];h=H[j>>2];f=f-1|0;if(f>>>0>2]-h>>2>>>0){continue}break}}Sc();X()}da=g+32|0;return 1}function Xi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a=da-16|0;da=a;a:{if(!b){break a}H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=b+96|0;g=H[b+96>>2];e=(H[b+100>>2]-g|0)/12|0;b:{if(e>>>0>>0){Bj(h,c-e|0,a);break b}if(c>>>0>>0){H[b+100>>2]=g+N(c,12)}if(!c){break a}}g=H[h>>2];e=0;while(1){i=N(e,12);f=i+d|0;j=H[f>>2];k=H[f+8>>2];l=H[f+4>>2];f=(H[b+100>>2]-g|0)/12|0;c:{if(f>>>0>e>>>0){e=e+1|0;break c}H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;e=e+1|0;Bj(h,e-f|0,a);g=H[h>>2]}f=g+i|0;H[f+8>>2]=k;H[f+4>>2]=l;H[f>>2]=j;if((c|0)!=(e|0)){continue}break}}da=a+16|0;return(b|0)!=0|0}function Vd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=da-32|0;da=g;H[a+48>>2]=f;d=H[a+40>>2];h=H[d>>2];a:{i=H[d+4>>2]-h|0;if((i|0)<=0){break a}d=i>>>2|0;f=d-1|0;if(f>>>0>2>>>0){i=a+8|0;m=a+44|0;while(1){ed(m,H[(f<<2)+h>>2],b,f);h=H[a+52>>2];j=H[a+56>>2];k=N(e,f)<<2;l=k+b|0;n=H[l+4>>2];H[g+16>>2]=H[l>>2];H[g+20>>2]=n;H[g+8>>2]=h;H[g+12>>2]=j;Ld(g+24|0,i,g+16|0,g+8|0);h=c+k|0;H[h>>2]=H[g+24>>2];H[h+4>>2]=H[g+28>>2];if(d>>>0<2){break a}d=f;j=H[a+40>>2];h=H[j>>2];f=f-1|0;if(f>>>0>2]-h>>2>>>0){continue}break}}Sc();X()}da=g+32|0;return 1}function Me(a,b){var c=0,d=0,e=0,f=0;f=da-16|0;da=f;c=$k(16);H[f>>2]=c;H[f+4>>2]=15;H[f+8>>2]=-2147483632;F[c+15|0]=0;d=I[1746]|I[1747]<<8|(I[1748]<<16|I[1749]<<24);e=I[1742]|I[1743]<<8|(I[1744]<<16|I[1745]<<24);F[c+7|0]=e;F[c+8|0]=e>>>8;F[c+9|0]=e>>>16;F[c+10|0]=e>>>24;F[c+11|0]=d;F[c+12|0]=d>>>8;F[c+13|0]=d>>>16;F[c+14|0]=d>>>24;d=I[1739]|I[1740]<<8|(I[1741]<<16|I[1742]<<24);e=I[1735]|I[1736]<<8|(I[1737]<<16|I[1738]<<24);F[c|0]=e;F[c+1|0]=e>>>8;F[c+2|0]=e>>>16;F[c+3|0]=e>>>24;F[c+4|0]=d;F[c+5|0]=d>>>8;F[c+6|0]=d>>>16;F[c+7|0]=d>>>24;fi(a+4|0,f,b);if(F[f+11|0]<0){Wk(H[f>>2])}da=f+16|0}function Gk(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0;i=1;j=d&2147483647;l=j;k=(j|0)==2147418112;a:{if(k&!c?a|b:k&(c|0)!=0|j>>>0>2147418112){break a}j=h&2147483647;k=(j|0)==2147418112;if(k&!g?e|f:k&(g|0)!=0|j>>>0>2147418112){break a}if(!(a|e|(c|g)|(b|f|(j|l)))){return 0}i=d&h;if((i|0)>0|(i|0)>=0){i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>>0|b>>>0>>0:c>>>0>>0&(d|0)<=(h|0)|(d|0)<(h|0)){break a}return(a^e|c^g|(b^f|d^h))!=0}i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>e>>>0|b>>>0>f>>>0:c>>>0>g>>>0&(d|0)>=(h|0)|(d|0)>(h|0)){break a}i=(a^e|c^g|(b^f|d^h))!=0}return i}function Te(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+4|0;a:{a=H[a+4>>2];if(a){e=I[c+11|0];d=e<<24>>24<0;i=d?H[c>>2]:c;e=d?H[c+4>>2]:e;while(1){c=I[a+27|0];d=c<<24>>24<0;c=d?H[a+20>>2]:c;j=c>>>0>>0;b:{c:{d:{e:{f:{h=j?c:e;g:{if(h){g=a+16|0;d=d?H[g>>2]:g;g=ik(i,d,h);if(!g){if(c>>>0>e>>>0){break g}break f}if((g|0)>=0){break f}break g}if(c>>>0<=e>>>0){break e}}c=H[a>>2];if(c){break b}H[b>>2]=a;return a}c=ik(d,i,h);if(c){break d}}if(j){break c}break a}if((c|0)>=0){break a}}f=a+4|0;c=H[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}H[b>>2]=f;return f}H[b>>2]=a;return f}function Za(a,b){var c=0;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;c=H[b+60>>2];H[a+56>>2]=H[b+56>>2];H[a+60>>2]=c;c=H[b+52>>2];H[a+48>>2]=H[b+48>>2];H[a+52>>2]=c;c=H[b+44>>2];H[a+40>>2]=H[b+40>>2];H[a+44>>2]=c;c=H[b+36>>2];H[a+32>>2]=H[b+32>>2];H[a+36>>2]=c;c=H[b+28>>2];H[a+24>>2]=H[b+24>>2];H[a+28>>2]=c;c=H[b+20>>2];H[a+16>>2]=H[b+16>>2];H[a+20>>2]=c;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c;H[a+88>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;F[a+77|0]=0;F[a+78|0]=0;F[a+79|0]=0;F[a+80|0]=0;F[a+81|0]=0;F[a+82|0]=0;F[a+83|0]=0;F[a+84|0]=0;return a}function Zb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+4|0;a=H[a+4>>2];a:{b:{if(!a){break b}d=I[b+11|0];c=d<<24>>24<0;i=c?H[b>>2]:b;e=c?H[b+4>>2]:d;c=g;while(1){b=I[a+27|0];j=b<<24>>24<0;h=j?H[a+20>>2]:b;f=h>>>0>e>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=ik(j?H[b>>2]:b,i,d);if(b){break c}}b=e>>>0>h>>>0?-1:f}c=(b|0)<0?c:a;a=H[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=I[c+27|0];f=a<<24>>24<0;d:{d=f?H[c+20>>2]:a;b=d>>>0>>0?d:e;if(b){a=c+16|0;a=ik(i,f?H[a>>2]:a,b);if(a){break d}}if(d>>>0>e>>>0){break b}break a}if((a|0)>=0){break a}}c=g}return c}function Qb(a){var b=0,c=0,d=0,e=0;c=H[a+152>>2];if(c){b=H[a+156>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;Wk(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+152>>2]}H[a+156>>2]=c;Wk(b)}c=H[a+140>>2];if(c){b=H[a+144>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;Wk(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+140>>2]}H[a+144>>2]=c;Wk(b)}b=H[a+128>>2];if(b){H[a+132>>2]=b;Wk(b)}b=H[a+116>>2];if(b){H[a+120>>2]=b;Wk(b)}b=H[a+104>>2];if(b){H[a+108>>2]=b;Wk(b)}te(a+84|0);te(a- -64|0);te(a+44|0);ve(a+12|0)}function dl(a,b,c,d,e,f,g,h){var i=0,j=0,k=0;i=da-16|0;da=i;if((b^-1)-17>>>0>=c>>>0){if(I[a+11|0]>>>7|0){k=H[a>>2]}else{k=a}a:{if(b>>>0<2147483623){H[i+8>>2]=b<<1;H[i+12>>2]=b+c;c=da-16|0;da=c;da=c+16|0;c=i+8|0;j=i+12|0;c=H[(K[j>>2]>2]?c:j)>>2];if(c>>>0>=11){j=c+16&-16;c=j-1|0;c=(c|0)==11?j:c}else{c=10}break a}c=-18}j=c+1|0;c=$k(j);if(e){Xk(c,k,e)}if(g){Xk(c+e|0,h,g)}d=d-(e+f|0)|0;if(d){Xk((c+e|0)+g|0,(e+k|0)+f|0,d)}if((b|0)!=10){Wk(k)}H[a>>2]=c;H[a+8>>2]=j|-2147483648;b=a;a=d+(e+g|0)|0;H[b+4>>2]=a;F[i+7|0]=0;F[a+c|0]=I[i+7|0];da=i+16|0;return}se();X()}function Tb(a){var b=0,c=0,d=0,e=0;c=H[a+140>>2];if(c){b=H[a+144>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;Wk(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+140>>2]}H[a+144>>2]=c;Wk(b)}c=H[a+128>>2];if(c){b=H[a+132>>2];if((c|0)==(b|0)){b=c}else{while(1){e=b-12|0;d=H[e>>2];if(d){H[b-8>>2]=d;Wk(d)}b=e;if((c|0)!=(b|0)){continue}break}b=H[a+128>>2]}H[a+132>>2]=c;Wk(b)}b=H[a+116>>2];if(b){H[a+120>>2]=b;Wk(b)}b=H[a+104>>2];if(b){H[a+108>>2]=b;Wk(b)}b=H[a+92>>2];if(b){H[a+96>>2]=b;Wk(b)}te(a+72|0);te(a+52|0);te(a+32|0);te(a+12|0)}function $b(a,b){var c=0,d=0,e=0,f=0;c=H[a+16>>2];if(b){H[a+12>>2]=H[a+12>>2]|-2147483648>>>c}b=c+1|0;H[a+16>>2]=b;a:{b:{if((b|0)==32){b=H[a+4>>2];c:{if((b|0)!=H[a+8>>2]){H[b>>2]=H[a+12>>2];H[a+4>>2]=b+4;break c}f=H[a>>2];c=b-f|0;e=c>>2;b=e+1|0;if(b>>>0>=1073741824){break b}d=c>>1;d=c>>>0<2147483644?b>>>0>d>>>0?b:d:1073741823;if(d){if(d>>>0>=1073741824){break a}b=$k(d<<2)}else{b=0}e=b+(e<<2)|0;H[e>>2]=H[a+12>>2];if((c|0)>0){ek(b,f,c)}H[a+8>>2]=b+(d<<2);H[a+4>>2]=e+4;H[a>>2]=b;if(!f){break c}Wk(f)}H[a+12>>2]=0;H[a+16>>2]=0}return}Fa();X()}Ua(1604);X()}function rl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(kl(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(kl(a,H[b>>2],e)){if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+32>>2]=d;b:{if(H[b+44>>2]==4){break b}G[b+52>>1]=0;a=H[a+8>>2];ga[H[H[a>>2]+20>>2]](a,b,c,c,1,e);if(I[b+53|0]){H[b+44>>2]=3;if(!I[b+52|0]){break b}break a}H[b+44>>2]=4}H[b+20>>2]=c;H[b+40>>2]=H[b+40>>2]+1;if(H[b+36>>2]!=1|H[b+24>>2]!=2){break a}F[b+54|0]=1;return}a=H[a+8>>2];ga[H[H[a>>2]+24>>2]](a,b,c,d,e)}}function Wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}d=N(b,12);b=$k(d);H[a>>2]=b;H[a+4>>2]=b;e=b+d|0;H[a+8>>2]=e;f=H[c>>2];c=H[c+4>>2]-f|0;c:{if(!c){c=b;b=d-12|0;gk(c,0,(b-((b>>>0)%12|0)|0)+12|0);break c}if((c|0)<0){break a}g=c>>2<<2;h=c>>>2<<2;while(1){H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;d=$k(c);H[b>>2]=d;H[b+4>>2]=d;H[b+8>>2]=d+g;i=b,j=ek(d,f,c)+h|0,H[i+4>>2]=j;b=b+12|0;if((e|0)!=(b|0)){continue}break}}H[a+4>>2]=e}return}Fa();X()}H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;Fa();X()}function Re(a,b,c,d,e){var f=0,g=0,h=0;f=da-16|0;da=f;g=Se(b,c,f+12|0,f+8|0,d);c=H[g>>2];if(c){b=0}else{c=$k(40);d=c+16|0;a:{if(F[e+11|0]>=0){h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;H[d+8>>2]=H[e+8>>2];break a}el(d,H[e>>2],H[e+4>>2])}d=c+28|0;b:{if(F[e+23|0]>=0){e=e+12|0;h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;H[d+8>>2]=H[e+8>>2];break b}el(d,H[e+12>>2],H[e+16>>2])}H[c+8>>2]=H[f+12>>2];H[c>>2]=0;H[c+4>>2]=0;H[g>>2]=c;d=H[H[b>>2]>>2];if(d){H[b>>2]=d;d=H[g>>2]}else{d=c}Qe(H[b+4>>2],d);H[b+8>>2]=H[b+8>>2]+1;b=1}F[a+4|0]=b;H[a>>2]=c;da=f+16|0}function Ma(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=H[a+8>>2];e=H[a>>2];if(g>>>0<=d-e>>2>>>0){d=H[a+4>>2]-e|0;f=d>>2;d=f>>>0>>0?b+d|0:c;h=d-b|0;if(h){fk(e,b,h)}if(f>>>0>>0){b=H[a+4>>2];c=c-d|0;if((c|0)>0){b=ek(b,d,c)+c|0}H[a+4>>2]=b;return}H[a+4>>2]=e+h;return}if(e){H[a+4>>2]=e;Wk(e);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;d=0}a:{if((f|0)<0){break a}c=d>>1;c=d>>>0<2147483644?c>>>0>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=$k(e);H[a>>2]=c;H[a+4>>2]=c;H[a+8>>2]=c+e;if(f){c=ek(c,b,f)+f|0}H[a+4>>2]=c;return}Fa();X()}function Pg(a){var b=0,c=0,d=0,e=0;xe(a);c=H[a+84>>2];a:{if((c|0)<=0){break a}b=c<<5;d=$k((c|0)!=(c&134217727)?-1:b|4);H[d>>2]=c;d=d+4|0;c=d+b|0;b=d;while(1){H[b>>2]=0;H[b+4>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;b=b+32|0;if((c|0)!=(b|0)){continue}break}e=H[a+80>>2];H[a+80>>2]=d;if(e){c=e-4|0;d=H[c>>2];if(d){b=(d<<5)+e|0;while(1){b=ve(b-32|0);if((e|0)!=(b|0)){continue}break}}Wk(c)}if(H[a+84>>2]<=0){break a}b=0;while(1){xe(H[a+80>>2]+(b<<5)|0);b=b+1|0;if((b|0)>2]){continue}break}}}function ml(a,b,c){var d=0,e=0,f=0;d=da+-64|0;da=d;f=H[a>>2];e=H[f-4>>2];f=H[f-8>>2];H[d+20>>2]=0;H[d+16>>2]=b;H[d+12>>2]=a;H[d+8>>2]=c;b=0;gk(d+24|0,0,39);a=a+f|0;a:{if(kl(e,c,0)){H[d+56>>2]=1;ga[H[H[e>>2]+20>>2]](e,d+8|0,a,a,1,0);b=H[d+32>>2]==1?a:0;break a}ga[H[H[e>>2]+24>>2]](e,d+8|0,a,1,0);b:{switch(H[d+44>>2]){case 0:b=H[d+48>>2]==1?H[d+36>>2]==1?H[d+40>>2]==1?H[d+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(H[d+32>>2]!=1){if(H[d+48>>2]|H[d+36>>2]!=1|H[d+40>>2]!=1){break a}}b=H[d+24>>2]}da=d- -64|0;return b}function Jk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=da-16|0;da=f;A(+b);g=v(1)|0;d=v(0)|0;c=g&2147483647;e=c+-1048576|0;a:{if((e|0)==2145386495|e>>>0<2145386495){h=d<<28;e=c>>>4|0;c=(c&15)<<28|d>>>4;d=e+1006632960|0;break a}if((c|0)==2146435072|c>>>0>2146435072){h=d<<28;c=(g&15)<<28|d>>>4;d=g>>>4|2147418112;break a}if(!(c|d)){c=0;d=0;break a}e=c;c=c?Q(c):Q(d)+32|0;Fk(f,d,e,0,0,c+49|0);i=H[f>>2];h=H[f+4>>2];e=15372-c<<16;c=H[f+8>>2];d=e|H[f+12>>2]^65536}H[a>>2]=i;H[a+4>>2]=h;H[a+8>>2]=c;H[a+12>>2]=g&-2147483648|d;da=f+16|0}function dj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=da-48|0;da=f;a:{if(!b){a=0;break a}e=f+16|0;H[e>>2]=0;H[e+4>>2]=0;F[e+24|0]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;g=0;b:{if((Vj(b,0)|0)==-1){break b}if(c){g=0;if(!(ga[H[H[b>>2]+16>>2]](b)|0)){break b}ga[H[H[b>>2]+20>>2]](b)}Be(f,a,b,e);a=H[f>>2];if(F[f+15|0]<0){Wk(H[f+4>>2])}g=0;if(a){break b}wj(d,H[e>>2],H[e+4>>2]);g=H[e+4>>2]-H[e>>2]|0}a=g;b=H[e+12>>2];H[e+12>>2]=0;if(b){Wk(b)}b=H[e>>2];if(!b){break a}H[e+4>>2]=b;Wk(b)}da=f+48|0;return a|0}function Xb(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=2312;b=H[a+60>>2];if(b){c=H[a- -64>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-4|0;d=H[c>>2];H[c>>2]=0;if(d){Fb(d)}if((b|0)!=(c|0)){continue}break}c=H[a+60>>2]}H[a+64>>2]=b;Wk(c)}b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}b=H[a+36>>2];if(b){c=H[a+40>>2];if((b|0)==(c|0)){c=b}else{while(1){c=c-24|0;ga[H[H[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}c=H[a+36>>2]}H[a+40>>2]=b;Wk(c)}H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;Wk(b)}return a|0}function cj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=da-48|0;da=e;a:{if(!b){a=0;break a}d=e+16|0;H[d>>2]=0;H[d+4>>2]=0;F[d+24|0]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;f=0;b:{if((Vj(b,0)|0)==-1){break b}f=0;if(!(ga[H[H[b>>2]+16>>2]](b)|0)){break b}ga[H[H[b>>2]+20>>2]](b);He(e,a,b,d);a=H[e>>2];if(F[e+15|0]<0){Wk(H[e+4>>2])}f=0;if(a){break b}wj(c,H[d>>2],H[d+4>>2]);f=H[d+4>>2]-H[d>>2]|0}a=f;b=H[d+12>>2];H[d+12>>2]=0;if(b){Wk(b)}b=H[d>>2];if(!b){break a}H[d+4>>2]=b;Wk(b)}da=e+48|0;return a|0}function gc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=H[a+8>>2];d=H[e+40>>2];g=$k((d|0)>=0?d:-1);a:{f=H[b>>2];h=H[b+4>>2];if((f|0)==(h|0)){break a}k=d+g|0;while(1){d=H[(i<<2)+f>>2];l=H[H[e>>2]>>2];m=H[e+48>>2];j=H[e+40>>2];n=H[e+44>>2];if(!I[e+84|0]){d=H[H[e+68>>2]+(d<<2)>>2]}d=Fl(j,n,d,0)+m|0;e=ek(g,d+l|0,j);d=H[c+20>>2];if(!H[c+16>>2]&(d|0)<=0|(d|0)<0){ya(c,H[c+4>>2],e,k);h=H[b+4>>2];f=H[b>>2]}i=i+1|0;if(i>>>0>=h-f>>2>>>0){break a}e=H[a+8>>2];continue}}Wk(g);return 1}function Mk(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;a:{if(f&64){c=f+-64|0;b=c&31;if((c&63)>>>0>=32){c=0;b=e>>>b|0}else{c=e>>>b|0;b=((1<>>b}d=0;e=0;break a}if(!f){break a}i=d;h=64-f|0;g=h&31;if((h&63)>>>0>=32){h=i<>>32-g|e<>>0>=32){g=0;b=c>>>b|0}else{g=c>>>b|0;b=((1<>>b}b=j|b;c=g|h;g=d;d=f&31;if((f&63)>>>0>=32){h=0;d=e>>>d|0}else{h=e>>>d|0;d=((1<>>d}e=h}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e}function Qj(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=da-16|0;da=c;e=I[b+11|0];e=e<<24>>24<0?H[b+4>>2]:e;a:{if(e>>>0>255){break a}if(!e){F[c+15|0]=0;b=H[a+20>>2];if(!!H[a+16>>2]&(b|0)>=0|(b|0)>0){break a}ya(a,H[a+4>>2],c+15|0,c+16|0);break a}F[c+14|0]=e;d=H[a+20>>2];if(!!H[a+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(a,H[a+4>>2],c+14|0,c+15|0);d=H[a+20>>2];if(!!H[a+16>>2]&(d|0)>=0|(d|0)>0){break a}g=a;h=H[a+4>>2];a=I[b+11|0];d=a<<24>>24<0;f=d?H[b>>2]:b;ya(g,h,f,(d?H[b+4>>2]:a)+f|0)}da=c+16|0;return e>>>0<256}function mj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=da-48|0;da=d;e=H[a+4>>2];a:{if(!e){break a}if(b){if(!(ga[H[H[e>>2]+16>>2]](e)|0)){break a}b=H[a+4>>2];ga[H[H[b>>2]+20>>2]](b)}b=d+16|0;H[b>>2]=0;H[b+4>>2]=0;F[b+24|0]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;Xe(d,H[a>>2],b);a=H[d>>2];if(F[d+15|0]<0){Wk(H[d+4>>2])}if(!a){wj(c,H[b>>2],H[b+4>>2]);f=H[b+4>>2]-H[b>>2]|0}a=H[b+12>>2];H[b+12>>2]=0;if(a){Wk(a)}a=H[b>>2];if(!a){break a}H[b+4>>2]=a;Wk(a)}da=d+48|0;return f|0}function Fk(a,b,c,d,e,f){var g=0,h=0,i=0;a:{if(f&64){d=b;e=f+-64|0;b=e&31;if((e&63)>>>0>=32){e=d<>>32-b|c<>>0>=32){h=g<>>32-d|e<>>0>=32){e=0;b=c>>>d|0}else{e=c>>>d|0;b=((1<>>d}d=i|b;e=e|h;b=f&31;if((f&63)>>>0>=32){h=g<>>32-b|c<>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e}function ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((ga[H[H[b>>2]+20>>2]](b)|0)<=0){return 1}a:{while(1){d=Vj(H[H[a+4>>2]+4>>2],ga[H[H[b>>2]+24>>2]](b,e)|0);if((d|0)==-1){break a}c=H[a+4>>2];f=0;b:{if((d|0)<0){break b}g=H[c+4>>2];if(H[g+12>>2]-H[g+8>>2]>>2<=(d|0)){break b}c=H[H[c+8>>2]+(H[H[c+20>>2]+(d<<2)>>2]<<2)>>2];f=ga[H[H[c>>2]+36>>2]](c,d)|0}if(!(ga[H[H[b>>2]+28>>2]](b,f)|0)){break a}e=e+1|0;if((ga[H[H[b>>2]+20>>2]](b)|0)>(e|0)){continue}break}return 1}return 0}function Vb(a,b){ze(a,b);ze(a+32|0,b);ze(a- -64|0,b);ze(a+96|0,b);ze(a+128|0,b);ze(a+160|0,b);ze(a+192|0,b);ze(a+224|0,b);ze(a+256|0,b);ze(a+288|0,b);ze(a+320|0,b);ze(a+352|0,b);ze(a+384|0,b);ze(a+416|0,b);ze(a+448|0,b);ze(a+480|0,b);ze(a+512|0,b);ze(a+544|0,b);ze(a+576|0,b);ze(a+608|0,b);ze(a+640|0,b);ze(a+672|0,b);ze(a+704|0,b);ze(a+736|0,b);ze(a+768|0,b);ze(a+800|0,b);ze(a+832|0,b);ze(a+864|0,b);ze(a+896|0,b);ze(a+928|0,b);ze(a+960|0,b);ze(a+992|0,b);ze(a+1024|0,b)}function Dk(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!H[H[4776]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){F[a+1|0]=b&63|128;F[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){F[a+2|0]=b&63|128;F[a|0]=b>>>12|224;F[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){F[a+3|0]=b&63|128;F[a|0]=b>>>18|240;F[a+2|0]=b>>>6&63|128;F[a+1|0]=b>>>12&63|128;a=4;break a}}H[4739]=25;a=-1}else{a=1}break a}F[a|0]=b;a=1}return a}function _h(a,b){a=a|0;b=b|0;var c=0,d=0;d=da-16|0;da=d;c=H[a+8>>2];a:{if((c|0)==H[a+12>>2]){c=$k(76);pb(c,b);H[c+36>>2]=0;H[c+40>>2]=0;H[c>>2]=2312;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+64>>2]=0;H[c+68>>2]=0;H[c+72>>2]=0;H[d+8>>2]=c;b=H[a+12>>2];b:{if(b>>>0>2]){H[d+8>>2]=0;H[b>>2]=c;H[a+12>>2]=b+4;break b}Ig(a+8|0,d+8|0)}a=H[d+8>>2];H[d+8>>2]=0;if(!a){break a}ga[H[H[a>>2]+4>>2]](a);break a}qb(H[c>>2],b)}da=d+16|0;return 1}function Ok(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0;h=Fl(b,c,h,i);i=fa;j=h;h=Fl(d,e,f,g);e=j+h|0;d=fa+i|0;i=e;h=i>>>0>>0?d+1|0:d;j=i;k=g;e=0;l=c;d=0;i=Fl(g,e,c,d);g=j+i|0;c=fa+h|0;j=g;g=g>>>0>>0?c+1|0:c;h=f;i=b;f=Fl(h,0,i,0);b=fa;c=0;d=Fl(h,c,l,d);b=b+d|0;c=fa+c|0;c=b>>>0>>0?c+1|0:c;h=c;c=c+j|0;d=g;d=c>>>0>>0?d+1|0:d;h=c;c=d;d=Fl(i,m,k,e)+b|0;e=fa;e=b>>>0>d>>>0?e+1|0:e;g=a;i=e;h=i+h|0;H[g+8>>2]=h;H[g+12>>2]=h>>>0>>0?c+1|0:c;H[g>>2]=f;H[g+4>>2]=d}function Hj(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=14980;b=H[a+68>>2];if(b){H[a+72>>2]=b;Wk(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;Wk(b)}b=H[a+44>>2];if(b){H[a+48>>2]=b;Wk(b)}b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;Wk(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){Fb(b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;Wk(b)}b=H[a+4>>2];H[a+4>>2]=0;if(b){Aj(b)}return a|0}function vc(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=2524;b=H[a+72>>2];H[a+72>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;Wk(b)}b=H[a+48>>2];if(b){Wk(b)}d=H[a+36>>2];if(d){c=H[a+40>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+36>>2]}H[a+40>>2]=d;Wk(b)}H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;Wk(b)}return a|0}function Ha(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+8>>2];c=H[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=gk(c,0,b)+b|0}H[a+4>>2]=c;return}a:{f=H[a>>2];g=c-f|0;h=g>>2;d=h+b|0;if(d>>>0<1073741824){c=0;e=e-f|0;i=e>>1;d=e>>>0<2147483644?d>>>0>i>>>0?d:i:1073741823;if(d){if(d>>>0>=1073741824){break a}c=$k(d<<2)}b=b<<2;b=gk((h<<2)+c|0,0,b)+b|0;if((g|0)>0){ek(c,f,g)}H[a+8>>2]=(d<<2)+c;H[a+4>>2]=b;H[a>>2]=c;if(f){Wk(f)}return}Fa();X()}Ua(1604);X()}function df(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+8>>2];c=H[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=gk(c,0,b)+b|0}H[a+4>>2]=c;return}a:{f=H[a>>2];g=c-f|0;h=g>>3;d=h+b|0;if(d>>>0<536870912){c=0;e=e-f|0;i=e>>2;d=e>>>0<2147483640?d>>>0>i>>>0?d:i:536870911;if(d){if(d>>>0>=536870912){break a}c=$k(d<<3)}b=b<<3;b=gk((h<<3)+c|0,0,b)+b|0;if((g|0)>0){ek(c,f,g)}H[a+8>>2]=(d<<3)+c;H[a+4>>2]=b;H[a>>2]=c;if(f){Wk(f)}return}Fa();X()}Ua(1604);X()} +function Hk(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=-1;f=d&2147483647;i=f;g=(f|0)==2147418112;a:{if(g&!c?a|b:g&(c|0)!=0|f>>>0>2147418112){break a}f=e&2147483647;g=(f|0)==2147418112;if(g?0:g&0|f>>>0>2147418112){break a}if(!(a|c|(f|i|b))){return 0}f=d&e;if((f|0)>0|(f|0)>=0){if(!c&(d|0)==(e|0)?0:(d|0)<(e|0)){break a}return(a|c|(d^e|b))!=0}if(!c&(d|0)==(e|0)?a|b:(c|0)!=0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}h=(a|c|(d^e|b))!=0}return h}function ai(a,b){var c=0,d=0,e=0,f=0,g=0;a:{c=H[a+4>>2];e=H[a>>2];f=c-e|0;b:{if(f>>>0>>0){g=b-f|0;d=H[a+8>>2];if(g>>>0<=d-c>>>0){if(g){c=gk(c,0,g)+g|0}H[a+4>>2]=c;return}if((b|0)<0){break a}c=d-e|0;d=c<<1;d=c>>>0<1073741823?b>>>0>d>>>0?b:d:2147483647;c=$k(d);gk(c+f|0,0,g);if((f|0)>0){ek(c,e,f)}H[a+8>>2]=c+d;H[a+4>>2]=b+c;H[a>>2]=c;if(!e){break b}Wk(e);return}if(b>>>0>=f>>>0){break b}H[a+4>>2]=b+e}return}Fa();X()}function Oa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=da-16|0;da=d;e=H[a+4>>2];a:{if((e|0)==-1){break a}c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break a}ya(b,H[b+4>>2],H[a+8>>2],H[a+12>>2]);c=H[b+20>>2];if(!!H[b+16>>2]&(c|0)>=0|(c|0)>0){break a}c=a+20|0;ya(b,H[b+4>>2],c,c+4|0);c=H[b+20>>2];f=H[b+16>>2];F[d+15|0]=H[a+4>>2];if(!!f&(c|0)>=0|(c|0)>0){break a}ya(b,H[b+4>>2],d+15|0,d+16|0)}da=d+16|0;return(e|0)!=-1|0}function Sh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;a:{b=H[a+8>>2];b:{if((b|0)<0){break b}c=H[a+4>>2];e=H[c>>2];d=H[c+4>>2]-e>>2;c:{if(d>>>0>>0){Ha(c,b-d|0);f=H[a+8>>2];break c}f=b;if(b>>>0>=d>>>0){break c}H[c+4>>2]=e+(b<<2);f=b}d=f;if((d|0)<=0){break b}a=H[a+4>>2];c=H[a>>2];e=H[a+4>>2]-c>>2;a=0;while(1){if((a|0)==(e|0)){break a}H[c+(a<<2)>>2]=a;a=a+1|0;if((d|0)!=(a|0)){continue}break}}return(b^-1)>>>31|0}Sc();X()}function Ub(a){xe(a);xe(a+32|0);xe(a- -64|0);xe(a+96|0);xe(a+128|0);xe(a+160|0);xe(a+192|0);xe(a+224|0);xe(a+256|0);xe(a+288|0);xe(a+320|0);xe(a+352|0);xe(a+384|0);xe(a+416|0);xe(a+448|0);xe(a+480|0);xe(a+512|0);xe(a+544|0);xe(a+576|0);xe(a+608|0);xe(a+640|0);xe(a+672|0);xe(a+704|0);xe(a+736|0);xe(a+768|0);xe(a+800|0);xe(a+832|0);xe(a+864|0);xe(a+896|0);xe(a+928|0);xe(a+960|0);xe(a+992|0);xe(a+1024|0)}function He(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=da-96|0;da=e;f=We(e+40|0,c);Ce(e,b,c);Ye(f,e);Hc(e+24|0,H[e+28>>2]);De(e+12|0,H[e+16>>2]);Hc(e,H[e+4>>2]);Xe(a,f,d);if(!H[a>>2]){if(F[a+15|0]<0){Wk(H[a+4>>2])}H[b+40>>2]=H[f+40>>2];H[b+44>>2]=H[f+44>>2];H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0}H[f>>2]=10284;Hc(f+28|0,H[f+32>>2]);De(f+16|0,H[f+20>>2]);Hc(f+4|0,H[f+8>>2]);da=e+96|0}function tg(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=10432;b=H[a+64>>2];H[a+64>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;Wk(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;Wk(b)}return a|0}function wk(a,b,c){var d=0,e=0,f=0;if(!(I[a|0]&32)){a:{d=b;b=a;a=H[b+16>>2];b:{if(!a){if(tk(b)){break b}a=H[b+16>>2]}f=H[b+20>>2];if(a-f>>>0>>0){ga[H[b+36>>2]](b,d,c)|0;break a}c:{if(H[b+80>>2]<0){break c}a=c;while(1){e=a;if(!a){break c}a=e-1|0;if(I[d+a|0]!=10){continue}break}if(ga[H[b+36>>2]](b,d,e)>>>0>>0){break b}d=d+e|0;c=c-e|0;f=H[b+20>>2]}ek(f,d,c);H[b+20>>2]=H[b+20>>2]+c}}}}function ug(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=10432;b=H[a+64>>2];H[a+64>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;Wk(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;Wk(b)}Wk(a)}function oc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=da-16|0;da=d;f=sb(a,b);a:{if(!f){break a}c=H[a+36>>2];if((c|0)==H[a+40>>2]){break a}g=d+16|0;while(1){c=H[(e<<2)+c>>2];h=d,i=ga[H[H[c>>2]+32>>2]](c)|0,F[h+15|0]=i;c=H[b+20>>2];if(!H[b+16>>2]&(c|0)<=0|(c|0)<0){ya(b,H[b+4>>2],d+15|0,g)}e=e+1|0;c=H[a+36>>2];if(e>>>0>2]-c>>2>>>0){continue}break}}da=d+16|0;return f|0}function fl(a,b,c){var d=0,e=0,f=0;f=da-16|0;da=f;d=I[a+11|0]>>>7|0?(H[a+8>>2]&2147483647)-1|0:10;if(I[a+11|0]>>>7|0){e=H[a+4>>2]}else{e=I[a+11|0]}a:{if(d-e>>>0>=c>>>0){if(!c){break a}if(I[a+11|0]>>>7|0){d=H[a>>2]}else{d=a}Xk(d+e|0,b,c);b=c+e|0;b:{if(I[a+11|0]>>>7|0){H[a+4>>2]=b;break b}F[a+11|0]=b}F[f+15|0]=0;F[b+d|0]=I[f+15|0];break a}dl(a,d,(c+e|0)-d|0,e,e,0,c,b)}da=f+16|0}function kf(a,b,c){var d=0,e=0,f=0,g=0;d=da-16|0;da=d;F[d+15|0]=a&127;a:{b:{if(!b&a>>>0>=128|b){F[d+15|0]=a|128;f=H[c+20>>2];e=0;if(!!H[c+16>>2]&(f|0)>=0|(f|0)>0){break b}ya(c,H[c+4>>2],d+15|0,d+16|0);a=kf((b&127)<<25|a>>>7,b>>>7|0,c);break a}b=H[c+16>>2];a=H[c+20>>2];if(!b&(a|0)<=0|(a|0)<0){ya(c,H[c+4>>2],d+15|0,d+16|0)}e=!b&(a|0)<=0|(a|0)<0}g=e;a=0}da=d+16|0;return a|g}function Nh(a,b){a=a|0;b=b|0;var c=0,d=0;c=da-16|0;da=c;a:{if(!b){d=$k(76);b=$k(12);H[b+8>>2]=H[H[a+4>>2]+80>>2];H[b>>2]=12420;H[b+4>>2]=0;d=mc(d,b,0);H[c+8>>2]=d;b=H[a+12>>2];b:{if(b>>>0>2]){H[c+8>>2]=0;H[b>>2]=d;H[a+12>>2]=b+4;break b}Ig(a+8|0,c+8|0)}a=H[c+8>>2];H[c+8>>2]=0;if(!a){break a}ga[H[H[a>>2]+4>>2]](a);break a}qb(H[H[a+8>>2]>>2],b)}da=c+16|0;return 1}function Ib(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+36>>2];if((c|0)!=H[a+40>>2]){while(1){c=N(d,24)+c|0;ga[H[H[c>>2]+28>>2]](c,b)|0;d=d+1|0;c=H[a+36>>2];if(d>>>0<(H[a+40>>2]-c|0)/24>>>0){continue}break}}c=H[a+48>>2];if((c|0)!=H[a+52>>2]){d=0;while(1){c=H[(d<<2)+c>>2];tb((c|0)>=0?c<<1:(c^-1)<<1|1,b);d=d+1|0;c=H[a+48>>2];if(d>>>0>2]-c>>2>>>0){continue}break}}return 1}function Ag(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=H[a+172>>2];c=H[a+176>>2]-d|0;e=(c|0)/136|0;a:{if(!c){break a}c=0;b:{c:{d:{if(H[d>>2]!=(b|0)){f=e>>>0>1?e:1;while(1){c=c+1|0;if((f|0)==(c|0)){break d}if(H[N(c,136)+d>>2]!=(b|0)){continue}break}b=c>>>0>>0}else{b=1}if(b){break c}break a}if(c>>>0>>0){break b}break a}d=(N(c,136)+d|0)+104|0}return d|0}return a+40|0}function zj(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Ya($k(96));_a(g,b,d<<24>>24,f,c);b=Xj(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];ek(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,(N(d,h)<<1)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function xj(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Ya($k(96));_a(g,b,d<<24>>24,f,c);b=Xj(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];ek(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,(N(d,h)<<2)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function Va(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=da+-64|0;da=d;e=ga[H[H[a>>2]+44>>2]](a,b)|0;a=ga[H[H[a>>2]+40>>2]](a,b)|0;f=Wa(d);g=H[b+56>>2];h=e<<24>>24;i=a;a=a-1|0;if(a>>>0<=10){a=H[(a<<2)+14848>>2]}else{a=-1}a=N(a,e);Xa(f,g,0,h,i,a,a>>31);a=Za($k(96),f);$a(a,c);F[a+84|0]=1;H[a+72>>2]=H[a+68>>2];H[a+60>>2]=H[b+60>>2];da=d- -64|0;return a|0}function di(a,b,c,d){var e=0;a:{if(!b&(c|0)<=0|(c|0)<0){break a}e=H[a+20>>2];if(!!H[a+16>>2]&(e|0)>=0|(e|0)>0){break a}F[a+24|0]=d;b=b+7|0;c=b>>>0<7?c+1|0:c;e=b;b=c>>>3|0;c=(c&7)<<29|e>>>3;H[a+16>>2]=c;H[a+20>>2]=b;e=c;b=H[a+4>>2]-H[a>>2]|0;c=b+8|0;c=d?c:b;b=e+c|0;ai(a,b);d=H[a>>2];b=$k(8);H[b+4>>2]=0;H[b>>2]=c+d;c=H[a+12>>2];H[a+12>>2]=b;if(!c){break a}Wk(c)}}function yj(a,b,c,d,e,f){var g=0,h=0,i=0;i=-1;a:{if(!a){break a}g=Ya($k(96));_a(g,b,d<<24>>24,f,c);b=Xj(a,g);if(c){g=H[H[a+8>>2]+(b<<2)>>2];while(1){f=H[g+40>>2];ek(H[H[g>>2]>>2]+N(f,I[g+84|0]?h:H[H[g+68>>2]+(h<<2)>>2])|0,N(d,h)+e|0,f);h=h+1|0;if((h|0)!=(c|0)){continue}break}}d=H[a+80>>2];b:{if(!d){H[a+80>>2]=c;break b}if((c|0)!=(d|0)){break a}}i=b}return i}function sl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(kl(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(!kl(a,H[b>>2],e)){break a}if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+20>>2]=c;H[b+32>>2]=d;H[b+40>>2]=H[b+40>>2]+1;if(!(H[b+36>>2]!=1|H[b+24>>2]!=2)){F[b+54|0]=1}H[b+44>>2]=4}}function tb(a,b){var c=0,d=0,e=0,f=0;c=da-16|0;da=c;F[c+15|0]=a&127;a:{b:{if(a>>>0>=128){F[c+15|0]=a|128;d=H[b+20>>2];e=0;if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break b}ya(b,H[b+4>>2],c+15|0,c+16|0);a=tb(a>>>7|0,b);break a}d=H[b+16>>2];a=H[b+20>>2];if(!d&(a|0)<=0|(a|0)<0){ya(b,H[b+4>>2],c+15|0,c+16|0)}e=!d&(a|0)<=0|(a|0)<0}f=e;a=0}da=c+16|0;return a|f}function _a(a,b,c,d,e){var f=0,g=0,h=0;f=$k(32);H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;g=H[a+64>>2];H[a+64>>2]=f;if(g){f=H[g>>2];if(f){H[g+4>>2]=f;Wk(f)}Wk(g);f=H[a+64>>2]}h=b;g=d-1|0;if(g>>>0<=10){b=H[(g<<2)+14848>>2]}else{b=-1}b=N(b,c);Xa(a,h,f,c,d,b,b>>31);$a(a,e);F[a+84|0]=1;H[a+72>>2]=H[a+68>>2]}function _k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=H[a+84>>2];f=H[e+4>>2];g=H[a+28>>2];d=H[a+20>>2]-g|0;d=d>>>0>f>>>0?f:d;if(d){ek(H[e>>2],g,d);H[e>>2]=d+H[e>>2];f=H[e+4>>2]-d|0;H[e+4>>2]=f}d=H[e>>2];f=c>>>0>f>>>0?f:c;if(f){ek(d,b,f);d=f+H[e>>2]|0;H[e>>2]=d;H[e+4>>2]=H[e+4>>2]-f}F[d|0]=0;b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;return c|0}function ql(a,b,c,d){F[a+53|0]=1;a:{if(H[a+4>>2]!=(c|0)){break a}F[a+52|0]=1;c=H[a+16>>2];b:{if(!c){H[a+36>>2]=1;H[a+24>>2]=d;H[a+16>>2]=b;if((d|0)!=1){break a}if(H[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=H[a+24>>2];if((c|0)==2){H[a+24>>2]=d;c=d}if(H[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}H[a+36>>2]=H[a+36>>2]+1}F[a+54|0]=1}}function Ej(a,b){var c=0,d=0,e=0,f=0;d=1;a:{if((b|0)==-1){break a}b=N(b,3);if((b|0)==-1){break a}d=-1;e=H[a>>2];a=e+(b<<2)|0;c=b+1|0;c=(c>>>0)%3|0?c:b-2|0;if((c|0)!=-1){d=H[(c<<2)+e>>2]}a=H[a>>2];f=(a|0)==(d|0);b:{c:{if((b>>>0)%3|0){b=b-1|0;break c}b=b+2|0;c=-1;if((b|0)==-1){break b}}c=H[(b<<2)+e>>2]}d=f|(c|0)==(a|0)|(d|0)==(c|0)}return d}function ll(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da+-64|0;da=e;d=1;a:{if(kl(a,b,0)){break a}d=0;if(!b){break a}b=ml(b,18492,18540);d=0;if(!b){break a}d=e+8|0;gk(d|4,0,52);H[e+56>>2]=1;H[e+20>>2]=-1;H[e+16>>2]=a;H[e+8>>2]=b;ga[H[H[b>>2]+28>>2]](b,d,H[c>>2],1);a=H[e+32>>2];if((a|0)==1){H[c>>2]=H[e+24>>2]}d=(a|0)==1}da=e- -64|0;return d|0}function nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;H[a+32>>2]=c;H[a+28>>2]=b;a:{if(!(ga[H[H[a>>2]+52>>2]](a)|0)){break a}e=H[a+4>>2];if((e|0)==H[a+8>>2]){return 1}c=0;while(1){d=c<<2;f=H[d+H[a+36>>2]>>2];d=ga[H[H[f>>2]+8>>2]](f,b,H[d+e>>2])|0;if(!d){break a}c=c+1|0;e=H[a+4>>2];if(c>>>0>2]-e>>2>>>0){continue}break}}return d|0}function Jg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=da-16|0;da=d;H[a+4>>2]=b;b=H[b+64>>2];e=H[b>>2];b=H[b+4>>2];F[d+15|0]=0;Eg(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=H[a+4>>2];e=H[b+56>>2];b=H[b+52>>2];F[d+14|0]=0;Eg(a+36|0,e-b>>2,d+14|0);b=H[c+12>>2];H[a+16>>2]=H[c+8>>2];H[a+20>>2]=b;b=H[c+4>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=b;da=d+16|0}function Lh(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;Wk(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;Wk(b)}return a|0}function Lj(a){H[a>>2]=0;H[a+4>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;F[a+24|0]=1;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+68>>2]=a}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=da-16|0;da=d;H[a+4>>2]=b;e=H[b>>2];b=H[b+4>>2];F[d+15|0]=0;Eg(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=H[a+4>>2];e=H[b+28>>2];b=H[b+24>>2];F[d+14|0]=0;Eg(a+36|0,e-b>>2,d+14|0);b=H[c+12>>2];H[a+16>>2]=H[c+8>>2];H[a+20>>2]=b;b=H[c+4>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=b;da=d+16|0}function dk(a){var b=0,c=0,d=0,e=0;while(1){b=a;a=b+1|0;c=F[b|0];if((c|0)==32|c-9>>>0<5){continue}break}a:{b:{c:{c=F[b|0];switch(c-43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=F[a|0];b=a}if(c-48>>>0<10){while(1){d=(N(d,10)-F[b|0]|0)+48|0;a=F[b+1|0];b=b+1|0;if(a-48>>>0<10){continue}break}}return e?d:0-d|0}function Qh(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=12484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}b=H[a+20>>2];if(b){H[a+24>>2]=b;Wk(b)}d=H[a+8>>2];if(d){c=H[a+12>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}if((d|0)!=(c|0)){continue}break}b=H[a+8>>2]}H[a+12>>2]=d;Wk(b)}Wk(a)}function ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+8|0,c+12|0)}ze(a+112|0,b);da=c+16|0;return 1}function _d(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+8|0,c+12|0)}ze(a+96|0,b);da=c+16|0;return 1}function nk(a){var b=0;b=1;a:{if((a|0)>=1024){b=8.98846567431158e307;if(a>>>0<2047){a=a-1023|0;break a}b=Z;a=(a>>>0<3069?a:3069)-2046|0;break a}if((a|0)>-1023){break a}b=2.004168360008973e-292;if(a>>>0>4294965304){a=a+969|0;break a}b=0;a=(a>>>0>4294964336?a:-2960)+1938|0}x(0,0);x(1,a+1023<<20);return b*+z()}function Qc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+16>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+8|0,c+12|0)}da=c+16|0;return 1}function Jd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=da-16|0;da=c;H[c+12>>2]=H[a+12>>2];d=H[b+20>>2];a:{if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+12|0,c+16|0);d=H[b+20>>2];e=H[b+16>>2];H[c+8>>2]=H[a+24>>2];if(!!e&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+8|0,c+12|0)}da=c+16|0;return 1}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;ak(a,b,c);d=H[a+96>>2];a=H[a+100>>2]-d|0;if(a){b=H[b>>2];a=(a|0)/12|0;e=a>>>0>1?a:1;c=0;while(1){a=N(c,12)+d|0;H[a>>2]=H[b+(H[a>>2]<<2)>>2];H[a+4>>2]=H[b+(H[a+4>>2]<<2)>>2];H[a+8>>2]=H[b+(H[a+8>>2]<<2)>>2];c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function ik(a,b,c){var d=0,e=0;a:{b:{if(c>>>0>=4){if((a|b)&3){break b}while(1){if(H[a>>2]!=H[b>>2]){break b}b=b+4|0;a=a+4|0;c=c-4|0;if(c>>>0>3){continue}break}}if(!c){break a}}while(1){d=I[a|0];e=I[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c-1|0;if(c){continue}break a}break}return d-e|0}return 0}function Aj(a){var b=0,c=0,d=0;if(a){d=H[a+24>>2];if(d){c=H[a+28>>2];if((c|0)==(d|0)){b=d}else{while(1){c=c-4|0;b=H[c>>2];H[c>>2]=0;if(b){Di(b+12|0,H[b+16>>2]);Ei(b,H[b+4>>2]);Wk(b)}if((d|0)!=(c|0)){continue}break}b=H[a+24>>2]}H[a+28>>2]=d;Wk(b)}Di(a+12|0,H[a+16>>2]);Ei(a,H[a+4>>2]);Wk(a)}}function Kk(a,b){var c=0,d=0,e=0,f=0;d=da-16|0;da=d;a:{if(!b){b=0;break a}c=b>>31;e=c+b^c;c=Q(e);Fk(d,e,0,0,0,c+81|0);e=0+H[d+8>>2]|0;c=(H[d+12>>2]^65536)+(16414-c<<16)|0;c=e>>>0>>0?c+1|0:c;f=b&-2147483648|c;c=H[d+4>>2];b=H[d>>2]}H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=e;H[a+12>>2]=f;da=d+16|0}function oh(a){a=a|0;var b=0;H[a+8>>2]=11452;H[a>>2]=11240;b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+80>>2];if(b){H[a+84>>2]=b;Wk(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;Wk(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;Wk(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){Wk(b)}b=H[a+32>>2];if(b){Wk(b)}return a|0}function rd(a){a=a|0;var b=0;H[a>>2]=5104;b=H[a+152>>2];if(b){H[a+156>>2]=b;Wk(b)}b=H[a+112>>2];if(b){H[a+116>>2]=b;Wk(b)}b=H[a+96>>2];if(b){Wk(b)}b=H[a+84>>2];if(b){Wk(b)}b=H[a+72>>2];if(b){Wk(b)}b=H[a+60>>2];if(b){Wk(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}return a|0}function ph(a){a=a|0;var b=0;H[a+8>>2]=11452;H[a>>2]=11240;b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+80>>2];if(b){H[a+84>>2]=b;Wk(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;Wk(b)}b=H[a+56>>2];if(b){H[a+60>>2]=b;Wk(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){Wk(b)}b=H[a+32>>2];if(b){Wk(b)}Wk(a)}function Tc(a){a=a|0;var b=0;H[a>>2]=3540;b=H[a+152>>2];if(b){H[a+156>>2]=b;Wk(b)}b=H[a+112>>2];if(b){H[a+116>>2]=b;Wk(b)}b=H[a+96>>2];if(b){Wk(b)}b=H[a+84>>2];if(b){Wk(b)}b=H[a+72>>2];if(b){Wk(b)}b=H[a+60>>2];if(b){Wk(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}return a|0}function jk(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!I[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=H[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=I[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function za(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=H[c+8>>2];e=H[c+16>>2];g=H[c+12>>2];f=g;d=H[c+20>>2];if(h>>>0>e>>>0&(f|0)>=(d|0)|(d|0)<(f|0)){b=I[e+H[c>>2]|0];i=e+1|0;f=i?d:d+1|0;H[c+16>>2]=i;H[c+20>>2]=f;H[a+4>>2]=b}return e>>>0>>0&(d|0)<=(g|0)|(d|0)<(g|0)}function kl(a,b,c){var d=0;if(!c){return H[a+4>>2]==H[b+4>>2]}if((a|0)==(b|0)){return 1}d=H[a+4>>2];a=I[d|0];c=H[b+4>>2];b=I[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=I[c+1|0];a=I[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function cf(a){var b=0,c=0;c=H[a+8>>2];if((c|0)>=2){b=+(c|0);b=U(b*hk(b)-M[a>>3]);if(P(b)<0x8000000000000000){fa=P(b)>=1?~~(b>0?R(T(b*2.3283064365386963e-10),4294967295):U((b-+(~~b>>>0>>>0))*2.3283064365386963e-10))>>>0:0;return~~b>>>0}a=-2147483648}else{a=0}fa=a;return 0}function nh(a){a=a|0;var b=0;H[a>>2]=11452;b=H[a+88>>2];if(b){H[a+92>>2]=b;Wk(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;Wk(b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;Wk(b)}b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}return a|0}function gj(a){a=a|0;var b=0,c=0,d=0;b=$k(8);H[b+4>>2]=a;H[b>>2]=0;a:{b:{c:{if(!a){break c}c=ml(a,15032,14952);if(!c){break c}d=$k(56);We(d,c);a=H[b>>2];H[b>>2]=d;if(a){break b}break a}c=$k(56);Ve(c,a);a=H[b>>2];H[b>>2]=c;if(!a){break a}}ga[H[H[a>>2]+4>>2]](a)}return b|0}function Lk(a,b){var c=0,d=0,e=0,f=0;c=da-16|0;da=c;a:{if(!b){b=0;break a}d=b;b=Q(b);Fk(c,d,0,0,0,b+81|0);e=16414-b<<16;b=0;d=b+H[c+8>>2]|0;e=e+(H[c+12>>2]^65536)|0;e=b>>>0>d>>>0?e+1|0:e;f=d;d=H[c>>2];b=H[c+4>>2]}H[a>>2]=d;H[a+4>>2]=b;H[a+8>>2]=f;H[a+12>>2]=e;da=c+16|0}function uh(a){a=a|0;var b=0;H[a>>2]=11452;b=H[a+88>>2];if(b){H[a+92>>2]=b;Wk(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;Wk(b)}b=H[a+60>>2];if(b){H[a- -64>>2]=b;Wk(b)}b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}Wk(a)}function zk(a,b,c){var d=0,e=0,f=0;a:{if(!b){d=a;break a}while(1){d=Hl(a,b,10,0);f=fa;e=Fl(d,f,10,0);c=c-1|0;F[c|0]=a-e|48;e=b>>>0>9;a=d;b=f;if(e){continue}break}}if(d){while(1){c=c-1|0;a=(d>>>0)/10|0;F[c|0]=d-N(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function oe(a){a=a|0;var b=0;H[a+40>>2]=1140;H[a>>2]=10016;b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Fb(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}return a|0}function Be(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=da-96|0;da=e;f=Ve(e+40|0,c);Ce(e,b,c);Ye(f,e);Hc(e+24|0,H[e+28>>2]);De(e+12|0,H[e+16>>2]);Hc(e,H[e+4>>2]);Xe(a,f,d);H[f>>2]=10284;Hc(f+28|0,H[f+32>>2]);De(f+16|0,H[f+20>>2]);Hc(f+4|0,H[f+8>>2]);da=e+96|0}function Xg(a){var b=0;b=H[a+84>>2];if(b){H[a+88>>2]=b;Wk(b)}b=H[a+72>>2];if(b){H[a+76>>2]=b;Wk(b)}b=H[a+52>>2];if(b){H[a+56>>2]=b;Wk(b)}b=H[a+40>>2];if(b){H[a+44>>2]=b;Wk(b)}b=H[a+28>>2];if(b){H[a+32>>2]=b;Wk(b)}b=H[a+12>>2];if(b){Wk(b)}a=H[a>>2];if(a){Wk(a)}}function Sk(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=da-16|0;da=f;d=da-16|0;da=d;b=b-a>>2;while(1){if(b){H[d+12>>2]=a;e=b>>>1|0;H[d+12>>2]=H[d+12>>2]+(e<<2);h=(e^-1)+b|0;b=e;e=H[d+12>>2];g=K[e>>2]>2];b=g?h:b;a=g?e+4|0:a;continue}break}da=d+16|0;da=f+16|0;return a}function pe(a){a=a|0;var b=0;H[a+40>>2]=1140;H[a>>2]=10016;b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Fb(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}Wk(a)}function Ng(a,b){if(b){a=H[b+76>>2];if(a){H[b+80>>2]=a;Wk(a)}a=H[b- -64>>2];if(a){H[b+68>>2]=a;Wk(a)}a=H[b+48>>2];if(a){H[b+52>>2]=a;Wk(a)}a=H[b+24>>2];if(a){H[b+28>>2]=a;Wk(a)}a=H[b+12>>2];if(a){H[b+16>>2]=a;Wk(a)}a=H[b>>2];if(a){H[b+4>>2]=a;Wk(a)}Wk(b)}}function el(a,b,c){var d=0,e=0;a:{b:{if(c>>>0<=10){d=a;F[d+11|0]=c;break b}if(c>>>0>4294967279){break a}if(c>>>0>=11){e=c+16&-16;d=e-1|0;d=(d|0)==11?e:d}else{d=10}e=d+1|0;d=$k(e);H[a>>2]=d;H[a+8>>2]=e|-2147483648;H[a+4>>2]=c}Xk(d,b,c+1|0);return}se();X()}function pc(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+72>>2];a:{if(!c){break a}H[c+4>>2]=a+60;if(!(ga[H[H[c>>2]+12>>2]](c)|0)){break a}if(!(ga[H[H[a>>2]+40>>2]](a)|0)){break a}if(!(ga[H[H[a>>2]+44>>2]](a,b)|0)){break a}d=ga[H[H[a>>2]+48>>2]](a,b)|0}return d|0}function ne(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da-16|0;da=e;d=a+40|0;c=Va(d,H[a+8>>2],H[b+4>>2]-H[b>>2]>>2);d=Ja(d,H[a+8>>2],b,c);a:{if(d){b=H[a+32>>2];H[a+32>>2]=c;if(!b){break a}Fb(b);break a}H[e+8>>2]=0;if(!c){break a}Fb(c)}da=e+16|0;return d|0}function Fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=da-16|0;da=e;d=a+40|0;c=Va(d,H[a+8>>2],H[b+4>>2]-H[b>>2]>>2);d=ua(d,H[a+8>>2],b,c);a:{if(d){b=H[a+32>>2];H[a+32>>2]=c;if(!b){break a}Fb(b);break a}H[e+8>>2]=0;if(!c){break a}Fb(c)}da=e+16|0;return d|0}function Xa(a,b,c,d,e,f,g){var h=0;H[a>>2]=c;if(c){h=H[c+20>>2];H[a+8>>2]=H[c+16>>2];H[a+12>>2]=h;h=H[c+28>>2];H[a+16>>2]=H[c+24>>2];H[a+20>>2]=h}H[a+56>>2]=b;H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=f;H[a+44>>2]=g;F[a+32|0]=0;H[a+28>>2]=e;F[a+24|0]=d}function uk(a,b){var c=0,d=0,e=0;A(+a);d=v(1)|0;e=v(0)|0;c=d>>>20&2047;if((c|0)!=2047){if(!c){if(a==0){c=0}else{a=uk(a*0x10000000000000000,b);c=H[b>>2]+-64|0}H[b>>2]=c;return a}H[b>>2]=c-1022;x(0,e|0);x(1,d&-2146435073|1071644672);a=+z()}return a}function rc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=H[a+36>>2];if((c|0)==H[a+40>>2]){return 1}f=a+60|0;while(1){c=H[(d<<2)+c>>2];e=ga[H[H[c>>2]+20>>2]](c,f,b)|0;if(e){d=d+1|0;c=H[a+36>>2];if(d>>>0>2]-c>>2>>>0){continue}}break}return e|0}function zg(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+172>>2];a=H[a+176>>2]-c|0;if(a){a=(a|0)/136|0;d=a>>>0>1?a:1;a=0;while(1){if(H[N(a,136)+c>>2]==(b|0)){a=N(a,136)+c|0;return(I[a+100|0]?a+4|0:0)|0}a=a+1|0;if((d|0)!=(a|0)){continue}break}}return 0}function Cc(a){H[a+32>>2]=0;H[a+12>>2]=-1;H[a+4>>2]=0;H[a+8>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=2420;F[a+21|0]=0;F[a+22|0]=0;F[a+23|0]=0;F[a+24|0]=0;F[a+25|0]=0;F[a+26|0]=0;F[a+27|0]=0;F[a+28|0]=0;H[a+36>>2]=0;H[a>>2]=2652;return a}function qc(a){a=a|0;var b=0,c=0,d=0,e=0;b=H[a+36>>2];if((b|0)==H[a+40>>2]){return 1}e=a+60|0;while(1){b=H[(c<<2)+b>>2];d=ga[H[H[b>>2]+16>>2]](b,e)|0;if(d){c=c+1|0;b=H[a+36>>2];if(c>>>0>2]-b>>2>>>0){continue}}break}return d|0}function xk(a){var b=0,c=0,d=0;if(F[H[a>>2]]-48>>>0>=10){return 0}while(1){d=H[a>>2];c=-1;if(b>>>0<=214748364){c=F[d|0]-48|0;b=N(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}H[a>>2]=d+1;b=c;if(F[d+1|0]-48>>>0<10){continue}break}return b}function be(a){a=a|0;var b=0;H[a>>2]=8668;b=H[a+136>>2];if(b){H[a+140>>2]=b;Wk(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+80>>2];if(b){Wk(b)}b=H[a+68>>2];if(b){Wk(b)}b=H[a+56>>2];if(b){Wk(b)}b=H[a+44>>2];if(b){Wk(b)}return a|0}function Zh(a,b){a=a|0;b=b|0;var c=0,d=0;c=da-16|0;da=c;H[c+12>>2]=H[H[b+4>>2]+80>>2];b=H[b+44>>2];d=H[b+20>>2];if(!H[b+16>>2]&(d|0)<=0|(d|0)<0){ya(b,H[b+4>>2],c+12|0,c+16|0)}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;da=c+16|0}function Md(a){a=a|0;var b=0;H[a>>2]=7020;b=H[a+136>>2];if(b){H[a+140>>2]=b;Wk(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+80>>2];if(b){Wk(b)}b=H[a+68>>2];if(b){Wk(b)}b=H[a+56>>2];if(b){Wk(b)}b=H[a+44>>2];if(b){Wk(b)}return a|0}function Fb(a){a=a|0;var b=0,c=0;if(a){b=H[a+88>>2];H[a+88>>2]=0;if(b){c=H[b+8>>2];if(c){H[b+12>>2]=c;Wk(c)}Wk(b)}b=H[a+68>>2];if(b){H[a+72>>2]=b;Wk(b)}b=H[a+64>>2];H[a+64>>2]=0;if(b){c=H[b>>2];if(c){H[b+4>>2]=c;Wk(c)}Wk(b)}Wk(a)}}function sc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=H[a+36>>2];if((c|0)==H[a+40>>2]){return 1}while(1){c=H[(d<<2)+c>>2];e=ga[H[H[c>>2]+24>>2]](c,b)|0;if(e){d=d+1|0;c=H[a+36>>2];if(d>>>0>2]-c>>2>>>0){continue}}break}return e|0} +function ce(a){a=a|0;var b=0;H[a>>2]=8668;b=H[a+136>>2];if(b){H[a+140>>2]=b;Wk(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+80>>2];if(b){Wk(b)}b=H[a+68>>2];if(b){Wk(b)}b=H[a+56>>2];if(b){Wk(b)}b=H[a+44>>2];if(b){Wk(b)}Wk(a)}function Nd(a){a=a|0;var b=0;H[a>>2]=7020;b=H[a+136>>2];if(b){H[a+140>>2]=b;Wk(b)}b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+80>>2];if(b){Wk(b)}b=H[a+68>>2];if(b){Wk(b)}b=H[a+56>>2];if(b){Wk(b)}b=H[a+44>>2];if(b){Wk(b)}Wk(a)}function re(a,b){var c=0,d=0,e=0;c=jk(b);if(c>>>0<4294967280){a:{b:{if(c>>>0>=11){e=c+16&-16;d=$k(e);H[a+8>>2]=e|-2147483648;H[a>>2]=d;H[a+4>>2]=c;break b}F[a+11|0]=c;d=a;if(!c){break a}}ek(d,b,c)}F[c+d|0]=0;return a}se();X()}function Xh(a){a=a|0;var b=0,c=0,d=0;b=H[a+32>>2];d=H[a+36>>2];if((b|0)==(d|0)){return 1}while(1){c=H[H[a+8>>2]+(H[b>>2]<<2)>>2];c=ga[H[H[c>>2]+20>>2]](c,H[a+44>>2])|0;if(c){b=b+4|0;if((d|0)!=(b|0)){continue}}break}return c|0}function Gl(a,b,c,d){var e=0,f=0,g=0,h=0;f=b^d;g=f>>31;e=b>>31;a=a^e;h=a-e|0;e=(b^e)-((a>>>0>>0)+e|0)|0;a=d>>31;b=c^a;f=f>>31;a=Hl(h,e,b-a|0,(a^d)-((a>>>0>b>>>0)+a|0)|0)^f;b=a-f|0;fa=(g^fa)-((a>>>0>>0)+g|0)|0;return b}function gl(a,b,c){var d=0,e=0,f=0;e=da-16|0;da=e;d=H[a+8>>2]&2147483647;a:{if(d>>>0>c>>>0){d=H[a>>2];H[a+4>>2]=c;Xk(d,b,c);F[e+15|0]=0;F[c+d|0]=I[e+15|0];break a}f=a;a=H[a+4>>2];dl(f,d-1|0,(c-d|0)+1|0,a,0,a,c,b)}da=e+16|0}function xa(a,b){a=a|0;b=b|0;var c=0,d=0;c=da-16|0;da=c;a=H[a+4>>2];a:{if((a|0)==-1){break a}F[c+15|0]=a;d=H[b+20>>2];if(!!H[b+16>>2]&(d|0)>=0|(d|0)>0){break a}ya(b,H[b+4>>2],c+15|0,c+16|0)}da=c+16|0;return(a|0)!=-1|0}function Fl(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=N(e,f);g=c&65535;h=a&65535;i=N(g,h);f=(i>>>16|0)+N(f,g)|0;e=(f&65535)+N(e,h)|0;fa=(N(b,c)+j|0)+N(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function nl(a,b,c){var d=0;d=H[a+16>>2];if(!d){H[a+36>>2]=1;H[a+24>>2]=c;H[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(H[a+24>>2]!=2){break a}H[a+24>>2]=c;return}F[a+54|0]=1;H[a+24>>2]=2;H[a+36>>2]=H[a+36>>2]+1}}function ta(a,b){a=a|0;b=b|0;var c=0,d=0;H[b>>2]=2;c=H[b+8>>2];d=H[b+12>>2]-c|0;if(d>>>0<=4294967291){bi(b+8|0,d+4|0);c=H[b+8>>2]}b=c+d|0;a=H[a+4>>2];F[b|0]=a;F[b+1|0]=a>>>8;F[b+2|0]=a>>>16;F[b+3|0]=a>>>24}function Ak(a,b,c,d,e){var f=0;f=da-256|0;da=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;gk(f,b&255,d?c:256);if(!d){while(1){wk(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}wk(a,f,c)}da=f+256|0}function Ac(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[a+16>>2];c=0;a:{if(H[a+20>>2]-d>>2<=(b|0)){break a}b=H[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=H[H[a+36>>2]+(b<<2)>>2];b=H[a+32>>2];c=b?b:H[a+8>>2]}return c|0}function Ua(a){var b=0,c=0,d=0,e=0,f=0;b=_(8)|0;H[b>>2]=18692;H[b>>2]=18736;c=jk(a);d=$k(c+13|0);H[d+8>>2]=0;H[d+4>>2]=c;H[d>>2]=c;e=b,f=ek(d+12|0,a,c+1|0),H[e+4>>2]=f;H[b>>2]=18784;$(b|0,18816,13);X()}function yc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=-1;e=H[a+16>>2];a:{if(H[a+20>>2]-e>>2<=(b|0)){break a}b=H[(b<<2)+e>>2];if((b|0)<0){break a}d=H[H[H[H[a+36>>2]+(b<<2)>>2]+16>>2]+(c<<2)>>2]}return d|0}function xc(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[a+16>>2];c=0;a:{if(H[a+20>>2]-d>>2<=(b|0)){break a}b=H[(b<<2)+d>>2];c=0;if((b|0)<0){break a}a=H[H[a+36>>2]+(b<<2)>>2];c=H[a+20>>2]-H[a+16>>2]>>2}return c|0}function ii(a,b){var c=O(0),d=0;b=Zb(a,b);if((b|0)!=(a+4|0)){a=da-16|0;da=a;sk(a,F[b+39|0]<0?H[b+28>>2]:b+28|0,0,1);d=Qk(H[a>>2],H[a+4>>2],H[a+8>>2],H[a+12>>2]);da=a+16|0;c=O(d)}else{c=O(1)}return c}function Jc(a){a=a|0;var b=0;H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Fb(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}return a|0}function ve(a){var b=0,c=0;c=da-16|0;da=c;H[c+8>>2]=0;H[c+12>>2]=0;we(a,c+8|0);H[a+24>>2]=0;H[a+28>>2]=0;b=H[a+12>>2];H[a+16>>2]=b;if(b){Wk(b)}b=H[a>>2];if(b){H[a+4>>2]=b;Wk(b)}da=c+16|0;return a}function Th(a){H[a+52>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=12484;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;return a}function Kc(a){a=a|0;var b=0;H[a>>2]=2652;b=H[a+36>>2];H[a+36>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Fb(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}Wk(a)}function Ya(a){Wa(a);H[a+64>>2]=0;H[a+68>>2]=0;H[a+88>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;F[a+77|0]=0;F[a+78|0]=0;F[a+79|0]=0;F[a+80|0]=0;F[a+81|0]=0;F[a+82|0]=0;F[a+83|0]=0;F[a+84|0]=0;return a}function tk(a){var b=0;b=H[a+72>>2];H[a+72>>2]=b-1|b;b=H[a>>2];if(b&8){H[a>>2]=b|32;return-1}H[a+4>>2]=0;H[a+8>>2]=0;b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;H[a+16>>2]=b+H[a+48>>2];return 0}function Wa(a){H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+28>>2]=9;F[a+24|0]=1;H[a+56>>2]=-1;H[a+60>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;return a}function Pk(a,b,c,d,e,f,g,h,i){var j=0;j=da-16|0;da=j;Ek(j,b,c,d,e,f,g,h,i^-2147483648);d=H[j>>2];c=H[j+4>>2];b=H[j+12>>2];H[a+8>>2]=H[j+8>>2];H[a+12>>2]=b;H[a>>2]=d;H[a+4>>2]=c;da=j+16|0}function cl(a,b){var c=0;if(b>>>0<=99){return al(a,b)}if(b>>>0<=999){c=(b>>>0)/100|0;F[a|0]=c+48;a=a+1|0;b=J[(b-N(c,100)<<1)+18208>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}return bl(a,b)}function Vi(a,b,c){a=a|0;b=b|0;c=c|0;a=0;a:{if(H[b+4>>2]|!b){break a}a=$k(36);Rj(a,c);H[a+32>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;c=H[b+4>>2];H[b+4>>2]=a;a=1;if(!c){break a}Aj(c)}return a|0}function Kj(a,b){a=a|0;b=b|0;var c=0,d=0;Zj(a,b);a:{if((b|0)<0){break a}c=H[a+88>>2];d=H[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){fk(b,d,c)}H[a+88>>2]=b+c}}function mc(a,b,c){pb(a,c);H[a+36>>2]=0;H[a+40>>2]=0;H[a>>2]=2524;H[a+44>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+72>>2]=b;return a}function hl(a,b,c){var d=0,e=0;d=da-16|0;da=d;a:{if(c>>>0<=10){F[a+11|0]=c;Xk(a,b,c);F[d+15|0]=0;F[a+c|0]=I[d+15|0];break a}e=a;a=I[a+11|0];dl(e,10,c-10|0,a,0,a,c,b)}da=d+16|0}function yh(a){a=a|0;var b=0;H[a+8>>2]=11872;H[a>>2]=11708;b=H[a+56>>2];if(b){H[a+60>>2]=b;Wk(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){Wk(b)}b=H[a+32>>2];if(b){Wk(b)}return a|0}function Uk(a){var b=0,c=0;b=H[4713];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ha()<<16>>>0){if(!(ca(a|0)|0)){break a}}H[4713]=a;return b}H[4739]=48;return-1}function Eh(a){a=a|0;var b=0;H[a+8>>2]=10904;H[a>>2]=12e3;b=H[a+56>>2];if(b){H[a+60>>2]=b;Wk(b)}H[a+8>>2]=11156;b=H[a+44>>2];if(b){Wk(b)}b=H[a+32>>2];if(b){Wk(b)}return a|0}function zh(a){a=a|0;var b=0;H[a+8>>2]=11872;H[a>>2]=11708;b=H[a+56>>2];if(b){H[a+60>>2]=b;Wk(b)}H[a+8>>2]=11688;b=H[a+44>>2];if(b){Wk(b)}b=H[a+32>>2];if(b){Wk(b)}Wk(a)}function Fh(a){a=a|0;var b=0;H[a+8>>2]=10904;H[a>>2]=12e3;b=H[a+56>>2];if(b){H[a+60>>2]=b;Wk(b)}H[a+8>>2]=11156;b=H[a+44>>2];if(b){Wk(b)}b=H[a+32>>2];if(b){Wk(b)}Wk(a)}function Di(a,b){if(b){Di(a,H[b>>2]);Di(a,H[b+4>>2]);a=H[b+28>>2];H[b+28>>2]=0;if(a){Di(a+12|0,H[a+16>>2]);Ei(a,H[a+4>>2]);Wk(a)}if(F[b+27|0]<0){Wk(H[b+16>>2])}Wk(b)}}function wb(a,b){a=a|0;b=b|0;var c=0;a:{if(!(ga[H[H[a>>2]+40>>2]](a)|0)){break a}if(!(ga[H[H[a>>2]+44>>2]](a,b)|0)){break a}c=ga[H[H[a>>2]+48>>2]](a,b)|0}return c|0}function bl(a,b){var c=0,d=0;c=(b>>>0)/100|0;d=J[(c<<1)+18208>>1];F[a|0]=d;F[a+1|0]=d>>>8;a=a+2|0;b=J[(b-N(c,100)<<1)+18208>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}function sg(a){a=a|0;var b=0;a:{b=H[a+64>>2];if(!b){break a}b=ga[H[H[b>>2]+32>>2]](b)|0;if(!b){break a}H[a+60>>2]=((H[b+4>>2]-H[b>>2]>>2>>>0)/3|0)-H[b+40>>2]}}function sa(a,b){a=a|0;b=b|0;var c=0;b=H[b+88>>2];if(!(!b|H[b>>2]!=2)){c=a;a=H[b+8>>2];H[c+4>>2]=I[a|0]|I[a+1|0]<<8|(I[a+2|0]<<16|I[a+3|0]<<24);c=1}return c|0}function xh(a){a=a|0;var b=0;H[a>>2]=11872;b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}return a|0}function Kg(a){a=a|0;var b=0;H[a>>2]=10904;b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}H[a>>2]=11156;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}return a|0}function ji(a,b){var c=0;a:{c=a+4|0;a=Zb(a,b);if((c|0)==(a|0)){break a}a=dk(F[a+39|0]<0?H[a+28>>2]:a+28|0);if((a|0)==-1){break a}return(a|0)!=0}return 0}function ki(a,b,c){var d=0;d=a+4|0;a=Zb(a,b);a:{if((d|0)==(a|0)){break a}a=dk(F[a+39|0]<0?H[a+28>>2]:a+28|0);if((a|0)==-1){break a}c=(a|0)!=0}return c}function jh(a){a=a|0;var b=0;H[a>>2]=10904;b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}H[a>>2]=11156;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}Wk(a)}function Dh(a){a=a|0;var b=0;H[a>>2]=11872;b=H[a+48>>2];if(b){H[a+52>>2]=b;Wk(b)}H[a>>2]=11688;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}Wk(a)}function tl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(kl(a,H[b+8>>2],f)){ql(b,c,d,e);return}a=H[a+8>>2];ga[H[H[a>>2]+20>>2]](a,b,c,d,e,f)}function jd(a){a=a|0;var b=0;a:{if(!H[a- -64>>2]|!H[a+68>>2]|(!H[a+44>>2]|!H[a+48>>2])){break a}if(!H[a+52>>2]){break a}b=H[a+56>>2]!=0}return b|0}function Yd(a){a=a|0;var b=0;a:{if(!H[a+48>>2]|!H[a+52>>2]|(!H[a+28>>2]|!H[a+32>>2])){break a}if(!H[a+36>>2]){break a}b=H[a+40>>2]!=0}return b|0}function yi(){var a=0;a=$k(108);Uj(a);H[a+84>>2]=0;H[a+88>>2]=0;H[a>>2]=14908;H[a+92>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;return a|0}function Wj(a){var b=0,c=0;b=H[a+20>>2];a:{if((H[a+24>>2]-b|0)<=0){break a}b=H[b>>2];if((b|0)==-1){break a}c=H[H[a+8>>2]+(b<<2)>>2]}return c}function Vj(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=N(b,12)+a|0;a=H[b+20>>2];if((H[b+24>>2]-a|0)<=0){break a}c=H[a>>2]}return c}function pb(a,b){H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=2216;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;qb(a,b)}function Gj(a){a=a|0;var b=0;H[a>>2]=14908;b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+84>>2];if(b){H[a+88>>2]=b;Wk(b)}Hj(a);return a|0}function Ck(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b;b=H[b>>2]+7&-8;H[c>>2]=b+16;d=a,e=Qk(H[b>>2],H[b+4>>2],H[b+8>>2],H[b+12>>2]),M[d>>3]=e}function xe(a){var b=0;b=da-16|0;da=b;H[b+8>>2]=0;H[b+12>>2]=0;we(a,b+8|0);H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=H[a+12>>2];da=b+16|0}function Ij(a){a=a|0;var b=0;H[a>>2]=14908;b=H[a+96>>2];if(b){H[a+100>>2]=b;Wk(b)}b=H[a+84>>2];if(b){H[a+88>>2]=b;Wk(b)}Hj(a);Wk(a)}function ud(a){a=a|0;var b=0;H[a>>2]=5340;b=H[a+76>>2];if(b){Wk(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}return a|0}function jc(a){a=a|0;var b=0;H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Fb(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}return a|0}function Zc(a){a=a|0;var b=0;H[a>>2]=3788;b=H[a+76>>2];if(b){Wk(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}return a|0}function Ei(a,b){if(b){Ei(a,H[b>>2]);Ei(a,H[b+4>>2]);a=H[b+28>>2];if(a){H[b+32>>2]=a;Wk(a)}if(F[b+27|0]<0){Wk(H[b+16>>2])}Wk(b)}}function ub(a){a=a|0;var b=0;H[a>>2]=2216;b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}b=H[a+4>>2];if(b){H[a+8>>2]=b;Wk(b)}return a|0}function pl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(kl(a,H[b+8>>2],0)){nl(b,c,d);return}a=H[a+8>>2];ga[H[H[a>>2]+28>>2]](a,b,c,d)}function Bi(){var a=0,b=0;a=$k(24);H[a+4>>2]=0;H[a+8>>2]=0;b=a+16|0;H[b>>2]=0;H[b+4>>2]=0;H[a>>2]=a+4;H[a+12>>2]=b;return a|0}function vd(a){a=a|0;var b=0;H[a>>2]=5340;b=H[a+76>>2];if(b){Wk(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}Wk(a)}function kc(a){a=a|0;var b=0;H[a>>2]=2420;b=H[a+32>>2];H[a+32>>2]=0;if(b){Fb(b)}b=H[a+16>>2];if(b){H[a+20>>2]=b;Wk(b)}Wk(a)}function _c(a){a=a|0;var b=0;H[a>>2]=3788;b=H[a+76>>2];if(b){Wk(b)}H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}Wk(a)}function $k(a){var b=0;a=a?a:1;a:{while(1){b=Vk(a);if(b){break a}b=H[4906];if(b){ga[b|0]();continue}break}ba();X()}return b}function Hc(a,b){if(b){Hc(a,H[b>>2]);Hc(a,H[b+4>>2]);if(F[b+39|0]<0){Wk(H[b+28>>2])}if(F[b+27|0]<0){Wk(H[b+16>>2])}Wk(b)}}function wl(a){a=a|0;var b=0,c=0;H[a>>2]=18736;b=H[a+4>>2]-12|0;c=H[b+8>>2]-1|0;H[b+8>>2]=c;if((c|0)<0){Wk(b)}return a|0}function od(a,b){a=a|0;b=b|0;var c=0;a:{switch(b|0){case 1:b=1;case 0:H[a+28>>2]=b;c=1;break;default:break a}}return c|0}function La(a,b,c,d,e){var f=0;f=b-1|0;if(f>>>0<=29){H[a+4>>2]=b;Ma(a+8|0,c,(d<<2)+c|0);L[a+20>>2]=e}return f>>>0<30}function yd(a){a=a|0;var b=0;H[a>>2]=5564;ve(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}return a|0}function ok(a,b,c,d,e,f,g,h,i){H[a>>2]=b;H[a+4>>2]=c;H[a+8>>2]=d;H[a+12>>2]=e&65535|(i>>>16&32768|e>>>16&32767)<<16}function gd(a){a=a|0;var b=0;H[a>>2]=4024;ve(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}return a|0}function dc(a,b,c){a=a|0;b=b|0;c=c|0;H[a+4>>2]=b;b=H[H[H[b+4>>2]+8>>2]+(c<<2)>>2];H[a+12>>2]=c;H[a+8>>2]=b;return 1}function We(a,b){H[a>>2]=10284;Ae(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=b;H[a+48>>2]=b;H[a>>2]=10380;return a}function Ve(a,b){H[a>>2]=10284;Ae(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a+52>>2]=0;H[a+48>>2]=b;H[a>>2]=10380;return a}function al(a,b){if(b>>>0<=9){F[a|0]=b+48;return a+1|0}b=J[(b<<1)+18208>>1];F[a|0]=b;F[a+1|0]=b>>>8;return a+2|0}function ad(a){a=a|0;var b=0;if(!(!H[a+60>>2]|!H[a+44>>2]|(!H[a+48>>2]|!H[a+52>>2]))){b=H[a+56>>2]!=0}return b|0}function Sd(a){a=a|0;var b=0;if(!(!H[a+44>>2]|!H[a+28>>2]|(!H[a+32>>2]|!H[a+36>>2]))){b=H[a+40>>2]!=0}return b|0}function fj(a){a=a|0;if(a){H[a>>2]=10360;Hc(a+28|0,H[a+32>>2]);Ie(a+16|0,H[a+20>>2]);Hc(a+4|0,H[a+8>>2]);Wk(a)}}function zd(a){a=a|0;var b=0;H[a>>2]=5564;ve(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}Wk(a)}function hd(a){a=a|0;var b=0;H[a>>2]=4024;ve(a+112|0);H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}Wk(a)}function _e(a,b){var c=0,d=0;if(!(!a|!b|(a|0)==(b|0))){c=+(b>>>0)/+(a>>>0);d=1-c;c=-(c*hk(c)+d*hk(d))}return c}function gi(a,b){var c=0;c=a+4|0;a=Zb(a,b);if((c|0)==(a|0)){return-1}return dk(F[a+39|0]<0?H[a+28>>2]:a+28|0)}function Ne(a){a=a|0;H[a>>2]=10360;Hc(a+28|0,H[a+32>>2]);Ie(a+16|0,H[a+20>>2]);Hc(a+4|0,H[a+8>>2]);return a|0}function Ge(a){a=a|0;H[a>>2]=10284;Hc(a+28|0,H[a+32>>2]);De(a+16|0,H[a+20>>2]);Hc(a+4|0,H[a+8>>2]);return a|0}function bi(a,b){var c=0,d=0;ai(a,b);b=H[a+28>>2];c=b;d=b+1|0;b=H[a+24>>2]+1|0;H[a+24>>2]=b;H[a+28>>2]=b?c:d}function hi(a,b,c){var d=0;d=a+4|0;a=Zb(a,b);if((d|0)!=(a|0)){c=dk(F[a+39|0]<0?H[a+28>>2]:a+28|0)}return c}function Yi(){var a=0;a=$k(48);H[a>>2]=10360;Ae(a+4|0);H[a+40>>2]=0;H[a+44>>2]=0;H[a>>2]=10144;return a|0}function Pe(a){a=a|0;H[a>>2]=10284;Hc(a+28|0,H[a+32>>2]);De(a+16|0,H[a+20>>2]);Hc(a+4|0,H[a+8>>2]);Wk(a)}function Oe(a){a=a|0;H[a>>2]=10360;Hc(a+28|0,H[a+32>>2]);Ie(a+16|0,H[a+20>>2]);Hc(a+4|0,H[a+8>>2]);Wk(a)}function vh(a){a=a|0;var b=0;H[a>>2]=11688;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}return a|0}function kh(a){a=a|0;var b=0;H[a>>2]=11156;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}return a|0}function Xj(a,b){ga[H[H[a>>2]+8>>2]](a,H[a+12>>2]-H[a+8>>2]>>2,b);return(H[a+12>>2]-H[a+8>>2]>>2)-1|0}function Oc(a){a=a|0;var b=0;if(!(!H[a+52>>2]|(!H[a+44>>2]|!H[a+48>>2]))){b=H[a+56>>2]!=0}return b|0}function Id(a){a=a|0;var b=0;if(!(!H[a+36>>2]|(!H[a+28>>2]|!H[a+32>>2]))){b=H[a+40>>2]!=0}return b|0}function wh(a){a=a|0;var b=0;H[a>>2]=11688;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}Wk(a)}function lh(a){a=a|0;var b=0;H[a>>2]=11156;b=H[a+36>>2];if(b){Wk(b)}b=H[a+24>>2];if(b){Wk(b)}Wk(a)}function kd(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a- -64>>2]=b;c=1}return c|0}function ul(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(kl(a,H[b+8>>2],f)){ql(b,c,d,e)}}function bd(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+60>>2]=b;c=1}return c|0}function Zd(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+48>>2]=b;c=1}return c|0}function Td(a,b){a=a|0;b=b|0;var c=0;if(!(H[b+56>>2]|I[b+24|0]!=3)){H[a+44>>2]=b;c=1}return c|0}function Yk(a){var b=0;b=a;a=0;while(1){if((a|0)!=3){H[(a<<2)+b>>2]=0;a=a+1|0;continue}break}}function pj(a){a=a|0;var b=0;if(a){b=H[a>>2];H[a>>2]=0;if(b){ga[H[H[b>>2]+4>>2]](b)}Wk(a)}}function Lc(a){a=a|0;var b=0;H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}return a|0}function Qa(a){a=a|0;var b=0;H[a>>2]=1140;b=H[a+8>>2];if(b){H[a+12>>2]=b;Wk(b)}return a|0}function te(a){var b=0;H[a+12>>2]=0;H[a+16>>2]=0;b=a;a=H[a>>2];H[b+4>>2]=a;if(a){Wk(a)}}function Ph(a){a=a|0;var b=0;b=a;a=H[a+56>>2];H[b+60>>2]=(H[a+100>>2]-H[a+96>>2]|0)/12}function Ui(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return xj(b,c,d,e,f,6)|0}function Ti(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return xj(b,c,d,e,f,5)|0}function Si(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return zj(b,c,d,e,f,4)|0}function Ri(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return zj(b,c,d,e,f,3)|0}function Qi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return yj(b,c,d,e,f,2)|0}function Pi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return yj(b,c,d,e,f,1)|0}function Oi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return xj(b,c,d,e,f,9)|0}function Mc(a){a=a|0;var b=0;H[a>>2]=3484;b=H[a+32>>2];if(b){H[a+36>>2]=b;Wk(b)}Wk(a)}function Ra(a){a=a|0;var b=0;H[a>>2]=1140;b=H[a+8>>2];if(b){H[a+12>>2]=b;Wk(b)}Wk(a)}function jj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=O(f);Le(H[a>>2],b,c,d,e,f)}function Ie(a,b){if(b){Ie(a,H[b>>2]);Ie(a,H[b+4>>2]);Hc(b+20|0,H[b+24>>2]);Wk(b)}}function De(a,b){if(b){De(a,H[b>>2]);De(a,H[b+4>>2]);Hc(b+20|0,H[b+24>>2]);Wk(b)}}function qg(a,b){a=a|0;b=b|0;var c=0;c=a;a=H[b+64>>2];ga[H[H[a>>2]+28>>2]](c,a)}function ol(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(kl(a,H[b+8>>2],0)){nl(b,c,d)}}function ee(a){a=a|0;var b=0;H[a>>2]=8928;b=H[a+60>>2];if(b){Wk(b)}return a|0}function Qd(a){a=a|0;var b=0;H[a>>2]=7292;b=H[a+60>>2];if(b){Wk(b)}return a|0}function Il(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function $i(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=O(f);Le(a,b,c,d,e,f)}function xg(a,b){a=a|0;b=b|0;a=H[a+64>>2];return ga[H[H[a>>2]+16>>2]](a,b)|0}function wg(a,b){a=a|0;b=b|0;a=H[a+64>>2];return ga[H[H[a>>2]+12>>2]](a,b)|0}function pg(a,b){a=a|0;b=b|0;a=H[a+64>>2];return ga[H[H[a>>2]+24>>2]](a,b)|0}function og(a,b){a=a|0;b=b|0;a=H[a+64>>2];return ga[H[H[a>>2]+20>>2]](a,b)|0}function $g(a,b){a=a|0;b=b|0;return H[H[a+28>>2]+(b>>>3&536870908)>>2]>>>b&1}function Yh(a,b){a=a|0;b=b|0;H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}function Ii(a){a=a|0;var b=0;if(a){b=H[a>>2];if(b){H[a+4>>2]=b;Wk(b)}Wk(a)}}function Fi(){var a=0;a=$k(12);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;return a|0}function Jl(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function fc(a,b,c){a=a|0;b=b|0;c=c|0;return ga[H[H[a>>2]+44>>2]](a,b,c)|0}function fe(a){a=a|0;var b=0;H[a>>2]=8928;b=H[a+60>>2];if(b){Wk(b)}Wk(a)}function Rd(a){a=a|0;var b=0;H[a>>2]=7292;b=H[a+60>>2];if(b){Wk(b)}Wk(a)}function rb(a,b,c){a=a|0;b=b|0;c=c|0;H[a+32>>2]=c;H[a+28>>2]=b;return 1}function Rh(a,b){a=a|0;b=b|0;F[b+84|0]=1;H[b+72>>2]=H[b+68>>2];return 1}function Ci(a){a=a|0;if(a){Di(a+12|0,H[a+16>>2]);Ei(a,H[a+4>>2]);Wk(a)}}function vg(a){a=a|0;a=H[a+64>>2];return ga[H[H[a>>2]+32>>2]](a)|0}function ec(a,b){a=a|0;b=b|0;H[a+12>>2]=-1;H[a+8>>2]=b;return 1}function Jh(a){Th(a);H[a+56>>2]=0;H[a+60>>2]=0;H[a>>2]=12180}function zi(a){a=a|0;return(H[a+100>>2]-H[a+96>>2]|0)/12|0}function he(a){a=a|0;H[a>>2]=9176;ve(a+96|0);return a|0}function Wd(a){a=a|0;H[a>>2]=7552;ve(a+96|0);return a|0}function kj(a,b,c){a=a|0;b=b|0;c=c|0;Je(H[a>>2],b,c)}function ij(a,b,c){a=a|0;b=b|0;c=c|0;Ke(H[a>>2],b,c)}function Uj(a){H[a>>2]=14980;gk(a+4|0,0,80);return a}function Kl(a){if(a){return 31-Q(a-1^a)|0}return 32} +function wi(a){a=a|0;return H[a+12>>2]-H[a+8>>2]>>2}function Oh(a){a=a|0;H[a+52>>2]=H[H[a+56>>2]+80>>2]}function xi(a){a=a|0;if(a){ga[H[H[a>>2]+4>>2]](a)}}function me(a,b){a=a|0;b=b|0;return Oa(a+40|0,b)|0}function ie(a){a=a|0;H[a>>2]=9176;ve(a+96|0);Wk(a)}function Xd(a){a=a|0;H[a>>2]=7552;ve(a+96|0);Wk(a)}function Gi(a,b){a=a|0;b=b|0;return F[H[a>>2]+b|0]}function Ed(a,b){a=a|0;b=b|0;return xa(a+40|0,b)|0}function $h(a){a=a|0;H[a+52>>2]=H[H[a+4>>2]+80>>2]}function ra(){ea=19632;H[4776]=18992;H[4758]=42}function Hi(a){a=a|0;return H[a+4>>2]-H[a>>2]|0}function Bl(a){a=a|0;a=da-a&-16;da=a;return a|0}function aj(a,b,c){a=a|0;b=b|0;c=c|0;Je(a,b,c)}function _i(a,b,c){a=a|0;b=b|0;c=c|0;Ke(a,b,c)}function yb(a,b,c){a=a|0;b=b|0;c=c|0;return-1}function Ta(a,b){a=a|0;b=b|0;return F[b+24|0]}function oj(a){a=a|0;return H[H[a>>2]+44>>2]}function nj(a){a=a|0;return H[H[a>>2]+40>>2]}function lj(a,b){a=a|0;b=b|0;Cj(H[a>>2],b)}function hj(a,b){a=a|0;b=b|0;Me(H[a>>2],b)}function Ai(a,b){a=a|0;b=b|0;H[a+80>>2]=b}function ui(a){a=a|0;return H[a+60>>2]}function ti(a){a=a|0;return H[a+48>>2]}function si(a){a=a|0;return H[a+40>>2]}function pi(a){a=a|0;return H[a+56>>2]}function pd(a){a=a|0;return H[a+28>>2]}function oi(a){a=a|0;return H[a+80>>2]}function ej(a){a=a|0;return H[a+44>>2]}function _g(a){a=a|0;return H[a+12>>2]}function zb(a,b){a=a|0;b=b|0;return 1}function xb(a,b){a=a|0;b=b|0;return 0}function ri(a){a=a|0;return I[a+32|0]}function qi(a){a=a|0;return F[a+24|0]}function Pc(a,b){a=a|0;b=b|0;return-1}function Nc(a){a=a|0;return H[a+4>>2]}function Ea(a,b){a=a|0;b=b|0;return 2}function Da(a,b){a=a|0;b=b|0;return 6}function bj(a,b){a=a|0;b=b|0;Cj(a,b)}function Zi(a,b){a=a|0;b=b|0;Me(a,b)}function Xk(a,b,c){if(c){ek(a,b,c)}}function bf(a,b,c,d){af(a,b,c,d,1)}function $e(a,b,c,d){af(a,b,c,d,0)}function vi(){return Uj($k(84))|0}function ni(){return Ya($k(96))|0}function mi(){return Wa($k(64))|0}function li(a){a=a|0;if(a){Wk(a)}}function yl(a){a=a|0;wl(a);Wk(a)}function vl(a){a=a|0;return 1476}function Aa(a){a=a|0;return a|0}function xl(a){a=a|0;Wk(wl(a))}function wc(a){a=a|0;Wk(vc(a))}function sd(a){a=a|0;Wk(rd(a))}function ih(a){a=a|0;Wk(hh(a))}function gh(a){a=a|0;Wk(fh(a))}function ck(a){a=a|0;Wk(Hj(a))}function Yb(a){a=a|0;Wk(Xb(a))}function Uc(a){a=a|0;Wk(Tc(a))}function lc(a){a=a|0;return 0}function id(a){a=a|0;return 6}function Vc(a){a=a|0;return 4}function Sa(a){a=a|0;return 1}function Gd(a){a=a|0;return 3}function Ca(a){a=a|0;return 2}function $c(a){a=a|0;return 5}function Ji(){return $k(1)|0}function Dl(){return da-ea|0}function se(){Ua(1584);X()}function mk(){return 18956}function jl(){Ua(1425);X()}function Ba(a){a=a|0;Wk(a)}function zl(){return da|0}function El(){return ea|0}function Al(a){a=a|0;da=a}function vb(a){a=a|0;X()}function ci(a,b){ai(a,b)}function vj(){return 4}function uj(){return 3}function tj(){return 2}function sj(){return 1}function rj(){return 0}function qj(){return-1}function Tk(){ba();X()}function Sc(){Tk();X()}function Fa(){jl();X()}function Cl(){ea=19632}function kk(a){a=a|0} +// EMSCRIPTEN_END_FUNCS +e=I;p(pa);var ga=c([null,Aa,Ba,Ca,sa,ta,ua,wa,xa,za,Va,Da,Ea,wl,Qa,Ra,Sa,Ga,Ia,Ja,Ka,Oa,Pa,Da,Ta,ub,vb,rb,sb,Tk,wb,xb,yb,xb,xb,Sa,zb,Xb,Yb,Ca,Ab,Jb,Ib,jc,kc,dc,ec,zb,fc,zb,lc,lc,hc,ic,gc,vc,wc,nc,oc,lc,pc,xc,yc,zc,Ac,qc,rc,sc,tc,uc,Jc,Kc,Dc,Ec,Sa,Gc,Fc,Ic,Lc,Mc,Sa,Nc,Oc,lc,Pc,xb,lc,Sa,Qc,Rc,vb,vb,Tc,Uc,Vc,Oc,Wc,Xc,Zc,_c,$c,ad,Sa,xb,bd,cd,dd,gd,hd,id,jd,Sa,xb,kd,ld,md,Aa,Ba,od,pd,nd,vb,Mc,Sa,Oc,qd,vb,rd,sd,Vc,Oc,Wc,td,ud,vd,$c,ad,Sa,xb,bd,cd,wd,yd,zd,id,jd,Sa,xb,kd,ld,Ad,Aa,Ba,od,pd,Bd,vb,Mc,lc,Sa,Cd,Jc,Kc,Dd,Ed,Sa,Gd,Hd,Fd,Aa,Ba,Sa,Nc,Id,lc,Pc,xb,Sa,Gd,Jd,Kd,Md,Nd,Vc,Id,Od,Pd,Qd,Rd,$c,Sd,Sa,xb,Td,Ud,Vd,Wd,Xd,id,Yd,Sa,xb,Zd,_d,$d,Aa,Ba,od,pd,nd,Ba,Sa,Id,ae,be,ce,Vc,Id,Od,de,ee,fe,$c,Sd,Sa,xb,Td,Ud,ge,he,ie,id,Yd,Sa,xb,Zd,_d,je,Aa,Ba,od,pd,Bd,Ba,lc,Sa,ke,oe,pe,le,me,Sa,Ca,ne,Ne,Oe,Be,He,Ge,Pe,Oe,Pe,tg,ug,Sa,Sa,ng,Sa,Kh,Vh,Wh,og,pg,Xh,rg,vg,wg,xg,qg,sg,fh,gh,yg,zg,Ag,Bg,Lg,Mg,_g,$g,Nc,hh,ih,ah,zg,Ag,bh,Lg,ch,_g,$g,Nc,Kg,jh,Jg,kh,lh,oh,ph,qh,rh,nh,uh,mh,vh,wh,yh,zh,Ah,Bh,xh,Dh,Eh,Fh,Gh,Hh,Lh,vb,Sa,zb,lc,xb,xb,Qh,lc,Nh,Oh,Mh,Ph,Aa,Ba,Rh,Sh,vb,lc,Yh,Qh,Sa,Zh,_h,$h,Qh,lc,Zh,Nh,$h,Gj,Ij,Jj,Kj,bk,_j,Fj,Hj,ck,Yj,Zj,ak,Bk,Ck,_k,Aa,Ba,kk,kk,ll,ul,sl,ol,Ba,tl,rl,pl,Aa,Ba,vl,xl,Nc,yl]);function ha(){return E.byteLength/65536|0}function ma(na){na=na|0;var ia=ha()|0;var ja=ia+na|0;if(ia=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;if(u>1114111)warnOnce("Invalid Unicode code point 0x"+u.toString(16)+" encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF).");heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(!Object.getOwnPropertyDescriptor(Module,"INITIAL_MEMORY")){Object.defineProperty(Module,"INITIAL_MEMORY",{configurable:true,get:function(){abort("Module.INITIAL_MEMORY has been replaced with plain INITIAL_MEMORY (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(INITIAL_MEMORY>=TOTAL_STACK,"INITIAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!==undefined&&Int32Array.prototype.set!==undefined,"JS engine does not provide full typed array support");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;assert(INITIAL_MEMORY%65536===0);updateGlobalBufferAndViews(buffer);var wasmTable;function writeStackCookie(){var max=_emscripten_stack_get_end();assert((max&3)==0);HEAP32[max+4>>2]=34821223;HEAP32[max+8>>2]=2310721022;HEAP32[0]=1668509029}function checkStackCookie(){if(ABORT)return;var max=_emscripten_stack_get_end();var cookie1=HEAPU32[max+4>>2];var cookie2=HEAPU32[max+8>>2];if(cookie1!=34821223||cookie2!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x2135467, but received 0x"+cookie2.toString(16)+" 0x"+cookie1.toString(16))}if(HEAP32[0]!==1668509029)abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian! (Run with -s SUPPORT_BIG_ENDIAN=1 to bypass)"})();var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){checkStackCookie();assert(!runtimeInitialized);runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function exitRuntime(){checkStackCookie();runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval(function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var FS={error:function(){abort("Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -s FORCE_FILESYSTEM=1")},init:function(){FS.error()},createDataFile:function(){FS.error()},createPreloadedFile:function(){FS.error()},createLazyFile:function(){FS.error()},open:function(){FS.error()},mkdev:function(){FS.error()},registerDevice:function(){FS.error()},analyzePath:function(){FS.error()},loadFilesFromDB:function(){FS.error()},ErrnoError:function ErrnoError(){FS.error()}};Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}function createExportWrapper(name,fixedasm){return function(){var displayName=name;var asm=fixedasm;if(!fixedasm){asm=Module["asm"]}assert(runtimeInitialized,"native function `"+displayName+"` called before runtime initialization");assert(!runtimeExited,"native function `"+displayName+"` called after runtime exit (use NO_EXIT_RUNTIME to keep it alive after main() exits)");if(!asm[name]){assert(asm[name],"exported native function `"+displayName+"` not found")}return asm[name].apply(null,arguments)}}var wasmBinaryFile;wasmBinaryFile="draco_encoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["__indirect_function_table"];assert(wasmTable,"table not found in wasm exports");addOnInit(Module["asm"]["__wasm_call_ctors"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiationResult(result){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);if(isFileURI(wasmBinaryFile)){err("warning: Loading from a file URI ("+wasmBinaryFile+") is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing")}abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var tempDouble;var tempI64;function array_bounds_check_error(idx,size){throw"Array index "+idx+" out of bounds: [0,"+size+")"}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}assert(wasmTable.get(funcPtr)==func,"JavaScript-side Wasm function table mirror is out of date!");return func}function jsStackTrace(){var error=new Error;if(!error.stack){try{throw new Error}catch(e){error=e}if(!error.stack){return"(no stack trace available)"}}return error.stack.toString()}function setWasmTableEntry(idx,func){wasmTable.set(idx,func);wasmTableMirror[idx]=func}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;assert(prev>0);return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s NO_DISABLE_EXCEPTION_CATCHING or -s EXCEPTION_CATCHING_ALLOWED=[..] to catch."}function _abort(){abort("native code called abort()")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){err("emscripten_realloc_buffer: Attempted to grow heap from "+buffer.byteLength+" bytes to "+size+" bytes, but got error: "+e)}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;assert(requestedSize>oldSize);var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){err("Cannot enlarge memory, asked to go up to "+requestedSize+" bytes, but the limit is "+maxHeapSize+" bytes!");return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){err("Warning: Enlarging memory arrays, this is not fast! "+[oldSize,newSize]);return true}}err("Failed to grow the heap from "+oldSize+" bytes to "+newSize+" bytes, not enough memory!");return false}var ASSERTIONS=true;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(iabort("'intArrayFromString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"intArrayToString"))Module["intArrayToString"]=(()=>abort("'intArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ccall"))Module["ccall"]=(()=>abort("'ccall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"cwrap"))Module["cwrap"]=(()=>abort("'cwrap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setValue"))Module["setValue"]=(()=>abort("'setValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getValue"))Module["getValue"]=(()=>abort("'getValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"allocate"))Module["allocate"]=(()=>abort("'allocate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UTF8ArrayToString"))Module["UTF8ArrayToString"]=(()=>abort("'UTF8ArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UTF8ToString"))Module["UTF8ToString"]=(()=>abort("'UTF8ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8Array"))Module["stringToUTF8Array"]=(()=>abort("'stringToUTF8Array' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8"))Module["stringToUTF8"]=(()=>abort("'stringToUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF8"))Module["lengthBytesUTF8"]=(()=>abort("'lengthBytesUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=(()=>abort("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnPreRun"))Module["addOnPreRun"]=(()=>abort("'addOnPreRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnInit"))Module["addOnInit"]=(()=>abort("'addOnInit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnPreMain"))Module["addOnPreMain"]=(()=>abort("'addOnPreMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnExit"))Module["addOnExit"]=(()=>abort("'addOnExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addOnPostRun"))Module["addOnPostRun"]=(()=>abort("'addOnPostRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeStringToMemory"))Module["writeStringToMemory"]=(()=>abort("'writeStringToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeArrayToMemory"))Module["writeArrayToMemory"]=(()=>abort("'writeArrayToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeAsciiToMemory"))Module["writeAsciiToMemory"]=(()=>abort("'writeAsciiToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addRunDependency"))Module["addRunDependency"]=(()=>abort("'addRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"removeRunDependency"))Module["removeRunDependency"]=(()=>abort("'removeRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createFolder"))Module["FS_createFolder"]=(()=>abort("'FS_createFolder' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createPath"))Module["FS_createPath"]=(()=>abort("'FS_createPath' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createDataFile"))Module["FS_createDataFile"]=(()=>abort("'FS_createDataFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createPreloadedFile"))Module["FS_createPreloadedFile"]=(()=>abort("'FS_createPreloadedFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createLazyFile"))Module["FS_createLazyFile"]=(()=>abort("'FS_createLazyFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createLink"))Module["FS_createLink"]=(()=>abort("'FS_createLink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"FS_createDevice"))Module["FS_createDevice"]=(()=>abort("'FS_createDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"FS_unlink"))Module["FS_unlink"]=(()=>abort("'FS_unlink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you"));if(!Object.getOwnPropertyDescriptor(Module,"getLEB"))Module["getLEB"]=(()=>abort("'getLEB' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getFunctionTables"))Module["getFunctionTables"]=(()=>abort("'getFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"alignFunctionTables"))Module["alignFunctionTables"]=(()=>abort("'alignFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerFunctions"))Module["registerFunctions"]=(()=>abort("'registerFunctions' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"addFunction"))Module["addFunction"]=(()=>abort("'addFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"removeFunction"))Module["removeFunction"]=(()=>abort("'removeFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=(()=>abort("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"prettyPrint"))Module["prettyPrint"]=(()=>abort("'prettyPrint' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=(()=>abort("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getCompilerSetting"))Module["getCompilerSetting"]=(()=>abort("'getCompilerSetting' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"print"))Module["print"]=(()=>abort("'print' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"printErr"))Module["printErr"]=(()=>abort("'printErr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getTempRet0"))Module["getTempRet0"]=(()=>abort("'getTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setTempRet0"))Module["setTempRet0"]=(()=>abort("'setTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"callMain"))Module["callMain"]=(()=>abort("'callMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"abort"))Module["abort"]=(()=>abort("'abort' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"keepRuntimeAlive"))Module["keepRuntimeAlive"]=(()=>abort("'keepRuntimeAlive' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"zeroMemory"))Module["zeroMemory"]=(()=>abort("'zeroMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToNewUTF8"))Module["stringToNewUTF8"]=(()=>abort("'stringToNewUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setFileTime"))Module["setFileTime"]=(()=>abort("'setFileTime' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscripten_realloc_buffer"))Module["emscripten_realloc_buffer"]=(()=>abort("'emscripten_realloc_buffer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ENV"))Module["ENV"]=(()=>abort("'ENV' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"withStackSave"))Module["withStackSave"]=(()=>abort("'withStackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ERRNO_CODES"))Module["ERRNO_CODES"]=(()=>abort("'ERRNO_CODES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ERRNO_MESSAGES"))Module["ERRNO_MESSAGES"]=(()=>abort("'ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setErrNo"))Module["setErrNo"]=(()=>abort("'setErrNo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"inetPton4"))Module["inetPton4"]=(()=>abort("'inetPton4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"inetNtop4"))Module["inetNtop4"]=(()=>abort("'inetNtop4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"inetPton6"))Module["inetPton6"]=(()=>abort("'inetPton6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"inetNtop6"))Module["inetNtop6"]=(()=>abort("'inetNtop6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readSockaddr"))Module["readSockaddr"]=(()=>abort("'readSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeSockaddr"))Module["writeSockaddr"]=(()=>abort("'writeSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"DNS"))Module["DNS"]=(()=>abort("'DNS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getHostByName"))Module["getHostByName"]=(()=>abort("'getHostByName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GAI_ERRNO_MESSAGES"))Module["GAI_ERRNO_MESSAGES"]=(()=>abort("'GAI_ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"Protocols"))Module["Protocols"]=(()=>abort("'Protocols' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"Sockets"))Module["Sockets"]=(()=>abort("'Sockets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getRandomDevice"))Module["getRandomDevice"]=(()=>abort("'getRandomDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"traverseStack"))Module["traverseStack"]=(()=>abort("'traverseStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"convertFrameToPC"))Module["convertFrameToPC"]=(()=>abort("'convertFrameToPC' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UNWIND_CACHE"))Module["UNWIND_CACHE"]=(()=>abort("'UNWIND_CACHE' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"saveInUnwindCache"))Module["saveInUnwindCache"]=(()=>abort("'saveInUnwindCache' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"convertPCtoSourceLocation"))Module["convertPCtoSourceLocation"]=(()=>abort("'convertPCtoSourceLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readAsmConstArgsArray"))Module["readAsmConstArgsArray"]=(()=>abort("'readAsmConstArgsArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readAsmConstArgs"))Module["readAsmConstArgs"]=(()=>abort("'readAsmConstArgs' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"mainThreadEM_ASM"))Module["mainThreadEM_ASM"]=(()=>abort("'mainThreadEM_ASM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"jstoi_q"))Module["jstoi_q"]=(()=>abort("'jstoi_q' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"jstoi_s"))Module["jstoi_s"]=(()=>abort("'jstoi_s' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getExecutableName"))Module["getExecutableName"]=(()=>abort("'getExecutableName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"listenOnce"))Module["listenOnce"]=(()=>abort("'listenOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"autoResumeAudioContext"))Module["autoResumeAudioContext"]=(()=>abort("'autoResumeAudioContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"dynCallLegacy"))Module["dynCallLegacy"]=(()=>abort("'dynCallLegacy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getDynCaller"))Module["getDynCaller"]=(()=>abort("'getDynCaller' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=(()=>abort("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"callRuntimeCallbacks"))Module["callRuntimeCallbacks"]=(()=>abort("'callRuntimeCallbacks' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"wasmTableMirror"))Module["wasmTableMirror"]=(()=>abort("'wasmTableMirror' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setWasmTableEntry"))Module["setWasmTableEntry"]=(()=>abort("'setWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getWasmTableEntry"))Module["getWasmTableEntry"]=(()=>abort("'getWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"handleException"))Module["handleException"]=(()=>abort("'handleException' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"runtimeKeepalivePush"))Module["runtimeKeepalivePush"]=(()=>abort("'runtimeKeepalivePush' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"runtimeKeepalivePop"))Module["runtimeKeepalivePop"]=(()=>abort("'runtimeKeepalivePop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"callUserCallback"))Module["callUserCallback"]=(()=>abort("'callUserCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"maybeExit"))Module["maybeExit"]=(()=>abort("'maybeExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"safeSetTimeout"))Module["safeSetTimeout"]=(()=>abort("'safeSetTimeout' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"asmjsMangle"))Module["asmjsMangle"]=(()=>abort("'asmjsMangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"asyncLoad"))Module["asyncLoad"]=(()=>abort("'asyncLoad' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"alignMemory"))Module["alignMemory"]=(()=>abort("'alignMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"mmapAlloc"))Module["mmapAlloc"]=(()=>abort("'mmapAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"reallyNegative"))Module["reallyNegative"]=(()=>abort("'reallyNegative' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"unSign"))Module["unSign"]=(()=>abort("'unSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"reSign"))Module["reSign"]=(()=>abort("'reSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"formatString"))Module["formatString"]=(()=>abort("'formatString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"PATH"))Module["PATH"]=(()=>abort("'PATH' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"PATH_FS"))Module["PATH_FS"]=(()=>abort("'PATH_FS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SYSCALLS"))Module["SYSCALLS"]=(()=>abort("'SYSCALLS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"syscallMmap2"))Module["syscallMmap2"]=(()=>abort("'syscallMmap2' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"syscallMunmap"))Module["syscallMunmap"]=(()=>abort("'syscallMunmap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getSocketFromFD"))Module["getSocketFromFD"]=(()=>abort("'getSocketFromFD' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getSocketAddress"))Module["getSocketAddress"]=(()=>abort("'getSocketAddress' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"JSEvents"))Module["JSEvents"]=(()=>abort("'JSEvents' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerKeyEventCallback"))Module["registerKeyEventCallback"]=(()=>abort("'registerKeyEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"specialHTMLTargets"))Module["specialHTMLTargets"]=(()=>abort("'specialHTMLTargets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"maybeCStringToJsString"))Module["maybeCStringToJsString"]=(()=>abort("'maybeCStringToJsString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"findEventTarget"))Module["findEventTarget"]=(()=>abort("'findEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"findCanvasEventTarget"))Module["findCanvasEventTarget"]=(()=>abort("'findCanvasEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getBoundingClientRect"))Module["getBoundingClientRect"]=(()=>abort("'getBoundingClientRect' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillMouseEventData"))Module["fillMouseEventData"]=(()=>abort("'fillMouseEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerMouseEventCallback"))Module["registerMouseEventCallback"]=(()=>abort("'registerMouseEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerWheelEventCallback"))Module["registerWheelEventCallback"]=(()=>abort("'registerWheelEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerUiEventCallback"))Module["registerUiEventCallback"]=(()=>abort("'registerUiEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerFocusEventCallback"))Module["registerFocusEventCallback"]=(()=>abort("'registerFocusEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillDeviceOrientationEventData"))Module["fillDeviceOrientationEventData"]=(()=>abort("'fillDeviceOrientationEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerDeviceOrientationEventCallback"))Module["registerDeviceOrientationEventCallback"]=(()=>abort("'registerDeviceOrientationEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillDeviceMotionEventData"))Module["fillDeviceMotionEventData"]=(()=>abort("'fillDeviceMotionEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerDeviceMotionEventCallback"))Module["registerDeviceMotionEventCallback"]=(()=>abort("'registerDeviceMotionEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"screenOrientation"))Module["screenOrientation"]=(()=>abort("'screenOrientation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillOrientationChangeEventData"))Module["fillOrientationChangeEventData"]=(()=>abort("'fillOrientationChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerOrientationChangeEventCallback"))Module["registerOrientationChangeEventCallback"]=(()=>abort("'registerOrientationChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillFullscreenChangeEventData"))Module["fillFullscreenChangeEventData"]=(()=>abort("'fillFullscreenChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerFullscreenChangeEventCallback"))Module["registerFullscreenChangeEventCallback"]=(()=>abort("'registerFullscreenChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerRestoreOldStyle"))Module["registerRestoreOldStyle"]=(()=>abort("'registerRestoreOldStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"hideEverythingExceptGivenElement"))Module["hideEverythingExceptGivenElement"]=(()=>abort("'hideEverythingExceptGivenElement' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"restoreHiddenElements"))Module["restoreHiddenElements"]=(()=>abort("'restoreHiddenElements' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setLetterbox"))Module["setLetterbox"]=(()=>abort("'setLetterbox' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"currentFullscreenStrategy"))Module["currentFullscreenStrategy"]=(()=>abort("'currentFullscreenStrategy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"restoreOldWindowedStyle"))Module["restoreOldWindowedStyle"]=(()=>abort("'restoreOldWindowedStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"softFullscreenResizeWebGLRenderTarget"))Module["softFullscreenResizeWebGLRenderTarget"]=(()=>abort("'softFullscreenResizeWebGLRenderTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"doRequestFullscreen"))Module["doRequestFullscreen"]=(()=>abort("'doRequestFullscreen' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillPointerlockChangeEventData"))Module["fillPointerlockChangeEventData"]=(()=>abort("'fillPointerlockChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerPointerlockChangeEventCallback"))Module["registerPointerlockChangeEventCallback"]=(()=>abort("'registerPointerlockChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerPointerlockErrorEventCallback"))Module["registerPointerlockErrorEventCallback"]=(()=>abort("'registerPointerlockErrorEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"requestPointerLock"))Module["requestPointerLock"]=(()=>abort("'requestPointerLock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillVisibilityChangeEventData"))Module["fillVisibilityChangeEventData"]=(()=>abort("'fillVisibilityChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerVisibilityChangeEventCallback"))Module["registerVisibilityChangeEventCallback"]=(()=>abort("'registerVisibilityChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerTouchEventCallback"))Module["registerTouchEventCallback"]=(()=>abort("'registerTouchEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillGamepadEventData"))Module["fillGamepadEventData"]=(()=>abort("'fillGamepadEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerGamepadEventCallback"))Module["registerGamepadEventCallback"]=(()=>abort("'registerGamepadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerBeforeUnloadEventCallback"))Module["registerBeforeUnloadEventCallback"]=(()=>abort("'registerBeforeUnloadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"fillBatteryEventData"))Module["fillBatteryEventData"]=(()=>abort("'fillBatteryEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"battery"))Module["battery"]=(()=>abort("'battery' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"registerBatteryEventCallback"))Module["registerBatteryEventCallback"]=(()=>abort("'registerBatteryEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setCanvasElementSize"))Module["setCanvasElementSize"]=(()=>abort("'setCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getCanvasElementSize"))Module["getCanvasElementSize"]=(()=>abort("'getCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"demangle"))Module["demangle"]=(()=>abort("'demangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"demangleAll"))Module["demangleAll"]=(()=>abort("'demangleAll' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"jsStackTrace"))Module["jsStackTrace"]=(()=>abort("'jsStackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=(()=>abort("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getEnvStrings"))Module["getEnvStrings"]=(()=>abort("'getEnvStrings' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"checkWasiClock"))Module["checkWasiClock"]=(()=>abort("'checkWasiClock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"flush_NO_FILESYSTEM"))Module["flush_NO_FILESYSTEM"]=(()=>abort("'flush_NO_FILESYSTEM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64"))Module["writeI53ToI64"]=(()=>abort("'writeI53ToI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64Clamped"))Module["writeI53ToI64Clamped"]=(()=>abort("'writeI53ToI64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64Signaling"))Module["writeI53ToI64Signaling"]=(()=>abort("'writeI53ToI64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToU64Clamped"))Module["writeI53ToU64Clamped"]=(()=>abort("'writeI53ToU64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToU64Signaling"))Module["writeI53ToU64Signaling"]=(()=>abort("'writeI53ToU64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readI53FromI64"))Module["readI53FromI64"]=(()=>abort("'readI53FromI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"readI53FromU64"))Module["readI53FromU64"]=(()=>abort("'readI53FromU64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"convertI32PairToI53"))Module["convertI32PairToI53"]=(()=>abort("'convertI32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"convertU32PairToI53"))Module["convertU32PairToI53"]=(()=>abort("'convertU32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setImmediateWrapped"))Module["setImmediateWrapped"]=(()=>abort("'setImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"clearImmediateWrapped"))Module["clearImmediateWrapped"]=(()=>abort("'clearImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"polyfillSetImmediate"))Module["polyfillSetImmediate"]=(()=>abort("'polyfillSetImmediate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"uncaughtExceptionCount"))Module["uncaughtExceptionCount"]=(()=>abort("'uncaughtExceptionCount' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"exceptionLast"))Module["exceptionLast"]=(()=>abort("'exceptionLast' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"exceptionCaught"))Module["exceptionCaught"]=(()=>abort("'exceptionCaught' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ExceptionInfo"))Module["ExceptionInfo"]=(()=>abort("'ExceptionInfo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"CatchInfo"))Module["CatchInfo"]=(()=>abort("'CatchInfo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"exception_addRef"))Module["exception_addRef"]=(()=>abort("'exception_addRef' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"exception_decRef"))Module["exception_decRef"]=(()=>abort("'exception_decRef' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"Browser"))Module["Browser"]=(()=>abort("'Browser' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"funcWrappers"))Module["funcWrappers"]=(()=>abort("'funcWrappers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=(()=>abort("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"setMainLoop"))Module["setMainLoop"]=(()=>abort("'setMainLoop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"wget"))Module["wget"]=(()=>abort("'wget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"tempFixedLengthArray"))Module["tempFixedLengthArray"]=(()=>abort("'tempFixedLengthArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"miniTempWebGLFloatBuffers"))Module["miniTempWebGLFloatBuffers"]=(()=>abort("'miniTempWebGLFloatBuffers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"heapObjectForWebGLType"))Module["heapObjectForWebGLType"]=(()=>abort("'heapObjectForWebGLType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"heapAccessShiftForWebGLHeap"))Module["heapAccessShiftForWebGLHeap"]=(()=>abort("'heapAccessShiftForWebGLHeap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GL"))Module["GL"]=(()=>abort("'GL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGet"))Module["emscriptenWebGLGet"]=(()=>abort("'emscriptenWebGLGet' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"computeUnpackAlignedImageSize"))Module["computeUnpackAlignedImageSize"]=(()=>abort("'computeUnpackAlignedImageSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetTexPixelData"))Module["emscriptenWebGLGetTexPixelData"]=(()=>abort("'emscriptenWebGLGetTexPixelData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetUniform"))Module["emscriptenWebGLGetUniform"]=(()=>abort("'emscriptenWebGLGetUniform' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"webglGetUniformLocation"))Module["webglGetUniformLocation"]=(()=>abort("'webglGetUniformLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"webglPrepareUniformLocationsBeforeFirstUse"))Module["webglPrepareUniformLocationsBeforeFirstUse"]=(()=>abort("'webglPrepareUniformLocationsBeforeFirstUse' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"webglGetLeftBracePos"))Module["webglGetLeftBracePos"]=(()=>abort("'webglGetLeftBracePos' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetVertexAttrib"))Module["emscriptenWebGLGetVertexAttrib"]=(()=>abort("'emscriptenWebGLGetVertexAttrib' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"writeGLArray"))Module["writeGLArray"]=(()=>abort("'writeGLArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"AL"))Module["AL"]=(()=>abort("'AL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL_unicode"))Module["SDL_unicode"]=(()=>abort("'SDL_unicode' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL_ttfContext"))Module["SDL_ttfContext"]=(()=>abort("'SDL_ttfContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL_audio"))Module["SDL_audio"]=(()=>abort("'SDL_audio' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL"))Module["SDL"]=(()=>abort("'SDL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"SDL_gfx"))Module["SDL_gfx"]=(()=>abort("'SDL_gfx' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GLUT"))Module["GLUT"]=(()=>abort("'GLUT' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"EGL"))Module["EGL"]=(()=>abort("'EGL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GLFW_Window"))Module["GLFW_Window"]=(()=>abort("'GLFW_Window' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GLFW"))Module["GLFW"]=(()=>abort("'GLFW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"GLEW"))Module["GLEW"]=(()=>abort("'GLEW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"IDBStore"))Module["IDBStore"]=(()=>abort("'IDBStore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"runAndAbortIfError"))Module["runAndAbortIfError"]=(()=>abort("'runAndAbortIfError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"warnOnce"))Module["warnOnce"]=(()=>abort("'warnOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackSave"))Module["stackSave"]=(()=>abort("'stackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackRestore"))Module["stackRestore"]=(()=>abort("'stackRestore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stackAlloc"))Module["stackAlloc"]=(()=>abort("'stackAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"AsciiToString"))Module["AsciiToString"]=(()=>abort("'AsciiToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToAscii"))Module["stringToAscii"]=(()=>abort("'stringToAscii' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UTF16ToString"))Module["UTF16ToString"]=(()=>abort("'UTF16ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF16"))Module["stringToUTF16"]=(()=>abort("'stringToUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF16"))Module["lengthBytesUTF16"]=(()=>abort("'lengthBytesUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"UTF32ToString"))Module["UTF32ToString"]=(()=>abort("'UTF32ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF32"))Module["stringToUTF32"]=(()=>abort("'stringToUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF32"))Module["lengthBytesUTF32"]=(()=>abort("'lengthBytesUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8"))Module["allocateUTF8"]=(()=>abort("'allocateUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8OnStack"))Module["allocateUTF8OnStack"]=(()=>abort("'allocateUTF8OnStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));Module["writeStackCookie"]=writeStackCookie;Module["checkStackCookie"]=checkStackCookie;if(!Object.getOwnPropertyDescriptor(Module,"intArrayFromBase64"))Module["intArrayFromBase64"]=(()=>abort("'intArrayFromBase64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"tryParseAsDataURI"))Module["tryParseAsDataURI"]=(()=>abort("'tryParseAsDataURI' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)"));if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NORMAL"))Object.defineProperty(Module,"ALLOC_NORMAL",{configurable:true,get:function(){abort("'ALLOC_NORMAL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_STACK"))Object.defineProperty(Module,"ALLOC_STACK",{configurable:true,get:function(){abort("'ALLOC_STACK' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function stackCheckInit(){_emscripten_stack_init();writeStackCookie()}function run(args){args=args||arguments_;if(runDependencies>0){return}stackCheckInit();preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}Module["run"]=run;function checkUnflushedContent(){var oldOut=out;var oldErr=err;var has=false;out=err=(x=>{has=true});try{var flush=null;if(flush)flush()}catch(e){}out=oldOut;err=oldErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.");warnOnce("(this may also be due to not including full filesystem support - try building with -s FORCE_FILESYSTEM=1)")}}function procExit(code){EXITSTATUS=code;if(!keepRuntimeAlive()){if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i>>0,$jscomp.propertyToPolyfillSymbol[l]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(l):$jscomp.POLYFILL_PREFIX+n+"$"+l),$jscomp.defineProperty(t,$jscomp.propertyToPolyfillSymbol[l],{configurable:!0,writable:!0,value:m})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(q,m){for(var n=1;n>>16&65535)*l+t*(n>>>16&65535)<<16>>>0)|0}},"es6","es3"); +$jscomp.polyfill("Math.fround",function(q){if(q)return q;if($jscomp.SIMPLE_FROUND_POLYFILL||"function"!==typeof Float32Array)return function(n){return n};var m=new Float32Array(1);return function(n){m[0]=n;return m[0]}},"es6","es3"); +$jscomp.polyfill("Math.clz32",function(q){return q?q:function(m){m=Number(m)>>>0;if(0===m)return 32;var n=0;0===(m&4294901760)&&(m<<=16,n+=16);0===(m&4278190080)&&(m<<=8,n+=8);0===(m&4026531840)&&(m<<=4,n+=4);0===(m&3221225472)&&(m<<=2,n+=2);0===(m&2147483648)&&n++;return n}},"es6","es3");$jscomp.polyfill("Math.trunc",function(q){return q?q:function(m){m=Number(m);if(isNaN(m)||Infinity===m||-Infinity===m||0===m)return m;var n=Math.floor(Math.abs(m));return 0>m?-n:n}},"es6","es3"); +$jscomp.checkStringArgs=function(q,m,n){if(null==q)throw new TypeError("The 'this' value for String.prototype."+n+" must not be null or undefined");if(m instanceof RegExp)throw new TypeError("First argument to String.prototype."+n+" must not be a regular expression");return q+""}; +$jscomp.polyfill("String.prototype.startsWith",function(q){return q?q:function(m,n){var t=$jscomp.checkStringArgs(this,m,"startsWith");m+="";var l=t.length,D=m.length;n=Math.max(0,Math.min(n|0,t.length));for(var p=0;p=D}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(q){function m(n){n=Number(n);return Infinity===n||-Infinity===n?n:n|0}return q?q:function(n,t,l){var D=this.length;n=m(n);t=m(t);l=void 0===l?D:m(l);n=0>n?Math.max(D+n,0):Math.min(n,D);t=0>t?Math.max(D+t,0):Math.min(t,D);l=0>l?Math.max(D+l,0):Math.min(l,D);if(nt;)--l in this?this[--n]=this[l]:delete this[--n];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(q){return q?q:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +$jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var DracoEncoderModule=function(){var q="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(q=q||__filename);return function(m){function n(f){return a.locateFile?a.locateFile(f,P):P+f}function t(f){t.shown||(t.shown={});t.shown[f]||(t.shown[f]=1,I(f))}function l(f,c){f||b("Assertion failed"+(c?": "+c:""))}function D(f){sa=f;a.HEAP8=S=new Int8Array(f);a.HEAP16=ta=new Int16Array(f);a.HEAP32=G=new Int32Array(f);a.HEAPU8=ua=new Uint8Array(f); +a.HEAPU16=new Uint16Array(f);a.HEAPU32=va=new Uint32Array(f);a.HEAPF32=wa=new Float32Array(f);a.HEAPF64=new Float64Array(f)}function p(){var f=xa();l(0==(f&3));G[f+4>>2]=34821223;G[f+8>>2]=2310721022;G[0]=1668509029}function u(){if(!ja){var f=xa(),c=va[f+4>>2];f=va[f+8>>2];34821223==c&&2310721022==f||b("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x2135467, but received 0x"+f.toString(16)+" 0x"+c.toString(16));1668509029!==G[0]&&b("Runtime error: The application has corrupted its heap memory area (address zero)!")}} +function x(f){U++;a.monitorRunDependencies&&a.monitorRunDependencies(U);f?(l(!ba[f]),ba[f]=1,null===V&&"undefined"!==typeof setInterval&&(V=setInterval(function(){if(ja)clearInterval(V),V=null;else{var c=!1,d;for(d in ba)c||(c=!0,I("still waiting on run dependencies:")),I("dependency: "+d);c&&I("(end of list)")}},1E4))):I("warning: run dependency added without ID")}function b(f){if(a.onAbort)a.onAbort(f);f="Aborted("+f+")";I(f);ja=!0;f=new WebAssembly.RuntimeError(f);ya(f);throw f;}function k(f,c){return function(){var d= +c;c||(d=a.asm);l(ka,"native function `"+f+"` called before runtime initialization");l(!Sa,"native function `"+f+"` called after runtime exit (use NO_EXIT_RUNTIME to keep it alive after main() exits)");d[f]||l(d[f],"exported native function `"+f+"` not found");return d[f].apply(null,arguments)}}function Y(f){try{if(f==H&&ca)return new Uint8Array(ca);if(da)return da(f);throw"both async and sync fetching of the wasm failed";}catch(c){b(c)}}function N(){if(!ca&&(za||Z)){if("function"===typeof fetch&& +!H.startsWith("file://"))return fetch(H,{credentials:"same-origin"}).then(function(f){if(!f.ok)throw"failed to load wasm binary file at '"+H+"'";return f.arrayBuffer()}).catch(function(){return Y(H)});if(la)return new Promise(function(f,c){la(H,function(d){f(new Uint8Array(d))},c)})}return Promise.resolve().then(function(){return Y(H)})}function O(f){for(;0=ma.length&&(ma.length=f+1),ma[f]=c=na.get(f));l(na.get(f)==c,"JavaScript-side Wasm function table mirror is out of date!");return c}function aa(f){this.excPtr=f;this.ptr=f-16;this.set_type=function(c){G[this.ptr+4>>2]=c};this.get_type=function(){return G[this.ptr+4>>2]};this.set_destructor=function(c){G[this.ptr+8>>2]=c};this.get_destructor=function(){return G[this.ptr+8>>2]};this.set_refcount=function(c){G[this.ptr>>2]=c};this.set_caught=function(c){S[this.ptr+ +12>>0]=c?1:0};this.get_caught=function(){return 0!=S[this.ptr+12>>0]};this.set_rethrown=function(c){S[this.ptr+13>>0]=c?1:0};this.get_rethrown=function(){return 0!=S[this.ptr+13>>0]};this.init=function(c,d){this.set_type(c);this.set_destructor(d);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){G[this.ptr>>2]+=1};this.release_ref=function(){var c=G[this.ptr>>2];G[this.ptr>>2]=c-1;l(0=e&&(e=65536+((e&1023)<<10)|f.charCodeAt(++d)&1023);127>=e?++c:c=2047>=e?c+2:65535>=e?c+3:c+4}c=Array(c+1);d=0;e=c.length;if(0=h){var v=f.charCodeAt(++g);h=65536+((h&1023)<<10)|v&1023}if(127>=h){if(d>=e)break;c[d++]=h}else{if(2047>=h){if(d+1>=e)break;c[d++]=192|h>>6}else{if(65535>=h){if(d+2>=e)break;c[d++]=224|h>>12}else{if(d+3>=e)break;1114111>18;c[d++]=128|h>>12&63}c[d++]=128|h>>6&63}c[d++]= +128|h&63}}c[d]=0}f=r.alloc(c,S);r.copy(c,S,f);return f}return f}function pa(f){if("object"===typeof f){var c=r.alloc(f,S);r.copy(f,S,c);return c}return f}function qa(f){if("object"===typeof f){var c=r.alloc(f,ta);r.copy(f,ta,c);return c}return f}function W(f){if("object"===typeof f){var c=r.alloc(f,G);r.copy(f,G,c);return c}return f}function fa(f){if("object"===typeof f){var c=r.alloc(f,wa);r.copy(f,wa,c);return c}return f}function T(){throw"cannot construct a VoidPtr, no constructor in IDL";}function Q(){this.ptr= +Ta();J(Q)[this.ptr]=this}function A(){this.ptr=Ua();J(A)[this.ptr]=this}function K(){this.ptr=Va();J(K)[this.ptr]=this}function E(){this.ptr=Wa();J(E)[this.ptr]=this}function R(){this.ptr=Xa();J(R)[this.ptr]=this}function L(){this.ptr=Ya();J(L)[this.ptr]=this}function F(){this.ptr=Za();J(F)[this.ptr]=this}function y(){this.ptr=$a();J(y)[this.ptr]=this}function w(){this.ptr=ab();J(w)[this.ptr]=this}function z(){this.ptr=bb();J(z)[this.ptr]=this}function B(f){f&&"object"===typeof f&&(f=f.ptr);this.ptr= +cb(f);J(B)[this.ptr]=this}m=m||{};var a="undefined"!==typeof m?m:{},Ka=Object.assign,Ga,ya;a.ready=new Promise(function(f,c){Ga=f;ya=c});Object.getOwnPropertyDescriptor(a.ready,"_free")||(Object.defineProperty(a.ready,"_free",{configurable:!0,get:function(){b("You are getting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_free",{configurable:!0,set:function(){b("You are setting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_malloc")||(Object.defineProperty(a.ready,"_malloc",{configurable:!0,get:function(){b("You are getting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_malloc",{configurable:!0,set:function(){b("You are setting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_VoidPtr___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_VoidPtr___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_VoidPtr___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_VoidPtr___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_VoidPtr___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_GeometryAttribute_GeometryAttribute_0")||(Object.defineProperty(a.ready,"_emscripten_bind_GeometryAttribute_GeometryAttribute_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_GeometryAttribute_GeometryAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_GeometryAttribute_GeometryAttribute_0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_GeometryAttribute_GeometryAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_GeometryAttribute___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_GeometryAttribute___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_GeometryAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_GeometryAttribute___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_GeometryAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_PointAttribute_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_PointAttribute_0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_PointAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_PointAttribute_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_PointAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_attribute_type_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_attribute_type_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_attribute_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_attribute_type_0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_attribute_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_data_type_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_data_type_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_data_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_data_type_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_data_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_num_components_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_num_components_0",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_PointAttribute_num_components_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_num_components_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_num_components_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_normalized_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_normalized_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_normalized_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_normalized_0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_PointAttribute_normalized_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_byte_stride_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_byte_stride_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_byte_stride_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_byte_stride_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_byte_stride_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_byte_offset_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_byte_offset_0",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_PointAttribute_byte_offset_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_byte_offset_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_byte_offset_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_unique_id_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_unique_id_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_unique_id_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_unique_id_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_unique_id_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_PointAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloud_PointCloud_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_PointCloud_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloud_PointCloud_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_PointCloud_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloud_PointCloud_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloud_num_attributes_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_num_attributes_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloud_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_num_attributes_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloud_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloud_num_points_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_num_points_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloud_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_num_points_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloud_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloud___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloud___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloud___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloud___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloud___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_Mesh_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_Mesh_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_Mesh_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_Mesh_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_Mesh_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_num_faces_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_faces_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_num_faces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_faces_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_num_faces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_num_attributes_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_attributes_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_attributes_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_num_points_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_points_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_points_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_set_num_points_1")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_set_num_points_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_set_num_points_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_set_num_points_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_set_num_points_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Metadata_Metadata_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Metadata_Metadata_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Metadata_Metadata_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Metadata_Metadata_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Metadata_Metadata_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Metadata___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_Metadata___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Metadata___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Metadata___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Metadata___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt8Array_DracoInt8Array_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_DracoInt8Array_0",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_DracoInt8Array_DracoInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_DracoInt8Array_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt8Array_DracoInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt8Array_GetValue_1")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_GetValue_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_GetValue_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt8Array_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt8Array___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_DracoInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataBuilder_MetadataBuilder_0")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_MetadataBuilder_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataBuilder_MetadataBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_MetadataBuilder_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataBuilder_MetadataBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataBuilder_AddStringEntry_3")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_AddStringEntry_3", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataBuilder_AddStringEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_AddStringEntry_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataBuilder_AddStringEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataBuilder_AddIntEntry_3")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_AddIntEntry_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataBuilder_AddIntEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_AddIntEntry_3",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_MetadataBuilder_AddIntEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataBuilder_AddIntEntryArray_4")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_AddIntEntryArray_4",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataBuilder_AddIntEntryArray_4 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_AddIntEntryArray_4",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataBuilder_AddIntEntryArray_4 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataBuilder_AddDoubleEntry_3")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_AddDoubleEntry_3", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataBuilder_AddDoubleEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder_AddDoubleEntry_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataBuilder_AddDoubleEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataBuilder___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataBuilder___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_MetadataBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_PointCloudBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_PointCloudBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_AddFloatAttribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_AddFloatAttribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_AddInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_AddInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_AddInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_AddInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_AddInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_AddInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_AddMetadata_2")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddMetadata_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_AddMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_AddMetadata_2", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_AddMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloudBuilder___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder___destroy___0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloudBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointCloudBuilder___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloudBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_MeshBuilder_0")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_MeshBuilder_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_MeshBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_MeshBuilder_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_MeshBuilder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddFacesToMesh_3")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddFacesToMesh_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddFacesToMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddFacesToMesh_3",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddFacesToMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddMetadataToMesh_2")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddMetadataToMesh_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddMetadataToMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddMetadataToMesh_2", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddMetadataToMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddFloatAttribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddFloatAttribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddFloatAttribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddFloatAttribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddFloatAttribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddInt8Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddInt8Attribute_5", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddInt8Attribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddUInt8Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddUInt8Attribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddUInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddUInt8Attribute_5", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddUInt8Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddInt16Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddInt16Attribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddInt16Attribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddUInt16Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddUInt16Attribute_5", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddUInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddUInt16Attribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddUInt16Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddInt32Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddInt32Attribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddInt32Attribute_5", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddUInt32Attribute_5")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddUInt32Attribute_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddUInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddUInt32Attribute_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddUInt32Attribute_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_AddMetadata_2")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddMetadata_2",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_MeshBuilder_AddMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_AddMetadata_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_AddMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder_SetMetadataForAttribute_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder_SetMetadataForAttribute_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MeshBuilder___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MeshBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MeshBuilder___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MeshBuilder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_Encoder_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_Encoder_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_Encoder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Encoder_Encoder_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_Encoder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_SetEncodingMethod_1")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetEncodingMethod_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_SetEncodingMethod_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetEncodingMethod_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_SetEncodingMethod_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_SetAttributeQuantization_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetAttributeQuantization_2", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_SetAttributeQuantization_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetAttributeQuantization_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_SetAttributeQuantization_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_SetAttributeExplicitQuantization_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_SetAttributeExplicitQuantization_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_SetSpeedOptions_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetSpeedOptions_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_SetSpeedOptions_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetSpeedOptions_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_SetSpeedOptions_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_SetTrackEncodedProperties_1")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetTrackEncodedProperties_1",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_Encoder_SetTrackEncodedProperties_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Encoder_SetTrackEncodedProperties_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_SetTrackEncodedProperties_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_GetNumberOfEncodedPoints_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_GetNumberOfEncodedPoints_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder_GetNumberOfEncodedFaces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder_GetNumberOfEncodedFaces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Encoder___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_Encoder___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Encoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Encoder___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Encoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_ExpertEncoder_1")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_ExpertEncoder_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_ExpertEncoder_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_ExpertEncoder_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_ExpertEncoder_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_SetEncodingMethod_1")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetEncodingMethod_1", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_SetEncodingMethod_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetEncodingMethod_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_SetEncodingMethod_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_SetAttributeQuantization_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_SetAttributeQuantization_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5",{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_SetSpeedOptions_2")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetSpeedOptions_2", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_SetSpeedOptions_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetSpeedOptions_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_SetSpeedOptions_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_ExpertEncoder___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_ExpertEncoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_ExpertEncoder___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_ExpertEncoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_INVALID")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_INVALID", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_INVALID",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_POSITION")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_POSITION",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_POSITION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_POSITION", +{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_POSITION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_NORMAL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_NORMAL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_COLOR")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_COLOR", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_COLOR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_COLOR",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_COLOR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD", +{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_GENERIC on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_GENERIC on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD", +{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready, +"_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"onRuntimeInitialized")||(Object.defineProperty(a.ready,"onRuntimeInitialized",{configurable:!0,get:function(){b("You are getting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"onRuntimeInitialized",{configurable:!0,set:function(){b("You are setting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));var La=!1,Ma=!1;a.onRuntimeInitialized=function(){La=!0;if(Ma&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ma=!0;if(La&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported= +function(f){if("string"!==typeof f)return!1;f=f.split(".");return 2>f.length||3=f[1]?!0:0!=f[0]||10>>=0;l(f>c);if(2147483648=d;d*=2){var e=c*(1+.2/d);e=Math.min(e,f+100663296);var g=Math,h=g.min;e=Math.max(f,e);0>>16);D(ha.buffer);var v=1;break a}catch(fb){I("emscripten_realloc_buffer: Attempted to grow heap from "+sa.byteLength+ +" bytes to "+h+" bytes, but got error: "+fb)}v=void 0}if(v)return!0}I("Failed to grow the heap from "+c+" bytes to "+g+" bytes, not enough memory!");return!1}};(function(){function f(h,v){a.asm=h.exports;ha=a.asm.memory;l(ha,"memory not found in wasm exports");D(ha.buffer);na=a.asm.__indirect_function_table;l(na,"table not found in wasm exports");Ba.unshift(a.asm.__wasm_call_ctors);U--;a.monitorRunDependencies&&a.monitorRunDependencies(U);l(ba["wasm-instantiate"]);delete ba["wasm-instantiate"];0== +U&&(null!==V&&(clearInterval(V),V=null),ia&&(h=ia,ia=null,h()))}function c(h){l(a===g,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");g=null;f(h.instance)}function d(h){return N().then(function(v){return WebAssembly.instantiate(v,e)}).then(function(v){return v}).then(h,function(v){I("failed to asynchronously prepare wasm: "+v);H.startsWith("file://")&&I("warning: Loading from a file URI ("+H+") is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing"); +b(v)})}var e={env:Ra,wasi_snapshot_preview1:Ra};x("wasm-instantiate");var g=a;if(a.instantiateWasm)try{return a.instantiateWasm(e,f)}catch(h){return I("Module.instantiateWasm callback failed with error: "+h),!1}(function(){return ca||"function"!==typeof WebAssembly.instantiateStreaming||H.startsWith("data:application/octet-stream;base64,")||H.startsWith("file://")||"function"!==typeof fetch?d(c):fetch(H,{credentials:"same-origin"}).then(function(h){return WebAssembly.instantiateStreaming(h,e).then(c, +function(v){I("wasm streaming compile failed: "+v);I("falling back to ArrayBuffer instantiation");return d(c)})})})().catch(ya);return{}})();a.___wasm_call_ctors=k("__wasm_call_ctors");var gb=a._emscripten_bind_VoidPtr___destroy___0=k("emscripten_bind_VoidPtr___destroy___0"),Ta=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=k("emscripten_bind_GeometryAttribute_GeometryAttribute_0"),hb=a._emscripten_bind_GeometryAttribute___destroy___0=k("emscripten_bind_GeometryAttribute___destroy___0"), +Ua=a._emscripten_bind_PointAttribute_PointAttribute_0=k("emscripten_bind_PointAttribute_PointAttribute_0"),ib=a._emscripten_bind_PointAttribute_size_0=k("emscripten_bind_PointAttribute_size_0"),jb=a._emscripten_bind_PointAttribute_attribute_type_0=k("emscripten_bind_PointAttribute_attribute_type_0"),kb=a._emscripten_bind_PointAttribute_data_type_0=k("emscripten_bind_PointAttribute_data_type_0"),lb=a._emscripten_bind_PointAttribute_num_components_0=k("emscripten_bind_PointAttribute_num_components_0"), +mb=a._emscripten_bind_PointAttribute_normalized_0=k("emscripten_bind_PointAttribute_normalized_0"),nb=a._emscripten_bind_PointAttribute_byte_stride_0=k("emscripten_bind_PointAttribute_byte_stride_0"),ob=a._emscripten_bind_PointAttribute_byte_offset_0=k("emscripten_bind_PointAttribute_byte_offset_0"),pb=a._emscripten_bind_PointAttribute_unique_id_0=k("emscripten_bind_PointAttribute_unique_id_0"),qb=a._emscripten_bind_PointAttribute___destroy___0=k("emscripten_bind_PointAttribute___destroy___0"),Va= +a._emscripten_bind_PointCloud_PointCloud_0=k("emscripten_bind_PointCloud_PointCloud_0"),rb=a._emscripten_bind_PointCloud_num_attributes_0=k("emscripten_bind_PointCloud_num_attributes_0"),sb=a._emscripten_bind_PointCloud_num_points_0=k("emscripten_bind_PointCloud_num_points_0"),tb=a._emscripten_bind_PointCloud___destroy___0=k("emscripten_bind_PointCloud___destroy___0"),Wa=a._emscripten_bind_Mesh_Mesh_0=k("emscripten_bind_Mesh_Mesh_0"),ub=a._emscripten_bind_Mesh_num_faces_0=k("emscripten_bind_Mesh_num_faces_0"), +vb=a._emscripten_bind_Mesh_num_attributes_0=k("emscripten_bind_Mesh_num_attributes_0"),wb=a._emscripten_bind_Mesh_num_points_0=k("emscripten_bind_Mesh_num_points_0"),xb=a._emscripten_bind_Mesh_set_num_points_1=k("emscripten_bind_Mesh_set_num_points_1"),yb=a._emscripten_bind_Mesh___destroy___0=k("emscripten_bind_Mesh___destroy___0"),Xa=a._emscripten_bind_Metadata_Metadata_0=k("emscripten_bind_Metadata_Metadata_0"),zb=a._emscripten_bind_Metadata___destroy___0=k("emscripten_bind_Metadata___destroy___0"), +Ya=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=k("emscripten_bind_DracoInt8Array_DracoInt8Array_0"),Ab=a._emscripten_bind_DracoInt8Array_GetValue_1=k("emscripten_bind_DracoInt8Array_GetValue_1"),Bb=a._emscripten_bind_DracoInt8Array_size_0=k("emscripten_bind_DracoInt8Array_size_0"),Cb=a._emscripten_bind_DracoInt8Array___destroy___0=k("emscripten_bind_DracoInt8Array___destroy___0"),Za=a._emscripten_bind_MetadataBuilder_MetadataBuilder_0=k("emscripten_bind_MetadataBuilder_MetadataBuilder_0"), +Db=a._emscripten_bind_MetadataBuilder_AddStringEntry_3=k("emscripten_bind_MetadataBuilder_AddStringEntry_3"),Eb=a._emscripten_bind_MetadataBuilder_AddIntEntry_3=k("emscripten_bind_MetadataBuilder_AddIntEntry_3"),Fb=a._emscripten_bind_MetadataBuilder_AddIntEntryArray_4=k("emscripten_bind_MetadataBuilder_AddIntEntryArray_4"),Gb=a._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=k("emscripten_bind_MetadataBuilder_AddDoubleEntry_3"),Hb=a._emscripten_bind_MetadataBuilder___destroy___0=k("emscripten_bind_MetadataBuilder___destroy___0"), +$a=a._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=k("emscripten_bind_PointCloudBuilder_PointCloudBuilder_0"),Ib=a._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=k("emscripten_bind_PointCloudBuilder_AddFloatAttribute_5"),Jb=a._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=k("emscripten_bind_PointCloudBuilder_AddInt8Attribute_5"),Kb=a._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=k("emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5"),Lb=a._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5= +k("emscripten_bind_PointCloudBuilder_AddInt16Attribute_5"),Mb=a._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=k("emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5"),Nb=a._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=k("emscripten_bind_PointCloudBuilder_AddInt32Attribute_5"),Ob=a._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=k("emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5"),Pb=a._emscripten_bind_PointCloudBuilder_AddMetadata_2=k("emscripten_bind_PointCloudBuilder_AddMetadata_2"), +Qb=a._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=k("emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3"),Rb=a._emscripten_bind_PointCloudBuilder___destroy___0=k("emscripten_bind_PointCloudBuilder___destroy___0"),ab=a._emscripten_bind_MeshBuilder_MeshBuilder_0=k("emscripten_bind_MeshBuilder_MeshBuilder_0"),Sb=a._emscripten_bind_MeshBuilder_AddFacesToMesh_3=k("emscripten_bind_MeshBuilder_AddFacesToMesh_3"),Tb=a._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=k("emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5"), +Ub=a._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=k("emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5"),Vb=a._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=k("emscripten_bind_MeshBuilder_AddMetadataToMesh_2"),Wb=a._emscripten_bind_MeshBuilder_AddFloatAttribute_5=k("emscripten_bind_MeshBuilder_AddFloatAttribute_5"),Xb=a._emscripten_bind_MeshBuilder_AddInt8Attribute_5=k("emscripten_bind_MeshBuilder_AddInt8Attribute_5"),Yb=a._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=k("emscripten_bind_MeshBuilder_AddUInt8Attribute_5"), +Zb=a._emscripten_bind_MeshBuilder_AddInt16Attribute_5=k("emscripten_bind_MeshBuilder_AddInt16Attribute_5"),$b=a._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=k("emscripten_bind_MeshBuilder_AddUInt16Attribute_5"),ac=a._emscripten_bind_MeshBuilder_AddInt32Attribute_5=k("emscripten_bind_MeshBuilder_AddInt32Attribute_5"),bc=a._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=k("emscripten_bind_MeshBuilder_AddUInt32Attribute_5"),cc=a._emscripten_bind_MeshBuilder_AddMetadata_2=k("emscripten_bind_MeshBuilder_AddMetadata_2"), +dc=a._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=k("emscripten_bind_MeshBuilder_SetMetadataForAttribute_3"),ec=a._emscripten_bind_MeshBuilder___destroy___0=k("emscripten_bind_MeshBuilder___destroy___0"),bb=a._emscripten_bind_Encoder_Encoder_0=k("emscripten_bind_Encoder_Encoder_0"),fc=a._emscripten_bind_Encoder_SetEncodingMethod_1=k("emscripten_bind_Encoder_SetEncodingMethod_1"),gc=a._emscripten_bind_Encoder_SetAttributeQuantization_2=k("emscripten_bind_Encoder_SetAttributeQuantization_2"), +hc=a._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=k("emscripten_bind_Encoder_SetAttributeExplicitQuantization_5"),ic=a._emscripten_bind_Encoder_SetSpeedOptions_2=k("emscripten_bind_Encoder_SetSpeedOptions_2"),jc=a._emscripten_bind_Encoder_SetTrackEncodedProperties_1=k("emscripten_bind_Encoder_SetTrackEncodedProperties_1"),kc=a._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=k("emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2"),lc=a._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3= +k("emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3"),mc=a._emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=k("emscripten_bind_Encoder_GetNumberOfEncodedPoints_0"),nc=a._emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=k("emscripten_bind_Encoder_GetNumberOfEncodedFaces_0"),oc=a._emscripten_bind_Encoder___destroy___0=k("emscripten_bind_Encoder___destroy___0"),cb=a._emscripten_bind_ExpertEncoder_ExpertEncoder_1=k("emscripten_bind_ExpertEncoder_ExpertEncoder_1"),pc=a._emscripten_bind_ExpertEncoder_SetEncodingMethod_1= +k("emscripten_bind_ExpertEncoder_SetEncodingMethod_1"),qc=a._emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=k("emscripten_bind_ExpertEncoder_SetAttributeQuantization_2"),rc=a._emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=k("emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5"),sc=a._emscripten_bind_ExpertEncoder_SetSpeedOptions_2=k("emscripten_bind_ExpertEncoder_SetSpeedOptions_2"),tc=a._emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=k("emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1"), +uc=a._emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=k("emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2"),vc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=k("emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0"),wc=a._emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=k("emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0"),xc=a._emscripten_bind_ExpertEncoder___destroy___0=k("emscripten_bind_ExpertEncoder___destroy___0"),yc=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID= +k("emscripten_enum_draco_GeometryAttribute_Type_INVALID"),zc=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=k("emscripten_enum_draco_GeometryAttribute_Type_POSITION"),Ac=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=k("emscripten_enum_draco_GeometryAttribute_Type_NORMAL"),Bc=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=k("emscripten_enum_draco_GeometryAttribute_Type_COLOR"),Cc=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=k("emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"), +Dc=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=k("emscripten_enum_draco_GeometryAttribute_Type_GENERIC"),Ec=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=k("emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"),Fc=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=k("emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"),Gc=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=k("emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"), +Hc=a._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=k("emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING"),Ic=a._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=k("emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING");a.___errno_location=k("__errno_location");var eb=a._malloc=k("malloc");a._free=k("free");var Ia=a._emscripten_stack_init=function(){return(Ia=a._emscripten_stack_init=a.asm.emscripten_stack_init).apply(null,arguments)}; +a._emscripten_stack_get_free=function(){return(a._emscripten_stack_get_free=a.asm.emscripten_stack_get_free).apply(null,arguments)};var xa=a._emscripten_stack_get_end=function(){return(xa=a._emscripten_stack_get_end=a.asm.emscripten_stack_get_end).apply(null,arguments)};a.stackSave=k("stackSave");a.stackRestore=k("stackRestore");a.stackAlloc=k("stackAlloc");Object.getOwnPropertyDescriptor(a,"intArrayFromString")||(a.intArrayFromString=function(){return b("'intArrayFromString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"intArrayToString")||(a.intArrayToString=function(){return b("'intArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"ccall")||(a.ccall=function(){return b("'ccall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"cwrap")||(a.cwrap=function(){return b("'cwrap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"setValue")||(a.setValue=function(){return b("'setValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getValue")||(a.getValue=function(){return b("'getValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"allocate")||(a.allocate=function(){return b("'allocate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"UTF8ArrayToString")|| +(a.UTF8ArrayToString=function(){return b("'UTF8ArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"UTF8ToString")||(a.UTF8ToString=function(){return b("'UTF8ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToUTF8Array")||(a.stringToUTF8Array=function(){return b("'stringToUTF8Array' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"stringToUTF8")||(a.stringToUTF8=function(){return b("'stringToUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"lengthBytesUTF8")||(a.lengthBytesUTF8=function(){return b("'lengthBytesUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stackTrace")||(a.stackTrace=function(){return b("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"addOnPreRun")||(a.addOnPreRun=function(){return b("'addOnPreRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addOnInit")||(a.addOnInit=function(){return b("'addOnInit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addOnPreMain")||(a.addOnPreMain=function(){return b("'addOnPreMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"addOnExit")||(a.addOnExit=function(){return b("'addOnExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addOnPostRun")||(a.addOnPostRun=function(){return b("'addOnPostRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeStringToMemory")||(a.writeStringToMemory=function(){return b("'writeStringToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"writeArrayToMemory")||(a.writeArrayToMemory=function(){return b("'writeArrayToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeAsciiToMemory")||(a.writeAsciiToMemory=function(){return b("'writeAsciiToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addRunDependency")||(a.addRunDependency=function(){return b("'addRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}); +Object.getOwnPropertyDescriptor(a,"removeRunDependency")||(a.removeRunDependency=function(){return b("'removeRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"FS_createFolder")||(a.FS_createFolder=function(){return b("'FS_createFolder' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"FS_createPath")||(a.FS_createPath=function(){return b("'FS_createPath' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"FS_createDataFile")||(a.FS_createDataFile=function(){return b("'FS_createDataFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}); +Object.getOwnPropertyDescriptor(a,"FS_createPreloadedFile")||(a.FS_createPreloadedFile=function(){return b("'FS_createPreloadedFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"FS_createLazyFile")||(a.FS_createLazyFile=function(){return b("'FS_createLazyFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}); +Object.getOwnPropertyDescriptor(a,"FS_createLink")||(a.FS_createLink=function(){return b("'FS_createLink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"FS_createDevice")||(a.FS_createDevice=function(){return b("'FS_createDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"FS_unlink")||(a.FS_unlink= +function(){return b("'FS_unlink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"getLEB")||(a.getLEB=function(){return b("'getLEB' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getFunctionTables")||(a.getFunctionTables=function(){return b("'getFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"alignFunctionTables")||(a.alignFunctionTables=function(){return b("'alignFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerFunctions")||(a.registerFunctions=function(){return b("'registerFunctions' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addFunction")||(a.addFunction=function(){return b("'addFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"removeFunction")||(a.removeFunction=function(){return b("'removeFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getFuncWrapper")||(a.getFuncWrapper=function(){return b("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"prettyPrint")||(a.prettyPrint=function(){return b("'prettyPrint' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"dynCall")||(a.dynCall=function(){return b("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getCompilerSetting")||(a.getCompilerSetting=function(){return b("'getCompilerSetting' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"print")||(a.print=function(){return b("'print' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"printErr")||(a.printErr=function(){return b("'printErr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getTempRet0")||(a.getTempRet0=function(){return b("'getTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"setTempRet0")||(a.setTempRet0=function(){return b("'setTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"callMain")||(a.callMain=function(){return b("'callMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"abort")||(a.abort=function(){return b("'abort' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"keepRuntimeAlive")||(a.keepRuntimeAlive=function(){return b("'keepRuntimeAlive' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"zeroMemory")||(a.zeroMemory=function(){return b("'zeroMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToNewUTF8")||(a.stringToNewUTF8=function(){return b("'stringToNewUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"setFileTime")||(a.setFileTime=function(){return b("'setFileTime' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"emscripten_realloc_buffer")||(a.emscripten_realloc_buffer=function(){return b("'emscripten_realloc_buffer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"ENV")||(a.ENV=function(){return b("'ENV' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"withStackSave")||(a.withStackSave=function(){return b("'withStackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"ERRNO_CODES")||(a.ERRNO_CODES=function(){return b("'ERRNO_CODES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"ERRNO_MESSAGES")||(a.ERRNO_MESSAGES=function(){return b("'ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"setErrNo")||(a.setErrNo=function(){return b("'setErrNo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"inetPton4")||(a.inetPton4=function(){return b("'inetPton4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"inetNtop4")||(a.inetNtop4=function(){return b("'inetNtop4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"inetPton6")||(a.inetPton6=function(){return b("'inetPton6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"inetNtop6")||(a.inetNtop6=function(){return b("'inetNtop6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"readSockaddr")||(a.readSockaddr=function(){return b("'readSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeSockaddr")||(a.writeSockaddr=function(){return b("'writeSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"DNS")||(a.DNS=function(){return b("'DNS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getHostByName")||(a.getHostByName=function(){return b("'getHostByName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GAI_ERRNO_MESSAGES")||(a.GAI_ERRNO_MESSAGES=function(){return b("'GAI_ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"Protocols")||(a.Protocols=function(){return b("'Protocols' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"Sockets")||(a.Sockets=function(){return b("'Sockets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getRandomDevice")||(a.getRandomDevice=function(){return b("'getRandomDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"traverseStack")||(a.traverseStack=function(){return b("'traverseStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"convertFrameToPC")||(a.convertFrameToPC=function(){return b("'convertFrameToPC' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"UNWIND_CACHE")||(a.UNWIND_CACHE=function(){return b("'UNWIND_CACHE' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"saveInUnwindCache")||(a.saveInUnwindCache=function(){return b("'saveInUnwindCache' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"convertPCtoSourceLocation")||(a.convertPCtoSourceLocation=function(){return b("'convertPCtoSourceLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"readAsmConstArgsArray")||(a.readAsmConstArgsArray=function(){return b("'readAsmConstArgsArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"readAsmConstArgs")||(a.readAsmConstArgs=function(){return b("'readAsmConstArgs' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"mainThreadEM_ASM")||(a.mainThreadEM_ASM=function(){return b("'mainThreadEM_ASM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"jstoi_q")||(a.jstoi_q=function(){return b("'jstoi_q' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"jstoi_s")||(a.jstoi_s=function(){return b("'jstoi_s' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getExecutableName")||(a.getExecutableName=function(){return b("'getExecutableName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"listenOnce")||(a.listenOnce=function(){return b("'listenOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"autoResumeAudioContext")||(a.autoResumeAudioContext=function(){return b("'autoResumeAudioContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"dynCallLegacy")||(a.dynCallLegacy=function(){return b("'dynCallLegacy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getDynCaller")||(a.getDynCaller=function(){return b("'getDynCaller' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"dynCall")||(a.dynCall=function(){return b("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"callRuntimeCallbacks")||(a.callRuntimeCallbacks=function(){return b("'callRuntimeCallbacks' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"wasmTableMirror")||(a.wasmTableMirror=function(){return b("'wasmTableMirror' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"setWasmTableEntry")||(a.setWasmTableEntry=function(){return b("'setWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getWasmTableEntry")||(a.getWasmTableEntry=function(){return b("'getWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"handleException")||(a.handleException=function(){return b("'handleException' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"runtimeKeepalivePush")||(a.runtimeKeepalivePush=function(){return b("'runtimeKeepalivePush' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"runtimeKeepalivePop")||(a.runtimeKeepalivePop=function(){return b("'runtimeKeepalivePop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"callUserCallback")||(a.callUserCallback=function(){return b("'callUserCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"maybeExit")||(a.maybeExit=function(){return b("'maybeExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"safeSetTimeout")||(a.safeSetTimeout=function(){return b("'safeSetTimeout' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"asmjsMangle")||(a.asmjsMangle=function(){return b("'asmjsMangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"asyncLoad")||(a.asyncLoad=function(){return b("'asyncLoad' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"alignMemory")||(a.alignMemory=function(){return b("'alignMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"mmapAlloc")||(a.mmapAlloc=function(){return b("'mmapAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"reallyNegative")||(a.reallyNegative=function(){return b("'reallyNegative' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"unSign")||(a.unSign=function(){return b("'unSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"reSign")||(a.reSign=function(){return b("'reSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"formatString")||(a.formatString=function(){return b("'formatString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"PATH")||(a.PATH=function(){return b("'PATH' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"PATH_FS")||(a.PATH_FS=function(){return b("'PATH_FS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SYSCALLS")||(a.SYSCALLS= +function(){return b("'SYSCALLS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"syscallMmap2")||(a.syscallMmap2=function(){return b("'syscallMmap2' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"syscallMunmap")||(a.syscallMunmap=function(){return b("'syscallMunmap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getSocketFromFD")|| +(a.getSocketFromFD=function(){return b("'getSocketFromFD' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getSocketAddress")||(a.getSocketAddress=function(){return b("'getSocketAddress' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"JSEvents")||(a.JSEvents=function(){return b("'JSEvents' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"registerKeyEventCallback")||(a.registerKeyEventCallback=function(){return b("'registerKeyEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"specialHTMLTargets")||(a.specialHTMLTargets=function(){return b("'specialHTMLTargets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"maybeCStringToJsString")||(a.maybeCStringToJsString=function(){return b("'maybeCStringToJsString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"findEventTarget")||(a.findEventTarget=function(){return b("'findEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"findCanvasEventTarget")||(a.findCanvasEventTarget=function(){return b("'findCanvasEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getBoundingClientRect")||(a.getBoundingClientRect=function(){return b("'getBoundingClientRect' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"fillMouseEventData")||(a.fillMouseEventData=function(){return b("'fillMouseEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerMouseEventCallback")||(a.registerMouseEventCallback=function(){return b("'registerMouseEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerWheelEventCallback")||(a.registerWheelEventCallback= +function(){return b("'registerWheelEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerUiEventCallback")||(a.registerUiEventCallback=function(){return b("'registerUiEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerFocusEventCallback")||(a.registerFocusEventCallback=function(){return b("'registerFocusEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"fillDeviceOrientationEventData")||(a.fillDeviceOrientationEventData=function(){return b("'fillDeviceOrientationEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerDeviceOrientationEventCallback")||(a.registerDeviceOrientationEventCallback=function(){return b("'registerDeviceOrientationEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"fillDeviceMotionEventData")||(a.fillDeviceMotionEventData=function(){return b("'fillDeviceMotionEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerDeviceMotionEventCallback")||(a.registerDeviceMotionEventCallback=function(){return b("'registerDeviceMotionEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"screenOrientation")||(a.screenOrientation=function(){return b("'screenOrientation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"fillOrientationChangeEventData")||(a.fillOrientationChangeEventData=function(){return b("'fillOrientationChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerOrientationChangeEventCallback")||(a.registerOrientationChangeEventCallback=function(){return b("'registerOrientationChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"fillFullscreenChangeEventData")||(a.fillFullscreenChangeEventData=function(){return b("'fillFullscreenChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerFullscreenChangeEventCallback")||(a.registerFullscreenChangeEventCallback=function(){return b("'registerFullscreenChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerRestoreOldStyle")|| +(a.registerRestoreOldStyle=function(){return b("'registerRestoreOldStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"hideEverythingExceptGivenElement")||(a.hideEverythingExceptGivenElement=function(){return b("'hideEverythingExceptGivenElement' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"restoreHiddenElements")||(a.restoreHiddenElements=function(){return b("'restoreHiddenElements' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"setLetterbox")||(a.setLetterbox=function(){return b("'setLetterbox' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"currentFullscreenStrategy")||(a.currentFullscreenStrategy=function(){return b("'currentFullscreenStrategy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"restoreOldWindowedStyle")||(a.restoreOldWindowedStyle=function(){return b("'restoreOldWindowedStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"softFullscreenResizeWebGLRenderTarget")||(a.softFullscreenResizeWebGLRenderTarget=function(){return b("'softFullscreenResizeWebGLRenderTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"doRequestFullscreen")||(a.doRequestFullscreen=function(){return b("'doRequestFullscreen' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"fillPointerlockChangeEventData")|| +(a.fillPointerlockChangeEventData=function(){return b("'fillPointerlockChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerPointerlockChangeEventCallback")||(a.registerPointerlockChangeEventCallback=function(){return b("'registerPointerlockChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerPointerlockErrorEventCallback")||(a.registerPointerlockErrorEventCallback= +function(){return b("'registerPointerlockErrorEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"requestPointerLock")||(a.requestPointerLock=function(){return b("'requestPointerLock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"fillVisibilityChangeEventData")||(a.fillVisibilityChangeEventData=function(){return b("'fillVisibilityChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"registerVisibilityChangeEventCallback")||(a.registerVisibilityChangeEventCallback=function(){return b("'registerVisibilityChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerTouchEventCallback")||(a.registerTouchEventCallback=function(){return b("'registerTouchEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"fillGamepadEventData")|| +(a.fillGamepadEventData=function(){return b("'fillGamepadEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerGamepadEventCallback")||(a.registerGamepadEventCallback=function(){return b("'registerGamepadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerBeforeUnloadEventCallback")||(a.registerBeforeUnloadEventCallback=function(){return b("'registerBeforeUnloadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"fillBatteryEventData")||(a.fillBatteryEventData=function(){return b("'fillBatteryEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"battery")||(a.battery=function(){return b("'battery' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerBatteryEventCallback")||(a.registerBatteryEventCallback=function(){return b("'registerBatteryEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"setCanvasElementSize")||(a.setCanvasElementSize=function(){return b("'setCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getCanvasElementSize")||(a.getCanvasElementSize=function(){return b("'getCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"demangle")||(a.demangle=function(){return b("'demangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"demangleAll")||(a.demangleAll=function(){return b("'demangleAll' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"jsStackTrace")||(a.jsStackTrace=function(){return b("'jsStackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stackTrace")||(a.stackTrace=function(){return b("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"getEnvStrings")||(a.getEnvStrings=function(){return b("'getEnvStrings' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"checkWasiClock")||(a.checkWasiClock=function(){return b("'checkWasiClock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"flush_NO_FILESYSTEM")||(a.flush_NO_FILESYSTEM=function(){return b("'flush_NO_FILESYSTEM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"writeI53ToI64")||(a.writeI53ToI64=function(){return b("'writeI53ToI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeI53ToI64Clamped")||(a.writeI53ToI64Clamped=function(){return b("'writeI53ToI64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeI53ToI64Signaling")||(a.writeI53ToI64Signaling=function(){return b("'writeI53ToI64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"writeI53ToU64Clamped")||(a.writeI53ToU64Clamped=function(){return b("'writeI53ToU64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeI53ToU64Signaling")||(a.writeI53ToU64Signaling=function(){return b("'writeI53ToU64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"readI53FromI64")||(a.readI53FromI64=function(){return b("'readI53FromI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"readI53FromU64")||(a.readI53FromU64=function(){return b("'readI53FromU64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"convertI32PairToI53")||(a.convertI32PairToI53=function(){return b("'convertI32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"convertU32PairToI53")||(a.convertU32PairToI53=function(){return b("'convertU32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"setImmediateWrapped")||(a.setImmediateWrapped=function(){return b("'setImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"clearImmediateWrapped")||(a.clearImmediateWrapped=function(){return b("'clearImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"polyfillSetImmediate")||(a.polyfillSetImmediate=function(){return b("'polyfillSetImmediate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"uncaughtExceptionCount")||(a.uncaughtExceptionCount=function(){return b("'uncaughtExceptionCount' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"exceptionLast")||(a.exceptionLast=function(){return b("'exceptionLast' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"exceptionCaught")||(a.exceptionCaught=function(){return b("'exceptionCaught' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"ExceptionInfo")||(a.ExceptionInfo=function(){return b("'ExceptionInfo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"CatchInfo")||(a.CatchInfo=function(){return b("'CatchInfo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"exception_addRef")||(a.exception_addRef=function(){return b("'exception_addRef' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"exception_decRef")||(a.exception_decRef=function(){return b("'exception_decRef' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"Browser")||(a.Browser=function(){return b("'Browser' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"funcWrappers")||(a.funcWrappers=function(){return b("'funcWrappers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"getFuncWrapper")||(a.getFuncWrapper=function(){return b("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"setMainLoop")||(a.setMainLoop=function(){return b("'setMainLoop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"wget")||(a.wget=function(){return b("'wget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"tempFixedLengthArray")||(a.tempFixedLengthArray=function(){return b("'tempFixedLengthArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"miniTempWebGLFloatBuffers")||(a.miniTempWebGLFloatBuffers=function(){return b("'miniTempWebGLFloatBuffers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"heapObjectForWebGLType")||(a.heapObjectForWebGLType=function(){return b("'heapObjectForWebGLType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"heapAccessShiftForWebGLHeap")||(a.heapAccessShiftForWebGLHeap=function(){return b("'heapAccessShiftForWebGLHeap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GL")||(a.GL=function(){return b("'GL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"emscriptenWebGLGet")||(a.emscriptenWebGLGet=function(){return b("'emscriptenWebGLGet' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"computeUnpackAlignedImageSize")||(a.computeUnpackAlignedImageSize=function(){return b("'computeUnpackAlignedImageSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"emscriptenWebGLGetTexPixelData")||(a.emscriptenWebGLGetTexPixelData=function(){return b("'emscriptenWebGLGetTexPixelData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"emscriptenWebGLGetUniform")|| +(a.emscriptenWebGLGetUniform=function(){return b("'emscriptenWebGLGetUniform' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"webglGetUniformLocation")||(a.webglGetUniformLocation=function(){return b("'webglGetUniformLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"webglPrepareUniformLocationsBeforeFirstUse")||(a.webglPrepareUniformLocationsBeforeFirstUse=function(){return b("'webglPrepareUniformLocationsBeforeFirstUse' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"webglGetLeftBracePos")||(a.webglGetLeftBracePos=function(){return b("'webglGetLeftBracePos' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"emscriptenWebGLGetVertexAttrib")||(a.emscriptenWebGLGetVertexAttrib=function(){return b("'emscriptenWebGLGetVertexAttrib' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeGLArray")||(a.writeGLArray=function(){return b("'writeGLArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"AL")||(a.AL=function(){return b("'AL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SDL_unicode")||(a.SDL_unicode=function(){return b("'SDL_unicode' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SDL_ttfContext")||(a.SDL_ttfContext=function(){return b("'SDL_ttfContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"SDL_audio")||(a.SDL_audio=function(){return b("'SDL_audio' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SDL")||(a.SDL=function(){return b("'SDL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SDL_gfx")||(a.SDL_gfx=function(){return b("'SDL_gfx' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GLUT")||(a.GLUT=function(){return b("'GLUT' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"EGL")||(a.EGL=function(){return b("'EGL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GLFW_Window")||(a.GLFW_Window=function(){return b("'GLFW_Window' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GLFW")||(a.GLFW=function(){return b("'GLFW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"GLEW")||(a.GLEW=function(){return b("'GLEW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"IDBStore")||(a.IDBStore=function(){return b("'IDBStore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"runAndAbortIfError")||(a.runAndAbortIfError=function(){return b("'runAndAbortIfError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"warnOnce")||(a.warnOnce=function(){return b("'warnOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stackSave")||(a.stackSave=function(){return b("'stackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stackRestore")||(a.stackRestore=function(){return b("'stackRestore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"stackAlloc")||(a.stackAlloc=function(){return b("'stackAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"AsciiToString")||(a.AsciiToString=function(){return b("'AsciiToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToAscii")||(a.stringToAscii=function(){return b("'stringToAscii' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"UTF16ToString")||(a.UTF16ToString=function(){return b("'UTF16ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToUTF16")||(a.stringToUTF16=function(){return b("'stringToUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"lengthBytesUTF16")||(a.lengthBytesUTF16=function(){return b("'lengthBytesUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"UTF32ToString")||(a.UTF32ToString=function(){return b("'UTF32ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToUTF32")||(a.stringToUTF32=function(){return b("'stringToUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"lengthBytesUTF32")||(a.lengthBytesUTF32=function(){return b("'lengthBytesUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"allocateUTF8")||(a.allocateUTF8=function(){return b("'allocateUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"allocateUTF8OnStack")||(a.allocateUTF8OnStack=function(){return b("'allocateUTF8OnStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});a.writeStackCookie=p;a.checkStackCookie=u;Object.getOwnPropertyDescriptor(a,"ALLOC_NORMAL")||Object.defineProperty(a,"ALLOC_NORMAL", +{configurable:!0,get:function(){b("'ALLOC_NORMAL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});Object.getOwnPropertyDescriptor(a,"ALLOC_STACK")||Object.defineProperty(a,"ALLOC_STACK",{configurable:!0,get:function(){b("'ALLOC_STACK' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});var oa;ia=function c(){oa||Aa();oa||(ia=c)};a.run=Aa;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=r.size?(l(0>>=0;switch(d.BYTES_PER_ELEMENT){case 2:e>>>= +1;break;case 4:e>>>=2;break;case 8:e>>>=3}for(var g=0;g>>0,$jscomp.propertyToPolyfillSymbol[h]=$jscomp.IS_SYMBOL_NATIVE? +$jscomp.global.Symbol(h):$jscomp.POLYFILL_PREFIX+l+"$"+h),$jscomp.defineProperty(r,$jscomp.propertyToPolyfillSymbol[h],{configurable:!0,writable:!0,value:k})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(n,k){for(var l=1;l>>16&65535)*h+r*(l>>>16&65535)<<16>>>0)|0}},"es6","es3"); +$jscomp.polyfill("Math.fround",function(n){if(n)return n;if($jscomp.SIMPLE_FROUND_POLYFILL||"function"!==typeof Float32Array)return function(l){return l};var k=new Float32Array(1);return function(l){k[0]=l;return k[0]}},"es6","es3"); +$jscomp.polyfill("Math.clz32",function(n){return n?n:function(k){k=Number(k)>>>0;if(0===k)return 32;var l=0;0===(k&4294901760)&&(k<<=16,l+=16);0===(k&4278190080)&&(k<<=8,l+=8);0===(k&4026531840)&&(k<<=4,l+=4);0===(k&3221225472)&&(k<<=2,l+=2);0===(k&2147483648)&&l++;return l}},"es6","es3");$jscomp.polyfill("Math.trunc",function(n){return n?n:function(k){k=Number(k);if(isNaN(k)||Infinity===k||-Infinity===k||0===k)return k;var l=Math.floor(Math.abs(k));return 0>k?-l:l}},"es6","es3"); +$jscomp.checkStringArgs=function(n,k,l){if(null==n)throw new TypeError("The 'this' value for String.prototype."+l+" must not be null or undefined");if(k instanceof RegExp)throw new TypeError("First argument to String.prototype."+l+" must not be a regular expression");return n+""}; +$jscomp.polyfill("String.prototype.startsWith",function(n){return n?n:function(k,l){var r=$jscomp.checkStringArgs(this,k,"startsWith");k+="";var h=r.length,B=k.length;l=Math.max(0,Math.min(l|0,r.length));for(var m=0;m=B}},"es6","es3"); +$jscomp.polyfill("Array.prototype.copyWithin",function(n){function k(l){l=Number(l);return Infinity===l||-Infinity===l?l:l|0}return n?n:function(l,r,h){var B=this.length;l=k(l);r=k(r);h=void 0===h?B:k(h);l=0>l?Math.max(B+l,0):Math.min(l,B);r=0>r?Math.max(B+r,0):Math.min(r,B);h=0>h?Math.max(B+h,0):Math.min(h,B);if(lr;)--h in this?this[--l]=this[h]:delete this[--l];return this}},"es6","es3"); +$jscomp.typedArrayCopyWithin=function(n){return n?n:Array.prototype.copyWithin};$jscomp.polyfill("Int8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint8ClampedArray.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +$jscomp.polyfill("Uint16Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Int32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Uint32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float32Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5");$jscomp.polyfill("Float64Array.prototype.copyWithin",$jscomp.typedArrayCopyWithin,"es6","es5"); +var DracoDecoderModule=function(){var n="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(n=n||__filename);return function(k){function l(f){return a.locateFile?a.locateFile(f,Z):Z+f}function r(f){r.shown||(r.shown={});r.shown[f]||(r.shown[f]=1,I(f))}function h(f,c){f||b("Assertion failed"+(c?": "+c:""))}function B(f,c,d){var e=c+d;for(d=c;f[d]&&!(d>=e);)++d;if(16p?e+=String.fromCharCode(p):(p-=65536,e+=String.fromCharCode(55296|p>>10,56320|p&1023))}}else e+=String.fromCharCode(p)}return e}function m(f,c){return f?B(ma,f,c):""} +function t(f){Aa=f;a.HEAP8=ca=new Int8Array(f);a.HEAP16=new Int16Array(f);a.HEAP32=F=new Int32Array(f);a.HEAPU8=ma=new Uint8Array(f);a.HEAPU16=new Uint16Array(f);a.HEAPU32=Ba=new Uint32Array(f);a.HEAPF32=new Float32Array(f);a.HEAPF64=new Float64Array(f)}function w(){var f=Ca();h(0==(f&3));F[f+4>>2]=34821223;F[f+8>>2]=2310721022;F[0]=1668509029}function z(){if(!sa){var f=Ca(),c=Ba[f+4>>2];f=Ba[f+8>>2];34821223==c&&2310721022==f||b("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x2135467, but received 0x"+ +f.toString(16)+" 0x"+c.toString(16));1668509029!==F[0]&&b("Runtime error: The application has corrupted its heap memory area (address zero)!")}}function T(f){ha++;a.monitorRunDependencies&&a.monitorRunDependencies(ha);f?(h(!na[f]),na[f]=1,null===ia&&"undefined"!==typeof setInterval&&(ia=setInterval(function(){if(sa)clearInterval(ia),ia=null;else{var c=!1,d;for(d in na)c||(c=!0,I("still waiting on run dependencies:")),I("dependency: "+d);c&&I("(end of list)")}},1E4))):I("warning: run dependency added without ID")} +function b(f){if(a.onAbort)a.onAbort(f);f="Aborted("+f+")";I(f);sa=!0;f=new WebAssembly.RuntimeError(f);Da(f);throw f;}function g(f,c){return function(){var d=c;c||(d=a.asm);h(ta,"native function `"+f+"` called before runtime initialization");h(!$a,"native function `"+f+"` called after runtime exit (use NO_EXIT_RUNTIME to keep it alive after main() exits)");d[f]||h(d[f],"exported native function `"+f+"` not found");return d[f].apply(null,arguments)}}function aa(f){try{if(f==J&&oa)return new Uint8Array(oa); +if(pa)return pa(f);throw"both async and sync fetching of the wasm failed";}catch(c){b(c)}}function la(){if(!oa&&(Ea||ja)){if("function"===typeof fetch&&!J.startsWith("file://"))return fetch(J,{credentials:"same-origin"}).then(function(f){if(!f.ok)throw"failed to load wasm binary file at '"+J+"'";return f.arrayBuffer()}).catch(function(){return aa(J)});if(ua)return new Promise(function(f,c){ua(J,function(d){f(new Uint8Array(d))},c)})}return Promise.resolve().then(function(){return aa(J)})}function fa(f){for(;0< +f.length;){var c=f.shift();if("function"==typeof c)c(a);else{var d=c.func;"number"===typeof d?void 0===c.arg?Na(d)():Na(d)(c.arg):d(void 0===c.arg?null:c.arg)}}}function Na(f){var c=va[f];c||(f>=va.length&&(va.length=f+1),va[f]=c=wa.get(f));h(wa.get(f)==c,"JavaScript-side Wasm function table mirror is out of date!");return c}function ab(f){this.excPtr=f;this.ptr=f-16;this.set_type=function(c){F[this.ptr+4>>2]=c};this.get_type=function(){return F[this.ptr+4>>2]};this.set_destructor=function(c){F[this.ptr+ +8>>2]=c};this.get_destructor=function(){return F[this.ptr+8>>2]};this.set_refcount=function(c){F[this.ptr>>2]=c};this.set_caught=function(c){ca[this.ptr+12>>0]=c?1:0};this.get_caught=function(){return 0!=ca[this.ptr+12>>0]};this.set_rethrown=function(c){ca[this.ptr+13>>0]=c?1:0};this.get_rethrown=function(){return 0!=ca[this.ptr+13>>0]};this.init=function(c,d){this.set_type(c);this.set_destructor(d);this.set_refcount(0);this.set_caught(!1);this.set_rethrown(!1)};this.add_ref=function(){F[this.ptr>> +2]+=1};this.release_ref=function(){var c=F[this.ptr>>2];F[this.ptr>>2]=c-1;h(0=e&&(e=65536+((e&1023)<<10)|f.charCodeAt(++d)&1023);127>=e?++c:c=2047>=e?c+2:65535>=e?c+3:c+4}c=Array(c+1);d=0;e=c.length;if(0=u){var C=f.charCodeAt(++p);u=65536+((u&1023)<<10)|C&1023}if(127>=u){if(d>=e)break;c[d++]=u}else{if(2047>=u){if(d+1>=e)break;c[d++]=192|u>>6}else{if(65535>=u){if(d+2>=e)break;c[d++]=224|u>>12}else{if(d+3>=e)break;1114111>18;c[d++]=128|u>>12&63}c[d++]=128|u>>6&63}c[d++]=128|u&63}}c[d]=0}f=v.alloc(c,ca);v.copy(c,ca,f);return f}return f}function Ha(f){if("object"===typeof f){var c=v.alloc(f,ca);v.copy(f,ca,c);return c}return f}function da(){throw"cannot construct a VoidPtr, no constructor in IDL";}function W(){this.ptr=bb();D(W)[this.ptr]=this}function U(){this.ptr=cb();D(U)[this.ptr]=this}function ba(){this.ptr=db();D(ba)[this.ptr]=this}function y(){this.ptr=eb();D(y)[this.ptr]=this}function G(){this.ptr= +fb();D(G)[this.ptr]=this}function K(){this.ptr=gb();D(K)[this.ptr]=this}function L(){this.ptr=hb();D(L)[this.ptr]=this}function H(){this.ptr=ib();D(H)[this.ptr]=this}function X(){this.ptr=jb();D(X)[this.ptr]=this}function E(){throw"cannot construct a Status, no constructor in IDL";}function M(){this.ptr=kb();D(M)[this.ptr]=this}function N(){this.ptr=lb();D(N)[this.ptr]=this}function O(){this.ptr=mb();D(O)[this.ptr]=this}function P(){this.ptr=nb();D(P)[this.ptr]=this}function Q(){this.ptr=ob();D(Q)[this.ptr]= +this}function R(){this.ptr=pb();D(R)[this.ptr]=this}function S(){this.ptr=qb();D(S)[this.ptr]=this}function A(){this.ptr=rb();D(A)[this.ptr]=this}function q(){this.ptr=sb();D(q)[this.ptr]=this}k=k||{};var a="undefined"!==typeof k?k:{},Sa=Object.assign,Oa,Da;a.ready=new Promise(function(f,c){Oa=f;Da=c});Object.getOwnPropertyDescriptor(a.ready,"_free")||(Object.defineProperty(a.ready,"_free",{configurable:!0,get:function(){b("You are getting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_free",{configurable:!0,set:function(){b("You are setting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_malloc")||(Object.defineProperty(a.ready,"_malloc",{configurable:!0,get:function(){b("You are getting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_malloc",{configurable:!0,set:function(){b("You are setting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_VoidPtr___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_VoidPtr___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_VoidPtr___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_VoidPtr___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_VoidPtr___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DecoderBuffer_DecoderBuffer_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DecoderBuffer_DecoderBuffer_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DecoderBuffer_DecoderBuffer_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DecoderBuffer_DecoderBuffer_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DecoderBuffer_DecoderBuffer_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DecoderBuffer_Init_2")||(Object.defineProperty(a.ready,"_emscripten_bind_DecoderBuffer_Init_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DecoderBuffer_Init_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DecoderBuffer_Init_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DecoderBuffer_Init_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DecoderBuffer___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DecoderBuffer___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DecoderBuffer___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DecoderBuffer___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DecoderBuffer___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeTransformData_AttributeTransformData_0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeTransformData_AttributeTransformData_0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeTransformData_AttributeTransformData_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_AttributeTransformData_AttributeTransformData_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeTransformData_AttributeTransformData_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeTransformData_transform_type_0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeTransformData_transform_type_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeTransformData_transform_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_AttributeTransformData_transform_type_0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeTransformData_transform_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeTransformData___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeTransformData___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeTransformData___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_AttributeTransformData___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeTransformData___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_GeometryAttribute_GeometryAttribute_0")||(Object.defineProperty(a.ready,"_emscripten_bind_GeometryAttribute_GeometryAttribute_0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_GeometryAttribute_GeometryAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_GeometryAttribute_GeometryAttribute_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_GeometryAttribute_GeometryAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_GeometryAttribute___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_GeometryAttribute___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_GeometryAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_GeometryAttribute___destroy___0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_GeometryAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_PointAttribute_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_PointAttribute_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_PointAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_PointAttribute_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_PointAttribute_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_GetAttributeTransformData_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_GetAttributeTransformData_0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_GetAttributeTransformData_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_GetAttributeTransformData_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_GetAttributeTransformData_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_attribute_type_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_attribute_type_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_attribute_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_attribute_type_0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_attribute_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_data_type_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_data_type_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_data_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_data_type_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_data_type_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_num_components_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_num_components_0",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_PointAttribute_num_components_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_num_components_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_num_components_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_normalized_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_normalized_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_normalized_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_normalized_0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_PointAttribute_normalized_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_byte_stride_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_byte_stride_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_byte_stride_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_byte_stride_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_byte_stride_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_byte_offset_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_byte_offset_0",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_PointAttribute_byte_offset_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_byte_offset_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_byte_offset_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute_unique_id_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_unique_id_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute_unique_id_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute_unique_id_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointAttribute_unique_id_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointAttribute___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_PointAttribute___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_PointAttribute___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1")|| +(Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready, +"_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeQuantizationTransform_min_value_1")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_min_value_1", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeQuantizationTransform_min_value_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_min_value_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeQuantizationTransform_min_value_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeQuantizationTransform_range_0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_range_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeQuantizationTransform_range_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform_range_0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeQuantizationTransform_range_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeQuantizationTransform___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeQuantizationTransform___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_AttributeQuantizationTransform___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeQuantizationTransform___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0")||(Object.defineProperty(a.ready, +"_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready, +"_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_AttributeOctahedronTransform___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_AttributeOctahedronTransform___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_AttributeOctahedronTransform___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_AttributeOctahedronTransform___destroy___0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_AttributeOctahedronTransform___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloud_PointCloud_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_PointCloud_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloud_PointCloud_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_PointCloud_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloud_PointCloud_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloud_num_attributes_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_num_attributes_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloud_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_num_attributes_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloud_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloud_num_points_0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_num_points_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloud_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloud_num_points_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloud_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_PointCloud___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_PointCloud___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_PointCloud___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_PointCloud___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_PointCloud___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_Mesh_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_Mesh_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_Mesh_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_Mesh_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_Mesh_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_num_faces_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_faces_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_num_faces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_faces_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_num_faces_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_num_attributes_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_attributes_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_attributes_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_num_attributes_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh_num_points_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_points_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh_num_points_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh_num_points_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Mesh___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_Mesh___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Mesh___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Mesh___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Mesh___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Metadata_Metadata_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Metadata_Metadata_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Metadata_Metadata_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Metadata_Metadata_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Metadata_Metadata_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Metadata___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_Metadata___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Metadata___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Metadata___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Metadata___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Status_code_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Status_code_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Status_code_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Status_code_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Status_code_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Status_ok_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Status_ok_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Status_ok_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Status_ok_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Status_ok_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Status_error_msg_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Status_error_msg_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Status_error_msg_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Status_error_msg_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Status_error_msg_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Status___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_Status___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Status___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Status___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Status___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoFloat32Array_GetValue_1")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoFloat32Array_GetValue_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoFloat32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoFloat32Array_GetValue_1",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_DracoFloat32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoFloat32Array_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoFloat32Array_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoFloat32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DracoFloat32Array_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoFloat32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoFloat32Array___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoFloat32Array___destroy___0",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_DracoFloat32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoFloat32Array___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoFloat32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt8Array_DracoInt8Array_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_DracoInt8Array_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt8Array_DracoInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_DracoInt8Array_0", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt8Array_DracoInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt8Array_GetValue_1")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_GetValue_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_GetValue_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt8Array_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt8Array___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DracoInt8Array___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt8Array_DracoUInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt8Array_DracoUInt8Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt8Array_GetValue_1")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt8Array_GetValue_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt8Array_GetValue_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt8Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt8Array_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt8Array_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt8Array_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt8Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt8Array___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt8Array___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt8Array___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_DracoUInt8Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt16Array_DracoInt16Array_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt16Array_DracoInt16Array_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt16Array_DracoInt16Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DracoInt16Array_DracoInt16Array_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt16Array_DracoInt16Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt16Array_GetValue_1")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt16Array_GetValue_1",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_DracoInt16Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt16Array_GetValue_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt16Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt16Array_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt16Array_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt16Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt16Array_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt16Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt16Array___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt16Array___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt16Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt16Array___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_DracoInt16Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt16Array_DracoUInt16Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt16Array_DracoUInt16Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt16Array_GetValue_1")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt16Array_GetValue_1", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt16Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt16Array_GetValue_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt16Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt16Array_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt16Array_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt16Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt16Array_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt16Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt16Array___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt16Array___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt16Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt16Array___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_DracoUInt16Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt32Array_DracoInt32Array_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt32Array_DracoInt32Array_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt32Array_DracoInt32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DracoInt32Array_DracoInt32Array_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt32Array_DracoInt32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt32Array_GetValue_1")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt32Array_GetValue_1",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_DracoInt32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt32Array_GetValue_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt32Array_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt32Array_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt32Array_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoInt32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoInt32Array___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoInt32Array___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoInt32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoInt32Array___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_DracoInt32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt32Array_DracoUInt32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt32Array_DracoUInt32Array_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt32Array_GetValue_1")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt32Array_GetValue_1", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt32Array_GetValue_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt32Array_GetValue_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt32Array_size_0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt32Array_size_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt32Array_size_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_DracoUInt32Array_size_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_DracoUInt32Array___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt32Array___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_DracoUInt32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_DracoUInt32Array___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_DracoUInt32Array___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier_MetadataQuerier_0")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_MetadataQuerier_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataQuerier_MetadataQuerier_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_MetadataQuerier_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataQuerier_MetadataQuerier_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier_HasEntry_2")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_HasEntry_2",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_MetadataQuerier_HasEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_HasEntry_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataQuerier_HasEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier_GetIntEntry_2")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetIntEntry_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataQuerier_GetIntEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetIntEntry_2",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_MetadataQuerier_GetIntEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier_GetIntEntryArray_3")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetIntEntryArray_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataQuerier_GetIntEntryArray_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetIntEntryArray_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataQuerier_GetIntEntryArray_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier_GetDoubleEntry_2")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetDoubleEntry_2", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataQuerier_GetDoubleEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetDoubleEntry_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataQuerier_GetDoubleEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier_GetStringEntry_2")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetStringEntry_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataQuerier_GetStringEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetStringEntry_2", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataQuerier_GetStringEntry_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier_NumEntries_1")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_NumEntries_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataQuerier_NumEntries_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_NumEntries_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataQuerier_NumEntries_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier_GetEntryName_2")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetEntryName_2",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_MetadataQuerier_GetEntryName_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier_GetEntryName_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_MetadataQuerier_GetEntryName_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_MetadataQuerier___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_MetadataQuerier___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_MetadataQuerier___destroy___0",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_MetadataQuerier___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_Decoder_0")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_Decoder_0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_Decoder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_Decoder_0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_Decoder_0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_DecodeArrayToPointCloud_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_DecodeArrayToPointCloud_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_DecodeArrayToPointCloud_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_DecodeArrayToPointCloud_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_DecodeArrayToPointCloud_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_DecodeArrayToMesh_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_DecodeArrayToMesh_3",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_Decoder_DecodeArrayToMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_DecodeArrayToMesh_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_DecodeArrayToMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeId_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeId_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeId_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeId_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeId_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeIdByName_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeIdByName_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeIdByName_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeIdByName_2",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeIdByName_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttribute_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttribute_2", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttribute_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttribute_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttribute_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeByUniqueId_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeByUniqueId_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeByUniqueId_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeByUniqueId_2", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeByUniqueId_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetMetadata_1")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetMetadata_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetMetadata_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetMetadata_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetMetadata_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeMetadata_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeMetadata_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeMetadata_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeMetadata_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetFaceFromMesh_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetFaceFromMesh_3",{configurable:!0, +get:function(){b("You are getting _emscripten_bind_Decoder_GetFaceFromMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetFaceFromMesh_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetFaceFromMesh_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetTrianglesUInt16Array_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetTrianglesUInt16Array_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetTrianglesUInt16Array_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetTrianglesUInt16Array_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetTrianglesUInt16Array_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetTrianglesUInt32Array_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetTrianglesUInt32Array_3", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetTrianglesUInt32Array_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetTrianglesUInt32Array_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetTrianglesUInt32Array_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeFloat_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeFloat_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeFloat_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeFloat_3",{configurable:!0, +set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeFloat_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeIntForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeIntForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_SkipAttributeTransform_1")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_SkipAttributeTransform_1",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_SkipAttributeTransform_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_SkipAttributeTransform_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_SkipAttributeTransform_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1", +{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_DecodeBufferToPointCloud_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_DecodeBufferToPointCloud_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_DecodeBufferToPointCloud_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_bind_Decoder_DecodeBufferToPointCloud_2", +{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_DecodeBufferToPointCloud_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder_DecodeBufferToMesh_2")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder_DecodeBufferToMesh_2",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder_DecodeBufferToMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder_DecodeBufferToMesh_2",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder_DecodeBufferToMesh_2 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_bind_Decoder___destroy___0")||(Object.defineProperty(a.ready,"_emscripten_bind_Decoder___destroy___0",{configurable:!0,get:function(){b("You are getting _emscripten_bind_Decoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_bind_Decoder___destroy___0",{configurable:!0,set:function(){b("You are setting _emscripten_bind_Decoder___destroy___0 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready, +"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_INVALID")||(Object.defineProperty(a.ready, +"_emscripten_enum_draco_GeometryAttribute_Type_INVALID",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_INVALID",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_POSITION")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_POSITION",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_POSITION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_POSITION", +{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_POSITION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_NORMAL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_NORMAL",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_NORMAL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_COLOR")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_COLOR", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_COLOR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_COLOR",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_COLOR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD", +{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_GeometryAttribute_Type_GENERIC on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_GeometryAttribute_Type_GENERIC",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_GeometryAttribute_Type_GENERIC on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD", +{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_INVALID")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INVALID", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INVALID",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_INVALID on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_INT8")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INT8",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_INT8 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INT8",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_INT8 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_UINT8")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_UINT8",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_UINT8 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_UINT8",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_UINT8 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_INT16")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INT16",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_INT16 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INT16",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_INT16 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_UINT16")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_UINT16",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_UINT16 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_UINT16",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_UINT16 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_INT32")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INT32",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_INT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INT32",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_INT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_UINT32")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_UINT32",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_UINT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_UINT32",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_UINT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_INT64")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INT64",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_INT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_INT64",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_INT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_UINT64")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_UINT64",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_UINT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_UINT64",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_UINT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_FLOAT32")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_FLOAT32",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_FLOAT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_FLOAT32",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_FLOAT32 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_FLOAT64")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_FLOAT64",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_FLOAT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_FLOAT64",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_FLOAT64 on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_BOOL")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_BOOL",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_BOOL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_BOOL",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_BOOL on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_DataType_DT_TYPES_COUNT")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_TYPES_COUNT",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_DataType_DT_TYPES_COUNT on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_DataType_DT_TYPES_COUNT",{configurable:!0, +set:function(){b("You are setting _emscripten_enum_draco_DataType_DT_TYPES_COUNT on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_StatusCode_OK")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_OK",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_StatusCode_OK on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_OK",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_StatusCode_OK on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_StatusCode_DRACO_ERROR")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_DRACO_ERROR",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_StatusCode_DRACO_ERROR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_DRACO_ERROR",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_StatusCode_DRACO_ERROR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_StatusCode_IO_ERROR")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_IO_ERROR",{configurable:!0, +get:function(){b("You are getting _emscripten_enum_draco_StatusCode_IO_ERROR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_IO_ERROR",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_StatusCode_IO_ERROR on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_StatusCode_INVALID_PARAMETER")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_INVALID_PARAMETER",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_StatusCode_INVALID_PARAMETER on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_INVALID_PARAMETER", +{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_StatusCode_INVALID_PARAMETER on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION",{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}), +Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));Object.getOwnPropertyDescriptor(a.ready,"_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION")||(Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION", +{configurable:!0,get:function(){b("You are getting _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION",{configurable:!0,set:function(){b("You are setting _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +Object.getOwnPropertyDescriptor(a.ready,"onRuntimeInitialized")||(Object.defineProperty(a.ready,"onRuntimeInitialized",{configurable:!0,get:function(){b("You are getting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(a.ready,"onRuntimeInitialized",{configurable:!0,set:function(){b("You are setting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})); +var Ta=!1,Ua=!1;a.onRuntimeInitialized=function(){Ta=!0;if(Ua&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ua=!0;if(Ta&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(f){if("string"!==typeof f)return!1;f=f.split(".");return 2>f.length||3=f[1]?!0:0!=f[0]||10>2]},getStr:function(f){return m(f)},get64:function(f,c){0<=f?h(0===c):h(-1===c);return f}},Za={__cxa_allocate_exception:function(f){return vb(f+16)+16},__cxa_throw:function(f,c,d){(new ab(f)).init(c,d);ub++;throw f+" - Exception catching is disabled, this exception cannot be caught. Compile with -s NO_DISABLE_EXCEPTION_CATCHING or -s EXCEPTION_CATCHING_ALLOWED=[..] to catch."; +},abort:function(){b("native code called abort()")},array_bounds_check_error:function(f,c){throw"Array index "+f+" out of bounds: [0,"+c+")";},emscripten_memcpy_big:function(f,c,d){ma.copyWithin(f,c,c+d)},emscripten_resize_heap:function(f){var c=ma.length;f>>>=0;h(f>c);if(2147483648=d;d*=2){var e=c*(1+.2/d);e=Math.min(e,f+100663296);var p=Math,u=p.min;e=Math.max(f,e);0>>16);t(qa.buffer);var C=1;break a}catch(za){I("emscripten_realloc_buffer: Attempted to grow heap from "+Aa.byteLength+" bytes to "+u+" bytes, but got error: "+za)}C=void 0}if(C)return!0}I("Failed to grow the heap from "+c+" bytes to "+p+" bytes, not enough memory!");return!1},fd_close:function(f){b("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM");return 0},fd_seek:function(f,c, +d,e,p){b("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM")},fd_write:function(f,c,d,e){for(var p=0,u=0;u>2],za=F[c+4>>2];c+=8;for(var La=0;La>2]=p;return 0},setTempRet0:function(f){}};(function(){function f(u,C){a.asm=u.exports;qa=a.asm.memory;h(qa,"memory not found in wasm exports");t(qa.buffer);wa=a.asm.__indirect_function_table;h(wa,"table not found in wasm exports");Ga.unshift(a.asm.__wasm_call_ctors); +ha--;a.monitorRunDependencies&&a.monitorRunDependencies(ha);h(na["wasm-instantiate"]);delete na["wasm-instantiate"];0==ha&&(null!==ia&&(clearInterval(ia),ia=null),ra&&(u=ra,ra=null,u()))}function c(u){h(a===p,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");p=null;f(u.instance)}function d(u){return la().then(function(C){return WebAssembly.instantiate(C,e)}).then(function(C){return C}).then(u,function(C){I("failed to asynchronously prepare wasm: "+ +C);J.startsWith("file://")&&I("warning: Loading from a file URI ("+J+") is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing");b(C)})}var e={env:Za,wasi_snapshot_preview1:Za};T("wasm-instantiate");var p=a;if(a.instantiateWasm)try{return a.instantiateWasm(e,f)}catch(u){return I("Module.instantiateWasm callback failed with error: "+u),!1}(function(){return oa||"function"!== +typeof WebAssembly.instantiateStreaming||J.startsWith("data:application/octet-stream;base64,")||J.startsWith("file://")||"function"!==typeof fetch?d(c):fetch(J,{credentials:"same-origin"}).then(function(u){return WebAssembly.instantiateStreaming(u,e).then(c,function(C){I("wasm streaming compile failed: "+C);I("falling back to ArrayBuffer instantiation");return d(c)})})})().catch(Da);return{}})();a.___wasm_call_ctors=g("__wasm_call_ctors");var wb=a._emscripten_bind_VoidPtr___destroy___0=g("emscripten_bind_VoidPtr___destroy___0"), +bb=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=g("emscripten_bind_DecoderBuffer_DecoderBuffer_0"),xb=a._emscripten_bind_DecoderBuffer_Init_2=g("emscripten_bind_DecoderBuffer_Init_2"),yb=a._emscripten_bind_DecoderBuffer___destroy___0=g("emscripten_bind_DecoderBuffer___destroy___0"),cb=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=g("emscripten_bind_AttributeTransformData_AttributeTransformData_0"),zb=a._emscripten_bind_AttributeTransformData_transform_type_0=g("emscripten_bind_AttributeTransformData_transform_type_0"), +Ab=a._emscripten_bind_AttributeTransformData___destroy___0=g("emscripten_bind_AttributeTransformData___destroy___0"),db=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=g("emscripten_bind_GeometryAttribute_GeometryAttribute_0"),Bb=a._emscripten_bind_GeometryAttribute___destroy___0=g("emscripten_bind_GeometryAttribute___destroy___0"),eb=a._emscripten_bind_PointAttribute_PointAttribute_0=g("emscripten_bind_PointAttribute_PointAttribute_0"),Cb=a._emscripten_bind_PointAttribute_size_0=g("emscripten_bind_PointAttribute_size_0"), +Db=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=g("emscripten_bind_PointAttribute_GetAttributeTransformData_0"),Eb=a._emscripten_bind_PointAttribute_attribute_type_0=g("emscripten_bind_PointAttribute_attribute_type_0"),Fb=a._emscripten_bind_PointAttribute_data_type_0=g("emscripten_bind_PointAttribute_data_type_0"),Gb=a._emscripten_bind_PointAttribute_num_components_0=g("emscripten_bind_PointAttribute_num_components_0"),Hb=a._emscripten_bind_PointAttribute_normalized_0=g("emscripten_bind_PointAttribute_normalized_0"), +Ib=a._emscripten_bind_PointAttribute_byte_stride_0=g("emscripten_bind_PointAttribute_byte_stride_0"),Jb=a._emscripten_bind_PointAttribute_byte_offset_0=g("emscripten_bind_PointAttribute_byte_offset_0"),Kb=a._emscripten_bind_PointAttribute_unique_id_0=g("emscripten_bind_PointAttribute_unique_id_0"),Lb=a._emscripten_bind_PointAttribute___destroy___0=g("emscripten_bind_PointAttribute___destroy___0"),fb=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=g("emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0"), +Mb=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=g("emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1"),Nb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=g("emscripten_bind_AttributeQuantizationTransform_quantization_bits_0"),Ob=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=g("emscripten_bind_AttributeQuantizationTransform_min_value_1"),Pb=a._emscripten_bind_AttributeQuantizationTransform_range_0=g("emscripten_bind_AttributeQuantizationTransform_range_0"), +Qb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=g("emscripten_bind_AttributeQuantizationTransform___destroy___0"),gb=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=g("emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0"),Rb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=g("emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1"),Sb=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0= +g("emscripten_bind_AttributeOctahedronTransform_quantization_bits_0"),Tb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=g("emscripten_bind_AttributeOctahedronTransform___destroy___0"),hb=a._emscripten_bind_PointCloud_PointCloud_0=g("emscripten_bind_PointCloud_PointCloud_0"),Ub=a._emscripten_bind_PointCloud_num_attributes_0=g("emscripten_bind_PointCloud_num_attributes_0"),Vb=a._emscripten_bind_PointCloud_num_points_0=g("emscripten_bind_PointCloud_num_points_0"),Wb=a._emscripten_bind_PointCloud___destroy___0= +g("emscripten_bind_PointCloud___destroy___0"),ib=a._emscripten_bind_Mesh_Mesh_0=g("emscripten_bind_Mesh_Mesh_0"),Xb=a._emscripten_bind_Mesh_num_faces_0=g("emscripten_bind_Mesh_num_faces_0"),Yb=a._emscripten_bind_Mesh_num_attributes_0=g("emscripten_bind_Mesh_num_attributes_0"),Zb=a._emscripten_bind_Mesh_num_points_0=g("emscripten_bind_Mesh_num_points_0"),$b=a._emscripten_bind_Mesh___destroy___0=g("emscripten_bind_Mesh___destroy___0"),jb=a._emscripten_bind_Metadata_Metadata_0=g("emscripten_bind_Metadata_Metadata_0"), +ac=a._emscripten_bind_Metadata___destroy___0=g("emscripten_bind_Metadata___destroy___0"),bc=a._emscripten_bind_Status_code_0=g("emscripten_bind_Status_code_0"),cc=a._emscripten_bind_Status_ok_0=g("emscripten_bind_Status_ok_0"),dc=a._emscripten_bind_Status_error_msg_0=g("emscripten_bind_Status_error_msg_0"),ec=a._emscripten_bind_Status___destroy___0=g("emscripten_bind_Status___destroy___0"),kb=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=g("emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"), +fc=a._emscripten_bind_DracoFloat32Array_GetValue_1=g("emscripten_bind_DracoFloat32Array_GetValue_1"),gc=a._emscripten_bind_DracoFloat32Array_size_0=g("emscripten_bind_DracoFloat32Array_size_0"),hc=a._emscripten_bind_DracoFloat32Array___destroy___0=g("emscripten_bind_DracoFloat32Array___destroy___0"),lb=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=g("emscripten_bind_DracoInt8Array_DracoInt8Array_0"),ic=a._emscripten_bind_DracoInt8Array_GetValue_1=g("emscripten_bind_DracoInt8Array_GetValue_1"), +jc=a._emscripten_bind_DracoInt8Array_size_0=g("emscripten_bind_DracoInt8Array_size_0"),kc=a._emscripten_bind_DracoInt8Array___destroy___0=g("emscripten_bind_DracoInt8Array___destroy___0"),mb=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=g("emscripten_bind_DracoUInt8Array_DracoUInt8Array_0"),lc=a._emscripten_bind_DracoUInt8Array_GetValue_1=g("emscripten_bind_DracoUInt8Array_GetValue_1"),mc=a._emscripten_bind_DracoUInt8Array_size_0=g("emscripten_bind_DracoUInt8Array_size_0"),nc=a._emscripten_bind_DracoUInt8Array___destroy___0= +g("emscripten_bind_DracoUInt8Array___destroy___0"),nb=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=g("emscripten_bind_DracoInt16Array_DracoInt16Array_0"),oc=a._emscripten_bind_DracoInt16Array_GetValue_1=g("emscripten_bind_DracoInt16Array_GetValue_1"),pc=a._emscripten_bind_DracoInt16Array_size_0=g("emscripten_bind_DracoInt16Array_size_0"),qc=a._emscripten_bind_DracoInt16Array___destroy___0=g("emscripten_bind_DracoInt16Array___destroy___0"),ob=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0= +g("emscripten_bind_DracoUInt16Array_DracoUInt16Array_0"),rc=a._emscripten_bind_DracoUInt16Array_GetValue_1=g("emscripten_bind_DracoUInt16Array_GetValue_1"),sc=a._emscripten_bind_DracoUInt16Array_size_0=g("emscripten_bind_DracoUInt16Array_size_0"),tc=a._emscripten_bind_DracoUInt16Array___destroy___0=g("emscripten_bind_DracoUInt16Array___destroy___0"),pb=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=g("emscripten_bind_DracoInt32Array_DracoInt32Array_0"),uc=a._emscripten_bind_DracoInt32Array_GetValue_1= +g("emscripten_bind_DracoInt32Array_GetValue_1"),vc=a._emscripten_bind_DracoInt32Array_size_0=g("emscripten_bind_DracoInt32Array_size_0"),wc=a._emscripten_bind_DracoInt32Array___destroy___0=g("emscripten_bind_DracoInt32Array___destroy___0"),qb=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=g("emscripten_bind_DracoUInt32Array_DracoUInt32Array_0"),xc=a._emscripten_bind_DracoUInt32Array_GetValue_1=g("emscripten_bind_DracoUInt32Array_GetValue_1"),yc=a._emscripten_bind_DracoUInt32Array_size_0=g("emscripten_bind_DracoUInt32Array_size_0"), +zc=a._emscripten_bind_DracoUInt32Array___destroy___0=g("emscripten_bind_DracoUInt32Array___destroy___0"),rb=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=g("emscripten_bind_MetadataQuerier_MetadataQuerier_0"),Ac=a._emscripten_bind_MetadataQuerier_HasEntry_2=g("emscripten_bind_MetadataQuerier_HasEntry_2"),Bc=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=g("emscripten_bind_MetadataQuerier_GetIntEntry_2"),Cc=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=g("emscripten_bind_MetadataQuerier_GetIntEntryArray_3"), +Dc=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=g("emscripten_bind_MetadataQuerier_GetDoubleEntry_2"),Ec=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=g("emscripten_bind_MetadataQuerier_GetStringEntry_2"),Fc=a._emscripten_bind_MetadataQuerier_NumEntries_1=g("emscripten_bind_MetadataQuerier_NumEntries_1"),Gc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=g("emscripten_bind_MetadataQuerier_GetEntryName_2"),Hc=a._emscripten_bind_MetadataQuerier___destroy___0=g("emscripten_bind_MetadataQuerier___destroy___0"), +sb=a._emscripten_bind_Decoder_Decoder_0=g("emscripten_bind_Decoder_Decoder_0"),Ic=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=g("emscripten_bind_Decoder_DecodeArrayToPointCloud_3"),Jc=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=g("emscripten_bind_Decoder_DecodeArrayToMesh_3"),Kc=a._emscripten_bind_Decoder_GetAttributeId_2=g("emscripten_bind_Decoder_GetAttributeId_2"),Lc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=g("emscripten_bind_Decoder_GetAttributeIdByName_2"),Mc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3= +g("emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3"),Nc=a._emscripten_bind_Decoder_GetAttribute_2=g("emscripten_bind_Decoder_GetAttribute_2"),Oc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=g("emscripten_bind_Decoder_GetAttributeByUniqueId_2"),Pc=a._emscripten_bind_Decoder_GetMetadata_1=g("emscripten_bind_Decoder_GetMetadata_1"),Qc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=g("emscripten_bind_Decoder_GetAttributeMetadata_2"),Rc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=g("emscripten_bind_Decoder_GetFaceFromMesh_3"), +Sc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=g("emscripten_bind_Decoder_GetTriangleStripsFromMesh_2"),Tc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=g("emscripten_bind_Decoder_GetTrianglesUInt16Array_3"),Uc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=g("emscripten_bind_Decoder_GetTrianglesUInt32Array_3"),Vc=a._emscripten_bind_Decoder_GetAttributeFloat_3=g("emscripten_bind_Decoder_GetAttributeFloat_3"),Wc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=g("emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3"), +Xc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=g("emscripten_bind_Decoder_GetAttributeIntForAllPoints_3"),Yc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=g("emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3"),Zc=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=g("emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3"),$c=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=g("emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3"),ad=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3= +g("emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3"),bd=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=g("emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3"),cd=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=g("emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3"),dd=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=g("emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5"),ed=a._emscripten_bind_Decoder_SkipAttributeTransform_1=g("emscripten_bind_Decoder_SkipAttributeTransform_1"), +fd=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=g("emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1"),gd=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=g("emscripten_bind_Decoder_DecodeBufferToPointCloud_2"),hd=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=g("emscripten_bind_Decoder_DecodeBufferToMesh_2"),id=a._emscripten_bind_Decoder___destroy___0=g("emscripten_bind_Decoder___destroy___0"),jd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM= +g("emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM"),kd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=g("emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM"),ld=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=g("emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM"),md=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=g("emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM"), +nd=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=g("emscripten_enum_draco_GeometryAttribute_Type_INVALID"),od=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=g("emscripten_enum_draco_GeometryAttribute_Type_POSITION"),pd=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=g("emscripten_enum_draco_GeometryAttribute_Type_NORMAL"),qd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=g("emscripten_enum_draco_GeometryAttribute_Type_COLOR"),rd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD= +g("emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"),sd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=g("emscripten_enum_draco_GeometryAttribute_Type_GENERIC"),td=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=g("emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"),ud=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=g("emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"),vd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=g("emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"), +wd=a._emscripten_enum_draco_DataType_DT_INVALID=g("emscripten_enum_draco_DataType_DT_INVALID"),xd=a._emscripten_enum_draco_DataType_DT_INT8=g("emscripten_enum_draco_DataType_DT_INT8"),yd=a._emscripten_enum_draco_DataType_DT_UINT8=g("emscripten_enum_draco_DataType_DT_UINT8"),zd=a._emscripten_enum_draco_DataType_DT_INT16=g("emscripten_enum_draco_DataType_DT_INT16"),Ad=a._emscripten_enum_draco_DataType_DT_UINT16=g("emscripten_enum_draco_DataType_DT_UINT16"),Bd=a._emscripten_enum_draco_DataType_DT_INT32= +g("emscripten_enum_draco_DataType_DT_INT32"),Cd=a._emscripten_enum_draco_DataType_DT_UINT32=g("emscripten_enum_draco_DataType_DT_UINT32"),Dd=a._emscripten_enum_draco_DataType_DT_INT64=g("emscripten_enum_draco_DataType_DT_INT64"),Ed=a._emscripten_enum_draco_DataType_DT_UINT64=g("emscripten_enum_draco_DataType_DT_UINT64"),Fd=a._emscripten_enum_draco_DataType_DT_FLOAT32=g("emscripten_enum_draco_DataType_DT_FLOAT32"),Gd=a._emscripten_enum_draco_DataType_DT_FLOAT64=g("emscripten_enum_draco_DataType_DT_FLOAT64"), +Hd=a._emscripten_enum_draco_DataType_DT_BOOL=g("emscripten_enum_draco_DataType_DT_BOOL"),Id=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=g("emscripten_enum_draco_DataType_DT_TYPES_COUNT"),Jd=a._emscripten_enum_draco_StatusCode_OK=g("emscripten_enum_draco_StatusCode_OK"),Kd=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=g("emscripten_enum_draco_StatusCode_DRACO_ERROR"),Ld=a._emscripten_enum_draco_StatusCode_IO_ERROR=g("emscripten_enum_draco_StatusCode_IO_ERROR"),Md=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER= +g("emscripten_enum_draco_StatusCode_INVALID_PARAMETER"),Nd=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=g("emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"),Od=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=g("emscripten_enum_draco_StatusCode_UNKNOWN_VERSION");a.___errno_location=g("__errno_location");var vb=a._malloc=g("malloc");a._free=g("free");var Qa=a._emscripten_stack_init=function(){return(Qa=a._emscripten_stack_init=a.asm.emscripten_stack_init).apply(null,arguments)}; +a._emscripten_stack_get_free=function(){return(a._emscripten_stack_get_free=a.asm.emscripten_stack_get_free).apply(null,arguments)};var Ca=a._emscripten_stack_get_end=function(){return(Ca=a._emscripten_stack_get_end=a.asm.emscripten_stack_get_end).apply(null,arguments)};a.stackSave=g("stackSave");a.stackRestore=g("stackRestore");a.stackAlloc=g("stackAlloc");a.dynCall_jiji=g("dynCall_jiji");Object.getOwnPropertyDescriptor(a,"intArrayFromString")||(a.intArrayFromString=function(){return b("'intArrayFromString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"intArrayToString")||(a.intArrayToString=function(){return b("'intArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"ccall")||(a.ccall=function(){return b("'ccall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"cwrap")||(a.cwrap=function(){return b("'cwrap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"setValue")||(a.setValue=function(){return b("'setValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getValue")||(a.getValue=function(){return b("'getValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"allocate")||(a.allocate=function(){return b("'allocate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"UTF8ArrayToString")|| +(a.UTF8ArrayToString=function(){return b("'UTF8ArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"UTF8ToString")||(a.UTF8ToString=function(){return b("'UTF8ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToUTF8Array")||(a.stringToUTF8Array=function(){return b("'stringToUTF8Array' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"stringToUTF8")||(a.stringToUTF8=function(){return b("'stringToUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"lengthBytesUTF8")||(a.lengthBytesUTF8=function(){return b("'lengthBytesUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stackTrace")||(a.stackTrace=function(){return b("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"addOnPreRun")||(a.addOnPreRun=function(){return b("'addOnPreRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addOnInit")||(a.addOnInit=function(){return b("'addOnInit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addOnPreMain")||(a.addOnPreMain=function(){return b("'addOnPreMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"addOnExit")||(a.addOnExit=function(){return b("'addOnExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addOnPostRun")||(a.addOnPostRun=function(){return b("'addOnPostRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeStringToMemory")||(a.writeStringToMemory=function(){return b("'writeStringToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"writeArrayToMemory")||(a.writeArrayToMemory=function(){return b("'writeArrayToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeAsciiToMemory")||(a.writeAsciiToMemory=function(){return b("'writeAsciiToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addRunDependency")||(a.addRunDependency=function(){return b("'addRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}); +Object.getOwnPropertyDescriptor(a,"removeRunDependency")||(a.removeRunDependency=function(){return b("'removeRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"FS_createFolder")||(a.FS_createFolder=function(){return b("'FS_createFolder' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"FS_createPath")||(a.FS_createPath=function(){return b("'FS_createPath' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"FS_createDataFile")||(a.FS_createDataFile=function(){return b("'FS_createDataFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}); +Object.getOwnPropertyDescriptor(a,"FS_createPreloadedFile")||(a.FS_createPreloadedFile=function(){return b("'FS_createPreloadedFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"FS_createLazyFile")||(a.FS_createLazyFile=function(){return b("'FS_createLazyFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}); +Object.getOwnPropertyDescriptor(a,"FS_createLink")||(a.FS_createLink=function(){return b("'FS_createLink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"FS_createDevice")||(a.FS_createDevice=function(){return b("'FS_createDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"FS_unlink")||(a.FS_unlink= +function(){return b("'FS_unlink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(a,"getLEB")||(a.getLEB=function(){return b("'getLEB' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getFunctionTables")||(a.getFunctionTables=function(){return b("'getFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"alignFunctionTables")||(a.alignFunctionTables=function(){return b("'alignFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerFunctions")||(a.registerFunctions=function(){return b("'registerFunctions' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"addFunction")||(a.addFunction=function(){return b("'addFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"removeFunction")||(a.removeFunction=function(){return b("'removeFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getFuncWrapper")||(a.getFuncWrapper=function(){return b("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"prettyPrint")||(a.prettyPrint=function(){return b("'prettyPrint' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"dynCall")||(a.dynCall=function(){return b("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getCompilerSetting")||(a.getCompilerSetting=function(){return b("'getCompilerSetting' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"print")||(a.print=function(){return b("'print' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"printErr")||(a.printErr=function(){return b("'printErr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getTempRet0")||(a.getTempRet0=function(){return b("'getTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"setTempRet0")||(a.setTempRet0=function(){return b("'setTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"callMain")||(a.callMain=function(){return b("'callMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"abort")||(a.abort=function(){return b("'abort' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"keepRuntimeAlive")||(a.keepRuntimeAlive=function(){return b("'keepRuntimeAlive' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"zeroMemory")||(a.zeroMemory=function(){return b("'zeroMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToNewUTF8")||(a.stringToNewUTF8=function(){return b("'stringToNewUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"setFileTime")||(a.setFileTime=function(){return b("'setFileTime' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"emscripten_realloc_buffer")||(a.emscripten_realloc_buffer=function(){return b("'emscripten_realloc_buffer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"ENV")||(a.ENV=function(){return b("'ENV' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"withStackSave")||(a.withStackSave=function(){return b("'withStackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"ERRNO_CODES")||(a.ERRNO_CODES=function(){return b("'ERRNO_CODES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"ERRNO_MESSAGES")||(a.ERRNO_MESSAGES=function(){return b("'ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"setErrNo")||(a.setErrNo=function(){return b("'setErrNo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"inetPton4")||(a.inetPton4=function(){return b("'inetPton4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"inetNtop4")||(a.inetNtop4=function(){return b("'inetNtop4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"inetPton6")||(a.inetPton6=function(){return b("'inetPton6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"inetNtop6")||(a.inetNtop6=function(){return b("'inetNtop6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"readSockaddr")||(a.readSockaddr=function(){return b("'readSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeSockaddr")||(a.writeSockaddr=function(){return b("'writeSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"DNS")||(a.DNS=function(){return b("'DNS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getHostByName")||(a.getHostByName=function(){return b("'getHostByName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GAI_ERRNO_MESSAGES")||(a.GAI_ERRNO_MESSAGES=function(){return b("'GAI_ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"Protocols")||(a.Protocols=function(){return b("'Protocols' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"Sockets")||(a.Sockets=function(){return b("'Sockets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getRandomDevice")||(a.getRandomDevice=function(){return b("'getRandomDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"traverseStack")||(a.traverseStack=function(){return b("'traverseStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"convertFrameToPC")||(a.convertFrameToPC=function(){return b("'convertFrameToPC' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"UNWIND_CACHE")||(a.UNWIND_CACHE=function(){return b("'UNWIND_CACHE' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"saveInUnwindCache")||(a.saveInUnwindCache=function(){return b("'saveInUnwindCache' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"convertPCtoSourceLocation")||(a.convertPCtoSourceLocation=function(){return b("'convertPCtoSourceLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"readAsmConstArgsArray")||(a.readAsmConstArgsArray=function(){return b("'readAsmConstArgsArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"readAsmConstArgs")||(a.readAsmConstArgs=function(){return b("'readAsmConstArgs' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"mainThreadEM_ASM")||(a.mainThreadEM_ASM=function(){return b("'mainThreadEM_ASM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"jstoi_q")||(a.jstoi_q=function(){return b("'jstoi_q' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"jstoi_s")||(a.jstoi_s=function(){return b("'jstoi_s' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getExecutableName")||(a.getExecutableName=function(){return b("'getExecutableName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"listenOnce")||(a.listenOnce=function(){return b("'listenOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"autoResumeAudioContext")||(a.autoResumeAudioContext=function(){return b("'autoResumeAudioContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"dynCallLegacy")||(a.dynCallLegacy=function(){return b("'dynCallLegacy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getDynCaller")||(a.getDynCaller=function(){return b("'getDynCaller' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"dynCall")||(a.dynCall=function(){return b("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"callRuntimeCallbacks")||(a.callRuntimeCallbacks=function(){return b("'callRuntimeCallbacks' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"wasmTableMirror")||(a.wasmTableMirror=function(){return b("'wasmTableMirror' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"setWasmTableEntry")||(a.setWasmTableEntry=function(){return b("'setWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getWasmTableEntry")||(a.getWasmTableEntry=function(){return b("'getWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"handleException")||(a.handleException=function(){return b("'handleException' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"runtimeKeepalivePush")||(a.runtimeKeepalivePush=function(){return b("'runtimeKeepalivePush' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"runtimeKeepalivePop")||(a.runtimeKeepalivePop=function(){return b("'runtimeKeepalivePop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"callUserCallback")||(a.callUserCallback=function(){return b("'callUserCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"maybeExit")||(a.maybeExit=function(){return b("'maybeExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"safeSetTimeout")||(a.safeSetTimeout=function(){return b("'safeSetTimeout' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"asmjsMangle")||(a.asmjsMangle=function(){return b("'asmjsMangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"asyncLoad")||(a.asyncLoad=function(){return b("'asyncLoad' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"alignMemory")||(a.alignMemory=function(){return b("'alignMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"mmapAlloc")||(a.mmapAlloc=function(){return b("'mmapAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"reallyNegative")||(a.reallyNegative=function(){return b("'reallyNegative' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"unSign")||(a.unSign=function(){return b("'unSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"reSign")||(a.reSign=function(){return b("'reSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"formatString")||(a.formatString=function(){return b("'formatString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"PATH")||(a.PATH=function(){return b("'PATH' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"PATH_FS")||(a.PATH_FS=function(){return b("'PATH_FS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SYSCALLS")||(a.SYSCALLS= +function(){return b("'SYSCALLS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"syscallMmap2")||(a.syscallMmap2=function(){return b("'syscallMmap2' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"syscallMunmap")||(a.syscallMunmap=function(){return b("'syscallMunmap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getSocketFromFD")|| +(a.getSocketFromFD=function(){return b("'getSocketFromFD' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getSocketAddress")||(a.getSocketAddress=function(){return b("'getSocketAddress' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"JSEvents")||(a.JSEvents=function(){return b("'JSEvents' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"registerKeyEventCallback")||(a.registerKeyEventCallback=function(){return b("'registerKeyEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"specialHTMLTargets")||(a.specialHTMLTargets=function(){return b("'specialHTMLTargets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"maybeCStringToJsString")||(a.maybeCStringToJsString=function(){return b("'maybeCStringToJsString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"findEventTarget")||(a.findEventTarget=function(){return b("'findEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"findCanvasEventTarget")||(a.findCanvasEventTarget=function(){return b("'findCanvasEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getBoundingClientRect")||(a.getBoundingClientRect=function(){return b("'getBoundingClientRect' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"fillMouseEventData")||(a.fillMouseEventData=function(){return b("'fillMouseEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerMouseEventCallback")||(a.registerMouseEventCallback=function(){return b("'registerMouseEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerWheelEventCallback")||(a.registerWheelEventCallback= +function(){return b("'registerWheelEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerUiEventCallback")||(a.registerUiEventCallback=function(){return b("'registerUiEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerFocusEventCallback")||(a.registerFocusEventCallback=function(){return b("'registerFocusEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"fillDeviceOrientationEventData")||(a.fillDeviceOrientationEventData=function(){return b("'fillDeviceOrientationEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerDeviceOrientationEventCallback")||(a.registerDeviceOrientationEventCallback=function(){return b("'registerDeviceOrientationEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"fillDeviceMotionEventData")||(a.fillDeviceMotionEventData=function(){return b("'fillDeviceMotionEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerDeviceMotionEventCallback")||(a.registerDeviceMotionEventCallback=function(){return b("'registerDeviceMotionEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"screenOrientation")||(a.screenOrientation=function(){return b("'screenOrientation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"fillOrientationChangeEventData")||(a.fillOrientationChangeEventData=function(){return b("'fillOrientationChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerOrientationChangeEventCallback")||(a.registerOrientationChangeEventCallback=function(){return b("'registerOrientationChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"fillFullscreenChangeEventData")||(a.fillFullscreenChangeEventData=function(){return b("'fillFullscreenChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerFullscreenChangeEventCallback")||(a.registerFullscreenChangeEventCallback=function(){return b("'registerFullscreenChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerRestoreOldStyle")|| +(a.registerRestoreOldStyle=function(){return b("'registerRestoreOldStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"hideEverythingExceptGivenElement")||(a.hideEverythingExceptGivenElement=function(){return b("'hideEverythingExceptGivenElement' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"restoreHiddenElements")||(a.restoreHiddenElements=function(){return b("'restoreHiddenElements' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"setLetterbox")||(a.setLetterbox=function(){return b("'setLetterbox' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"currentFullscreenStrategy")||(a.currentFullscreenStrategy=function(){return b("'currentFullscreenStrategy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"restoreOldWindowedStyle")||(a.restoreOldWindowedStyle=function(){return b("'restoreOldWindowedStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"softFullscreenResizeWebGLRenderTarget")||(a.softFullscreenResizeWebGLRenderTarget=function(){return b("'softFullscreenResizeWebGLRenderTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"doRequestFullscreen")||(a.doRequestFullscreen=function(){return b("'doRequestFullscreen' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"fillPointerlockChangeEventData")|| +(a.fillPointerlockChangeEventData=function(){return b("'fillPointerlockChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerPointerlockChangeEventCallback")||(a.registerPointerlockChangeEventCallback=function(){return b("'registerPointerlockChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerPointerlockErrorEventCallback")||(a.registerPointerlockErrorEventCallback= +function(){return b("'registerPointerlockErrorEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"requestPointerLock")||(a.requestPointerLock=function(){return b("'requestPointerLock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"fillVisibilityChangeEventData")||(a.fillVisibilityChangeEventData=function(){return b("'fillVisibilityChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"registerVisibilityChangeEventCallback")||(a.registerVisibilityChangeEventCallback=function(){return b("'registerVisibilityChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerTouchEventCallback")||(a.registerTouchEventCallback=function(){return b("'registerTouchEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"fillGamepadEventData")|| +(a.fillGamepadEventData=function(){return b("'fillGamepadEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerGamepadEventCallback")||(a.registerGamepadEventCallback=function(){return b("'registerGamepadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerBeforeUnloadEventCallback")||(a.registerBeforeUnloadEventCallback=function(){return b("'registerBeforeUnloadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"fillBatteryEventData")||(a.fillBatteryEventData=function(){return b("'fillBatteryEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"battery")||(a.battery=function(){return b("'battery' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"registerBatteryEventCallback")||(a.registerBatteryEventCallback=function(){return b("'registerBatteryEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"setCanvasElementSize")||(a.setCanvasElementSize=function(){return b("'setCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"getCanvasElementSize")||(a.getCanvasElementSize=function(){return b("'getCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"demangle")||(a.demangle=function(){return b("'demangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"demangleAll")||(a.demangleAll=function(){return b("'demangleAll' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"jsStackTrace")||(a.jsStackTrace=function(){return b("'jsStackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stackTrace")||(a.stackTrace=function(){return b("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"getEnvStrings")||(a.getEnvStrings=function(){return b("'getEnvStrings' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"checkWasiClock")||(a.checkWasiClock=function(){return b("'checkWasiClock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"flush_NO_FILESYSTEM")||(a.flush_NO_FILESYSTEM=function(){return b("'flush_NO_FILESYSTEM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"writeI53ToI64")||(a.writeI53ToI64=function(){return b("'writeI53ToI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeI53ToI64Clamped")||(a.writeI53ToI64Clamped=function(){return b("'writeI53ToI64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeI53ToI64Signaling")||(a.writeI53ToI64Signaling=function(){return b("'writeI53ToI64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"writeI53ToU64Clamped")||(a.writeI53ToU64Clamped=function(){return b("'writeI53ToU64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeI53ToU64Signaling")||(a.writeI53ToU64Signaling=function(){return b("'writeI53ToU64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"readI53FromI64")||(a.readI53FromI64=function(){return b("'readI53FromI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"readI53FromU64")||(a.readI53FromU64=function(){return b("'readI53FromU64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"convertI32PairToI53")||(a.convertI32PairToI53=function(){return b("'convertI32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"convertU32PairToI53")||(a.convertU32PairToI53=function(){return b("'convertU32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"setImmediateWrapped")||(a.setImmediateWrapped=function(){return b("'setImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"clearImmediateWrapped")||(a.clearImmediateWrapped=function(){return b("'clearImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"polyfillSetImmediate")||(a.polyfillSetImmediate=function(){return b("'polyfillSetImmediate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"uncaughtExceptionCount")||(a.uncaughtExceptionCount=function(){return b("'uncaughtExceptionCount' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"exceptionLast")||(a.exceptionLast=function(){return b("'exceptionLast' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"exceptionCaught")||(a.exceptionCaught=function(){return b("'exceptionCaught' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"ExceptionInfo")||(a.ExceptionInfo=function(){return b("'ExceptionInfo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"CatchInfo")||(a.CatchInfo=function(){return b("'CatchInfo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"exception_addRef")||(a.exception_addRef=function(){return b("'exception_addRef' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"exception_decRef")||(a.exception_decRef=function(){return b("'exception_decRef' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"Browser")||(a.Browser=function(){return b("'Browser' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"funcWrappers")||(a.funcWrappers=function(){return b("'funcWrappers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"getFuncWrapper")||(a.getFuncWrapper=function(){return b("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"setMainLoop")||(a.setMainLoop=function(){return b("'setMainLoop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"wget")||(a.wget=function(){return b("'wget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"tempFixedLengthArray")||(a.tempFixedLengthArray=function(){return b("'tempFixedLengthArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"miniTempWebGLFloatBuffers")||(a.miniTempWebGLFloatBuffers=function(){return b("'miniTempWebGLFloatBuffers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"heapObjectForWebGLType")||(a.heapObjectForWebGLType=function(){return b("'heapObjectForWebGLType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"heapAccessShiftForWebGLHeap")||(a.heapAccessShiftForWebGLHeap=function(){return b("'heapAccessShiftForWebGLHeap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GL")||(a.GL=function(){return b("'GL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"emscriptenWebGLGet")||(a.emscriptenWebGLGet=function(){return b("'emscriptenWebGLGet' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"computeUnpackAlignedImageSize")||(a.computeUnpackAlignedImageSize=function(){return b("'computeUnpackAlignedImageSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"emscriptenWebGLGetTexPixelData")||(a.emscriptenWebGLGetTexPixelData=function(){return b("'emscriptenWebGLGetTexPixelData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"emscriptenWebGLGetUniform")|| +(a.emscriptenWebGLGetUniform=function(){return b("'emscriptenWebGLGetUniform' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"webglGetUniformLocation")||(a.webglGetUniformLocation=function(){return b("'webglGetUniformLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"webglPrepareUniformLocationsBeforeFirstUse")||(a.webglPrepareUniformLocationsBeforeFirstUse=function(){return b("'webglPrepareUniformLocationsBeforeFirstUse' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"webglGetLeftBracePos")||(a.webglGetLeftBracePos=function(){return b("'webglGetLeftBracePos' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"emscriptenWebGLGetVertexAttrib")||(a.emscriptenWebGLGetVertexAttrib=function(){return b("'emscriptenWebGLGetVertexAttrib' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"writeGLArray")||(a.writeGLArray=function(){return b("'writeGLArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"AL")||(a.AL=function(){return b("'AL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SDL_unicode")||(a.SDL_unicode=function(){return b("'SDL_unicode' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SDL_ttfContext")||(a.SDL_ttfContext=function(){return b("'SDL_ttfContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"SDL_audio")||(a.SDL_audio=function(){return b("'SDL_audio' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SDL")||(a.SDL=function(){return b("'SDL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"SDL_gfx")||(a.SDL_gfx=function(){return b("'SDL_gfx' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GLUT")||(a.GLUT=function(){return b("'GLUT' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"EGL")||(a.EGL=function(){return b("'EGL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GLFW_Window")||(a.GLFW_Window=function(){return b("'GLFW_Window' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"GLFW")||(a.GLFW=function(){return b("'GLFW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"GLEW")||(a.GLEW=function(){return b("'GLEW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"IDBStore")||(a.IDBStore=function(){return b("'IDBStore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"runAndAbortIfError")||(a.runAndAbortIfError=function(){return b("'runAndAbortIfError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"warnOnce")||(a.warnOnce=function(){return b("'warnOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stackSave")||(a.stackSave=function(){return b("'stackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stackRestore")||(a.stackRestore=function(){return b("'stackRestore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"stackAlloc")||(a.stackAlloc=function(){return b("'stackAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"AsciiToString")||(a.AsciiToString=function(){return b("'AsciiToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToAscii")||(a.stringToAscii=function(){return b("'stringToAscii' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a, +"UTF16ToString")||(a.UTF16ToString=function(){return b("'UTF16ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToUTF16")||(a.stringToUTF16=function(){return b("'stringToUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"lengthBytesUTF16")||(a.lengthBytesUTF16=function(){return b("'lengthBytesUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"UTF32ToString")||(a.UTF32ToString=function(){return b("'UTF32ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"stringToUTF32")||(a.stringToUTF32=function(){return b("'stringToUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"lengthBytesUTF32")||(a.lengthBytesUTF32=function(){return b("'lengthBytesUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}); +Object.getOwnPropertyDescriptor(a,"allocateUTF8")||(a.allocateUTF8=function(){return b("'allocateUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(a,"allocateUTF8OnStack")||(a.allocateUTF8OnStack=function(){return b("'allocateUTF8OnStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")});a.writeStackCookie=w;a.checkStackCookie=z;Object.getOwnPropertyDescriptor(a,"ALLOC_NORMAL")||Object.defineProperty(a,"ALLOC_NORMAL", +{configurable:!0,get:function(){b("'ALLOC_NORMAL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});Object.getOwnPropertyDescriptor(a,"ALLOC_STACK")||Object.defineProperty(a,"ALLOC_STACK",{configurable:!0,get:function(){b("'ALLOC_STACK' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});var xa;ra=function c(){xa||Fa();xa||(ra=c)};a.run=Fa;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0=v.size?(h(0>>=0;switch(d.BYTES_PER_ELEMENT){case 2:e>>>= +1;break;case 4:e>>>=2;break;case 8:e>>>=3}for(var p=0;pc.byteLength)return a.INVALID_GEOMETRY_TYPE;switch(c[7]){case 0:return a.POINT_CLOUD;case 1:return a.TRIANGULAR_MESH;default:return a.INVALID_GEOMETRY_TYPE}};return k.ready}}(); +"object"===typeof exports&&"object"===typeof module?module.exports=DracoDecoderModule:"function"===typeof define&&define.amd?define([],function(){return DracoDecoderModule}):"object"===typeof exports&&(exports.DracoDecoderModule=DracoDecoderModule); diff --git a/maya/draco_maya_wrapper_macos.tar.bz b/maya/draco_maya_wrapper_macos.tar.bz index 91adb9a1..7f8bde3a 100644 Binary files a/maya/draco_maya_wrapper_macos.tar.bz and b/maya/draco_maya_wrapper_macos.tar.bz differ diff --git a/maya/draco_maya_wrapper_windows.tar.bz b/maya/draco_maya_wrapper_windows.tar.bz index 34dd1f67..53c5bf6f 100644 Binary files a/maya/draco_maya_wrapper_windows.tar.bz and b/maya/draco_maya_wrapper_windows.tar.bz differ diff --git a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.cc b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.cc index f410a6cd..60429d5c 100644 --- a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.cc +++ b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.cc @@ -18,22 +18,29 @@ namespace draco { PredictionSchemeMethod SelectPredictionMethod( int att_id, const PointCloudEncoder *encoder) { - if (encoder->options()->GetSpeed() >= 10) { + return SelectPredictionMethod(att_id, *encoder->options(), encoder); +} + +PredictionSchemeMethod SelectPredictionMethod( + int att_id, const EncoderOptions &options, + const PointCloudEncoder *encoder) { + if (options.GetSpeed() >= 10) { // Selected fastest, though still doing some compression. return PREDICTION_DIFFERENCE; } if (encoder->GetGeometryType() == TRIANGULAR_MESH) { // Use speed setting to select the best encoding method. const PointAttribute *const att = encoder->point_cloud()->attribute(att_id); - if (att->attribute_type() == GeometryAttribute::TEX_COORD) { - if (encoder->options()->GetSpeed() < 4) { + if (att->attribute_type() == GeometryAttribute::TEX_COORD && + att->num_components() == 2) { + if (options.GetSpeed() < 4) { // Use texture coordinate prediction for speeds 0, 1, 2, 3. return MESH_PREDICTION_TEX_COORDS_PORTABLE; } } if (att->attribute_type() == GeometryAttribute::NORMAL) { #ifdef DRACO_NORMAL_ENCODING_SUPPORTED - if (encoder->options()->GetSpeed() < 4) { + if (options.GetSpeed() < 4) { // Use geometric normal prediction for speeds 0, 1, 2, 3. // For this prediction, the position attribute needs to be either // integer or quantized as well. @@ -43,8 +50,8 @@ PredictionSchemeMethod SelectPredictionMethod( encoder->point_cloud()->GetNamedAttribute( GeometryAttribute::POSITION); if (pos_att && (IsDataTypeIntegral(pos_att->data_type()) || - encoder->options()->GetAttributeInt( - pos_att_id, "quantization_bits", -1) > 0)) { + options.GetAttributeInt(pos_att_id, "quantization_bits", + -1) > 0)) { return MESH_PREDICTION_GEOMETRIC_NORMAL; } } @@ -52,11 +59,10 @@ PredictionSchemeMethod SelectPredictionMethod( return PREDICTION_DIFFERENCE; // default } // Handle other attribute types. - if (encoder->options()->GetSpeed() >= 8) { + if (options.GetSpeed() >= 8) { return PREDICTION_DIFFERENCE; } - if (encoder->options()->GetSpeed() >= 2 || - encoder->point_cloud()->num_points() < 40) { + if (options.GetSpeed() >= 2 || encoder->point_cloud()->num_points() < 40) { // Parallelogram prediction is used for speeds 2 - 7 or when the overhead // of using constrained multi-parallelogram would be too high. return MESH_PREDICTION_PARALLELOGRAM; diff --git a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.h b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.h index 40a7683a..b7e21224 100644 --- a/src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.h +++ b/src/draco/compression/attributes/prediction_schemes/prediction_scheme_encoder_factory.h @@ -38,6 +38,10 @@ namespace draco { PredictionSchemeMethod SelectPredictionMethod(int att_id, const PointCloudEncoder *encoder); +PredictionSchemeMethod SelectPredictionMethod(int att_id, + const EncoderOptions &options, + const PointCloudEncoder *encoder); + // Factory class for creating mesh prediction schemes. template struct MeshPredictionSchemeEncoderFactory { diff --git a/src/draco/compression/entropy/rans_symbol_encoder.h b/src/draco/compression/entropy/rans_symbol_encoder.h index 4e07ec87..4b738b50 100644 --- a/src/draco/compression/entropy/rans_symbol_encoder.h +++ b/src/draco/compression/entropy/rans_symbol_encoder.h @@ -125,8 +125,8 @@ bool RAnsSymbolEncoder::Create( for (int i = 0; i < num_symbols; ++i) { sorted_probabilities[i] = i; } - std::sort(sorted_probabilities.begin(), sorted_probabilities.end(), - ProbabilityLess(&probability_table_)); + std::stable_sort(sorted_probabilities.begin(), sorted_probabilities.end(), + ProbabilityLess(&probability_table_)); if (total_rans_prob < rans_precision_) { // This happens rather infrequently, just add the extra needed precision // to the most frequent symbol. diff --git a/src/draco/core/draco_version.h b/src/draco/core/draco_version.h index 573ccf3f..82e5d6b6 100644 --- a/src/draco/core/draco_version.h +++ b/src/draco/core/draco_version.h @@ -18,7 +18,7 @@ namespace draco { // Draco version is comprised of ... -static const char kDracoVersion[] = "1.5.0"; +static const char kDracoVersion[] = "1.5.1"; const char *Version() { return kDracoVersion; } diff --git a/src/draco/core/status.h b/src/draco/core/status.h index 54ee7b3e..ee7f43ee 100644 --- a/src/draco/core/status.h +++ b/src/draco/core/status.h @@ -62,6 +62,9 @@ inline std::ostream &operator<<(std::ostream &os, const Status &status) { } inline Status OkStatus() { return Status(Status::OK); } +inline Status ErrorStatus(const std::string &msg) { + return Status(Status::DRACO_ERROR, msg); +} // Evaluates an expression that returns draco::Status. If the status is not OK, // the macro returns the status object. diff --git a/src/draco/core/status_test.cc b/src/draco/core/status_test.cc index c1ad4ab3..69d2c018 100644 --- a/src/draco/core/status_test.cc +++ b/src/draco/core/status_test.cc @@ -33,6 +33,10 @@ TEST_F(StatusTest, TestStatusOutput) { std::stringstream str; str << status; ASSERT_EQ(str.str(), "Error msg."); + + const draco::Status status2 = draco::ErrorStatus("Error msg2."); + ASSERT_EQ(status2.code(), draco::Status::DRACO_ERROR); + ASSERT_EQ(status2.error_msg_string(), "Error msg2."); } } // namespace diff --git a/src/draco/io/file_reader_factory.cc b/src/draco/io/file_reader_factory.cc index 14264519..a8f15a11 100644 --- a/src/draco/io/file_reader_factory.cc +++ b/src/draco/io/file_reader_factory.cc @@ -1,5 +1,6 @@ #include "draco/io/file_reader_factory.h" +#include #include namespace draco { diff --git a/src/draco/io/file_utils.cc b/src/draco/io/file_utils.cc index 02dd8930..1bc99287 100644 --- a/src/draco/io/file_utils.cc +++ b/src/draco/io/file_utils.cc @@ -14,6 +14,8 @@ // #include "draco/io/file_utils.h" +#include + #include "draco/io/file_reader_factory.h" #include "draco/io/file_reader_interface.h" #include "draco/io/file_writer_factory.h" diff --git a/src/draco/io/file_utils_test.cc b/src/draco/io/file_utils_test.cc index 4085ff0c..b55b1e3b 100644 --- a/src/draco/io/file_utils_test.cc +++ b/src/draco/io/file_utils_test.cc @@ -14,6 +14,8 @@ // #include "draco/io/file_utils.h" +#include + #include "draco/core/draco_test_base.h" #include "draco/core/draco_test_utils.h" diff --git a/src/draco/io/file_writer_factory.cc b/src/draco/io/file_writer_factory.cc index cb685160..8ffd5400 100644 --- a/src/draco/io/file_writer_factory.cc +++ b/src/draco/io/file_writer_factory.cc @@ -1,5 +1,6 @@ #include "draco/io/file_writer_factory.h" +#include #include namespace draco { diff --git a/src/draco/io/gltf_decoder.cc b/src/draco/io/gltf_decoder.cc index 5c553930..7d439e04 100644 --- a/src/draco/io/gltf_decoder.cc +++ b/src/draco/io/gltf_decoder.cc @@ -16,7 +16,11 @@ #ifdef DRACO_TRANSCODER_SUPPORTED +#include +#include #include +#include +#include #include "draco/core/hash_utils.h" #include "draco/core/status.h" @@ -27,7 +31,7 @@ #include "draco/scene/scene_indices.h" #include "draco/texture/source_image.h" #include "draco/texture/texture_utils.h" -#include "third_party/tinygltf/tiny_gltf.h" +#include "tiny_gltf.h" namespace draco { @@ -568,6 +572,13 @@ Status GltfDecoder::DecodePrimitive(const tinygltf::Primitive &primitive, return Status(Status::DRACO_ERROR, "Primitive does not contain triangles."); } + // Store the transformation scale of this primitive loading as draco::Mesh. + if (scene_ == nullptr) { + // TODO(vytyaz): Do something for non-uniform scaling. + const float scale = transform_matrix.col(0).norm(); + gltf_primitive_material_to_scales_[primitive.material].push_back(scale); + } + // Handle indices first. DRACO_ASSIGN_OR_RETURN(const std::vector indices_data, DecodePrimitiveIndices(primitive)); @@ -1071,6 +1082,7 @@ Status GltfDecoder::CheckAndAddTextureToDracoMaterial( Status GltfDecoder::DecodeGltfToScene() { DRACO_RETURN_IF_ERROR(GatherAttributeAndMaterialStats()); + DRACO_RETURN_IF_ERROR(AddLightsToScene()); for (const tinygltf::Scene &scene : gltf_model_.scenes) { for (int i = 0; i < scene.nodes.size(); ++i) { DRACO_RETURN_IF_ERROR( @@ -1087,6 +1099,49 @@ Status GltfDecoder::DecodeGltfToScene() { return OkStatus(); } +Status GltfDecoder::AddLightsToScene() { + // Add all lights to Draco scene. + for (const auto &light : gltf_model_.lights) { + // Add a new light to the scene. + const LightIndex light_index = scene_->AddLight(); + Light *scene_light = scene_->GetLight(light_index); + + // Decode light type. + const std::map types = { + {"directional", Light::DIRECTIONAL}, + {"point", Light::POINT}, + {"spot", Light::SPOT}}; + if (types.count(light.type) == 0) { + return ErrorStatus("Light type is invalid."); + } + scene_light->SetType(types.at(light.type)); + + // Decode spot light properties. + if (scene_light->GetType() == Light::SPOT) { + scene_light->SetInnerConeAngle(light.spot.innerConeAngle); + scene_light->SetOuterConeAngle(light.spot.outerConeAngle); + } + + // Decode other light properties. + scene_light->SetName(light.name); + if (!light.color.empty()) { // Empty means that color is not specified. + if (light.color.size() != 3) { + return ErrorStatus("Light color is malformed."); + } + scene_light->SetColor( + Vector3f(light.color[0], light.color[1], light.color[2])); + } + scene_light->SetIntensity(light.intensity); + if (light.range != 0.0) { // Zero means that range is not specified. + if (light.range < 0.0) { + return ErrorStatus("Light range must be positive."); + } + scene_light->SetRange(light.range); + } + } + return OkStatus(); +} + Status GltfDecoder::AddAnimationsToScene() { for (const auto &animation : gltf_model_.animations) { const AnimationIndex animation_index = scene_->AddAnimation(); @@ -1108,17 +1163,24 @@ Status GltfDecoder::AddAnimationsToScene() { Status GltfDecoder::DecodeNodeForScene(int node_index, SceneNodeIndex parent_index) { - const tinygltf::Node &node = gltf_model_.nodes[node_index]; - const SceneNodeIndex scene_node_index = scene_->AddNode(); - // Update mapping between glTF Nodes and indices in the scene. - gltf_node_to_scenenode_index_[node_index] = scene_node_index; + SceneNodeIndex scene_node_index = kInvalidSceneNodeIndex; + SceneNode *scene_node = nullptr; + bool is_new_node; + if (gltf_scene_graph_mode_ == GltfSceneGraphMode::DAG && + gltf_node_to_scenenode_index_.find(node_index) != + gltf_node_to_scenenode_index_.end()) { + // Node has been decoded already. + scene_node_index = gltf_node_to_scenenode_index_[node_index]; + scene_node = scene_->GetNode(scene_node_index); + is_new_node = false; + } else { + scene_node_index = scene_->AddNode(); + // Update mapping between glTF Nodes and indices in the scene. + gltf_node_to_scenenode_index_[node_index] = scene_node_index; - SceneNode *const scene_node = scene_->GetNode(scene_node_index); - if (!node.name.empty()) { - scene_node->SetName(node.name); + scene_node = scene_->GetNode(scene_node_index); + is_new_node = true; } - std::unique_ptr trsm = GetNodeTrsMatrix(node); - scene_node->SetTrsMatrix(*trsm); if (parent_index != kInvalidSceneNodeIndex) { scene_node->AddParentIndex(parent_index); @@ -1126,6 +1188,15 @@ Status GltfDecoder::DecodeNodeForScene(int node_index, parent_node->AddChildIndex(scene_node_index); } + if (!is_new_node) { + return OkStatus(); + } + const tinygltf::Node &node = gltf_model_.nodes[node_index]; + if (!node.name.empty()) { + scene_node->SetName(node.name); + } + std::unique_ptr trsm = GetNodeTrsMatrix(node); + scene_node->SetTrsMatrix(*trsm); if (node.skin >= 0) { // Save the index to the source skins in the node. This will be updated // later when the skins are processed. @@ -1153,6 +1224,25 @@ Status GltfDecoder::DecodeNodeForScene(int node_index, gltf_mesh_to_scene_mesh_group_[node.mesh] = scene_mesh_group_index; } } + + // Decode light index. + const auto &e = node.extensions.find("KHR_lights_punctual"); + if (e != node.extensions.end()) { + const tinygltf::Value::Object &o = e->second.Get(); + const auto &light = o.find("light"); + if (light != o.end()) { + const tinygltf::Value &value = light->second; + if (!value.IsInt()) { + return ErrorStatus("Node light index is malformed."); + } + const int light_index = value.Get(); + if (light_index < 0 || light_index >= scene_->NumLights()) { + return ErrorStatus("Node light index is out of bounds."); + } + scene_node->SetLightIndex(LightIndex(light_index)); + } + } + for (int i = 0; i < node.children.size(); ++i) { DRACO_RETURN_IF_ERROR( DecodeNodeForScene(node.children[i], scene_node_index)); @@ -1381,6 +1471,9 @@ Status GltfDecoder::AddGltfMaterial(int input_material_index, input_material.normalTexture.index, input_material.normalTexture.texCoord, input_material.normalTexture.extensions, output_material, TextureMap::NORMAL_TANGENT_SPACE)); + if (input_material.normalTexture.scale != 1.0) { + output_material->SetNormalTextureScale(input_material.normalTexture.scale); + } DRACO_RETURN_IF_ERROR(CheckAndAddTextureToDracoMaterial( input_material.occlusionTexture.index, input_material.occlusionTexture.texCoord, @@ -1400,8 +1493,8 @@ Status GltfDecoder::AddGltfMaterial(int input_material_index, DecodeMaterialTransmissionExtension(input_material, output_material)); DRACO_RETURN_IF_ERROR( DecodeMaterialClearcoatExtension(input_material, output_material)); - DRACO_RETURN_IF_ERROR( - DecodeMaterialVolumeExtension(input_material, output_material)); + DRACO_RETURN_IF_ERROR(DecodeMaterialVolumeExtension( + input_material, input_material_index, output_material)); DRACO_RETURN_IF_ERROR( DecodeMaterialIorExtension(input_material, output_material)); DRACO_RETURN_IF_ERROR( @@ -1543,7 +1636,8 @@ Status GltfDecoder::DecodeMaterialClearcoatExtension( } Status GltfDecoder::DecodeMaterialVolumeExtension( - const tinygltf::Material &input_material, Material *output_material) { + const tinygltf::Material &input_material, int input_material_index, + Material *output_material) { // Do nothing if extension is absent. const auto &extension_it = input_material.extensions.find("KHR_materials_volume"); @@ -1561,7 +1655,30 @@ Status GltfDecoder::DecodeMaterialVolumeExtension( DRACO_ASSIGN_OR_RETURN( success, DecodeFloat("thicknessFactor", extension_object, &value)); if (success) { - output_material->SetThicknessFactor(value); + // Volume thickness factor is given in the coordinate space of the model. + // When the model is loaded as draco::Mesh, the scene graph transformations + // are applied to position attribute. Since this effectively scales the + // model coordinate space, the volume thickness factor also must be scaled. + // No scaling is done when the model is loaded as draco::Scene. + float scale = 1.0f; + if (scene_ == nullptr) { + if (gltf_primitive_material_to_scales_.count(input_material_index) == 1) { + const std::vector &scales = + gltf_primitive_material_to_scales_[input_material_index]; + + // It is only possible to scale the volume thickness factor if all + // primitives using this material have the same transformation scale. + // An alternative would be to create a separate meterial for each scale. + scale = scales[0]; + for (int i = 1; i < scales.size(); i++) { + // Note that close-enough scales could also be permitted. + if (scales[i] != scale) { + return ErrorStatus("Cannot represent volume thickness in a mesh."); + } + } + } + } + output_material->SetThicknessFactor(scale * value); } // Decode attenuation distance. diff --git a/src/draco/io/gltf_decoder.h b/src/draco/io/gltf_decoder.h index daac7338..b6d3a2d2 100644 --- a/src/draco/io/gltf_decoder.h +++ b/src/draco/io/gltf_decoder.h @@ -20,6 +20,7 @@ #ifdef DRACO_TRANSCODER_SUPPORTED #include +#include #include #include @@ -31,7 +32,7 @@ #include "draco/mesh/mesh.h" #include "draco/mesh/triangle_soup_mesh_builder.h" #include "draco/scene/scene.h" -#include "third_party/tinygltf/tiny_gltf.h" +#include "tiny_gltf.h" namespace draco { @@ -59,6 +60,17 @@ class GltfDecoder { StatusOr> DecodeFromBufferToScene( DecoderBuffer *buffer); + // Scene graph can be loaded either as a tree or a general directed acyclic + // graph (DAG) that allows multiple parent nodes. By default. we decode the + // scene graph as a tree. If the tree mode is selected and the input contains + // nodes with multiple parents, these nodes are duplicated to form a tree. + // TODO(ostava): Add support for DAG mode to other parts of the Draco + // library. + enum class GltfSceneGraphMode { TREE, DAG }; + void SetSceneGraphMode(GltfSceneGraphMode mode) { + gltf_scene_graph_mode_ = mode; + } + private: // Loads |file_name| into |gltf_model_|. Fills |input_files| with paths to all // input files when non-null. @@ -212,13 +224,17 @@ class GltfDecoder { // Decode glTF file to scene. Status DecodeGltfToScene(); + // Decode glTF lights into a scene. + Status AddLightsToScene(); + // Decode glTF animations into a scene. All of the glTF nodes must be decoded // to the scene before this function is called. Status AddAnimationsToScene(); // Decode glTF node into a Draco scene. |parent_index| is the index of the // parent node. If |node| is a root node set |parent_index| to - // |kInvalidSceneNodeIndex|. + // |kInvalidSceneNodeIndex|. All glTF lights must be decoded to the scene + // before this function is called. Status DecodeNodeForScene(int node_index, SceneNodeIndex parent_index); // Decode glTF primitive into a Draco scene. @@ -264,6 +280,7 @@ class GltfDecoder { // Adds volume properties from glTF |input_material| to |output_material|. Status DecodeMaterialVolumeExtension(const tinygltf::Material &input_material, + int input_material_index, Material *output_material); // Adds ior properties from glTF |input_material| to |output_material|. @@ -342,6 +359,9 @@ class GltfDecoder { // Map of glTF material to Draco material index. std::map gltf_primitive_material_to_draco_material_; + // Map of glTF material index to transformation scales of primitives. + std::map> gltf_primitive_material_to_scales_; + // Map of glTF image to Draco textures. std::map gltf_image_to_draco_texture_; @@ -350,6 +370,9 @@ class GltfDecoder { // Map of glTF Node to local store order. std::map gltf_node_to_scenenode_index_; + // Selected mode of the decoded scene graph. + GltfSceneGraphMode gltf_scene_graph_mode_ = GltfSceneGraphMode::TREE; + // Functionality for deduping primitives on decode. struct PrimitiveSignature { const tinygltf::Primitive &primitive; diff --git a/src/draco/io/gltf_decoder_test.cc b/src/draco/io/gltf_decoder_test.cc index 2cc74ee6..58e3303c 100644 --- a/src/draco/io/gltf_decoder_test.cc +++ b/src/draco/io/gltf_decoder_test.cc @@ -14,6 +14,13 @@ // #include "draco/io/gltf_decoder.h" +#include +#include +#include +#include +#include +#include + #ifdef DRACO_TRANSCODER_SUPPORTED #include "draco/core/draco_test_base.h" #include "draco/core/draco_test_utils.h" @@ -21,6 +28,7 @@ #include "draco/mesh/mesh_are_equivalent.h" #include "draco/mesh/mesh_utils.h" #include "draco/scene/scene_indices.h" +#include "draco/scene/scene_utils.h" #include "draco/texture/texture_utils.h" namespace draco { @@ -181,6 +189,7 @@ TEST(GltfDecoderTest, SceneMilkTruckGltf) { ASSERT_EQ(scene->NumMeshGroups(), 2); ASSERT_EQ(scene->NumNodes(), 5); ASSERT_EQ(scene->NumRootNodes(), 1); + ASSERT_EQ(scene->NumLights(), 0); ASSERT_EQ(scene->GetMaterialLibrary().NumMaterials(), 4); ASSERT_EQ(scene->GetMaterialLibrary().GetMaterial(0)->NumTextureMaps(), 1); ASSERT_EQ(scene->GetMaterialLibrary().GetMaterial(1)->NumTextureMaps(), 0); @@ -1049,5 +1058,132 @@ TEST(GltfDecoderTest, DecodeFromBufferToMesh) { ASSERT_TRUE(eq(*mesh, *expected_mesh)); } +TEST(GltfDecoderTest, DecodeGraph) { + // Checks that we can decode a scene with a general graph structure where a + // node has multiple parents. + // The input model has one root node, 4 children nodes that all point to a + // single node that contains the cube mesh. + const std::string file_name = "CubeScaledInstances/glTF/cube_att.gltf"; + const std::string file_path = GetTestFileFullPath(file_name); + + // First decode the scene into a tree-graph. + draco::GltfDecoder dec_tree; + DRACO_ASSIGN_OR_ASSERT(auto scene_tree, + dec_tree.DecodeFromFileToScene(file_path)); + // We expect to have 9 nodes with 4 mesh instances. The leaf node with the + // cube is duplicated 4 times, once for each instance. + ASSERT_EQ(scene_tree->NumNodes(), 9); + auto instances_tree = draco::SceneUtils::ComputeAllInstances(*scene_tree); + ASSERT_EQ(instances_tree.size(), 4); + + // Decode the scene into a scene-graph. + draco::GltfDecoder dec_graph; + dec_graph.SetSceneGraphMode(draco::GltfDecoder::GltfSceneGraphMode::DAG); + DRACO_ASSIGN_OR_ASSERT(auto scene_graph, + dec_graph.DecodeFromFileToScene(file_path)); + + // We expect to have 6 nodes with 4 mesh instances. The leaf node is shared + // for all mesh instances. + ASSERT_EQ(scene_graph->NumNodes(), 6); + auto instances_graph = draco::SceneUtils::ComputeAllInstances(*scene_graph); + ASSERT_EQ(instances_graph.size(), 4); + + // Check that all instances share the same scene node. + for (draco::MeshInstanceIndex mii(1); mii < 4; ++mii) { + ASSERT_EQ(instances_graph[mii - 1].scene_node_index, + instances_graph[mii].scene_node_index); + } +} + +TEST(GltfDecoderTest, CorrectVolumeThicknessFactor) { + // Checks that when a model is decoded as draco::Mesh the PBR material volume + // thickness factor is corrected according to geometry transformation scale in + // the scene graph. + constexpr float kDragonScale = 0.25f; + constexpr float kDragonVolumeThickness = 2.27f; + + // Read model as draco::Scene and check dragon mesh transformation scale and + // its PBR material volume thickness factor. + const std::unique_ptr scene = draco::ReadSceneFromTestFile( + "KhronosSampleModels/DragonAttenuation/glTF/DragonAttenuation.gltf"); + ASSERT_NE(scene, nullptr); + auto instances = draco::SceneUtils::ComputeAllInstances(*scene); + ASSERT_EQ(instances.size(), 2); + ASSERT_EQ(instances[MeshInstanceIndex(0)].transform.col(0).norm(), + kDragonScale); + ASSERT_EQ(scene->GetMaterialLibrary().GetMaterial(1)->GetThicknessFactor(), + kDragonVolumeThickness); + + // Read model as draco::Mesh and check corrected volume thickness factor. + const std::unique_ptr mesh = draco::ReadMeshFromTestFile( + "KhronosSampleModels/DragonAttenuation/glTF/DragonAttenuation.gltf"); + ASSERT_NE(mesh, nullptr); + ASSERT_EQ(mesh->GetMaterialLibrary().GetMaterial(1)->GetThicknessFactor(), + kDragonScale * kDragonVolumeThickness); +} + +TEST(GltfDecoderTest, DecodeLightsIntoMesh) { + // Checks that a model with lights can be decoded into draco::Mesh with the + // lights discarded. + const std::string file_name = "sphere_lights.gltf"; + const std::unique_ptr mesh(DecodeGltfFile(file_name)); + ASSERT_NE(mesh, nullptr); + ASSERT_EQ(mesh->num_faces(), 224); +} + +TEST(GltfDecoderTest, DecodeLightsIntoScene) { + // Checks that a model with lights can be decoded into draco::Scene. + const std::string file_name = "sphere_lights.gltf"; + const std::unique_ptr scene(DecodeGltfFileToScene(file_name)); + ASSERT_NE(scene, nullptr); + ASSERT_EQ(scene->NumLights(), 4); + + // Check spot light with all properties specified. + Light &light = *scene->GetLight(LightIndex(0)); + ASSERT_EQ(light.GetName(), "Blue Lightsaber"); + ASSERT_EQ(light.GetColor(), draco::Vector3f(0.72f, 0.71f, 1.00f)); + ASSERT_EQ(light.GetIntensity(), 3.0); + ASSERT_EQ(light.GetType(), draco::Light::SPOT); + ASSERT_EQ(light.GetRange(), 100); + ASSERT_EQ(light.GetInnerConeAngle(), 0.2); + ASSERT_EQ(light.GetOuterConeAngle(), 0.8); + + // Check point light with all properties specified. + light = *scene->GetLight(LightIndex(1)); + ASSERT_EQ(light.GetName(), "The Star of Earendil"); + ASSERT_EQ(light.GetColor(), draco::Vector3f(0.90f, 0.97f, 1.0f)); + ASSERT_EQ(light.GetIntensity(), 5.0); + ASSERT_EQ(light.GetType(), draco::Light::POINT); + ASSERT_EQ(light.GetRange(), 1000); + ASSERT_EQ(light.GetInnerConeAngle(), 0.0); + ASSERT_NEAR(light.GetOuterConeAngle(), M_PI / 4.0f, 1e-8); + + // Check directional light with some properties specified. + light = *scene->GetLight(LightIndex(2)); + ASSERT_EQ(light.GetName(), "Arc Reactor"); + ASSERT_EQ(light.GetColor(), draco::Vector3f(0.9f, 0.9, 0.9f)); + ASSERT_EQ(light.GetIntensity(), 1.0); + ASSERT_EQ(light.GetType(), draco::Light::DIRECTIONAL); + ASSERT_EQ(light.GetRange(), 200.0); + + // Check spot light with no properties specified. + light = *scene->GetLight(LightIndex(3)); + ASSERT_EQ(light.GetName(), ""); + ASSERT_EQ(light.GetColor(), draco::Vector3f(1.0f, 1.0f, 1.0f)); + ASSERT_EQ(light.GetIntensity(), 1.0); + ASSERT_EQ(light.GetType(), draco::Light::SPOT); + ASSERT_EQ(light.GetRange(), std::numeric_limits::max()); + ASSERT_EQ(light.GetInnerConeAngle(), 0.0); + ASSERT_NEAR(light.GetOuterConeAngle(), M_PI / 4.0f, 1e-8); + + // Check that lights are referenced by the scene nodes. + ASSERT_EQ(scene->GetNode(SceneNodeIndex(0))->GetLightIndex(), + kInvalidLightIndex); + ASSERT_EQ(scene->GetNode(SceneNodeIndex(1))->GetLightIndex(), LightIndex(0)); + ASSERT_EQ(scene->GetNode(SceneNodeIndex(2))->GetLightIndex(), LightIndex(2)); + ASSERT_EQ(scene->GetNode(SceneNodeIndex(3))->GetLightIndex(), LightIndex(3)); + ASSERT_EQ(scene->GetNode(SceneNodeIndex(4))->GetLightIndex(), LightIndex(1)); +} + } // namespace draco #endif // DRACO_TRANSCODER_SUPPORTED diff --git a/src/draco/io/gltf_encoder.cc b/src/draco/io/gltf_encoder.cc index fe2c27e1..8302745d 100644 --- a/src/draco/io/gltf_encoder.cc +++ b/src/draco/io/gltf_encoder.cc @@ -83,12 +83,14 @@ struct GltfScene { // Struct to hold glTF Node data. struct GltfNode { - GltfNode() : mesh_index(-1), skin_index(-1), root_node(false) {} + GltfNode() + : mesh_index(-1), skin_index(-1), light_index(-1), root_node(false) {} std::string name; std::vector childern_indices; int mesh_index; int skin_index; + int light_index; bool root_node; TrsMatrix trs_matrix; }; @@ -365,6 +367,10 @@ class GltfAsset { // skins. Status AddSkins(const Scene &scene); + // Iterate through the lights that are associated with |scene| and add them to + // the asset. Returns OkStatus() if |scene| does not contain any lights. + Status AddLights(const Scene &scene); + bool EncodeAssetProperty(EncoderBuffer *buf_out); bool EncodeScenesProperty(EncoderBuffer *buf_out); bool EncodeInitialSceneProperty(EncoderBuffer *buf_out); @@ -383,7 +389,8 @@ class GltfAsset { // is the index into the texture coordinates. |texture_map| is a reference to // the texture map that is going to be encoded. Status EncodeTextureMap(const std::string &object_name, int image_index, - int tex_coord_index, const TextureMap &texture_map); + int tex_coord_index, const Material &material, + const TextureMap &texture_map); Status EncodeMaterialsProperty(EncoderBuffer *buf_out); // TODO(vytyaz): Use this type in other places. @@ -417,6 +424,7 @@ class GltfAsset { TextureToImageIndexMapType *map); Status EncodeAnimationsProperty(EncoderBuffer *buf_out); Status EncodeSkinsProperty(EncoderBuffer *buf_out); + Status EncodeLightsProperty(EncoderBuffer *buf_out); bool EncodeAccessorsProperty(EncoderBuffer *buf_out); bool EncodeBufferViewsProperty(EncoderBuffer *buf_out); bool EncodeBuffersProperty(EncoderBuffer *buf_out); @@ -511,6 +519,7 @@ class GltfAsset { int skeleton_index; }; std::vector> skins_; + std::vector> lights_; // Indicates whether Draco compression is used for any of the asset meshes. bool draco_compression_used_; @@ -645,6 +654,7 @@ Status GltfAsset::Output(EncoderBuffer *buf_out) { } DRACO_RETURN_IF_ERROR(EncodeAnimationsProperty(buf_out)); DRACO_RETURN_IF_ERROR(EncodeSkinsProperty(buf_out)); + DRACO_RETURN_IF_ERROR(EncodeLightsProperty(buf_out)); if (!EncodeBufferViewsProperty(buf_out)) { return Status(Status::DRACO_ERROR, "Failed encoding buffer views."); } @@ -1249,6 +1259,7 @@ Status GltfAsset::AddScene(const Scene &scene) { } DRACO_RETURN_IF_ERROR(AddAnimations(scene)); DRACO_RETURN_IF_ERROR(AddSkins(scene)); + DRACO_RETURN_IF_ERROR(AddLights(scene)); return OkStatus(); } @@ -1314,6 +1325,7 @@ Status GltfAsset::AddSceneNode(const Scene &scene, node.mesh_index = mesh_group_index_to_gltf_mesh_[mesh_group_index]; } node.skin_index = scene_node->GetSkinIndex().value(); + node.light_index = scene_node->GetLightIndex().value(); nodes_.push_back(node); return OkStatus(); @@ -1490,6 +1502,19 @@ Status GltfAsset::AddSkins(const Scene &scene) { return OkStatus(); } +Status GltfAsset::AddLights(const Scene &scene) { + if (scene.NumLights() == 0) { + return OkStatus(); + } + + for (LightIndex i(0); i < scene.NumLights(); ++i) { + std::unique_ptr light = std::unique_ptr(new Light()); + light->Copy(*scene.GetLight(i)); + lights_.push_back(std::move(light)); + } + return OkStatus(); +} + bool GltfAsset::EncodeAssetProperty(EncoderBuffer *buf_out) { gltf_json_.BeginObject("asset"); gltf_json_.OutputValue("version", version_); @@ -1539,6 +1564,13 @@ bool GltfAsset::EncodeNodesProperty(EncoderBuffer *buf_out) { if (nodes_[i].skin_index >= 0) { gltf_json_.OutputValue("skin", nodes_[i].skin_index); } + if (nodes_[i].light_index >= 0) { + gltf_json_.BeginObject("extensions"); + gltf_json_.BeginObject("KHR_lights_punctual"); + gltf_json_.OutputValue("light", nodes_[i].light_index); + gltf_json_.EndObject(); + gltf_json_.EndObject(); + } if (!nodes_[i].childern_indices.empty()) { gltf_json_.BeginArray("children"); @@ -1707,6 +1739,7 @@ Status GltfAsset::EncodeDefaultMaterial(EncoderBuffer *buf_out) { Status GltfAsset::EncodeTextureMap(const std::string &object_name, int image_index, int tex_coord_index, + const Material &material, const TextureMap &texture_map) { // Create a new texture sampler (or reuse an existing one if possible). const TextureSampler sampler(texture_map.min_filter(), @@ -1731,6 +1764,12 @@ Status GltfAsset::EncodeTextureMap(const std::string &object_name, gltf_json_.BeginObject(object_name); gltf_json_.OutputValue("index", texture_index); gltf_json_.OutputValue("texCoord", tex_coord_index); + if (object_name == "normalTexture") { + const float scale = material.GetNormalTextureScale(); + if (scale != 1.0f) { + gltf_json_.OutputValue("scale", scale); + } + } // Check if |texture_map| is using the KHR_texture_transform extension. if (!TextureTransform::IsDefault(texture_map.texture_transform())) { @@ -1822,9 +1861,9 @@ Status GltfAsset::EncodeMaterialsProperty(EncoderBuffer *buf_out) { const int color_image_index, AddImage(texture_stem, color->texture(), rgba ? 4 : 3, &texture_to_image_index_map)); - DRACO_RETURN_IF_ERROR(EncodeTextureMap("baseColorTexture", - color_image_index, - color->tex_coord_index(), *color)); + DRACO_RETURN_IF_ERROR( + EncodeTextureMap("baseColorTexture", color_image_index, + color->tex_coord_index(), *material, *color)); } // Try to combine metallic and occlusion only if they have the same tex // coord index. @@ -1840,10 +1879,10 @@ Status GltfAsset::EncodeMaterialsProperty(EncoderBuffer *buf_out) { &texture_to_image_index_map)); } if (occlusion_metallic_roughness_image_index != -1) - DRACO_RETURN_IF_ERROR( - EncodeTextureMap("metallicRoughnessTexture", - occlusion_metallic_roughness_image_index, - metallic->tex_coord_index(), *metallic)); + DRACO_RETURN_IF_ERROR(EncodeTextureMap( + "metallicRoughnessTexture", + occlusion_metallic_roughness_image_index, + metallic->tex_coord_index(), *material, *metallic)); } if (metallic && occlusion_metallic_roughness_image_index == -1) { @@ -1854,7 +1893,7 @@ Status GltfAsset::EncodeMaterialsProperty(EncoderBuffer *buf_out) { &texture_to_image_index_map)); DRACO_RETURN_IF_ERROR(EncodeTextureMap( "metallicRoughnessTexture", metallic_roughness_image_index, - metallic->tex_coord_index(), *metallic)); + metallic->tex_coord_index(), *material, *metallic)); } EncodeVectorArray("baseColorFactor", material->GetColorFactor()); @@ -1870,35 +1909,31 @@ Status GltfAsset::EncodeMaterialsProperty(EncoderBuffer *buf_out) { &texture_to_image_index_map)); DRACO_RETURN_IF_ERROR( EncodeTextureMap("normalTexture", normal_image_index, - normal->tex_coord_index(), *normal)); + normal->tex_coord_index(), *material, *normal)); } if (occlusion_metallic_roughness_image_index != -1) { DRACO_RETURN_IF_ERROR(EncodeTextureMap( "occlusionTexture", occlusion_metallic_roughness_image_index, - metallic->tex_coord_index(), *metallic)); + metallic->tex_coord_index(), *material, *metallic)); } else if (occlusion) { // Store occlusion texture in a grayscale format, unless it is used by - // metallic-roughness map of some other matierial. - int num_components = 1; - std::string suffix = "_Occlusion"; - const auto mr = TextureUtils::FindTextures(TextureMap::METALLIC_ROUGHNESS, - &material_library_); - if (std::find(mr.begin(), mr.end(), occlusion->texture()) != mr.end()) { - // This material uses occlusion (R channel) and some other material uses - // metallic-roughness (GB channels) from this texture. - num_components = 3; - suffix = "_OcclusionMetallicRoughness"; - } + // metallic-roughness map of some other matierial. It is possible that + // this material uses occlusion (R channel) and some other material uses + // metallic-roughness (GB channels) from this texture. + const int num_components = TextureUtils::ComputeRequiredNumChannels( + *occlusion->texture(), material_library_); + const std::string suffix = + (num_components == 1) ? "_Occlusion" : "_OcclusionMetallicRoughness"; const std::string texture_stem = TextureUtils::GetOrGenerateTargetStem( *occlusion->texture(), i, suffix); DRACO_ASSIGN_OR_RETURN( const int occlusion_image_index, AddImage(texture_stem, occlusion->texture(), num_components, &texture_to_image_index_map)); - DRACO_RETURN_IF_ERROR( - EncodeTextureMap("occlusionTexture", occlusion_image_index, - occlusion->tex_coord_index(), *occlusion)); + DRACO_RETURN_IF_ERROR(EncodeTextureMap( + "occlusionTexture", occlusion_image_index, + occlusion->tex_coord_index(), *material, *occlusion)); } if (emissive) { @@ -1909,7 +1944,7 @@ Status GltfAsset::EncodeMaterialsProperty(EncoderBuffer *buf_out) { &texture_to_image_index_map)); DRACO_RETURN_IF_ERROR( EncodeTextureMap("emissiveTexture", emissive_image_index, - emissive->tex_coord_index(), *emissive)); + emissive->tex_coord_index(), *material, *emissive)); } EncodeVectorArray("emissiveFactor", @@ -2262,8 +2297,9 @@ Status GltfAsset::EncodeTexture(const std::string &name, DRACO_ASSIGN_OR_RETURN( const int image_index, AddImage(texture_stem, texture_map->texture(), num_components, map)); - DRACO_RETURN_IF_ERROR(EncodeTextureMap( - name, image_index, texture_map->tex_coord_index(), *texture_map)); + DRACO_RETURN_IF_ERROR(EncodeTextureMap(name, image_index, + texture_map->tex_coord_index(), + material, *texture_map)); } return OkStatus(); } @@ -2358,6 +2394,62 @@ Status GltfAsset::EncodeSkinsProperty(EncoderBuffer *buf_out) { return OkStatus(); } +Status GltfAsset::EncodeLightsProperty(EncoderBuffer *buf_out) { + if (lights_.empty()) { + return OkStatus(); + } + + gltf_json_.BeginObject("extensions"); + gltf_json_.BeginObject("KHR_lights_punctual"); + gltf_json_.BeginArray("lights"); + const Light defaults; + for (const auto &light : lights_) { + gltf_json_.BeginObject(); + if (light->GetName() != defaults.GetName()) { + gltf_json_.OutputValue("name", light->GetName()); + } + if (light->GetColor() != defaults.GetColor()) { + gltf_json_.BeginArray("color"); + gltf_json_.OutputValue(light->GetColor()[0]); + gltf_json_.OutputValue(light->GetColor()[1]); + gltf_json_.OutputValue(light->GetColor()[2]); + gltf_json_.EndArray(); + } + if (light->GetIntensity() != defaults.GetIntensity()) { + gltf_json_.OutputValue("intensity", light->GetIntensity()); + } + switch (light->GetType()) { + case Light::DIRECTIONAL: + gltf_json_.OutputValue("type", "directional"); + break; + case Light::POINT: + gltf_json_.OutputValue("type", "point"); + break; + case Light::SPOT: + gltf_json_.OutputValue("type", "spot"); + break; + } + if (light->GetRange() != defaults.GetRange()) { + gltf_json_.OutputValue("range", light->GetRange()); + } + if (light->GetType() == Light::SPOT) { + gltf_json_.BeginObject("spot"); + if (light->GetInnerConeAngle() != defaults.GetInnerConeAngle()) { + gltf_json_.OutputValue("innerConeAngle", light->GetInnerConeAngle()); + } + if (light->GetOuterConeAngle() != defaults.GetOuterConeAngle()) { + gltf_json_.OutputValue("outerConeAngle", light->GetOuterConeAngle()); + } + gltf_json_.EndObject(); + } + gltf_json_.EndObject(); + } + gltf_json_.EndArray(); + gltf_json_.EndObject(); // KHR_lights_punctual entry. + gltf_json_.EndObject(); // extensions entry. + return OkStatus(); +} + bool GltfAsset::EncodeAccessorsProperty(EncoderBuffer *buf_out) { gltf_json_.BeginArray("accessors"); @@ -2442,6 +2534,9 @@ Status GltfAsset::EncodeExtensionsProperties(EncoderBuffer *buf_out) { extensions_used_.insert(draco_tag); extensions_required_.insert(draco_tag); } + if (!lights_.empty()) { + extensions_used_.insert("KHR_lights_punctual"); + } if (!extensions_required_.empty()) { gltf_json_.BeginArray("extensionsRequired"); diff --git a/src/draco/io/gltf_encoder_test.cc b/src/draco/io/gltf_encoder_test.cc index 86d06b73..cbdb286b 100644 --- a/src/draco/io/gltf_encoder_test.cc +++ b/src/draco/io/gltf_encoder_test.cc @@ -174,6 +174,7 @@ class GltfEncoderTest : public ::testing::Test { scene1->GetMaterialLibrary().NumMaterials()); ASSERT_EQ(scene0->NumAnimations(), scene1->NumAnimations()); ASSERT_EQ(scene0->NumSkins(), scene1->NumSkins()); + ASSERT_EQ(scene0->NumLights(), scene1->NumLights()); // Check materials are the same. for (int i = 0; i < scene0->GetMaterialLibrary().NumMaterials(); ++i) { @@ -190,6 +191,7 @@ class GltfEncoderTest : public ::testing::Test { ASSERT_NE(scene_node0, nullptr); ASSERT_NE(scene_node1, nullptr); ASSERT_EQ(scene_node0->GetName(), scene_node1->GetName()); + ASSERT_EQ(scene_node0->GetLightIndex(), scene_node1->GetLightIndex()); } // Check MeshGroups are the same. @@ -215,6 +217,23 @@ class GltfEncoderTest : public ::testing::Test { ASSERT_EQ(animation0->NumNodeAnimationData(), animation1->NumNodeAnimationData()); } + + // Check that lights are the same. + for (draco::LightIndex i(0); i < scene0->NumLights(); ++i) { + const Light *const light0 = scene0->GetLight(i); + const Light *const light1 = scene1->GetLight(i); + ASSERT_NE(light0, nullptr); + ASSERT_NE(light1, nullptr); + ASSERT_EQ(light0->GetName(), light1->GetName()); + ASSERT_EQ(light0->GetColor(), light1->GetColor()); + ASSERT_EQ(light0->GetIntensity(), light1->GetIntensity()); + ASSERT_EQ(light0->GetType(), light1->GetType()); + ASSERT_EQ(light0->GetRange(), light1->GetRange()); + if (light0->GetType() == Light::SPOT) { + ASSERT_EQ(light0->GetInnerConeAngle(), light1->GetInnerConeAngle()); + ASSERT_EQ(light0->GetOuterConeAngle(), light1->GetOuterConeAngle()); + } + } } void EncodeMeshToFile(const Mesh &mesh, @@ -1371,6 +1390,15 @@ TEST_F(GltfEncoderTest, EncodeWithMissingMaterial) { EXPECT_FALSE(status.ok()); } +// Tests that a scene with lights can be encoded into a file. +TEST_F(GltfEncoderTest, EncodeLights) { + const std::string file_name = "sphere_lights.gltf"; + const std::unique_ptr scene = ReadSceneFromTestFile(file_name); + ASSERT_NE(scene, nullptr); + ASSERT_EQ(scene->NumLights(), 4); + EncodeSceneToGltfAndCompare(scene.get()); +} + } // namespace draco #endif // DRACO_TRANSCODER_SUPPORTED diff --git a/src/draco/io/gltf_utils.h b/src/draco/io/gltf_utils.h index 74c14526..d214affb 100644 --- a/src/draco/io/gltf_utils.h +++ b/src/draco/io/gltf_utils.h @@ -93,7 +93,7 @@ class JsonWriter { template void OutputValue(const T &value) { FinishPreviousLine(VALUE); - o_ << indent_ << std::setprecision(16) << value; + o_ << indent_ << std::setprecision(17) << value; } void OutputValue(const bool &value) { diff --git a/src/draco/io/gltf_utils_test.cc b/src/draco/io/gltf_utils_test.cc index a129815c..d3460aa3 100644 --- a/src/draco/io/gltf_utils_test.cc +++ b/src/draco/io/gltf_utils_test.cc @@ -230,14 +230,15 @@ TEST_F(GltfUtilsTest, TestGltfValues) { const GltfValue float_value_high(float_value_max); json_writer.OutputValue(float_value_low); json_writer.OutputValue(float_value_high); - CompareGolden(&json_writer, "1.175494350822288e-38,\n3.402823466385289e+38"); + CompareGolden(&json_writer, + "1.1754943508222875e-38,\n3.4028234663852886e+38"); json_writer.Reset(); const GltfValue float_value_0(0.1f); const GltfValue float_value_1(1.f); json_writer.OutputValue(float_value_0); json_writer.OutputValue(float_value_1); - CompareGolden(&json_writer, "0.1000000014901161,\n1"); + CompareGolden(&json_writer, "0.10000000149011612,\n1"); } } // namespace draco diff --git a/src/draco/io/scene_io.cc b/src/draco/io/scene_io.cc index f213459a..386d4b6f 100644 --- a/src/draco/io/scene_io.cc +++ b/src/draco/io/scene_io.cc @@ -14,13 +14,17 @@ // #include "draco/io/scene_io.h" +#include + #ifdef DRACO_TRANSCODER_SUPPORTED #include "draco/io/gltf_decoder.h" #include "draco/io/gltf_encoder.h" +#include "draco/io/obj_encoder.h" +#include "draco/io/ply_encoder.h" namespace draco { -enum SceneFileFormat { UNKNOWN, GLTF, USD }; +enum SceneFileFormat { UNKNOWN, GLTF, USD, PLY, OBJ }; SceneFileFormat GetSceneFileFormat(const std::string &file_name) { const std::string extension = LowercaseFileExtension(file_name); @@ -31,6 +35,12 @@ SceneFileFormat GetSceneFileFormat(const std::string &file_name) { extension == "usdz") { return USD; } + if (extension == "obj") { + return OBJ; + } + if (extension == "ply") { + return PLY; + } return UNKNOWN; } @@ -67,7 +77,8 @@ Status WriteSceneToFile(const std::string &file_name, const Scene &scene, std::string folder_path; std::string out_file_name; draco::SplitPath(file_name, &folder_path, &out_file_name); - switch (GetSceneFileFormat(file_name)) { + const auto format = GetSceneFileFormat(file_name); + switch (format) { case GLTF: { GltfEncoder encoder; if (!encoder.EncodeToFile(scene, file_name, folder_path)) { @@ -78,6 +89,32 @@ Status WriteSceneToFile(const std::string &file_name, const Scene &scene, case USD: { return Status(Status::DRACO_ERROR, "USD is not supported yet."); } + case PLY: + case OBJ: { + // Convert the scene to mesh and save the scene as a mesh. For now we do + // that by converting the scene to GLB and decoding the GLB into a mesh. + GltfEncoder gltf_encoder; + EncoderBuffer buffer; + DRACO_RETURN_IF_ERROR(gltf_encoder.EncodeToBuffer(scene, &buffer)); + GltfDecoder gltf_decoder; + DecoderBuffer dec_buffer; + dec_buffer.Init(buffer.data(), buffer.size()); + DRACO_ASSIGN_OR_RETURN(auto mesh, + gltf_decoder.DecodeFromBuffer(&dec_buffer)); + if (format == PLY) { + PlyEncoder ply_encoder; + if (!ply_encoder.EncodeToFile(*mesh, file_name)) { + return ErrorStatus("Failed to encode the scene as PLY."); + } + } + if (format == OBJ) { + ObjEncoder obj_encoder; + if (!obj_encoder.EncodeToFile(*mesh, file_name)) { + return ErrorStatus("Failed to encode the scene as OBJ."); + } + } + return OkStatus(); + } default: { return Status(Status::DRACO_ERROR, "Unknown output file format."); } diff --git a/src/draco/io/scene_io_test.cc b/src/draco/io/scene_io_test.cc index 3f0ff69f..82806569 100644 --- a/src/draco/io/scene_io_test.cc +++ b/src/draco/io/scene_io_test.cc @@ -14,9 +14,13 @@ // #include "draco/io/scene_io.h" +#include +#include + #ifdef DRACO_TRANSCODER_SUPPORTED #include "draco/core/draco_test_utils.h" #include "draco/io/file_utils.h" +#include "draco/io/mesh_io.h" namespace { @@ -44,5 +48,39 @@ TEST(SceneTest, TestSceneIO) { 0); } +TEST(SceneTest, TestSaveToPly) { + // A simple test that verifies that a loaded scene can be stored in a PLY file + // format. + const std::string file_name = + draco::GetTestFileFullPath("CesiumMilkTruck/glTF/CesiumMilkTruck.gltf"); + DRACO_ASSIGN_OR_ASSERT(std::unique_ptr scene, + draco::ReadSceneFromFile(file_name)); + + const std::string out_file_name = + draco::GetTestTempFileFullPath("out_scene.ply"); + DRACO_ASSERT_OK(draco::WriteSceneToFile(out_file_name, *scene)); + + // Verify that we can read the saved mesh. + DRACO_ASSIGN_OR_ASSERT(auto mesh, draco::ReadMeshFromFile(out_file_name)); + ASSERT_NE(mesh, nullptr); +} + +TEST(SceneTest, TestSaveToObj) { + // A simple test that verifies that a loaded scene can be stored in an OBJ + // file format. + const std::string file_name = + draco::GetTestFileFullPath("CesiumMilkTruck/glTF/CesiumMilkTruck.gltf"); + DRACO_ASSIGN_OR_ASSERT(std::unique_ptr scene, + draco::ReadSceneFromFile(file_name)); + + const std::string out_file_name = + draco::GetTestTempFileFullPath("out_scene.obj"); + DRACO_ASSERT_OK(draco::WriteSceneToFile(out_file_name, *scene)); + + // Verify that we can read the saved mesh. + DRACO_ASSIGN_OR_ASSERT(auto mesh, draco::ReadMeshFromFile(out_file_name)); + ASSERT_NE(mesh, nullptr); +} + } // namespace #endif // DRACO_TRANSCODER_SUPPORTED diff --git a/src/draco/io/tiny_gltf_utils.cc b/src/draco/io/tiny_gltf_utils.cc index 816f7461..d57e1093 100644 --- a/src/draco/io/tiny_gltf_utils.cc +++ b/src/draco/io/tiny_gltf_utils.cc @@ -19,7 +19,7 @@ #include "draco/animation/node_animation_data.h" #include "draco/core/status.h" #include "draco/core/vector_d.h" -#include "third_party/tinygltf/tiny_gltf.h" +#include "tiny_gltf.h" namespace draco { @@ -225,6 +225,6 @@ void TinyGltfUtils::SetDataImpl(float value, int index, #define TINYGLTF_ENABLE_DRACO #define TINYGLTF_IMPLEMENTATION -#include "third_party/tinygltf/tiny_gltf.h" +#include "tiny_gltf.h" #endif // DRACO_TRANSCODER_SUPPORTED diff --git a/src/draco/io/tiny_gltf_utils.h b/src/draco/io/tiny_gltf_utils.h index c3ac22c2..18a95d86 100644 --- a/src/draco/io/tiny_gltf_utils.h +++ b/src/draco/io/tiny_gltf_utils.h @@ -24,7 +24,7 @@ #include "draco/core/status.h" #include "draco/core/status_or.h" #include "draco/material/material.h" -#include "third_party/tinygltf/tiny_gltf.h" +#include "tiny_gltf.h" namespace draco { diff --git a/src/draco/material/material.cc b/src/draco/material/material.cc index 1ef86e3a..da854a17 100644 --- a/src/draco/material/material.cc +++ b/src/draco/material/material.cc @@ -34,6 +34,7 @@ void Material::Copy(const Material &src) { transparency_mode_ = src.transparency_mode_; alpha_cutoff_ = src.alpha_cutoff_; double_sided_ = src.double_sided_; + normal_texture_scale_ = src.normal_texture_scale_; // Copy properties of material extensions. unlit_ = src.unlit_; @@ -76,6 +77,7 @@ void Material::Clear() { transparency_mode_ = TRANSPARENCY_OPAQUE; alpha_cutoff_ = 0.5f; double_sided_ = false; + normal_texture_scale_ = 1.0f; // Clear properties of material extensions to glTF 2.0 spec defaults. unlit_ = false; diff --git a/src/draco/material/material.h b/src/draco/material/material.h index 5b89449c..7c405b45 100644 --- a/src/draco/material/material.h +++ b/src/draco/material/material.h @@ -77,6 +77,8 @@ class Material { void SetTransparencyMode(TransparencyMode mode) { transparency_mode_ = mode; } float GetAlphaCutoff() const { return alpha_cutoff_; } void SetAlphaCutoff(float alpha_cutoff) { alpha_cutoff_ = alpha_cutoff; } + float GetNormalTextureScale() const { return normal_texture_scale_; } + void SetNormalTextureScale(float scale) { normal_texture_scale_ = scale; } // Properties of glTF material extension KHR_materials_unlit. bool GetUnlit() const { return unlit_; } @@ -221,6 +223,7 @@ class Material { bool double_sided_; TransparencyMode transparency_mode_; float alpha_cutoff_; + float normal_texture_scale_; // Properties of glTF material extension KHR_materials_unlit. bool unlit_; diff --git a/src/draco/material/material_test.cc b/src/draco/material/material_test.cc index 4aa94003..8c999a53 100644 --- a/src/draco/material/material_test.cc +++ b/src/draco/material/material_test.cc @@ -126,6 +126,8 @@ TEST(MaterialTest, TestMaterialAccess) { draco::Material::TRANSPARENCY_BLEND); material.SetAlphaCutoff(0.2f); ASSERT_EQ(material.GetAlphaCutoff(), 0.2f); + material.SetNormalTextureScale(0.75f); + ASSERT_EQ(material.GetNormalTextureScale(), 0.75f); material.ClearTextureMaps(); ASSERT_EQ(material.NumTextureMaps(), 0); @@ -153,6 +155,7 @@ TEST(MaterialTest, TestMaterialCopy) { material.SetTransparencyMode(draco::Material::TRANSPARENCY_MASK); material.SetAlphaCutoff(0.25f); material.SetDoubleSided(true); + material.SetNormalTextureScale(0.75f); // Set the properties of material extensions. material.SetUnlit(true); @@ -191,6 +194,8 @@ TEST(MaterialTest, TestMaterialCopy) { ASSERT_EQ(material.GetTransparencyMode(), new_material.GetTransparencyMode()); ASSERT_EQ(material.GetAlphaCutoff(), new_material.GetAlphaCutoff()); ASSERT_EQ(material.GetDoubleSided(), new_material.GetDoubleSided()); + ASSERT_EQ(material.GetNormalTextureScale(), + new_material.GetNormalTextureScale()); // Check that the properties of material extensions have been copied. ASSERT_EQ(material.GetUnlit(), new_material.GetUnlit()); diff --git a/src/draco/mesh/mesh_splitter.cc b/src/draco/mesh/mesh_splitter.cc index b363a181..4d1b9a4f 100644 --- a/src/draco/mesh/mesh_splitter.cc +++ b/src/draco/mesh/mesh_splitter.cc @@ -126,6 +126,17 @@ StatusOr MeshSplitter::SplitMesh( std::unique_ptr(new GeometryMetadata(metadata))); } + // Copy over attribute unique ids. + for (int att_id = 0; att_id < mesh.num_attributes(); ++att_id) { + const int mapped_att_id = att_id_map[att_id]; + if (mapped_att_id == -1) { + continue; + } + const PointAttribute *const src_att = mesh.attribute(att_id); + PointAttribute *const dst_att = out_meshes[mi]->attribute(mapped_att_id); + dst_att->set_unique_id(src_att->unique_id()); + } + // Copy compression settings of the original mesh to the output meshes. out_meshes[mi]->SetCompressionEnabled(mesh.IsCompressionEnabled()); out_meshes[mi]->SetCompressionOptions(mesh.GetCompressionOptions()); diff --git a/src/draco/point_cloud/point_cloud.cc b/src/draco/point_cloud/point_cloud.cc index 26ce3343..be5323a2 100644 --- a/src/draco/point_cloud/point_cloud.cc +++ b/src/draco/point_cloud/point_cloud.cc @@ -16,6 +16,7 @@ #include #include +#include #ifdef DRACO_TRANSCODER_SUPPORTED #include "draco/attributes/point_attribute.h" diff --git a/src/draco/point_cloud/point_cloud_builder.cc b/src/draco/point_cloud/point_cloud_builder.cc index 431ae505..90ec3796 100644 --- a/src/draco/point_cloud/point_cloud_builder.cc +++ b/src/draco/point_cloud/point_cloud_builder.cc @@ -14,6 +14,8 @@ // #include "draco/point_cloud/point_cloud_builder.h" +#include + namespace draco { PointCloudBuilder::PointCloudBuilder() {} diff --git a/src/draco/point_cloud/point_cloud_test.cc b/src/draco/point_cloud/point_cloud_test.cc index a90626ec..1cd780db 100644 --- a/src/draco/point_cloud/point_cloud_test.cc +++ b/src/draco/point_cloud/point_cloud_test.cc @@ -14,6 +14,9 @@ // #include "draco/point_cloud/point_cloud.h" +#include +#include + #include "draco/core/draco_test_base.h" #include "draco/core/draco_test_utils.h" #include "draco/metadata/geometry_metadata.h" diff --git a/src/draco/scene/light.cc b/src/draco/scene/light.cc new file mode 100644 index 00000000..a7094cf0 --- /dev/null +++ b/src/draco/scene/light.cc @@ -0,0 +1,44 @@ +// Copyright 2022 The Draco Authors. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +#include "draco/scene/light.h" + +#ifdef DRACO_TRANSCODER_SUPPORTED + +#include +#include + +namespace draco { + +Light::Light() + : color_(1.0f, 1.0f, 1.0f), + intensity_(1.0), + type_(POINT), + range_(std::numeric_limits::max()), // Infinity. + inner_cone_angle_(0.0), + outer_cone_angle_(M_PI / 4.0) {} + +void Light::Copy(const Light &light) { + name_ = light.name_; + color_ = light.color_; + intensity_ = light.intensity_; + type_ = light.type_; + range_ = light.range_; + inner_cone_angle_ = light.inner_cone_angle_; + outer_cone_angle_ = light.outer_cone_angle_; +} + +} // namespace draco + +#endif // DRACO_TRANSCODER_SUPPORTED diff --git a/src/draco/scene/light.h b/src/draco/scene/light.h new file mode 100644 index 00000000..5ff0d4a6 --- /dev/null +++ b/src/draco/scene/light.h @@ -0,0 +1,81 @@ +// Copyright 2022 The Draco Authors. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +#ifndef DRACO_SCENE_LIGHT_H_ +#define DRACO_SCENE_LIGHT_H_ + +#include "draco/draco_features.h" + +#ifdef DRACO_TRANSCODER_SUPPORTED +#include + +#include "draco/core/vector_d.h" + +namespace draco { + +// Describes a light in a scene according to the KHR_lights_punctual extension. +class Light { + public: + enum Type { DIRECTIONAL, POINT, SPOT }; + + Light(); + + void Copy(const Light &light); + + // Name. + void SetName(const std::string &name) { name_ = name; } + const std::string &GetName() const { return name_; } + + // Color. + void SetColor(const Vector3f &color) { color_ = color; } + const Vector3f &GetColor() const { return color_; } + + // Intensity. + void SetIntensity(double intensity) { intensity_ = intensity; } + double GetIntensity() const { return intensity_; } + + // Type. + void SetType(Type type) { type_ = type; } + Type GetType() const { return type_; } + + // Range. + void SetRange(double range) { range_ = range; } + double GetRange() const { return range_; } + + // Inner cone angle. + void SetInnerConeAngle(double angle) { inner_cone_angle_ = angle; } + double GetInnerConeAngle() const { return inner_cone_angle_; } + + // Outer cone angle. + void SetOuterConeAngle(double angle) { outer_cone_angle_ = angle; } + double GetOuterConeAngle() const { return outer_cone_angle_; } + + private: + std::string name_; + Vector3f color_; + double intensity_; + Type type_; + + // The range is only applicable to lights with Type::POINT or Type::SPOT. + double range_; + + // The cone angles are only applicable to lights with Type::SPOT. + double inner_cone_angle_; + double outer_cone_angle_; +}; + +} // namespace draco + +#endif // DRACO_TRANSCODER_SUPPORTED +#endif // DRACO_SCENE_LIGHT_H_ diff --git a/src/draco/scene/light_test.cc b/src/draco/scene/light_test.cc new file mode 100644 index 00000000..12d51f65 --- /dev/null +++ b/src/draco/scene/light_test.cc @@ -0,0 +1,64 @@ +// Copyright 2022 The Draco Authors. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +#include "draco/scene/light.h" + +#include +#include + +#include "draco/core/draco_test_base.h" +#include "draco/core/draco_test_utils.h" + +namespace { + +#ifdef DRACO_TRANSCODER_SUPPORTED + +TEST(LightTest, TestDefaults) { + // Text constructing draco::Light object with default properties. + const draco::Light light; + ASSERT_EQ(light.GetName(), ""); + ASSERT_EQ(light.GetColor(), draco::Vector3f(1.0f, 1.0f, 1.0f)); + ASSERT_EQ(light.GetIntensity(), 1.0); + ASSERT_EQ(light.GetType(), draco::Light::POINT); + ASSERT_EQ(light.GetRange(), std::numeric_limits::max()); + ASSERT_EQ(light.GetInnerConeAngle(), 0.0); + ASSERT_EQ(light.GetOuterConeAngle(), M_PI / 4.0); +} + +TEST(LightTest, TestCopy) { + // Test copying of draco::Light object. + draco::Light light; + light.SetName("The Star of Earendil"); + light.SetColor(draco::Vector3f(0.90, 0.97, 1.00)); + light.SetIntensity(5.0); + light.SetType(draco::Light::SPOT); + light.SetRange(1000.0); + light.SetInnerConeAngle(M_PI / 8.0); + light.SetOuterConeAngle(M_PI / 2.0); + + // Create a copy of the initialized light and check all properties. + draco::Light copy; + copy.Copy(light); + ASSERT_EQ(copy.GetName(), "The Star of Earendil"); + ASSERT_EQ(copy.GetColor(), draco::Vector3f(0.90, 0.97, 1.00)); + ASSERT_EQ(copy.GetIntensity(), 5.0); + ASSERT_EQ(copy.GetType(), draco::Light::SPOT); + ASSERT_EQ(copy.GetRange(), 1000.0); + ASSERT_EQ(copy.GetInnerConeAngle(), M_PI / 8.0); + ASSERT_EQ(copy.GetOuterConeAngle(), M_PI / 2.0); +} + +#endif // DRACO_TRANSCODER_SUPPORTED + +} // namespace diff --git a/src/draco/scene/scene.cc b/src/draco/scene/scene.cc index 30d351b9..dcd3e1f8 100644 --- a/src/draco/scene/scene.cc +++ b/src/draco/scene/scene.cc @@ -14,6 +14,8 @@ // #include "draco/scene/scene.h" +#include + #ifdef DRACO_TRANSCODER_SUPPORTED #include "draco/core/macros.h" #include "draco/scene/scene_indices.h" @@ -53,6 +55,12 @@ void Scene::Copy(const Scene &s) { skins_[i]->Copy(*s.skins_[i]); } + lights_.resize(s.lights_.size()); + for (LightIndex i(0); i < lights_.size(); ++i) { + lights_[i] = std::unique_ptr(new Light()); + lights_[i]->Copy(*s.lights_[i]); + } + material_library_.Copy(s.material_library_); } @@ -101,7 +109,7 @@ Status Scene::RemoveMeshGroup(MeshGroupIndex index) { const MeshGroupIndex mgi = node->GetMeshGroupIndex(); if (mgi == index) { // TODO(vytyaz): Remove the node if possible, e.g., when node has no - // geometry, no child nodes, and no skins. + // geometry, no child nodes, no skins, and no lights. node->SetMeshGroupIndex(kInvalidMeshGroupIndex); } else if (mgi > index && mgi != kInvalidMeshGroupIndex) { node->SetMeshGroupIndex(mgi - 1); diff --git a/src/draco/scene/scene.h b/src/draco/scene/scene.h index ce279b1c..fcb41ca3 100644 --- a/src/draco/scene/scene.h +++ b/src/draco/scene/scene.h @@ -23,6 +23,7 @@ #include "draco/animation/animation.h" #include "draco/animation/skin.h" #include "draco/mesh/mesh.h" +#include "draco/scene/light.h" #include "draco/scene/mesh_group.h" #include "draco/scene/scene_indices.h" #include "draco/scene/scene_node.h" @@ -156,6 +157,20 @@ class Scene { Skin *GetSkin(SkinIndex index) { return skins_[index].get(); } const Skin *GetSkin(SkinIndex index) const { return skins_[index].get(); } + // Creates a light and returns the index to the light. + LightIndex AddLight() { + std::unique_ptr light(new Light()); + lights_.push_back(std::move(light)); + return LightIndex(lights_.size() - 1); + } + + // Returns the number of lights in a scene. + int NumLights() const { return lights_.size(); } + + // Returns a light in the scene. + Light *GetLight(LightIndex index) { return lights_[index].get(); } + const Light *GetLight(LightIndex index) const { return lights_[index].get(); } + private: IndexTypeVector> meshes_; IndexTypeVector> mesh_groups_; @@ -164,6 +179,10 @@ class Scene { IndexTypeVector> animations_; IndexTypeVector> skins_; + // The lights will be written to the output scene but not used for internal + // rendering in Draco, e.g, while computing distortion metric. + IndexTypeVector> lights_; + // Materials used by this scene. MaterialLibrary material_library_; }; diff --git a/src/draco/scene/scene_indices.h b/src/draco/scene/scene_indices.h index 38bb1972..f381ad0a 100644 --- a/src/draco/scene/scene_indices.h +++ b/src/draco/scene/scene_indices.h @@ -42,6 +42,9 @@ DEFINE_NEW_DRACO_INDEX_TYPE(uint32_t, AnimationIndex) // Index of a skin in a scene. DEFINE_NEW_DRACO_INDEX_TYPE(uint32_t, SkinIndex) +// Index of a light in a scene. +DEFINE_NEW_DRACO_INDEX_TYPE(uint32_t, LightIndex) + // Constants denoting invalid indices. static constexpr MeshIndex kInvalidMeshIndex( std::numeric_limits::max()); @@ -55,6 +58,8 @@ static constexpr AnimationIndex kInvalidAnimationIndex( std::numeric_limits::max()); static constexpr SkinIndex kInvalidSkinIndex( std::numeric_limits::max()); +static constexpr LightIndex kInvalidLightIndex( + std::numeric_limits::max()); } // namespace draco diff --git a/src/draco/scene/scene_node.h b/src/draco/scene/scene_node.h index 88b47c11..1e007b5a 100644 --- a/src/draco/scene/scene_node.h +++ b/src/draco/scene/scene_node.h @@ -25,7 +25,7 @@ namespace draco { // space transformed into scene space. class SceneNode { public: - SceneNode() : mesh_group_index_(-1), skin_index_(-1) {} + SceneNode() : mesh_group_index_(-1), skin_index_(-1), light_index_(-1) {} void Copy(const SceneNode &sn) { name_ = sn.name_; @@ -34,6 +34,7 @@ class SceneNode { skin_index_ = sn.skin_index_; parents_ = sn.parents_; children_ = sn.children_; + light_index_ = sn.light_index_; } // Sets a name. @@ -54,6 +55,10 @@ class SceneNode { void SetSkinIndex(SkinIndex index) { skin_index_ = index; } SkinIndex GetSkinIndex() const { return skin_index_; } + // Set the index to the light in the scene. + void SetLightIndex(LightIndex index) { light_index_ = index; } + LightIndex GetLightIndex() const { return light_index_; } + // Functions to set and get zero or more parent nodes of this node. SceneNodeIndex Parent(int index) const { return parents_[index]; } void AddParentIndex(SceneNodeIndex index) { parents_.push_back(index); } @@ -73,6 +78,7 @@ class SceneNode { draco::SkinIndex skin_index_; std::vector parents_; std::vector children_; + LightIndex light_index_; }; } // namespace draco diff --git a/src/draco/scene/scene_test.cc b/src/draco/scene/scene_test.cc index 9c7ad2d5..7c301130 100644 --- a/src/draco/scene/scene_test.cc +++ b/src/draco/scene/scene_test.cc @@ -37,6 +37,7 @@ TEST(SceneTest, TestCopy) { ASSERT_EQ(src_scene->NumNodes(), dst_scene.NumNodes()); ASSERT_EQ(src_scene->NumAnimations(), dst_scene.NumAnimations()); ASSERT_EQ(src_scene->NumSkins(), dst_scene.NumSkins()); + ASSERT_EQ(src_scene->NumLights(), dst_scene.NumLights()); for (draco::MeshIndex i(0); i < src_scene->NumMeshes(); ++i) { draco::MeshAreEquivalent eq; @@ -69,6 +70,8 @@ TEST(SceneTest, TestCopy) { dst_scene.GetNode(i)->GetMeshGroupIndex()); ASSERT_EQ(src_scene->GetNode(i)->GetSkinIndex(), dst_scene.GetNode(i)->GetSkinIndex()); + ASSERT_EQ(src_scene->GetNode(i)->GetLightIndex(), + dst_scene.GetNode(i)->GetLightIndex()); } } diff --git a/src/draco/scene/scene_utils.cc b/src/draco/scene/scene_utils.cc index 63e8d82b..21dd1810 100644 --- a/src/draco/scene/scene_utils.cc +++ b/src/draco/scene/scene_utils.cc @@ -17,10 +17,13 @@ #ifdef DRACO_TRANSCODER_SUPPORTED #include +#include #include +#include #include "draco/core/hash_utils.h" #include "draco/core/vector_d.h" +#include "draco/mesh/mesh_splitter.h" #include "draco/mesh/mesh_utils.h" #include "draco/scene/scene_indices.h" #include "draco/texture/texture_utils.h" @@ -199,11 +202,6 @@ BoundingBox SceneUtils::ComputeMeshInstanceBoundingBox( StatusOr> SceneUtils::MeshToScene( std::unique_ptr mesh) { const size_t num_mesh_materials = mesh->GetMaterialLibrary().NumMaterials(); - if (num_mesh_materials > 1) { - return Status(Status::DRACO_ERROR, - "Number of mesh materials must be less than 2."); - } - std::unique_ptr scene(new Scene()); if (num_mesh_materials > 0) { scene->GetMaterialLibrary().Copy(mesh->GetMaterialLibrary()); @@ -218,12 +216,55 @@ StatusOr> SceneUtils::MeshToScene( const MeshGroupIndex mesh_group_index = scene->AddMeshGroup(); MeshGroup *const mesh_group = scene->GetMeshGroup(mesh_group_index); - const MeshIndex mesh_index = scene->AddMesh(std::move(mesh)); - if (mesh_index == kInvalidMeshIndex) { - return Status(Status::DRACO_ERROR, "Could not add Draco mesh to scene."); + if (num_mesh_materials <= 1) { + const MeshIndex mesh_index = scene->AddMesh(std::move(mesh)); + if (mesh_index == kInvalidMeshIndex) { + // No idea whether this can happen. It's not covered by any unit test. + return Status(Status::DRACO_ERROR, "Could not add Draco mesh to scene."); + } + mesh_group->AddMeshIndex(mesh_index); + mesh_group->AddMaterialIndex(0); + } else { + const int32_t mat_att_id = + mesh->GetNamedAttributeId(GeometryAttribute::MATERIAL); + if (mat_att_id == -1) { + // Probably dead code, not covered by any unit test. + return Status(Status::DRACO_ERROR, + "Internal error in MeshToScene: " + "GetNamedAttributeId(MATERIAL) returned -1"); + } + const PointAttribute *const mat_att = + mesh->GetNamedAttribute(GeometryAttribute::MATERIAL); + if (mat_att == nullptr) { + // Probably dead code, not covered by any unit test. + return Status(Status::DRACO_ERROR, + "Internal error in MeshToScene: " + "GetNamedAttribute(MATERIAL) returned nullptr"); + } + + MeshSplitter splitter; + DRACO_ASSIGN_OR_RETURN(MeshSplitter::MeshVector split_meshes, + splitter.SplitMesh(*mesh, mat_att_id)); + // Note: cannot clear mesh here, since mat_att points into it. + for (size_t i = 0; i < split_meshes.size(); ++i) { + if (split_meshes[i] == nullptr) { + // Probably dead code, not covered by any unit test. + continue; + } + const MeshIndex mesh_index = scene->AddMesh(std::move(split_meshes[i])); + if (mesh_index == kInvalidMeshIndex) { + // No idea whether this can happen. It's not covered by any unit test. + return Status(Status::DRACO_ERROR, + "Could not add Draco mesh to scene."); + } + + uint32_t material_index = 0; + mat_att->GetValue(AttributeValueIndex(i), &material_index); + + mesh_group->AddMeshIndex(mesh_index); + mesh_group->AddMaterialIndex(material_index); + } } - mesh_group->AddMeshIndex(mesh_index); - mesh_group->AddMaterialIndex(0); scene_node->SetMeshGroupIndex(mesh_group_index); scene->AddRootNodeIndex(scene_node_index); diff --git a/src/draco/scene/scene_utils.h b/src/draco/scene/scene_utils.h index 48a41af6..964b5c80 100644 --- a/src/draco/scene/scene_utils.h +++ b/src/draco/scene/scene_utils.h @@ -93,8 +93,10 @@ class SceneUtils { static void PrintInfo(const Scene &input, const Scene &simplified, bool verbose); - // Converts a Draco Mesh to a Draco Scene. Currently this only works for - // meshes with less than two materials. + // Converts a draco::Mesh into a draco::Scene. If the passed-in `mesh` has + // multiple materials, the returned scene will contain multiple meshes, one + // for each of the source mesh's materials; if `mesh` has no material, one + // will be created for it. static StatusOr> MeshToScene( std::unique_ptr mesh); diff --git a/src/draco/scene/scene_utils_test.cc b/src/draco/scene/scene_utils_test.cc index 763d1c90..030348bd 100644 --- a/src/draco/scene/scene_utils_test.cc +++ b/src/draco/scene/scene_utils_test.cc @@ -14,6 +14,9 @@ // #include "draco/scene/scene_utils.h" +#include +#include + #ifdef DRACO_TRANSCODER_SUPPORTED #include "draco/core/bounding_box.h" #include "draco/core/draco_test_base.h" @@ -247,7 +250,13 @@ TEST(SceneUtilsTest, TestMeshToSceneZeroMaterials) { DRACO_ASSIGN_OR_ASSERT(const std::unique_ptr scene_from_mesh, draco::SceneUtils::MeshToScene(std::move(mesh))); ASSERT_NE(scene_from_mesh, nullptr); + ASSERT_EQ(scene_from_mesh->NumMeshes(), 1); ASSERT_EQ(scene_from_mesh->GetMaterialLibrary().NumMaterials(), 1); + ASSERT_EQ(scene_from_mesh->NumMeshGroups(), 1); + const draco::MeshGroup *const mesh_group = + scene_from_mesh->GetMeshGroup(draco::MeshGroupIndex(0)); + ASSERT_EQ(mesh_group->NumMeshIndices(), 1); + ASSERT_EQ(mesh_group->NumMaterialIndices(), 1); } TEST(SceneUtilsTest, TestMeshToSceneOneMaterial) { @@ -264,7 +273,13 @@ TEST(SceneUtilsTest, TestMeshToSceneOneMaterial) { DRACO_ASSIGN_OR_ASSERT(const std::unique_ptr scene_from_mesh, draco::SceneUtils::MeshToScene(std::move(mesh))); ASSERT_NE(scene_from_mesh, nullptr); + ASSERT_EQ(scene_from_mesh->NumMeshes(), 1); ASSERT_EQ(scene_from_mesh->GetMaterialLibrary().NumMaterials(), 1); + ASSERT_EQ(scene_from_mesh->NumMeshGroups(), 1); + const draco::MeshGroup *const mesh_group = + scene_from_mesh->GetMeshGroup(draco::MeshGroupIndex(0)); + ASSERT_EQ(mesh_group->NumMeshIndices(), 1); + ASSERT_EQ(mesh_group->NumMaterialIndices(), 1); CompareScenes(scene.get(), scene_from_mesh.get()); } @@ -278,8 +293,19 @@ TEST(SceneUtilsTest, TestMeshToSceneMultipleMaterials) { ASSERT_NE(mesh, nullptr); ASSERT_EQ(mesh->GetMaterialLibrary().NumMaterials(), 4); - auto maybe_scene_from_mesh = draco::SceneUtils::MeshToScene(std::move(mesh)); - ASSERT_FALSE(maybe_scene_from_mesh.ok()); + DRACO_ASSIGN_OR_ASSERT(const std::unique_ptr scene_from_mesh, + draco::SceneUtils::MeshToScene(std::move(mesh))); + ASSERT_NE(scene_from_mesh, nullptr); + ASSERT_EQ(scene_from_mesh->NumMeshes(), 4); + ASSERT_EQ(scene_from_mesh->GetMaterialLibrary().NumMaterials(), 4); + ASSERT_EQ(scene_from_mesh->NumMeshGroups(), 1); + const draco::MeshGroup *const mesh_group = + scene_from_mesh->GetMeshGroup(draco::MeshGroupIndex(0)); + ASSERT_EQ(mesh_group->NumMeshIndices(), 4); + ASSERT_EQ(mesh_group->NumMaterialIndices(), 4); + + // Unfortunately we can't CompareScenes(scene.get(), scene_from_mesh.get()), + // because scene has two mesh groups and scene_from_mesh has only one. } TEST(SceneUtilsTest, TestInstantiateMeshWithIdentityTransformation) { diff --git a/src/draco/texture/texture_utils_test.cc b/src/draco/texture/texture_utils_test.cc index 594ca159..15d8bee8 100644 --- a/src/draco/texture/texture_utils_test.cc +++ b/src/draco/texture/texture_utils_test.cc @@ -14,6 +14,8 @@ // #include "draco/texture/texture_utils.h" +#include + #ifdef DRACO_TRANSCODER_SUPPORTED #include "draco/core/draco_test_utils.h" #include "draco/io/texture_io.h" @@ -228,6 +230,66 @@ TEST(TextureUtilsTest, TestFindMutableTexturesWithType) { } #endif // DRACO_UNRLEASED_FEATURES +TEST(TextureUtilsTest, TestComputeRequiredNumChannels) { + // Tests that the number of texture channels can be computed. Material library + // under test is created programmatically. + + // Load textures. + DRACO_ASSIGN_OR_ASSERT( + auto texture0, draco::ReadTextureFromFile( + draco::GetTestFileFullPath("fully_transparent.png"))); + ASSERT_NE(texture0, nullptr); + draco::Texture *texture0_ptr = texture0.get(); + DRACO_ASSIGN_OR_ASSERT( + auto texture1, + draco::ReadTextureFromFile(draco::GetTestFileFullPath("squares.png"))); + ASSERT_NE(texture1, nullptr); + const draco::Texture *texture1_ptr = texture1.get(); + DRACO_ASSIGN_OR_ASSERT( + auto texture2, draco::ReadTextureFromFile( + draco::GetTestFileFullPath("fully_transparent.png"))); + ASSERT_NE(texture2, nullptr); + const draco::Texture *texture2_ptr = texture2.get(); + + // Compute number of channels for occlusion-only texture. + draco::MaterialLibrary library; + draco::Material *const material0 = library.MutableMaterial(0); + material0->SetTextureMap(std::move(texture0), + draco::TextureMap::AMBIENT_OCCLUSION, 0); + ASSERT_EQ( + draco::TextureUtils::ComputeRequiredNumChannels(*texture0_ptr, library), + 1); + + // Compute number of channels for occlusion-only texture with MR present but + // not using the same texture. + draco::Material *const material1 = library.MutableMaterial(1); + material1->SetTextureMap(std::move(texture1), + draco::TextureMap::METALLIC_ROUGHNESS, 0); + ASSERT_EQ( + draco::TextureUtils::ComputeRequiredNumChannels(*texture0_ptr, library), + 1); + + // Compute number of channels for metallic-roughness texture. + ASSERT_EQ( + draco::TextureUtils::ComputeRequiredNumChannels(*texture1_ptr, library), + 3); + + // Compute number of channels texture that is used for occlusin map in one + // material and also shared with metallic-roughness map in another material. + draco::Material *const material2 = library.MutableMaterial(2); + DRACO_ASSERT_OK(material2->SetTextureMap( + texture0_ptr, draco::TextureMap::METALLIC_ROUGHNESS, 0)); + ASSERT_EQ( + draco::TextureUtils::ComputeRequiredNumChannels(*texture0_ptr, library), + 3); + + // Compute number of channels for non-opaque texture. + material0->SetTextureMap(std::move(texture2), draco::TextureMap::COLOR, 0); + ASSERT_EQ( + draco::TextureUtils::ComputeRequiredNumChannels(*texture2_ptr, library), + 4); +} + } // namespace #endif // DRACO_TRANSCODER_SUPPORTED diff --git a/src/draco/tools/install_test/CMakeLists.txt b/src/draco/tools/install_test/CMakeLists.txt index de5ae24b..dd6e4511 100644 --- a/src/draco/tools/install_test/CMakeLists.txt +++ b/src/draco/tools/install_test/CMakeLists.txt @@ -48,9 +48,9 @@ target_link_libraries(install_check "${DRACO_LIBRARY}") install(TARGETS install_check DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}") if(BUILD_SHARED_LIBS AND WIN32) - # Copy the Draco DLL into the bin dir for Windows: Windows doesn't really have - # a concept of rpath, but it does look in the current directory by default - # when a program tries to load a DLL. + # Copy the Draco DLL into the bin dir for Windows: Windows does not really + # have a concept of rpath, but it does look in the current directory by + # default when a program tries to load a DLL. install(FILES "${DRACO_LIBRARY_DLL}" DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}") endif() diff --git a/testdata/sphere_no_tangents.gltf b/testdata/sphere_no_tangents.gltf index fa1ed8a9..8a231f0f 100644 --- a/testdata/sphere_no_tangents.gltf +++ b/testdata/sphere_no_tangents.gltf @@ -35,7 +35,8 @@ "materials": [ { "normalTexture": { - "index": 0 + "index": 0, + "scale": 0.75 }, "pbrMetallicRoughness": { "baseColorTexture": { diff --git a/unity/Plugin/libdracodec_unity_android.tar.bz b/unity/Plugin/libdracodec_unity_android.tar.bz index be1886e9..16b77051 100644 Binary files a/unity/Plugin/libdracodec_unity_android.tar.bz and b/unity/Plugin/libdracodec_unity_android.tar.bz differ diff --git a/unity/Plugin/libdracodec_unity_ios.tar.bz b/unity/Plugin/libdracodec_unity_ios.tar.bz index 4cd440d6..c5093fe2 100644 Binary files a/unity/Plugin/libdracodec_unity_ios.tar.bz and b/unity/Plugin/libdracodec_unity_ios.tar.bz differ diff --git a/unity/Plugin/libdracodec_unity_macos.tar.bz b/unity/Plugin/libdracodec_unity_macos.tar.bz index b6f7b5ba..31803488 100644 Binary files a/unity/Plugin/libdracodec_unity_macos.tar.bz and b/unity/Plugin/libdracodec_unity_macos.tar.bz differ diff --git a/unity/Plugin/libdracodec_unity_windows.tar.bz b/unity/Plugin/libdracodec_unity_windows.tar.bz index 5b743fd6..36985efe 100644 Binary files a/unity/Plugin/libdracodec_unity_windows.tar.bz and b/unity/Plugin/libdracodec_unity_windows.tar.bz differ